Package Summary
Tags | No category tags. |
Version | 0.47.0 |
License | Apache License 2.0 |
Build type | AMENT_CMAKE |
Use | RECOMMENDED |
Repository Summary
Description | |
Checkout URI | https://github.com/autowarefoundation/autoware_universe.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2025-08-16 |
Dev Status | UNKNOWN |
Released | UNRELEASED |
Tags | planner ros calibration self-driving-car autonomous-driving autonomous-vehicles ros2 3d-map autoware |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Takamasa Horibe
- Kosuke Takeuchi
- Kyoichi Sugahara
- Alqudah Mohammad
- Satoshi Ota
Authors
- Takamasa Horibe
- Yutaka Shimizu
Planning Validator
The autoware_planning_validator
node is the last module executed in the planning component, it responsible for checking the validity of the planning trajectory before it is published to control component. The status of the validation can be viewed in the /diagnostics
and /validation_status
topics. When an invalidity is detected, the autoware_planning_validator
will process the trajectory following the selected option: “0. publish the trajectory as it is”, “1. stop publishing the trajectory”, “2. publish the last validated trajectory”.
The autoware_planning_validator
node loads multiple plugins modules, each responsible for running specific validation checks on the planning trajectory:
-
Latency Checker: The
autoware_planning_validator_latency_checker
is responsible for checking the validity of planning trajectory age -
Trajectory Checker: The
autoware_planning_validator_trajectory_checker
is responsible for checking the validity of planning trajectory shape -
Intersection Collision Checker: The
autoware_planning_validator_intersection_collision_checker
is responsible for verifying planning trajectory does not result in collision at intersections -
Rear Collision Checker: The
autoware_planning_validator_rear_collision_checker
is responsible for verifying planning trajectory does not result in collision with rear vehicles
Inputs/Outputs
Inputs
The autoware_planning_validator
takes in the following inputs:
Name | Type | Description |
---|---|---|
~/input/kinematics |
nav_msgs/Odometry | ego pose and twist |
~/input/acceleration |
geometry_msgs/AccelWithCovarianceStamped | current acceleration of the ego vehicle |
~/input/trajectory |
autoware_planning_msgs/Trajectory | target trajectory to be validated in this node |
~/input/route |
autoware_planning_msgs/LaneletRoute | route information |
~/input/lanelet_map_bin |
autoware_map_msgs/LaneletMapBin | lanelet vector map information |
~/input/pointcloud |
sensor_msgs/PointCloud2 | obstacle pointcloud with ground removed |
Outputs
It outputs the following:
Name | Type | Description |
---|---|---|
~/output/trajectory |
autoware_planning_msgs/Trajectory | validated trajectory |
~/output/validation_status |
planning_validator/PlanningValidatorStatus | validator status to inform the reason why the trajectory is valid/invalid |
/diagnostics |
diagnostic_msgs/DiagnosticStatus | diagnostics to report errors |
Parameters
The following parameters can be set for the autoware_planning_validator
:
Name | Type | Description | Default value |
---|---|---|---|
default_handling_type |
int | set default handling type for when invalidity is detected. 0: publish invalid traj as it is, 1: publish last valid traj, 2: publish last valid traj with soft stop |
0 |
publish_diag |
bool | if true, diagnostics msg is published. | true |
diag_error_count_threshold |
int | Number of consecutive invalid trajectories to set the Diag to ERROR. (Fe.g, threshold = 1 means, even if the trajectory is invalid, the Diag will not be ERROR if the next trajectory is valid.) | 0 |
display_on_terminal |
bool | show error msg on terminal | true |
soft_stop_deceleration |
double | deceleration value to be used for soft stop action. [m/ss] | -1.0 |
soft_stop_jerk_lim |
double | jerk limit value to be used for soft stop action. [m/sss] | 0.3 |
Changelog for package autoware_planning_validator
0.47.0 (2025-08-11)
-
feat: change planning output topic name to /planning/trajectory (#11135)
- change planning output topic name to /planning/trajectory
* style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
fix(planning_validator): init validation status (#11119)
- fix(planning_validator): init validation status
* fix(control_validator): init validation status ---------
-
refactor(planning_validator): refactor planning validator configuration and error handling (#11081)
- refactor trajectory check error handling
- define set_diag_status function for each module locally
* update documentation ---------
-
chore: sync files (#11091) Co-authored-by: github-actions <<github-actions@github.com>> Co-authored-by: M. Fatih Cırıt <<mfc@autoware.org>> Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
fix(planning_validator): suppress unnecessary error messages (#11007)
-
perf(planning_validator): switch planning_validator back to event driven (#10979) make planning_validator node event driven on trajectory msg
-
feat(intersection_collision_checker): improve icc debug markers (#10967)
- add DebugData struct
- refactor and publish debug info and markers
- always publish lanelet debug markers
- refactor debug markers code
- remove unused functions
- pass string by reference
- set is_safe flag for rear_collision_checker debug data
- fix for cpp check
* add maintainer ---------
-
fix(planning_validator): fix conflict between trajectory shift and distance deviation checks (#10799)
- use global is_critical_error flag for trajectory diagnostics update
- add warning to readme
* Update planning/planning_validator/autoware_planning_validator/README.md ---------
-
feat(intersection_collision_checker): improve feature to reduce false positive occurrence (#10899)
- keep a map of already detected target lanelets
- fix on/off time buffers logic
- add debug marker to visualize colliding object
- use resampled trajectory instead of raw trajectory
- fix overlap index computation
- fix on/off time buffers logic for rear collision checker
- fix planning .pages file, fix format
- update readme
- ignore not moving pcd object
* handle case when object is very close to overlap point ---------
-
fix: a launch mistake (#10891) fix mistake
-
feat(planning_validator): improve intersection collision checker implementation (#10839)
- use parameter generator library
- add pointcloud latency compensation
- change msg field name
- add readme file
- add parameters dection to readme
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Name |
---|
libboost-dev |
Launch files
- launch/invalid_trajectory_publisher.launch.xml
-
- input/trajectory [default: /planning/scenario_planning/velocity_smoother/trajectory]
- output/trajectory [default: /planning/scenario_planning/velocity_smoother/trajectory]
- launch/planning_validator.launch.xml
-
- launch_latency_checker [default: true]
- launch_trajectory_checker [default: true]
- launch_intersection_collision_checker [default: true]
- launch_rear_collision_checker [default: true]
- launch_modules_list_end [default: ""]]
- planning_validator_launch_modules [default: []
- planning_validator_param_path [default: $(find-pkg-share autoware_planning_validator)/config/planning_validator.param.yaml]
- planning_validator_latency_checker_param_path
- planning_validator_trajectory_checker_param_path
- planning_validator_intersection_collision_checker_param_path
- planning_validator_rear_collision_checker_param_path
- input_trajectory [default: /planning/scenario_planning/velocity_smoother/trajectory]
- input_pointcloud [default: /perception/obstacle_segmentation/pointcloud]
- input_route_topic_name [default: /planning/mission_planning/route]
- input_vector_map_topic_name [default: /map/vector_map]
- output_trajectory [default: /planning/trajectory]
Messages
Services
Plugins
Recent questions tagged autoware_planning_validator at Robotics Stack Exchange
Package Summary
Tags | No category tags. |
Version | 0.47.0 |
License | Apache License 2.0 |
Build type | AMENT_CMAKE |
Use | RECOMMENDED |
Repository Summary
Description | |
Checkout URI | https://github.com/autowarefoundation/autoware_universe.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2025-08-16 |
Dev Status | UNKNOWN |
Released | UNRELEASED |
Tags | planner ros calibration self-driving-car autonomous-driving autonomous-vehicles ros2 3d-map autoware |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Takamasa Horibe
- Kosuke Takeuchi
- Kyoichi Sugahara
- Alqudah Mohammad
- Satoshi Ota
Authors
- Takamasa Horibe
- Yutaka Shimizu
Planning Validator
The autoware_planning_validator
node is the last module executed in the planning component, it responsible for checking the validity of the planning trajectory before it is published to control component. The status of the validation can be viewed in the /diagnostics
and /validation_status
topics. When an invalidity is detected, the autoware_planning_validator
will process the trajectory following the selected option: “0. publish the trajectory as it is”, “1. stop publishing the trajectory”, “2. publish the last validated trajectory”.
The autoware_planning_validator
node loads multiple plugins modules, each responsible for running specific validation checks on the planning trajectory:
-
Latency Checker: The
autoware_planning_validator_latency_checker
is responsible for checking the validity of planning trajectory age -
Trajectory Checker: The
autoware_planning_validator_trajectory_checker
is responsible for checking the validity of planning trajectory shape -
Intersection Collision Checker: The
autoware_planning_validator_intersection_collision_checker
is responsible for verifying planning trajectory does not result in collision at intersections -
Rear Collision Checker: The
autoware_planning_validator_rear_collision_checker
is responsible for verifying planning trajectory does not result in collision with rear vehicles
Inputs/Outputs
Inputs
The autoware_planning_validator
takes in the following inputs:
Name | Type | Description |
---|---|---|
~/input/kinematics |
nav_msgs/Odometry | ego pose and twist |
~/input/acceleration |
geometry_msgs/AccelWithCovarianceStamped | current acceleration of the ego vehicle |
~/input/trajectory |
autoware_planning_msgs/Trajectory | target trajectory to be validated in this node |
~/input/route |
autoware_planning_msgs/LaneletRoute | route information |
~/input/lanelet_map_bin |
autoware_map_msgs/LaneletMapBin | lanelet vector map information |
~/input/pointcloud |
sensor_msgs/PointCloud2 | obstacle pointcloud with ground removed |
Outputs
It outputs the following:
Name | Type | Description |
---|---|---|
~/output/trajectory |
autoware_planning_msgs/Trajectory | validated trajectory |
~/output/validation_status |
planning_validator/PlanningValidatorStatus | validator status to inform the reason why the trajectory is valid/invalid |
/diagnostics |
diagnostic_msgs/DiagnosticStatus | diagnostics to report errors |
Parameters
The following parameters can be set for the autoware_planning_validator
:
Name | Type | Description | Default value |
---|---|---|---|
default_handling_type |
int | set default handling type for when invalidity is detected. 0: publish invalid traj as it is, 1: publish last valid traj, 2: publish last valid traj with soft stop |
0 |
publish_diag |
bool | if true, diagnostics msg is published. | true |
diag_error_count_threshold |
int | Number of consecutive invalid trajectories to set the Diag to ERROR. (Fe.g, threshold = 1 means, even if the trajectory is invalid, the Diag will not be ERROR if the next trajectory is valid.) | 0 |
display_on_terminal |
bool | show error msg on terminal | true |
soft_stop_deceleration |
double | deceleration value to be used for soft stop action. [m/ss] | -1.0 |
soft_stop_jerk_lim |
double | jerk limit value to be used for soft stop action. [m/sss] | 0.3 |
Changelog for package autoware_planning_validator
0.47.0 (2025-08-11)
-
feat: change planning output topic name to /planning/trajectory (#11135)
- change planning output topic name to /planning/trajectory
* style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
fix(planning_validator): init validation status (#11119)
- fix(planning_validator): init validation status
* fix(control_validator): init validation status ---------
-
refactor(planning_validator): refactor planning validator configuration and error handling (#11081)
- refactor trajectory check error handling
- define set_diag_status function for each module locally
* update documentation ---------
-
chore: sync files (#11091) Co-authored-by: github-actions <<github-actions@github.com>> Co-authored-by: M. Fatih Cırıt <<mfc@autoware.org>> Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
fix(planning_validator): suppress unnecessary error messages (#11007)
-
perf(planning_validator): switch planning_validator back to event driven (#10979) make planning_validator node event driven on trajectory msg
-
feat(intersection_collision_checker): improve icc debug markers (#10967)
- add DebugData struct
- refactor and publish debug info and markers
- always publish lanelet debug markers
- refactor debug markers code
- remove unused functions
- pass string by reference
- set is_safe flag for rear_collision_checker debug data
- fix for cpp check
* add maintainer ---------
-
fix(planning_validator): fix conflict between trajectory shift and distance deviation checks (#10799)
- use global is_critical_error flag for trajectory diagnostics update
- add warning to readme
* Update planning/planning_validator/autoware_planning_validator/README.md ---------
-
feat(intersection_collision_checker): improve feature to reduce false positive occurrence (#10899)
- keep a map of already detected target lanelets
- fix on/off time buffers logic
- add debug marker to visualize colliding object
- use resampled trajectory instead of raw trajectory
- fix overlap index computation
- fix on/off time buffers logic for rear collision checker
- fix planning .pages file, fix format
- update readme
- ignore not moving pcd object
* handle case when object is very close to overlap point ---------
-
fix: a launch mistake (#10891) fix mistake
-
feat(planning_validator): improve intersection collision checker implementation (#10839)
- use parameter generator library
- add pointcloud latency compensation
- change msg field name
- add readme file
- add parameters dection to readme
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Name |
---|
libboost-dev |
Launch files
- launch/invalid_trajectory_publisher.launch.xml
-
- input/trajectory [default: /planning/scenario_planning/velocity_smoother/trajectory]
- output/trajectory [default: /planning/scenario_planning/velocity_smoother/trajectory]
- launch/planning_validator.launch.xml
-
- launch_latency_checker [default: true]
- launch_trajectory_checker [default: true]
- launch_intersection_collision_checker [default: true]
- launch_rear_collision_checker [default: true]
- launch_modules_list_end [default: ""]]
- planning_validator_launch_modules [default: []
- planning_validator_param_path [default: $(find-pkg-share autoware_planning_validator)/config/planning_validator.param.yaml]
- planning_validator_latency_checker_param_path
- planning_validator_trajectory_checker_param_path
- planning_validator_intersection_collision_checker_param_path
- planning_validator_rear_collision_checker_param_path
- input_trajectory [default: /planning/scenario_planning/velocity_smoother/trajectory]
- input_pointcloud [default: /perception/obstacle_segmentation/pointcloud]
- input_route_topic_name [default: /planning/mission_planning/route]
- input_vector_map_topic_name [default: /map/vector_map]
- output_trajectory [default: /planning/trajectory]
Messages
Services
Plugins
Recent questions tagged autoware_planning_validator at Robotics Stack Exchange
Package Summary
Tags | No category tags. |
Version | 0.47.0 |
License | Apache License 2.0 |
Build type | AMENT_CMAKE |
Use | RECOMMENDED |
Repository Summary
Description | |
Checkout URI | https://github.com/autowarefoundation/autoware_universe.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2025-08-16 |
Dev Status | UNKNOWN |
Released | UNRELEASED |
Tags | planner ros calibration self-driving-car autonomous-driving autonomous-vehicles ros2 3d-map autoware |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Takamasa Horibe
- Kosuke Takeuchi
- Kyoichi Sugahara
- Alqudah Mohammad
- Satoshi Ota
Authors
- Takamasa Horibe
- Yutaka Shimizu
Planning Validator
The autoware_planning_validator
node is the last module executed in the planning component, it responsible for checking the validity of the planning trajectory before it is published to control component. The status of the validation can be viewed in the /diagnostics
and /validation_status
topics. When an invalidity is detected, the autoware_planning_validator
will process the trajectory following the selected option: “0. publish the trajectory as it is”, “1. stop publishing the trajectory”, “2. publish the last validated trajectory”.
The autoware_planning_validator
node loads multiple plugins modules, each responsible for running specific validation checks on the planning trajectory:
-
Latency Checker: The
autoware_planning_validator_latency_checker
is responsible for checking the validity of planning trajectory age -
Trajectory Checker: The
autoware_planning_validator_trajectory_checker
is responsible for checking the validity of planning trajectory shape -
Intersection Collision Checker: The
autoware_planning_validator_intersection_collision_checker
is responsible for verifying planning trajectory does not result in collision at intersections -
Rear Collision Checker: The
autoware_planning_validator_rear_collision_checker
is responsible for verifying planning trajectory does not result in collision with rear vehicles
Inputs/Outputs
Inputs
The autoware_planning_validator
takes in the following inputs:
Name | Type | Description |
---|---|---|
~/input/kinematics |
nav_msgs/Odometry | ego pose and twist |
~/input/acceleration |
geometry_msgs/AccelWithCovarianceStamped | current acceleration of the ego vehicle |
~/input/trajectory |
autoware_planning_msgs/Trajectory | target trajectory to be validated in this node |
~/input/route |
autoware_planning_msgs/LaneletRoute | route information |
~/input/lanelet_map_bin |
autoware_map_msgs/LaneletMapBin | lanelet vector map information |
~/input/pointcloud |
sensor_msgs/PointCloud2 | obstacle pointcloud with ground removed |
Outputs
It outputs the following:
Name | Type | Description |
---|---|---|
~/output/trajectory |
autoware_planning_msgs/Trajectory | validated trajectory |
~/output/validation_status |
planning_validator/PlanningValidatorStatus | validator status to inform the reason why the trajectory is valid/invalid |
/diagnostics |
diagnostic_msgs/DiagnosticStatus | diagnostics to report errors |
Parameters
The following parameters can be set for the autoware_planning_validator
:
Name | Type | Description | Default value |
---|---|---|---|
default_handling_type |
int | set default handling type for when invalidity is detected. 0: publish invalid traj as it is, 1: publish last valid traj, 2: publish last valid traj with soft stop |
0 |
publish_diag |
bool | if true, diagnostics msg is published. | true |
diag_error_count_threshold |
int | Number of consecutive invalid trajectories to set the Diag to ERROR. (Fe.g, threshold = 1 means, even if the trajectory is invalid, the Diag will not be ERROR if the next trajectory is valid.) | 0 |
display_on_terminal |
bool | show error msg on terminal | true |
soft_stop_deceleration |
double | deceleration value to be used for soft stop action. [m/ss] | -1.0 |
soft_stop_jerk_lim |
double | jerk limit value to be used for soft stop action. [m/sss] | 0.3 |
Changelog for package autoware_planning_validator
0.47.0 (2025-08-11)
-
feat: change planning output topic name to /planning/trajectory (#11135)
- change planning output topic name to /planning/trajectory
* style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
fix(planning_validator): init validation status (#11119)
- fix(planning_validator): init validation status
* fix(control_validator): init validation status ---------
-
refactor(planning_validator): refactor planning validator configuration and error handling (#11081)
- refactor trajectory check error handling
- define set_diag_status function for each module locally
* update documentation ---------
-
chore: sync files (#11091) Co-authored-by: github-actions <<github-actions@github.com>> Co-authored-by: M. Fatih Cırıt <<mfc@autoware.org>> Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
fix(planning_validator): suppress unnecessary error messages (#11007)
-
perf(planning_validator): switch planning_validator back to event driven (#10979) make planning_validator node event driven on trajectory msg
-
feat(intersection_collision_checker): improve icc debug markers (#10967)
- add DebugData struct
- refactor and publish debug info and markers
- always publish lanelet debug markers
- refactor debug markers code
- remove unused functions
- pass string by reference
- set is_safe flag for rear_collision_checker debug data
- fix for cpp check
* add maintainer ---------
-
fix(planning_validator): fix conflict between trajectory shift and distance deviation checks (#10799)
- use global is_critical_error flag for trajectory diagnostics update
- add warning to readme
* Update planning/planning_validator/autoware_planning_validator/README.md ---------
-
feat(intersection_collision_checker): improve feature to reduce false positive occurrence (#10899)
- keep a map of already detected target lanelets
- fix on/off time buffers logic
- add debug marker to visualize colliding object
- use resampled trajectory instead of raw trajectory
- fix overlap index computation
- fix on/off time buffers logic for rear collision checker
- fix planning .pages file, fix format
- update readme
- ignore not moving pcd object
* handle case when object is very close to overlap point ---------
-
fix: a launch mistake (#10891) fix mistake
-
feat(planning_validator): improve intersection collision checker implementation (#10839)
- use parameter generator library
- add pointcloud latency compensation
- change msg field name
- add readme file
- add parameters dection to readme
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Name |
---|
libboost-dev |
Launch files
- launch/invalid_trajectory_publisher.launch.xml
-
- input/trajectory [default: /planning/scenario_planning/velocity_smoother/trajectory]
- output/trajectory [default: /planning/scenario_planning/velocity_smoother/trajectory]
- launch/planning_validator.launch.xml
-
- launch_latency_checker [default: true]
- launch_trajectory_checker [default: true]
- launch_intersection_collision_checker [default: true]
- launch_rear_collision_checker [default: true]
- launch_modules_list_end [default: ""]]
- planning_validator_launch_modules [default: []
- planning_validator_param_path [default: $(find-pkg-share autoware_planning_validator)/config/planning_validator.param.yaml]
- planning_validator_latency_checker_param_path
- planning_validator_trajectory_checker_param_path
- planning_validator_intersection_collision_checker_param_path
- planning_validator_rear_collision_checker_param_path
- input_trajectory [default: /planning/scenario_planning/velocity_smoother/trajectory]
- input_pointcloud [default: /perception/obstacle_segmentation/pointcloud]
- input_route_topic_name [default: /planning/mission_planning/route]
- input_vector_map_topic_name [default: /map/vector_map]
- output_trajectory [default: /planning/trajectory]
Messages
Services
Plugins
Recent questions tagged autoware_planning_validator at Robotics Stack Exchange
Package Summary
Tags | No category tags. |
Version | 0.47.0 |
License | Apache License 2.0 |
Build type | AMENT_CMAKE |
Use | RECOMMENDED |
Repository Summary
Description | |
Checkout URI | https://github.com/autowarefoundation/autoware_universe.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2025-08-16 |
Dev Status | UNKNOWN |
Released | UNRELEASED |
Tags | planner ros calibration self-driving-car autonomous-driving autonomous-vehicles ros2 3d-map autoware |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Takamasa Horibe
- Kosuke Takeuchi
- Kyoichi Sugahara
- Alqudah Mohammad
- Satoshi Ota
Authors
- Takamasa Horibe
- Yutaka Shimizu
Planning Validator
The autoware_planning_validator
node is the last module executed in the planning component, it responsible for checking the validity of the planning trajectory before it is published to control component. The status of the validation can be viewed in the /diagnostics
and /validation_status
topics. When an invalidity is detected, the autoware_planning_validator
will process the trajectory following the selected option: “0. publish the trajectory as it is”, “1. stop publishing the trajectory”, “2. publish the last validated trajectory”.
The autoware_planning_validator
node loads multiple plugins modules, each responsible for running specific validation checks on the planning trajectory:
-
Latency Checker: The
autoware_planning_validator_latency_checker
is responsible for checking the validity of planning trajectory age -
Trajectory Checker: The
autoware_planning_validator_trajectory_checker
is responsible for checking the validity of planning trajectory shape -
Intersection Collision Checker: The
autoware_planning_validator_intersection_collision_checker
is responsible for verifying planning trajectory does not result in collision at intersections -
Rear Collision Checker: The
autoware_planning_validator_rear_collision_checker
is responsible for verifying planning trajectory does not result in collision with rear vehicles
Inputs/Outputs
Inputs
The autoware_planning_validator
takes in the following inputs:
Name | Type | Description |
---|---|---|
~/input/kinematics |
nav_msgs/Odometry | ego pose and twist |
~/input/acceleration |
geometry_msgs/AccelWithCovarianceStamped | current acceleration of the ego vehicle |
~/input/trajectory |
autoware_planning_msgs/Trajectory | target trajectory to be validated in this node |
~/input/route |
autoware_planning_msgs/LaneletRoute | route information |
~/input/lanelet_map_bin |
autoware_map_msgs/LaneletMapBin | lanelet vector map information |
~/input/pointcloud |
sensor_msgs/PointCloud2 | obstacle pointcloud with ground removed |
Outputs
It outputs the following:
Name | Type | Description |
---|---|---|
~/output/trajectory |
autoware_planning_msgs/Trajectory | validated trajectory |
~/output/validation_status |
planning_validator/PlanningValidatorStatus | validator status to inform the reason why the trajectory is valid/invalid |
/diagnostics |
diagnostic_msgs/DiagnosticStatus | diagnostics to report errors |
Parameters
The following parameters can be set for the autoware_planning_validator
:
Name | Type | Description | Default value |
---|---|---|---|
default_handling_type |
int | set default handling type for when invalidity is detected. 0: publish invalid traj as it is, 1: publish last valid traj, 2: publish last valid traj with soft stop |
0 |
publish_diag |
bool | if true, diagnostics msg is published. | true |
diag_error_count_threshold |
int | Number of consecutive invalid trajectories to set the Diag to ERROR. (Fe.g, threshold = 1 means, even if the trajectory is invalid, the Diag will not be ERROR if the next trajectory is valid.) | 0 |
display_on_terminal |
bool | show error msg on terminal | true |
soft_stop_deceleration |
double | deceleration value to be used for soft stop action. [m/ss] | -1.0 |
soft_stop_jerk_lim |
double | jerk limit value to be used for soft stop action. [m/sss] | 0.3 |
Changelog for package autoware_planning_validator
0.47.0 (2025-08-11)
-
feat: change planning output topic name to /planning/trajectory (#11135)
- change planning output topic name to /planning/trajectory
* style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
fix(planning_validator): init validation status (#11119)
- fix(planning_validator): init validation status
* fix(control_validator): init validation status ---------
-
refactor(planning_validator): refactor planning validator configuration and error handling (#11081)
- refactor trajectory check error handling
- define set_diag_status function for each module locally
* update documentation ---------
-
chore: sync files (#11091) Co-authored-by: github-actions <<github-actions@github.com>> Co-authored-by: M. Fatih Cırıt <<mfc@autoware.org>> Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
fix(planning_validator): suppress unnecessary error messages (#11007)
-
perf(planning_validator): switch planning_validator back to event driven (#10979) make planning_validator node event driven on trajectory msg
-
feat(intersection_collision_checker): improve icc debug markers (#10967)
- add DebugData struct
- refactor and publish debug info and markers
- always publish lanelet debug markers
- refactor debug markers code
- remove unused functions
- pass string by reference
- set is_safe flag for rear_collision_checker debug data
- fix for cpp check
* add maintainer ---------
-
fix(planning_validator): fix conflict between trajectory shift and distance deviation checks (#10799)
- use global is_critical_error flag for trajectory diagnostics update
- add warning to readme
* Update planning/planning_validator/autoware_planning_validator/README.md ---------
-
feat(intersection_collision_checker): improve feature to reduce false positive occurrence (#10899)
- keep a map of already detected target lanelets
- fix on/off time buffers logic
- add debug marker to visualize colliding object
- use resampled trajectory instead of raw trajectory
- fix overlap index computation
- fix on/off time buffers logic for rear collision checker
- fix planning .pages file, fix format
- update readme
- ignore not moving pcd object
* handle case when object is very close to overlap point ---------
-
fix: a launch mistake (#10891) fix mistake
-
feat(planning_validator): improve intersection collision checker implementation (#10839)
- use parameter generator library
- add pointcloud latency compensation
- change msg field name
- add readme file
- add parameters dection to readme
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Name |
---|
libboost-dev |
Launch files
- launch/invalid_trajectory_publisher.launch.xml
-
- input/trajectory [default: /planning/scenario_planning/velocity_smoother/trajectory]
- output/trajectory [default: /planning/scenario_planning/velocity_smoother/trajectory]
- launch/planning_validator.launch.xml
-
- launch_latency_checker [default: true]
- launch_trajectory_checker [default: true]
- launch_intersection_collision_checker [default: true]
- launch_rear_collision_checker [default: true]
- launch_modules_list_end [default: ""]]
- planning_validator_launch_modules [default: []
- planning_validator_param_path [default: $(find-pkg-share autoware_planning_validator)/config/planning_validator.param.yaml]
- planning_validator_latency_checker_param_path
- planning_validator_trajectory_checker_param_path
- planning_validator_intersection_collision_checker_param_path
- planning_validator_rear_collision_checker_param_path
- input_trajectory [default: /planning/scenario_planning/velocity_smoother/trajectory]
- input_pointcloud [default: /perception/obstacle_segmentation/pointcloud]
- input_route_topic_name [default: /planning/mission_planning/route]
- input_vector_map_topic_name [default: /map/vector_map]
- output_trajectory [default: /planning/trajectory]
Messages
Services
Plugins
Recent questions tagged autoware_planning_validator at Robotics Stack Exchange
Package Summary
Tags | No category tags. |
Version | 0.47.0 |
License | Apache License 2.0 |
Build type | AMENT_CMAKE |
Use | RECOMMENDED |
Repository Summary
Description | |
Checkout URI | https://github.com/autowarefoundation/autoware_universe.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2025-08-16 |
Dev Status | UNKNOWN |
Released | UNRELEASED |
Tags | planner ros calibration self-driving-car autonomous-driving autonomous-vehicles ros2 3d-map autoware |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Takamasa Horibe
- Kosuke Takeuchi
- Kyoichi Sugahara
- Alqudah Mohammad
- Satoshi Ota
Authors
- Takamasa Horibe
- Yutaka Shimizu
Planning Validator
The autoware_planning_validator
node is the last module executed in the planning component, it responsible for checking the validity of the planning trajectory before it is published to control component. The status of the validation can be viewed in the /diagnostics
and /validation_status
topics. When an invalidity is detected, the autoware_planning_validator
will process the trajectory following the selected option: “0. publish the trajectory as it is”, “1. stop publishing the trajectory”, “2. publish the last validated trajectory”.
The autoware_planning_validator
node loads multiple plugins modules, each responsible for running specific validation checks on the planning trajectory:
-
Latency Checker: The
autoware_planning_validator_latency_checker
is responsible for checking the validity of planning trajectory age -
Trajectory Checker: The
autoware_planning_validator_trajectory_checker
is responsible for checking the validity of planning trajectory shape -
Intersection Collision Checker: The
autoware_planning_validator_intersection_collision_checker
is responsible for verifying planning trajectory does not result in collision at intersections -
Rear Collision Checker: The
autoware_planning_validator_rear_collision_checker
is responsible for verifying planning trajectory does not result in collision with rear vehicles
Inputs/Outputs
Inputs
The autoware_planning_validator
takes in the following inputs:
Name | Type | Description |
---|---|---|
~/input/kinematics |
nav_msgs/Odometry | ego pose and twist |
~/input/acceleration |
geometry_msgs/AccelWithCovarianceStamped | current acceleration of the ego vehicle |
~/input/trajectory |
autoware_planning_msgs/Trajectory | target trajectory to be validated in this node |
~/input/route |
autoware_planning_msgs/LaneletRoute | route information |
~/input/lanelet_map_bin |
autoware_map_msgs/LaneletMapBin | lanelet vector map information |
~/input/pointcloud |
sensor_msgs/PointCloud2 | obstacle pointcloud with ground removed |
Outputs
It outputs the following:
Name | Type | Description |
---|---|---|
~/output/trajectory |
autoware_planning_msgs/Trajectory | validated trajectory |
~/output/validation_status |
planning_validator/PlanningValidatorStatus | validator status to inform the reason why the trajectory is valid/invalid |
/diagnostics |
diagnostic_msgs/DiagnosticStatus | diagnostics to report errors |
Parameters
The following parameters can be set for the autoware_planning_validator
:
Name | Type | Description | Default value |
---|---|---|---|
default_handling_type |
int | set default handling type for when invalidity is detected. 0: publish invalid traj as it is, 1: publish last valid traj, 2: publish last valid traj with soft stop |
0 |
publish_diag |
bool | if true, diagnostics msg is published. | true |
diag_error_count_threshold |
int | Number of consecutive invalid trajectories to set the Diag to ERROR. (Fe.g, threshold = 1 means, even if the trajectory is invalid, the Diag will not be ERROR if the next trajectory is valid.) | 0 |
display_on_terminal |
bool | show error msg on terminal | true |
soft_stop_deceleration |
double | deceleration value to be used for soft stop action. [m/ss] | -1.0 |
soft_stop_jerk_lim |
double | jerk limit value to be used for soft stop action. [m/sss] | 0.3 |
Changelog for package autoware_planning_validator
0.47.0 (2025-08-11)
-
feat: change planning output topic name to /planning/trajectory (#11135)
- change planning output topic name to /planning/trajectory
* style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
fix(planning_validator): init validation status (#11119)
- fix(planning_validator): init validation status
* fix(control_validator): init validation status ---------
-
refactor(planning_validator): refactor planning validator configuration and error handling (#11081)
- refactor trajectory check error handling
- define set_diag_status function for each module locally
* update documentation ---------
-
chore: sync files (#11091) Co-authored-by: github-actions <<github-actions@github.com>> Co-authored-by: M. Fatih Cırıt <<mfc@autoware.org>> Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
fix(planning_validator): suppress unnecessary error messages (#11007)
-
perf(planning_validator): switch planning_validator back to event driven (#10979) make planning_validator node event driven on trajectory msg
-
feat(intersection_collision_checker): improve icc debug markers (#10967)
- add DebugData struct
- refactor and publish debug info and markers
- always publish lanelet debug markers
- refactor debug markers code
- remove unused functions
- pass string by reference
- set is_safe flag for rear_collision_checker debug data
- fix for cpp check
* add maintainer ---------
-
fix(planning_validator): fix conflict between trajectory shift and distance deviation checks (#10799)
- use global is_critical_error flag for trajectory diagnostics update
- add warning to readme
* Update planning/planning_validator/autoware_planning_validator/README.md ---------
-
feat(intersection_collision_checker): improve feature to reduce false positive occurrence (#10899)
- keep a map of already detected target lanelets
- fix on/off time buffers logic
- add debug marker to visualize colliding object
- use resampled trajectory instead of raw trajectory
- fix overlap index computation
- fix on/off time buffers logic for rear collision checker
- fix planning .pages file, fix format
- update readme
- ignore not moving pcd object
* handle case when object is very close to overlap point ---------
-
fix: a launch mistake (#10891) fix mistake
-
feat(planning_validator): improve intersection collision checker implementation (#10839)
- use parameter generator library
- add pointcloud latency compensation
- change msg field name
- add readme file
- add parameters dection to readme
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Name |
---|
libboost-dev |
Launch files
- launch/invalid_trajectory_publisher.launch.xml
-
- input/trajectory [default: /planning/scenario_planning/velocity_smoother/trajectory]
- output/trajectory [default: /planning/scenario_planning/velocity_smoother/trajectory]
- launch/planning_validator.launch.xml
-
- launch_latency_checker [default: true]
- launch_trajectory_checker [default: true]
- launch_intersection_collision_checker [default: true]
- launch_rear_collision_checker [default: true]
- launch_modules_list_end [default: ""]]
- planning_validator_launch_modules [default: []
- planning_validator_param_path [default: $(find-pkg-share autoware_planning_validator)/config/planning_validator.param.yaml]
- planning_validator_latency_checker_param_path
- planning_validator_trajectory_checker_param_path
- planning_validator_intersection_collision_checker_param_path
- planning_validator_rear_collision_checker_param_path
- input_trajectory [default: /planning/scenario_planning/velocity_smoother/trajectory]
- input_pointcloud [default: /perception/obstacle_segmentation/pointcloud]
- input_route_topic_name [default: /planning/mission_planning/route]
- input_vector_map_topic_name [default: /map/vector_map]
- output_trajectory [default: /planning/trajectory]
Messages
Services
Plugins
Recent questions tagged autoware_planning_validator at Robotics Stack Exchange
Package Summary
Tags | No category tags. |
Version | 0.47.0 |
License | Apache License 2.0 |
Build type | AMENT_CMAKE |
Use | RECOMMENDED |
Repository Summary
Description | |
Checkout URI | https://github.com/autowarefoundation/autoware_universe.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2025-08-16 |
Dev Status | UNKNOWN |
Released | UNRELEASED |
Tags | planner ros calibration self-driving-car autonomous-driving autonomous-vehicles ros2 3d-map autoware |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Takamasa Horibe
- Kosuke Takeuchi
- Kyoichi Sugahara
- Alqudah Mohammad
- Satoshi Ota
Authors
- Takamasa Horibe
- Yutaka Shimizu
Planning Validator
The autoware_planning_validator
node is the last module executed in the planning component, it responsible for checking the validity of the planning trajectory before it is published to control component. The status of the validation can be viewed in the /diagnostics
and /validation_status
topics. When an invalidity is detected, the autoware_planning_validator
will process the trajectory following the selected option: “0. publish the trajectory as it is”, “1. stop publishing the trajectory”, “2. publish the last validated trajectory”.
The autoware_planning_validator
node loads multiple plugins modules, each responsible for running specific validation checks on the planning trajectory:
-
Latency Checker: The
autoware_planning_validator_latency_checker
is responsible for checking the validity of planning trajectory age -
Trajectory Checker: The
autoware_planning_validator_trajectory_checker
is responsible for checking the validity of planning trajectory shape -
Intersection Collision Checker: The
autoware_planning_validator_intersection_collision_checker
is responsible for verifying planning trajectory does not result in collision at intersections -
Rear Collision Checker: The
autoware_planning_validator_rear_collision_checker
is responsible for verifying planning trajectory does not result in collision with rear vehicles
Inputs/Outputs
Inputs
The autoware_planning_validator
takes in the following inputs:
Name | Type | Description |
---|---|---|
~/input/kinematics |
nav_msgs/Odometry | ego pose and twist |
~/input/acceleration |
geometry_msgs/AccelWithCovarianceStamped | current acceleration of the ego vehicle |
~/input/trajectory |
autoware_planning_msgs/Trajectory | target trajectory to be validated in this node |
~/input/route |
autoware_planning_msgs/LaneletRoute | route information |
~/input/lanelet_map_bin |
autoware_map_msgs/LaneletMapBin | lanelet vector map information |
~/input/pointcloud |
sensor_msgs/PointCloud2 | obstacle pointcloud with ground removed |
Outputs
It outputs the following:
Name | Type | Description |
---|---|---|
~/output/trajectory |
autoware_planning_msgs/Trajectory | validated trajectory |
~/output/validation_status |
planning_validator/PlanningValidatorStatus | validator status to inform the reason why the trajectory is valid/invalid |
/diagnostics |
diagnostic_msgs/DiagnosticStatus | diagnostics to report errors |
Parameters
The following parameters can be set for the autoware_planning_validator
:
Name | Type | Description | Default value |
---|---|---|---|
default_handling_type |
int | set default handling type for when invalidity is detected. 0: publish invalid traj as it is, 1: publish last valid traj, 2: publish last valid traj with soft stop |
0 |
publish_diag |
bool | if true, diagnostics msg is published. | true |
diag_error_count_threshold |
int | Number of consecutive invalid trajectories to set the Diag to ERROR. (Fe.g, threshold = 1 means, even if the trajectory is invalid, the Diag will not be ERROR if the next trajectory is valid.) | 0 |
display_on_terminal |
bool | show error msg on terminal | true |
soft_stop_deceleration |
double | deceleration value to be used for soft stop action. [m/ss] | -1.0 |
soft_stop_jerk_lim |
double | jerk limit value to be used for soft stop action. [m/sss] | 0.3 |
Changelog for package autoware_planning_validator
0.47.0 (2025-08-11)
-
feat: change planning output topic name to /planning/trajectory (#11135)
- change planning output topic name to /planning/trajectory
* style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
fix(planning_validator): init validation status (#11119)
- fix(planning_validator): init validation status
* fix(control_validator): init validation status ---------
-
refactor(planning_validator): refactor planning validator configuration and error handling (#11081)
- refactor trajectory check error handling
- define set_diag_status function for each module locally
* update documentation ---------
-
chore: sync files (#11091) Co-authored-by: github-actions <<github-actions@github.com>> Co-authored-by: M. Fatih Cırıt <<mfc@autoware.org>> Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
fix(planning_validator): suppress unnecessary error messages (#11007)
-
perf(planning_validator): switch planning_validator back to event driven (#10979) make planning_validator node event driven on trajectory msg
-
feat(intersection_collision_checker): improve icc debug markers (#10967)
- add DebugData struct
- refactor and publish debug info and markers
- always publish lanelet debug markers
- refactor debug markers code
- remove unused functions
- pass string by reference
- set is_safe flag for rear_collision_checker debug data
- fix for cpp check
* add maintainer ---------
-
fix(planning_validator): fix conflict between trajectory shift and distance deviation checks (#10799)
- use global is_critical_error flag for trajectory diagnostics update
- add warning to readme
* Update planning/planning_validator/autoware_planning_validator/README.md ---------
-
feat(intersection_collision_checker): improve feature to reduce false positive occurrence (#10899)
- keep a map of already detected target lanelets
- fix on/off time buffers logic
- add debug marker to visualize colliding object
- use resampled trajectory instead of raw trajectory
- fix overlap index computation
- fix on/off time buffers logic for rear collision checker
- fix planning .pages file, fix format
- update readme
- ignore not moving pcd object
* handle case when object is very close to overlap point ---------
-
fix: a launch mistake (#10891) fix mistake
-
feat(planning_validator): improve intersection collision checker implementation (#10839)
- use parameter generator library
- add pointcloud latency compensation
- change msg field name
- add readme file
- add parameters dection to readme
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Name |
---|
libboost-dev |
Launch files
- launch/invalid_trajectory_publisher.launch.xml
-
- input/trajectory [default: /planning/scenario_planning/velocity_smoother/trajectory]
- output/trajectory [default: /planning/scenario_planning/velocity_smoother/trajectory]
- launch/planning_validator.launch.xml
-
- launch_latency_checker [default: true]
- launch_trajectory_checker [default: true]
- launch_intersection_collision_checker [default: true]
- launch_rear_collision_checker [default: true]
- launch_modules_list_end [default: ""]]
- planning_validator_launch_modules [default: []
- planning_validator_param_path [default: $(find-pkg-share autoware_planning_validator)/config/planning_validator.param.yaml]
- planning_validator_latency_checker_param_path
- planning_validator_trajectory_checker_param_path
- planning_validator_intersection_collision_checker_param_path
- planning_validator_rear_collision_checker_param_path
- input_trajectory [default: /planning/scenario_planning/velocity_smoother/trajectory]
- input_pointcloud [default: /perception/obstacle_segmentation/pointcloud]
- input_route_topic_name [default: /planning/mission_planning/route]
- input_vector_map_topic_name [default: /map/vector_map]
- output_trajectory [default: /planning/trajectory]
Messages
Services
Plugins
Recent questions tagged autoware_planning_validator at Robotics Stack Exchange
Package Summary
Tags | No category tags. |
Version | 0.47.0 |
License | Apache License 2.0 |
Build type | AMENT_CMAKE |
Use | RECOMMENDED |
Repository Summary
Description | |
Checkout URI | https://github.com/autowarefoundation/autoware_universe.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2025-08-16 |
Dev Status | UNKNOWN |
Released | UNRELEASED |
Tags | planner ros calibration self-driving-car autonomous-driving autonomous-vehicles ros2 3d-map autoware |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Takamasa Horibe
- Kosuke Takeuchi
- Kyoichi Sugahara
- Alqudah Mohammad
- Satoshi Ota
Authors
- Takamasa Horibe
- Yutaka Shimizu
Planning Validator
The autoware_planning_validator
node is the last module executed in the planning component, it responsible for checking the validity of the planning trajectory before it is published to control component. The status of the validation can be viewed in the /diagnostics
and /validation_status
topics. When an invalidity is detected, the autoware_planning_validator
will process the trajectory following the selected option: “0. publish the trajectory as it is”, “1. stop publishing the trajectory”, “2. publish the last validated trajectory”.
The autoware_planning_validator
node loads multiple plugins modules, each responsible for running specific validation checks on the planning trajectory:
-
Latency Checker: The
autoware_planning_validator_latency_checker
is responsible for checking the validity of planning trajectory age -
Trajectory Checker: The
autoware_planning_validator_trajectory_checker
is responsible for checking the validity of planning trajectory shape -
Intersection Collision Checker: The
autoware_planning_validator_intersection_collision_checker
is responsible for verifying planning trajectory does not result in collision at intersections -
Rear Collision Checker: The
autoware_planning_validator_rear_collision_checker
is responsible for verifying planning trajectory does not result in collision with rear vehicles
Inputs/Outputs
Inputs
The autoware_planning_validator
takes in the following inputs:
Name | Type | Description |
---|---|---|
~/input/kinematics |
nav_msgs/Odometry | ego pose and twist |
~/input/acceleration |
geometry_msgs/AccelWithCovarianceStamped | current acceleration of the ego vehicle |
~/input/trajectory |
autoware_planning_msgs/Trajectory | target trajectory to be validated in this node |
~/input/route |
autoware_planning_msgs/LaneletRoute | route information |
~/input/lanelet_map_bin |
autoware_map_msgs/LaneletMapBin | lanelet vector map information |
~/input/pointcloud |
sensor_msgs/PointCloud2 | obstacle pointcloud with ground removed |
Outputs
It outputs the following:
Name | Type | Description |
---|---|---|
~/output/trajectory |
autoware_planning_msgs/Trajectory | validated trajectory |
~/output/validation_status |
planning_validator/PlanningValidatorStatus | validator status to inform the reason why the trajectory is valid/invalid |
/diagnostics |
diagnostic_msgs/DiagnosticStatus | diagnostics to report errors |
Parameters
The following parameters can be set for the autoware_planning_validator
:
Name | Type | Description | Default value |
---|---|---|---|
default_handling_type |
int | set default handling type for when invalidity is detected. 0: publish invalid traj as it is, 1: publish last valid traj, 2: publish last valid traj with soft stop |
0 |
publish_diag |
bool | if true, diagnostics msg is published. | true |
diag_error_count_threshold |
int | Number of consecutive invalid trajectories to set the Diag to ERROR. (Fe.g, threshold = 1 means, even if the trajectory is invalid, the Diag will not be ERROR if the next trajectory is valid.) | 0 |
display_on_terminal |
bool | show error msg on terminal | true |
soft_stop_deceleration |
double | deceleration value to be used for soft stop action. [m/ss] | -1.0 |
soft_stop_jerk_lim |
double | jerk limit value to be used for soft stop action. [m/sss] | 0.3 |
Changelog for package autoware_planning_validator
0.47.0 (2025-08-11)
-
feat: change planning output topic name to /planning/trajectory (#11135)
- change planning output topic name to /planning/trajectory
* style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
fix(planning_validator): init validation status (#11119)
- fix(planning_validator): init validation status
* fix(control_validator): init validation status ---------
-
refactor(planning_validator): refactor planning validator configuration and error handling (#11081)
- refactor trajectory check error handling
- define set_diag_status function for each module locally
* update documentation ---------
-
chore: sync files (#11091) Co-authored-by: github-actions <<github-actions@github.com>> Co-authored-by: M. Fatih Cırıt <<mfc@autoware.org>> Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
fix(planning_validator): suppress unnecessary error messages (#11007)
-
perf(planning_validator): switch planning_validator back to event driven (#10979) make planning_validator node event driven on trajectory msg
-
feat(intersection_collision_checker): improve icc debug markers (#10967)
- add DebugData struct
- refactor and publish debug info and markers
- always publish lanelet debug markers
- refactor debug markers code
- remove unused functions
- pass string by reference
- set is_safe flag for rear_collision_checker debug data
- fix for cpp check
* add maintainer ---------
-
fix(planning_validator): fix conflict between trajectory shift and distance deviation checks (#10799)
- use global is_critical_error flag for trajectory diagnostics update
- add warning to readme
* Update planning/planning_validator/autoware_planning_validator/README.md ---------
-
feat(intersection_collision_checker): improve feature to reduce false positive occurrence (#10899)
- keep a map of already detected target lanelets
- fix on/off time buffers logic
- add debug marker to visualize colliding object
- use resampled trajectory instead of raw trajectory
- fix overlap index computation
- fix on/off time buffers logic for rear collision checker
- fix planning .pages file, fix format
- update readme
- ignore not moving pcd object
* handle case when object is very close to overlap point ---------
-
fix: a launch mistake (#10891) fix mistake
-
feat(planning_validator): improve intersection collision checker implementation (#10839)
- use parameter generator library
- add pointcloud latency compensation
- change msg field name
- add readme file
- add parameters dection to readme
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Name |
---|
libboost-dev |
Launch files
- launch/invalid_trajectory_publisher.launch.xml
-
- input/trajectory [default: /planning/scenario_planning/velocity_smoother/trajectory]
- output/trajectory [default: /planning/scenario_planning/velocity_smoother/trajectory]
- launch/planning_validator.launch.xml
-
- launch_latency_checker [default: true]
- launch_trajectory_checker [default: true]
- launch_intersection_collision_checker [default: true]
- launch_rear_collision_checker [default: true]
- launch_modules_list_end [default: ""]]
- planning_validator_launch_modules [default: []
- planning_validator_param_path [default: $(find-pkg-share autoware_planning_validator)/config/planning_validator.param.yaml]
- planning_validator_latency_checker_param_path
- planning_validator_trajectory_checker_param_path
- planning_validator_intersection_collision_checker_param_path
- planning_validator_rear_collision_checker_param_path
- input_trajectory [default: /planning/scenario_planning/velocity_smoother/trajectory]
- input_pointcloud [default: /perception/obstacle_segmentation/pointcloud]
- input_route_topic_name [default: /planning/mission_planning/route]
- input_vector_map_topic_name [default: /map/vector_map]
- output_trajectory [default: /planning/trajectory]
Messages
Services
Plugins
Recent questions tagged autoware_planning_validator at Robotics Stack Exchange
Package Summary
Tags | No category tags. |
Version | 0.47.0 |
License | Apache License 2.0 |
Build type | AMENT_CMAKE |
Use | RECOMMENDED |
Repository Summary
Description | |
Checkout URI | https://github.com/autowarefoundation/autoware_universe.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2025-08-16 |
Dev Status | UNKNOWN |
Released | UNRELEASED |
Tags | planner ros calibration self-driving-car autonomous-driving autonomous-vehicles ros2 3d-map autoware |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Takamasa Horibe
- Kosuke Takeuchi
- Kyoichi Sugahara
- Alqudah Mohammad
- Satoshi Ota
Authors
- Takamasa Horibe
- Yutaka Shimizu
Planning Validator
The autoware_planning_validator
node is the last module executed in the planning component, it responsible for checking the validity of the planning trajectory before it is published to control component. The status of the validation can be viewed in the /diagnostics
and /validation_status
topics. When an invalidity is detected, the autoware_planning_validator
will process the trajectory following the selected option: “0. publish the trajectory as it is”, “1. stop publishing the trajectory”, “2. publish the last validated trajectory”.
The autoware_planning_validator
node loads multiple plugins modules, each responsible for running specific validation checks on the planning trajectory:
-
Latency Checker: The
autoware_planning_validator_latency_checker
is responsible for checking the validity of planning trajectory age -
Trajectory Checker: The
autoware_planning_validator_trajectory_checker
is responsible for checking the validity of planning trajectory shape -
Intersection Collision Checker: The
autoware_planning_validator_intersection_collision_checker
is responsible for verifying planning trajectory does not result in collision at intersections -
Rear Collision Checker: The
autoware_planning_validator_rear_collision_checker
is responsible for verifying planning trajectory does not result in collision with rear vehicles
Inputs/Outputs
Inputs
The autoware_planning_validator
takes in the following inputs:
Name | Type | Description |
---|---|---|
~/input/kinematics |
nav_msgs/Odometry | ego pose and twist |
~/input/acceleration |
geometry_msgs/AccelWithCovarianceStamped | current acceleration of the ego vehicle |
~/input/trajectory |
autoware_planning_msgs/Trajectory | target trajectory to be validated in this node |
~/input/route |
autoware_planning_msgs/LaneletRoute | route information |
~/input/lanelet_map_bin |
autoware_map_msgs/LaneletMapBin | lanelet vector map information |
~/input/pointcloud |
sensor_msgs/PointCloud2 | obstacle pointcloud with ground removed |
Outputs
It outputs the following:
Name | Type | Description |
---|---|---|
~/output/trajectory |
autoware_planning_msgs/Trajectory | validated trajectory |
~/output/validation_status |
planning_validator/PlanningValidatorStatus | validator status to inform the reason why the trajectory is valid/invalid |
/diagnostics |
diagnostic_msgs/DiagnosticStatus | diagnostics to report errors |
Parameters
The following parameters can be set for the autoware_planning_validator
:
Name | Type | Description | Default value |
---|---|---|---|
default_handling_type |
int | set default handling type for when invalidity is detected. 0: publish invalid traj as it is, 1: publish last valid traj, 2: publish last valid traj with soft stop |
0 |
publish_diag |
bool | if true, diagnostics msg is published. | true |
diag_error_count_threshold |
int | Number of consecutive invalid trajectories to set the Diag to ERROR. (Fe.g, threshold = 1 means, even if the trajectory is invalid, the Diag will not be ERROR if the next trajectory is valid.) | 0 |
display_on_terminal |
bool | show error msg on terminal | true |
soft_stop_deceleration |
double | deceleration value to be used for soft stop action. [m/ss] | -1.0 |
soft_stop_jerk_lim |
double | jerk limit value to be used for soft stop action. [m/sss] | 0.3 |
Changelog for package autoware_planning_validator
0.47.0 (2025-08-11)
-
feat: change planning output topic name to /planning/trajectory (#11135)
- change planning output topic name to /planning/trajectory
* style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
fix(planning_validator): init validation status (#11119)
- fix(planning_validator): init validation status
* fix(control_validator): init validation status ---------
-
refactor(planning_validator): refactor planning validator configuration and error handling (#11081)
- refactor trajectory check error handling
- define set_diag_status function for each module locally
* update documentation ---------
-
chore: sync files (#11091) Co-authored-by: github-actions <<github-actions@github.com>> Co-authored-by: M. Fatih Cırıt <<mfc@autoware.org>> Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
fix(planning_validator): suppress unnecessary error messages (#11007)
-
perf(planning_validator): switch planning_validator back to event driven (#10979) make planning_validator node event driven on trajectory msg
-
feat(intersection_collision_checker): improve icc debug markers (#10967)
- add DebugData struct
- refactor and publish debug info and markers
- always publish lanelet debug markers
- refactor debug markers code
- remove unused functions
- pass string by reference
- set is_safe flag for rear_collision_checker debug data
- fix for cpp check
* add maintainer ---------
-
fix(planning_validator): fix conflict between trajectory shift and distance deviation checks (#10799)
- use global is_critical_error flag for trajectory diagnostics update
- add warning to readme
* Update planning/planning_validator/autoware_planning_validator/README.md ---------
-
feat(intersection_collision_checker): improve feature to reduce false positive occurrence (#10899)
- keep a map of already detected target lanelets
- fix on/off time buffers logic
- add debug marker to visualize colliding object
- use resampled trajectory instead of raw trajectory
- fix overlap index computation
- fix on/off time buffers logic for rear collision checker
- fix planning .pages file, fix format
- update readme
- ignore not moving pcd object
* handle case when object is very close to overlap point ---------
-
fix: a launch mistake (#10891) fix mistake
-
feat(planning_validator): improve intersection collision checker implementation (#10839)
- use parameter generator library
- add pointcloud latency compensation
- change msg field name
- add readme file
- add parameters dection to readme
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Name |
---|
libboost-dev |
Launch files
- launch/invalid_trajectory_publisher.launch.xml
-
- input/trajectory [default: /planning/scenario_planning/velocity_smoother/trajectory]
- output/trajectory [default: /planning/scenario_planning/velocity_smoother/trajectory]
- launch/planning_validator.launch.xml
-
- launch_latency_checker [default: true]
- launch_trajectory_checker [default: true]
- launch_intersection_collision_checker [default: true]
- launch_rear_collision_checker [default: true]
- launch_modules_list_end [default: ""]]
- planning_validator_launch_modules [default: []
- planning_validator_param_path [default: $(find-pkg-share autoware_planning_validator)/config/planning_validator.param.yaml]
- planning_validator_latency_checker_param_path
- planning_validator_trajectory_checker_param_path
- planning_validator_intersection_collision_checker_param_path
- planning_validator_rear_collision_checker_param_path
- input_trajectory [default: /planning/scenario_planning/velocity_smoother/trajectory]
- input_pointcloud [default: /perception/obstacle_segmentation/pointcloud]
- input_route_topic_name [default: /planning/mission_planning/route]
- input_vector_map_topic_name [default: /map/vector_map]
- output_trajectory [default: /planning/trajectory]
Messages
Services
Plugins
Recent questions tagged autoware_planning_validator at Robotics Stack Exchange
Package Summary
Tags | No category tags. |
Version | 0.47.0 |
License | Apache License 2.0 |
Build type | AMENT_CMAKE |
Use | RECOMMENDED |
Repository Summary
Description | |
Checkout URI | https://github.com/autowarefoundation/autoware_universe.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2025-08-16 |
Dev Status | UNKNOWN |
Released | UNRELEASED |
Tags | planner ros calibration self-driving-car autonomous-driving autonomous-vehicles ros2 3d-map autoware |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Takamasa Horibe
- Kosuke Takeuchi
- Kyoichi Sugahara
- Alqudah Mohammad
- Satoshi Ota
Authors
- Takamasa Horibe
- Yutaka Shimizu
Planning Validator
The autoware_planning_validator
node is the last module executed in the planning component, it responsible for checking the validity of the planning trajectory before it is published to control component. The status of the validation can be viewed in the /diagnostics
and /validation_status
topics. When an invalidity is detected, the autoware_planning_validator
will process the trajectory following the selected option: “0. publish the trajectory as it is”, “1. stop publishing the trajectory”, “2. publish the last validated trajectory”.
The autoware_planning_validator
node loads multiple plugins modules, each responsible for running specific validation checks on the planning trajectory:
-
Latency Checker: The
autoware_planning_validator_latency_checker
is responsible for checking the validity of planning trajectory age -
Trajectory Checker: The
autoware_planning_validator_trajectory_checker
is responsible for checking the validity of planning trajectory shape -
Intersection Collision Checker: The
autoware_planning_validator_intersection_collision_checker
is responsible for verifying planning trajectory does not result in collision at intersections -
Rear Collision Checker: The
autoware_planning_validator_rear_collision_checker
is responsible for verifying planning trajectory does not result in collision with rear vehicles
Inputs/Outputs
Inputs
The autoware_planning_validator
takes in the following inputs:
Name | Type | Description |
---|---|---|
~/input/kinematics |
nav_msgs/Odometry | ego pose and twist |
~/input/acceleration |
geometry_msgs/AccelWithCovarianceStamped | current acceleration of the ego vehicle |
~/input/trajectory |
autoware_planning_msgs/Trajectory | target trajectory to be validated in this node |
~/input/route |
autoware_planning_msgs/LaneletRoute | route information |
~/input/lanelet_map_bin |
autoware_map_msgs/LaneletMapBin | lanelet vector map information |
~/input/pointcloud |
sensor_msgs/PointCloud2 | obstacle pointcloud with ground removed |
Outputs
It outputs the following:
Name | Type | Description |
---|---|---|
~/output/trajectory |
autoware_planning_msgs/Trajectory | validated trajectory |
~/output/validation_status |
planning_validator/PlanningValidatorStatus | validator status to inform the reason why the trajectory is valid/invalid |
/diagnostics |
diagnostic_msgs/DiagnosticStatus | diagnostics to report errors |
Parameters
The following parameters can be set for the autoware_planning_validator
:
Name | Type | Description | Default value |
---|---|---|---|
default_handling_type |
int | set default handling type for when invalidity is detected. 0: publish invalid traj as it is, 1: publish last valid traj, 2: publish last valid traj with soft stop |
0 |
publish_diag |
bool | if true, diagnostics msg is published. | true |
diag_error_count_threshold |
int | Number of consecutive invalid trajectories to set the Diag to ERROR. (Fe.g, threshold = 1 means, even if the trajectory is invalid, the Diag will not be ERROR if the next trajectory is valid.) | 0 |
display_on_terminal |
bool | show error msg on terminal | true |
soft_stop_deceleration |
double | deceleration value to be used for soft stop action. [m/ss] | -1.0 |
soft_stop_jerk_lim |
double | jerk limit value to be used for soft stop action. [m/sss] | 0.3 |
Changelog for package autoware_planning_validator
0.47.0 (2025-08-11)
-
feat: change planning output topic name to /planning/trajectory (#11135)
- change planning output topic name to /planning/trajectory
* style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
fix(planning_validator): init validation status (#11119)
- fix(planning_validator): init validation status
* fix(control_validator): init validation status ---------
-
refactor(planning_validator): refactor planning validator configuration and error handling (#11081)
- refactor trajectory check error handling
- define set_diag_status function for each module locally
* update documentation ---------
-
chore: sync files (#11091) Co-authored-by: github-actions <<github-actions@github.com>> Co-authored-by: M. Fatih Cırıt <<mfc@autoware.org>> Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
fix(planning_validator): suppress unnecessary error messages (#11007)
-
perf(planning_validator): switch planning_validator back to event driven (#10979) make planning_validator node event driven on trajectory msg
-
feat(intersection_collision_checker): improve icc debug markers (#10967)
- add DebugData struct
- refactor and publish debug info and markers
- always publish lanelet debug markers
- refactor debug markers code
- remove unused functions
- pass string by reference
- set is_safe flag for rear_collision_checker debug data
- fix for cpp check
* add maintainer ---------
-
fix(planning_validator): fix conflict between trajectory shift and distance deviation checks (#10799)
- use global is_critical_error flag for trajectory diagnostics update
- add warning to readme
* Update planning/planning_validator/autoware_planning_validator/README.md ---------
-
feat(intersection_collision_checker): improve feature to reduce false positive occurrence (#10899)
- keep a map of already detected target lanelets
- fix on/off time buffers logic
- add debug marker to visualize colliding object
- use resampled trajectory instead of raw trajectory
- fix overlap index computation
- fix on/off time buffers logic for rear collision checker
- fix planning .pages file, fix format
- update readme
- ignore not moving pcd object
* handle case when object is very close to overlap point ---------
-
fix: a launch mistake (#10891) fix mistake
-
feat(planning_validator): improve intersection collision checker implementation (#10839)
- use parameter generator library
- add pointcloud latency compensation
- change msg field name
- add readme file
- add parameters dection to readme
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Name |
---|
libboost-dev |
Launch files
- launch/invalid_trajectory_publisher.launch.xml
-
- input/trajectory [default: /planning/scenario_planning/velocity_smoother/trajectory]
- output/trajectory [default: /planning/scenario_planning/velocity_smoother/trajectory]
- launch/planning_validator.launch.xml
-
- launch_latency_checker [default: true]
- launch_trajectory_checker [default: true]
- launch_intersection_collision_checker [default: true]
- launch_rear_collision_checker [default: true]
- launch_modules_list_end [default: ""]]
- planning_validator_launch_modules [default: []
- planning_validator_param_path [default: $(find-pkg-share autoware_planning_validator)/config/planning_validator.param.yaml]
- planning_validator_latency_checker_param_path
- planning_validator_trajectory_checker_param_path
- planning_validator_intersection_collision_checker_param_path
- planning_validator_rear_collision_checker_param_path
- input_trajectory [default: /planning/scenario_planning/velocity_smoother/trajectory]
- input_pointcloud [default: /perception/obstacle_segmentation/pointcloud]
- input_route_topic_name [default: /planning/mission_planning/route]
- input_vector_map_topic_name [default: /map/vector_map]
- output_trajectory [default: /planning/trajectory]