Xiangyu Chen1, Fan Yang2, Chen Wang1,
1: Spatial AI & Robotics (SAIR) Lab, Computer Science and Engineering, University at Buffalo
2: Robotic Systems Lab, ETH Zurich, 8092 Z ̈urich, Switzerland
📄 [PDF] |
Abstract: Path planning, which aims to find a collision-free path between two locations, is critical for numerous applications ranging from mobile robots to self-driving vehicles. Traditional search-based methods like A$^$ search guarantee path optimality but are often computationally expensive when handling large-scale maps. While learning-based methods alleviate this issue by incorporating learned constraints into their search procedures, they often face challenges like overfitting and reliance on extensive labeled datasets. To address these limitations, we propose Imperative A$^$ (iA$^$), a novel self-supervised path planning framework leveraging bilevel optimization (BLO) and imperative learning (IL). The iA$^$ framework integrates a neural network that predicts node costs with a differentiable A$^$ search mechanism, enabling efficient self-supervised training via bilevel optimization. This integration significantly enhances the balance between search efficiency and path optimality while improving generalization to previously unseen maps. Extensive experiments demonstrate that iA$^$ outperforms both classical and supervised learning-based methods, achieving an average reduction of 9.6% in search area and 15.2% in runtime, underscoring its effectiveness in robot path planning tasks.
- CUDA
- python
- OpenCV
- PyPose
- Numpy
To run iA*, you need to install PyTorch. We recommend using Anaconda for installation. Check the official website for installation instructions for Anaconda and PyTorch accordingly.
python conda create -n iastar python=3.10
conda activate iastar
pip install -r requirements.txt
The dataset used in this paper can be found at Google Drive, as planning-dataset.zip.
After downloading, place the dataset into the folder and unzip it.
unzip planning-dataset.zip
The datatset contains 3 environments, MP Dataset, Maze Dataset, and Matterport Dataset.
The data structure is as follows:
Planning-dataset ├── matterport │ └── instances │ └── 064 │ └── *.npz ├── maze │ └── instances │ └── 064 │ └── *.npz ├── mdp │ └── instances │ └── 064 └── └── *.npz
Examples of path planning tasks are provided in the example folder. The well-trained models can be downloaded from Google Drive.
After downloading, place the model file into the folder model/iastar for test.
We use the wandb to record the training process. You need to create a wandb account and install it on your computer before running the code.
The training configuration file ''config.yaml'' is in the config folder.
python train.py
If you utilize this codebase in your research, we kindly request you to reference our work. You can cite us as follows:
- iA*: Imperative Learning-based A* Search for Pathfinding. Xiangyu Chen, Fan Yang, Chen Wang. IEEE Robotics and Automation Letters (RA-L), 2025.
The BiBTeX entry for LaTeX users is:
@article{chen2025iastar,
title = {{iA*}: Imperative Learning-based A* Search for Path Planning},
author = {Chen, Xiangyu and Yang, Fan and Wang, Chen},
journal = {IEEE Robotics and Automation Letters (RA-L)},
year = {2025},
url = {https://arxiv.org/abs/2403.15870},
code = {https://github.com/sair-lab/iAstar},
website = {https://sairlab.org/iastar/},
}
This codebase is maintained by Xiangyu Chen. If you have any questions, please feel free to contact him at xiangyuc@sairlab.org.





