From f71b6d869e0dd2965fc544a0f8dedb3dbd3345ce Mon Sep 17 00:00:00 2001
From: panispani
Date: Fri, 24 Jan 2025 21:57:03 +0000
Subject: [PATCH] Update README to include Maze task
---
README.md | 51 +++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 51 insertions(+)
diff --git a/README.md b/README.md
index 4d911b2e..e53bd057 100644
--- a/README.md
+++ b/README.md
@@ -47,6 +47,7 @@ The goal is to generate virtually infinite data with adjustable complexity.
- `SudokuDataset`: Generate 9x9 Sudoku puzzles with configurable number of empty cells
- `MiniSudokuDataset`: Generate 4x4 Mini Sudoku puzzles with configurable difficulty
+- `MazeDataset`: Generates a maze with a start and a goal.
### Available Generators
@@ -262,6 +263,56 @@ Example data:
}
```
+#### Maze
+
+Generates a maze with configurable difficulty:
+
+```python
+from reasoning_gym.games import MazeConfig, MazeDataset
+
+config = MazeConfig(
+ min_dist=3,
+ max_dist=5,
+ min_grid_size=5,
+ max_grid_size=5,
+ size=2,
+ seed=4,
+)
+
+dataset = MazeDataset(config)
+
+for item in dataset:
+ print()
+ print(item["question"])
+ print(item)
+```
+
+Example data:
+
+```
+Navigate from 'd' (start) to '}' (goal):
+
+uuuuu
+uCCdu
+uCCCu
+uu}Cu
+uuuuu
+Legend: 'u' = Wall, 'C' = Path
+
+{'question': "Navigate from 'd' (start) to '}' (goal):\n\nuuuuu\nuCCdu\nuCCCu\nuu}Cu\nuuuuu\nLegend: 'u' = Wall, 'C' = Path\n", 'answer': '3', 'metadata': {'grid_size': 5, 'grid': ['uuuuu', 'uCCdu', 'uCCCu', 'uu}Cu', 'uuuuu'], 'shortest_path_length': 3, 'start': 'd', 'goal': '}', 'wall': 'u', 'path': 'C'}}
+
+Navigate from 'J' (start) to '_' (goal):
+
+<<<<<
+<