Please Visit the OMPL installation page for detailed installation instructions.
OMPL has the following required dependencies:
The following dependencies are optional:
- ODE (needed to compile support for planning using the Open Dynamics Engine)
- Py++ (needed to generate Python bindings)
- Doxygen (needed to create a local copy of the documentation at https://ompl.kavrakilab.org/core)
The following dependencies are highly recommend:
- Planner Developer Tools (PDT) (recommended to check the documentation at https://robotic-esp.com/papers/gammell_empp22.pdf) (released version)
- Moveit! (recommended to check the documentation at https://moveit.ai/) (or Moveit2)
- OpenRAVE (recommended to check the documentation at https://openrave.org/) (released version)
- Ompl Benchmark Plotter (recommended to check the git repos for benchmark) (released version)
To change the iteration time lagging in PDT, replace the following condition in RandomGeometricGraph.cpp file of the planner:
while (newSamples_.size() < numNewStates && !terminationCondition);
while (newSamples_.size() < numNewStates);
If you found this research useful for your own work, please use the following citation:
@ARTICLE{MIT_2025,
author={Zhang, Liding and Cai, Kuanqi and Zhang, Yu and Bing, Zhenshan and Wang, Chaoqun and Wu, Fan and Haddadin, Sami and Knoll, Alois},
journal={IEEE Transactions on Automation Science and Engineering},
title={Estimated Informed Anytime Search for Sampling-Based Planning via Adaptive Sampler},
year={2025},
volume={22},
number={},
pages={18580-18593},
doi={10.1109/TASE.2025.3590084},
ISSN={1558-3783},
month={},}
Install Python 2.7
sudo apt-get update
sudo apt-get install python2
Check the default Python version
python --version && python3 --version
Python 2.7 as the default version by creating a symbolic link
sudo update-alternatives --install /usr/bin/python python /usr/bin/python2 1
sudo update-alternatives --install /usr/bin/python python /usr/bin/python3 2
Manually select Python version 2.7; you can change it back when OPENRAVE is installed
sudo update-alternatives --config python
installation of OPENRAVE repos
cd ~
git clone https://github.com/crigroup/openrave-installation
cd openrave-insstallation
install and build OPERAVE in order
sudo ./install-dependencies.sh
sudo ./install-osg.sh
sudo ./install-fcl.sh
sudo ./install-openrave.sh
Once dependencies are installed, you can build OMPL on Linux, macOS, and MS Windows. Go to the top-level directory of OMPL and type the following commands
mkdir build
cd build
You can use macro commands to toggle the code you want to compile
cmake -DCMAKE_BUILD_TYPE=Debug -DOMPL_BUILD_TESTS=OFF -DOMPL_BUILD_DEMOS=OFF ..
make -j 4 # depends on the core you are using
install build into /usr/local folder
sudo cmake --install .
switch to pdt folder
cd ../..
cd pdt/build
#### this is for install
cmake -DPDT_OMPL_DIR=/usr/local -DPDT_OPEN_RAVE=ON ..
### this is for MoveIt version
cmake -DPDT_OMPL_DIR=~/ws_moveit/devel -DPDT_OPEN_RAVE=ON ..
### for moveGroup test. Indicate which OMPL you are using
lsof -p $(pidof move_group) | grep ompl
make -j 4 # depends on the core you are using
GDB debug for moveit issues:
gdb /home/usr/ws_moveit/devel/lib/moveit_ros_move_group/move_group
run --debug
cd ~/ws_moveit/src
./launch
show OPENRAVE visualization result according to the open_rave_demo config
./bin/open_rave_gui -c ../parameters/demo/open_rave_demo.json
in case you are an old version of PDT: change in open_rave_demo.json
"viewer": "qtcoin",
to
"viewer": "qtosg",
show visualization result according to the demo config
./bin/visualization -c ../parameters/demo/visualization_demo.json
run benchmark result according to the demo config (also fit for OPENRAVE)
./bin/benchmark -c ../parameters/demo/benchmark_demo.json
reproduce benchmark pdf according to the demo config
creat report_config.json in demo/ folder
./bin/benchmark_report -c ../parameters/demo/report_config.json
| Dimension | RandomRectangles | WallGap | DividingWalls | Narrow Passages |
|---|---|---|---|---|
| 2D | 18439216171772023587 | 18439216101061917922 | 10924827021061192 | 10924827021061192 |
| 10927753138516356 | - | 18439216260414396571 | ||
| 2D vis | 10927839490220270 | - | 10929751161392370 | - |
| 2D vis | 10927840588229561 | - | 10929751708513941 | - |
| 2D vis | 10929550337638445 | - | 10929752226107993 | - |
| 2D vis | 10930003745054246 | - | 10929752226107993 | - |
| 4D | 18439216260414396571 | 18439216356605802780 | 10925074149542957 | 10929992020276563 |
| 8D | 18439216263452514894 | 18439218256663499061 | 10929382775375323 | - |
| 16D | 10929320195794061 | 18439218256663499061 | 10929382034216219 | 10929994540264705 |