Skip to content

146. Vehicle lane hugger

Scenario location: $FTX_PACKAGES/base_scenarios/scenarios/adjacent_vehicles/vehicle_lane_hugger/

In the vehicle_lane_hugger scenario, the other vehicle driving in the same direction in the adjacent lane to the Ego approaches the line dividing the two lanes.

146.1 Actors

The actors associated with this scenario are as follows:

Actor Description Type Depiction
ego Vehicle under test vehicle
lane_hugger_vehicle Vehicle that drives close to the line dividing two lanes vehicle
Figure 1: Lane hugger vehicle encroaching the Ego's lane

146.2 Prerequisites

Environmental requirements: A road with at least two lanes.

146.3 Scenario essence

146.3.1 phase_essence

146.3.1.1 phase_essence_vehicle_approaching_ego

Ego: The Ego drives in the same lane along the road.

lane_hugger_vehicle: Drives in the lane_hugger_side lane, from an initial position of intent_lane_hugger_vehicle_position_at_phase_essence_vehicle_approaching_ego_start to a final position of intent_assist_lane_hugger_vehicle_position_at_phase_essence_vehicle_approaching_ego_end.

146.3.1.2 phase_essence_vehicle_driving_closely_to_ego

Ego: In this phase the Ego drives in the same lane along the road.

lane_hugger_vehicle: At the start of the phase, the lane_hugger_vehicle drives in the lane_hugger_side lane of the Ego and is positioned at intent_lane_hugger_vehicle_position_at_phase_essence_vehicle_approaching_ego_start. By the end of this phase, it is positioned at intent_assist_lane_hugger_vehicle_position_at_phase_essence_vehicle_approaching_ego_end, maintaining a lateral position of intent_lane_hugger_vehicle_lateral_at_phase_essence_vehicle_driving_closely_to_ego_end along the road.

146.4 Scenario Main phases

The test scenario vehicle_lane_hugger_main is structured into three distinct phases:

146.4.1 phase_ego_warm_up

The phase_ego_warm_up phase invokes the neighbor_vehicles_ego_warm_up scenario.

146.4.2 phase_essence

The phase_essence invokes the phase_essence.

146.4.3 phase_post

The phase_post invokes the neighbor_vehicles_post scenario.

146.5 Parameters

The paths to the CSV file and the main CSV file are as follows:

$FTX_PACKAGES/base_scenarios/test_suites/test_suite_definitions/adjacent_vehicles/vehicle_lane_hugger.csv
$FTX_PACKAGES/base_scenarios/test_suites/test_suite_definitions/adjacent_vehicles/vehicle_lane_hugger_main.csv
$FTX_PACKAGES/base_scenarios/test_suites/test_suite_definitions/adjacent_vehicles/ego_drive_and_neighbor.csv
Parameter Description Range
gen_lane_hugger_side The side of the Ego that the lane_hugger_vehicle hugs left, right
gen_lane_hugger_vehicle_speed_at_start The lane_hugger_vehicle speed at the start of the scenario [0..150]kph
gen_vehicle_closing_in_from_side The side on which the lane_hugger_vehicle will approach the Ego left, right, center
gen_vehicle_approaching_ego_lateral_distance The lane_hugger_vehicle's lateral distance during the approaching phase [0..0.2]m
gen_lane_hugger_vehicle_min_distance_to_ego Min distance between the lane_hugger_vehicle and the Ego [-2..0]m
gen_lane_hugger_vehicle_max_distance_to_ego Max distance between the lane_hugger_vehicle and the Ego [0..2]m
gen_ego_speed_at_start Input speed of the Ego at the start of the scenario [0..150]kph

The scenario sut.ego_drive_and_neighbor is included in the scenario sut.vehicle_lane_hugger, with the option to constrain the following input parameters:

Parameter Description Range
gen_neighbor_vehicle_rel_thw_to_ego_at_start Relative time gap of the neighbor_vehicle to the Ego at the start [-5..5]s
gen_neighbor_vehicle_rel_thw_to_ego_at_end Relative time gap of the neighbor_vehicle to the Ego at the end [-5..5]s
gen_neighbor_vehicle_side Generated side of the neighbor_vehicle relative to the Ego left, right
gen_neighbor_vehicle_speed Speed of the neighbor_vehicle at the start of the scenario [0..150]kph
gen_ego_speed_at_start Input speed of the Ego at the start of the scenario [0..150]kph

146.6 Metrics

Metrics collected during test execution are given below.

146.6.1 Coverage

The coverage metrics are given below.

146.6.1.1 Coverage items

The multi-dimensional situations captured during the test execution are as follows:

Item Description Range Unit/Type
ego_min_lat_distance_to_lane_hugger_vehicle Minimum lateral distance between cars throughout the scenario [0..0.2), [0.2..0.4), [0.4..0.6), [0.6..0.8), [0.8..1), [1..1.2), [1.2..1.4), [1.4..1.6), [1.6..1.8), [1.8..2), [2..2.2), [2.2..2.4), [2.4..2.6), [2.6..2.8), [2.8..3), [3..3.20) m
lane_hugger_min_lat_distance_to_lane Minimum lateral distance between the vehicle and the lane border throughout the scenario [0..0.1), [0.1..0.2), [0.2..0.3), [0.3..0.4), [0.4..0.5), [0.5..0.6), [0.6..0.7), [0.7..0.8), [0.8..0.9), [0.9..1) m
hug_duration Duration of lane hugging (s). Measured from the moment the lane hugger vehicle is first close to the lane border (lateral distance from border is at most 10% of the lane width) [0..2), [2..4), [4..6), [6..8), [8..10) s
lane_hugger_vehicle_min_distance_to_ego Min distance between the lane_hugger_vehicle and the Ego [-2..0), every: 0.5 m
lane_hugger_vehicle_max_distance_to_ego Max distance between the lane_hugger_vehicle and the Ego [0..2), every: 0.5 m
road_curvature Curvature of the road other, straightish, soft_left, hard_left, soft_right, hard_right curvature
lane_hugger_vehicle_kind Other lane hugger vehicle category sedan, van, bus, box_truck, semi_trailer_truck, full_trailer_truck, motorcycle, bicycle vehicle_category
gen_lane_hugger_side The side of the Ego that the lane_hugger_vehicle hugs left, right av_side
gen_lane_hugger_vehicle_speed_at_start The lane_hugger_vehicle speed at the start of the scenario [0..150), every: 10.0 kph
lane_hugger_vehicle_speed_at_start The lane_hugger_vehicle speed at the start of the scenario [0..150), every: 10.0 kph
gen_vehicle_closing_in_from_side The side on which the lane_hugger_vehicle will approach the Ego left, right, center line
gen_vehicle_approaching_ego_lateral_distance The lane_hugger_vehicle's lateral distance during the approaching phase [0..0.2), every: 0.1 m
gen_lane_hugger_vehicle_min_distance_to_ego Min distance between the lane_hugger_vehicle and the Ego [-2..0), every: 0.5 m
gen_lane_hugger_vehicle_max_distance_to_ego Max distance between the lane_hugger_vehicle and the Ego [0..2), every: 0.5 m
lane_hugger_side The side of the Ego that the lane_hugger_vehicle hugs left, right av_side
vehicle_closing_in_from_side The side on which the lane_hugger_vehicle will approach the Ego left, right, center line
vehicle_approaching_ego_lateral_distance The lane_hugger_vehicle's lateral distance during the approaching phase [0..0.2), every: 0.1 m
[Click] The coverage items inherited from the sut.generic_base scenario are as follows:
Item Description Range Unit/Type
gen_ego_speed_at_start Input speed of the Ego at the start of the scenario [0..150), every: 10.0 kph
ego_speed_at_start Actual speed of the Ego at the start of the scenario [0..150), every: 10.0 kph
[Click] The scenario sut.ego_drive_and_neighbor is included in the scenario sut.vehicle_lane_hugger, with the following coverage items:
Item Description Range Unit/Type
-- -- -- --
[Click] The scenario sut.adjacent_vehicles_family_base is included in the scenario sut.ego_drive_and_neighbor, with the following coverage items:
Item Description Range Unit/Type
neighbor_vehicle_speed_at_passing_by Speed of the neighbor_vehicle while the two cars are passing by [0..150), every: 10.0 kph
gen_neighbor_vehicle_rel_thw_to_ego_at_start Relative time gap of the neighbor_vehicle to the Ego at the start [-5..5), every: 1.0 s
gen_neighbor_vehicle_rel_thw_to_ego_at_end Relative time gap of the neighbor_vehicle to the Ego at the end [-5..5), every: 1.0 s
gen_neighbor_vehicle_side Generated side of the neighbor_vehicle relative to the Ego left, right av_side
gen_neighbor_vehicle_speed Speed of the neighbor_vehicle at the start of the scenario [0..150), every: 10.0 kph
neighbor_vehicle_rel_speed_to_ego_at_start_cover Relative speed of the neighbor_vehicle to the Ego at the start of the scenario [-20..110), every: 20.0 kph
ego_rel_lon_dist_to_neighbor_vehicle_at_start Relative longitudinal distance from the Ego to the neighbor_vehicle at the start of the scenario [-6..38), every: 4.0 m
neighbor_vehicle_lat_offset_at_start Lateral lane offset of the neighbor_vehicle at the start of the scenario [-1..1), every: 0.5 m
ego_lat_offset_at_start Lateral lane offset of the Ego at the start of the scenario [-1..1), every: 0.5 m
neighbor_vehicle_side Side of the neighbor_vehicle relative to the Ego left, right av_side
neighbor_vehicle_speed Speed of the neighbor_vehicle [0..150), every: 10.0 kph
neighbor_vehicle_rel_speed_to_ego_at_end_cover Relative speed of the neighbor_vehicle to the Ego at the end of the scenario [-20..110), every: 20.0 kph
neighbor_vehicle_lat_offset_at_end Lateral lane offset of the neighbor_vehicle at the end of the scenario [-1..1), every: 0.5 m
ego_lat_offset_at_end Lateral lane offset of the Ego at the end of the scenario [-1..1), every: 0.5 m
ego_rel_lon_time_dist_to_neighbor_vehicle_at_start Time distance from the Ego to the neighbor_vehicle at the start of the scenario [1..5), every: 0.5 s
max_road_curvature_radius Maximum curvature of the road [0..100), [100..150), [150..200), [200..300), [300..400), [400..600), [600..800), [800..1000), [1000..1200), [1200..1400), [1400..1600), [1600..1800), [1800..2000), [2000..2400), [2400..2800), [2800..3200), [3200..3600), [3600..4000), [4000..5000), [5000..6000), [6000..8000), [8000..10000), [10000..20000) m
neighbor_vehicle_rel_thw_to_ego_at_start Relative time gap of the neighbor_vehicle to the Ego at the start [-5..5), every: 1.0 s
neighbor_vehicle_rel_thw_to_ego_at_end Relative time gap of the neighbor_vehicle to the Ego at the end [-5..5), every: 1.0 s

146.6.1.2 Cross coverage items

The test execution data for the combination of multiple coverage items is as follows:

Item Description Referred coverage items
-- -- --
[Click] The cross coverage items inherited from the sut.generic_base scenario are as follows:
Item Description Referred coverage items
-- -- --
[Click] The scenario sut.ego_drive_and_neighbor is included in the scenario sut.vehicle_lane_hugger, with the following cross coverage items:
Item Description Referred coverage items
-- -- --
[Click] The scenario sut.adjacent_vehicles_family_base is included in the scenario sut.ego_drive_and_neighbor, with the following cross coverage items:
Item Description Referred coverage items
cross_ego_rel_lon_dist_to_neighbor_vehicle_at_start_X_neighbor_vehicle_rel_speed_to_ego_at_start_cover Cross cover of relative distance to neighbor_vehicle's relative speed ego_rel_lon_dist_to_neighbor_vehicle_at_start, neighbor_vehicle_rel_speed_to_ego_at_start_cover

146.6.2 KPI

The key performance indicators are given below.

146.6.2.1 Record items

The performance metrics and the data items captured during the test execution are as follows:

Item Description Range Unit/Type
ego_lat_distance_to_lane_hugger_vehicle_record Minimum absolute lateral distance between the two cars (meters). Measured only when the longitudinal distance from Ego car to other car is in the [gen_lane_hugger_vehicle_min_distance_to_ego..gen_lane_hugger_vehicle_max_distance_to_ego] range. m
lane_hugger_vehicle_max_lat_acceleration_record Maximum lateral acceleration of other car (mpsps). mpsps
[Click] The KPIs inherited from the sut.generic_base scenario are as follows:
Item Description Range Unit/Type
-- -- -- --
[Click] The scenario sut.ego_drive_and_neighbor is included in the scenario sut.vehicle_lane_hugger, with the following KPIs:
Item Description Range Unit/Type
-- -- -- --
[Click] The scenario sut.adjacent_vehicles_family_base is included in the scenario sut.ego_drive_and_neighbor, with the following KPIs:
Item Description Range Unit/Type
mean_road_curvature Mean curvature of the road on which the Ego is driving, calculated as the average curvature of the road m
max_road_curvature Maximum curvature of the road m
ego_lat_dist_to_neighbor_vehicle_at_passing_by Lateral center-to-center distance between the Ego and the neighbor_vehicle when passing each other m
neighbor_vehicle_length Length of the neighbor_vehicle m
neighbor_vehicle_width Width of the neighbor_vehicle m
neighbor_vehicle_height Height of the neighbor_vehicle m

146.6.3 Checks

The captured problematic behavior or conditions are as follows:

Default severity Description Issue kind Threshold
error The scenario fails if the lane_hugger_vehicle does not get laterally closer to the Ego 1m
error The lane_hugger_vehicle performed lane change adjacent_vehicle_lane_change lane_hugger_vehicle switch lane end bool is true