Skip to content

185. NPC Entering Lane From Left evaluation scenario

In the npc_entering_lane_from_left evaluation scenario, the vehicle_actor starts driving off the road, on the left side of the road, then enters the Ego's lane ahead of the Ego.

Scenario location: $FTX/logiq/scenario_library_post_match/vehicle_merge/npc_entering_lane_from_left

185.1 Actors

The actors associated with this scenario are as follows:

Actor Description Type Depiction
ego Vehicle under test vehicle
vehicle_actor Merging vehicle vehicle
Figure 1: NPC entering lane

185.2 Scenario phases

The phase descriptions are as follows:

185.2.1 off_road_phase

vehicle_actor: The vehicle_actor drives with at least veer_from_lane_threshold off the road.

185.2.2 entering_lane_phase

vehicle_actor: The vehicle_actor is beginning to merge onto the road.

185.2.3 merged_phase

Ego: The Ego is driving in the same lane, behind the vehicle_actor.

vehicle_actor: The vehicle_actor is driving ahead of the Ego in the same lane.

185.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
min_off_road_phase_duration time s Minimum time of the off_road_phase phase 0s
max_off_road_phase_duration time s Maximum time of the off_road_phase phase 3s
min_merged_phase_duration time s Minimum time of the merged_phase phase 0s
max_merged_phase_duration time s Maximum time of the merged_phase phase 3s
veer_from_lane_threshold float Threshold for the vehicle_actor to be considered as veering from the lane 1
minimal_lateral_distance length m Minimum lateral distance from the left lane boundary, should be positive to indicate the left side. For example, 1m means the vehicle left edge is at least 1 meter off the left lane boundary 3m
minimal_distance_ahead_of_ego length m Minimum distance ahead of the Ego the vehicle actor should be while merging onto the road 0.5m
maximal_distance_ahead_of_ego length m Maximum distance ahead of the Ego the vehicle actor should be while merging onto the road 80m
[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

185.4 Metrics

185.4.1 Coverage

Item Description Values Unit/Type
entering_lane_side Vehicle_actor's merging side left, right av_side
[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

185.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

185.5 Log and Error Messages

No scenario-specific log messages.

185.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: npc_entering_lane_from_left post-match scenario usage
import "$FTX/logiq/scenario_library_post_match/vehicle_merge/npc_entering_lane_from_left/npc_entering_lane_from_left_top.osc"

# The following example imports the top file and overrides nine parameters:

match:
    npc_entering_lane_from_left: sut.npc_entering_lane_from_left(min_off_road_phase_duration: 0s,
                                                                 max_off_road_phase_duration: 3s,
                                                                 min_merged_phase_duration: 0s,
                                                                 max_merged_phase_duration: 3s,
                                                                 veer_from_lane_threshold: 1,
                                                                 minimal_lateral_distance: 3m,
                                                                 minimal_distance_ahead_of_ego: 0.5m,
                                                                 maximal_distance_ahead_of_ego: 80m,
                                                                 kinds: [vehicle, cyclist, truck, emergency_vehicle, bus, motorcycle])