dwb-critics

Configure DWB local planner critic plugins for ROS2 trajectory scoring.

Updated Aug 16, 2026
One-click install
npx skills add https://github.com/three1324/yeonjinautomotive --skill dwb-critics-three1324
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: dwb-critics
Source: https://github.com/three1324/yeonjinautomotive/tree/main/.claude/skills/dwb-critics
Command: npx skills add https://github.com/three1324/yeonjinautomotive --skill dwb-critics-three1324

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Tuning the DWB local planner in ROS2 Nav2 requires understanding how each critic plugin scores trajectories, yet the parameters, defaults, and interactions between critics are scattered and easy to misconfigure, leading to poor path tracking, oscillation, or collisions. ## Core Features & Use Cases - Critic Reference: Documents every DWB critic (PathDist, GoalDist, GoalAlign, PathAlign, BaseObstacle, ObstacleFootprint, RotateToGoal, Oscillation, PreferForward, TwirlingCritic, MapGrid) with parameters, defaults, and behavior. - Tuning Guidance: Explains the linear scale scoring model and provides recommended scale values for indoor differential-drive robots. - Performance Optimization: Covers critic ordering with short-circuit trajectory evaluation to reject colliding trajectories early and reduce CPU cost. - Use Case: A robot overshoots the goal before rotating; consult the RotateToGoal section to adjust xy_goal_tolerance and slowing_factor for correct final alignment. ## Quick Start Ask the assistant to tune the DWB critics in your Nav2 controller configuration so the robot tracks the global path tightly without oscillating near obstacles.

Frequently Asked Questions about dwb-critics

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I tune DWB critics in ROS2 Nav2?

Adjust each critic's scale parameter, which linearly multiplies its raw score in the total trajectory cost. Keep PathDist highest for path tracking, GoalDist slightly lower to avoid goal cutting, and BaseObstacle near 0.02 since costmap values are large.

What is the difference between BaseObstacle and ObstacleFootprint critics?

BaseObstacle checks trajectory points against costmap values, while ObstacleFootprint stamps the full robot footprint polygon for accurate collision checking. ObstacleFootprint is more precise but costs significantly more CPU per trajectory.

Why does my robot oscillate between forward and backward motion in DWB?

Oscillation happens when the planner alternates velocity commands across cycles. The Oscillation critic penalizes this behavior; if the robot hesitates at narrow gaps, decrease its scale below 1.0 to reduce sensitivity.

How do I fix the robot arriving at the goal with wrong heading?

Increase the GoalAlign critic scale and set forward_point_distance to roughly match the robot's length. If the robot overshoots before rotating, adjust RotateToGoal by decreasing xy_goal_tolerance or increasing slowing_factor.

Does critic order affect DWB controller performance?

Yes, when short_circuit_trajectory_evaluation is enabled, evaluation stops once a partial score exceeds the best total. Place collision critics like BaseObstacle first to reject infeasible trajectories quickly and expensive critics last.