Lane Changing

Main Page > Technical Documentation > Vehicle Movement Logic > Lane Changing

The lane-changing logic is composed of mandatory and discretionary. First check for mandatory lane change. If mandatory lane change is not necessary, then check for discretionary lane change.

Mandatory Lane Changing A mandatory lane change is typically needed for one of the following conditions:
 * The vehicle is traveling on an acceleration auxiliary lane and must change lanes in order to merge with the mainline freeway traffic.
 * The vehicle is not on the proper lane for the desired movement on the downstream link.
 * The vehicle is on a lane which will be dropped downstream.
 * The vehicle needs to move to a special purpose lane (e.g., HOV).
 * The vehicle is on a lane which is blocked downstream.

An overview of the mandatory lane-changing logic employed in SwashSim is as follows.

Identify desired lane Identify leader and follower vehicle on desired lane Determine if gap is sufficient between two vehicles for subject vehicle to merge into Determine subject vehicle acceptable risk; Function of: If needed deceleration is less than acceptable risk, then allow vehicle to change lanes.
 * Based on movement direction (left, through, right)
 * Closest vehicle in front, closest vehicle behind
 * Two gaps to consider, one between subject vehicle and leader vehicle, and one between subject vehicle and follower vehicle
 * Make sure vehicles will not collide
 * Urgency Factor
 * Driver aggressiveness factor
 * Ranges from 0.82 (driver type 1) to 1.18 (driver type 10)
 * Number of lane changes to reach desired lane
 * Link free-flow speed
 * Distance to last point where vehicle must exit lane (e.g., end of lane drop)
 * Minimum acceptable risk (-8 ft/s2), for driver type 1
 * Maximum acceptable risk (-15 ft/s2), for driver type 10
 * Urgency Threshold
 * If urgency factor < 0.2 (default), use minimum acceptable risk
 * If urgency factor > 1.0 (default), use maximum acceptable risk

Discretionary Lane Changing Discretionary lane changing refers to vehicles that change lanes in order to obtain a more favorable position (i.e., to attain a higher speed in order to reach the desired speed). For example, when a vehicle changes lanes to pass a slower-moving vehicle.

Check if subject vehicle is a candidate to consider a discretionary lane change


 * Does vehicle have a leader?
 * Is it traveling faster than 10 mi/h? Vehicles moving slowly (e.g., in a queue) do not consider discretionary lane changes.
 * Get subject vehicle desired speed (minimum of desired speed and maximum velocity). Maximum velocity might control for large truck on steep grade.

Calculate motivation to change lanes $$ Motivation=\left\{\begin{array}{l} 0&\mbox{if subject vehicle actual speed ≥ desired speed}\\ 1&\mbox{if subject vehicle actual speed ≤ intolerable speed}\\ 1-\frac{CurrentSpeed-IntolerableSpeed}{DesiredSpeed-IntolerableSpeed}&\mbox{otherwise}\\ \end{array}\right. $$

$$IntolerableSpeed=DesiredSpeed\times IntolerableSpeedMultiplier\times DriverAggressivenessFactor$$ where: $$IntolerableSpeedMultiplier=0.8$$ (default) $$DriverAggressivenessFactor=1+(DriverType - 5.5)/DriverTypeFactor$$ $$DriverTypeFactor=25$$ (default)

If motivation > 0 and < 1, compare motivation to random number If motivation = 1, determine desired lane to move into
 * Generate uniform random number (0-1)
 * If motivation > random number, motivation = 1
 * Otherwise, motivation = 0

Check if lane to the right and/or left exists, and whether it supports subject vehicle’s desired downstream movement (left, through, right). For candidate lanes, calculate impedance score:

$$LookAheadDist=0.2+1.8\times\frac{NumDriverTypes-SubjectVehDriverType}{NumDriverTypes-1}\times BaseLookAheadDist$$

$$BaseLookAheadDist-750$$ ft (default)

For 10 driver types, LookAheadDist will range, linearly, from 1350.2 ft for driver type 1 to 0.2 ft for driver type 10. More aggressive drivers tend to be more aggressive with lane changes and do not look as far downstream in evaluating whether they will really gain an advantage by changing lanes.

For each candidate lane, for the look ahead distance downstream of the subject vehicle, count the number of vehicles.

$$LaneImpedenceScore=NumVehsDownstream+\frac{CurrentSpeed-LeadVehSpeedOnCandidateLane+2}{5}$$

Subject to minimum value of 0.

Compare impedance of each candidate lane (plus buffer value, default = 3) to impedance of current lane (buffer value not applied). Desired lane is one with lowest impedance value.

If a different lane is desired, check for acceptable gap for merging between potential leader and follower vehicles on adjacent lane. The process is the same as for a mandatory lane change. One difference is that the minimum acceptable risk for driver type 1 is reduced from -8 ft/s2 to -5 ft/s2; which results in lower acceleration rates tolerated for discretionary lane change.

The discretionary lane-changing logic also includes an option (setting in the vehicle entry settings dialog) to bias (but not restrict) slower moving vehicles to the right-side lanes. For example, if this option is selected, for a 3-lane roadway, the slowest vehicles in the traffic stream will generally be in the far-right lane, the fastest vehicles will be in the far-left lane, and “average” speed vehicles will be in the middle lane. However, unlike a lane restriction scenario, any of these vehicles can still use other lanes, which might happen temporarily for conducting passing maneuvers. This logic particularly comes into play for the truck vehicle types on grades. The trucks generally have somewhat lower desired speeds than the passenger cars, so they are more likely to be in the right- or middle-lane (of a 3-lane roadway) than in the left lane, but regardless of which lane they are initially in, as they begin to lose speed on a grade, they will look to move to the right-side lanes. For a smaller truck type (e.g., the single-unit truck) on a moderate grade, it still may be able to attain its desired speed and therefore will not be biased toward the right-side lanes.