How the Automatic Lane Change (ALC) Decision Model works

Note: You must have an automotive license.

The Automatic Lane Change (ALC) is a decision model for autonomous vehicle lane changes. Vehicles using this model perform lane changes voluntarily and independently based on predefined decision parameters. The ALC model does not apply to mandatory lane changes (Decision models for lane changes).

The applicable General behavior, either the Slow lane rule or Left side rule must be selected in accordance with road traffic regulations. This rule is typically mandated on highways.

The Adaptive Cruise Control (ACC) system must be activated, as it regulates vehicle distance and speed (Editing the driving behavior parameter car following model).

The ALC decision model aligns with the requirements of UN Regulation No 157 regarding the Automated Lane Keeping Systems Uniform provisions concerning the approval of vehicles with regards to Automated Lane Keeping Systems (ALKS) [2021/389].

Topics

Notations and definitions

The following terms are used:

ego

Ego vehicle

o

The original lane in which the ego vehicle is traveling when it initiates an automatic lane change

d

The destination lane to which the ego vehicle intends to change in order to drive faster or slower

f

The immediate lead vehicle, i.e., the next vehicle in front as seen from the front edge of the ego vehicle

r

The next trailing vehicle in the direct line of sight of the front edge of the ego vehicle

Longitudinal distance between the rear edge of the lead vehicle and the front edge of the trailing vehicle

Safety distance of the ego vehicle when stationary

v

Speed

Desired speed of the ego vehicle

Time-to-collision

Time period required by the ego vehicle to reach the rear edge of the lead vehicle. The standstill distance is subtracted. The difference in speed between the two vehicles is included in the Time-to-collision. If the ego vehicle is slower than or equal to the lead vehicle, Time-to-collision is not defined.

Threshold for the duration of the overtaking maneuver. Default value: 11 seconds. If the ego vehicle requires more time to overtake the lead vehicle d,f, it prefers to change lanes.

Gap time

Duration required to cover a given distance. Only the absolute speed is used to calculate the Gap time.

Rules of the Automatic Lane Change (ALC) decision model

Ego vehicle decides on lane change

Relevant situations

Ego vehicle wants to change to the neighboring lane to drive faster

Vissim goes through two decision steps:

1.  Vissim checks whether the conditions for a lane change of the ego vehicle are met and whether there is a desire to change lanes.

2.  Vissim determines whether the ego vehicle can carry out the lane change safely.

Condition for the desire to change lanes

The ego vehicle wants to change to the neighboring lane to drive faster if it detects a lead vehicle (o,f) in its current lane and the following condition for a lane change is fulfilled:

Thereby the following applies:

Distance between the ego vehicle and the rear edge of the immediate lead vehicle (o,f)

Total safety distance. τ corresponds to the attribute ACC-MinGapTime (Defining ACC model parameters).

τLC: Duration of the lane change. τLC corresponds to the attribute Lane change duration distribution.

γ: Parameters with a default value of 2.

: Threshold value, default: 1.5 m⁄s =5.4 km⁄h.

This expresses the condition for a lane change as follows:

If the ego vehicle is sufficiently far from the immediate lead vehicle (o,f) to consider a lane change, and if it is approaching this vehicle quickly enough, the condition for the desire to change lanes is reduced to:

with:

As a result, the ego vehicle changes lanes when it is driving at its desired speed and within seconds would reach the safety distance to the lead vehicle (o,f)).

However, if the ego vehicle is approaching the lead vehicle only relatively slowly, the condition for a lane change only becomes effective when the ego vehicle has almost reached the safety distance. If this is the case, the condition is reduced to:

This also applies if the ego vehicle briefly falls below the safety distance, for example, because another vehicle cuts into the gap. This condition also states that the ego vehicle will only have a desire to change lanes if it is driving, or intends to drive, at least faster than the lead vehicle.

The conditions of lane o, on which the ego vehicle is driving when it intends to initiate the automatic lane change, apply.

Ensuring a safe lane change

Vissim determines whether the ego vehicle can carry out the lane change safely. Even if the ego vehicle has a desire to change lanes, it will not perform the lane change if any of the following waiting conditions are met:

Waiting conditions

The values of lane o, on which the ego vehicle is originally driving when it intends to initiate the lane change, apply.

Waiting condition: Distance to trailing vehicle in adjacent lane too short

If the trailing vehicle (d,r) in the adjacent lane is too close, the gap time for the lane change is too small, and the ego vehicle will not perform the lane change as long as the following condition applies:

When estimating the gap time to its trailing vehicle (d,r), the ego vehicle subtracts the standstill distance:

The threshold has a default value of .

Vissim does not apply this waiting condition if or if the ego vehicle does not detect a trailing vehicle in the adjacent lane.

Waiting condition: Distance to lead vehicle in adjacent lane too short

If the lead vehicle (d,r) in the adjacent lane is too close, the gap time for the lane change is too small. Therefore, the ego vehicle does not change lanes as long as the following condition applies:

When estimating the gap time to its trailing vehicle (d,r), the ego vehicle subtracts the standstill distance:

The threshold has a default value of .

As long as the ego vehicle is stationary, it does not initiate a lane change.

Waiting condition: Trailing vehicle in adjacent lane reaches lead vehicle before ego vehicle

The lead vehicle in the ego vehicle’s adjacent lane is reached by its own trailing vehicle before it can be reached and overtaken by the ego vehicle. The ego vehicle does not perform the lane change as long as the following condition applies:

The ego vehicle estimates the time the trailing vehicle will need to reach the lead vehicle:

Thereby the following applies:

Time required by the ego vehicle to reach the rear edge of the lead vehicle. The standstill distance is subtracted.

E

Enhanced

Vissim assumes in the calculation that the ego vehicle accelerates from its current speed to its desired speed if it were to begin the lane change in this time step. The acceleration used is the free acceleration of the ACC controller. This corresponds to the attribute ACC_a_cc_max in the driving behavior settings (Defining ACC model parameters):

Thereby the following applies:

Time required by the ego vehicle:

  • either until the ego vehicle accelerates to or
  • if the ego vehicle is unable to accelerate to before reaching the rear edge of the lead vehicle, the standstill distance is subtracted:

Thereby the following applies:

and:

: Time the vehicle drives at a constant speed until it reaches the lead vehicle. The standstill distance is subtracted. If the ego vehicle is still accelerating when it reaches the lead vehicle, then: :

If the ego vehicle is already driving at least at the desired speed Vissim assumes that the ego vehicle maintains its current speed. The following applies:

Waiting condition: Trailing vehicle in adjacent lane would have to brake sharply

If the trailing vehicle (d,r) in the adjacent lane would have to brake sharply, the ego vehicle will not perform the lane change as long as the following condition applies:

corresponds to the attribute ACC_a_d_r_acc in the driving behavior settings Default value . If If the deceleration of the trailing vehicle in the adjacent lane is too high, the ego vehicle does not change lanes.

The ego vehicle estimates the acceleration the trailing vehicle would need to allow a safe lane change:

The trailing vehicle (d,r) in the adjacent lane is assumed to aim for a position approximately meters upstream of the rear edge of the ego vehicle. Where:

With the following default values:

: Time period that ensures the minimum distance between the ego vehicle and the trailing vehicle (d,r). This minimum distance uses the rear edge of the vehicle as a reference point.

Time period (in seconds) after the ego vehicle has started the lane change and the deceleration of the trailing vehicle (d,r) is determined.

ensures that the ego vehicle maintains the required safety distance. Based on the standstill safety distance of the ego vehicle, Vissim estimates the standstill safety distance of the trailing vehicle in the adjacent lane.

The ego vehicle does not change lanes as long as the following condition applies:

Vissim does not apply this waiting condition if or if the ego vehicle does not detect a trailing vehicle in the adjacent lane.

Waiting condition: Ego vehicle does not detect a trailing vehicle in the adjacent lane within sensor range

The waiting condition described above under Waiting condition: Trailing vehicle in adjacent lane would have to brake sharply (Waiting condition: Trailing vehicle in adjacent lane would have to brake sharply) is also applied in this situation:

The ego vehicle does not detect any trailing vehicle in the adjacent lane within the range of its sensors. However, the ego vehicle must take into account that a potential trailing vehicle may be outside the sensor range and could be approaching at high speed.

Where:

: Sensor range within which the ego vehicle can detect a trailing vehicle in the adjacent lane. This corresponds to the attribute Look back distance (maximum).

: Speed of the potential vehicle. Where : is the maximum speed of the ego vehicle. This corresponds to the attribute of the link ACC_v_limit, on which the front edge of the ego vehicle is located.

The following parameters define the excessive speed of a potential trailing vehicle that the Automatic Lane Change (ALC) decision model should take into account at most:

: corresponds to the attribute ALC_delta_v_limit, relative to the permitted maximum speed. Default value:

: Corresponds to the attribute ALC_v_limit_max, absolute in relation to the permitted maximum speed. Default value:

This condition ensures that the ego vehicle accounts for the possibility of a fast trailing vehicle in the adjacent lane, even if it has not yet detected one. As a result, the ego vehicle does not change lanes, even if the lane appears to be free. The ego vehicle can initiate a lane change once the trailing vehicle enters the sensor range, is detected by the ego vehicle, and is approaching at a sufficiently low speed. In this case, the ego vehicle checks whether the trailing vehicle would have to brake too sharply if the ego vehicle were to change lanes (Waiting condition: Trailing vehicle in adjacent lane would have to brake sharply).

If the trailing vehicle enters the sensor range and is traveling significantly faster than , abort conditions take effect to prevent a collision (Ego vehicle aborts lane change).

Waiting condition: Ego vehicle would have to brake more strongly on the target lane than on the original lane

The ego vehicle does not change lanes if, on the target lane, it would have to brake more strongly due to the adjacent lead vehicle than it would have to brake on its original lane due to the lead vehicle :

These accelerations are based on the ACC target braking controller (Target braking controller manages targeted deceleration maneuvers of the vehicle). In the ACC target braking controller, the following simplifications are made:

Waiting condition: Ego vehicle would reach the lead vehicle in the adjacent lane before completing the lane change or would have to brake too strongly

The ego vehicle also does not change lanes in the following situations:

  • If the ego vehicle would reach the lead vehicle in the adjacent lane during the lane change
  • If the ego vehicle would have to brake too strongly on the adjacent lane

Where : Time required by the ego vehicle to reach the lead vehicle in the adjacent lane. The standstill distance is subtracted from this value. The accelerations of the vehicles are taken into account:

  • The ego vehicle drives with constant acceleration a.
  • The lead vehicle in the adjacent lane drives with constant acceleration .
Time calculation

The time is calculated:

Where:

: Time, excluding the standstill distance, that the ego vehicle needs to reach the lead vehicle in the adjacent lane. In contrast to the accelerations of the vehicles are not taken into account in this time calculation.

Time required by the lead vehicle in the adjacent lane to come to a standstill.

Thus, the three cases in cover the following situations:

  • Case 1: The lead vehicle in the adjacent lane is moving when it is reached by the ego vehicle
  • Case 2: The lead vehicle in the adjacent lane is stationary when it is reached by the ego vehicle
  • Case 3: The ego vehicle has a lower acceleration than the lead vehicle in the adjacent lane and does not reach it. In this case, the waiting condition does not apply.
Calculate specific acceleration of the ego vehicle

Next, the specific acceleration for the ego vehicle is calculated. This is based on the ACC target braking controller (Target braking controller manages targeted deceleration maneuvers of the vehicle), when the ego vehicle approaches the lead vehicle:

  • If the lead vehicle comes to a stop while in motion, corresponds to the term (in the ACC target braking controller: ).
  • If the lead vehicle does not come to a stop while in motion, corresponds to the term (in the ACC target braking controller: ).

In addition, the ACC target braking controller applies the following simplifications:

Time calculation

For the time , which the ego vehicle requires to reach the standstill distance to the lead vehicle the following applies:

The conditions used to distinguish the cases described above in are identical to the conditions in the description of the ACC target braking controller (Target braking controller manages targeted deceleration maneuvers of the vehicle).

Time calculation

: Time the ego vehicle would need, if it were braking with to reach the lead vehicle :

Where: : Accepted deceleration of the ego vehicle. Default value .

The ego vehicle does not change lanes, if:

Where : is the duration of the lane change. It corresponds to the attribute Lane change duration distribution.

Effect of the waiting condition

The ego vehicle does not change lanes:

  • if it would reach the adjacent lead vehicle during the lane change. In this case:
  • if it would have to brake more strongly on the target lane than . Where and corresponds to . This ensures that the ego vehicle accepts stronger deceleration on the original lane rather than changing to the adjacent lane, where it would have to brake much more sharply and might even be forced to stop.
and may be undefined

and are not defined in all cases, for example, when the ego vehicle cannot catch up with the lead vehicle. In such cases, this waiting condition is not applied.

Ego vehicle wants to change to the adjacent lane to drive more slowly

If a slow lane rule applies, the ego vehicle wants to move to the right lane. If a left side rule applies, the ego vehicle wants to move to the left lane.

Vissim performs the following two decision steps:

1.  Vissim checks whether the conditions for a lane change of the ego vehicle are met and whether there is a desire to change lanes.

2.  Vissim determines whether the ego vehicle can carry out the lane change safely.

Check condition for the desire to change lanes

Threshold for the duration of the lane change

If the ego vehicle would take too long to overtake the lead vehicle , it wants to change lanes. Where:

Time-to-collision period, the time the ego vehicle needs to catch up to the rear edge of the lead vehicle. The standstill distance is subtracted from this value:

The desired speed is used, not the current speed. The reference point is the rear edge of the lead vehicle in the adjacent lane. The safety distance is subtracted:

Corresponds to the attribute ACC minimum gap time.

If the ego vehicle does not detect a lead vehicle it wants to change lanes.

Ego vehicle determines whether a safe lane change is possible

If it has been determined that the ego vehicle wants to change lanes, it will not do so if a safe lane change is not possible. The following criteria can prevent the lane change:

  • The distance to the trailing vehicle in the adjacent lane is too short:

If the trailing vehicle (d,r) in the adjacent lane is too close, the gap time for the lane change is too small, and the ego vehicle will not perform the lane change as long as the following condition applies:

  • The distance to the lead vehicle in the adjacent lane is too short:

If the lead vehicle (d,f) in the adjacent lane is too close, the gap time for the lane change is too small, and the ego vehicle will not perform the lane change as long as the following condition applies:

  • Ego vehicle would reach the lead vehicle in the adjacent lane before completing the lane change or would have to brake too strongly on the target lane:

This corresponds to the waiting condition (Waiting condition: Ego vehicle would reach the lead vehicle in the adjacent lane before completing the lane change or would have to brake too strongly)

Ego vehicle aborts lane change

In the following situations, the ego vehicle aborts the lane change:

  • The ego vehicle detects a trailing vehicle in the adjacent lane approaching at a speed greater than 160 km/h. The ego vehicle behaves according to the condition that applies when it does not detect a trailing vehicle in the adjacent lane within its sensor range, but must assume that a vehicle traveling at very high speed could enter the sensor range (Waiting condition: Ego vehicle does not detect a trailing vehicle in the adjacent lane within sensor range).
  • The ego vehicle and another vehicle intend to change from different lanes into the same target lane. Example: The ego vehicle starts a lane change on a link with at least three lanes, e.g., in right-hand traffic, from the outermost right lane to the middle lane. Another vehicle intends to change lanes from a different lane into the same target lane, for example, from the innermost left lane.

Conditions for evaluating these situations

The conditions depend on how far the lane change has already progressed. For this purpose, the position of the ego vehicle’s wheels is determined. The following positions are relevant:

These conditions do not apply if the ego vehicle is changing lanes due to a lane change triggered by another lane change model.

All tires of the ego vehicle are still on the original lane

If all tires of the ego vehicle are still on the original lane, the ego vehicle aborts the lane change if any of the following conditions are met:

Ego vehicle and another vehicle want to change from different lanes into the same target lane
  • The other vehicle is already changing into the ego vehicle’s target lane, for example, from the innermost left lane to the middle lane, while the ego vehicle wants to change from the outermost right lane to the middle lane.
  • The other vehicle has at least one tire on the ego vehicle’s target lane.
  • Vissim checks whether the conditions for the lane change of the ego vehicle (Ego vehicle decides on lane change) are also fulfilled assuming that all lead and trailing vehicles perceived by the ego vehicle on the lane of the other vehicle are already driving on the ego vehicle’s target lane.

If the center of the other vehicle is already located on the target lane, Vissim checks in every time step whether the conditions for the lane change are still fulfilled.

At least one tire of the ego vehicle is on the adjacent lane, the target lane

If one or more tires of the ego vehicle are on the target lane, Vissim checks whether the ego vehicle wants to abort the lane change, and then whether this is possible:

The ego vehicle wants to abort the lane change if any of the following conditions are met:

  • The trailing vehicle on the target lane would have to brake unacceptably hard for one of the following reasons:
  • If it would brake more strongly than the threshold
  • If it would brake more strongly than the ego vehicle because the ego vehicle has to return to the original lane due to its lead vehicle .
  • If it would brake more strongly than the ego vehicle because the ego vehicle has to return to the original lane due to its trailing vehicle .

This is represented by the following term:

Where:

has a default value of

: This is the acceleration that the ego vehicle estimates for the braking maneuver that would be imposed on the trailing vehicle in the target lane:

. If undefined, the ego vehicle does not want to abort the lane change.

Where:

: Current acceleration of the ego vehicle. Vissim assumes that the ego vehicle does not come to a stop during the braking maneuver.

: This is the acceleration that the ego vehicle estimates for the braking maneuver that would be imposed on the trailing vehicle in the ego vehicle’s original lane. Omitted if undefined.

: Deceleration of the ego vehicle (Waiting condition: Ego vehicle would have to brake more strongly on the target lane than on the original lane). Omitted if undefined.

  • Ego vehicle and another vehicle want to change from different lanes into the same lane

The same conditions apply that govern the aborting of the ego vehicle’s lane change in this situation (Ego vehicle and another vehicle want to change from different lanes into the same target lane). The ego vehicle and the other vehicle abort the lane change into the same target lane if both vehicles reach the target lane with the first tire in the same time step.

As soon as the criteria for aborting the lane change are met, the ego vehicle aborts the lane change if the distance to the lead vehicle on its original lane is sufficiently large:

Where:

: The total safety distance at the current speed (Ego vehicle wants to change to the adjacent lane to drive more slowly)

: Parameter with default value

All tires of the ego vehicle are on the adjacent lane, the target lane

Once all tires of the ego vehicle are on the target lane, the lane change is considered completed and can no longer be aborted. During the lane change, the ego vehicle has been perceivable for a sufficiently long time by trailing vehicles in the target lane as well as by vehicles in other lanes adjacent to the ego vehicle.

Interaction with other vehicles and longitudinal movement of the ego vehicle

The ego vehicle interacts with other vehicles both during the lane change and when aborting a lane change. This interaction can influence the longitudinal movement of the ego vehicle.

Interaction of the ego vehicle during the lane change

In the time step in which the ego vehicle initiates the lane change, the ACC gap time controller no longer regulates how the ego vehicle responds to the lead vehicle on the original lane (Gap controller balances speed and distance). Instead, free acceleration toward the desired speed is calculated. The ego vehicle is not allowed to reach the rear edge of the lead vehicle until its lateral center is on the target lane. This prevents a collision.

However, the ACC controller continues to regulate the longitudinal movement of the ego vehicle, taking into account the lead vehicles in the target lane, especially the next adjacent vehicle . In this case, the gap time τ of the ACC controller, which corresponds to the attribute ACC minimum gap time, is not used. Instead, the safety distance is calculated as follows:

Where:

: Time at which the ego vehicle begins the lane change

: Current simulation time

: Gap time to the lead vehicle in the adjacent lane at the start of the lane change:

: Duration for which the ego vehicle is allowed to follow closely behind the lead vehicle. Default value . At the beginning of the lane change, a smaller gap time to the lead vehicle in the adjacent lane can be accepted:

when the ego vehicle changes to the adjacent lane to drive faster (Waiting condition: Distance to trailing vehicle in adjacent lane too short)

when the ego vehicle changes to the adjacent lane to drive more slowly (Waiting condition: Distance to lead vehicle in adjacent lane too short)

This gap time is then continuously adjusted based on speed is increased until the normal value is reached again. This allows the ego vehicle to gradually re-establish its normal desired safety distance.

For the accelerations resulting from the interaction with the lead vehicle and the lead vehicle in the adjacent lane the lower acceleration value is used by default.

Interaction of the ego vehicle while aborting the lane change

When the ego vehicle aborts the lane change, the ACC gap time τ, which corresponds to the attribute ACC minimum gap time, is not used. Instead, the safety distance is calculated as follows:

Where:

: Point in time at which the ego vehicle aborts the lane change

: Gap time to the lead vehicle in the original lane at the moment the ego vehicle aborts the lane change.

As in the transition between the gap time controller and target braking, the ACC controller treats all vehicles as if the ego vehicle were perceiving them anew (Transition between gap controller and target braking).