Abstract: We present a new and much more efficient implementation of the proximal decomposition
algorithm for routing in congested telecommunication networks. The routing model that we analyze is a
static one intended for use as a subproblem in a network design context. After describing our new
implementation of the proximal decomposition algorithm and reviewing the flow deviation algorithm, we
compare the solution times for (1) the original proximal decomposition algorithm, (2) our new implementation of the proximal decomposition algorithm, and (3) the flow deviation algorithm. We report extensive
computational comparisons of solution times using actual and randomly generated networks. These
results show that our new proximal decomposition algorithm is substantially faster than the earlier proximal
decomposition algorithm in every case. Our new proximal decomposition is also faster than the flow
deviation algorithm if the network is not too congested and a highly accurate solution is desired, such
as one within 0.1% of optimality. For moderate accuracy requirements, such as 1.0% optimality, and for
congested networks, the flow deviation algorithm is faster. More importantly, solutions that we obtained
from the proximal decomposition algorithm always involve flow on only a small number of routes between
sourcedestination pairs. The flow deviation algorithm, however, can produce solutions with flows on a
very large number of different routes between individual sourcedestination pairs. q 1998 John Wiley &
Sons, Inc. Networks 31: 227238, 1998
1. INTRODUCTION
In [4], a proximal decomposition algorithm was proposed
to solve convex multicommodity flow problems of minimizing average packet delay in networks with point-toCorrespondence to: P. Mahey; e-mail: Philippe, Mahey@isima.fr
Contract grant sponsor: Centre National dEtudes des Telecommunications
Contract grant number: 935B.
point data requirements. Although this algorithm was efficient for solving these problems, its computational requirements were greater than those of the flow deviation
algorithm (see [8] or [18]) on real-size networks. In
this paper, we propose a new and much more efficient
implementation of the proximal decomposition algorithm
for these multicommodity flow problems. This implementation handles larger networks with a larger number of
commodities (i.e., required communications between
nodes), even with required communication between each
CCC 0028-3045/98/040227-12
227
8U22
/ 8U22$$0816
05-14-98 16:24:35
netwa
W: Networks
0816
228
MAHEY ET AL.
8U22
/ 8U22$$0816
05-14-98 16:24:35
F( f )
min Fu ( fu )
u1
s.t. f k Vk
k 1, . . . , K
(1)
f uk fu u U
(2)
k 1
0 fu cu
u U,
(3)
0dk,
source node
...,
dk,
. . . , 0),
demand node
netwa
W: Networks
0816
Fu ( fu )
min
u1
K
u U
(4)
k 1 p Nk
xkp d k k
p Nk
u U
0 f u cu
0 xkp
(5)
k, p,
3. LITERATURE REVIEW
The routing models presented in the previous section have
a significant internal structure which has been used in the
past to build various algorithms. The structural aspects
that can be exploited are decomposition into individual
flow problems, monotropic programming (i.e., separability of the objective function with respect to the variables
and linear constraints), and path generation by minimalcost path computation. We may distinguish two classes
of algorithms: Class 1 consists of direct methods which
try to adapt known mathematical programming techniques to the network structure. Class 2 consists of dual
methods which differ by the choice of the relaxed con-
8U22
/ 8U22$$0816
05-14-98 16:24:35
229
netwa
W: Networks
0816
230
MAHEY ET AL.
Minz
subject to
Az b,
z 0,
Minz
subject to
Az b,
z 0.
subject to
Ax b,
x 0,
8U22
/ 8U22$$0816
x / at (z t 0 x t ).
1. A direction-finding subproblem.
2. A line-search in the resulting direction.
Min
t /1
05-14-98 16:24:35
An alternative is to utilize Wardrops equilibrium conditions directly by measuring the difference in the costs of
the routes used within an SD-pair [23].
In our model, we store and update the individual path
flows as well as the aggregate flow in order to count the
number of paths used. Observe that, since x t is a feasible
flow and z t is an extremal feasible solution (one shortest
route for each commodity), the line search on [x t , z t ] will
keep all previously generated path flows strictly positive,
unless at 1, which is unlikely in practical situations.
This point is important for understanding why the flow
deviation method generates a high number of active paths
(see Section 5).
This algorithm is very efficient for finding near-optimal
solutions, such as within 1 or 2% of optimality. It is used
to solve a routing model for a 30,000-link, 12,000-node
transportation model of the streets of Chicago on a regular
basis.
netwa
W: Networks
0816
(P)
u t arg min
u
F(u) /
1
\u 0 x t 0 ly t\ 2
2l
1 t
(x / ly t 0 u t ).
l
Projection step:
(x t /1 , y t /1 ) ProjA1A (u t , t ).
The behavior of this algorithm and its numerical performance have received only limited attention on specific
models like the FermatWeber location problem [15],
quadratic cost transportation networks [5], and multicommodity flow problems [4]. In [20], theoretical results
show how the sensitivity to the scaling parameter l can
be measured in specific situations, basically when F is
strongly convex with a Lipschitzian gradient.
The key fact lies in the adaptation of complex, specific
real models to the generic problem (P). In most situations, F is a separable function on a product space and
8U22
/ 8U22$$0816
05-14-98 16:24:35
231
the subspace A represents the coupling between each subsystem. Many distinct strategies are possible to put the
multicommodity flow problem (MCF) in the form (P).
In [4], the subspace represents the coupling between
commodities [Eqs. (2)]. Eckstein [5] showed that including node balance equations in the subspace can lead
to specific implementations of (PDM) which are equivalent to the alternating direction method of multipliers
(ADMM) earlier designed for variational inequalities
(see [11]). This is the way that we have now chosen to
implement (PDM) on multicommodity flow problems.
Moreover, we show in this paper that much smaller CPU
times are required when the arcpath formulation
(APMCF) is used.
The derivation of our new algorithm stems from the
application of (PDM) to (APMCF) when the coupling
subspace includes the Eqs. (4) and (5), not only Eq. (2)
as in the original (PD) algorithm. Thus, the new features
of the present implementation with respect to the algorithm described in [4] are twofold:
Path generation: New paths are generated by minimalcost path calculations when optimality conditions are
not met by the current active path flow values and their
dual counterparts in (APMCF).
Distributed updating for flows and potentials: Since the
flow requirements (5) are dualized, each path flow
value and each aggregate arc flow value are updated
separately.
We skip here the details of the successive transformations
needed to get a closed form of the path flows updates
(see [22]). As in [4], the aggregate flows fu are updated
on each arc by solving one-dimensional strongly convex
subproblems. The new feature concerns the individual
commodity flow updates on each existing path: They are
now updated explicitly without the need for solving quadratic flow subproblems, which were the most time-consuming steps in the original proximal decomposition algorithm. As observed before, we obtain the same kind of
distributed updating formulas as the ones used in the alternate direction of multipliers method described in [5].
We focus now on the iterative generation of the paths
until optimality is attained. We use the following notation:
Let Nk denote the number of paths in Nk , and n, the
number of arcs.
The matrix A of coefficients of the coupling constraints
has n / K rows and n / ( Kk1 Nk columns. It defines the
coupling subspace A and has the following structure [see
(4) and (5)]:
netwa
I 0 p1 0 p2
0 w1
0
0
0
w2
???
:
:
???
0
0
W: Networks
0816
??? 0 pK
???
0
???
:
???
0
0
wK
232
MAHEY ET AL.
Nk
(6)
k 1 p 1
Fu ( fu ) 0 y tu fu
D DJ
ru (x t )
( fu ) 0 2 f /
fu
d(u)
2
t
u
(8)
.
Nk
rk (x) d 0 xkp
k
(7)
x tkp/1 x tkp /
p 1
8U22
/ 8U22$$0816
05-14-98 16:24:35
1
(Y tk 0
l (1 / pkp)
1
1 / pkp
rk (x )
0
N tk/1
y tu )
u pathkp
u pathkp
ru (x t )
d(u)
1, . . . , N tk/1
If x tkp/1 0,
x tkp/1 R 0.
y tu/1 y tu /
l
ru (x t /1 ) u
d(u)
Y tk/1 Y tk /
l
rk (x t /1 ) k.
N tk/1
4. Stopping criterion
Update the residuals ru (x t /1 ), u, rk (x t /1 ),
k
Compute the dual infeasibilities
netwa
s tu/1
F *u ( f tu/1 ) 0 y tu/1
if f tu/1 0
if f tu/1 0
(9)
t /1
kp
if x tkp/1 0
W: Networks
0816
233
If
F *u ( f tu ) y tu
if f tu 0
F *u ( f tu ) y tu
if f tu 0
Y tk
y tu
if x tkp 0, p NU k
u pathkp
t
k
t
u
if x
t
kp
u pathkp
ru (x t ) 0
t
u
0 f cu
0, p NU k
rk (x t ) 0
(12)
0x
t
kp
k, p,
s tu s tkp ru (x tu ) rk (x t ) 0. (11)
5. COMPUTATIONAL RESULTS: A
COMPARATIVE STUDY OF (APPDM)
AND (FD) METHODS
We will present three sets of computational tests:
A comparison between (APPDM) and the original
(PDM) algorithm on small-size networks.
A comparison between (APPDM) and (FD) on large
TABLE I. Comparison of the new implementation (APPDM) with the original (PDM)
Delay
8U22
No. of Iterations
No.
Communications
APPDM
PDM
APPDM
PDM
APPDM
PDM
5
10
15
20
25
30
1.23
2.22
3.74
5.45
7.40
8.99
1.24
2.23
3.74
5.45
7.40
8.99
0.31
0.42
0.56
1.19
0.86
1.01
37.7
70.8
177.9
283.4
471.5
587.3
276
276
310
523
325
338
42
59
95
110
123
135
/ 8U22$$0816
05-14-98 16:24:35
netwa
W: Networks
0816
234
MAHEY ET AL.
4452 SD-pairs
Scale
Delay
CPU time (sec) APPDM
No. iterations APPDM
Path dispersion for APPDM
CPU time (sec) FD
No. of iterations FD
1.0
12.59
22.08
4
2
73.5
46
1.5
19.19
25.92
8
3
83.0
52
2.0
25.99
31.88
26
2
92.8
58
2.5
33.01
31.13
22
2
86.3
54
3.0
40.25
38.9
26
2
88.3
50
2.0
41.23
38.3
10
2
187.7
115
2.5
52.82
66.94
40
3
167.2
103
3.0
65.02
111.33
80
3
159.5
99
2.0
56.46
69.77
28
3
271.9
166
2.5
73.01
82.71
44
3
245.6
152
3.0
90.77
319.54
230
4
255.8
158
2.0
72.69
156.49
84
3
359.4
221
2.5
94.98
161.54
192
3
347.6
213
3.0
119.47
712.04
494
4
361.3
222
6678 SD-pairs
Scale
Delay
CPU time (sec) APPDM
No. iterations APPDM
Path dispersion for APPDM
CPU time (sec) FD
No. of iterations FD
1.0
19.65
33.74
6
3
146.2
91
1.5
30.19
40.32
12
3
198.1
123
8904 SD-pairs
Scale
Delay
CPU time (sec) APPDM
No. iterations APPDM
Path dispersion for APPDM
CPU time (sec) FD
No. iterations FD
1.0
26.48
79.35
36
3
241.9
149
1.5
40.99
72.65
30
3
284.7
176
11130 SD-pairs
Scale
Delay
CPU time (sec) APPDM
No. iterations APPDM
Path dispersion for APPDM
CPU time (sec) FD
No. iterations FD
1.0
33.50
76.93
24
3
355.8
219
8U22
/ 8U22$$0816
05-14-98 16:24:35
1.5
52.29
83.88
36
3
362.7
223
gives the maximum number of paths used by a commodity. In Table V, flow/cap corresponds to fu /cu .
Table I shows the improvement of our new implementation over the original (PDM) implementation. The tests
were performed on relatively small problems19 nodes,
68 arcs, and up to 30 commodities. The new algorithm
improves the CPU times by a factor of 100 to 500!
The improvement over (PDM) is due mainly to the
shortcut induced by the arcpath formulation. No quadratic flow subproblems are needed any more, which reduces the CPU time drastically even if more iterations
are necessary to reach the same accuracy.
netwa
W: Networks
0816
Path Dispersion
Scale
APPDM
FD
3.5
4.0
4.5
5.0
5.5
6.0
4
6
5
7
7
6
44
49
52
51
55
55
its proper optimality test, that is, when the maximal tolerance for both KuhnTucker optimality and the row residuals is lower than 10 03 . We stopped (FD) when the delay
value is lower than or equal to the best delay value obtained by (APPDM). In Figure 1, we compare the numerical convergence of both algorithms. Since (FD) generates feasible flows at each iteration, the monotonic decrease of the delay function was chosen to illustrate its
convergence. No such monotonic decrease can be shown
with (APPDM) iterations, since like all dual methods,
feasibility is not maintained during the iterations. Thus,
we chose the maximal row residual versus the number of
iterations to illustrate the behavior of (APPDM). What
should be clear from these graphs are the slow tail of
(FD) iterations when the relative error is below 10%
and the premature convergence of (APPDM) if loose
precision requirements are used.
We conclude that (FD) and (APPDM) have complementary behavior in these models, such that (APPDM)
is faster when a tight precision is required on the stopping
criteria. Note also that the performance of (APPDM)
tends to get worse when the network is highly congested.
As was said above, when scale 3, (FD) seems to converge faster. This behavior was confirmed on even more
congested networks (scale up to 6). Another significant
fact obtained from these results is the comparative behavior with respect to the number of commodities, that is,
the density of the demand matrix. We first observe that
both methods are able to handle a large number of commodities (up to 11130 in the fully dense case with a
communication requirement between every SD-pair).
This is mainly due to the distribution of the computation
among the paths which are iteratively generated by
1. Computing the cheapest paths to deviate the aggregate
flow while maintaining the feasibility of the individual
flows in (FD).
Fig. 1. (a) Row residual versus number of iterations for APPDM. (b) Relative error versus
number of iterations for FD.
8U22
/ 8U22$$0816
05-14-98 16:24:35
235
netwa
W: Networks
0816
236
MAHEY ET AL.
8U22
/ 8U22$$0816
05-14-98 16:24:35
6. CONCLUSION
We have shown that the arcpath implementation of the
proximal decomposition method on the multicommodity
TABLE IV. Description of randomly generated
problems
netwa
Problem
No. Nodes
No. Arcs
No. Commodities
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
60
60
60
100
100
100
200
200
200
200
200
300
300
400
300
300
400
400
400
400
500
500
280
280
280
300
600
600
800
800
1000
1000
1000
1200
1600
1600
2000
2000
2000
2000
2000
2000
2000
2000
100
500
2000
120
200
200
200
500
500
1000
3000
1000
1000
2000
4000
1000
2000
3000
4000
5000
3000
4000
W: Networks
0816
237
Problems
No.
Iterations
CPU Time
(in sec)
Path
Dispersion
Max [flow/cap]
Ratio
Average [flow/cap]
Ratio
Delay
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
1708
6975
24,386
1850
3694
3784
3001
11,278
22,219
4794
6437
29,192
36,471
24,173
37,380
23,876
32,852
32,929
43,896
34,685
50,000
44,022
18.86
212.06
2393.19
31.41
88.87
123.05
253.66
1095.48
1333.47
530.49
1366.3
2918.06
4907.17
4692.39
11,093.2
5972.72
8976.65
8670.13
14,235.7
13,628.5
3
2
2
2
3
9
3
4
4
3
2
3
4
2
2
6
4
2
2
2
54.6
62.5
57.1
60.3
59.9
57.7
58.5
60.3
60.9
58.5
62.6
62.8
63.3
65.7
36.1
64.7
61.0
34.8
58.9
60.5
26.8
31.3
32.4
27.3
25.5
27.8
26.1
28.9
28.8
32.7
36.5
31.4
30.0
33.5
60.8
28.5
32.1
64.1
35.2
36.6
63.15
84.60
97.66
85.40
100.01
104.94
163.75
213.10
218.74
246.89
283.99
356.04
351.75
506.27
430.97
359.39
515.86
533.36
563.74
565.09
16,952.8
62.0
35.0
654.06
[ 2]
[ 3]
[ 4]
[ 5]
[ 6]
REFERENCES
[1]
8U22
D. P. Bertsekas, Algorithms for nonlinear multicommodity network flow problems. Proceedings of the Interna-
/ 8U22$$0816
05-14-98 16:24:35
netwa
[ 8]
W: Networks
0816
238
[ 9]
[10]
[11]
[12]
[13]
[14]
[15]
[16]
[17]
[18]
8U22
MAHEY ET AL.
/ 8U22$$0816
05-14-98 16:24:35
[19]
[ 20]
[ 21]
[ 22]
[ 23]
[ 24]
[ 25]
[ 26]
[ 27]
[ 28]
[ 29]
[ 30]
netwa
W: Networks
0816