User-equilibrium model of traffic assignment is based on the fact that humans choose a route so as to minimize his / her travel time and on the assumption that such a behaviour on the individual level creates an equilibrium at the system (or network) level. Flows on links (whose travel times are assumed to vary with flow) are said to be in equilibrium when no trip maker can improve his / her travel time by unilaterally shifting to another route. This notion of equilibrium flows is generally referred to as Wardrop's principle. Before presenting the model which can determine such equilibrium flows on a network, the idea of equilibrium flows or the concept of user-equilibrium needs to be explained further.
Consider, the example network shown in Figure (a).
Figure
(b) gives the travel time function for each of the
three single link routes between the origin O and destination D.
The total demand from O to D is 110.
In the example, obviously if demand is less than or equal to 100, everybody will travel using Route 2 since the travel time offered by Route 2 (between 30 minutes and 40 minutes) will be less than any other route. However, when demand is in excess of 100, if everybody travels on Route 2, then the travel time on Route 2 will become greater than 40 minutes, implying that Route 1 will become more lucrative (offering about 40 minutes of travel time, since the volume on Route 1 is zero at this stage) and some can benefit by unilaterally shifting to Route 1. On doing so if the the volume carried by Route 2 falls below 100 then again Route 2 will become lucrative and some will shift to Route 2 from Route 1. Given this, and the fact the total demand is 110, it can be said that if 100 use Route 2 and 10 use Route 1 then each one will face a travel time of about 40 minutes and none can improve his / her travel time by unilaterally shifting from one route to another. This then will be the equilibrium flow to which the network has to eventually converge given that every traveler always tries to minimize his / her travel time. Notice that under the equilibrium condition Route 3 is not used as it offers more than 40 minutes of travel time.
The example, in addition to clarifying the concept of equilibrium also
illustrates the fact that at equilibrium all routes which are used between a
given origin and destination offer the same travel time which is less than all
routes which are not used. Another interesting feature is that at equilibrium
flow the sum of the areas under the travel time versus flow plots is the least.
This feature can be easily seen by visually inspecting the sum of the
areas shown in Figure . In the figure, (a) corresponds to
the equilibrium flow, and the sum of the areas is equal to area ACDE +
area ABFG. In the figure (b), corresponds to an instance of
non-equilibrium flow conditions with Route 2 carrying all the flow (i.e., 110);
in this case the relevant sum of the areas is simply equal to area HIJK.
In the same figure, (c) represents another instance of non-equilibrium
flow where Route 2 carries a flow of 90 and the rest 20 are carried by Route
1; in this case the relevant sum of areas is area LMNO + area
LPQR. Finally, part (d) of the figure represents another instance of
non-equilibrium flow conditions with Routes 1, 2, and 3 carrying flows of 30,
70, and 10, respectively; the relevant sum of areas in this case is area TUVW + area TXYZ + area T
. Note that
the sum of the areas is the least in (a) -- the case representing
equilibrium flow. The interested reader may try to verify this feature by
constructing other such examples or by proving it mathematically.
The user-equilibrium model formulation is based on this area related
observation about equilibrium flows and the fact that the travel time on a
route is simply a linear sum of the travel times on the constituent links. The
formulation, which is a non-linear programming problem is given in
Equation .
Principles of convex combination methods for solving optimization problems with non-linear objective function and linear constraints
The convex combination algorithm determines the optimum point by proceeding in the following iterative manner.
Solving the mathematical programming formulation of the user-equilibrium model
As stated earlier, the convex combination algorithm is used to solve the mathematical programming formulation of the user-equilibrium model. Here the procedure is presented step-wise. For a better understanding of the procedure parallels are drawn with the steps presented in the earlier section.
Example
For the network shown in Figure and 1000 trips
per day from
Node A to Node B determine the link flows using the
user-equilibrium assignment technique. The link travel times,
,
are given by
. The link number, the
value and the
value for a particular link are mentioned as
on the links. Note that in this case each route has one link.
Solution
Table provides the output of every step at each
iteration. As per the table the flow on link
,
is:
,
,
, and
. Note that all links which
are used have approximately the same travel time and this is less than the
travel time
offerred by the unused link (in this case Link 1).
![]() |
Step | Links | Obj. fn. | ||||
1 | 2 | 3 | 4 | value | |||
1 | 1 | ![]() |
35 | 10 | 20 | 25 | |
![]() |
0 | 1000 | 0 | 0 | 1975.0 | ||
2 | ![]() |
35 | 947 | 20 | 25 | ||
3 | ![]() |
0 | 0 | 1000 | 0 | ||
4 | ![]() |
0.596 | |||||
5 | ![]() |
0 | 404 | 596 | 0 | 197.0 | |
6 | n=2; Go to Step 2 | ||||||
2 | 2 | ![]() |
35 | 35 | 35 | 25 | |
3 | ![]() |
0 | 0 | 0 | 1000 | ||
4 | ![]() |
0.161 | |||||
5 | ![]() |
0 | 339 | 500 | 161 | 189.98 | |
6 | n=3; Go to Step 2 | ||||||
3 | 2 | ![]() |
35 | 22.3 | 27.3 | 35.3 | |
3 | ![]() |
0 | 1000 | 0 | 0 | ||
4 | ![]() |
0.035 | |||||
5 | ![]() |
0 | 362 | 483 | 155 | 189.44 | |
6 | n=4; Go to Step 2 | ||||||
4 | 2 | ![]() |
35 | 26.1 | 26.3 | 25.3 | |
3 | ![]() |
0 | 0 | 0 | 1000 | ||
4 | ![]() |
0.020 | |||||
5 | ![]() |
0 | 354 | 473 | 172 | 189.33 | |
6 | n=5; Go to Step 2 | ||||||
5 | 2 | ![]() |
35 | 24.8 | 25.8 | 25.4 | |
3 | ![]() |
0 | 1000 | 0 | 0 | ||
4 | ![]() |
0.007 | |||||
5 | ![]() |
0 | 359 | 470 | 171 | 189.33 | |
6 | Stop; Report ![]() |
||||||
as solution | |||||||