* consolidate Node definition
* add base class for single agent planner
* add base class for single agent planner
* its working
* use single agent plotting util
* cleanup, bug fix, add some results to docs
* remove seeding from sta* - it happens in Node
* remove stale todo
* rename CA* and speed up plotting
* paper
* proper paper (ofc its csail)
* some cleanup
* update docs
* add unit test
* add logic for saving animation as gif
* address github bot
* Revert "add logic for saving animation as gif"
This reverts commit 639167795c.
* fix tests
* docs lint
* add gifs
* copilot review
* appease mypy
This commit adds "Code Link" sections to documentation across various path planning modules, linking to relevant class and function APIs. Additionally, several class renaming changes were made, such as `Dijkstra` to `DijkstraPlanner` and `eta3_trajectory` to `Eta3SplineTrajectory`, to enhance naming consistency. Minor fixes include file restructuring and image renaming for the RRT module.
Updated all instances of "Ref:" to "Reference" for consistency in both code and documentation. This change improves clarity and aligns with standard terminology practices.
* it works and is WAY faster than a*
* some bug fixes from testing different scenarios
* add some docs & address todos
* add sipp test
* spiff up comments
revert changes in speed-up
* explain what the removal is doing
* linting
* fix docs build
* docs formatting
* revert change to file (maybe linter did it?)
* point at gifs in gifs repo
* use raw githubusercontent gif links
* change formatting on planner results
* format output differently
* proper formatting final
* missing underline
* revert unintended change
* grammar + add descriptions for gifs
* missing ::
* add title to gifs section
* dont use sections for sub-sections
* constent a* spelling
* Update PathPlanning/TimeBasedPathPlanning/GridWithDynamicObstacles.py
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Update tests/test_safe_interval_path_planner.py
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Update docs/modules/5_path_planning/time_based_grid_search/time_based_grid_search_main.rst
Co-authored-by: Atsushi Sakai <asakai.amsl+github@gmail.com>
* Update PathPlanning/TimeBasedPathPlanning/SafeInterval.py
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* addressing comments
* revert np.full change
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Atsushi Sakai <asakai.amsl+github@gmail.com>
* speed up spacetime astar
* forgot to include hash impl on Position
* add condition to test on node expansions
* remove heuristic from Node __hash__ impl
* update rst with note about optimization
* switched to using utils.angle_mod()
* switched to using utils.angle_mod()
* renamed mod2pi to pi_2_pi
* Removed linting errors
* switched to using utils.angle_mod()
* switched to using utils.angle_mod()
* renamed mod2pi to pi_2_pi
* Removed linting errors
* annotation changes and round precision
* Reverted to mod2pi
---------
Co-authored-by: Videh Patel <videh.patel@fluxauto.xyz>
* Update rrt_star_reeds_shepp.py to fix#550
Add step_size attribute to RRTStarReedsShepp, and a method set_random_seed() to set the random seed, with two test cases.
* Update rewire() of rrt_star.py
Update rewire() of rrt_star.py to fix#550. Since the old version didn't assign path_yaw of edge_node to near_node, the old rewire() doesn't fit rrt_star_reeds_shepp.py
* Update reeds_shepp_path_planning.py
Limit the range of phi for the sake of planning speed, and simplify the the calculation process in straight_left_straight().
* Update reeds_shepp_path_planning.py
* Remove unnecessary cost calculation
Cost of edge_node is calculated in line 221, and self.node_list[i] is replaced to edge_node, so no need to update.
* Update reeds_shepp_path_planning.py
The robot didn't reach the target velocity when running frenet_optimal_trajectory.py.
To fix this, I changed the constraints for determining polynomials that generate longitudinal trajectories.
Expressly, I set the initial acceleration to the current acceleration.