1 Introduction

One of the major challenges in logistics is the steadily growing traffic activity. The European Commission expects that passenger transport activities across Europe will increase by 42% by 2050 and freight transport by 60% (Mobility and Transport 2019). This puts pressure on the capacity of the available transport network since congestion leads to high associated costs, such as lost time, increased vehicle operating costs, and environmental aspects. The Department of Transport, Tourism and Sport’s Economic and Financial Unit of the Republic of Ireland estimated the cost of time lost due to aggravated congestion in the Greater Dublin Area to be €358 million in 2012. They forecast a cost of €2.08 billion per year in 2033 (Department of Transport, Tourism and Sport 2017). Ensuring that congestion does not reach an unacceptable level is of significant high importance for all future logistics processes.

Climate change is one of the main challenges of our times. In 2019, global CO2 emissions increased to 38 gigatons due to a report by the Netherlands Environmental Assessment Agency (Olivier and Peters 2020). The transport sector is still one of the major contributors to greenhouse gas emissions, and congestion increases the emissions of greenhouse gases of vehicles. Additionally, congestion imposes a negative impact on local noise and water quality (Department of Transport, Tourism and Sport 2017). As a consequence, reducing congestion does not only reduce travel times and reduce the cost of time for logistics operators, but it also has positive effects on greenhouse gas emissions and quality of life.

One of the first steps to reduce congestion and increase the efficiency of networks is to understand the behavior of traffic. Typically, researchers evaluate traffic by creating a theoretical model that aims to capture as many aspects of real-life traffic as possible. We can differentiate the existing traffic models into macroscopic, mesoscopic, and microscopic models. Macroscopic models focus on the joint behavior of vehicle flows, and thus it is usually not possible to track a single vehicle. Examples of macroscopic models are function-based network load models. Microscopic models usually track single vehicles in a highly temporal solution. They capture microscopic aspects like overtaking, traffic lanes, human driver behavior, and others. Mesoscopic models can be seen as hybrids. For a nice comparison of the models, we refer the reader to the survey of Wang et al. (2018). Usually, macroscopic models are easier to understand and easier to use in software but typically lack precision and many local aspects of real-life traffic. The traffic simulation software MATSim is one of the state-of-the-art implementations of a microscopic to mesoscopic model; we refer to the MATSim book for a great introduction (Horni et al. 2016). Individual vehicles can be tracked and followed, and crossings are implemented from a microscopic point of view, but the actual behavior of vehicles on a road segment is not modeled precisely. The current implementation can be roughly described as follows. The traffic network is modeled by a graph which consists of vertices and edges. A vertex corresponds to a crossing. The directed edges connect vertices and model the road segments between crossings. Vehicles that enter some edge at some point in time are instantaneously moved to the end of the edge and have to wait there for at least the externally given free-flow travel time of that edge (Horni et al. 2016). At the head of the edge, a capacity constraint is checked, and the vehicle is only allowed to leave the edge if the capacity is not exceeded. The software drops some precision in modeling the microscopic behavior on an edge with the aim to reduce computation time and thus increase the size of the models that can be analyzed.

Microscopic to mesoscopic simulations are a great tool to get insights on traffic behavior, but usually one can only observe properties of the model by simulations, and it is very hard to prove properties of the model or the solution. To illustrate this, consider MATSim’s co-evolutionary algorithm. Usually, MATSim simulates traffic for 1 day. The simulation is done in multiple iterations. Agents in the simulation have a list of plans (although plans capture more, it is easiest to think of different plans being different possible routes). In each iteration, each agent picks a randomly chosen plan from the list with a probability that depends on the current score of this plan. After each agent has chosen a plan, the actual day is simulated and the agents evaluate their plan and update the score of the chosen plan with respect to the observed traffic. The updated score is used in the next iteration. Additionally, in each iteration, some agents (usually ∼10%) are allowed to create new plans. The process is repeated until the average population score does not change more than some threshold. For more details, we refer the reader to the MATSim book (Horni et al. 2016). A main drawback of this model is that rigorously proving properties both for the process and for this final state is a very challenging task. Sering et al. (2021) recently showed first provable results on the network loading model in MATSim, but even the question if there is a best response dynamic that converges to an approximate equilibrium is still open. This implies that rigorously proving properties of the resulting states is a very challenging task, and we cannot use theoretical insights to improve the results, e.g., by trying to enforce a provable optimal traffic distribution. Generally, microscopic to mesoscopic models can currently only give an estimation of what might happen to, e.g., a change of the input of other questions of interest, and the obtained results cannot be justified analytically.

Macroscopic models on the other hand can be analyzed mathematically but lack many important properties of traffic flows. Naturally, researchers aim to set up mathematical models that cover as many properties of traffic flows as possible and are still analyzable. There was a huge breakthrough in this direction in the last years, and the aim of this chapter is to cover this development. One of the most important differences in mathematical traffic models is the difference between discrete and continuous flows. Discrete flows are a model with indivisible particles of a certain size. The motivation and connection to traffic are immediately clear, and some of these models also work with particles of different sizes. On the other hand, continuous models treat traffic as divisible in arbitrarily small pieces. Another very important property of mathematical traffic models is the existence of strategic users. Typically, traffic flow cannot be controlled by a central authority, and the users strategically decide which route to take. This behavior can be seen as the mathematical analog to the agents that individually (and randomly) choose their best plans in MATSim. Note that in this work, we are interested in dynamic flows, which in contrast to their static counterparts implement a time component. Thus, the network can have different states at different times. There is a very rich literature on static strategic routing models (i.e., without a time component), which we will not cover in this chapter. For the readers interested in static models, we refer to the terms Wardrop games, network congestion games, and (non-) atomic selfish routing.

The rest of the chapter is divided into two parts. Section 2 covers the continuous model and Sect. 3 the discrete variants.

2 Continuous Flows: Nash Flows Over Time

Vickrey (1969) was the first to describe a basic model for continuous flows over time. The model captures the time-dependent behavior of arbitrarily splittable flow in networks with edges with a limited throughput capacity. This model is typically called dynamic flows with deterministic queuing. Koch and Skutella extended this model and added strategic user’s behavior (Koch and Skutella 2011). Their model is called Nash flows over time. In recent years, Cominetti, Correa, Cristi, Olver, Oosterwijk, and many others proved many properties of flows in this model, see, e.g., Cominetti et al. (2011, 2015, 2017); Correa et al. (2019). Sering and Vargas Koch achieved a huge breakthrough by adding spillback to this setting. In their extension, traffic users need some space for queuing, and thus edges can become full (Sering and Vargas Koch 2019). In this sense, highly congested parts of the network now can have an impact on previous edges as traffic users might spill back to other parts of the network while queuing. Additional properties of this model have been shown by Israel and Sering (2020). Ziemke et al. recently presented experiments that indicate a strong connection of the limit of the MATSim flow model for decreasing vehicle and time step size and Nash flows over time with spillback (Ziemke et al. 2021). Their article provides a strong justification and motivation for the studies of mathematical traffic models.

We will proceed by describing the ideas of the basic model by Vickrey. The model definition is mainly based on the works of Koch and Skutella (2011), Cominetti et al. (2011), and Sering (2020). In the subsequent subsections, we present the extensions and some results established in the literature.

2.1 Continuous Flows Over Time

The most important ingredient to the flow over time model is the edge dynamics. Road networks are modeled by a graph G = (V, E) with vertices V  and directed edges E. Each edge e ∈ E is equipped with a (free-flow) travel time τ e ≥ 0 and outflow capacity ν e > 0. Usually, it is assumed that there are no cycles of length 0 in G. The inflow rate into an edge can be arbitrarily large and is not restricted. However, if the inflow rate exceeds the capacity at some point in time θ, the outflow rate at θ + τ e is restricted to ν e due to the outflow capacity of the edge. All additional flow is stored in a point queue, or sometimes called horizontal queue. In this sense, each edge can store an arbitrary amount of flow in a queue and can never get full. If there is a queue at some edge, first the flow waiting in the queue is allowed to leave the edge, i.e., in this sense, there is a FIFO property in each edge. Put differently, overtaking is not possible. The total mass that is stored in the queue of edge e at time θ is denoted by z e(θ). Figure 1 is an illustration of the basic notions of the edge dynamics.

Fig. 1
figure 1

An illustration of the basic notions of the edge dynamics

2.1.1 Connectors of the Edges: Vertices

Edges are connected to each other by vertices and thus vertices model crossings. They only connect edges and flow leaving an edge e 1 is just forwarded to the subsequent edges. This will change drastically in the later parts of the section.

2.2 Mathematical Consistency

In order to set up the model precisely, we need to formalize all properties. Formally, a flow over time is defined by a family of functions \(f=(f_e^+, f_e^-)_{e \in E}\), where \(f_e^+\) and \(f_e^-\) are integrable nonnegative functions and specify the flow rate entering or leaving edge e at a given time, respectively. We can calculate

$$\displaystyle \begin{aligned}F_e^+(\theta) = \int_0^\theta f_e^+(\xi) \,d\xi \qquad \text{and} \qquad F_e^-(\theta) = \int_0^\theta f_e^-(\xi) \,d\xi\;.\end{aligned}$$

Note that in this chapter, we will enforce all relevant conditions for all times θ > 0. In the original literature, they are only enforced for almost all times θ, i.e., typically they are allowed to be not fulfilled for a set of times that forms a null set. In this chapter, we aim for giving the main ideas and decided to lack this mathematical detail as it simplifies arguments and notations. We refer the reader to the original works for more details.

We say that flow conservation on a vertex v ∈ V  is fulfilled if

$$\displaystyle \begin{aligned}\sum_{e \in \delta_+(v)} {f_e^-(\theta)} = \sum_{e \in \delta_-(v)} {f_e^+(\theta)}\;,\end{aligned}$$

for all θ. Here, δ +(v) and δ (v) denote the incoming and outgoing edges from vertex v, respectively. Thus, flow conservation at v is fulfilled if for all times θ the total flow rate entering vertex v is equal to the total flow rate leaving v. We do not enforce flow conservation on all vertices. In the basic model, there is a single designated vertex s ∈ V , called source, for which

$$\displaystyle \begin{aligned}\sum_{e \in \delta_+(s)} {f_e^-(\theta)} + r = \sum_{e \in \delta_-(s)} {f_e^+(\theta)}\;,\end{aligned}$$

for some externally given constant inflow rate r into s. Additionally, there is one sink t ∈ V  for which we only enforce

$$\displaystyle \begin{aligned}\sum_{e \in \delta_+(v)} {f_e^-(\theta)} \geq \sum_{e \in \delta_-(v)} {f_e^+(\theta)}\;.\end{aligned}$$

These constraints ensure that flow enters the system with a constant flow rate r at s ∈ V , is maintained in the system at intermediate vertices v ∈ V ∖{s, t}, and is allowed to leave the system at t.

The amount of flow that is stored in the queue at the head of edge e ∈ E at time θ + τ e is the amount of flow that has already entered edge e by θ and not left e by time θ + τ e. It can be calculated by

$$\displaystyle \begin{aligned}z_e(\theta + \tau_e) = F_e^+(\theta) - F_e^-(\theta + \tau_e)\;.\end{aligned}$$

Now, we have all ingredients to define a feasible flow over time. We say a flow \(f=(f_e^+,f_e^-)_{e \in E}\) is a feasible flow over time with source s, inflow rate r, and sink t if it fulfills flow conservation on all vertices v ∈ V ∖{s, t}, the above conditions for s and t, and the following property. The outgoing flow rates \(f_e^-\) have to fulfill

$$\displaystyle \begin{aligned} f_e^-(\theta + \tau_e) = \begin{cases}\nu_e & \text{if }z_e(\theta + \tau_e)>0\;,\\ \min\{\nu_e, f_e^+(\theta)\} & \text{otherwise}\;,\end{cases} \end{aligned}$$

where ν e denotes the outflow capacity of edge e. This condition also ensures that flow is not created inside edges, i.e.,

$$\displaystyle \begin{aligned}F_e^-(\theta+\tau_e) \leq F_e^+(\theta)\;,\end{aligned}$$

for all times θ ≥ 0 and all edges e ∈ E. Note that for given flow rates \(f_e^+\), the flow rates \(f_e^-\) are uniquely defined and can be calculated according to the equation above.

The flow in this model can be any integrable nonnegative function, and thus flow can be divided arbitrarily and this is a continuous flow model. On the other hand, we aim for traffic models and are particularly interested in the behavior of single vehicles. In this model, one can interpret the flow as infinitely many infinitesimal small particles. Given some feasible flow over time, we are typically interested in the travel time of some particle from s to t. In order to calculate that, we need to track the chosen path and the observed waiting time in queues for this particle. We follow standard notation in the literature and define the waiting times of a particle entering edge e at time θ as

$$\displaystyle \begin{aligned}q_e(\theta) = \frac{z_e(\theta + \tau_e)}{\nu_e}\;.\end{aligned}$$

Analogously, one can calculate the exit time of a particle entering e at θ by

$$\displaystyle \begin{aligned}T_e(\theta) = \theta + \tau_e + q_e(\theta)\;.\end{aligned}$$

2.3 The Nash Condition

The model described so far is a well-defined mathematical model for traffic. Given some road networks with edge capacities and free-flow travel time, we can build a mathematical twin of a traffic network. This model respects over-time behavior and assumes that traffic flow is arbitrarily splittable, i.e., we expect the model to be most accurate with an increasing number of users that individually have a neglectable contribution to congestion. Given some inflow into a certain vertex and specified paths for the traffic users, we can set up a feasible flow over time respecting the setup and the flow conservation constraint. Generally, in traffic optimization, we are mostly interested in a traffic model that can actually predict traffic, while we are only given the network and a certain demand, represented by the inflow (and desired outflow). In order to do so, we need to define a system that describes how the paths of the traffic particles in the network are chosen. In the following, we will follow the road of Koch and Skutella (2011) and extend the model with strategic users.

We assume that flow particles always try to individually minimize travel time to the destination and choose a currently shortest path with respect to the other flow particles. Formally, given some flow f, for a particle entering the source at time ϕ, we define l v(ϕ) to be the earliest possible arrival time at vertex v. With T e(θ) being the exit time on e of a particle entering e at θ, this imposes the characterization

$$\displaystyle \begin{aligned}l_v(\phi) = \min_{(u,v) \in \delta_+(v)} T_{(u,v)}(l_u(\phi))\;,\end{aligned}$$

for all v ∈ V ∖{s} and l s(ϕ) = ϕ. We now set up the current shortest path network as follows. We say an edge (u, v) ∈ E is active for entering time ϕ and flow f if l v(ϕ) = T (u,v)(l u(ϕ)). These are exactly the edges that can possibly be used by a particle entering at time ϕ on a shortest path. The current shortest path network \(G^{\prime }_f(\phi ) = (V,E^{\prime }_f(\phi ))\) contains exactly all active edges for ϕ and f, i.e.,

$$\displaystyle \begin{aligned}E^{\prime}_f(\phi) = \left\{(u,v) \in E \mid l_v(\phi) = T_{(u,v)}(l_u(\phi))\right\}\;.\end{aligned}$$

Definition 1 (Based on Koch and Skutella (2011))

A flow over time f is called a dynamic equilibrium or a Nash flow over time if

$$\displaystyle \begin{aligned} f_{(u,v)}^+(l_u(\phi)) > 0 \Rightarrow (u,v) \in E^{\prime}_f(\phi)\;, \end{aligned} $$

for all edges (u, v) ∈ E and departure times ϕ.

Equivalently, all particles only use edges that are part of their current shortest path network. Cominetti, Correa, and Larré established the following property of Nash flows over time.

Theorem 1 (Based on Cominetti et al. (2011))

A flow over time f is a Nash flow if and only if

$$\displaystyle \begin{aligned}F_e^+(l_u(\phi)) = F_e^-(l_v(\phi))\end{aligned}$$

for all edges e = (u, v) ∈ E and departure times ϕ.

Note that in the original works, both Definition 1 and Theorem 1 are only valid for almost all times θ, so they allow for null sets of times for which the conditions are not true. Informally, the theorem assures that the Nash flow condition is equivalent to the fact that exactly all flow that has entered edge (u, v) by time l u(ϕ) has left the edge by time l v(ϕ). This ensures that, for a particle entering the network at ϕ, we can define \(x_e(\phi ) = F_e^+(l_u(\phi ))\) for all edges. It can be shown that \(\left (x_e(\phi )\right )_{e \in E}\) is a static flow with flow value , where r denotes the constant inflow rate, see, e.g., Cominetti et al. (2011). Due to the definition of x, the flow value x e(ϕ) measures exactly the amount of flow that has entered edge e before particles starting at ϕ can reach e. The derivative \(x_e^{\prime }(\phi )\) (if it exists) is also a static flow with flow value r and given by

$$\displaystyle \begin{aligned}x_e^{\prime}(\phi) = f_e^+(l_u(\phi)) \cdot l_u^{\prime}(\phi)\;.\end{aligned}$$

The term \(l_u^{\prime }(\phi )\) can be interpreted as the factor incorporating the shift of time present at u, i.e. the behavior of l u(ϕ) in contrast to ϕ. In the subsequent section, we describe the main ideas for constructing a Nash flow over time by making use of this characterization. Throughout the construction, we will make sure that the derivatives \(l_u^{\prime }\) do exist.

2.4 Constructing Nash Flows Over Time

Koch and Skutella (2011) were the first to describe the existence of Nash flows over time. Cominetti, Correa, and Larré improved and extended their results (Cominetti et al. 2011). Here, we will only give an informal description and the main ideas of the constructive procedure described by Cominetti et al. (2011). We refer the reader to the original work or to the nice description of the procedure in Sering’s PhD thesis (Sering 2020) for more mathematical details.

The main idea builds on the fact that there is always a Nash flow over time that can iteratively be constructed in phases. In order to do so, we split the set of edges into three disjoint sets. Let \(E^{\prime }_f(\phi )\) denote the set of active edges, \(E^*_f(\phi ) \subseteq E^{\prime }_f(\phi )\) be the set of resetting edges, i.e., those edges \((u,v) \in E^{\prime }_f(\phi )\) for which there is a non-empty queue at time l u(ϕ) + τ e, and the inactive edges \(E \setminus E^{\prime }_f(\phi )\). It turns out that these three sets of edges define the phases of the Nash flow and that we can define a static flow x′ corresponding to the static flow x′ defined earlier, which does not change during a phase. For a proof of this statement, see Cominetti et al. (2011). In the following, we will fix some phase and give a description of constraints for the static flow x′ in this phase.

We define the phases with respect to starting times of particles. Let some phase cover the particles leaving s in the interval [ϕ 1, ϕ 2) and x′ be the corresponding static flow for this phase. The values for ϕ 1 and ϕ 2 will be chosen such that the sets of active and resetting edges do not change within a phase. As the particles leaving s in the interval [ϕ 1, ϕ 2) can only arrive at some edge (u, v) during time [l u(ϕ 1), l u(ϕ 2)), this is the interesting time interval for the edge for this phase. However, if the inflow \(f^+_{(u,v)}\) into some edge (u, v) is constant during the phase, the outflow corresponding to the phase (and thus shifted by the time needed to traverse the edge) is given as follows. The outflow is equal to ν e if the edge e has a queue of positive size and \(f^+_e\) otherwise. This ensures constant outflow during a phase, and thus we establish constant inflow and outflow for all edges. Given this, the change of the queues is also constant on all edges, and the idea is to construct a static flow x′ such that all flow particles only use active edges and to distribute the flow particles such that the change of the total waiting time is the same for all used paths and subpaths. Then, \(l_u^{\prime }(\theta )\) exists for all θ ∈ (ρ 1, ρ 2), the right derivative exists at ρ 1, and all are equal.

Due to the desired behavior of x′ and l′, we have to make sure that x′ is chosen such that \(l^{\prime }_s=1\) and

$$\displaystyle \begin{aligned}l_v^{\prime} = \min_{e=(u,v) \in E'} \rho_e(l_u^{\prime}, x_e^{\prime})\;,\end{aligned}$$

where

$$\displaystyle \begin{aligned} \rho_e(l_u^{\prime}, x_e^{\prime}) = \begin{cases}\frac{x_e^{\prime}}{\nu_e} & \text{ for }\;e \in E^*\;,\\ \max\left\{l_u^{\prime}, \frac{x_e^{\prime}}{\nu_e}\right\} & \text{ otherwise}\;.\end{cases} \end{aligned}$$

After the calculation of \(x_e^{\prime }\) and \(l_u^{\prime }\), we can define

$$\displaystyle \begin{aligned}f_e^+(\theta) = \frac{x_e^{\prime}}{l_u^{\prime}}\end{aligned}$$

for all θ ∈ [l u(ρ 1), l u(ρ 2)). This ensures that the static flow is an equilibrium not only for particles starting at time ϕ 1 but also for all later particles in the phase, since the travel times change on all used paths and subpaths by the same amount. Koch and Skutella have already introduced these static flows, and Cominetti, Correa, and Larré have extended their results. For more mathematical details, we refer to the original works (Cominetti et al. 2011; Koch and Skutella 2011).

We construct the equilibrium phase by phase starting at time 0. Clearly, a phase ends if a new edge enters the current shortest path network or if some queue depletes. Note that this procedure by Cominetti et al. (2011) constructively shows existence of Nash flows over time. We conclude the following theorem.

Theorem 2 (Cominetti et al. (2011))

There is always a Nash flow over time.

However, the procedure does not give rise to a polynomial time algorithm. Moreover, one of the main open problems is to answer the question if the number of phases is bounded.

2.5 Analysis of Equilibria

Equilibria in general and also those that are constructed according to the method above are not unique. As an easy example, consider a graph with two parallel edges with equal travel time τ and capacity \(\nu _{e_1} = \nu _{e_2} = 2\) and an inflow rate of r = 1, cf. Fig. 2. As it turns out, there are no queues and all static flows are feasible for the first (and only) phase. The values l t(ϕ) are equal to ϕ + τ and coincide for all choices. The particles leaving at time ϕ still arrive at the same time in all possible choices. More generally, Cominetti, Correa, and Larré have shown that the arrival time functions l v(ϕ) are equivalent as long as we restrict ourselves to Nash flows over time f with right-continuous inflow and outflow rates (Cominetti et al. 2011). It is not proven formally that this is true for all equilibria, but it is conjectured to be true (Sering 2020).

Fig. 2
figure 2

An example showing that Nash flows over time are not unique

In order to evaluate the existing equilibria or Nash flows in a network, the notions price of anarchy and price of stability have been established. Usually, one defines an objective function from the central’s authority’s point of view, and the objective function value of an equilibrium solution is compared to the solution value of an optimal solution with respect to this objective function. If all equilibria in the same network have the same objective function value, the prices of anarchy and stability coincide. As this is currently conjectured for Nash flows over time, we will focus on results on the price of anarchy. The price of anarchy is defined as the worst possible objective function value of a Nash flow divided by the optimal solution value in this instance. For flows over time, two different objective functions have been analyzed in the literature, see Bhaskar et al. (2015).

For the first measure, we assume that there is a certain amount of flow volume A that has to be sent from s to t. The makespan price of anarchy measures the arrival time of the latest particle. This can be useful in a situation, where we are interested in sending the total flow volume as fast as possible, e.g., in some evacuation scenarios.

The second measure assumes that we are given a time horizon and are allowed to send as much flow as we can from s to t before the deadline. This throughput price of anarchy measures the total amount of flow that arrives at t before the deadline. This can be useful for many logistics processes, where we are interested in sending as much flow as possible in a given time.

For Nash flows over time, it is shown that the throughput price of anarchy is unbounded in the network size.

Theorem 3 (Koch and Skutella (2011))

The throughput price of anarchy lies in Ω(|E|).

Correa, Cristi, and Oosterwijk showed that the makespan price of anarchy is upper bounded by \(\frac {e}{e-1}\) if the following conjecture is true. Consider the same graph with two different inflow rates r 1 > r 2. Let f 1 be a Nash flow over time for inflow r 1 and f 2 be a Nash flow over time for inflow r 2. Then, \(l^{f_1}_v(\frac {A}{r_1}) \leq l^{f_2}_v(\frac {A}{r_2})\), i.e., a faster arrival of the same particles does not induce a later arrival time for the latest of these particles (Correa et al. 2019).

Theorem 4 (Correa et al. (2019))

Under the assumption that a higher inflow does not lead to a later arrival time at the sink of the last particle of a constant size flow mass, the makespan price of anarchy is at most \(\frac {e}{e-1}\).

From a traffic planner’s point of view, the price of anarchy is a measure of the inefficiency of the network due to selfishness and the individual objective functions of the users. In this sense, it tells the network designer how much efficiency is lost in the worst case equilibrium, because there is no central authority that controls all vehicles.

One of the main open problems in the area is to prove or disprove the conjecture that the assumption in Theorem 4 is always true.

2.6 Spillback

Sering and Vargas Koch made a huge breakthrough and extended the model by storage capacities and inflow capacities on the edges. The storage capacities represent the number of particles that can wait on an edge and induce an important property of real-life traffic into the model. As soon as the storage capacity is reached, the inflow cannot be larger than the outflow of the edge. This imposes spillback behavior as waiting particles are no longer local but might have a global effect. In order to extend the procedure to calculate a Nash flow over time in the spillback model, they added two additional events that introduce new phases. The static flow can only remain constant as long as the set of full edges does not change, the outflow on an edge does not change, and the sets of active and resetting edges remain constant. With this change to the procedure, they showed the following result.

Theorem 5 (Sering and Vargas Koch (2019))

There is always a Nash flow over time with spillback.

If some edge becomes full, it still accepts flow equal to the current outflow of this edge. Sering and Vargas Koch assumed a fair allocation condition, that is, flow entering an edge merges proportional to the outflow capacity of the previous edges. The authors only use this assumption for establishing the spillback model, but it can also be used to implement traffic lights in the mathematical model. In practice, most traffic lights run in the so-called cycles. Each cycle has a certain length and each lane gets at once a green light in a cycle. The split time determines for how long the lights should stay green. Main roads can get preference by a longer split time in the corresponding phase. From a global point of view, traffic lights can be seen as splitting up the inflow capacities of a certain edge to the incoming edges. However, by limiting the inflow capacity of a certain edge and setting the outflow capacities according to the traffic lights, the model by Sering and Vargas Koch does also provide features to mimic traffic lights.

2.7 Further Notes and Remarks

The procedure that we described here to calculate Nash flows over time does not give rise to a polynomial time algorithm to calculate the static flows of the phases. It was shown by Sering (2020) that one can set up a mixed-integer program (MIP) to calculate the static flows and the end of the phases in the basic model. The MIP formulation for the spillback model can be found in Sering and Vargas Koch (2019). Sering and Zimmer published a tool that is based on the MIP formulations and can be used to calculate Nash flows over time (Sering and Zimmer 2020), even in the spillback model.

Cominetti et al. (2017) analyzed the long-term behavior of Nash flows over time in the basic model. They were interested in the studies of the last phase of a Nash flow over time. They showed that there is a steady state, i.e., an infinitely long last phase in which the travel time remains constant for all particles if and only if the inflow rate does not exceed the minimum cut capacity of the network. This might be particularly interesting from a traffic designer’s point of view.

So far, we have only described models with networks with a single source and a single sink vertex. Cominetti et al. (2015) showed that the basic model can also be extended to a multi-commodity network, i.e., to a network with multiple source–sink pairs while still possessing a Nash flow over time.

Mathematical traffic models are already capable of modeling capacitated roads, congestion, individual particles’ objectives, spillback effects, and traffic lights. In this sense, the models are quite accurate, but mathematical results are mainly established for single source–single sink networks, which are quite limited for applications. There are results on the price of anarchy and the efficiency of equilibria. A main aspect for future work could be the question if it is possible to change the network by, e.g., artificially limiting the capacity of certain roads or by introducing tolls to improve the equilibrium solution. Researchers have already shown similar results in the static (i.e., non-over-time) setting, see, e.g., Beckmann et al. (1956), Dafermos and Sparrow (1969), and it would be an interesting and promising direction to establish similar results for dynamic traffic models. Results of this kind could potentially be applied to real-life traffic and reduce congestion in transportation networks, i.e., improve on logistics services.

3 Discrete Flows: Competitive Packet Routing

The second research direction in mathematical traffic models is models for discrete flows over time. In contrast to the continuous model, individual indivisible users are present. Dependent on the exact definition of the model, users may be weighted. Werth, Holzhauser, and Krumke were the first to introduce a discrete variant of Koch and Skutella’s Nash flows over time (Werth et al. 2014). The model was later called competitive packet routing (Harks et al. 2018) as it can also be seen as the competitive variant of the well-studied packet routing model.

The main idea is to use integral travel times. Each edge has some certain outflow capacity and only users with an aggregated weight smaller or equal to the edge capacity can leave the edge at each integral point in time. Those who are not allowed to leave the edge have to queue and wait.

3.1 The Mathematical Model

An instance of the problem is given by a graph G = (V, E), integral travel times τ e, capacities ν e for all e ∈ E, and n users, each with a start vertex s i ∈ V , a target vertex t i ∈ V , and a weight w i for all i ∈{1, …, n}. Typically, an instance is called unweighted if w i = 1 for all i ∈{1, …, n}. A strategy profile P = (P 1, …, P n) specifies a path for each user, where for P i we only allow a simple path from s i to t i such that ν e ≥ w i for all edges e ∈ P i.

The edge’s behavior and the vertices are set up using discrete time steps. A user that arrives at some vertex u ∈ V  at an integral time θ can immediately enter the next edge e = (u, v) on the specified path. Then, we assume that the user needs τ e time units to travel along the edge and reaches the queue Q e at the head of the edge at time θ + τ e. After adding users to the queues at time θ + τ e, the first users from Q e with maximum aggregated weight not exceeding the capacity ν e can leave edge e and enter vertex v. However, in order to define the model properly, one needs to specify rules that describe which users are allowed to leave the edge if not all can leave the edge due to capacity issues. Werth, Holzhauser, and Krumke assume that the users are processed in the order of arrival at the edge (Werth et al. 2014). However, if multiple users enter the edge at the same time, there is a tie-breaking according to some priority list. For tie-breaking, Werth, Holzhauser, and Krumke use either a global order of users valid in the whole network or a priority order depending on the edge from which the users have entered the questionable edge.

They consider two different objective functions, namely a sum and a bottleneck objective. For the bottleneck objective, users aim for minimizing the maximum time they spend on an edge and the social cost is given by the maximum value of all users. As this objective does not seem closely related to traffic, we focus on the sum objective. In this variant, the users aim to minimize the sum of travel times on their path and the social objective is given by the makespan, i.e., by the largest arrival time of all users. Werth, Holzhauser, and Krumke show that Nash equilibria exist in the case that all users share the same source and smaller users have a higher priority than larger users. If this is not the case, they showed that Nash equilibria might not exist.

3.2 Extensions of the Model

Scarsini et al. (2018) analyzed a model equivalent to the one by Werth, Holzhauser, and Krumke for users that arrive at the source node sequentially. Their aspect was on how the system evolves to a steady state. Harks et al. considered almost the same model but with other objective functions (Harks et al. 2018). In their work, the social objective is the sum of the user’s arrival times (in contrast to the maximum in the work by Werth, Holzhauser, and Krumke). Users are unweighted and at a queue of some edge users are either prioritized with respect to a given global order of users or with respect to a local order of users that is only valid at this edge. This is in contrast to the FIFO setup in the original model, and it is the only model covered here that allows users to overtake other users on the same path. Harks et al. show that Nash equilibria exist in networks with global priorities (Harks et al. 2018). The idea is that if some user i has higher priority than some other user j in all parts of the network, i can never be delayed by j. Thus, greedily assigning the users to their best responses in the priority order constructs a Nash equilibrium. Additionally, they gave various results on the prices of stability and anarchy for both local and global priorities that depend either on the number of users and edge capacities or on the length of a longest path. For more details, we refer the reader to their work (Harks et al. 2018).

Scheffler et al. (2018) modified the model by Harks et al. (2018) and studied their setting under edge priorities. These edge priorities are motivated by traffic rules and are a way more natural setup for traffic. They also provided the existence of equilibria for single-commodity instances and showed bounds on the prices of stability and anarchy. They provided examples where Nash equilibria contain cycles, which might also happen in real-world traffic. Cao et al. extended their model by adding the concept of dynamic route choices, i.e., users only choose their path while traveling (Cao et al. 2017). At each crossing, they decide on the next edge to take, instead of having to fix the whole path before starting to travel. This adaptive route choice is motivated by the replanning of routes while using GPS systems. Ismaili introduced the same behavior back to the original model of Werth, Holzhauser, and Krumke (Ismaili 2017).

Tauer et al. presented results on a train routing model which is based on the discrete store-and-forward packing routing model (Tauer et al. 2020). In their model, the users occupy space and deadlock and spillback effects are in place. Unfortunately, they do not consider strategic users, as trains can usually be routed by a central authority. Peis et al. considered a model for discrete flows over time, where some users might cooperate (Peis et al. 2018).

Hoefer et al. (2011) considered a slightly different variant than all the models mentioned above. They studied a variant with capacities on the number of users that are on an edge at the same point in time instead of having a constraint on the inflow or outflow of an edge. Additionally, their model works in a continuous-time setting.

3.3 Summary

Up to date, competitive packet routing models contain capacitated roads, congestion, individual particles’ objectives, right of way rules, and model discrete indivisible users. Unfortunately, Nash equilibria are generally not unique, and the price of anarchy is quite large (in most cases linearly in the number of users). Additionally, spillback effects are usually not present, which is a huge drawback for traffic modeling. Although the variants with discrete users seem to be the more accurate model in the first place, it widely opens to understand spillback effects in the discrete model. The role and effects of discretization of time steps are often unclear. Sering et al. (2021) recently established first results in this direction and showed an interesting connection between continuous and discrete models. They proved that for decreasing packet sizes and time steps, the packet routing model converges to a flow over time model. In the discrete models, there are instances where different equilibria lead to huge differences in the travel times and it would be interesting to see in future work how much this is in line with real-world traffic. Similar to the continuous version, almost all discrete variants do not give the opportunity for users to overtake other users. An additional main aspect for future work could be the question of modifying the network in order to improve the quality of equilibria. This could be a first step in order to apply the gained knowledge to traffic networks and thus to logistics.