Navigation System-Based Routing Strategies in Traffic Flows on Networks

Navigation choices play an important role in modeling and forecasting traffic flows on road networks. We introduce a macroscopic differential model coupling a conservation law with a Hamilton–Jacobi equation to, respectively, model the nonlinear transportation process and the strategic choices of users. Furthermore, the model is adapted to the multi-population case, where every population differs in the level of traffic information about the system.


Introduction
The use of on-line routing systems in vehicular motion has constantly grown in popularity in the last years. At the same time, its effectiveness in solving mobility problems in big cities is controversial [6,17,28]. In this work, we describe a model for traffic flows on networks of roads where a nonlinear equation representing the macroscopic density of vehicles is coupled to a Hamilton-Jacobi equation, modeling the strategic choices of agents. The model is a further development of what have been introduced Communicated by Bernard Fortzcl.
in [16], including the possibility of real-time forecast of the future traffic states of the system.
Vehicle traffic models which, like ours, describe a flow of "intelligent" cars on a road network are not largely treated in literature: in the survey [5], most of the models describe a hierarchical control framework with the objective of maximizing the overall network efficiency. Our approach is different: similarly to [12], we account for "selfish" agents, which are interested in minimizing their travel cost to destination accordingly to their knowledge of the environment. This kind of interaction creates some non-trivial effects as a consequence of a competitive equilibrium between the individuals.
In this article, after a detailed description of the model, we show some tests illustrating its main features. In particular, we are able to correctly reproduce the so-called "Braess' paradox" [7,11], and to mitigate it with an efficient routing through the network. The model is also used to show the interaction between various populations of drivers, with a different level of information about the traffic system. In this case, the proposed model, in addition to replicate some more realistic scenarios, is able to simulate some non-trivial effects, as the beneficial impact of traffic information even on non-informed users and the equilibrium between routing strategies among the users.

Coupling Fluxes with Strategies: Hughes' Model for Pedestrians
The framework that we are going to present takes inspiration from a model for pedestrian flows [20]. It consists in the following quasi-stationary system of partial differential equations (PDEs) where is a bounded domain of R n and ρ = ρ(x, t) is a density field representing the concentration of the pedestrian at (x, t). The flux term ρv(ρ) is generally used to display the fundamental diagram of traffic flow (see [19], Section 3.1.2), and it establishes a relation between the density of the crowd and its local flux. A common choice for the speed function is v(ρ) = v max (1 − ρ) where the term v max is the maximal speed at which an agent would travel in ideal environmental conditions. We recall that to avoid meaningless behaviors, ρ ∈ [0, 1[. We give a brief modeling interpretation of (1): the density ρ moves in direction −∇u (1a) which is the optimal control of the associated eikonal equation (1b). If the cost 1/v(ρ) is bounded, i.e. if ρ[t] := ρ(·, t) < 1, the solution of the eikonal equation at time t is the value function of a minimal time problem and it is given by u[t](x) = inf{d[t](x, y) : y ∈ ∂ }, where the distance function d [t] : × → R + is defined as follows:
The term 1/v(ρ) can be interpreted as the running cost associated to the curve ξ(s) while the solution u of (1) selects the curves which minimize the integral above. Hence, people are directed towards the boundary trying to avoid crowded regions. It is important to remark as for system (1), the existence of an equilibrium has been proven only in dimension one [1,3] or in presence of a non-zero diffusion term [24].
The adaptation of the principles above to traffic flows must take into consideration the differences between pedestrian and vehicle flows. First of all, vehicles are constrained on road networks with an orientation and any possible strategic choice may happen only at intersections. Secondly, the interactions at such junction points lead us to several modeling choices that we are going to discuss in the following.

Multi-class Traffic Flow Models on Networks
We recall the general framework describing the flow of different classes of users on a road network. Each class density ρ c , c = 1, . . . , N c , is characterized by specific, possibly time-dependent, route choices at junctions, depending on its degree of information about the network, which will be detailed in Sect. 3. Given J k ∈ J , I nc(J k ) := {i ∈ L : J k ∈ I i , π i (L i ) = J k } denotes the set of edges arriving at J k . Similarly, Out(J k ) := { j ∈ L : J k ∈ I j , π j (0) = J k } denotes the set of edges leaving J k . We define a subset T ⊂ J of destination vertexes. We require that T = ∅, i.e. the set T contains at least one element.
For any function f : Each class, density ρ c : ]0, L [×[0, T ] → [0, 1] evolves on each road I according to the mass conservation equation where ρ (x, t) := N c c=1 ρ c (x, t) is the total traffic density on the road I . We notice that, summing up the equations (2) for c = 1, . . . , N c , we obtain the classical LWR model ensuring that the total number of vehicles is also conserved. In (2) and (3), the speed function v : [0, 1] → [0, V ] is a non-increasing function such that v (0) = V and v (1) = 0, where, without loss of generality, we have normalized to 1 the maximal traffic density on each road. Moreover, we assume that there exists a unique pointρ ∈ ]0, 1[ such that the flux function ρ → ρv (ρ) is increasing for ρ ∈ [0,ρ [ and decreasing for ρ ∈ ]ρ , 1]. We set γ max :=ρ v (ρ ) = max ρ∈I ρv (ρ) the maximal flux allowed on the road I .
Solutions of (2) are intended in the following weak sense: Moreover, given any junction J k ∈ J , we have the following , is a weak solution at J k if 1. for every ∈ I nc(J k ) ∪ Out(J k ), ρ is an entropy admissible solution to (2); 2. for every ∈ I nc(J k ) ∪ Out(J k ) and a.e. t > 0, the function ρ (t, ·) has bounded total variation; 3. for a.e. t > 0 it holds for c = 1, . . . , N c , where the existence of the traces at J k is guaranteed by 2.

Junction Conditions
Let us now focus on the dynamics at junctions. In this section, we describe what happens at a generic junction J k : let us denote by I i , i = 1, . . . , n, the incoming roads and by I j , j = n + 1, . . . , n + m, the outgoing ones. The Riemann problem at the junction J is a Cauchy problem with constant initial data on each incoming and outgoing road: Given any distribution matrix belonging to the set we define a generic Riemann solver at J as follows.

Definition 2.4 A Riemann solver RS A is a function
2. for every i = 1, . . . , n, the classical Riemann problem is solved with waves with negative speed; 3. for every j = n + 1, . . . , n + m, the classical Riemann problem is solved with waves with positive speed.
Moreover, we require that RS A satisfy the consistency condition We refer to the monograph [18] for further details on Riemann solvers at junctions. In the present work, we will use the Priority Riemann Solver introduced in [13], which can handle an arbitrary number of incoming and outgoing roads, accounting for priorities among the incoming roads and maximizing the flux through the junction (a brief but detailed description of this solver is included in the Appendix A). Anyhow, the framework presented here can be applied to any generic Riemann solver with different aims like e.g., minimizing the waiting time of the vehicles queuing, modeling intersection devices as traffic lights or roundabout, etc. Junction conditions in the multi-class cases. To extend the above approach to a multiclass framework, we generalize the multi-commodity junction solver discussed in [26] to any underlying Riemann solver RS A satisfying Definition 2.4. In particular, this allows to consider junctions with any number of incoming and outgoing roads.
We follow the procedure below: In the rest of the article, the operators A, A and a j,i , will be noted as A k , A k and a k j,i since referred to the junction J k .

Strategy Modeling on the Network
To model the route choice strategy of the vehicles belonging to a specific class, we use a potential (given by the solution of a Hamilton-Jacobi (HJ) equation), which is the value function of an optimal control problem defined on the network. We distinguish between the static case (only the current configuration of the system concurs to the choice) and dynamic (the future evolution of the system shapes the strategic choice). The theory of viscosity solutions for HJ equations on networks have been introduced in recent years, imposing appropriate transition conditions at the vertices (we refer to [8,10,27] for details). The case of the directed graph-where the arcs can be traveled only in one direction-can be considered a sub-case of the general one. Static case. In the static case, at anyt ∈ [0, T ] we compute the potential function u knowing the current traffic state ρ(·,t), that is, for each c = 1, . . . , N c , the viscosity which represents the weighted distance from the position x to the target set T , minimizing the running cost g c : [0, 1] → R + , which we assume to be a Lipschitz continuous function. The function g c models the influence of the traffic density (at a fixed timet) for the class of vehicles c in the choice of the "shortest" path.
To compute the solutions of (6), we denote by x,z the set of absolute continuous curves connecting x to z identified by a finite sequence n ∈ L, Then the solution of (6) is given by where the (scaled) distance function d c : ds .
We observe that, in general, Eq. (6) could be not defined on some arcs, since a minimal path (i.e., an itinerary to reach a destination vertex in an optimal way) could be not defined in some areas of the network. To overcome this problem, we make the following hypothesis:

H1)
For every x ∈ I there exists at least one z ∈ T such that the set z,x = ∅, i.e. there exists a sequence of indexes 0 , ..., N such that x ∈ I 0 , and Dynamic case. In the dynamic case we assume to know the traffic configuration at any The potential function is computed backward in time starting from the solution of (6) at time t = T as viscosity solution of for each c = 1, . . . , N c .
We can characterise the solution of the equation above as minimum path in a time dependent framework as value function of a backward-in-time finite horizon optimal control problem [22]. The solution of (7) is given by where to define the distance function d c : We underline that at time T , if the agent does not reach a destination point belonging to T , he pays the scaled distance from T as computed in the static case.

Remark 3.1
There are two natural choices for the function g: in the case we fix g(x, ρ) ≡ 1, the drivers will look for the shortest path to destination regardless of the traffic conditions. This is equivalent to follow a fixed path (highlighted by road sign indications or off-line navigation systems), without any information about the traffic state. If g(x, ρ) = v(ρ), agents aim to minimize the travel time to destination over its current speed selecting the fastest path to destination (e.g. using an on-line navigation system). The difference between the static and the dynamic model is that while in the static case drivers use only the information on the current traffic conditions, in the dynamic one they can forecast the traffic evolution and select the real fastest path to destination.

Strategy Coupling at Junctions and Equilibria
The solution of (6), respectively (7), contains information about the optimal strategy to reach the target set T , depending on the perceived cost g c . Since the arcs are oriented, route choices are possible only at junctions. In particular, this allows to define the matrix distribution coefficients in (5), coupling the density to the potential equation.
The choice of how to assign the route choices is, by any meaning, non-trivial. The most basic choice is, in a Wardrop equilibrium fashion, to equally distribute the population on the roads with equal minimal potential functions. More precisely, .
A natural choice for the activation function ψ isψ(x) := 1 for x ≤ 0 andψ(x) := 0 otherwise. In other words, we dynamically distribute the density along the optimal options at any junction. In particular, this was the choice made in [16].
Unfortunately, this choice is numerically non-convenient: in particular, it produces some unrealistic chattering phenomena between two (or more) equivalent paths which may make difficult finding the equilibrium states of the system. This effect may be reduced using a smooth activation function, at the price of not computing the real equilibrium states, but an approximation of them. In particular, one option is taking 0) and > 0, i.e. the logistic or soft step function centered in S/2. This option has the advantage of computing j∈Out(J k ) a c ji = 1 (which is mandatory to have conservation of mass through the junction) but also ψ(S/2) = 1/2, i.e. if two roads are equally favourable the distribution matrix splits between the two. The logistic function has been used in many different application, in particular as standard activation function in computer science [2].
Finally, we can describe the whole model for one population, here reported in the dynamic case: where ρ 0, and u (x) are the initial/final conditions and the functions φ (t) are the inflow conditions at the 'source' vertexes S of the network.

Evaluating the Efficiency
For a deeper understanding of the model, we need to recall some basic concepts about the general efficiency evaluation of a macroscopic traffic system. To this end, we establish a link between the macroscopic model and its microscopic counterpart. The main concepts of this section have been borrowed from [11] and adapted to our case.

Definition 3.1 (Travel time)
We define the travel time between two points y 1 , y 2 ∈ I where y 1 ∈ J (i.e. y 1 , y 2 are on a same edge, with y 1 which is the node at the beginning of the edge) as the function τ y 1 ,y 2 (a ) defined implicitly by ξ(τ (a )) = y 2 , where where γ is the total flux on the junction J k ∈ J and a ∈ [0, 1] is the percentage (i.e. the coefficient of the distribution matrix a ∈ A k ) entering in I . If y 1 is an internal point of I , the definition still holds with the trivial value a = 1 (all the flux remains on the same road), while in the case of two points belonging to different edges connected by a route y 1 ,y 2 composed by a finite sequence of edges n , with n = 0, . . . , N , we proceed settingâ = (a 1 , . . . , a N ) corresponding to the distribution matrices coefficients related to this specific path. We underline that a sequenceâ identify a unique path. Therefore, the travel time in this case is Finally, we call relevant travel time the function τ y 1 ,y 2 (â) forâ such that a i = 0 for i = 1, ..., N , i.e., excluding the paths which are not taken by any of the agents. A stateĀ is an equilibrium state for a destination T iff for every x ∈ I and y ∈ T , all the relevant travel times for every path choice x,y coincide, i.e. for two paths¯ x,y , x,y , the relative sequences of non-null coefficients (ā 1 , ...,ā N¯ ) = (â 1 , ...,â N ) sampled from the same stateĀ give

A multi-Class, Multi-Informed Traffic Flow Model and Numerical Tests
In this section, we present the full model and we perform some tests to show the main features of it. The details about the numerical implementation are deferred to the Appendix B.
One aim of our study is the capability of accounting for different levels of information in an heterogeneous population of agents. Indeed, the previous setting can be generalized to several classes of agents moving on the network following the same LWR-based dynamics. Moreover, with a straightforward generalization, each class may also have a different target set T c . Since for simplicity and to avoid computational burden we do not explore this possibility, we assume that the classes have the same target T , but different strategic approaches.
Let c = 1, ..., N c , and t ∈ [0, T ]. The multi-class version of (8) reads: where ρ c 0, and u c (x) are the initial/final conditions, the functions φ c (t) are the inflow conditions at the 'source' vertexes S of the network and the destination vertexes act as absorbing conditions imposed at the boundary (cf. [15]), motivating the choice of setting ρ c and u c to zero at these points.

Remark 4.1 (A 2−population case)
We describe in detail the special case of two populations ρ 1 and ρ 2 with the same destination set (T ), but different level of information, as considered in the simulation Sect. 4. We fix v 1 (ρ) = v 2 (ρ) = 1 − ρ and g 1 (x, ρ) = 1 and g 2 (x, ρ) = 1 − ρ = v 2 (ρ). In this way, the two populations' route choicesdespite the two groups have the same destinationmay be different at network junctions. In particular, the above choices of g 1 and g 2 model the case where the first population does not use any on-line routing device. The knowledge of the networkor the use of maps or off-line routing devices -brings the density ρ 1 to follow the shortest path to the destination. On the contrary, ρ 2 uses information on the state of the system to avoid congested regions, thus minimizing the time to destination. It is important to keep in mind that, depending on if we compute the function u c in the static or the dynamic case, we, respectively, do not include or include forecasting of the future states of the system.

Test 1: A Simplified Network with One Population
The first test we propose is a toy model involving a simple network consisting of 5 roads and allowing two possible paths connecting the source (node 1) to destination (node 5), see Fig. 1. The two paths are the one passing by the nodes 1-2-4-5 (which has length 3) and the longer one 1-2-3-4-5 (whose length is 3.4).
We assume that the network is empty at t = 0, we consider a single population with constant inflow φ(t) = 0.5 at node 1 for t ∈ [0, 6] and we set φ(x) = 0 for t ∈ ]6, 12]. The space and time meshes are set to Δx = 0.05 and Δt = 0.01, respectively. If the agents are simply-informed, i.e. g(x, ρ) ≡ 1, the whole population follows the path 1-2-4-5, since it is the shortest path to destination.
Despite its simplicity, this test is useful to identify the chattering phenomena between two options to destination mentioned in the previous section. We can compare, in Fig. 2, the effect of a step activation function ψ =ψ (Fig. 2a, b) with respect to the smooth activation function ψ = ψ with = 1 (Fig. 2c, d). As predictable, a smooth activation function prevents any chattering effect and the agents distribute smoothly on the two paths. In the following, where not stately differently, we assume ψ = ψ with = 1.
In Fig. 3, we observe the difference between the simply-informed and the informed case (g(x, ρ) = 1 − ρ).
In Fig. 3a (simply informed), the agents choose the shortest path 1-2-4-5 regardless its current occupation. The path 1-2-3-4-5 is taken by a minimal part of the population since we used a smoothed activation function ψ = ψ with = 1.
In Fig. 3b (informed), the agents know the current state of the system. Therefore, they initially take the more favourable path 1-2-4-5, but later they start using also 1-2-3-4-5.
In particular, as highlighted before in Fig. 2, in absence of a smooth activation function ψ, the population starts to fluctuate between the two options when the value functions u 2 (t, 0), u 4 (t, 0) relative to the two different paths at junction 2 coincide. Using a smoothing activation function, this phenomenon disappears. The distance |u 2 (t, 0) − u 4 (t, 0)| decreases till an optimal value corresponding to a certain part of the flux opting for the longer path which balances such a difference, see Fig. 5. In Fig. 3c (highly informed), we solve the potential equation in the dynamic case (7). In this scenario, the agents can forecast the future states of the system to fully optimize their choices. In practice, in this test, the population splits between the two possible paths in a proportion which is globally optimal. The time to reach destination is equal and minimal for each agent starting from the same point regardless to its routing choices.
Further comparisons between the three situations are reported in Figs. 4and 5. In particular, in Fig. 5, it is possible to see how in the simply informed case the potential functions u 2 (t, 0) u 4 (t, 0) relative to the two possible paths to destination are constant in time, while in the informed one, their difference decreases till an optimal value (equal to zero in the case of no smoothing activation function, see Fig. 2b) which is then constant until the incoming flux starts decreasing. In the highly informed case, the relationship is more complex as we highlight in the next test.

Test 2: Dealing with Braess' Paradox
We reproduce here the well-known Braess' paradox, described for the first time in [7] and later reprised and studied by several authors, see e.g. in [11,25]. The paradox highlights how a selfish (and uninformed) behaviour may worsen the overall traffic flow, so that the opening of a new, more favourable path increases the time to destination for all users. Such phenomenon has indeed been observed in real life situations [4,21]. (c) Highly-informed (c) Highly-informed To reproduce such situation, we consider a 4-street network (composed by 6 nodes and 6 edges) and a 5-street one, where an additional road (edge 7) is open (see Fig. 6). We underline that in these networks, some edges can be travelled with constant speed v(ρ) := 1 (edges 1,3,4 and 6), while the others follow the usual density dependent speed law v(ρ) := 1 − ρ. From the modelling point of view, the former can be seen as high capacity highways (where the speed is only limited by the current law regulations), (b) 5 streets Fig. 6 Braess' paradox network: origin (green) and destination (red) junctions are differently colored; id (above) and the length (below) of the streets are reported; constant speed streets (dashed) are marked and the latter are some low capacity roads, where the traffic density strongly impacts the speed of vehicles. Comparing the two networks, we can observe as, in Fig. 6a, the two paths to destination passing through nodes 1-2-3-5-6 and 1-2-4-5-6 have the same length. In Fig. 6b a new road (edge 7) is available, providing a new, more favourable path to destination 1-2-3-4-5-6, which is very sensitive to traffic congestion, since involving all the edges with non-constant speed function.
To evaluate the performances of a single agent on the network, we use the notion of travel time (TT) given in Definition 3.1, adapted to the discrete case, i.e. called a non-trivial path chosen by a population to navigate from x i to x j , starting from x i at time t, where x k , k = 1, . . . , m, are the discretization mesh points along the path related to a sequence of non-null coefficients (a 1 , ..., a m ) corresponding to the agent's choices at every junction (if there is no junction at x i trivially a i = 1) we have We stress on the fact that here, every point along a specific path γ (x i , x j , t) connecting x i to x j starting at time t is weighted by k z=1 a z which estimates the percentage of agents that are using that specific segment of the path.
As before, we take a constant inflow φ(t) = 0.5 at the junction 1 for t ∈ [0, 6], we set φ(t) = 0 for t ∈ ]6, 15] and the space and time meshes are set to Δx = 0.05 and Δt = 0.01. In Fig. 7, we compare the performances of the two networks in the terms of travel time T T (1, 6, t) for t ∈ [0, 12], i.e. the time needed by a single vehicle starting node 1 at time t to reach the destination node 6. For all strategic choices, we observe the appearance of the typical Braess' paradox (Fig. 7a). The time to destination of an agent starting from node 1 is always higher in the 5 street case (continuous red line) compared to the 4 street case (blue dotted line). Even in all the discharge phase (t > 6), the 4 street situation remains more favourable.
The 'paradox' is anyway mitigated if information on the state of the network is available. In the case of an informed population (knowing only the current traffic situation), Fig. 7b shows that the travel times in the two scenarios are closer. Anyway, since the agents are not able to forecast the future congestion on the most favourable path chosen in the 5 street network, they still create a consistent congestion in the charging phase, which deteriorates the network performances. We highlight that the travel time on the 5 road network for the informed users is always lower than the simply informed case, i.e. having some traffic data improves the traffic fluidity. The Braess' paradox is still present in the highly-informed case depicted in Fig. 7c, even if in a moderate measure with respect to the previous cases. This is due to the presence of the smooth activation function ψ: as we can observe again in Fig. 7c, the 'paradox' tends to disappear with a reduced smoothing ( ≥ 3). We cannot analyze the limit case of a discontinuous ψ =ψ, since our algorithm to compute equilibria (based on fixed point iterations) does not reach convergence (due to the oscillations reported also in Fig. 2). Further research on the most favourable choice of the activation function could be interesting in this case.

Test 2: Two Populations
In real life situations, the presence on the same network of various populations with a different level of information about the route and the traffic state is very common.
Model (9) may efficiently simulate the complex interactions between the different populations to help understanding which is the optimal level of information for better performances on a specific network and how the distribution rate of the different populations affects such performances.
We consider once again the simple 4-roads and 5-roads networks used to illustrate the Braess' paradox, see Fig 6. We compare the behaviour of two populations with a different information level. To get rid of the time dependency for the travel time (10), we compare their mean travel times (MTT) on the interval [0, T ] defined as To make easier understanding the outcome of the tests, we restrict ourselves to the comparison of simply-informed/informed mixed population and simply-informed/highlyinformed. Once again, we simulate the incoming of a constant flux of vehicles φ(t) = 0.5 for t = [0, 6] and φ(t) = 0 for t = ] 6,15]. This incoming flux is split between the two populations following the parameter P ∈ [0, 1], where for P = 0 all the population is simply informed and for P = 1 all the population is informed. We highlight that, in these tests, in the case of P = 0 or P = 1 one of the two populations is not present on the network. This does not prevent us to compute the MTT since it depends on the sum of the two populations. In Fig. 8 , we show the comparison on the two networks. Looking at the 4-road network (Fig. 8a, b) we observe that, in this case, both populations have almost the same mean travel times (the difference is less than 0.2%). In the simulations, we may observe the insurgence of some oscillations between the two paths in the case of informed agents, which are not present in the highly-informed case.
In the 5-road network case, the behaviour is different: in this case, the mean travel time of informed and highly-informed agents is always lower, and the situation improves for both populations as the percentage of informed or highly informed agents increases, showing that they act as 'regulators' of the system. Moreover, mean travel times are lower when an highly informed population is present, with respect to the merely informed case. We remark also that the 5-road network performances are always worse than corresponding the 4-road network case. This tendency has been already observed in the previous test and it can been mitigated, in the highly-informed case, by the use of a less smooth activation function ψ.

Test 3: A Real Network
In this last test, we present, with only an illustrative purpose, a more realistic scenario, which shows the potential of the model proposed. We consider the road network of the Royal Docks area around the London City Airport, including the Borough of Newham and the east part of the Canary Wharf business area. The network, due to the intensity of the displacements, and the presence of various bottlenecks created by the Thames river meander, is particularly exposed to traffic congestion. The road data has been provided by OpenStreetMap, licensed under the Open Data Commons Open Database License (Fig. 9a). In this scenario, we compare the network performances in presence of a different level of information of the drivers. For better clarity, we focus on three particular spots (cf. Figure 9b): in Area 1 the road network crosses the Lea River concentrating the traffic flow on two main bridges; in Area 2 the Gallions Roundabout (right/bottom) has even more intense congestion effects; Area 3 is an average sample of the network.
We perform a simulation of the traffic during a peak hour for reaching the Airport (marked with a red dot on Fig. 9), starting from a low traffic initial condition (the density is set to 0.2 on the whole network) and giving a constant null inflow of vehicles γ (t) = 0 at several nodes (marked in light blue). All the vehicles have as unique target The results of the simulation highlight some known and less-known features of the influence of real-time information in the routing process. Surprisingly, we can observe that the traffic congestion, in the more informed models, spread on a larger area, with the effect of a faster release of the jam (cf. Figure 10 and 12 on the access roads to the bridges (Area 1) and on the Gallions Roundabout (Area 2)). We also notice that traffic information brings traffic congestion also in some roads that are not normally affected by traffic jams in the simply-informed case (see e.g. the traffic evolution in Area 3). This has been observed in real life situations and it has been at the center of discussions after the complaints of local residents in several urban areas [6,17].
Concerning the overall efficiency effects on the network, as already speculated by others authors [25], selfish information does not globally reduce traffic jams on a complex network. At the same time, information reduces the time to reach destination for a single informed driver and even (in presence of a mixed population) for noninformed ones. The price paid for this reduction is a higher occupation of the network on peak hours.

Conclusions
We proposed a macroscopic model accounting for different routing strategies in traffic flows, aiming to reproduce some emerging behaviour in a population of drivers with different levels of knowledge about the current (and possibly future) state of the network system. We performed various tests with the purpose of showing the main features of the model and its possible use as an instrument of identification and prediction of the weaker areas of a road network. As future research, we identify one main point that is not addressed in the present work: we approximated the equilibrium points of the system using a smoothed activation function, but the existence, the nature and the convergence to the limit problem is an interesting question that deserves a deeper study.

A The Priority Riemann Solver
In this section we recall the definition of Priority Riemann Solver given in [13,Section 3]. Given a matrix A belonging to the set of matrices (4) and a priority vector P = ( p 1 , . . . , p n ) ∈ R n , with p i > 0, i p i = 1, indicating priorities among incoming roads, we consider the closed, convex and non-empty set and define:h = sup{h ∈ R + : h P ∈ }.
We set Q i = p i for i ∈ I 1 and we go to next step.
• STEP S. In step S − 1 we defined a set I S−1 and, by induction, all components of Q are fixed for i ∈ J S = I 1 ∪ · · · ∪ I S−1 . We let |J S | < n denote the cardinality of J S and denote by J c S the complement of J S in {1, . . . , n}. We now define h i for i ∈ J c S by: and for every j ∈ {n + 1 . . . , n + m} define We then proceed similarly to STEP 1, setting = min i j {h i , h j } and distinguishing two cases: -CASE 1. If there exists j such that h j = , then we set Q i = P i for i ∈ J c S and we are done. -CASE 2. Otherwise, let I S = {i ∈ J c S : h i = } (by assumption I S = ∅). We set Q i = p i for i ∈ I S . If J S ∪ I S = {1, . . . , n} then we stop, otherwise we go to next step.

B Numerical techniques
We present the discrete version of the model, introduced in Sects. 2 and 3, which uses Godunov discretization for the conservation laws [23] and an upwind method for the eikonal equation [14].
Let us consider a standard discretization of the network N , where a generic edge I is approximated by N points. Setting δ = L /(N − 1), we define the space grid points For each junction point J k ∈ J , we denote by I nc(J k ) = { 1 , . . . , n k } and Out(J k ) = { n k +1 , . . . , n k +m k } the indexes of incoming and outgoing roads, respectively.
whereρ c is the initial traffic distribution on the network. In (11), the numerical flux F(ρ 1 , ρ 2 ) is the standard Godunov flux corresponding to (3), which can be expressed as In order to guarantee the stability of the scheme (11) we impose that We assume that the vehicles exit the network once they have reached their destination.
In this way, they do not contribute further to the possible congestion effects of the latter. Alternative choices are represented by some Neumann condition bounding the flux to a specific exit rate, or directly imposing some non-flux condition. In such cases, congestion could arise upstream the destination points (see [9]).
Finally, we discuss how to deal with the dynamic case. The discretization of Eq. (7)  whereū, is the solution of the static case (11). When we couple this equation with the other terms of (11) that remain invariate, we observe that the equation for the traffic flow is forward in time and the equation for the potential is backward. The coupling is then solved with a fixed point approach, iterating the resolution between the two equations. Despite not having any theoretical result assuring the convergence to the fixed point procedure, we observe that, in most cases, it is reached after few iterations (∼ 6-8 iterations). The only case where the algorithm does not converge is when the smoothing parameter of the activation functionψ is > 3. As explained before, this issue limits the application of the model and it deserves further investigation.

Remark 5.1 (Computational complexity)
The computational complexity of the proposed procedure depends, both in the static and the dynamic case, by the number of the classes, the size and the connectivity of the network considered and the discretization mesh used for numerical scheme. The resolution of the Eikonal equation is comparable to the complexity of a Breadth-first search (often called BFS) algorithm applied on the city network. The Riemann problem complexity is localized on each internal junction and it just requires small matrix multiplication of the size of the incoming and outcoming junction's roads. Finally, the resolution of the density PDEs is performed with an explicit logic, thus no linear system resolution is required. We remark that the implementation performance is not in the focus of the paper, thus no particular optimization for a better quality of the code is explored. However, despite the naive MATLAB implementation we perform, we obtain very good results in the executions times. Indeed, we obtain the static solution in the small-size problems in the order of the minute, and for the London network in the order of the hour. For the dynamic cases, as an iterative convergence is required, the computational complexity is comparable to the static case multiplied by the number of iterations required. As this number is generally low, the execution time is still under control. Finally, we want to remark that a parallel implementation can be exploited with low efforts for each class on the Riemann problems and on the density PDE resolutions thanks to the localized logic nature.