This file contains an elaborate demo to solve the game of [Koules](http://www.ucw.cz/~hubicka/koules/English/). More...
#include "KoulesConfig.h"
#include "KoulesSetup.h"
#include "KoulesStateSpace.h"
#include <ompl/tools/benchmark/Benchmark.h>
#include <ompl/config.h>
#include <boost/program_options.hpp>
#include <boost/format.hpp>
#include <fstream>

Go to the source code of this file.
Detailed Description
This file contains an elaborate demo to solve the game of [Koules](http://www.ucw.cz/~hubicka/koules/English/).
This problem was used to illustrate the capabilities of the PDST planner to find trajectories for underactuated systems with drift. The details can be found in the references below [1,2]. The physics have been made significantly harder compared to the original game. We have tried to recreate the problem as closely as possible to the one described in [2]. The demo can solve just one level of Koules, all levels, or run a number of planners on one level as a benchmarking run.
This demo illustrates also many advanced OMPL concepts, such as classes for a custom state space, a control sampler, a projection, a state propagator, and a goal class. It also demonstrates how one could put a simple bang-bang controller inside the StatePropagator. In this demo the (Directed)ControlSampler simply samples a target velocity vector and inside the StatePropagator the control is chosen to drive the ship to attain this velocity.
[1] A. M. Ladd and L. E. Kavraki, “Motion planning in the presence of drift, underactuation and discrete system changes,” in Robotics: Science and Systems I, (Boston, MA), pp. 233–241, MIT Press, June 2005.
[2] A. M. Ladd, Motion Planning for Physical Simulation. PhD thesis, Dept. of Computer Science, Rice University, Houston, TX, Dec. 2006.
Definition in file Koules.cpp.