Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Staticial replanning #3100

Draft
wants to merge 132 commits into
base: main
Choose a base branch
from

Conversation

jwallace42
Copy link
Contributor

@jwallace42 jwallace42 commented Aug 3, 2022


Basic Info

Adds additional functionality to determine if a path is invalid using a two sample z test.

Info Please fill out this column
Ticket(s) this addresses #2880
Primary OS tested on Ubuntu
Robotic platform tested on Gazebo

Description of contribution in a few bullet points

Adds functionality to is path valid service to determine if there has been a significant change in cost. This pr closes #2880.

Description of documentation updates required from your changes

Planner server need to be updated with a new parameter.


Future work that may be required in bullet points\

We could make this a plugin...

For Maintainers:

  • Check that any new parameters added are updated in navigation.ros.org
  • Check that any significant change is added to the migration guide
  • Check that any new features OR changes to existing behaviors are reflected in the tuning guide
  • Check that any new functions have Doxygen added
  • Check that any new features have test coverage
  • Check that any new plugins is added to the plugins page
  • If BT Node, Additionally: add to BT's XML index of nodes for groot, BT package's readme table, and BT library lists

@mergify
Copy link
Contributor

mergify bot commented Aug 3, 2022

@jwallace42, please properly fill in PR template in the future. @SteveMacenski, use this instead.

  • Check that any new parameters added are updated in navigation.ros.org
  • Check that any significant change is added to the migration guide
  • Check that any new features OR changes to existing behaviors are reflected in the tuning guide
  • Check that any new functions have Doxygen added
  • Check that any new features have test coverage
  • Check that any new plugins is added to the plugins page
  • If BT Node, Additionally: add to BT's XML index of nodes for groot, BT package's readme table, and BT library lists

@mergify
Copy link
Contributor

mergify bot commented Aug 3, 2022

@jwallace42, your PR has failed to build. Please check CI outputs and resolve issues.
You may need to rebase or pull in main due to API changes (or your contribution genuinely fails).

@jwallace42 jwallace42 marked this pull request as ready for review August 3, 2022 20:00
@mergify
Copy link
Contributor

mergify bot commented Aug 3, 2022

@jwallace42, your PR has failed to build. Please check CI outputs and resolve issues.
You may need to rebase or pull in main due to API changes (or your contribution genuinely fails).

@jwallace42
Copy link
Contributor Author

jwallace42 commented Aug 5, 2022

Currently blocked by ros2/common_interfaces#187.

@mergify
Copy link
Contributor

mergify bot commented Aug 5, 2022

@jwallace42, your PR has failed to build. Please check CI outputs and resolve issues.
You may need to rebase or pull in main due to API changes (or your contribution genuinely fails).

Copy link
Member

@SteveMacenski SteveMacenski left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Otherwise LGTM, I think the biggest part of this is testing / validation of the functionality of the property.

The only other thing is maybe breaking out the calculation of std / means into lambdas or header utility functions just to make the inline code a bit more straight forward to read.

@@ -58,7 +58,8 @@ class IsPathValidCondition : public BT::ConditionNode
{
return {
BT::InputPort<nav_msgs::msg::Path>("path", "Path to Check"),
BT::InputPort<std::chrono::milliseconds>("server_timeout")
BT::InputPort<std::chrono::milliseconds>("server_timeout"),
BT::InputPort<bool>("consider_cost_change", true, "Consider cost changes")
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Add to groot XML for people using it to build trees to have the option exposed

this, "z_score", rclcpp::ParameterValue(2.55));


get_parameter("z_score", z_score_);
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In the parameter / variable name, it would be nice to have some more context to what this is used for. While it is a Z-score, that's not really telling a user why its there / where its used. cost_change_z_score or path_difference_z_score or something would help give some context where/how its used.

Considering the use of consider_cost_change in the action field, I think cost_change_z_score or path_cost_change_score or something would make sense

Copy link
Member

@SteveMacenski SteveMacenski Aug 25, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Also parameter guide stuff :-)

Though, I think this should be broken out into another object. It doesn't seem very natural to have this implementation in the planner_server itself - maybe a pluginable interface at some point in the future? But at least for now, needs to be in a statistical_replanning file utility or object.

SteveMacenski and others added 14 commits December 14, 2022 14:27
* adding timeout for action client initialization

Signed-off-by: Vinny Ruia <[email protected]>

* adding constant 1s timeout, catching exception

Signed-off-by: Vinny Ruia <[email protected]>
ros-navigation#3036)

* - Modified findVelocitySignChange method to transform cusp into robot frame before returning distance_to_cusp

* - Previous commit had incorrect usage of method transformPose based on different nav2 branch.
- Now a placeholder pose, input pose and desired frame id is passed.

* - Previous commit had incorrect usage of method transformPose based on different nav2 branch.
- Now a placeholder pose, input pose and desired frame id is passed.

Signed-off-by: Steven Brills <[email protected]>

* Failed lint check due to stray blank line.  Removed the blank line

* - Modified findVelocitySignChange function to take the transformed plan in robot's frame
- Removed need to pass pose to the findVelocitySignChange function

* - Modified the test file to reflect change in new parameters that findVelocitySignChange expects.

Signed-off-by: Steven Brills <[email protected]>

* - Corrected call to transformGlobalPoseWrapper method of BasicAPIRPP object.

Signed-off-by: Steven Brills <[email protected]>

* - transformGlobalPlanWrapper call bug fix

Signed-off-by: Steven Brills <[email protected]>

* - Updated tests now require frame_id and time_stamp for conversion since transformed plan is to be used.

Signed-off-by: Steven Brills <[email protected]>

* - Missing ; in test method

Signed-off-by: Steven Brills <[email protected]>

* -Modified findVelocitySignChange tests in test_regulated_pp to use transformed_plan instead

* -Modified findVelocitySignChange tests in test_regulated_pp to use transformed_plan instead

Signed-off-by: Steven Brills <[email protected]>

Co-authored-by: Steven Brills <[email protected]>
* cleanup warnings

* removed referenc
* first draft for goal updated controller

Signed-off-by: relffok <[email protected]>

* added goal_updated_controller to all yamls

* added GoalUpdatedController API

* added GoaUpdatedController to default plugins

* removed first_time param

* added test for GoalUpdatedController

* linter fix
* accepting empty yaml_filename if no initial map is available

* invalid load_map-request does not invalidate existing map, added Testcase

* style

* finish PR 2929

* finish linting

* removing change

* removing change

* Update test_map_server_node.cpp

* Update test_map_server_node.cpp

Co-authored-by: Nikolas Engelhard <[email protected]>
* forward porting ros-navigation#3053

* adding TF warning suggestion
AlexeyMerzlyakov and others added 9 commits December 14, 2022 14:27
Not assigning fixed map pointer to particle filter, using latest when resample.

(cherry picked from commit cc6f205)

Signed-off-by: Borong Yuan <[email protected]>

Signed-off-by: Borong Yuan <[email protected]>
* publish layers of costmap

* lint fix

* lint round 2 :)

* code review

* remove isPublishable

* lint

* test running

* rough structure complete

* completed test

* lint

* code review

* CI

* CI

* linting

* completed pub test

* CostmapLayer::matchSize may be executed concurrently (ros-navigation#3250)

* CostmapLayer::matchSize() add a mutex

* Fix typo (ros-navigation#3262)

* Adding new Nav2 Smoother: Savitzky-Golay Smoother (ros-navigation#3264)

* initial prototype of the Savitzky Golay Filter Path Smoother

* fixed indexing issue - tested working

* updates for filter

* adding unit tests for SG-filter smoother

* adding lifecycle transitions

* refactoring RPP a bit for cleanliness on way to ROSCon (ros-navigation#3265)

* refactor for RPP on way to ROSCon

* fixing header

* fixing header

* fixing header

* fix edge cases test samplings

* linting

* exceptions for compute path through poses (ros-navigation#3248)

* exceptions for compute path through poses

* lint fix

* code review

* code review

Co-authored-by: Joshua Wallace <josho.wallace.com>

* Reclaim Our CI Coverage from the Lords of Painful Subtle Regressions ⚔️⚔️⚔️ (ros-navigation#3266)

* test waypoint follower with composition off for logging

* adding no composition to all system tests

* Added Line Iterator (ros-navigation#3197)

* Added Line Iterator

* Updated Line Iterator to a new iteration method

* Added the resolution as a parameter/ fixed linting

* Added the resolution as a parameter/ fixed linting

* Added unittests for the line iterator

* Added unittests based on "unittest" package

* Fixed __init__.py and rephrased some docstrings

* Fixed linting errors

* Fixed Linting Errors

* Added some unittests and removed some methods

* Dummy commit for CircleCI Issue

Co-authored-by: Afif Swaidan <[email protected]>

* Use SetParameter Launch API to set the yaml filename for map_server (ros-navigation#3174)

* implement launch priority for the mapserver parameter yaml_filename

minor fix

fix commit

reincluded rewritten function

comment remaining lines for yaml_filename

removed default_value

issue with composable node

alternative soltion to the condition param not working in composable node

remove unused import

remove comments and reorder composablenode execution

fixing commit

fixing format

fixing lint

Update nav2_bringup/params/nav2_params.yaml

Co-authored-by: Steve Macenski <[email protected]>

* state new ros-rolling release changes and deprecation

Co-authored-by: Steve Macenski <[email protected]>

* adding reconfigure test to thetastar (ros-navigation#3275)

* Check for range_max of laserscan in updateFilter to avoid a implicit overflow crash. (ros-navigation#3276)

* Update amcl_node.cpp

* fit the code style

* fit code style

* BT Service Node to throw if service was not available in time (ros-navigation#3256)

* throw if service server wasn't available in time

mimic the behavior of the bt action node constructor

* throw if action unavailable in bt cancel action

* use chrono literals namespace

* fix linting errors

* fix code style divergence

* remove exec_depend on behaviortree_cpp_v3 (ros-navigation#3279)

* add parameterized refinement recursion numbers in Smac Planner Smoother and Simple Smoother (ros-navigation#3284)

* add parameterized refinement recursion numbers

* fix tests

* Add allow_unknown parameter to theta star planner (ros-navigation#3286)

* Add allow unknown parameter to theta star planner

* Add allow unknown parameter to tests

* missing comma

* Change cost of unknown tiles

* Uncrustify

* Include test cases waypoint follwer (ros-navigation#3288)

* WIP

* included missed_waypoing check

* finished inclding test

* fix format

* return default sleep value

* Dynamically changing polygons support (ros-navigation#3245)

* Add Collision Monitor polygon topics subscription

* Add the support of polygons published in different frame

* Internal review

* Fix working with polygons visualization

* Update nav2_collision_monitor/README.md

Co-authored-by: Steve Macenski <[email protected]>

* Move getTransform to nav2_util

* Fix misprint

* Meet remaining review items:
* Update polygon params handling logic
* Warn if polygon shape was not set
* Publish with ownership movement

* Correct polygons_test.cpp parameters handling logic

* Adjust README for dynamic polygons logic update

Co-authored-by: Steve Macenski <[email protected]>

* adding getCostScalingFactor (ros-navigation#3290)

* Implemented smoother selector bt node (ros-navigation#3283)

* Implemented smoother selector bt node

Signed-off-by: Owen Hooper <[email protected]>

* updated copyright in modified file

Signed-off-by: Owen Hooper <[email protected]>

Signed-off-by: Owen Hooper <[email protected]>

* Pipe error codes (ros-navigation#3251)

* issue with finding key

* passed up codes to bt_navigator

* lint fix

* updates

* adding error_code_id back in

* error codes names in params

* bump error codes

* lint

* spelling

* test fix

* update behavior trees

* cleanup

* Update bt_action_server_impl.hpp

* code review

* lint

* code review

* log fix

* error code for waypoint follower

* clean up

* remove waypoint error test, too flaky on CI

* lint and code review

* rough imp for waypoint changes

* lint

* code review

* build fix

* clean up

* revert

* space

* remove

* try to make github happ

* stop gap

* loading in param file

* working tests :)

* lint

* fixed cmake

* lint

* lint

* trigger build

* added invalid plugin error

* added test for piping up error codes

* clean up

* test waypoint follower

* only launch what is needed

* waypoint test

* revert lines for robot navigator

* fix test

* waypoint test

* switched to uint16

* clean up

* code review

* todo to note

* lint

* remove comment

* Update nav2_behavior_tree/include/nav2_behavior_tree/bt_action_server_impl.hpp

Co-authored-by: Steve Macenski <[email protected]>

* rename error_codes

* error code for navigate to pose

* error codes for navigate through poses.

* error codes for navigate through poses

* message update for waypoint follower

* rename to error code

* update node xml

Co-authored-by: Joshua Wallace <josho.wallace.com>
Co-authored-by: Steve Macenski <[email protected]>

* Solve bug when CostmapInfoServer is reactivated (ros-navigation#3292)

* Solve bug when CostmapInfoServer is reactivated

* Smoothness metrics update (ros-navigation#3294)

* Update metrics for path smoothness

* Support Savitzky-Golay smoother

* preempt/cancel test for time behavior, spin pluguin (ros-navigation#3301)

* include preempt/cancel test for time behavior, spin pluguin

* linting

* fix bug in code

* lint fix

* clean up test

* lint

* cleaned up test

* update

* revert Cmake

Signed-off-by: Owen Hooper <[email protected]>
Co-authored-by: Joshua Wallace <josho.wallace.com>
Co-authored-by: Hao-Xuan Song <[email protected]>
Co-authored-by: jaeminSHIN <[email protected]>
Co-authored-by: Steve Macenski <[email protected]>
Co-authored-by: Afif Swaidan <[email protected]>
Co-authored-by: Afif Swaidan <[email protected]>
Co-authored-by: Stevedan Ogochukwu Omodolor <[email protected]>
Co-authored-by: Pradheep Krishna <[email protected]>
Co-authored-by: Erwin Lejeune <[email protected]>
Co-authored-by: Adam Aposhian <[email protected]>
Co-authored-by: Pedro Alejandro González <[email protected]>
Co-authored-by: Alexey Merzlyakov <[email protected]>
Co-authored-by: Owen Hooper <[email protected]>
Co-authored-by: MartiBolet <[email protected]>
* publish layers of costmap

* lint fix

* lint round 2 :)

* code review

* remove isPublishable

* lint

* test running

* rough structure complete

* completed test

* lint

* code review

* CI

* CI

* linting

* completed pub test

* CostmapLayer::matchSize may be executed concurrently (ros-navigation#3250)

* CostmapLayer::matchSize() add a mutex

* Fix typo (ros-navigation#3262)

* Adding new Nav2 Smoother: Savitzky-Golay Smoother (ros-navigation#3264)

* initial prototype of the Savitzky Golay Filter Path Smoother

* fixed indexing issue - tested working

* updates for filter

* adding unit tests for SG-filter smoother

* adding lifecycle transitions

* refactoring RPP a bit for cleanliness on way to ROSCon (ros-navigation#3265)

* refactor for RPP on way to ROSCon

* fixing header

* fixing header

* fixing header

* fix edge cases test samplings

* linting

* exceptions for compute path through poses (ros-navigation#3248)

* exceptions for compute path through poses

* lint fix

* code review

* code review

Co-authored-by: Joshua Wallace <josho.wallace.com>

* Reclaim Our CI Coverage from the Lords of Painful Subtle Regressions ⚔️⚔️⚔️ (ros-navigation#3266)

* test waypoint follower with composition off for logging

* adding no composition to all system tests

* Added Line Iterator (ros-navigation#3197)

* Added Line Iterator

* Updated Line Iterator to a new iteration method

* Added the resolution as a parameter/ fixed linting

* Added the resolution as a parameter/ fixed linting

* Added unittests for the line iterator

* Added unittests based on "unittest" package

* Fixed __init__.py and rephrased some docstrings

* Fixed linting errors

* Fixed Linting Errors

* Added some unittests and removed some methods

* Dummy commit for CircleCI Issue

Co-authored-by: Afif Swaidan <[email protected]>

* Use SetParameter Launch API to set the yaml filename for map_server (ros-navigation#3174)

* implement launch priority for the mapserver parameter yaml_filename

minor fix

fix commit

reincluded rewritten function

comment remaining lines for yaml_filename

removed default_value

issue with composable node

alternative soltion to the condition param not working in composable node

remove unused import

remove comments and reorder composablenode execution

fixing commit

fixing format

fixing lint

Update nav2_bringup/params/nav2_params.yaml

Co-authored-by: Steve Macenski <[email protected]>

* state new ros-rolling release changes and deprecation

Co-authored-by: Steve Macenski <[email protected]>

* adding reconfigure test to thetastar (ros-navigation#3275)

* Check for range_max of laserscan in updateFilter to avoid a implicit overflow crash. (ros-navigation#3276)

* Update amcl_node.cpp

* fit the code style

* fit code style

* BT Service Node to throw if service was not available in time (ros-navigation#3256)

* throw if service server wasn't available in time

mimic the behavior of the bt action node constructor

* throw if action unavailable in bt cancel action

* use chrono literals namespace

* fix linting errors

* fix code style divergence

* remove exec_depend on behaviortree_cpp_v3 (ros-navigation#3279)

* add parameterized refinement recursion numbers in Smac Planner Smoother and Simple Smoother (ros-navigation#3284)

* add parameterized refinement recursion numbers

* fix tests

* Add allow_unknown parameter to theta star planner (ros-navigation#3286)

* Add allow unknown parameter to theta star planner

* Add allow unknown parameter to tests

* missing comma

* Change cost of unknown tiles

* Uncrustify

* Include test cases waypoint follwer (ros-navigation#3288)

* WIP

* included missed_waypoing check

* finished inclding test

* fix format

* return default sleep value

* Dynamically changing polygons support (ros-navigation#3245)

* Add Collision Monitor polygon topics subscription

* Add the support of polygons published in different frame

* Internal review

* Fix working with polygons visualization

* Update nav2_collision_monitor/README.md

Co-authored-by: Steve Macenski <[email protected]>

* Move getTransform to nav2_util

* Fix misprint

* Meet remaining review items:
* Update polygon params handling logic
* Warn if polygon shape was not set
* Publish with ownership movement

* Correct polygons_test.cpp parameters handling logic

* Adjust README for dynamic polygons logic update

Co-authored-by: Steve Macenski <[email protected]>

* adding getCostScalingFactor (ros-navigation#3290)

* Implemented smoother selector bt node (ros-navigation#3283)

* Implemented smoother selector bt node

Signed-off-by: Owen Hooper <[email protected]>

* updated copyright in modified file

Signed-off-by: Owen Hooper <[email protected]>

Signed-off-by: Owen Hooper <[email protected]>

* Pipe error codes (ros-navigation#3251)

* issue with finding key

* passed up codes to bt_navigator

* lint fix

* updates

* adding error_code_id back in

* error codes names in params

* bump error codes

* lint

* spelling

* test fix

* update behavior trees

* cleanup

* Update bt_action_server_impl.hpp

* code review

* lint

* code review

* log fix

* error code for waypoint follower

* clean up

* remove waypoint error test, too flaky on CI

* lint and code review

* rough imp for waypoint changes

* lint

* code review

* build fix

* clean up

* revert

* space

* remove

* try to make github happ

* stop gap

* loading in param file

* working tests :)

* lint

* fixed cmake

* lint

* lint

* trigger build

* added invalid plugin error

* added test for piping up error codes

* clean up

* test waypoint follower

* only launch what is needed

* waypoint test

* revert lines for robot navigator

* fix test

* waypoint test

* switched to uint16

* clean up

* code review

* todo to note

* lint

* remove comment

* Update nav2_behavior_tree/include/nav2_behavior_tree/bt_action_server_impl.hpp

Co-authored-by: Steve Macenski <[email protected]>

* rename error_codes

* error code for navigate to pose

* error codes for navigate through poses.

* error codes for navigate through poses

* message update for waypoint follower

* rename to error code

* update node xml

Co-authored-by: Joshua Wallace <josho.wallace.com>
Co-authored-by: Steve Macenski <[email protected]>

* Solve bug when CostmapInfoServer is reactivated (ros-navigation#3292)

* Solve bug when CostmapInfoServer is reactivated

* Smoothness metrics update (ros-navigation#3294)

* Update metrics for path smoothness

* Support Savitzky-Golay smoother

* preempt/cancel test for time behavior, spin pluguin (ros-navigation#3301)

* include preempt/cancel test for time behavior, spin pluguin

* linting

* fix bug in code

* lint fix

* clean up test

* lint

* cleaned up test

* update

* revert Cmake

* fixed error code test

* half time

* bump build

* revert

* lint error

Signed-off-by: Owen Hooper <[email protected]>
Co-authored-by: Joshua Wallace <josho.wallace.com>
Co-authored-by: Hao-Xuan Song <[email protected]>
Co-authored-by: jaeminSHIN <[email protected]>
Co-authored-by: Steve Macenski <[email protected]>
Co-authored-by: Afif Swaidan <[email protected]>
Co-authored-by: Afif Swaidan <[email protected]>
Co-authored-by: Stevedan Ogochukwu Omodolor <[email protected]>
Co-authored-by: Pradheep Krishna <[email protected]>
Co-authored-by: Erwin Lejeune <[email protected]>
Co-authored-by: Adam Aposhian <[email protected]>
Co-authored-by: Pedro Alejandro González <[email protected]>
Co-authored-by: Alexey Merzlyakov <[email protected]>
Co-authored-by: Owen Hooper <[email protected]>
Co-authored-by: MartiBolet <[email protected]>
* minimum error code set

* test for invalid smoother

* undo

* added rest of error tests

* Solve bug when CostmapInfoServer is reactivated (ros-navigation#3292)

* Solve bug when CostmapInfoServer is reactivated

* Smoothness metrics update (ros-navigation#3294)

* Update metrics for path smoothness

* Support Savitzky-Golay smoother

* preempt/cancel test for time behavior, spin pluguin (ros-navigation#3301)

* include preempt/cancel test for time behavior, spin pluguin

* linting

* fix bug in code

* removed changes to simple_smoother

* reverted simple_smoother

* revert

* revert

* updated constrained smoother

* revert

* added smoother error for invalid path

* linting

* invalid path test

* added error codes

* Timeout exception thrown by smoothers

* code review

Co-authored-by: Joshua Wallace <josho.wallace.com>
Co-authored-by: MartiBolet <[email protected]>
Co-authored-by: Alexey Merzlyakov <[email protected]>
Co-authored-by: Stevedan Ogochukwu Omodolor <[email protected]>
Co-authored-by: Joshua Wallace <josho.wallace.com>
This reverts commit 7a14c46.
@mergify
Copy link
Contributor

mergify bot commented Dec 14, 2022

This pull request is in conflict. Could you fix it @jwallace42?

@mergify
Copy link
Contributor

mergify bot commented Dec 14, 2022

@jwallace42, your PR has failed to build. Please check CI outputs and resolve issues.
You may need to rebase or pull in main due to API changes (or your contribution genuinely fails).

@mergify
Copy link
Contributor

mergify bot commented Dec 14, 2022

@jwallace42, your PR has failed to build. Please check CI outputs and resolve issues.
You may need to rebase or pull in main due to API changes (or your contribution genuinely fails).

@mergify
Copy link
Contributor

mergify bot commented Dec 14, 2022

@jwallace42, your PR has failed to build. Please check CI outputs and resolve issues.
You may need to rebase or pull in main due to API changes (or your contribution genuinely fails).

@jwallace42 jwallace42 self-assigned this Dec 17, 2022
@jwallace42
Copy link
Contributor Author

jwallace42 commented Dec 19, 2022

Testing Notes from Steve:

Mostly its just some basic test cases to understand how much change will cause a trigger in each situation with the parameter set to see if there's a configuration z_score that would be sensible to work decently well with all of them to know that the feature meets our intent. Ex.

  • Have a path that wraps a corner around a shelf from 1 aisle to another. How much increased cost due to sensor noise triggers the update. Basically I want to know if its robust against minor noise when close up to obstacles but reactive to major changes.
  • Path a long path, lets even say long, straight, in free space. If we have some human-sized circle, how/when does it trigger a response? Basically I want to know for localized changes on a larger path, it will trigger reasonably with the same set of parameters as with small global changes (next experiment)
  • Path is a realistic path in some space in a costmap field. How does localization errors / updates impact triggers?
  • Path is a realistic path in some space in a costmap field. How does costmap parameterizations of the inflation layer impact things?
  • Path is a realistic path in some space in a costmap field. How does small but globalized changes impact replanning triggers?
  • Is it sensible to measure the changes based on the cost values or the distance from obstacles (e.g. since we can back out the distance to obstacle if we have the cost with an inflation layer)

If there's some single value of z_score that does well in all of these situations, then we're good to go. If not, then that's a bit problematic since it wouldn't properly trigger replanning in the basic situations where replanning should/shouldn't be triggered

@jwallace42 jwallace42 added enhancement New feature or request nav2_planner and removed enhancement New feature or request labels Dec 22, 2022
@mergify
Copy link
Contributor

mergify bot commented May 25, 2023

This pull request is in conflict. Could you fix it @jwallace42?

1 similar comment
Copy link
Contributor

mergify bot commented Feb 12, 2024

This pull request is in conflict. Could you fix it @jwallace42?

@jwallace42 jwallace42 marked this pull request as draft February 13, 2024 14:23
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.

IsPathValid Improvement: Change in Cost