Skip to content

Fixes smac planner non-circular footprint search issue (backport #4851)#4852

Merged
SteveMacenski merged 2 commits intojazzyfrom
mergify/bp/jazzy/pr-4851
Jan 14, 2025
Merged

Fixes smac planner non-circular footprint search issue (backport #4851)#4852
SteveMacenski merged 2 commits intojazzyfrom
mergify/bp/jazzy/pr-4851

Conversation

@mergify
Copy link
Contributor

@mergify mergify bot commented Jan 14, 2025

Resolves #4808 and #4314

The optimization was added to allow non-circular robots to use their full footprint costs in the traversibility function and heuristic function formulations. However, in confined settings, it doesn't work very well and its better to collision check using the full footprint but continue to use the center point costs for the traversal function / heuristic function formulations.

Metrics outlined in #4808 (comment) show that this not only fixes the issue but also doesn't impact speeds in open areas - but faster in confined areas due to the ambiguation of inscribed costs.

TODO

* initial prototype to resolve smac planner issue

Signed-off-by: Steve Macenski <stevenmacenski@gmail.com>

* fix test

Signed-off-by: Steve Macenski <stevenmacenski@gmail.com>

---------

Signed-off-by: Steve Macenski <stevenmacenski@gmail.com>
(cherry picked from commit bc9f2bc)

# Conflicts:
#	nav2_smac_planner/src/collision_checker.cpp
#	nav2_smac_planner/src/node_hybrid.cpp
@mergify mergify bot added the conflicts label Jan 14, 2025
@mergify
Copy link
Contributor Author

mergify bot commented Jan 14, 2025

Cherry-pick of bc9f2bc has failed:

On branch mergify/bp/jazzy/pr-4851
Your branch is up to date with 'origin/jazzy'.

You are currently cherry-picking commit bc9f2bc9.
  (fix conflicts and run "git cherry-pick --continue")
  (use "git cherry-pick --skip" to skip this patch)
  (use "git cherry-pick --abort" to cancel the cherry-pick operation)

Changes to be committed:
	modified:   nav2_smac_planner/include/nav2_smac_planner/collision_checker.hpp
	modified:   nav2_smac_planner/include/nav2_smac_planner/node_hybrid.hpp
	modified:   nav2_smac_planner/test/test_collision_checker.cpp

Unmerged paths:
  (use "git add <file>..." to mark resolution)
	both modified:   nav2_smac_planner/src/collision_checker.cpp
	both modified:   nav2_smac_planner/src/node_hybrid.cpp

To fix up this pull request, you can check it out locally. See documentation: https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/checking-out-pull-requests-locally

@mergify
Copy link
Contributor Author

mergify bot commented Jan 14, 2025

@mergify[bot], all pull requests must be targeted towards the main development branch.
Once merged into main, it is possible to backport to @jazzy, but it must be in main
to have these changes reflected into new distributions.

Signed-off-by: Steve Macenski <stevenmacenski@gmail.com>
@SteveMacenski SteveMacenski merged commit b705c13 into jazzy Jan 14, 2025
@SteveMacenski SteveMacenski deleted the mergify/bp/jazzy/pr-4851 branch January 14, 2025 21:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant