Solvers¶
This section documents the concrete motion planning algorithm families in DiscoPygal.
All solvers inherit from Solver or SamplingSolver and utilize shared infrastructure for collision checking, sampling, metrics, and graph search.
Solver Inheritance Architecture¶
The yellow nodes represent abstract base contracts, while the blue nodes represent concrete planners:
Solver Families & Module Breakdown¶
RRT Family (``solvers/rrt/``): Rapidly-exploring Random Tree variants including standard
rrt.py, optimalrrt_star.py, bidirectionalbirrt.py, multi-robot tensor space
-dimensional drrt.py/drrt_star.py, andcontact_guided_rrt.py.PRM Family (``solvers/prm/``): Probabilistic Roadmap variants including standard
prm.py, batchprm2.py, andprm_rod.pyfor non-point geometries.Exact Family (``solvers/exact/``): Geometry-driven exact planning via
exact_single.pyusing arrangement face decomposition and dual-graph search.Staggered Grid Family (``solvers/staggered_grid/``): Grid-discretized roadmap planners (
staggered_grid.py,staggered_grid_base.py,staggered_grid_drrt.py).Bottleneck Tree (``solvers/bottleneck_tree/``): Optimal path tree construction using Fréchet curve matching (
bottleneck_tree.py,frechet_matching.py,three_curve_frechet.py).Hybridization Graphs (``hgraphs.py``): Roadmap hybridization methods to combine path segments from multiple candidate solutions.