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
- Berkay Karaman
Authors
- Berkay Karaman
Reaction Analyzer
Description
The main purpose of the reaction analyzer package is to measure the reaction times of various nodes within a ROS-based
autonomous driving simulation environment by subscribing to pre-determined topics. This tool is particularly useful for
evaluating the performance of perception, planning, and control pipelines in response to dynamic changes in the
environment, such as sudden obstacles. To be able to measure both control outputs and perception outputs, it was
necessary to divide the node into two running_mode: planning_control
and perception_planning
.
Planning Control Mode
In this mode, the reaction analyzer creates a dummy publisher for the PredictedObjects and PointCloud2 topics. In the
beginning of the test, it publishes the initial position of the ego vehicle and the goal position to set the test
environment. Then, it spawns a sudden obstacle in front of the ego vehicle. After the obstacle is spawned, it starts to
search reacted messages of the planning and control nodes in the pre-determined topics. When all the topics are reacted,
it calculates the reaction time of the nodes and statistics by comparing reacted_times
of each of the nodes
with spawn_cmd_time
, and it creates a csv file to store the results.
Perception Planning Mode
In this mode, the reaction analyzer reads the rosbag files which are recorded from AWSIM, and it creates a topic
publisher for each topic inside the rosbag to replay the rosbag. It reads two rosbag files: path_bag_without_object
and path_bag_with_object
. Firstly, it replays the path_bag_without_object
to set the initial position of the ego
vehicle and the goal position. After spawn_time_after_init
seconds , it replays the path_bag_with_object
to spawn a
sudden obstacle in front of the ego vehicle. After the obstacle is spawned, it starts to search the reacted messages of
the perception and planning nodes in the pre-determined topics. When all the topics are reacted, it calculates the
reaction time of the nodes and statistics by comparing reacted_times
of each of the nodes with spawn_cmd_time
, and
it creates a csv file to store the results.
Point Cloud Publisher Type
To get better analyze for Perception & Sensing pipeline, the reaction analyzer can publish the point cloud messages in 3
different ways: async_header_sync_publish
, sync_header_sync_publish
or async_publish
. (T
is the period of the
lidar’s output)
-
async_header_sync_publish
: It publishes the point cloud messages synchronously with asynchronous header times. It means that each of the lidar’s output will be published at the same time, but the headers of the point cloud messages includes different timestamps because of the phase difference. -
sync_header_sync_publish
: It publishes the point cloud messages synchronously with synchronous header times. It means that each of the lidar’s output will be published at the same time, and the headers of the point cloud messages includes the same timestamps. -
async_publish
: It publishes the point cloud messages asynchronously. It means that each of the lidar’s output will be published at different times.
Usage
The common parameters you need to define for both running modes are output_file_path
, test_iteration
,
and reaction_chain
list. output_file_path
is the output file path is the path where the results and statistics
will be stored. test_iteration
defines how many tests will be performed. The reaction_chain
list is the list of the
pre-defined topics you want to measure their reaction times.
IMPORTANT: Ensure the reaction_chain
list is correctly defined:
- For
perception_planning
mode, do not defineControl
nodes. - For
planning_control
mode, do not definePerception
nodes.
Prepared Test Environment
- Download the demonstration test map from the
link here. After
downloading,
extract the zip file and use its path as
[MAP_PATH]
in the following commands.
Planning Control Mode
- You need to define only Planning and Control nodes in the
reaction_chain
list. With the default parameters, you can start to test with the following command:
ros2 launch reaction_analyzer reaction_analyzer.launch.xml running_mode:=planning_control vehicle_model:=sample_vehicle sensor_model:=sample_sensor_kit map_path:=[MAP_PATH]
After the command, the simple_planning_simulator
and the reaction_analyzer
will be launched. It will automatically
start to test. After the test is completed, the results will be stored in the output_file_path
you defined.
Perception Planning Mode
- Download the rosbag files from the Google Drive link here.
- Extract the zip file and set the path of the
.db3
files to parameterspath_bag_without_object
andpath_bag_with_object
. - You can start to test with the following command:
ros2 launch reaction_analyzer reaction_analyzer.launch.xml running_mode:=perception_planning vehicle_model:=sample_vehicle sensor_model:=awsim_labs_sensor_kit map_path:=[MAP_PATH]
- On the first run of the tool in perception_planning mode, initialization might take longer than expected. Please allow some time for the process to complete.
After the command, the e2e_simulator
and the reaction_analyzer
will be launched. It will automatically start
to test. After the test is completed, the results will be stored in the output_file_path
you defined.
Prepared Test Environment
Scene without object:
File truncated at 100 lines see the full file
Changelog for package reaction_analyzer
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>
-
style(pre-commit): update to clang-format-20 (#11088) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
style(pre-commit): autofix (#10982) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
Contributors: Mete Fatih Cırıt, Ryohsuke Mitsudome, Yukihiro Saito
0.46.0 (2025-06-20)
0.45.0 (2025-05-22)
0.44.2 (2025-06-10)
0.44.1 (2025-05-01)
0.44.0 (2025-04-18)
-
Merge remote-tracking branch 'origin/main' into humble
-
fix: add missing exec_depend (#10404)
- fix missing exec depend
- remove fixed depend
* remove the removed dependency ---------
-
Contributors: Ryohsuke Mitsudome, Takagi, Isamu
0.43.0 (2025-03-21)
- Merge remote-tracking branch 'origin/main' into chore/bump-version-0.43
- chore: rename from [autoware.universe]{.title-ref} to [autoware_universe]{.title-ref} (#10306)
- Contributors: Hayato Mizushima, Yutaka Kondo
0.42.0 (2025-03-03)
- Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base
- feat(autoware_utils): replace autoware_universe_utils with autoware_utils (#10191)
- fix: add missing includes to autoware_universe_utils (#10091)
- Contributors: Fumiya Watanabe, Ryohsuke Mitsudome, 心刚
0.41.2 (2025-02-19)
- chore: bump version to 0.41.1 (#10088)
- Contributors: Ryohsuke Mitsudome
0.41.1 (2025-02-10)
0.41.0 (2025-01-29)
0.40.0 (2024-12-12)
-
Merge branch 'main' into release-0.40.0
-
Revert "chore(package.xml): bump version to 0.39.0 (#9587)" This reverts commit c9f0f2688c57b0f657f5c1f28f036a970682e7f5.
-
fix: fix ticket links in CHANGELOG.rst (#9588)
-
chore(package.xml): bump version to 0.39.0 (#9587)
- chore(package.xml): bump version to 0.39.0
- fix: fix ticket links in CHANGELOG.rst
* fix: remove unnecessary diff ---------Co-authored-by: Yutaka Kondo <<yutaka.kondo@youtalk.jp>>
-
fix: fix ticket links in CHANGELOG.rst (#9588)
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Name |
---|
eigen |
libpcl-all-dev |
Dependant Packages
Launch files
- launch/reaction_analyzer.launch.xml
-
- reaction_analyzer_param_path [default: $(find-pkg-share reaction_analyzer)/param/reaction_analyzer.param.yaml]
- launch_simulator_perception_modules [default: false]
- laserscan_based_occupancy_grid_map_param_path [default: $(find-pkg-share autoware_launch)/config/perception/occupancy_grid_map/laserscan_based_occupancy_grid_map.param.yaml]
- occupancy_grid_map_updater [default: binary_bayes_filter]
- occupancy_grid_map_updater_param_path [default: $(find-pkg-share autoware_launch)/config/perception/occupancy_grid_map/$(var occupancy_grid_map_updater)_updater.param.yaml]
- running_mode [default: planning_control]
- map_path
- vehicle_model [default: sample_vehicle]
- sensor_model [default: sample_sensor_kit]
Messages
Services
Plugins
Recent questions tagged reaction_analyzer 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
- Berkay Karaman
Authors
- Berkay Karaman
Reaction Analyzer
Description
The main purpose of the reaction analyzer package is to measure the reaction times of various nodes within a ROS-based
autonomous driving simulation environment by subscribing to pre-determined topics. This tool is particularly useful for
evaluating the performance of perception, planning, and control pipelines in response to dynamic changes in the
environment, such as sudden obstacles. To be able to measure both control outputs and perception outputs, it was
necessary to divide the node into two running_mode: planning_control
and perception_planning
.
Planning Control Mode
In this mode, the reaction analyzer creates a dummy publisher for the PredictedObjects and PointCloud2 topics. In the
beginning of the test, it publishes the initial position of the ego vehicle and the goal position to set the test
environment. Then, it spawns a sudden obstacle in front of the ego vehicle. After the obstacle is spawned, it starts to
search reacted messages of the planning and control nodes in the pre-determined topics. When all the topics are reacted,
it calculates the reaction time of the nodes and statistics by comparing reacted_times
of each of the nodes
with spawn_cmd_time
, and it creates a csv file to store the results.
Perception Planning Mode
In this mode, the reaction analyzer reads the rosbag files which are recorded from AWSIM, and it creates a topic
publisher for each topic inside the rosbag to replay the rosbag. It reads two rosbag files: path_bag_without_object
and path_bag_with_object
. Firstly, it replays the path_bag_without_object
to set the initial position of the ego
vehicle and the goal position. After spawn_time_after_init
seconds , it replays the path_bag_with_object
to spawn a
sudden obstacle in front of the ego vehicle. After the obstacle is spawned, it starts to search the reacted messages of
the perception and planning nodes in the pre-determined topics. When all the topics are reacted, it calculates the
reaction time of the nodes and statistics by comparing reacted_times
of each of the nodes with spawn_cmd_time
, and
it creates a csv file to store the results.
Point Cloud Publisher Type
To get better analyze for Perception & Sensing pipeline, the reaction analyzer can publish the point cloud messages in 3
different ways: async_header_sync_publish
, sync_header_sync_publish
or async_publish
. (T
is the period of the
lidar’s output)
-
async_header_sync_publish
: It publishes the point cloud messages synchronously with asynchronous header times. It means that each of the lidar’s output will be published at the same time, but the headers of the point cloud messages includes different timestamps because of the phase difference. -
sync_header_sync_publish
: It publishes the point cloud messages synchronously with synchronous header times. It means that each of the lidar’s output will be published at the same time, and the headers of the point cloud messages includes the same timestamps. -
async_publish
: It publishes the point cloud messages asynchronously. It means that each of the lidar’s output will be published at different times.
Usage
The common parameters you need to define for both running modes are output_file_path
, test_iteration
,
and reaction_chain
list. output_file_path
is the output file path is the path where the results and statistics
will be stored. test_iteration
defines how many tests will be performed. The reaction_chain
list is the list of the
pre-defined topics you want to measure their reaction times.
IMPORTANT: Ensure the reaction_chain
list is correctly defined:
- For
perception_planning
mode, do not defineControl
nodes. - For
planning_control
mode, do not definePerception
nodes.
Prepared Test Environment
- Download the demonstration test map from the
link here. After
downloading,
extract the zip file and use its path as
[MAP_PATH]
in the following commands.
Planning Control Mode
- You need to define only Planning and Control nodes in the
reaction_chain
list. With the default parameters, you can start to test with the following command:
ros2 launch reaction_analyzer reaction_analyzer.launch.xml running_mode:=planning_control vehicle_model:=sample_vehicle sensor_model:=sample_sensor_kit map_path:=[MAP_PATH]
After the command, the simple_planning_simulator
and the reaction_analyzer
will be launched. It will automatically
start to test. After the test is completed, the results will be stored in the output_file_path
you defined.
Perception Planning Mode
- Download the rosbag files from the Google Drive link here.
- Extract the zip file and set the path of the
.db3
files to parameterspath_bag_without_object
andpath_bag_with_object
. - You can start to test with the following command:
ros2 launch reaction_analyzer reaction_analyzer.launch.xml running_mode:=perception_planning vehicle_model:=sample_vehicle sensor_model:=awsim_labs_sensor_kit map_path:=[MAP_PATH]
- On the first run of the tool in perception_planning mode, initialization might take longer than expected. Please allow some time for the process to complete.
After the command, the e2e_simulator
and the reaction_analyzer
will be launched. It will automatically start
to test. After the test is completed, the results will be stored in the output_file_path
you defined.
Prepared Test Environment
Scene without object:
File truncated at 100 lines see the full file
Changelog for package reaction_analyzer
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>
-
style(pre-commit): update to clang-format-20 (#11088) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
style(pre-commit): autofix (#10982) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
Contributors: Mete Fatih Cırıt, Ryohsuke Mitsudome, Yukihiro Saito
0.46.0 (2025-06-20)
0.45.0 (2025-05-22)
0.44.2 (2025-06-10)
0.44.1 (2025-05-01)
0.44.0 (2025-04-18)
-
Merge remote-tracking branch 'origin/main' into humble
-
fix: add missing exec_depend (#10404)
- fix missing exec depend
- remove fixed depend
* remove the removed dependency ---------
-
Contributors: Ryohsuke Mitsudome, Takagi, Isamu
0.43.0 (2025-03-21)
- Merge remote-tracking branch 'origin/main' into chore/bump-version-0.43
- chore: rename from [autoware.universe]{.title-ref} to [autoware_universe]{.title-ref} (#10306)
- Contributors: Hayato Mizushima, Yutaka Kondo
0.42.0 (2025-03-03)
- Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base
- feat(autoware_utils): replace autoware_universe_utils with autoware_utils (#10191)
- fix: add missing includes to autoware_universe_utils (#10091)
- Contributors: Fumiya Watanabe, Ryohsuke Mitsudome, 心刚
0.41.2 (2025-02-19)
- chore: bump version to 0.41.1 (#10088)
- Contributors: Ryohsuke Mitsudome
0.41.1 (2025-02-10)
0.41.0 (2025-01-29)
0.40.0 (2024-12-12)
-
Merge branch 'main' into release-0.40.0
-
Revert "chore(package.xml): bump version to 0.39.0 (#9587)" This reverts commit c9f0f2688c57b0f657f5c1f28f036a970682e7f5.
-
fix: fix ticket links in CHANGELOG.rst (#9588)
-
chore(package.xml): bump version to 0.39.0 (#9587)
- chore(package.xml): bump version to 0.39.0
- fix: fix ticket links in CHANGELOG.rst
* fix: remove unnecessary diff ---------Co-authored-by: Yutaka Kondo <<yutaka.kondo@youtalk.jp>>
-
fix: fix ticket links in CHANGELOG.rst (#9588)
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Name |
---|
eigen |
libpcl-all-dev |
Dependant Packages
Launch files
- launch/reaction_analyzer.launch.xml
-
- reaction_analyzer_param_path [default: $(find-pkg-share reaction_analyzer)/param/reaction_analyzer.param.yaml]
- launch_simulator_perception_modules [default: false]
- laserscan_based_occupancy_grid_map_param_path [default: $(find-pkg-share autoware_launch)/config/perception/occupancy_grid_map/laserscan_based_occupancy_grid_map.param.yaml]
- occupancy_grid_map_updater [default: binary_bayes_filter]
- occupancy_grid_map_updater_param_path [default: $(find-pkg-share autoware_launch)/config/perception/occupancy_grid_map/$(var occupancy_grid_map_updater)_updater.param.yaml]
- running_mode [default: planning_control]
- map_path
- vehicle_model [default: sample_vehicle]
- sensor_model [default: sample_sensor_kit]
Messages
Services
Plugins
Recent questions tagged reaction_analyzer 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
- Berkay Karaman
Authors
- Berkay Karaman
Reaction Analyzer
Description
The main purpose of the reaction analyzer package is to measure the reaction times of various nodes within a ROS-based
autonomous driving simulation environment by subscribing to pre-determined topics. This tool is particularly useful for
evaluating the performance of perception, planning, and control pipelines in response to dynamic changes in the
environment, such as sudden obstacles. To be able to measure both control outputs and perception outputs, it was
necessary to divide the node into two running_mode: planning_control
and perception_planning
.
Planning Control Mode
In this mode, the reaction analyzer creates a dummy publisher for the PredictedObjects and PointCloud2 topics. In the
beginning of the test, it publishes the initial position of the ego vehicle and the goal position to set the test
environment. Then, it spawns a sudden obstacle in front of the ego vehicle. After the obstacle is spawned, it starts to
search reacted messages of the planning and control nodes in the pre-determined topics. When all the topics are reacted,
it calculates the reaction time of the nodes and statistics by comparing reacted_times
of each of the nodes
with spawn_cmd_time
, and it creates a csv file to store the results.
Perception Planning Mode
In this mode, the reaction analyzer reads the rosbag files which are recorded from AWSIM, and it creates a topic
publisher for each topic inside the rosbag to replay the rosbag. It reads two rosbag files: path_bag_without_object
and path_bag_with_object
. Firstly, it replays the path_bag_without_object
to set the initial position of the ego
vehicle and the goal position. After spawn_time_after_init
seconds , it replays the path_bag_with_object
to spawn a
sudden obstacle in front of the ego vehicle. After the obstacle is spawned, it starts to search the reacted messages of
the perception and planning nodes in the pre-determined topics. When all the topics are reacted, it calculates the
reaction time of the nodes and statistics by comparing reacted_times
of each of the nodes with spawn_cmd_time
, and
it creates a csv file to store the results.
Point Cloud Publisher Type
To get better analyze for Perception & Sensing pipeline, the reaction analyzer can publish the point cloud messages in 3
different ways: async_header_sync_publish
, sync_header_sync_publish
or async_publish
. (T
is the period of the
lidar’s output)
-
async_header_sync_publish
: It publishes the point cloud messages synchronously with asynchronous header times. It means that each of the lidar’s output will be published at the same time, but the headers of the point cloud messages includes different timestamps because of the phase difference. -
sync_header_sync_publish
: It publishes the point cloud messages synchronously with synchronous header times. It means that each of the lidar’s output will be published at the same time, and the headers of the point cloud messages includes the same timestamps. -
async_publish
: It publishes the point cloud messages asynchronously. It means that each of the lidar’s output will be published at different times.
Usage
The common parameters you need to define for both running modes are output_file_path
, test_iteration
,
and reaction_chain
list. output_file_path
is the output file path is the path where the results and statistics
will be stored. test_iteration
defines how many tests will be performed. The reaction_chain
list is the list of the
pre-defined topics you want to measure their reaction times.
IMPORTANT: Ensure the reaction_chain
list is correctly defined:
- For
perception_planning
mode, do not defineControl
nodes. - For
planning_control
mode, do not definePerception
nodes.
Prepared Test Environment
- Download the demonstration test map from the
link here. After
downloading,
extract the zip file and use its path as
[MAP_PATH]
in the following commands.
Planning Control Mode
- You need to define only Planning and Control nodes in the
reaction_chain
list. With the default parameters, you can start to test with the following command:
ros2 launch reaction_analyzer reaction_analyzer.launch.xml running_mode:=planning_control vehicle_model:=sample_vehicle sensor_model:=sample_sensor_kit map_path:=[MAP_PATH]
After the command, the simple_planning_simulator
and the reaction_analyzer
will be launched. It will automatically
start to test. After the test is completed, the results will be stored in the output_file_path
you defined.
Perception Planning Mode
- Download the rosbag files from the Google Drive link here.
- Extract the zip file and set the path of the
.db3
files to parameterspath_bag_without_object
andpath_bag_with_object
. - You can start to test with the following command:
ros2 launch reaction_analyzer reaction_analyzer.launch.xml running_mode:=perception_planning vehicle_model:=sample_vehicle sensor_model:=awsim_labs_sensor_kit map_path:=[MAP_PATH]
- On the first run of the tool in perception_planning mode, initialization might take longer than expected. Please allow some time for the process to complete.
After the command, the e2e_simulator
and the reaction_analyzer
will be launched. It will automatically start
to test. After the test is completed, the results will be stored in the output_file_path
you defined.
Prepared Test Environment
Scene without object:
File truncated at 100 lines see the full file
Changelog for package reaction_analyzer
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>
-
style(pre-commit): update to clang-format-20 (#11088) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
style(pre-commit): autofix (#10982) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
Contributors: Mete Fatih Cırıt, Ryohsuke Mitsudome, Yukihiro Saito
0.46.0 (2025-06-20)
0.45.0 (2025-05-22)
0.44.2 (2025-06-10)
0.44.1 (2025-05-01)
0.44.0 (2025-04-18)
-
Merge remote-tracking branch 'origin/main' into humble
-
fix: add missing exec_depend (#10404)
- fix missing exec depend
- remove fixed depend
* remove the removed dependency ---------
-
Contributors: Ryohsuke Mitsudome, Takagi, Isamu
0.43.0 (2025-03-21)
- Merge remote-tracking branch 'origin/main' into chore/bump-version-0.43
- chore: rename from [autoware.universe]{.title-ref} to [autoware_universe]{.title-ref} (#10306)
- Contributors: Hayato Mizushima, Yutaka Kondo
0.42.0 (2025-03-03)
- Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base
- feat(autoware_utils): replace autoware_universe_utils with autoware_utils (#10191)
- fix: add missing includes to autoware_universe_utils (#10091)
- Contributors: Fumiya Watanabe, Ryohsuke Mitsudome, 心刚
0.41.2 (2025-02-19)
- chore: bump version to 0.41.1 (#10088)
- Contributors: Ryohsuke Mitsudome
0.41.1 (2025-02-10)
0.41.0 (2025-01-29)
0.40.0 (2024-12-12)
-
Merge branch 'main' into release-0.40.0
-
Revert "chore(package.xml): bump version to 0.39.0 (#9587)" This reverts commit c9f0f2688c57b0f657f5c1f28f036a970682e7f5.
-
fix: fix ticket links in CHANGELOG.rst (#9588)
-
chore(package.xml): bump version to 0.39.0 (#9587)
- chore(package.xml): bump version to 0.39.0
- fix: fix ticket links in CHANGELOG.rst
* fix: remove unnecessary diff ---------Co-authored-by: Yutaka Kondo <<yutaka.kondo@youtalk.jp>>
-
fix: fix ticket links in CHANGELOG.rst (#9588)
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Name |
---|
eigen |
libpcl-all-dev |
Dependant Packages
Launch files
- launch/reaction_analyzer.launch.xml
-
- reaction_analyzer_param_path [default: $(find-pkg-share reaction_analyzer)/param/reaction_analyzer.param.yaml]
- launch_simulator_perception_modules [default: false]
- laserscan_based_occupancy_grid_map_param_path [default: $(find-pkg-share autoware_launch)/config/perception/occupancy_grid_map/laserscan_based_occupancy_grid_map.param.yaml]
- occupancy_grid_map_updater [default: binary_bayes_filter]
- occupancy_grid_map_updater_param_path [default: $(find-pkg-share autoware_launch)/config/perception/occupancy_grid_map/$(var occupancy_grid_map_updater)_updater.param.yaml]
- running_mode [default: planning_control]
- map_path
- vehicle_model [default: sample_vehicle]
- sensor_model [default: sample_sensor_kit]
Messages
Services
Plugins
Recent questions tagged reaction_analyzer 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
- Berkay Karaman
Authors
- Berkay Karaman
Reaction Analyzer
Description
The main purpose of the reaction analyzer package is to measure the reaction times of various nodes within a ROS-based
autonomous driving simulation environment by subscribing to pre-determined topics. This tool is particularly useful for
evaluating the performance of perception, planning, and control pipelines in response to dynamic changes in the
environment, such as sudden obstacles. To be able to measure both control outputs and perception outputs, it was
necessary to divide the node into two running_mode: planning_control
and perception_planning
.
Planning Control Mode
In this mode, the reaction analyzer creates a dummy publisher for the PredictedObjects and PointCloud2 topics. In the
beginning of the test, it publishes the initial position of the ego vehicle and the goal position to set the test
environment. Then, it spawns a sudden obstacle in front of the ego vehicle. After the obstacle is spawned, it starts to
search reacted messages of the planning and control nodes in the pre-determined topics. When all the topics are reacted,
it calculates the reaction time of the nodes and statistics by comparing reacted_times
of each of the nodes
with spawn_cmd_time
, and it creates a csv file to store the results.
Perception Planning Mode
In this mode, the reaction analyzer reads the rosbag files which are recorded from AWSIM, and it creates a topic
publisher for each topic inside the rosbag to replay the rosbag. It reads two rosbag files: path_bag_without_object
and path_bag_with_object
. Firstly, it replays the path_bag_without_object
to set the initial position of the ego
vehicle and the goal position. After spawn_time_after_init
seconds , it replays the path_bag_with_object
to spawn a
sudden obstacle in front of the ego vehicle. After the obstacle is spawned, it starts to search the reacted messages of
the perception and planning nodes in the pre-determined topics. When all the topics are reacted, it calculates the
reaction time of the nodes and statistics by comparing reacted_times
of each of the nodes with spawn_cmd_time
, and
it creates a csv file to store the results.
Point Cloud Publisher Type
To get better analyze for Perception & Sensing pipeline, the reaction analyzer can publish the point cloud messages in 3
different ways: async_header_sync_publish
, sync_header_sync_publish
or async_publish
. (T
is the period of the
lidar’s output)
-
async_header_sync_publish
: It publishes the point cloud messages synchronously with asynchronous header times. It means that each of the lidar’s output will be published at the same time, but the headers of the point cloud messages includes different timestamps because of the phase difference. -
sync_header_sync_publish
: It publishes the point cloud messages synchronously with synchronous header times. It means that each of the lidar’s output will be published at the same time, and the headers of the point cloud messages includes the same timestamps. -
async_publish
: It publishes the point cloud messages asynchronously. It means that each of the lidar’s output will be published at different times.
Usage
The common parameters you need to define for both running modes are output_file_path
, test_iteration
,
and reaction_chain
list. output_file_path
is the output file path is the path where the results and statistics
will be stored. test_iteration
defines how many tests will be performed. The reaction_chain
list is the list of the
pre-defined topics you want to measure their reaction times.
IMPORTANT: Ensure the reaction_chain
list is correctly defined:
- For
perception_planning
mode, do not defineControl
nodes. - For
planning_control
mode, do not definePerception
nodes.
Prepared Test Environment
- Download the demonstration test map from the
link here. After
downloading,
extract the zip file and use its path as
[MAP_PATH]
in the following commands.
Planning Control Mode
- You need to define only Planning and Control nodes in the
reaction_chain
list. With the default parameters, you can start to test with the following command:
ros2 launch reaction_analyzer reaction_analyzer.launch.xml running_mode:=planning_control vehicle_model:=sample_vehicle sensor_model:=sample_sensor_kit map_path:=[MAP_PATH]
After the command, the simple_planning_simulator
and the reaction_analyzer
will be launched. It will automatically
start to test. After the test is completed, the results will be stored in the output_file_path
you defined.
Perception Planning Mode
- Download the rosbag files from the Google Drive link here.
- Extract the zip file and set the path of the
.db3
files to parameterspath_bag_without_object
andpath_bag_with_object
. - You can start to test with the following command:
ros2 launch reaction_analyzer reaction_analyzer.launch.xml running_mode:=perception_planning vehicle_model:=sample_vehicle sensor_model:=awsim_labs_sensor_kit map_path:=[MAP_PATH]
- On the first run of the tool in perception_planning mode, initialization might take longer than expected. Please allow some time for the process to complete.
After the command, the e2e_simulator
and the reaction_analyzer
will be launched. It will automatically start
to test. After the test is completed, the results will be stored in the output_file_path
you defined.
Prepared Test Environment
Scene without object:
File truncated at 100 lines see the full file
Changelog for package reaction_analyzer
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>
-
style(pre-commit): update to clang-format-20 (#11088) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
style(pre-commit): autofix (#10982) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
Contributors: Mete Fatih Cırıt, Ryohsuke Mitsudome, Yukihiro Saito
0.46.0 (2025-06-20)
0.45.0 (2025-05-22)
0.44.2 (2025-06-10)
0.44.1 (2025-05-01)
0.44.0 (2025-04-18)
-
Merge remote-tracking branch 'origin/main' into humble
-
fix: add missing exec_depend (#10404)
- fix missing exec depend
- remove fixed depend
* remove the removed dependency ---------
-
Contributors: Ryohsuke Mitsudome, Takagi, Isamu
0.43.0 (2025-03-21)
- Merge remote-tracking branch 'origin/main' into chore/bump-version-0.43
- chore: rename from [autoware.universe]{.title-ref} to [autoware_universe]{.title-ref} (#10306)
- Contributors: Hayato Mizushima, Yutaka Kondo
0.42.0 (2025-03-03)
- Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base
- feat(autoware_utils): replace autoware_universe_utils with autoware_utils (#10191)
- fix: add missing includes to autoware_universe_utils (#10091)
- Contributors: Fumiya Watanabe, Ryohsuke Mitsudome, 心刚
0.41.2 (2025-02-19)
- chore: bump version to 0.41.1 (#10088)
- Contributors: Ryohsuke Mitsudome
0.41.1 (2025-02-10)
0.41.0 (2025-01-29)
0.40.0 (2024-12-12)
-
Merge branch 'main' into release-0.40.0
-
Revert "chore(package.xml): bump version to 0.39.0 (#9587)" This reverts commit c9f0f2688c57b0f657f5c1f28f036a970682e7f5.
-
fix: fix ticket links in CHANGELOG.rst (#9588)
-
chore(package.xml): bump version to 0.39.0 (#9587)
- chore(package.xml): bump version to 0.39.0
- fix: fix ticket links in CHANGELOG.rst
* fix: remove unnecessary diff ---------Co-authored-by: Yutaka Kondo <<yutaka.kondo@youtalk.jp>>
-
fix: fix ticket links in CHANGELOG.rst (#9588)
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Name |
---|
eigen |
libpcl-all-dev |
Dependant Packages
Launch files
- launch/reaction_analyzer.launch.xml
-
- reaction_analyzer_param_path [default: $(find-pkg-share reaction_analyzer)/param/reaction_analyzer.param.yaml]
- launch_simulator_perception_modules [default: false]
- laserscan_based_occupancy_grid_map_param_path [default: $(find-pkg-share autoware_launch)/config/perception/occupancy_grid_map/laserscan_based_occupancy_grid_map.param.yaml]
- occupancy_grid_map_updater [default: binary_bayes_filter]
- occupancy_grid_map_updater_param_path [default: $(find-pkg-share autoware_launch)/config/perception/occupancy_grid_map/$(var occupancy_grid_map_updater)_updater.param.yaml]
- running_mode [default: planning_control]
- map_path
- vehicle_model [default: sample_vehicle]
- sensor_model [default: sample_sensor_kit]
Messages
Services
Plugins
Recent questions tagged reaction_analyzer 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
- Berkay Karaman
Authors
- Berkay Karaman
Reaction Analyzer
Description
The main purpose of the reaction analyzer package is to measure the reaction times of various nodes within a ROS-based
autonomous driving simulation environment by subscribing to pre-determined topics. This tool is particularly useful for
evaluating the performance of perception, planning, and control pipelines in response to dynamic changes in the
environment, such as sudden obstacles. To be able to measure both control outputs and perception outputs, it was
necessary to divide the node into two running_mode: planning_control
and perception_planning
.
Planning Control Mode
In this mode, the reaction analyzer creates a dummy publisher for the PredictedObjects and PointCloud2 topics. In the
beginning of the test, it publishes the initial position of the ego vehicle and the goal position to set the test
environment. Then, it spawns a sudden obstacle in front of the ego vehicle. After the obstacle is spawned, it starts to
search reacted messages of the planning and control nodes in the pre-determined topics. When all the topics are reacted,
it calculates the reaction time of the nodes and statistics by comparing reacted_times
of each of the nodes
with spawn_cmd_time
, and it creates a csv file to store the results.
Perception Planning Mode
In this mode, the reaction analyzer reads the rosbag files which are recorded from AWSIM, and it creates a topic
publisher for each topic inside the rosbag to replay the rosbag. It reads two rosbag files: path_bag_without_object
and path_bag_with_object
. Firstly, it replays the path_bag_without_object
to set the initial position of the ego
vehicle and the goal position. After spawn_time_after_init
seconds , it replays the path_bag_with_object
to spawn a
sudden obstacle in front of the ego vehicle. After the obstacle is spawned, it starts to search the reacted messages of
the perception and planning nodes in the pre-determined topics. When all the topics are reacted, it calculates the
reaction time of the nodes and statistics by comparing reacted_times
of each of the nodes with spawn_cmd_time
, and
it creates a csv file to store the results.
Point Cloud Publisher Type
To get better analyze for Perception & Sensing pipeline, the reaction analyzer can publish the point cloud messages in 3
different ways: async_header_sync_publish
, sync_header_sync_publish
or async_publish
. (T
is the period of the
lidar’s output)
-
async_header_sync_publish
: It publishes the point cloud messages synchronously with asynchronous header times. It means that each of the lidar’s output will be published at the same time, but the headers of the point cloud messages includes different timestamps because of the phase difference. -
sync_header_sync_publish
: It publishes the point cloud messages synchronously with synchronous header times. It means that each of the lidar’s output will be published at the same time, and the headers of the point cloud messages includes the same timestamps. -
async_publish
: It publishes the point cloud messages asynchronously. It means that each of the lidar’s output will be published at different times.
Usage
The common parameters you need to define for both running modes are output_file_path
, test_iteration
,
and reaction_chain
list. output_file_path
is the output file path is the path where the results and statistics
will be stored. test_iteration
defines how many tests will be performed. The reaction_chain
list is the list of the
pre-defined topics you want to measure their reaction times.
IMPORTANT: Ensure the reaction_chain
list is correctly defined:
- For
perception_planning
mode, do not defineControl
nodes. - For
planning_control
mode, do not definePerception
nodes.
Prepared Test Environment
- Download the demonstration test map from the
link here. After
downloading,
extract the zip file and use its path as
[MAP_PATH]
in the following commands.
Planning Control Mode
- You need to define only Planning and Control nodes in the
reaction_chain
list. With the default parameters, you can start to test with the following command:
ros2 launch reaction_analyzer reaction_analyzer.launch.xml running_mode:=planning_control vehicle_model:=sample_vehicle sensor_model:=sample_sensor_kit map_path:=[MAP_PATH]
After the command, the simple_planning_simulator
and the reaction_analyzer
will be launched. It will automatically
start to test. After the test is completed, the results will be stored in the output_file_path
you defined.
Perception Planning Mode
- Download the rosbag files from the Google Drive link here.
- Extract the zip file and set the path of the
.db3
files to parameterspath_bag_without_object
andpath_bag_with_object
. - You can start to test with the following command:
ros2 launch reaction_analyzer reaction_analyzer.launch.xml running_mode:=perception_planning vehicle_model:=sample_vehicle sensor_model:=awsim_labs_sensor_kit map_path:=[MAP_PATH]
- On the first run of the tool in perception_planning mode, initialization might take longer than expected. Please allow some time for the process to complete.
After the command, the e2e_simulator
and the reaction_analyzer
will be launched. It will automatically start
to test. After the test is completed, the results will be stored in the output_file_path
you defined.
Prepared Test Environment
Scene without object:
File truncated at 100 lines see the full file
Changelog for package reaction_analyzer
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>
-
style(pre-commit): update to clang-format-20 (#11088) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
style(pre-commit): autofix (#10982) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
Contributors: Mete Fatih Cırıt, Ryohsuke Mitsudome, Yukihiro Saito
0.46.0 (2025-06-20)
0.45.0 (2025-05-22)
0.44.2 (2025-06-10)
0.44.1 (2025-05-01)
0.44.0 (2025-04-18)
-
Merge remote-tracking branch 'origin/main' into humble
-
fix: add missing exec_depend (#10404)
- fix missing exec depend
- remove fixed depend
* remove the removed dependency ---------
-
Contributors: Ryohsuke Mitsudome, Takagi, Isamu
0.43.0 (2025-03-21)
- Merge remote-tracking branch 'origin/main' into chore/bump-version-0.43
- chore: rename from [autoware.universe]{.title-ref} to [autoware_universe]{.title-ref} (#10306)
- Contributors: Hayato Mizushima, Yutaka Kondo
0.42.0 (2025-03-03)
- Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base
- feat(autoware_utils): replace autoware_universe_utils with autoware_utils (#10191)
- fix: add missing includes to autoware_universe_utils (#10091)
- Contributors: Fumiya Watanabe, Ryohsuke Mitsudome, 心刚
0.41.2 (2025-02-19)
- chore: bump version to 0.41.1 (#10088)
- Contributors: Ryohsuke Mitsudome
0.41.1 (2025-02-10)
0.41.0 (2025-01-29)
0.40.0 (2024-12-12)
-
Merge branch 'main' into release-0.40.0
-
Revert "chore(package.xml): bump version to 0.39.0 (#9587)" This reverts commit c9f0f2688c57b0f657f5c1f28f036a970682e7f5.
-
fix: fix ticket links in CHANGELOG.rst (#9588)
-
chore(package.xml): bump version to 0.39.0 (#9587)
- chore(package.xml): bump version to 0.39.0
- fix: fix ticket links in CHANGELOG.rst
* fix: remove unnecessary diff ---------Co-authored-by: Yutaka Kondo <<yutaka.kondo@youtalk.jp>>
-
fix: fix ticket links in CHANGELOG.rst (#9588)
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Name |
---|
eigen |
libpcl-all-dev |
Dependant Packages
Launch files
- launch/reaction_analyzer.launch.xml
-
- reaction_analyzer_param_path [default: $(find-pkg-share reaction_analyzer)/param/reaction_analyzer.param.yaml]
- launch_simulator_perception_modules [default: false]
- laserscan_based_occupancy_grid_map_param_path [default: $(find-pkg-share autoware_launch)/config/perception/occupancy_grid_map/laserscan_based_occupancy_grid_map.param.yaml]
- occupancy_grid_map_updater [default: binary_bayes_filter]
- occupancy_grid_map_updater_param_path [default: $(find-pkg-share autoware_launch)/config/perception/occupancy_grid_map/$(var occupancy_grid_map_updater)_updater.param.yaml]
- running_mode [default: planning_control]
- map_path
- vehicle_model [default: sample_vehicle]
- sensor_model [default: sample_sensor_kit]
Messages
Services
Plugins
Recent questions tagged reaction_analyzer 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
- Berkay Karaman
Authors
- Berkay Karaman
Reaction Analyzer
Description
The main purpose of the reaction analyzer package is to measure the reaction times of various nodes within a ROS-based
autonomous driving simulation environment by subscribing to pre-determined topics. This tool is particularly useful for
evaluating the performance of perception, planning, and control pipelines in response to dynamic changes in the
environment, such as sudden obstacles. To be able to measure both control outputs and perception outputs, it was
necessary to divide the node into two running_mode: planning_control
and perception_planning
.
Planning Control Mode
In this mode, the reaction analyzer creates a dummy publisher for the PredictedObjects and PointCloud2 topics. In the
beginning of the test, it publishes the initial position of the ego vehicle and the goal position to set the test
environment. Then, it spawns a sudden obstacle in front of the ego vehicle. After the obstacle is spawned, it starts to
search reacted messages of the planning and control nodes in the pre-determined topics. When all the topics are reacted,
it calculates the reaction time of the nodes and statistics by comparing reacted_times
of each of the nodes
with spawn_cmd_time
, and it creates a csv file to store the results.
Perception Planning Mode
In this mode, the reaction analyzer reads the rosbag files which are recorded from AWSIM, and it creates a topic
publisher for each topic inside the rosbag to replay the rosbag. It reads two rosbag files: path_bag_without_object
and path_bag_with_object
. Firstly, it replays the path_bag_without_object
to set the initial position of the ego
vehicle and the goal position. After spawn_time_after_init
seconds , it replays the path_bag_with_object
to spawn a
sudden obstacle in front of the ego vehicle. After the obstacle is spawned, it starts to search the reacted messages of
the perception and planning nodes in the pre-determined topics. When all the topics are reacted, it calculates the
reaction time of the nodes and statistics by comparing reacted_times
of each of the nodes with spawn_cmd_time
, and
it creates a csv file to store the results.
Point Cloud Publisher Type
To get better analyze for Perception & Sensing pipeline, the reaction analyzer can publish the point cloud messages in 3
different ways: async_header_sync_publish
, sync_header_sync_publish
or async_publish
. (T
is the period of the
lidar’s output)
-
async_header_sync_publish
: It publishes the point cloud messages synchronously with asynchronous header times. It means that each of the lidar’s output will be published at the same time, but the headers of the point cloud messages includes different timestamps because of the phase difference. -
sync_header_sync_publish
: It publishes the point cloud messages synchronously with synchronous header times. It means that each of the lidar’s output will be published at the same time, and the headers of the point cloud messages includes the same timestamps. -
async_publish
: It publishes the point cloud messages asynchronously. It means that each of the lidar’s output will be published at different times.
Usage
The common parameters you need to define for both running modes are output_file_path
, test_iteration
,
and reaction_chain
list. output_file_path
is the output file path is the path where the results and statistics
will be stored. test_iteration
defines how many tests will be performed. The reaction_chain
list is the list of the
pre-defined topics you want to measure their reaction times.
IMPORTANT: Ensure the reaction_chain
list is correctly defined:
- For
perception_planning
mode, do not defineControl
nodes. - For
planning_control
mode, do not definePerception
nodes.
Prepared Test Environment
- Download the demonstration test map from the
link here. After
downloading,
extract the zip file and use its path as
[MAP_PATH]
in the following commands.
Planning Control Mode
- You need to define only Planning and Control nodes in the
reaction_chain
list. With the default parameters, you can start to test with the following command:
ros2 launch reaction_analyzer reaction_analyzer.launch.xml running_mode:=planning_control vehicle_model:=sample_vehicle sensor_model:=sample_sensor_kit map_path:=[MAP_PATH]
After the command, the simple_planning_simulator
and the reaction_analyzer
will be launched. It will automatically
start to test. After the test is completed, the results will be stored in the output_file_path
you defined.
Perception Planning Mode
- Download the rosbag files from the Google Drive link here.
- Extract the zip file and set the path of the
.db3
files to parameterspath_bag_without_object
andpath_bag_with_object
. - You can start to test with the following command:
ros2 launch reaction_analyzer reaction_analyzer.launch.xml running_mode:=perception_planning vehicle_model:=sample_vehicle sensor_model:=awsim_labs_sensor_kit map_path:=[MAP_PATH]
- On the first run of the tool in perception_planning mode, initialization might take longer than expected. Please allow some time for the process to complete.
After the command, the e2e_simulator
and the reaction_analyzer
will be launched. It will automatically start
to test. After the test is completed, the results will be stored in the output_file_path
you defined.
Prepared Test Environment
Scene without object:
File truncated at 100 lines see the full file
Changelog for package reaction_analyzer
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>
-
style(pre-commit): update to clang-format-20 (#11088) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
style(pre-commit): autofix (#10982) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
Contributors: Mete Fatih Cırıt, Ryohsuke Mitsudome, Yukihiro Saito
0.46.0 (2025-06-20)
0.45.0 (2025-05-22)
0.44.2 (2025-06-10)
0.44.1 (2025-05-01)
0.44.0 (2025-04-18)
-
Merge remote-tracking branch 'origin/main' into humble
-
fix: add missing exec_depend (#10404)
- fix missing exec depend
- remove fixed depend
* remove the removed dependency ---------
-
Contributors: Ryohsuke Mitsudome, Takagi, Isamu
0.43.0 (2025-03-21)
- Merge remote-tracking branch 'origin/main' into chore/bump-version-0.43
- chore: rename from [autoware.universe]{.title-ref} to [autoware_universe]{.title-ref} (#10306)
- Contributors: Hayato Mizushima, Yutaka Kondo
0.42.0 (2025-03-03)
- Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base
- feat(autoware_utils): replace autoware_universe_utils with autoware_utils (#10191)
- fix: add missing includes to autoware_universe_utils (#10091)
- Contributors: Fumiya Watanabe, Ryohsuke Mitsudome, 心刚
0.41.2 (2025-02-19)
- chore: bump version to 0.41.1 (#10088)
- Contributors: Ryohsuke Mitsudome
0.41.1 (2025-02-10)
0.41.0 (2025-01-29)
0.40.0 (2024-12-12)
-
Merge branch 'main' into release-0.40.0
-
Revert "chore(package.xml): bump version to 0.39.0 (#9587)" This reverts commit c9f0f2688c57b0f657f5c1f28f036a970682e7f5.
-
fix: fix ticket links in CHANGELOG.rst (#9588)
-
chore(package.xml): bump version to 0.39.0 (#9587)
- chore(package.xml): bump version to 0.39.0
- fix: fix ticket links in CHANGELOG.rst
* fix: remove unnecessary diff ---------Co-authored-by: Yutaka Kondo <<yutaka.kondo@youtalk.jp>>
-
fix: fix ticket links in CHANGELOG.rst (#9588)
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Name |
---|
eigen |
libpcl-all-dev |
Dependant Packages
Launch files
- launch/reaction_analyzer.launch.xml
-
- reaction_analyzer_param_path [default: $(find-pkg-share reaction_analyzer)/param/reaction_analyzer.param.yaml]
- launch_simulator_perception_modules [default: false]
- laserscan_based_occupancy_grid_map_param_path [default: $(find-pkg-share autoware_launch)/config/perception/occupancy_grid_map/laserscan_based_occupancy_grid_map.param.yaml]
- occupancy_grid_map_updater [default: binary_bayes_filter]
- occupancy_grid_map_updater_param_path [default: $(find-pkg-share autoware_launch)/config/perception/occupancy_grid_map/$(var occupancy_grid_map_updater)_updater.param.yaml]
- running_mode [default: planning_control]
- map_path
- vehicle_model [default: sample_vehicle]
- sensor_model [default: sample_sensor_kit]
Messages
Services
Plugins
Recent questions tagged reaction_analyzer 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
- Berkay Karaman
Authors
- Berkay Karaman
Reaction Analyzer
Description
The main purpose of the reaction analyzer package is to measure the reaction times of various nodes within a ROS-based
autonomous driving simulation environment by subscribing to pre-determined topics. This tool is particularly useful for
evaluating the performance of perception, planning, and control pipelines in response to dynamic changes in the
environment, such as sudden obstacles. To be able to measure both control outputs and perception outputs, it was
necessary to divide the node into two running_mode: planning_control
and perception_planning
.
Planning Control Mode
In this mode, the reaction analyzer creates a dummy publisher for the PredictedObjects and PointCloud2 topics. In the
beginning of the test, it publishes the initial position of the ego vehicle and the goal position to set the test
environment. Then, it spawns a sudden obstacle in front of the ego vehicle. After the obstacle is spawned, it starts to
search reacted messages of the planning and control nodes in the pre-determined topics. When all the topics are reacted,
it calculates the reaction time of the nodes and statistics by comparing reacted_times
of each of the nodes
with spawn_cmd_time
, and it creates a csv file to store the results.
Perception Planning Mode
In this mode, the reaction analyzer reads the rosbag files which are recorded from AWSIM, and it creates a topic
publisher for each topic inside the rosbag to replay the rosbag. It reads two rosbag files: path_bag_without_object
and path_bag_with_object
. Firstly, it replays the path_bag_without_object
to set the initial position of the ego
vehicle and the goal position. After spawn_time_after_init
seconds , it replays the path_bag_with_object
to spawn a
sudden obstacle in front of the ego vehicle. After the obstacle is spawned, it starts to search the reacted messages of
the perception and planning nodes in the pre-determined topics. When all the topics are reacted, it calculates the
reaction time of the nodes and statistics by comparing reacted_times
of each of the nodes with spawn_cmd_time
, and
it creates a csv file to store the results.
Point Cloud Publisher Type
To get better analyze for Perception & Sensing pipeline, the reaction analyzer can publish the point cloud messages in 3
different ways: async_header_sync_publish
, sync_header_sync_publish
or async_publish
. (T
is the period of the
lidar’s output)
-
async_header_sync_publish
: It publishes the point cloud messages synchronously with asynchronous header times. It means that each of the lidar’s output will be published at the same time, but the headers of the point cloud messages includes different timestamps because of the phase difference. -
sync_header_sync_publish
: It publishes the point cloud messages synchronously with synchronous header times. It means that each of the lidar’s output will be published at the same time, and the headers of the point cloud messages includes the same timestamps. -
async_publish
: It publishes the point cloud messages asynchronously. It means that each of the lidar’s output will be published at different times.
Usage
The common parameters you need to define for both running modes are output_file_path
, test_iteration
,
and reaction_chain
list. output_file_path
is the output file path is the path where the results and statistics
will be stored. test_iteration
defines how many tests will be performed. The reaction_chain
list is the list of the
pre-defined topics you want to measure their reaction times.
IMPORTANT: Ensure the reaction_chain
list is correctly defined:
- For
perception_planning
mode, do not defineControl
nodes. - For
planning_control
mode, do not definePerception
nodes.
Prepared Test Environment
- Download the demonstration test map from the
link here. After
downloading,
extract the zip file and use its path as
[MAP_PATH]
in the following commands.
Planning Control Mode
- You need to define only Planning and Control nodes in the
reaction_chain
list. With the default parameters, you can start to test with the following command:
ros2 launch reaction_analyzer reaction_analyzer.launch.xml running_mode:=planning_control vehicle_model:=sample_vehicle sensor_model:=sample_sensor_kit map_path:=[MAP_PATH]
After the command, the simple_planning_simulator
and the reaction_analyzer
will be launched. It will automatically
start to test. After the test is completed, the results will be stored in the output_file_path
you defined.
Perception Planning Mode
- Download the rosbag files from the Google Drive link here.
- Extract the zip file and set the path of the
.db3
files to parameterspath_bag_without_object
andpath_bag_with_object
. - You can start to test with the following command:
ros2 launch reaction_analyzer reaction_analyzer.launch.xml running_mode:=perception_planning vehicle_model:=sample_vehicle sensor_model:=awsim_labs_sensor_kit map_path:=[MAP_PATH]
- On the first run of the tool in perception_planning mode, initialization might take longer than expected. Please allow some time for the process to complete.
After the command, the e2e_simulator
and the reaction_analyzer
will be launched. It will automatically start
to test. After the test is completed, the results will be stored in the output_file_path
you defined.
Prepared Test Environment
Scene without object:
File truncated at 100 lines see the full file
Changelog for package reaction_analyzer
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>
-
style(pre-commit): update to clang-format-20 (#11088) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
style(pre-commit): autofix (#10982) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
Contributors: Mete Fatih Cırıt, Ryohsuke Mitsudome, Yukihiro Saito
0.46.0 (2025-06-20)
0.45.0 (2025-05-22)
0.44.2 (2025-06-10)
0.44.1 (2025-05-01)
0.44.0 (2025-04-18)
-
Merge remote-tracking branch 'origin/main' into humble
-
fix: add missing exec_depend (#10404)
- fix missing exec depend
- remove fixed depend
* remove the removed dependency ---------
-
Contributors: Ryohsuke Mitsudome, Takagi, Isamu
0.43.0 (2025-03-21)
- Merge remote-tracking branch 'origin/main' into chore/bump-version-0.43
- chore: rename from [autoware.universe]{.title-ref} to [autoware_universe]{.title-ref} (#10306)
- Contributors: Hayato Mizushima, Yutaka Kondo
0.42.0 (2025-03-03)
- Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base
- feat(autoware_utils): replace autoware_universe_utils with autoware_utils (#10191)
- fix: add missing includes to autoware_universe_utils (#10091)
- Contributors: Fumiya Watanabe, Ryohsuke Mitsudome, 心刚
0.41.2 (2025-02-19)
- chore: bump version to 0.41.1 (#10088)
- Contributors: Ryohsuke Mitsudome
0.41.1 (2025-02-10)
0.41.0 (2025-01-29)
0.40.0 (2024-12-12)
-
Merge branch 'main' into release-0.40.0
-
Revert "chore(package.xml): bump version to 0.39.0 (#9587)" This reverts commit c9f0f2688c57b0f657f5c1f28f036a970682e7f5.
-
fix: fix ticket links in CHANGELOG.rst (#9588)
-
chore(package.xml): bump version to 0.39.0 (#9587)
- chore(package.xml): bump version to 0.39.0
- fix: fix ticket links in CHANGELOG.rst
* fix: remove unnecessary diff ---------Co-authored-by: Yutaka Kondo <<yutaka.kondo@youtalk.jp>>
-
fix: fix ticket links in CHANGELOG.rst (#9588)
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Name |
---|
eigen |
libpcl-all-dev |
Dependant Packages
Launch files
- launch/reaction_analyzer.launch.xml
-
- reaction_analyzer_param_path [default: $(find-pkg-share reaction_analyzer)/param/reaction_analyzer.param.yaml]
- launch_simulator_perception_modules [default: false]
- laserscan_based_occupancy_grid_map_param_path [default: $(find-pkg-share autoware_launch)/config/perception/occupancy_grid_map/laserscan_based_occupancy_grid_map.param.yaml]
- occupancy_grid_map_updater [default: binary_bayes_filter]
- occupancy_grid_map_updater_param_path [default: $(find-pkg-share autoware_launch)/config/perception/occupancy_grid_map/$(var occupancy_grid_map_updater)_updater.param.yaml]
- running_mode [default: planning_control]
- map_path
- vehicle_model [default: sample_vehicle]
- sensor_model [default: sample_sensor_kit]
Messages
Services
Plugins
Recent questions tagged reaction_analyzer 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
- Berkay Karaman
Authors
- Berkay Karaman
Reaction Analyzer
Description
The main purpose of the reaction analyzer package is to measure the reaction times of various nodes within a ROS-based
autonomous driving simulation environment by subscribing to pre-determined topics. This tool is particularly useful for
evaluating the performance of perception, planning, and control pipelines in response to dynamic changes in the
environment, such as sudden obstacles. To be able to measure both control outputs and perception outputs, it was
necessary to divide the node into two running_mode: planning_control
and perception_planning
.
Planning Control Mode
In this mode, the reaction analyzer creates a dummy publisher for the PredictedObjects and PointCloud2 topics. In the
beginning of the test, it publishes the initial position of the ego vehicle and the goal position to set the test
environment. Then, it spawns a sudden obstacle in front of the ego vehicle. After the obstacle is spawned, it starts to
search reacted messages of the planning and control nodes in the pre-determined topics. When all the topics are reacted,
it calculates the reaction time of the nodes and statistics by comparing reacted_times
of each of the nodes
with spawn_cmd_time
, and it creates a csv file to store the results.
Perception Planning Mode
In this mode, the reaction analyzer reads the rosbag files which are recorded from AWSIM, and it creates a topic
publisher for each topic inside the rosbag to replay the rosbag. It reads two rosbag files: path_bag_without_object
and path_bag_with_object
. Firstly, it replays the path_bag_without_object
to set the initial position of the ego
vehicle and the goal position. After spawn_time_after_init
seconds , it replays the path_bag_with_object
to spawn a
sudden obstacle in front of the ego vehicle. After the obstacle is spawned, it starts to search the reacted messages of
the perception and planning nodes in the pre-determined topics. When all the topics are reacted, it calculates the
reaction time of the nodes and statistics by comparing reacted_times
of each of the nodes with spawn_cmd_time
, and
it creates a csv file to store the results.
Point Cloud Publisher Type
To get better analyze for Perception & Sensing pipeline, the reaction analyzer can publish the point cloud messages in 3
different ways: async_header_sync_publish
, sync_header_sync_publish
or async_publish
. (T
is the period of the
lidar’s output)
-
async_header_sync_publish
: It publishes the point cloud messages synchronously with asynchronous header times. It means that each of the lidar’s output will be published at the same time, but the headers of the point cloud messages includes different timestamps because of the phase difference. -
sync_header_sync_publish
: It publishes the point cloud messages synchronously with synchronous header times. It means that each of the lidar’s output will be published at the same time, and the headers of the point cloud messages includes the same timestamps. -
async_publish
: It publishes the point cloud messages asynchronously. It means that each of the lidar’s output will be published at different times.
Usage
The common parameters you need to define for both running modes are output_file_path
, test_iteration
,
and reaction_chain
list. output_file_path
is the output file path is the path where the results and statistics
will be stored. test_iteration
defines how many tests will be performed. The reaction_chain
list is the list of the
pre-defined topics you want to measure their reaction times.
IMPORTANT: Ensure the reaction_chain
list is correctly defined:
- For
perception_planning
mode, do not defineControl
nodes. - For
planning_control
mode, do not definePerception
nodes.
Prepared Test Environment
- Download the demonstration test map from the
link here. After
downloading,
extract the zip file and use its path as
[MAP_PATH]
in the following commands.
Planning Control Mode
- You need to define only Planning and Control nodes in the
reaction_chain
list. With the default parameters, you can start to test with the following command:
ros2 launch reaction_analyzer reaction_analyzer.launch.xml running_mode:=planning_control vehicle_model:=sample_vehicle sensor_model:=sample_sensor_kit map_path:=[MAP_PATH]
After the command, the simple_planning_simulator
and the reaction_analyzer
will be launched. It will automatically
start to test. After the test is completed, the results will be stored in the output_file_path
you defined.
Perception Planning Mode
- Download the rosbag files from the Google Drive link here.
- Extract the zip file and set the path of the
.db3
files to parameterspath_bag_without_object
andpath_bag_with_object
. - You can start to test with the following command:
ros2 launch reaction_analyzer reaction_analyzer.launch.xml running_mode:=perception_planning vehicle_model:=sample_vehicle sensor_model:=awsim_labs_sensor_kit map_path:=[MAP_PATH]
- On the first run of the tool in perception_planning mode, initialization might take longer than expected. Please allow some time for the process to complete.
After the command, the e2e_simulator
and the reaction_analyzer
will be launched. It will automatically start
to test. After the test is completed, the results will be stored in the output_file_path
you defined.
Prepared Test Environment
Scene without object:
File truncated at 100 lines see the full file
Changelog for package reaction_analyzer
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>
-
style(pre-commit): update to clang-format-20 (#11088) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
style(pre-commit): autofix (#10982) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
Contributors: Mete Fatih Cırıt, Ryohsuke Mitsudome, Yukihiro Saito
0.46.0 (2025-06-20)
0.45.0 (2025-05-22)
0.44.2 (2025-06-10)
0.44.1 (2025-05-01)
0.44.0 (2025-04-18)
-
Merge remote-tracking branch 'origin/main' into humble
-
fix: add missing exec_depend (#10404)
- fix missing exec depend
- remove fixed depend
* remove the removed dependency ---------
-
Contributors: Ryohsuke Mitsudome, Takagi, Isamu
0.43.0 (2025-03-21)
- Merge remote-tracking branch 'origin/main' into chore/bump-version-0.43
- chore: rename from [autoware.universe]{.title-ref} to [autoware_universe]{.title-ref} (#10306)
- Contributors: Hayato Mizushima, Yutaka Kondo
0.42.0 (2025-03-03)
- Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base
- feat(autoware_utils): replace autoware_universe_utils with autoware_utils (#10191)
- fix: add missing includes to autoware_universe_utils (#10091)
- Contributors: Fumiya Watanabe, Ryohsuke Mitsudome, 心刚
0.41.2 (2025-02-19)
- chore: bump version to 0.41.1 (#10088)
- Contributors: Ryohsuke Mitsudome
0.41.1 (2025-02-10)
0.41.0 (2025-01-29)
0.40.0 (2024-12-12)
-
Merge branch 'main' into release-0.40.0
-
Revert "chore(package.xml): bump version to 0.39.0 (#9587)" This reverts commit c9f0f2688c57b0f657f5c1f28f036a970682e7f5.
-
fix: fix ticket links in CHANGELOG.rst (#9588)
-
chore(package.xml): bump version to 0.39.0 (#9587)
- chore(package.xml): bump version to 0.39.0
- fix: fix ticket links in CHANGELOG.rst
* fix: remove unnecessary diff ---------Co-authored-by: Yutaka Kondo <<yutaka.kondo@youtalk.jp>>
-
fix: fix ticket links in CHANGELOG.rst (#9588)
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Name |
---|
eigen |
libpcl-all-dev |
Dependant Packages
Launch files
- launch/reaction_analyzer.launch.xml
-
- reaction_analyzer_param_path [default: $(find-pkg-share reaction_analyzer)/param/reaction_analyzer.param.yaml]
- launch_simulator_perception_modules [default: false]
- laserscan_based_occupancy_grid_map_param_path [default: $(find-pkg-share autoware_launch)/config/perception/occupancy_grid_map/laserscan_based_occupancy_grid_map.param.yaml]
- occupancy_grid_map_updater [default: binary_bayes_filter]
- occupancy_grid_map_updater_param_path [default: $(find-pkg-share autoware_launch)/config/perception/occupancy_grid_map/$(var occupancy_grid_map_updater)_updater.param.yaml]
- running_mode [default: planning_control]
- map_path
- vehicle_model [default: sample_vehicle]
- sensor_model [default: sample_sensor_kit]
Messages
Services
Plugins
Recent questions tagged reaction_analyzer 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
- Berkay Karaman
Authors
- Berkay Karaman
Reaction Analyzer
Description
The main purpose of the reaction analyzer package is to measure the reaction times of various nodes within a ROS-based
autonomous driving simulation environment by subscribing to pre-determined topics. This tool is particularly useful for
evaluating the performance of perception, planning, and control pipelines in response to dynamic changes in the
environment, such as sudden obstacles. To be able to measure both control outputs and perception outputs, it was
necessary to divide the node into two running_mode: planning_control
and perception_planning
.
Planning Control Mode
In this mode, the reaction analyzer creates a dummy publisher for the PredictedObjects and PointCloud2 topics. In the
beginning of the test, it publishes the initial position of the ego vehicle and the goal position to set the test
environment. Then, it spawns a sudden obstacle in front of the ego vehicle. After the obstacle is spawned, it starts to
search reacted messages of the planning and control nodes in the pre-determined topics. When all the topics are reacted,
it calculates the reaction time of the nodes and statistics by comparing reacted_times
of each of the nodes
with spawn_cmd_time
, and it creates a csv file to store the results.
Perception Planning Mode
In this mode, the reaction analyzer reads the rosbag files which are recorded from AWSIM, and it creates a topic
publisher for each topic inside the rosbag to replay the rosbag. It reads two rosbag files: path_bag_without_object
and path_bag_with_object
. Firstly, it replays the path_bag_without_object
to set the initial position of the ego
vehicle and the goal position. After spawn_time_after_init
seconds , it replays the path_bag_with_object
to spawn a
sudden obstacle in front of the ego vehicle. After the obstacle is spawned, it starts to search the reacted messages of
the perception and planning nodes in the pre-determined topics. When all the topics are reacted, it calculates the
reaction time of the nodes and statistics by comparing reacted_times
of each of the nodes with spawn_cmd_time
, and
it creates a csv file to store the results.
Point Cloud Publisher Type
To get better analyze for Perception & Sensing pipeline, the reaction analyzer can publish the point cloud messages in 3
different ways: async_header_sync_publish
, sync_header_sync_publish
or async_publish
. (T
is the period of the
lidar’s output)
-
async_header_sync_publish
: It publishes the point cloud messages synchronously with asynchronous header times. It means that each of the lidar’s output will be published at the same time, but the headers of the point cloud messages includes different timestamps because of the phase difference. -
sync_header_sync_publish
: It publishes the point cloud messages synchronously with synchronous header times. It means that each of the lidar’s output will be published at the same time, and the headers of the point cloud messages includes the same timestamps. -
async_publish
: It publishes the point cloud messages asynchronously. It means that each of the lidar’s output will be published at different times.
Usage
The common parameters you need to define for both running modes are output_file_path
, test_iteration
,
and reaction_chain
list. output_file_path
is the output file path is the path where the results and statistics
will be stored. test_iteration
defines how many tests will be performed. The reaction_chain
list is the list of the
pre-defined topics you want to measure their reaction times.
IMPORTANT: Ensure the reaction_chain
list is correctly defined:
- For
perception_planning
mode, do not defineControl
nodes. - For
planning_control
mode, do not definePerception
nodes.
Prepared Test Environment
- Download the demonstration test map from the
link here. After
downloading,
extract the zip file and use its path as
[MAP_PATH]
in the following commands.
Planning Control Mode
- You need to define only Planning and Control nodes in the
reaction_chain
list. With the default parameters, you can start to test with the following command:
ros2 launch reaction_analyzer reaction_analyzer.launch.xml running_mode:=planning_control vehicle_model:=sample_vehicle sensor_model:=sample_sensor_kit map_path:=[MAP_PATH]
After the command, the simple_planning_simulator
and the reaction_analyzer
will be launched. It will automatically
start to test. After the test is completed, the results will be stored in the output_file_path
you defined.
Perception Planning Mode
- Download the rosbag files from the Google Drive link here.
- Extract the zip file and set the path of the
.db3
files to parameterspath_bag_without_object
andpath_bag_with_object
. - You can start to test with the following command:
ros2 launch reaction_analyzer reaction_analyzer.launch.xml running_mode:=perception_planning vehicle_model:=sample_vehicle sensor_model:=awsim_labs_sensor_kit map_path:=[MAP_PATH]
- On the first run of the tool in perception_planning mode, initialization might take longer than expected. Please allow some time for the process to complete.
After the command, the e2e_simulator
and the reaction_analyzer
will be launched. It will automatically start
to test. After the test is completed, the results will be stored in the output_file_path
you defined.
Prepared Test Environment
Scene without object:
File truncated at 100 lines see the full file
Changelog for package reaction_analyzer
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>
-
style(pre-commit): update to clang-format-20 (#11088) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
style(pre-commit): autofix (#10982) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
Contributors: Mete Fatih Cırıt, Ryohsuke Mitsudome, Yukihiro Saito
0.46.0 (2025-06-20)
0.45.0 (2025-05-22)
0.44.2 (2025-06-10)
0.44.1 (2025-05-01)
0.44.0 (2025-04-18)
-
Merge remote-tracking branch 'origin/main' into humble
-
fix: add missing exec_depend (#10404)
- fix missing exec depend
- remove fixed depend
* remove the removed dependency ---------
-
Contributors: Ryohsuke Mitsudome, Takagi, Isamu
0.43.0 (2025-03-21)
- Merge remote-tracking branch 'origin/main' into chore/bump-version-0.43
- chore: rename from [autoware.universe]{.title-ref} to [autoware_universe]{.title-ref} (#10306)
- Contributors: Hayato Mizushima, Yutaka Kondo
0.42.0 (2025-03-03)
- Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base
- feat(autoware_utils): replace autoware_universe_utils with autoware_utils (#10191)
- fix: add missing includes to autoware_universe_utils (#10091)
- Contributors: Fumiya Watanabe, Ryohsuke Mitsudome, 心刚
0.41.2 (2025-02-19)
- chore: bump version to 0.41.1 (#10088)
- Contributors: Ryohsuke Mitsudome
0.41.1 (2025-02-10)
0.41.0 (2025-01-29)
0.40.0 (2024-12-12)
-
Merge branch 'main' into release-0.40.0
-
Revert "chore(package.xml): bump version to 0.39.0 (#9587)" This reverts commit c9f0f2688c57b0f657f5c1f28f036a970682e7f5.
-
fix: fix ticket links in CHANGELOG.rst (#9588)
-
chore(package.xml): bump version to 0.39.0 (#9587)
- chore(package.xml): bump version to 0.39.0
- fix: fix ticket links in CHANGELOG.rst
* fix: remove unnecessary diff ---------Co-authored-by: Yutaka Kondo <<yutaka.kondo@youtalk.jp>>
-
fix: fix ticket links in CHANGELOG.rst (#9588)
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Name |
---|
eigen |
libpcl-all-dev |
Dependant Packages
Launch files
- launch/reaction_analyzer.launch.xml
-
- reaction_analyzer_param_path [default: $(find-pkg-share reaction_analyzer)/param/reaction_analyzer.param.yaml]
- launch_simulator_perception_modules [default: false]
- laserscan_based_occupancy_grid_map_param_path [default: $(find-pkg-share autoware_launch)/config/perception/occupancy_grid_map/laserscan_based_occupancy_grid_map.param.yaml]
- occupancy_grid_map_updater [default: binary_bayes_filter]
- occupancy_grid_map_updater_param_path [default: $(find-pkg-share autoware_launch)/config/perception/occupancy_grid_map/$(var occupancy_grid_map_updater)_updater.param.yaml]
- running_mode [default: planning_control]
- map_path
- vehicle_model [default: sample_vehicle]
- sensor_model [default: sample_sensor_kit]