Skip to content

Fixes smac planner non-circular footprint search issue#4851

Merged
SteveMacenski merged 2 commits intomainfrom
4808
Jan 14, 2025
Merged

Fixes smac planner non-circular footprint search issue#4851
SteveMacenski merged 2 commits intomainfrom
4808

Conversation

@SteveMacenski
Copy link
Member

@SteveMacenski SteveMacenski 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

  • benchmark
  • backport

Signed-off-by: Steve Macenski <stevenmacenski@gmail.com>
Signed-off-by: Steve Macenski <stevenmacenski@gmail.com>
@SteveMacenski
Copy link
Member Author

SteveMacenski commented Jan 14, 2025

OG:

----------  -----------------------  ----------------  -----------------  --------
Planner     Average path length (m)  Average Time (s)  Average cost       Max cost
GridBased   51.10449455111457        0.133985194292    7.351264392666914  100.928
GridBased2  51.506940648368534       0.099103423996    7.247839998853134  103.572
----------  -----------------------  ----------------  -----------------  --------

Updated:

----------  -----------------------  -------------------  ------------------  --------
Planner     Average path length (m)  Average Time (s)     Average cost        Max cost
GridBased   51.115783254051415       0.116549856532       3.0431751735718704  84.04
GridBased2  51.517709317230256       0.07625796589600001  2.531342577997387   87.088
----------  -----------------------  -------------------  ------------------  --------

We see no major difference in path lengths, but these updates result in lower total costs and slightly improved compute times. First is Hybrid, second is Lattice

@SteveMacenski SteveMacenski merged commit bc9f2bc into main Jan 14, 2025
@mergify mergify bot deleted the 4808 branch January 14, 2025 21:30
mergify bot pushed a commit that referenced this pull request Jan 14, 2025
* 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
SteveMacenski added a commit that referenced this pull request Jan 14, 2025
… (#4852)

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

* 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

* fix mergify issue

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

---------

Signed-off-by: Steve Macenski <stevenmacenski@gmail.com>
Co-authored-by: Steve Macenski <stevenmacenski@gmail.com>
kaichie pushed a commit to botsandus/navigation2 that referenced this pull request Feb 14, 2025
…n#4851)

* 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>
kaichie pushed a commit to botsandus/navigation2 that referenced this pull request Mar 11, 2025
…n#4851)

* 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>
stevedanomodolor pushed a commit to stevedanomodolor/navigation2 that referenced this pull request Apr 29, 2025
…n#4851)

* 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>
Signed-off-by: stevedanomodolor <stevedan.o.omodolor@gmail.com>
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.

[SMAC planner] inflation cost not respected on narrow corridor

1 participant