Loading...
Searching...
No Matches
The Open Motion Planning Library

OMPL, the Open Motion Planning Library, consists of many state-of-the-art sampling-based motion planning algorithms. OMPL itself does not contain any code related to, e.g., collision checking or visualization. This is a deliberate design choice, so that OMPL is not tied to a particular collision checker or visualization front end. The library is designed so it can be easily integrated into systems that provide the additional needed components. OMPL has been used to plan motions for a broad range of robotic systems including: (mobile) manipulators, car-like systems, drones, and underwater vehicles.

OMPL includes complete examples on how to integrate with libraries that perform collision checking, kinematics, model loading, etc. By default, support for VAMP is enabled. VAMP is a library for SIMD-accelerated collision checking and forward kinematics, which reduces planning times by several orders of magnitude. We have also included support for Pinocchio, a library for forward/inverse kinematics and dynamics.

OMPL aims to make it straightforward to evaluate new planning algorithms on realistic robots in realistic settings through integrations with libraries like VAMP and Pinocchio. Developers of new algorithms are encouraged to use OMPL's benchmarking capabilities. Benchmark results can be explored interactively in Planner Arena, an external package like Planner Developer Tools or your own plotting tool!

Library Contents

  • OMPL contains implementations of many sampling-based algorithms such as PRM, RRT, EST, SBL, KPIECE, SyCLOP, and several variants of these planners. See available planners for a complete list.
  • All these planners operate on very abstractly defined state spaces. Many commonly used state spaces are already implemented (e.g., SE(2), SE(3), Rn, etc.).
  • For any state space, different state samplers can be used (e.g., uniform, Gaussian, obstacle-based, etc.).
  • API overview.

Getting Started

Other Resources

News & Events