162. Unprotected left turn with yield and traffic light evaluation scenario
In the unprotected_left_turn_with_yield_and_traffic_light evaluation scenario, the Ego makes an unprotected left turn at a traffic-light-controlled junction. At a green light, the Ego yields to an approaching vehicle_actor, waiting for it to cross before completing the turn.
Scenario location: $FTX/logiq/scenario_library_post_match/junctions/unprotected_left_turn_with_yield_and_traffic_light
162.1 Actors
The actors associated with this scenario are as follows:
| Actor | Description | Type | Depiction |
|---|---|---|---|
ego |
Vehicle under test | vehicle |
![]() |
vehicle_actor |
Vehicle actor | vehicle |
![]() |
162.2 Scenario phases
The phase descriptions are as follows:
162.2.1 stop_in_green_light
Ego: The Ego stops near the same junction as the vehicle_actor, positioned between
min_offset_from_junction_start and max_offset_from_junction_start from the junction start and gives the right of way to the vehicle_actor.
Its speed ranges from 0 kph up to stopping_car_speed_limit, and it is inside the range of max_offset_from_traffic_light from the traffic light.
The Ego is turning left at the end of the scenario.
vehicle_actor: The vehicle_actor is within the same junction as the Ego, positioned between
min_offset_from_junction_start and max_offset_from_junction_start from the junction start
162.2.2 sut_yield_to_npc
Ego: At the start of the phase, the Ego is positioned between min_offset_from_junction_start and max_offset_from_junction_start from the
junction start, in the same junction as the vehicle_actor, which is approaching from a different entry, and gives the right of way to the vehicle_actor.
vehicle_actor: The vehicle_actor is inside the junction.
162.2.3 other_car_finishes_crossing_junction
Ego: The Ego gives the right of way to the vehicle_actor.
vehicle_actor: The vehicle_actor is in the shared area where its path intersects with the Ego's path inside the junction,
positioned between min_offset_from_junction_end and max_offset_from_junction_end from the junction end.
162.2.4 sut_turn_left
Ego: The Ego is inside the junction, turning left, and maintains a distance of at least min_offset_from_junction_start
from the junction start throughout the entire phase.
162.3 Configuration parameters
Use these parameters to constrain the scenario. If you do not set a specific value, the default value will be used.
| Parameter | Type | Unit | Description | Default value |
|---|---|---|---|---|
max_offset_from_traffic_light |
length | m | Maximum forward distance within which a traffic lights should be detected ahead of the Ego | 10m |
[Click] The input items inherited from the sut.logiq_crossing_path_scenario scenario are as follows:
| Parameter | Type | Unit | Description | Default value |
|---|---|---|---|---|
encroachment_start_buffer |
float | 5 | Specify a part from the beginning of the encroachment area that will be excluded from it (i.e. in this area, the modifier will still return false). For example: start_buffer 0.25 means only the last 75% of the encroachment will be considered as part of the encroachment | 0.25 |
encroachment_end_buffer |
float | 5 | Specify a part from the end of the the encroachment area that will be excluded from it(i.e. in this area, the modifier will still return false). For example: end_buffer 0.25 means only the first 75% of the encroachment will be considered as part of the encroachment | 0.25 |
[Click] The input items inherited from the sut.logiq_yield_scenario scenario are as follows:
| Parameter | Type | Unit | Description | Default value |
|---|---|---|---|---|
max_offset_from_junction_start |
length | m | Maximum distance from an actor to the junction start | 10m |
ref_car_max_distance_from_junction |
length | m | Maximum distance (in length units) from the junction for the reference vehicle to be considered inside the junction | 10m |
stopping_car_speed_limit |
speed | kph | Maximum speed of an actor to be considered as stopped | 2kph |
[Click] The input items inherited from the sut.logiq_sut_and_npc_in_junction_scenario scenario are as follows:
| Parameter | Type | Unit | Description | Default value |
|---|---|---|---|---|
min_offset_from_junction_start |
length | m | Minimum offset from the junction start; negative values indicate positions behind the junction start | -10m |
min_offset_from_junction_end |
length | m | Minimum offset from the junction end; negative values indicate positions behind the junction end | -5m |
max_offset_from_junction_end |
length | m | Maximum offset from the junction end; positive values indicate positions after the junction end | 5m |
[Click] The input items inherited from the sut.logiq_base_vehicle_scenario scenario are as follows:
| Parameter | Type | Unit | Description | Default value |
|---|---|---|---|---|
kinds |
list of evaluation_object_kind | — | Possible kinds of vehicle_actor in the scenario | — |
162.4 Metrics
162.4.1 Coverage
| Item | Description | Values | Unit/Type |
|---|---|---|---|
traversal_relative_direction |
Traverse direction of the vehicle_actor relative to the Ego | parallel_to_right, parallel_to_parallel, parallel_to_left, parallel_to_opposite, right_to_parallel, right_to_left, right_to_opposite, right_to_right, opposite_to_opposite, opposite_to_right, opposite_to_left, opposite_to_parallel, left_to_parallel, left_to_right, left_to_opposite, left_to_left, unknown | traversal_relative_direction |
[Click] The coverage items inherited from the sut.logiq_crossing_path_scenario scenario are as follows:
| Item | Description | Values | Unit/Type |
|---|---|---|---|
PET_between_sut_and_npc |
Minimum time between the first vehicle exiting an encroachment point and the second vehicle entering that point. Note: Compound physical objects are not fully supported, and may yield incorrect results |
[0..10), every: 1.0 | s |
[Click] The coverage items inherited from the sut.logiq_base_vehicle_scenario scenario are as follows:
| Item | Description | Values | Unit/Type |
|---|---|---|---|
vehicle_speed_at_start |
Agent speed at start of the scenario | [0..150), every: 10.0 | mph |
[Click] The coverage items inherited from the sut.logiq_base_scenario scenario are as follows:
| Item | Description | Values | Unit/Type |
|---|---|---|---|
ego_speed_at_start |
Ego longitudinal speed at the start of the scenario | [0..160), every: 10.0 | mph |
162.4.2 KPI
[Click] The KPIs inherited from the sut.logiq_base_vehicle_scenario scenario are as follows:
| Item | Description | Values | Unit/Type |
|---|---|---|---|
vehicle_object_kind |
Object kind as derived from Foretify | object, person, cyclist, vehicle, truck, trailer, fod, animal, sign, bus, motorcycle, emergency_vehicle, stationary_vehicle | evaluation_object_kind |
vehicle_tracking_id |
Tracking id of the agent as described in the object list data. If the data comes from a generative run, the UID will be used | string | |
vehicle_avg_speed |
Agent average longitudinal speed throughout the scenario | mph | |
vehicle_max_speed |
Agent maximum speed throughout the scenario | mph | |
vehicle_min_speed |
Agent minimum speed throughout the scenario | mph | |
vehicle_max_lon_acceleration |
Agent maximum longitudinal acceleration throughout the scenario | mpsps | |
vehicle_min_lon_acceleration |
Agent minimum longitudinal acceleration throughout the scenario | mpsps | |
ego_min_ttc_to_vehicle |
Minimum time to collision with the reference vehicle throughout the scenario | s | |
ego_min_mttc_to_vehicle |
Minimum modified time to collision with the reference vehicle throughout the scenario | s |
[Click] The KPIs inherited from the sut.logiq_base_scenario scenario are as follows:
| Item | Description | Values | Unit/Type |
|---|---|---|---|
ego_max_lon_acceleration |
Ego maximum acceleration throughout the scenario | mpsps | |
ego_min_lon_acceleration |
Ego minimum acceleration throughout the scenario | mpsps | |
ego_min_speed |
Ego minimum longitudinal speed throughout the scenario | mph | |
ego_avg_speed |
Ego average longitudinal speed throughout the scenario | mph | |
ego_max_speed |
Ego maximum longitudinal speed throughout the scenario | mph | |
ego_distance_traveled_during_interval |
Total distance traveled by the Ego during the interval | m | |
interval_duration |
Interval duration of the scenario | s |
162.5 Log and Error Messages
No scenario-specific log messages.
162.6 Usage
Import the post-match scenario top file and register the matcher in a match: block, overriding only the parameters you need. Any omitted parameters use the defaults listed in Configuration parameters.
The matcher is also available through the shared post-match import bundle:
$FTX/logiq/customers/base/osc/post_match_scenarios.osc$FTX/evaluate/library/scenarios/scenario_library_post_match.osc(evaluation builds).
import "$FTX/logiq/scenario_library_post_match/junctions/unprotected_left_turn_with_yield_and_traffic_light/unprotected_left_turn_with_yield_and_traffic_light_top.osc"
# The following example imports the top file and overrides ten parameters:
match:
unprotected_left_turn_with_yield_and_traffic_light: sut.unprotected_left_turn_with_yield_and_traffic_light(max_offset_from_traffic_light: 10m,
encroachment_start_buffer: 0.25,
encroachment_end_buffer: 0.25,
max_offset_from_junction_start: 10m,
ref_car_max_distance_from_junction: 10m,
stopping_car_speed_limit: 2kph,
min_offset_from_junction_start: -10m,
min_offset_from_junction_end: -5m,
max_offset_from_junction_end: 5m,
kinds: [vehicle, cyclist, truck, emergency_vehicle, bus, motorcycle])

