Skip to content
Snippets Groups Projects
user avatar
Guilhem Saurel authored
Changes since 1.4.0:

    Made PlannerArena work with latest versions of R packages.
    Misc. bug and documentation fixes.

Changes since 1.3.2:

    There is a new framework for planning with constraints that unifies and generalizes prior proposed algorithms such as CBiRRT2, AtlasRRT and TangentBundle-RRT. The framework decouples the methodology used for computing configurations that satisfy constraints from the high-level planning strategy. This allows the user to use any sampling-based planning algorithm in OMPL with arbitrary geometric constraints. See the overview, tutorial and various demos in ompl/demos/constraint.
    Eigen3 is now a required dependency.
    Various BIT* improvements.
    PRM and RRTConnect can now return approximate solutions if an exact solution cannot be found. (This feature was already supported by several other planning algorithms in previous versions of OMPL.)
    Added support for Spot, a library that can be used to create finite automata from LTL specifications. This can be used by ompl::control::LTLPlanner. See the LTL with triangulation demo.
    A new method has been added, ompl::geometric::PathSimplifier::perturbPath, which can locally optimize a path with respect to a user-specified optimization objective. Existing methods of ompl::geometric::PathSimplifier are now also cost-aware.
    ompl::geometric::PathHybridization can now also optimize paths with respect to a user-specified optimization objective.
    Fix for bugs in path simplification and interpolation that could cause path simplification to produce a path that was invalid or longer than the original path when using GoalRegions (as opposed to just one GoalState).
    Added an option to RRT to add intermediate states during tree extension (this matches the same option that already existed in RRTConnect).
    Added the Bridge Test Sampler.
    Misc. bug fixes.

Changes since 1.3.1:

    Bug fixes for gcc6, clang5, and new versions of Boost.
    Made PlannerArena work with latest versions of R packages.
    Made MORSE plugin work with latest version MORSE.
    Optionally, use PyPy for Python binding generation. This can significantly speed up the binding generation process (with pypy3 5.9.0 it now takes less than 10 minutes on a modern PC).
    Misc. bug fixes.

Changes since 1.3.0:

    Tidy up code.
    Small bug fixes.

Changes since 1.2.1:

    Added new planners:
        RRT#, a variant of RRT* with an improved convergence rate.
        RRTX, a variant of RRT* with an improved convergence rate. Only the static part of the RRTX algorithm is implemented. Dynamical obstacles and updates of the robot position are not available in this implementation.
        SORRT*, a variant of Informed RRT* that orders states in the subproblem that could provide a better solution by their potential solution cost.
    New refactored versions of BIT* and Informed RRT*.
    Various changes throughout to follow standard C++11 practices that improve efficiency, safety, or legibility.
    Fixes for Boost 1.63 and pygccxml 1.8.5.
    Misc. small bug fixes.

Changes since 1.2.0:

    New simplified installation instructions. There is now also a installation script that will download and install OMPL and all its dependencies on Ubuntu 14.04, 15.10, and 16.04.
    Fixed python bindings for gcc5. Python bindings still take a very long time to generate.
    Misc. small bug fixes.

Changes since 1.1.0:

    C++11 is now required. A lot of Boost usage in older versions of OMPL has been replaced with C++11 STL equivalents.
    Added several new planners and improved existing planners:
        Stable Sparse RRT, both a geometric and a control-based version. SST is an asymptotically near-optimal incremental version of RRT.
        Vector Field RRT, a tree-based motion planner that tries to minimize the so-called upstream cost of a path. The upstream cost is defined by an integral over a user-defined vector field.
        A bidirectional version of FMT, small fixes in FMT.
        A new version of Expansive Space Trees that does not rely on projections to estimate sampling density. Instead, it estimates density directly in the configuration space. This is closer to the original paper and actually works really well! There is now also a bidirectional version of EST. The previous implementation of EST has been renamed to ProjEST.
    Minimum Boost version is now 1.54.

Changes since 1.0.0:

    Added several new and updated planners:
        Lightning: the Lightning Framework is a experienced-based motion planner that recalls from a database of previously generated paths the most similar one to the current planning problem and attempts to repair it, while at the same time planning from scratch in a different thread.
        Thunder: the Thunder Framework is essentially an improved version of Lightning. It stores previously generated paths in a combined roadmap, thereby offering more opportunities for reuse of partial paths. The roadmap is sparse while still guaranteeing asymptotic near-optimality. This is done by borrowing ideas from the SPARS algorithm.
        Informed RRT*: a variant of RRT* that uses heuristics to bound the search for optimal solutions.
        Batch Informed Trees (BIT*): an anytime asymptotically optimal algorithm that uses heuristics to order and bound the search for optimal solutions.
        An updated version of the Lower-Bound Tree Rapidly-expanding Random Tree (LBT-RRT) and a lazy version, LazyLBTRRT. These algorithms use Lifelong Planning A* and Dynamic Single-Source Shortest Path over graphs as subroutines, but these subroutines might be more generally useful in other algorithms as well.
        An updated version of TRRT as well as a bidirectional version of TRRT (BiTRRT)
        An updated version of FMT* that, among other things, caches collision checks.
    New web-based based version of OMPL.app! The web app has all the functionality of the standalone GUI. In addition, it allows you to interactively construct benchmark jobs that can be submitted to a benchmark server. We have a public version of the web app and benchmarking server running at http://omplapp.kavrakilab.org, but the web app and benchmark server can also be run locally.
    There are two new concepts, ompl::base::InformedSampler and ompl::base::InformedStateSampler, that capture the idea of using information about the state space and the current solution cost to limit future search to a planning subproblem that contains all possibly better solutions. The ompl::base::PathLengthDirectInfSampler is derived from InformedStateSampler and can be used to limit sampling to only those states that can lead to a shorter path than the best-found solution so far. This sampler is used in ompl::geometric:InformedRRTstar and ompl::geometric::BITstar.
    The ompl::geometric::PathSimplifier can now also optimize a path with respect to a (sampleable) goal. This means, for example, that a solution path is no longer “stuck” with an awkward inverse kinematics solution for a goal.
    Added a plannerarena script to simplify running Planner Arena locally.
    Added a new planner termination conditions that allow one to terminate after a fixed number of iterations.
    The GNAT data structure for nearest neighbor queries has been updated and should be faster in general. There is now also non-threadsafe version of the GNAT data structure that is automatically selected for single-threaded planners. This version should be even faster.
    Added an option to turn off the path simplification in benchmarking.
    Added support for parametrized benchmarks. Planner Arena can show performance across values for a given parameter.
    Made it easier to get repeatable runs of an algorithm by enabling the user to set the seed of the local random number generators (i.e., not just the global seed).
    The OMPL blog is now Jekyll-based and hosted as a repository on GitHub. If you have a project that uses OMPL, you can send us a pull request (please check with us first whether it would be appropriate for the blog before you write content).
5e5ada78
History
Name Last commit Last update
FRILibrary
antlr2
aruco-ros
backward-ros
boost-python
can-utils
certi
cppad
cppadcodegen
ddynamic-reconfigure-python
dptu-genom3
dynamic-graph-tutorial
dynamic-graph-v3
dynamic-introspection
eigen-quadprog
example-adder
gdalwrap
gerard-bauzil
gtsam
hatponboard-lib
head-action
hey5-description
histodet
hpp-environments
hpp-romeo
hrp2-14-description
hrp2-bringup
hrp2-computer-monitor
hrp2-dev
hrp2-machine
infuse-MTI
infuse-asn1-conversions
infuse-asn1-types
infuse-crisp-genom3
infuse-envire
infuse-idl
infuse-msgs-ros
infuse-novatel-gps-driver-ros
infuse-pom-base
infuse-pom-crisp
infuse-pom-tokamak
infuse-waypoint-publisher
infuse_bitstream_sink-genom3
infuse_joystick_to_twist-genom3
infuse_rmp400-genom3
jrl-walkgen-v3
jsbsim
libhatp
libmove3d-hri
libmove3d-planners
libmove3d
libnabo
lua-rfsm
mavlink
metapod
mk/sysdep
morse-hla
morse-mavlink
morse-ros
move3d-assets
move3d-studio
moveit-msgs
moveit-resources
msgconnector
mumps
object-recognition-msgs
octomap-msgs
octovis
ompl
openhrp3-hrp2
openhrp3-simulator-wo-rtm
orocos-bfl
orocos-dot_service
orocos-yarp_transport
osg-dae
pal-gazebo-plugins
pal-gazebo-worlds
pal-gripper
pal-hardware-gazebo
pal-hardware-interfaces
pal-msgs
pal-navigation-sm
pal-statistics
pal-transmissions
parametric-curves
play-motion
pmb2-robot
pmb2-simulation
prf-gazebo-ros-pkgs
prf-roboticsgroup-gazebo-plugins
prf-ros-control
prf-ros-controllers
py-dynamic-graph-bridge-v3
py-dynamic-graph-tutorial
py-dynamic-graph-v3
py-example-adder
py-hla
py-jsbsim
py-mavlink
py-morse