Maze Extrapolation is a research project dedicated to experimenting with neural networks designed to extrapolate on maze-solving tasks. We test reccurent and implicit networks on out-of-distribution mazes and explore the latent dynamics of the models using topological data analysis.
Read our paper: On Logical Extrapolation for Mazes with Recurrent and Implicit Networks.
The BibTeX citation is:
@article{knutson_maze-extrapolation_2024,
title = {On Logical Extrapolation for Mazes with Recurrent and Implicit Networks},
author = {
Brandon Knutson and
Amandin Chyba Rabeendran and
Michael Ivanitskiy and
Jordan Pettyjohn and
Cecilia Diniz-Behn and
Samy Wu Fung and
Daniel McKenzie
},
journal = {arXiv preprint arXiv:2410.03020},
year = {2024},
url = {https://arxiv.org/abs/2410.03020},
}
- Extrapolation accuracy quantification for models trained on maze images to produce solution path images.
- Contains a model from Bansal et. al..
- Modular architecture for easy integration of new models, just inherit from BaseNet
-
Clone this repository:
git clone [email protected]:mines-opt-ml/maze_extrapolation.git
-
Navigate to the project directory:
cd maze_extrapolation
-
Create a virtual environment (recommended):
python -m venv venv
-
Activate the virtual environment:
- On Windows:
venv\Scripts\activate
- On macOS/Linux:
source venv/bin/activate
- On Windows:
-
Install the required dependencies:
pip install -r requirements.txt
-
(Optional) To deactivate the virtual environment when you're done:
deactivate
To evaluate the models:
- Extrapolation accuracy testing:
python -m src.test
- Topological data analysis:
python -m src.analyze
See the notebooks folder for demos.