Below we include a number of tutorials we believe are useful for understanding how OMPL works, grouped by level of difficulty. Users are encouraged to look at the examples in demos/ as well.
Rigid body planning[Python version]. This demo is essentially the same example described in the first tutorial. It illustrates how to use the main classes.
Rigid body planning with integration and controls. This example extends the previous example by showing how one can plan for systems of ordinary differential equations in a generic way. This example uses simple Euler integration. For higher accuracy it is recommended to use higher-order methods. Other libraries such as the GNU Scientific Library or Boost.Numeric.Odeint can be used for this purpose.
Rigid body planning with an Inverse Kinematics solver generating goal states in a separate thread. This demo shows off two neat features of OMPL: a genetic algorithm-based Inverse Kinematics solver and a lazy goal state sampler. In a separate thread goal states are computed by the IK solver. While solving a motion planning problem, the planning algorithms select a random goal state from the ones computed so far.
Rigid body planning using the Open Dynamics Engine (ODE). When ODE is installed, OMPL will compile an extension that makes is easier to use ODE for forward propagation of models of motion. In this example, a box is pushed around in the plane from a start position to a goal position.