Skip to content

Fix ConstraintCritic to enforce axis-wise velocity bounds for holonomic robots#6044

Draft
prajwalthakur wants to merge 2 commits intoros-navigation:mainfrom
prajwalthakur:constraint-critic-axis-fix
Draft

Fix ConstraintCritic to enforce axis-wise velocity bounds for holonomic robots#6044
prajwalthakur wants to merge 2 commits intoros-navigation:mainfrom
prajwalthakur:constraint-critic-axis-fix

Conversation

@prajwalthakur
Copy link

Use axis-wise velocity constraints (vx, vy) in ConstraintCritic instead of magnitude-based bounds for holonomic robots.

Basic Info

Info Please fill out this column
Ticket(s) this addresses closes #6042
Primary OS tested on Ubuntu
Robotic platform tested on /
Does this PR contain AI generated software? No
Was this PR description generated by AI software? Out of respect for maintainers, AI for human-to-human communications are banned

Description of contribution in a few bullet points

  • Updated ConstraintCritic score function for holonomic robots to use axis-wise velocity constraints (vx, vy) instead of magnitude-based checks.

Description of documentation updates required from your changes

Description of how this change was tested

  • Added unit test for holonomic robot in CriticTests.ConstraintsCritic

Future work that may be required in bullet points

For Maintainers:

  • Check that any new parameters added are updated in docs.nav2.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
  • Should this be backported to current distributions? If so, tag with backport-*.

… magnitude bounds for holonomic robots

Signed-off-by: prajwalthakur <prajwalthakur98@gmail.com>
@codecov
Copy link

codecov bot commented Mar 21, 2026

Codecov Report

❌ Patch coverage is 88.88889% with 1 line in your changes missing coverage. Please review.

Files with missing lines Patch % Lines
..._mppi_controller/src/critics/constraint_critic.cpp 87.50% 1 Missing ⚠️
Files with missing lines Coverage Δ
...nav2_mppi_controller/critics/constraint_critic.hpp 100.00% <100.00%> (ø)
..._mppi_controller/src/critics/constraint_critic.cpp 86.36% <87.50%> (+21.14%) ⬆️

... and 6 files with indirect coverage changes

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

… magnitude bounds for holonomic robots

Signed-off-by: prajwalthakur <prajwalthakur98@gmail.com>
@prajwalthakur prajwalthakur marked this pull request as draft March 21, 2026 10:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

MPPI: Velocity constraint inconsistency: vx_min violated but no cost applied in ConstraintCritic

1 participant