This repository will contain the code for our informative path planning (IPP) framework allowing a mobile scout (e.g. an MAV) to explore the cost-optimal path of a follower robot (e.g. a rover) to a goal location in unknown environments. (Models: Courtesy NASA/JPL-Caltech.)
This work was supported by ETH Research Grant AvalMapper ETH-10 20-1 and the Swiss National Science Foundation (SNSF) grant No. 214489.
If you find this useful for your research, please consider citing our paper:
- F. M. Rockenbauer, J. Lim, M. G. Müller, R. Siegwart and L. Schmid, "Traversing Mars: Cooperative Informative Path Planning to Efficiently Navigate Unknown Scenes" in IEEE Robotics and Automation Letters, vol. 10, no. 2, pp. 1776-1783, Feb. 2025, doi: 10.1109/LRA.2024.3513036 [ IEEE ] [ ArXiv ]
@ARTICLE{10783051,
author={Rockenbauer, Friedrich M. and Lim, Jaeyoung and Müller, Marcus G. and Siegwart, Roland and Schmid, Lukas},
journal={IEEE Robotics and Automation Letters},
title={Traversing Mars: Cooperative Informative Path Planning to Efficiently Navigate Unknown Scenes},
year={2025},
volume={10},
number={2},
pages={1776-1783},
keywords={Robots;Costs;Space exploration;Path planning;Navigation;Planning;Mobile robots;Green products;Wheels;Uncertainty;View planning for SLAM;path planning for multiple mobile robots or agents;space robotics and automation},
doi={10.1109/LRA.2024.3513036}
}
There are two ways to install the planner. The easier way using a docker container is described below. If you want to install the planner into your local ros workspace, follow the istructions here.
-
Setup docker as described here
-
Clone the repository:
git clone https://github.com/ethz-asl/scouting-ipp.git
git clone [email protected]:ethz-asl/scouting-ipp.git
- Build the docker image:
cd scouting-ipp/docker/
docker build -t scouting_ipp:1.0 -f scouting_ipp.Dockerfile .
- Set up the data folder:
cd ../..
cp scouting-ipp/docker/data <your_data_directory>
Note: The data directory will become multiple GBs very quickly.
- Run a docker container and mount the data directory into it:
docker run -it --mount src=<your_data_directory>,target=/home/root/data,type=bind scouting_ipp:1.0 /bin/bash
- Run the planner either using the
examle.launch
file:
roslaunch ros_planner_planexp example.launch
or run an experiment:
roscd ros_planner_planexp
source scripts/run_experiment.sh
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.