6.5 Freight Traffic Assignment Problems
6.5.2 Linear single-commodity minimum-cost flow problems
The linear single-commodity minimum-cost flow (LMCF) model can be formulated as follows.
Minimize
(i,j )∈A
cijxij (6.7)
subject to
{j∈V:(i,j )∈A}
xij−
{j∈V:(j,i)∈A}
xj i=
oi, ifi∈O,
−di, ifi∈D, 0, ifi∈T ,
i∈V , (6.8)
xij ⩽uij, (i, j )∈A, (6.9)
xij ⩾0, (i, j )∈A. (6.10)
210 LONG-HAUL FREIGHT TRANSPORTATION
i j
5
2
1 3
4
xij
oj (or −dj) oi (or −di)
−20
20
−10
−40 50 10
50
−20 10
Figure 6.8 A spanning tree (full line arcs) and the associated (infeasible) basic solution (x12= −20, x23=10, x45=50, x52=10, all other variables are equal to 0).
The LMCF model is a structured LP problem and, as such, can be solved through the simplex algorithm or any other LP procedure. Instead of using a general-purpose algorithm, it is common to employ a tailored procedure, the (primal)network simplex algorithm, a specialized version of the classical simplex method, which takes advan- tage of the particular structure of the coefficient matrix associated with constraints (6.8) (corresponding to the vertex-arc incidence matrix of the directed graphG).
We first examine the case where there are no capacity constraints (6.9). In such a case, it is useful to exploit the following characterization of the basic solutions of the system of equations (6.8), which is stated without proof.
Property. The basic solutions of the system of equations (6.8) have|V| −1 basic variables. Moreover, each basic solution corresponds to a tree spanningGand vice versa.
In order to find a basic solution of problem (6.7), (6.8), (6.10) it is therefore sufficient to select a tree spanningG, set to zero the variables associated with the arcs which are not part of the tree, and then solve the system of linear equations (6.8). The latter step can be easily accomplished through a substitution method. Of course, the basic solution associated with a spanning tree is not always feasible, since the nonnegativity constraints (6.10) may be violated (see Figure 6.8).
The network simplex algorithm has the same structure as the standard simplex procedure. However, the optimality test and the pivot operations are performed in a simplified way.
Step 1. Find an initial basic feasible solutionx(0). Seth=0.
Step 2. Determine the reduced costsc(h)associated withx(h).
LONG-HAUL FREIGHT TRANSPORTATION 211 Step 3. Ifc(h)ij ⩾0,(i, j )∈A,STOP,x(h)is an optimal solution; otherwise choose
a variablexvwsuch thatcvw(h)<0.
Step 4. Select a variablexpq coming out of the basis, make a pivot in order to sub- stitutexpqforxvwin the basis; seth=h+1 and go back to Step 2.
The particular structure of problem (6.7), (6.8), (6.10) and of its dual,
Maximize
i∈O
oiπi−
i∈D
diπi subject to
πi−πj ⩽cij, (i, j )∈A,
enables the execution of Steps 2–4 as follows. At Step 2, the reduced costs can be computed through the formula:
cij(h)=cij−πi(h)+πj(h), (i, j )∈A, (6.11) whereπ(h)∈R|V|can be determined by requiring that the reduced costs of the basic variables be zero:
cij(h)=cij−πi(h)+πj(h)=0, (i, j )∈A: xij(h)is a basic variable.
At Step 3, ifcij(h)⩾0,(i, j )∈A, thenπi(h)−πj(h)⩽cij,(i, j )∈A, i.e. solution π(h)∈R|V|, is feasible for the dual problem. Then,x(h)andπ(h)are optimal for the primal and the dual problems, respectively.
On the other hand, if there is a variablexvw whose reduced cost is negative at iteration h, then arc (v, w)does not belong to the spanning tree associated with iterationh. It follows that, by adding(v, w)to the tree, a single cycleΨ is created.
In order to decrease the objective function value as much as possible, the flow on arc (v, w)has to be increased as much as possible while satisfying constraints (6.8) and (6.10).
LetΨ+be the set of arcs inΨ oriented as(v, w), and letΨ−be the set of the arcs inΨ oriented in the opposite direction (obviously,Ψ =Ψ+∪Ψ−). If the flow on arc (v, w)is increased bytunits, then constraints (6.8) require that the flow on all arcs (i, j )∈Ψ+be increased bytunits, and the flow on all arcs(i, j )∈Ψ−be decreased by the same amount.
The maximum increase of flow on(v, w)is therefore equal to the minimum flow on the arcs oriented in the opposite direction as(v, w), i.e.
t= min
(i,j )∈Ψ−{xij(h)}.
The arc(p, q) ∈ Ψ− for which such a condition holds determines which variable xpq will come out from the basis.
The previous description shows that an iteration of the network simplex algorithm requires only a few additions and subtractions. As a result, this procedure is much
212 LONG-HAUL FREIGHT TRANSPORTATION faster than the standard simplex method and, in addition, does not make rounding errors.
In order to find a feasible solution (if any exists), thebigMmethodcan be used.
A new vertexi0∈T and|V|dummy arcs between vertexi0and all the other vertices i∈V are introduced. Ifi∈O, then a dummy arc(i, i0)is inserted. Otherwise, an arc (i0, i)is added. LetA(a)be the set of dummy arcs. With each dummy arc is associated an arbitrarily large costM.
The dummy problem is as follows.
Minimize
(i,j )∈A
cijxij+M
(i,i0)∈A(a)
xii0+M
(i0,i)∈A(a)
xi0i (6.12) subject to
{j∈V:(i,j )∈A∪A(a)}
xij−
{j∈V:(j,i)∈A∪A(a)}
xj i=
oi, ifi∈O,
−di, ifi∈D, 0, ifi∈T ,
i∈V ∪ {i0}, (6.13) xij ⩾0, (i, j )∈A∪A(a). (6.14) Of course, the|V|dummy arcs make up a spanning tree of the modified directed graph, corresponding to the following basic feasible solution to problem (6.12)–(6.14) (see Figure 6.9):
xii(0)
0 =oi, i∈O;
xi(0)
0i =di, i∈D;
xi(0)
0i =0, i∈T;
xij(0)=0, (i, j )∈A.
By solving the dummy problem (6.12)–(6.14), a basic feasible solution to the original problem (6.7), (6.8), (6.10) is then obtained.
NTN is a Swiss intermodal carrier located in Lausanne. When a customer has to transport goods between an origin and a destination, NTN supplies it with one or more empty containers in which the goods can be loaded. Once arrived at destina- tion, the goods are unloaded and the empty containers have to be transported to the pick-up points of new customers. As a result, NTN management needs to reallocate the empty containers periodically (in practice, on a weekly basis). Empty container transportation is very expensive (its cost is nearly 35% of the total operating cost).
Last 13 May, several empty ISO 20 containers had to be reallocated among the termi- nals in Amsterdam (The Netherlands), Berlin (Germany), Munich (Germany), Paris
LONG-HAUL FREIGHT TRANSPORTATION 213
5
2
3
(0)
−20
20
−10
−40 50 1
4 50
0
10 20
40 50
20
0
i j
xij
oj (or −dj) oi (or −di)
Figure 6.9 Dummy directed graph for the original directed graph in Figure 6.8 (0 is the dummy vertex. Full line arcs belong to the spanning tree. For each basic variable, the associated flow is reported).
1 2
4 3
5
6 7
20
20 20
55 30 30 50
30 70
25
30 40
30
50
−50
−10 −20
−10
Berlin Amsterdam
Madrid
Munich
Milan Paris
Barcelona
i cij= cji j
oj (or −dj) oi (or −di)
Figure 6.10 Graph representation of the empty container allocation problem.
(France), Milan (Italy), Barcelona (Spain) and Madrid (Spain). The number of empty containers available or demanded at the various terminals is reported, along with transportation costs (in euros/container), in Figure 6.10.
The problem can be formulated as follows.
214 LONG-HAUL FREIGHT TRANSPORTATION
1 2
4 3
5
6 7
*
20
20
60
10 10 10
10 10
50
−50
−20
−10
−10
i j
xij
oj (or −dj) oi (or −di)
Figure 6.11 Optimal solution for the NTN empty container allocation problem. (Full line arcs belong to the spanning tree. For each basic variable, the associated flow is reported. The optimal cost is equal to€3900.)
Minimize
30x12+30x21+40x13+40x31+20x14+20x41+30x23+30x32
+55x34+55x43+30x35+30x53+30x45+30x54+50x46
+50x64+70x47+70x74+30x56+30x65+25x67+25x76
subject to
x12+x13+x14−x21−x31−x41= −10, x21+x23−x12−x32=20, x31+x32+x34+x35−x13−x23−x43−x53=50, x41+x43+x45+x46+x47−x14−x34−x54−x64−x74=20, x53+x54+x56−x35−x45−x65= −50, x64+x65+x67−x46−x56−x76= −20, x74+x76−x47−x67= −10, x12, x21, x13, x31, x14, x41, x23, x32, x34, x43, x35,
x53, x45, x54, x46, x64, x47, x74, x56, x65, x67, x76⩾0.
Using the network simplex method, the optimal solution illustrated in Figure 6.11 is obtained.
The above procedure can be easily adapted to the case of capacitated arcs. To this
LONG-HAUL FREIGHT TRANSPORTATION 215 Table 6.3 Transportation costs (in euros) per item from the warehouses to
the sales districts in the Boscheim problem.
London Birmingham Leeds Edinburgh
Bristol 9.6 7.0 15.2 28.5
Middlesborough 19.5 13.3 5.0 11.3
purpose, constraints (6.9) are rewritten by introducing auxiliary variablesγij ⩾0:
xij +γij =uij, (i, j )∈A.
If the variablexijis equal touij, then the associated auxiliary variableγijtakes the value zero and is therefore out of the basis (if the solution is not degenerate). Based on this observation, the following optimality conditions can be derived (the proof is omitted for the sake of brevity).
Theorem 6.1. A basic feasible solutionx(h)is optimal for problem (6.7)–(6.10) if, for each nonbasic variablexij(h), (i, j )∈A, the following conditions hold,
xij(h)=0, ifc(h)ij ⩾0, xij(h)=uij, ifcij(h)⩽0, wherecij(h)are the reduced costs defined by (6.11).
Letx(h)be the basic feasible solution at iterationhof the network simplex method (for simplicity, x(h) is assumed to be nondegenerate). If the value of a nonbasic variablexij(h),(i, j ) ∈ Ais increased, the objective function value increases if the reduced costcij(h)is negative. On the other hand, ifxij(h)=uij, then a decrease in the objective function value is obtained if the reduced costcij(h)is positive.
Letxvw be the variable entering the basis at iterationh(Step 4). Ifxvw(h)=0, then cvw(h)<0and arc(v, w)∈Ais not part of the spanning tree associated withx(h). By adding the arc(v, w)to the tree, a single cycleΨ is formed. In the new basic feasible solution, the variablexvwwill take a valuet equal to
t =min
(i,j )min∈Ψ+{uij−xij(h)}, min
(i,j )∈Ψ−{xij(h)}
. (6.15)
Let(p, q)be the arc outgoing the basis according to (6.15). Then,x(h+pq 1)=upq, if(p, q)∈Ψ+, orxpq(h+1)=0, if(p, q)∈Ψ−. Observe that the outgoing arc(p, q) may be the same as the outgoing(v, w)ift =uvw.
Boscheim is a German company manufacturing electronics convenience goods. Its VCR-12 video recorder is specifically designed for the British market. The VCR- 12 is assembled in a plant near Rotterdam (The Netherlands), then stocked in two
216 LONG-HAUL FREIGHT TRANSPORTATION warehouses located in Bristol and Middlesborough and finally transported to the retailer outlets. The British market is divided into four sales districts whose centres of gravity are in London, Birmingham, Leeds and Edinburgh. Yearly demands amount to 90 000, 80 000, 50 000 and 70 000 items, respectively. The transportation costs per item from the assembly plant of Rotterdam to the warehouses of Bristol and Middlesborough are€24.5 and€26.0, respectively, whereas the transportation costs per item from the warehouses to the sales districts are reported in Table 6.3. Both warehouses have an estimated capacity of 15 000 items and are supplied 10 times a year. Consequently their maximum yearly throughput is 150 000 items.
The annual minimum cost distribution plan can be obtained by solving the following LMCF problem (see Figure 6.12).
Minimize
24.5x12+26.0x13+9.6x24+7.0x25+15.2x26
+28.5x27+19.5x34+13.3x35+5.0x36+11.3x37
subject to
x12+x13=290 000, x24+x25+x26+x27−x12=0, x34+x35+x36+x37−x13=0,
−x24−x34= −90 000,
−x25−x35= −80 000,
−x26−x36= −50 000,
−x27−x37= −70 000, x12⩽150 000,
x13⩽150 000,
x12, x13, x24, x25, x26, x27, x34, x35, x36, x37⩾0.
By using the network simplex method, the optimal solution is determined:
x12∗ =150 000, x13∗ =140 000, x24∗ =90 000, x25∗ =60 000, x35∗ =20 000, x36∗ =50 000, x37∗ =70 000
(as usual, only nonzero variables are reported). It is worth noting that the district of London will be entirely served by the warehouse of Bristol, while the sales districts of Leeds and Edinburgh will be served by the Middlesborough warehouse. The sales district of Birmingham is supplied by both the warehouse of Bristol (75%) and the warehouse of Middlesborough (25%). The total transportation cost is€9 906 000 per year.
LONG-HAUL FREIGHT TRANSPORTATION 217
1
2 3
4 5 6 7
Rotterdam
Bristol
Edinburgh Leeds
Birmingham London
Middlesborough 290 000
24.5
9.6 7.0 15.2
28.5 19.5
11.3 5.0 13.3 0
−90 000 −80 000 −50 000 −70 000 0 26.0
i j
cij
oj (or −dj) oi (or −di)
Figure 6.12 Graph representation of the Boscheim problem.