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
- Satoshi Ota
- Tomoya Kimura
- Shumpei Wakabayashi
- Mamoru Sobue
Authors
- Satoshi Ota
Traffic Light
Role
Judgement whether a vehicle can go into an intersection or not by traffic light status, and planning a velocity of the stop if necessary. This module is designed for rule-based velocity decision that is easy for developers to design its behavior. It generates proper velocity for traffic light scene.
Limitations
This module allows developers to design STOP/GO in traffic light module using specific rules. Due to the property of rule-based planning, the algorithm is greatly depends on object detection and perception accuracy considering traffic light. Also, this module only handles STOP/Go at traffic light scene, so rushing or quick decision according to traffic condition is future work.
Activation Timing
This module is activated when there is traffic light in ego lane.
Algorithm
- Obtains a traffic light mapped to the route and a stop line correspond to the traffic light from a map information.
-
If a corresponding traffic light signal have never been found, it treats as a signal to pass.
-
If a corresponding traffic light signal is found but timed out, it treats as a signal to stop.
-
- Uses the highest reliability one of the traffic light recognition result and if the color of that was not green or corresponding arrow signal, generates a stop point.
- If an elapsed time to receive stop signal is less than
stop_time_hysteresis
, it treats as a signal to pass. This feature is to prevent chattering.
- If an elapsed time to receive stop signal is less than
- When vehicle current velocity is
-
higher than
yellow_light_stop_velocity
m/s ⇒ pass judge(using next slide formula) -
lower than
yellow_light_stop_velocity
m/s ⇒ stop
-
- When it to be judged that vehicle can’t stop before stop line, autoware chooses one of the following behaviors
-
“can pass through” stop line during yellow lamp => pass
-
“can’t pass through” stop line during yellow lamp => emergency stop
-
Dilemma Zone
-
yellow lamp line
It’s called “yellow lamp line” which shows the distance traveled by the vehicle during yellow lamp.
-
dilemma zone
It’s called “dilemma zone” which satisfies following conditions:
-
vehicle can’t pass through stop line during yellow lamp.(right side of the yellow lamp line)
-
vehicle can’t stop under deceleration and jerk limit.(left side of the pass judge curve)
⇒emergency stop(relax deceleration and jerk limitation in order to observe the traffic regulation)
-
-
optional zone
It’s called “optional zone” which satisfies following conditions:
-
vehicle can pass through stop line during yellow lamp.(left side of the yellow lamp line)
-
vehicle can stop under deceleration and jerk limit.(right side of the pass judge curve)
⇒ stop(autoware selects the safety choice)
-
Module Parameters
Parameter | Type | Description |
---|---|---|
stop_margin |
double | [m] margin before stop point |
tl_state_timeout |
double | [s] time out for detected traffic light result. |
stop_time_hysteresis |
double | [s] time threshold to decide stop planning for chattering prevention |
yellow_lamp_period |
double | [s] time for yellow lamp |
yellow_light_stop_velocity |
double | [m/s] velocity threshold for always stopping at a yellow light. |
enable_pass_judge |
bool | [-] whether to use pass judge |
Flowchart
```plantuml @startuml title modifyPathVelocity start
:calc stop point and insert index;
:find offset segment;
:calculate stop pose;
:calculate distance to stop line;
if (state is APPROACH) then (yes) :set stop velocity; if (distance to stop point is below singed dead line length(-2[m])) then (yes) :change state to GO_OUT; stop elseif (no stop signal) then (yes) :change previous state to PASS; stop elseif (not pass through) then (yes) :insert stop pose; :change previous state to STOP;
File truncated at 100 lines see the full file
Changelog for package autoware_behavior_velocity_traffic_light_module
0.47.0 (2025-08-11)
- 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>
- feat(autoware_behavior_velocity_traffic_light_module): enhance rviz for v2i (#10867) update
- Contributors: Mete Fatih Cırıt, Ryohsuke Mitsudome, Yukinari Hisaki
0.46.0 (2025-06-20)
- Merge remote-tracking branch 'upstream/main' into tmp/TaikiYamada/bump_version_base
- feat(autoware_behavior_velocity_traffic_light_module): add v2i (#10768) add v2i
- Contributors: TaikiYamada4, Yukinari Hisaki
0.45.0 (2025-05-22)
-
Merge remote-tracking branch 'origin/main' into tmp/notbot/bump_version_base
-
feat(behavior_velocity_planner): extend stop line to path bound (#10435)
- extend stop line to path bound
- style(pre-commit): autofix
- change signature of stop line extension function
- add tests for detection area module
- fix test for no stopping area module
- fix tests for traffic light module
- include necessary header
* fix test for detection area module ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
feat(behavior_velocity_planner): only wait for the required subscriptions (#10546)
-
Contributors: Mitsuhiro Sakamoto, TaikiYamada4, Takayuki Murooka
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
-
feat(traffic_light): restart suppression at traffic light stop_point (#10451)
- feat: restart suppression at traffic light stop_point
* style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
Contributors: Ryohsuke Mitsudome, eiki
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)
-
fix(behavior_velocity_planner): planning factor integration (#10292)
- fix: blind_spot
- fix: crosswalk
- fix: detection_area
- fix: intersection
- fix: no_drivable_lane
- fix: no_stopping_area
- fix: run_out
- fix: stop_line
- fix: traffic_light
- fix: virtual_traffic_light
* fix: walk_way ---------
-
fix(stopline, traffic_light): fix planning factor distance value (#10245)
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Name |
---|
eigen |
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged autoware_behavior_velocity_traffic_light_module 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
- Satoshi Ota
- Tomoya Kimura
- Shumpei Wakabayashi
- Mamoru Sobue
Authors
- Satoshi Ota
Traffic Light
Role
Judgement whether a vehicle can go into an intersection or not by traffic light status, and planning a velocity of the stop if necessary. This module is designed for rule-based velocity decision that is easy for developers to design its behavior. It generates proper velocity for traffic light scene.
Limitations
This module allows developers to design STOP/GO in traffic light module using specific rules. Due to the property of rule-based planning, the algorithm is greatly depends on object detection and perception accuracy considering traffic light. Also, this module only handles STOP/Go at traffic light scene, so rushing or quick decision according to traffic condition is future work.
Activation Timing
This module is activated when there is traffic light in ego lane.
Algorithm
- Obtains a traffic light mapped to the route and a stop line correspond to the traffic light from a map information.
-
If a corresponding traffic light signal have never been found, it treats as a signal to pass.
-
If a corresponding traffic light signal is found but timed out, it treats as a signal to stop.
-
- Uses the highest reliability one of the traffic light recognition result and if the color of that was not green or corresponding arrow signal, generates a stop point.
- If an elapsed time to receive stop signal is less than
stop_time_hysteresis
, it treats as a signal to pass. This feature is to prevent chattering.
- If an elapsed time to receive stop signal is less than
- When vehicle current velocity is
-
higher than
yellow_light_stop_velocity
m/s ⇒ pass judge(using next slide formula) -
lower than
yellow_light_stop_velocity
m/s ⇒ stop
-
- When it to be judged that vehicle can’t stop before stop line, autoware chooses one of the following behaviors
-
“can pass through” stop line during yellow lamp => pass
-
“can’t pass through” stop line during yellow lamp => emergency stop
-
Dilemma Zone
-
yellow lamp line
It’s called “yellow lamp line” which shows the distance traveled by the vehicle during yellow lamp.
-
dilemma zone
It’s called “dilemma zone” which satisfies following conditions:
-
vehicle can’t pass through stop line during yellow lamp.(right side of the yellow lamp line)
-
vehicle can’t stop under deceleration and jerk limit.(left side of the pass judge curve)
⇒emergency stop(relax deceleration and jerk limitation in order to observe the traffic regulation)
-
-
optional zone
It’s called “optional zone” which satisfies following conditions:
-
vehicle can pass through stop line during yellow lamp.(left side of the yellow lamp line)
-
vehicle can stop under deceleration and jerk limit.(right side of the pass judge curve)
⇒ stop(autoware selects the safety choice)
-
Module Parameters
Parameter | Type | Description |
---|---|---|
stop_margin |
double | [m] margin before stop point |
tl_state_timeout |
double | [s] time out for detected traffic light result. |
stop_time_hysteresis |
double | [s] time threshold to decide stop planning for chattering prevention |
yellow_lamp_period |
double | [s] time for yellow lamp |
yellow_light_stop_velocity |
double | [m/s] velocity threshold for always stopping at a yellow light. |
enable_pass_judge |
bool | [-] whether to use pass judge |
Flowchart
```plantuml @startuml title modifyPathVelocity start
:calc stop point and insert index;
:find offset segment;
:calculate stop pose;
:calculate distance to stop line;
if (state is APPROACH) then (yes) :set stop velocity; if (distance to stop point is below singed dead line length(-2[m])) then (yes) :change state to GO_OUT; stop elseif (no stop signal) then (yes) :change previous state to PASS; stop elseif (not pass through) then (yes) :insert stop pose; :change previous state to STOP;
File truncated at 100 lines see the full file
Changelog for package autoware_behavior_velocity_traffic_light_module
0.47.0 (2025-08-11)
- 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>
- feat(autoware_behavior_velocity_traffic_light_module): enhance rviz for v2i (#10867) update
- Contributors: Mete Fatih Cırıt, Ryohsuke Mitsudome, Yukinari Hisaki
0.46.0 (2025-06-20)
- Merge remote-tracking branch 'upstream/main' into tmp/TaikiYamada/bump_version_base
- feat(autoware_behavior_velocity_traffic_light_module): add v2i (#10768) add v2i
- Contributors: TaikiYamada4, Yukinari Hisaki
0.45.0 (2025-05-22)
-
Merge remote-tracking branch 'origin/main' into tmp/notbot/bump_version_base
-
feat(behavior_velocity_planner): extend stop line to path bound (#10435)
- extend stop line to path bound
- style(pre-commit): autofix
- change signature of stop line extension function
- add tests for detection area module
- fix test for no stopping area module
- fix tests for traffic light module
- include necessary header
* fix test for detection area module ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
feat(behavior_velocity_planner): only wait for the required subscriptions (#10546)
-
Contributors: Mitsuhiro Sakamoto, TaikiYamada4, Takayuki Murooka
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
-
feat(traffic_light): restart suppression at traffic light stop_point (#10451)
- feat: restart suppression at traffic light stop_point
* style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
Contributors: Ryohsuke Mitsudome, eiki
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)
-
fix(behavior_velocity_planner): planning factor integration (#10292)
- fix: blind_spot
- fix: crosswalk
- fix: detection_area
- fix: intersection
- fix: no_drivable_lane
- fix: no_stopping_area
- fix: run_out
- fix: stop_line
- fix: traffic_light
- fix: virtual_traffic_light
* fix: walk_way ---------
-
fix(stopline, traffic_light): fix planning factor distance value (#10245)
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Name |
---|
eigen |
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged autoware_behavior_velocity_traffic_light_module 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
- Satoshi Ota
- Tomoya Kimura
- Shumpei Wakabayashi
- Mamoru Sobue
Authors
- Satoshi Ota
Traffic Light
Role
Judgement whether a vehicle can go into an intersection or not by traffic light status, and planning a velocity of the stop if necessary. This module is designed for rule-based velocity decision that is easy for developers to design its behavior. It generates proper velocity for traffic light scene.
Limitations
This module allows developers to design STOP/GO in traffic light module using specific rules. Due to the property of rule-based planning, the algorithm is greatly depends on object detection and perception accuracy considering traffic light. Also, this module only handles STOP/Go at traffic light scene, so rushing or quick decision according to traffic condition is future work.
Activation Timing
This module is activated when there is traffic light in ego lane.
Algorithm
- Obtains a traffic light mapped to the route and a stop line correspond to the traffic light from a map information.
-
If a corresponding traffic light signal have never been found, it treats as a signal to pass.
-
If a corresponding traffic light signal is found but timed out, it treats as a signal to stop.
-
- Uses the highest reliability one of the traffic light recognition result and if the color of that was not green or corresponding arrow signal, generates a stop point.
- If an elapsed time to receive stop signal is less than
stop_time_hysteresis
, it treats as a signal to pass. This feature is to prevent chattering.
- If an elapsed time to receive stop signal is less than
- When vehicle current velocity is
-
higher than
yellow_light_stop_velocity
m/s ⇒ pass judge(using next slide formula) -
lower than
yellow_light_stop_velocity
m/s ⇒ stop
-
- When it to be judged that vehicle can’t stop before stop line, autoware chooses one of the following behaviors
-
“can pass through” stop line during yellow lamp => pass
-
“can’t pass through” stop line during yellow lamp => emergency stop
-
Dilemma Zone
-
yellow lamp line
It’s called “yellow lamp line” which shows the distance traveled by the vehicle during yellow lamp.
-
dilemma zone
It’s called “dilemma zone” which satisfies following conditions:
-
vehicle can’t pass through stop line during yellow lamp.(right side of the yellow lamp line)
-
vehicle can’t stop under deceleration and jerk limit.(left side of the pass judge curve)
⇒emergency stop(relax deceleration and jerk limitation in order to observe the traffic regulation)
-
-
optional zone
It’s called “optional zone” which satisfies following conditions:
-
vehicle can pass through stop line during yellow lamp.(left side of the yellow lamp line)
-
vehicle can stop under deceleration and jerk limit.(right side of the pass judge curve)
⇒ stop(autoware selects the safety choice)
-
Module Parameters
Parameter | Type | Description |
---|---|---|
stop_margin |
double | [m] margin before stop point |
tl_state_timeout |
double | [s] time out for detected traffic light result. |
stop_time_hysteresis |
double | [s] time threshold to decide stop planning for chattering prevention |
yellow_lamp_period |
double | [s] time for yellow lamp |
yellow_light_stop_velocity |
double | [m/s] velocity threshold for always stopping at a yellow light. |
enable_pass_judge |
bool | [-] whether to use pass judge |
Flowchart
```plantuml @startuml title modifyPathVelocity start
:calc stop point and insert index;
:find offset segment;
:calculate stop pose;
:calculate distance to stop line;
if (state is APPROACH) then (yes) :set stop velocity; if (distance to stop point is below singed dead line length(-2[m])) then (yes) :change state to GO_OUT; stop elseif (no stop signal) then (yes) :change previous state to PASS; stop elseif (not pass through) then (yes) :insert stop pose; :change previous state to STOP;
File truncated at 100 lines see the full file
Changelog for package autoware_behavior_velocity_traffic_light_module
0.47.0 (2025-08-11)
- 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>
- feat(autoware_behavior_velocity_traffic_light_module): enhance rviz for v2i (#10867) update
- Contributors: Mete Fatih Cırıt, Ryohsuke Mitsudome, Yukinari Hisaki
0.46.0 (2025-06-20)
- Merge remote-tracking branch 'upstream/main' into tmp/TaikiYamada/bump_version_base
- feat(autoware_behavior_velocity_traffic_light_module): add v2i (#10768) add v2i
- Contributors: TaikiYamada4, Yukinari Hisaki
0.45.0 (2025-05-22)
-
Merge remote-tracking branch 'origin/main' into tmp/notbot/bump_version_base
-
feat(behavior_velocity_planner): extend stop line to path bound (#10435)
- extend stop line to path bound
- style(pre-commit): autofix
- change signature of stop line extension function
- add tests for detection area module
- fix test for no stopping area module
- fix tests for traffic light module
- include necessary header
* fix test for detection area module ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
feat(behavior_velocity_planner): only wait for the required subscriptions (#10546)
-
Contributors: Mitsuhiro Sakamoto, TaikiYamada4, Takayuki Murooka
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
-
feat(traffic_light): restart suppression at traffic light stop_point (#10451)
- feat: restart suppression at traffic light stop_point
* style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
Contributors: Ryohsuke Mitsudome, eiki
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)
-
fix(behavior_velocity_planner): planning factor integration (#10292)
- fix: blind_spot
- fix: crosswalk
- fix: detection_area
- fix: intersection
- fix: no_drivable_lane
- fix: no_stopping_area
- fix: run_out
- fix: stop_line
- fix: traffic_light
- fix: virtual_traffic_light
* fix: walk_way ---------
-
fix(stopline, traffic_light): fix planning factor distance value (#10245)
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Name |
---|
eigen |
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged autoware_behavior_velocity_traffic_light_module 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
- Satoshi Ota
- Tomoya Kimura
- Shumpei Wakabayashi
- Mamoru Sobue
Authors
- Satoshi Ota
Traffic Light
Role
Judgement whether a vehicle can go into an intersection or not by traffic light status, and planning a velocity of the stop if necessary. This module is designed for rule-based velocity decision that is easy for developers to design its behavior. It generates proper velocity for traffic light scene.
Limitations
This module allows developers to design STOP/GO in traffic light module using specific rules. Due to the property of rule-based planning, the algorithm is greatly depends on object detection and perception accuracy considering traffic light. Also, this module only handles STOP/Go at traffic light scene, so rushing or quick decision according to traffic condition is future work.
Activation Timing
This module is activated when there is traffic light in ego lane.
Algorithm
- Obtains a traffic light mapped to the route and a stop line correspond to the traffic light from a map information.
-
If a corresponding traffic light signal have never been found, it treats as a signal to pass.
-
If a corresponding traffic light signal is found but timed out, it treats as a signal to stop.
-
- Uses the highest reliability one of the traffic light recognition result and if the color of that was not green or corresponding arrow signal, generates a stop point.
- If an elapsed time to receive stop signal is less than
stop_time_hysteresis
, it treats as a signal to pass. This feature is to prevent chattering.
- If an elapsed time to receive stop signal is less than
- When vehicle current velocity is
-
higher than
yellow_light_stop_velocity
m/s ⇒ pass judge(using next slide formula) -
lower than
yellow_light_stop_velocity
m/s ⇒ stop
-
- When it to be judged that vehicle can’t stop before stop line, autoware chooses one of the following behaviors
-
“can pass through” stop line during yellow lamp => pass
-
“can’t pass through” stop line during yellow lamp => emergency stop
-
Dilemma Zone
-
yellow lamp line
It’s called “yellow lamp line” which shows the distance traveled by the vehicle during yellow lamp.
-
dilemma zone
It’s called “dilemma zone” which satisfies following conditions:
-
vehicle can’t pass through stop line during yellow lamp.(right side of the yellow lamp line)
-
vehicle can’t stop under deceleration and jerk limit.(left side of the pass judge curve)
⇒emergency stop(relax deceleration and jerk limitation in order to observe the traffic regulation)
-
-
optional zone
It’s called “optional zone” which satisfies following conditions:
-
vehicle can pass through stop line during yellow lamp.(left side of the yellow lamp line)
-
vehicle can stop under deceleration and jerk limit.(right side of the pass judge curve)
⇒ stop(autoware selects the safety choice)
-
Module Parameters
Parameter | Type | Description |
---|---|---|
stop_margin |
double | [m] margin before stop point |
tl_state_timeout |
double | [s] time out for detected traffic light result. |
stop_time_hysteresis |
double | [s] time threshold to decide stop planning for chattering prevention |
yellow_lamp_period |
double | [s] time for yellow lamp |
yellow_light_stop_velocity |
double | [m/s] velocity threshold for always stopping at a yellow light. |
enable_pass_judge |
bool | [-] whether to use pass judge |
Flowchart
```plantuml @startuml title modifyPathVelocity start
:calc stop point and insert index;
:find offset segment;
:calculate stop pose;
:calculate distance to stop line;
if (state is APPROACH) then (yes) :set stop velocity; if (distance to stop point is below singed dead line length(-2[m])) then (yes) :change state to GO_OUT; stop elseif (no stop signal) then (yes) :change previous state to PASS; stop elseif (not pass through) then (yes) :insert stop pose; :change previous state to STOP;
File truncated at 100 lines see the full file
Changelog for package autoware_behavior_velocity_traffic_light_module
0.47.0 (2025-08-11)
- 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>
- feat(autoware_behavior_velocity_traffic_light_module): enhance rviz for v2i (#10867) update
- Contributors: Mete Fatih Cırıt, Ryohsuke Mitsudome, Yukinari Hisaki
0.46.0 (2025-06-20)
- Merge remote-tracking branch 'upstream/main' into tmp/TaikiYamada/bump_version_base
- feat(autoware_behavior_velocity_traffic_light_module): add v2i (#10768) add v2i
- Contributors: TaikiYamada4, Yukinari Hisaki
0.45.0 (2025-05-22)
-
Merge remote-tracking branch 'origin/main' into tmp/notbot/bump_version_base
-
feat(behavior_velocity_planner): extend stop line to path bound (#10435)
- extend stop line to path bound
- style(pre-commit): autofix
- change signature of stop line extension function
- add tests for detection area module
- fix test for no stopping area module
- fix tests for traffic light module
- include necessary header
* fix test for detection area module ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
feat(behavior_velocity_planner): only wait for the required subscriptions (#10546)
-
Contributors: Mitsuhiro Sakamoto, TaikiYamada4, Takayuki Murooka
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
-
feat(traffic_light): restart suppression at traffic light stop_point (#10451)
- feat: restart suppression at traffic light stop_point
* style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
Contributors: Ryohsuke Mitsudome, eiki
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)
-
fix(behavior_velocity_planner): planning factor integration (#10292)
- fix: blind_spot
- fix: crosswalk
- fix: detection_area
- fix: intersection
- fix: no_drivable_lane
- fix: no_stopping_area
- fix: run_out
- fix: stop_line
- fix: traffic_light
- fix: virtual_traffic_light
* fix: walk_way ---------
-
fix(stopline, traffic_light): fix planning factor distance value (#10245)
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Name |
---|
eigen |
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged autoware_behavior_velocity_traffic_light_module 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
- Satoshi Ota
- Tomoya Kimura
- Shumpei Wakabayashi
- Mamoru Sobue
Authors
- Satoshi Ota
Traffic Light
Role
Judgement whether a vehicle can go into an intersection or not by traffic light status, and planning a velocity of the stop if necessary. This module is designed for rule-based velocity decision that is easy for developers to design its behavior. It generates proper velocity for traffic light scene.
Limitations
This module allows developers to design STOP/GO in traffic light module using specific rules. Due to the property of rule-based planning, the algorithm is greatly depends on object detection and perception accuracy considering traffic light. Also, this module only handles STOP/Go at traffic light scene, so rushing or quick decision according to traffic condition is future work.
Activation Timing
This module is activated when there is traffic light in ego lane.
Algorithm
- Obtains a traffic light mapped to the route and a stop line correspond to the traffic light from a map information.
-
If a corresponding traffic light signal have never been found, it treats as a signal to pass.
-
If a corresponding traffic light signal is found but timed out, it treats as a signal to stop.
-
- Uses the highest reliability one of the traffic light recognition result and if the color of that was not green or corresponding arrow signal, generates a stop point.
- If an elapsed time to receive stop signal is less than
stop_time_hysteresis
, it treats as a signal to pass. This feature is to prevent chattering.
- If an elapsed time to receive stop signal is less than
- When vehicle current velocity is
-
higher than
yellow_light_stop_velocity
m/s ⇒ pass judge(using next slide formula) -
lower than
yellow_light_stop_velocity
m/s ⇒ stop
-
- When it to be judged that vehicle can’t stop before stop line, autoware chooses one of the following behaviors
-
“can pass through” stop line during yellow lamp => pass
-
“can’t pass through” stop line during yellow lamp => emergency stop
-
Dilemma Zone
-
yellow lamp line
It’s called “yellow lamp line” which shows the distance traveled by the vehicle during yellow lamp.
-
dilemma zone
It’s called “dilemma zone” which satisfies following conditions:
-
vehicle can’t pass through stop line during yellow lamp.(right side of the yellow lamp line)
-
vehicle can’t stop under deceleration and jerk limit.(left side of the pass judge curve)
⇒emergency stop(relax deceleration and jerk limitation in order to observe the traffic regulation)
-
-
optional zone
It’s called “optional zone” which satisfies following conditions:
-
vehicle can pass through stop line during yellow lamp.(left side of the yellow lamp line)
-
vehicle can stop under deceleration and jerk limit.(right side of the pass judge curve)
⇒ stop(autoware selects the safety choice)
-
Module Parameters
Parameter | Type | Description |
---|---|---|
stop_margin |
double | [m] margin before stop point |
tl_state_timeout |
double | [s] time out for detected traffic light result. |
stop_time_hysteresis |
double | [s] time threshold to decide stop planning for chattering prevention |
yellow_lamp_period |
double | [s] time for yellow lamp |
yellow_light_stop_velocity |
double | [m/s] velocity threshold for always stopping at a yellow light. |
enable_pass_judge |
bool | [-] whether to use pass judge |
Flowchart
```plantuml @startuml title modifyPathVelocity start
:calc stop point and insert index;
:find offset segment;
:calculate stop pose;
:calculate distance to stop line;
if (state is APPROACH) then (yes) :set stop velocity; if (distance to stop point is below singed dead line length(-2[m])) then (yes) :change state to GO_OUT; stop elseif (no stop signal) then (yes) :change previous state to PASS; stop elseif (not pass through) then (yes) :insert stop pose; :change previous state to STOP;
File truncated at 100 lines see the full file
Changelog for package autoware_behavior_velocity_traffic_light_module
0.47.0 (2025-08-11)
- 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>
- feat(autoware_behavior_velocity_traffic_light_module): enhance rviz for v2i (#10867) update
- Contributors: Mete Fatih Cırıt, Ryohsuke Mitsudome, Yukinari Hisaki
0.46.0 (2025-06-20)
- Merge remote-tracking branch 'upstream/main' into tmp/TaikiYamada/bump_version_base
- feat(autoware_behavior_velocity_traffic_light_module): add v2i (#10768) add v2i
- Contributors: TaikiYamada4, Yukinari Hisaki
0.45.0 (2025-05-22)
-
Merge remote-tracking branch 'origin/main' into tmp/notbot/bump_version_base
-
feat(behavior_velocity_planner): extend stop line to path bound (#10435)
- extend stop line to path bound
- style(pre-commit): autofix
- change signature of stop line extension function
- add tests for detection area module
- fix test for no stopping area module
- fix tests for traffic light module
- include necessary header
* fix test for detection area module ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
feat(behavior_velocity_planner): only wait for the required subscriptions (#10546)
-
Contributors: Mitsuhiro Sakamoto, TaikiYamada4, Takayuki Murooka
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
-
feat(traffic_light): restart suppression at traffic light stop_point (#10451)
- feat: restart suppression at traffic light stop_point
* style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
Contributors: Ryohsuke Mitsudome, eiki
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)
-
fix(behavior_velocity_planner): planning factor integration (#10292)
- fix: blind_spot
- fix: crosswalk
- fix: detection_area
- fix: intersection
- fix: no_drivable_lane
- fix: no_stopping_area
- fix: run_out
- fix: stop_line
- fix: traffic_light
- fix: virtual_traffic_light
* fix: walk_way ---------
-
fix(stopline, traffic_light): fix planning factor distance value (#10245)
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Name |
---|
eigen |
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged autoware_behavior_velocity_traffic_light_module 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
- Satoshi Ota
- Tomoya Kimura
- Shumpei Wakabayashi
- Mamoru Sobue
Authors
- Satoshi Ota
Traffic Light
Role
Judgement whether a vehicle can go into an intersection or not by traffic light status, and planning a velocity of the stop if necessary. This module is designed for rule-based velocity decision that is easy for developers to design its behavior. It generates proper velocity for traffic light scene.
Limitations
This module allows developers to design STOP/GO in traffic light module using specific rules. Due to the property of rule-based planning, the algorithm is greatly depends on object detection and perception accuracy considering traffic light. Also, this module only handles STOP/Go at traffic light scene, so rushing or quick decision according to traffic condition is future work.
Activation Timing
This module is activated when there is traffic light in ego lane.
Algorithm
- Obtains a traffic light mapped to the route and a stop line correspond to the traffic light from a map information.
-
If a corresponding traffic light signal have never been found, it treats as a signal to pass.
-
If a corresponding traffic light signal is found but timed out, it treats as a signal to stop.
-
- Uses the highest reliability one of the traffic light recognition result and if the color of that was not green or corresponding arrow signal, generates a stop point.
- If an elapsed time to receive stop signal is less than
stop_time_hysteresis
, it treats as a signal to pass. This feature is to prevent chattering.
- If an elapsed time to receive stop signal is less than
- When vehicle current velocity is
-
higher than
yellow_light_stop_velocity
m/s ⇒ pass judge(using next slide formula) -
lower than
yellow_light_stop_velocity
m/s ⇒ stop
-
- When it to be judged that vehicle can’t stop before stop line, autoware chooses one of the following behaviors
-
“can pass through” stop line during yellow lamp => pass
-
“can’t pass through” stop line during yellow lamp => emergency stop
-
Dilemma Zone
-
yellow lamp line
It’s called “yellow lamp line” which shows the distance traveled by the vehicle during yellow lamp.
-
dilemma zone
It’s called “dilemma zone” which satisfies following conditions:
-
vehicle can’t pass through stop line during yellow lamp.(right side of the yellow lamp line)
-
vehicle can’t stop under deceleration and jerk limit.(left side of the pass judge curve)
⇒emergency stop(relax deceleration and jerk limitation in order to observe the traffic regulation)
-
-
optional zone
It’s called “optional zone” which satisfies following conditions:
-
vehicle can pass through stop line during yellow lamp.(left side of the yellow lamp line)
-
vehicle can stop under deceleration and jerk limit.(right side of the pass judge curve)
⇒ stop(autoware selects the safety choice)
-
Module Parameters
Parameter | Type | Description |
---|---|---|
stop_margin |
double | [m] margin before stop point |
tl_state_timeout |
double | [s] time out for detected traffic light result. |
stop_time_hysteresis |
double | [s] time threshold to decide stop planning for chattering prevention |
yellow_lamp_period |
double | [s] time for yellow lamp |
yellow_light_stop_velocity |
double | [m/s] velocity threshold for always stopping at a yellow light. |
enable_pass_judge |
bool | [-] whether to use pass judge |
Flowchart
```plantuml @startuml title modifyPathVelocity start
:calc stop point and insert index;
:find offset segment;
:calculate stop pose;
:calculate distance to stop line;
if (state is APPROACH) then (yes) :set stop velocity; if (distance to stop point is below singed dead line length(-2[m])) then (yes) :change state to GO_OUT; stop elseif (no stop signal) then (yes) :change previous state to PASS; stop elseif (not pass through) then (yes) :insert stop pose; :change previous state to STOP;
File truncated at 100 lines see the full file
Changelog for package autoware_behavior_velocity_traffic_light_module
0.47.0 (2025-08-11)
- 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>
- feat(autoware_behavior_velocity_traffic_light_module): enhance rviz for v2i (#10867) update
- Contributors: Mete Fatih Cırıt, Ryohsuke Mitsudome, Yukinari Hisaki
0.46.0 (2025-06-20)
- Merge remote-tracking branch 'upstream/main' into tmp/TaikiYamada/bump_version_base
- feat(autoware_behavior_velocity_traffic_light_module): add v2i (#10768) add v2i
- Contributors: TaikiYamada4, Yukinari Hisaki
0.45.0 (2025-05-22)
-
Merge remote-tracking branch 'origin/main' into tmp/notbot/bump_version_base
-
feat(behavior_velocity_planner): extend stop line to path bound (#10435)
- extend stop line to path bound
- style(pre-commit): autofix
- change signature of stop line extension function
- add tests for detection area module
- fix test for no stopping area module
- fix tests for traffic light module
- include necessary header
* fix test for detection area module ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
feat(behavior_velocity_planner): only wait for the required subscriptions (#10546)
-
Contributors: Mitsuhiro Sakamoto, TaikiYamada4, Takayuki Murooka
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
-
feat(traffic_light): restart suppression at traffic light stop_point (#10451)
- feat: restart suppression at traffic light stop_point
* style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
Contributors: Ryohsuke Mitsudome, eiki
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)
-
fix(behavior_velocity_planner): planning factor integration (#10292)
- fix: blind_spot
- fix: crosswalk
- fix: detection_area
- fix: intersection
- fix: no_drivable_lane
- fix: no_stopping_area
- fix: run_out
- fix: stop_line
- fix: traffic_light
- fix: virtual_traffic_light
* fix: walk_way ---------
-
fix(stopline, traffic_light): fix planning factor distance value (#10245)
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Name |
---|
eigen |
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged autoware_behavior_velocity_traffic_light_module 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
- Satoshi Ota
- Tomoya Kimura
- Shumpei Wakabayashi
- Mamoru Sobue
Authors
- Satoshi Ota
Traffic Light
Role
Judgement whether a vehicle can go into an intersection or not by traffic light status, and planning a velocity of the stop if necessary. This module is designed for rule-based velocity decision that is easy for developers to design its behavior. It generates proper velocity for traffic light scene.
Limitations
This module allows developers to design STOP/GO in traffic light module using specific rules. Due to the property of rule-based planning, the algorithm is greatly depends on object detection and perception accuracy considering traffic light. Also, this module only handles STOP/Go at traffic light scene, so rushing or quick decision according to traffic condition is future work.
Activation Timing
This module is activated when there is traffic light in ego lane.
Algorithm
- Obtains a traffic light mapped to the route and a stop line correspond to the traffic light from a map information.
-
If a corresponding traffic light signal have never been found, it treats as a signal to pass.
-
If a corresponding traffic light signal is found but timed out, it treats as a signal to stop.
-
- Uses the highest reliability one of the traffic light recognition result and if the color of that was not green or corresponding arrow signal, generates a stop point.
- If an elapsed time to receive stop signal is less than
stop_time_hysteresis
, it treats as a signal to pass. This feature is to prevent chattering.
- If an elapsed time to receive stop signal is less than
- When vehicle current velocity is
-
higher than
yellow_light_stop_velocity
m/s ⇒ pass judge(using next slide formula) -
lower than
yellow_light_stop_velocity
m/s ⇒ stop
-
- When it to be judged that vehicle can’t stop before stop line, autoware chooses one of the following behaviors
-
“can pass through” stop line during yellow lamp => pass
-
“can’t pass through” stop line during yellow lamp => emergency stop
-
Dilemma Zone
-
yellow lamp line
It’s called “yellow lamp line” which shows the distance traveled by the vehicle during yellow lamp.
-
dilemma zone
It’s called “dilemma zone” which satisfies following conditions:
-
vehicle can’t pass through stop line during yellow lamp.(right side of the yellow lamp line)
-
vehicle can’t stop under deceleration and jerk limit.(left side of the pass judge curve)
⇒emergency stop(relax deceleration and jerk limitation in order to observe the traffic regulation)
-
-
optional zone
It’s called “optional zone” which satisfies following conditions:
-
vehicle can pass through stop line during yellow lamp.(left side of the yellow lamp line)
-
vehicle can stop under deceleration and jerk limit.(right side of the pass judge curve)
⇒ stop(autoware selects the safety choice)
-
Module Parameters
Parameter | Type | Description |
---|---|---|
stop_margin |
double | [m] margin before stop point |
tl_state_timeout |
double | [s] time out for detected traffic light result. |
stop_time_hysteresis |
double | [s] time threshold to decide stop planning for chattering prevention |
yellow_lamp_period |
double | [s] time for yellow lamp |
yellow_light_stop_velocity |
double | [m/s] velocity threshold for always stopping at a yellow light. |
enable_pass_judge |
bool | [-] whether to use pass judge |
Flowchart
```plantuml @startuml title modifyPathVelocity start
:calc stop point and insert index;
:find offset segment;
:calculate stop pose;
:calculate distance to stop line;
if (state is APPROACH) then (yes) :set stop velocity; if (distance to stop point is below singed dead line length(-2[m])) then (yes) :change state to GO_OUT; stop elseif (no stop signal) then (yes) :change previous state to PASS; stop elseif (not pass through) then (yes) :insert stop pose; :change previous state to STOP;
File truncated at 100 lines see the full file
Changelog for package autoware_behavior_velocity_traffic_light_module
0.47.0 (2025-08-11)
- 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>
- feat(autoware_behavior_velocity_traffic_light_module): enhance rviz for v2i (#10867) update
- Contributors: Mete Fatih Cırıt, Ryohsuke Mitsudome, Yukinari Hisaki
0.46.0 (2025-06-20)
- Merge remote-tracking branch 'upstream/main' into tmp/TaikiYamada/bump_version_base
- feat(autoware_behavior_velocity_traffic_light_module): add v2i (#10768) add v2i
- Contributors: TaikiYamada4, Yukinari Hisaki
0.45.0 (2025-05-22)
-
Merge remote-tracking branch 'origin/main' into tmp/notbot/bump_version_base
-
feat(behavior_velocity_planner): extend stop line to path bound (#10435)
- extend stop line to path bound
- style(pre-commit): autofix
- change signature of stop line extension function
- add tests for detection area module
- fix test for no stopping area module
- fix tests for traffic light module
- include necessary header
* fix test for detection area module ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
feat(behavior_velocity_planner): only wait for the required subscriptions (#10546)
-
Contributors: Mitsuhiro Sakamoto, TaikiYamada4, Takayuki Murooka
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
-
feat(traffic_light): restart suppression at traffic light stop_point (#10451)
- feat: restart suppression at traffic light stop_point
* style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
Contributors: Ryohsuke Mitsudome, eiki
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)
-
fix(behavior_velocity_planner): planning factor integration (#10292)
- fix: blind_spot
- fix: crosswalk
- fix: detection_area
- fix: intersection
- fix: no_drivable_lane
- fix: no_stopping_area
- fix: run_out
- fix: stop_line
- fix: traffic_light
- fix: virtual_traffic_light
* fix: walk_way ---------
-
fix(stopline, traffic_light): fix planning factor distance value (#10245)
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Name |
---|
eigen |
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged autoware_behavior_velocity_traffic_light_module 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
- Satoshi Ota
- Tomoya Kimura
- Shumpei Wakabayashi
- Mamoru Sobue
Authors
- Satoshi Ota
Traffic Light
Role
Judgement whether a vehicle can go into an intersection or not by traffic light status, and planning a velocity of the stop if necessary. This module is designed for rule-based velocity decision that is easy for developers to design its behavior. It generates proper velocity for traffic light scene.
Limitations
This module allows developers to design STOP/GO in traffic light module using specific rules. Due to the property of rule-based planning, the algorithm is greatly depends on object detection and perception accuracy considering traffic light. Also, this module only handles STOP/Go at traffic light scene, so rushing or quick decision according to traffic condition is future work.
Activation Timing
This module is activated when there is traffic light in ego lane.
Algorithm
- Obtains a traffic light mapped to the route and a stop line correspond to the traffic light from a map information.
-
If a corresponding traffic light signal have never been found, it treats as a signal to pass.
-
If a corresponding traffic light signal is found but timed out, it treats as a signal to stop.
-
- Uses the highest reliability one of the traffic light recognition result and if the color of that was not green or corresponding arrow signal, generates a stop point.
- If an elapsed time to receive stop signal is less than
stop_time_hysteresis
, it treats as a signal to pass. This feature is to prevent chattering.
- If an elapsed time to receive stop signal is less than
- When vehicle current velocity is
-
higher than
yellow_light_stop_velocity
m/s ⇒ pass judge(using next slide formula) -
lower than
yellow_light_stop_velocity
m/s ⇒ stop
-
- When it to be judged that vehicle can’t stop before stop line, autoware chooses one of the following behaviors
-
“can pass through” stop line during yellow lamp => pass
-
“can’t pass through” stop line during yellow lamp => emergency stop
-
Dilemma Zone
-
yellow lamp line
It’s called “yellow lamp line” which shows the distance traveled by the vehicle during yellow lamp.
-
dilemma zone
It’s called “dilemma zone” which satisfies following conditions:
-
vehicle can’t pass through stop line during yellow lamp.(right side of the yellow lamp line)
-
vehicle can’t stop under deceleration and jerk limit.(left side of the pass judge curve)
⇒emergency stop(relax deceleration and jerk limitation in order to observe the traffic regulation)
-
-
optional zone
It’s called “optional zone” which satisfies following conditions:
-
vehicle can pass through stop line during yellow lamp.(left side of the yellow lamp line)
-
vehicle can stop under deceleration and jerk limit.(right side of the pass judge curve)
⇒ stop(autoware selects the safety choice)
-
Module Parameters
Parameter | Type | Description |
---|---|---|
stop_margin |
double | [m] margin before stop point |
tl_state_timeout |
double | [s] time out for detected traffic light result. |
stop_time_hysteresis |
double | [s] time threshold to decide stop planning for chattering prevention |
yellow_lamp_period |
double | [s] time for yellow lamp |
yellow_light_stop_velocity |
double | [m/s] velocity threshold for always stopping at a yellow light. |
enable_pass_judge |
bool | [-] whether to use pass judge |
Flowchart
```plantuml @startuml title modifyPathVelocity start
:calc stop point and insert index;
:find offset segment;
:calculate stop pose;
:calculate distance to stop line;
if (state is APPROACH) then (yes) :set stop velocity; if (distance to stop point is below singed dead line length(-2[m])) then (yes) :change state to GO_OUT; stop elseif (no stop signal) then (yes) :change previous state to PASS; stop elseif (not pass through) then (yes) :insert stop pose; :change previous state to STOP;
File truncated at 100 lines see the full file
Changelog for package autoware_behavior_velocity_traffic_light_module
0.47.0 (2025-08-11)
- 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>
- feat(autoware_behavior_velocity_traffic_light_module): enhance rviz for v2i (#10867) update
- Contributors: Mete Fatih Cırıt, Ryohsuke Mitsudome, Yukinari Hisaki
0.46.0 (2025-06-20)
- Merge remote-tracking branch 'upstream/main' into tmp/TaikiYamada/bump_version_base
- feat(autoware_behavior_velocity_traffic_light_module): add v2i (#10768) add v2i
- Contributors: TaikiYamada4, Yukinari Hisaki
0.45.0 (2025-05-22)
-
Merge remote-tracking branch 'origin/main' into tmp/notbot/bump_version_base
-
feat(behavior_velocity_planner): extend stop line to path bound (#10435)
- extend stop line to path bound
- style(pre-commit): autofix
- change signature of stop line extension function
- add tests for detection area module
- fix test for no stopping area module
- fix tests for traffic light module
- include necessary header
* fix test for detection area module ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
feat(behavior_velocity_planner): only wait for the required subscriptions (#10546)
-
Contributors: Mitsuhiro Sakamoto, TaikiYamada4, Takayuki Murooka
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
-
feat(traffic_light): restart suppression at traffic light stop_point (#10451)
- feat: restart suppression at traffic light stop_point
* style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
Contributors: Ryohsuke Mitsudome, eiki
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)
-
fix(behavior_velocity_planner): planning factor integration (#10292)
- fix: blind_spot
- fix: crosswalk
- fix: detection_area
- fix: intersection
- fix: no_drivable_lane
- fix: no_stopping_area
- fix: run_out
- fix: stop_line
- fix: traffic_light
- fix: virtual_traffic_light
* fix: walk_way ---------
-
fix(stopline, traffic_light): fix planning factor distance value (#10245)
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Name |
---|
eigen |
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged autoware_behavior_velocity_traffic_light_module 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
- Satoshi Ota
- Tomoya Kimura
- Shumpei Wakabayashi
- Mamoru Sobue
Authors
- Satoshi Ota
Traffic Light
Role
Judgement whether a vehicle can go into an intersection or not by traffic light status, and planning a velocity of the stop if necessary. This module is designed for rule-based velocity decision that is easy for developers to design its behavior. It generates proper velocity for traffic light scene.
Limitations
This module allows developers to design STOP/GO in traffic light module using specific rules. Due to the property of rule-based planning, the algorithm is greatly depends on object detection and perception accuracy considering traffic light. Also, this module only handles STOP/Go at traffic light scene, so rushing or quick decision according to traffic condition is future work.
Activation Timing
This module is activated when there is traffic light in ego lane.
Algorithm
- Obtains a traffic light mapped to the route and a stop line correspond to the traffic light from a map information.
-
If a corresponding traffic light signal have never been found, it treats as a signal to pass.
-
If a corresponding traffic light signal is found but timed out, it treats as a signal to stop.
-
- Uses the highest reliability one of the traffic light recognition result and if the color of that was not green or corresponding arrow signal, generates a stop point.
- If an elapsed time to receive stop signal is less than
stop_time_hysteresis
, it treats as a signal to pass. This feature is to prevent chattering.
- If an elapsed time to receive stop signal is less than
- When vehicle current velocity is
-
higher than
yellow_light_stop_velocity
m/s ⇒ pass judge(using next slide formula) -
lower than
yellow_light_stop_velocity
m/s ⇒ stop
-
- When it to be judged that vehicle can’t stop before stop line, autoware chooses one of the following behaviors
-
“can pass through” stop line during yellow lamp => pass
-
“can’t pass through” stop line during yellow lamp => emergency stop
-
Dilemma Zone
-
yellow lamp line
It’s called “yellow lamp line” which shows the distance traveled by the vehicle during yellow lamp.
-
dilemma zone
It’s called “dilemma zone” which satisfies following conditions:
-
vehicle can’t pass through stop line during yellow lamp.(right side of the yellow lamp line)
-
vehicle can’t stop under deceleration and jerk limit.(left side of the pass judge curve)
⇒emergency stop(relax deceleration and jerk limitation in order to observe the traffic regulation)
-
-
optional zone
It’s called “optional zone” which satisfies following conditions:
-
vehicle can pass through stop line during yellow lamp.(left side of the yellow lamp line)
-
vehicle can stop under deceleration and jerk limit.(right side of the pass judge curve)
⇒ stop(autoware selects the safety choice)
-
Module Parameters
Parameter | Type | Description |
---|---|---|
stop_margin |
double | [m] margin before stop point |
tl_state_timeout |
double | [s] time out for detected traffic light result. |
stop_time_hysteresis |
double | [s] time threshold to decide stop planning for chattering prevention |
yellow_lamp_period |
double | [s] time for yellow lamp |
yellow_light_stop_velocity |
double | [m/s] velocity threshold for always stopping at a yellow light. |
enable_pass_judge |
bool | [-] whether to use pass judge |
Flowchart
```plantuml @startuml title modifyPathVelocity start
:calc stop point and insert index;
:find offset segment;
:calculate stop pose;
:calculate distance to stop line;
if (state is APPROACH) then (yes) :set stop velocity; if (distance to stop point is below singed dead line length(-2[m])) then (yes) :change state to GO_OUT; stop elseif (no stop signal) then (yes) :change previous state to PASS; stop elseif (not pass through) then (yes) :insert stop pose; :change previous state to STOP;
File truncated at 100 lines see the full file
Changelog for package autoware_behavior_velocity_traffic_light_module
0.47.0 (2025-08-11)
- 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>
- feat(autoware_behavior_velocity_traffic_light_module): enhance rviz for v2i (#10867) update
- Contributors: Mete Fatih Cırıt, Ryohsuke Mitsudome, Yukinari Hisaki
0.46.0 (2025-06-20)
- Merge remote-tracking branch 'upstream/main' into tmp/TaikiYamada/bump_version_base
- feat(autoware_behavior_velocity_traffic_light_module): add v2i (#10768) add v2i
- Contributors: TaikiYamada4, Yukinari Hisaki
0.45.0 (2025-05-22)
-
Merge remote-tracking branch 'origin/main' into tmp/notbot/bump_version_base
-
feat(behavior_velocity_planner): extend stop line to path bound (#10435)
- extend stop line to path bound
- style(pre-commit): autofix
- change signature of stop line extension function
- add tests for detection area module
- fix test for no stopping area module
- fix tests for traffic light module
- include necessary header
* fix test for detection area module ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
feat(behavior_velocity_planner): only wait for the required subscriptions (#10546)
-
Contributors: Mitsuhiro Sakamoto, TaikiYamada4, Takayuki Murooka
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
-
feat(traffic_light): restart suppression at traffic light stop_point (#10451)
- feat: restart suppression at traffic light stop_point
* style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
Contributors: Ryohsuke Mitsudome, eiki
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)
-
fix(behavior_velocity_planner): planning factor integration (#10292)
- fix: blind_spot
- fix: crosswalk
- fix: detection_area
- fix: intersection
- fix: no_drivable_lane
- fix: no_stopping_area
- fix: run_out
- fix: stop_line
- fix: traffic_light
- fix: virtual_traffic_light
* fix: walk_way ---------
-
fix(stopline, traffic_light): fix planning factor distance value (#10245)
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Name |
---|
eigen |