Open
Description
This issue summarizes the available ecosystem when it comes to path and motion planning. We exclude the kind of motion planning that includes dynamics more complicated than a chain of integrators, i.e., we include trajectory generation with acceleration limits, but not with force/torque limits.
The current capabilities of Multibody.jl are documented here https://juliacomputing.github.io/Multibody.jl/dev/#Trajectory-planning
- Path planning: Find a path from one point to another that avoids obstacles. The typical metric is shortest distance, but non-uniform cost over space is sometimes considered.
- Motion planning: Turn a path into a trajectory, i.e., plan the velocity and acceleration profiles with which to follow the path.
- The primary difference between motion planning and path planning is thus that time is not considered in path planning.
- Trajectory optimization / optimal control additionally considers the dynamical model of the system.
Type | Package | Comments |
---|---|---|
Path | RRTStar.jl | No tests, only 2d |
Path | MotionPlanning.jl | No docs. Type unstable code. A couple of different algorithms. |
Path | AStarSearch.jl | Only A*, limited docs |
Path | Eikonal.jl | Fast marching method (FMM / FSM) |
Path | Agents.jl | Only A* |
Path | HybridAStar.jl | Only A* (variant) |
Path | ProbabilisticRoadMap.jl | Only PRMs |
Motion | JSC traj opt | High-order polynomial, 6DOF |
Motion | TrajectoryLimiters.jl | Post-processing of heuristic trajectories up to bounded acceleration |
Motion | traj5 et al. |
Trivial polynomial generation |
Motion | JuMP | A lot of motion-planning algorithms can be cast as convex optimization algorithms (often QPs) |
https://github.com/alexander-leong/MotionPlanningOptimization.jl
See also
Metadata
Assignees
Labels
No labels