Skip to content

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
Phase 1: Unprotected left turn with yield and traffic light
Phase 2: Unprotected left turn with yield and traffic light
Phase 3: Unprotected left turn with yield and traffic light
Phase 4: Unprotected left turn with yield and traffic light

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).
OSC2 code: unprotected_left_turn_with_yield_and_traffic_light post-match scenario usage
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])