Mesoscopic Model#

The mesoscopic model is an adaption of the computationally efficient Link Transmission Model (LTM). The adaptation consists of tracking vehicles individually by enforcing that flows at any time-step should stick to integer numbers.

Model Description#

Baseline Mesoscopic Model

Where $T_1$ is the travel time in free-flow speed and $T_2$ is the travel time in the shockwave speed. The first term of demand is equivalent to all vehicles in the link that will have remained in the link for the free-flow travel time or more after the current step completion. In fact, POLARIS tracks each vehicle individually and compute that term by just counting those vehicles by looking into the entry step of each vehicle.

The adapted model entails other relationships, first is the upstream and downstream capacity:

\[\begin{split} \hat{q}^{d}_a(i+1) = \min \{\hat{q}^{d}_a(i) +C_a\Delta t-\hat{g}_a(i),\lceil C_a\Delta t \rceil+1 \} \\ \hat{q}^{u}_a(i+1) = \min \{\hat{q}^{u}_a(i) +C_a\Delta t-\hat{f}_a(i),\lceil C_a\Delta t \rceil+1 \} \\\end{split}\]

And then the demand and supply change accordingly:

\[\begin{split} \hat{D}_a(i) &= \min \{\lfloor F_a(i-T_1+1)-G_a(i) \rfloor,\lfloor \hat{q}^{d}_a(i) \rfloor \} \\ \hat{S}_a(i) &= \min \{\lfloor G_a(i-T_2+1)+K_a L_a-F_a(i) \rfloor, \lfloor \hat{q}^{u}_a(i) \rfloor, \} \\\end{split}\]

Further features#

  • Turn Movement Pockets: whenever vehicle has been in the link for the travel time, they are placed in a separate container for each connection/movement if the connection/movement has space for a new vehicle. The total pocket space is determined by the “pockets hold capacity”. These pockets serves as a link with capacity proportional to its number of lanes. Vehicles are processed in FIFO discipline and if one vehicle is not able to transfer to the connection/movement no vehicle that entered in the link after will be able to proceed, except though vehicles in some specific situation (see below).

  • Through vehicles “jump” into Turn Movement pocket: in some situations, especially on roads with more than 2 lanes in which right or left turn can only be performed by one lane, the FIFO discipline does not hold. For instance, if we have two lanes and one vehicle is not able to access the right movement pocket, it ends up blocking the right lane. This would not prevent vehicles from accessing the through movement pocket using the left lane. In these situations, it is assumed that the through pocket has a decrease in capacity proportional to one lane, but if the two conditions met the first vehicle heading the through movement pocket can proceed: (i) the vehicle is in the link for longer than free flow travel time; (ii) Had elapsed the minimum headway based on the decreased capacity. In that case the vehicle “jump” to the through pocket directly.

  • Automated vehicles: as a mesoscopic model with no inherent vehicle heterogeneity, there is no an inherent endogenous model for automated vehicles. Instead, automated vehicle is modeled based on a fundamental diagram that is modified according to the share of automated vehicles in the link. The share of automated vehicles are tracked by keeping a counter of how many automated vehicles entered the link. See Figure below.

Key parameters#

  • Num_vehicles_container_{type} (types=LOCAL, ARTERIAL, FREEWAY): the number of vehicles that fits in the movement container pocket by these attributes. A lower value for each pocket leads to a higher probability of pocket blockage and therefore increasing congestion. Note, however, that this usually do not have a drastic impact on overall speeds.

  • Threshold_conflicting_{type}_seconds (type=signalized, two_way_stop, all_stop) : explained above. Increasing the threshold leads to vehicles needing a higher gap to cross the intersection whenever it does not have a protected priority and therefore leading to higher congestion.

  • Jam density: Overall jam density is controlled by this parameter. Reducing it should lead to more queue spillbacks and increase congestion. Effect similar to the num_vehicles_container.

  • Capacity_{type} (type=local, arterial, freeway): capacity in vehicles/hour/lane on each road type; the shock-wave speed of the link changes accordingly. This sets the capacity of all road types (they can be set specifically for each link as total capacity for all lanes if the resulting capacity/hour/lane is higher than set in the scenario file). Increasing capacity should lead to reduced congestion.