Vehicle Movement Logic

From SwashSim

Main Page > Technical Documentation > Vehicle Movement Logic


This section provides an overview of the logic/models employed to control the movement of vehicles within SwashSim. The models apply to the longitudinal (forward) motion of a vehicle (acceleration, velocity), the lateral (lane changing) movement of a vehicle, or a combination of the two, such as for passing in the oncoming lane of a two-lane highway.

Longitudinal Motion

The longitudinal motion of a vehicle is a function of the following factors:

  • proximity to a traffic control point (e.g., stop bar for a signalized intersection)
  • proximity to a downstream queue of traffic
  • proximity to a lead vehicle
  • actual speed relative to desired speed
  • proximity to change in change in free-flow speed for destination link

Acceleration Mode

The above factors, which might apply individually or in combination, are used to assign an 'Acceleration Mode' to a vehicle. This Acceleration Mode is then used to assign a preset acceleration value or calculate one based on applicable factors and their current status. The Acceleration Mode classifications assigned in SwashSim are discussed in more detail here.

Queue Status

At any given time step, a vehicle will be in one of four queuing states:

  • Not in queue
  • Slowing for queue
  • Moving in queue
  • Stopped in queue

The definitions of these states are based upon the guidance in the HCM 2016 [Chapter 36 (Concepts: Supplemental), page 42].

Lane Changing

Models applied to determine a vehicle's lane-changing behavior are categorized as:

  • Mandatory
  • Discretionary
  • Anticipatory

These models are discussed in more detail here.

Models that consider the combination of longitudinal and lateral movement are used in modeling two-lane highways, and are discussed here.