0% found this document useful (0 votes)
43 views12 pages

Abadnetwork Problemfor Thesimplexmethod: Mathematical Programming 5 (19 73) 255-266. North-Holland Publishing Company

This document summarizes and compares several algorithms for solving minimum cost flow problems, including Path, M-Path, Cycle, Primal Dual, Simplex, and Scaling algorithms. It then describes how the author constructs a specific network problem that requires a quadratic number of iterations for Path, M-Path, Primal Dual, Cycle and Simplex algorithms to solve, but can be solved in linear time by the Scaling algorithm. Therefore, the Scaling algorithm is proven to be the only known "good" algorithm for solving minimum cost flow problems.

Uploaded by

hokl88
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
43 views12 pages

Abadnetwork Problemfor Thesimplexmethod: Mathematical Programming 5 (19 73) 255-266. North-Holland Publishing Company

This document summarizes and compares several algorithms for solving minimum cost flow problems, including Path, M-Path, Cycle, Primal Dual, Simplex, and Scaling algorithms. It then describes how the author constructs a specific network problem that requires a quadratic number of iterations for Path, M-Path, Primal Dual, Cycle and Simplex algorithms to solve, but can be solved in linear time by the Scaling algorithm. Therefore, the Scaling algorithm is proven to be the only known "good" algorithm for solving minimum cost flow problems.

Uploaded by

hokl88
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 12

Mathematical Programming 5 (19 73] 255-266.

North-Holland Publishing Company

A BAD NETWORK PROBLEM F O R THE SIMPLEX METHOD


AND O T H E R MINIMUM COST FLOW ALGORITHMS

Norman ZADEH
IBM Thomas J. Watson Research Center
Yorktown Heights, New York, U.S.A.

Received 27 March 1972


Revised manuscript received 24 April 1973

For any integer n, a modified transportation problem with 2n + 2 nodes is constructed


which requires 2 n + 2 n - ! 2 - - 2 iterations using all b u t one of the m o s t c o m m o n l y used m i n i m u m
cost flow algorithms.
As a result, the E d m o n d s - K a r p Scaling Method [3] becomes the only k n o w n " g o o d " (in
the sense of Edmonds) algorithm for c o m p u t i n g m i n i m u m cost flows.

0. Introduction

In this paper we discuss the theoretical efficiency of the most com-


monly used methods for solving mimimum cost flow problems. These
methods are referred to as "Path", "M-Path", "Cycle", "Primal Dual",
"Simplex" and "Scaling". The following descriptions will be repeated
in more detail in Section 1.
The "Path" m e t h o d [ 1] starts with zero flow and always augments
along a cheapest path from source to sink.
"M-Path" [3,9] is a refinement of "Path" which uses node numbers
so that the cheapest augmenting paths at each iteration may be com-
puted using a Dijkstra calculation. Given two or more cheapest paths,
"M-Path" augments over one with the fewest number of arcs.
"Cycle"' [8] 1 starts with the desired level of source to sink flow
distributed in a feasible but not necessarily optimal manner and pro-
ceeds to optimality by augmenting about a most negative cycle at each
iteration.
The "Primal Dual" method [41 is well known.
The "Simplex" m e t h o d [2] which we refer to is the usual one which
always brings the column with the most negative modified cost coeffi-
cient into the basis.

I The "Cycle" m e t h o d as presented in Klein [8] augments around some negative cycle at each
iteration, because the m o s t negative one m a y be very difficult to compute. We choose a m o s t
negative one and still show that the m e t h o d is theoretically n o t "good".
256 N. Zadeh

The E d m o n d s - K a r p "Scaling" method [3] proceeds by solving a


sequence o f "scaled d o w n " versions of the original problem. Each suc-
cessive problem is solved by starting with an optimal solution to the
previous problem.
Given 2n + 2 nodes, we construct a transportation network N n such
that Path, M-Path and Primal Dual perform the same sequence of 2 n +
2n - 2 _ 2 augmentations while computing a cheapest maximum s-t
flow in N n .
By using two slight modifications of the above network, and starting
Cycle and Simplex off with the right initial solutions, we show that
these t w o methods will then act identically, performing 2 n + 2 n - 2 _ 2
augmentations about the same sequence of negative cycles. Throughout
the computations, the set of bases for the Simplex m e t h o d remain
nondegenerate.
Because Edmonds and Karp [3] have proven that their Scaling
method is a " g o o d " (in the sense of Edmonds) algorithm for computing
minimal cost flows, it follows that their method is the only currently
known " g o o d " algorithm for the minimum cost flow problem. In fact,
their m e t h o d requires only 4n - 7 augmentations to compute a cheap-
est maximum s-t flow for N n.

1. A review of the minimum cost flow problem and algorithms for its
solution

The general minimum cost flow problem involves sending a required


amount o f flow from a source s to a sink t in a capacitated network, at
minimum cost. We will always assume that the lower bound on the flow
in each arc is zero. An example of a small minimum cost flow problem
would b e t o send two units of flow from s to t in network N (Figure
1a). In Figs. 1a-c which follow, a pair of numbers c, u attached to an arc
bear the significance arc-cost (c) and arc-capacity (u). For example, in
Fig. 1 a, arc (2,1) has cost 1 and capacity 3.

Path[l]

As mentioned previously, we will denote by Path that minimum cost


flow algorithm which starts with zero flow, and always augments along
a minimum cost path. When Path is applied to the network N, the first
augmentation is along the path s 2 1 t, which has a cost of 3. At this
point, the network of possible ways of sending flow, called the aug-
m e n t a t i o n n e t w o r k and denoted by N A , is shown in Fig. lb. Observe
that the cost o f arc (t,1) in Fig.,lb is negative, because sending flow
A bad network problem 257

Fig. la. An ex amp le of a m i n i m u m cost flow problem; a typical m i n i m u m cost flow problem:
send 2 units of flow from s to t at m i n i m u m cost. An arc w i t h o u t an arrow means t ha t the flow
may go in either direction.

along arc (t,1) is equivalent to reducing the flow in arc (1,t). In


general, if a network N has a flow f, any path at that point on which a
positive a m o u n t of flow may be sent will be called an a u g m e n t i n g p a t h
(relative to JO.
After augmenting along s 2 1 t, Path will recompute a cheapest s-t
path in N fl . Because N ;1 has arcs with negative costs, such a cheapest
path calculation currently requires O(n 3) basic computer operations.

M-Path [3,9]

M-Path is a refinement of Path which uses node numbers to m o d i f y


the costs so that all modified costs are non-negative. The node numbers
are chosen so that a cheapest augmenting path with respect to the
original costs is also a cheapest augmenting path with respect to the
modified costs. Because computing the cheapes~ path in a network with
non-negative costs. (Dijkstra calculation) is a O(n 2) computation, M-Path
should be more efficient than Path. When there are m a n y cheapest
paths, a m a x i m u m flow computation must be made which could con-
ceivably involve excessive computation [3]. To avoid this, M-Path al-
ways augments over a cheapest path with the fewest n u m b e r of arcs.

Cycle [8]

As mentioned earlier, Cycle starts with the desired level of s-t flow
distributed in a feasible, but not necessarily optimal fashion, and finds
an optimal solution by augmenting about a sequence of most negative
cycles.
When Cycle is applied to the network N, it begins by generating a
feasible flow using a m a x i m u m flow computation. One such feasible
flow, f2, is obtained by sending 2 units of flow along s 1 2 t. The
augmentation network N h is shown in Fig. 1c. Starting with fz, Cycle
258 N. Zadeh

-I,I NK,~ ~ / 3,3

2
N f~
Fig. lb. The augmentation network resulting after 1 unit o f flow has been sent along s 2 1 t,
resulting in a flow f l .
would augment around the cycles s 2 1 s and t 2 1 t in some order. This
would yield the optimal solution.

Primal Dual [4 ]

The primal dual method is closely related to M-Path. We discuss this


relationship in [121. It suffices to say here that, for our purposes,
M-Path and Primal Dual may be thought of as being equivalent.

Simplex [ 2 ]

In the bad sequence of network examples {N s) that will be con-


structed for Simplex, each network will have all infinite capacities (this
is not essential). During the application of Simplex to such networks,
the set of variables (arcs) in each nondegenerate solution, neglecting
orientations, will correspond to a maximal tree. An example of such a
tree, which would be encountered if the simplex method were applied
to N~, is illustrated in Fig. 2. The modified cost of arc (s 2 ,t 1 ) equals the
cost of sending 1 unit of flow around the cycle u s 2 t l v u. The pivot
operation for adding arc (s2,t 1) to the basis corresponds to sending
flow around the cycle u s 2 t 1 v u until one or more basic arcs in the

2
Nf2
Fig. lc. The augmentation network resulting after 2 units of flow have been sent along s 1 2 t,
resulting in a flow f2. Observe the negative cycles s 2 1 s and t 2 1 t, both of cost - 3 .
A bad n e t w o r k problem 259

U _ _ ~/

s3 t3

Fig. 2. A ' t r e e of basic arcs. The particular basis shown above might be encountered if the
Simplexmethod were applied to N s, the bad network shown in Fig. 5. Only arcs with positive
flows are shown, e.g., (u, v) has a flow of 8. Sl,S2, and s a are sources; t b t 2 and t 3 are sinks.

cycle have their flows reduced to zero (become non-basic). In order for
the basis to remain non-degenerate, exactly one basic arc must become
non-basic at each iteration. A pivot operation corresponds to an aug-
mentation about a cycle. If the most negative augmenting cycle at each
stage contains exactly one non-basic arc, then the Simplex and Cycle
methods will perform the same sequence of cyclic augmentations. In the
sequence of bad networks which we construct, both methods perform
the same sequence of cyclic augmentations, and the bases for the Sim-
plex method remain non-degenerate.

Edmonds-Karp scaling method [3]

The reader is referred to [3] for an explanation of the E d m o n d s -


Karp scaling method.

2. Bad networks

The bad networks for Path, M-Path, Primal Dual, Cycle and Simplex
are defined recursively. It can be shown that Path and Primal Dual may
be made to perform the same sequence of augmentations as M-Path.
Therefore, to show that all three methods are "bad", if it suffices to
show that M-Path is "bad". The first three bad networks for M-Path and
Cycle are shown in Fig. 3. In general, Nn, the network with 2n + 2
260 N. Zadeh

nodes which is bad for M-Path and Cycle, may be found by using the
construction shown in Fig. 4. For example, N 4 consists of all the
arcs in Fig. 4 which are connected between pairs of nodes in the set
{s, 1,2,3,4,!,2,3,_4,t ).
Given that Nn is bad for M-Path, it follows that Nn is also bad for
Cycle. To see this, it suffices to examine N 3. Suppose, we start Cycle
off by making the mistake of sending nine units o f flow along the
exceedingly expensive arc (s,t). With this starting solution, the most
negative augmenting cycle at each iteration will contain the arc (t,s),
and in fact, will equal (t,s) u {a cheapest augmenting path from s to t}.
Consequently, if M-Path augments over the sequence of paths P] ..... P/,
then Cycle, when started with nine units of flow in (s,t), will augment
about the sequence o f cycles P1 u (t,s),..., P~ u (t,s).
(I),~

p~,s'
pJ •
cost is OsI capacity is ~ cost is 0 ~
capacit~as shown cost as shown capacity as ~ o w n

I I
N I

aD,~

co~ are 0 capacities are ~ costs ~ 0

2 2_
N2

~,(Z)

cosT~e 0 capacities are . . . . ts a~e'~


cap, tries as sho~m costs as shc*~ capacities ~ sho~l
sI I _ 0 - 2 ~,-t
I I

N3
Fig. 3. Three bad networks for M-Path and Cycle. The dotted arc is not needed for M-Path.
More complicated networks may be obtained by using the construction shown in Fig. 4.
A bad network problem 261

s I_ 2 --~

\ ~ :,'. .',::.~-, /
' ,'N /
costs 15 - l

, /

j ~. i 1
costs 2j-I - 1 "
Fig. 4. The construction of networks with 2n + 2 nodes which require 2 n + 2 n - 2 - 2 augmenta-
tions using M-Path or Cycle. The darkened arcs represent N4, the n e t w o r k for 24 + 2 2 - 2
augmentations. N 5 is obtained by adding the finely d o t t e d arcs to N 4.

B a d e x a m p l e s f o r the S i m p l e x m e t h o d

A bad network for the Simplex method is constructed from a bad


network for M-Path as indicated in Fig. 5a. Each of the capacities in the
modified network N~ are infinite. We require, instead of capacity
restrictions, that the flows out of s 1, s 2 and s 3 equal 1, 3 and 5,
respectively, and that the flows into t 1, t 2 and t 3 equal 2, 2 and 5,
respectively.
It may be verified that the augmentation network for N~, starting
with the flow f as pictured in Fig. 5b, is the same as the augmentation
network for N 3 , starting with 9 units of flow in (s,t). Also, the flow f
yields a non-degenerate, basic feasible solution for the Simplex method.
Consequently, Simplex and Cycle may be started off with the same
augmentation networks. When started in this fashion, the methods will
perform the same sequence of cyclic augmentations provided that each
augmentation performed by Cycle brings exactly one non basic arc into
the basis.
262 N. Zadeh

capacitj~fs are ~ c o s t s as sho~al capacities ar~


J _ _ 0 _ _ k,

$
N3
Fig. 5a. Getting a bad network for the Simplex method from a bad network for M-Path. The
flows out o f s b s2 and s 3 must be 1, 3 and 5, respectively; the flows into tl, t : and t3 must be
2, 2 and 5, respectively.

fig. 5b. An example of a bad, non-degenerate, basic feasible initial solution f for the Simplex
method.

3. Pathological behaviour of M-Path

If we can show that Nn is bad for M-Path, it will follow that it is bad
for Cycle. We can then conclude that Nns will be bad for Simplex,
provided that the augmentations performed by Cycle on Nn correspond
to Simplex pivots.
Rather than actually prove that M-Path will require 2 n + 2 n - 2 _ 2
augmentations when applied to Nn, we will instead present the se-
quence of augmentations for N3, and then discuss the basic idea behind
a proof. In the process, we will indicate why the augmentations per-
formed b y Cycle correspond to non-degenerate Simplex pivots. The
reader who is interested in a formal p r o o f is referred to [12].
In the following, it will often be convenient to delete the word
augmentation, i.e., we may just say "P/" instead of "the augmentation
Pj" or "the augmentation over path Pi""
A bad network problem 263

Fig. 6 presents the sequence of augmentations which occur when


M-Path is applied to N 3 . Note the following observations.
(i) The sequence of path costs is nondecreasing, and whenever two
paths have the same cost, they have the same number o f arcs.
This observation is necessary but not sufficient for M-Path to follow
the sequence of augmentations indicated.
(ii) Each augmentation increases the total flow in the network by 1.
(iii) Each augmentation sends flow along exactly one arc of the form
(i,]) which did not previously have flow.
(iv) Each augmentation either increases the flow in exactly one arc to
its capacity or decreases the flow in exactly one arc to zero.
Observations (iii) and (iv) imply that the cyclic augmentations about

PATH COST ARCS IN P A T H T O T A LFLOW IN


NETWORK
PI 0 s. ~ ~ ......... I I

P2 I

P3 2

P4 3

3
P5 3
• 2 ..---'2

3 3.

P6 4 I

3
P-r 5

3 3
P8 6

3 _3
Fig. 6. T h e s e q u e n c e o f a u g m e n t a t i o n s w h i c h o c c u r w h e n M - P a t h is a p p l i e d t o N 3. S a t u r a t e d
a r c s are d o t t e d .
264 N. Zadeh

P1 u(t,s) .... ,.P8u(t,s) correspond to non-degenerate Simplex pivots, in


other words, exactly one arc enters the basis and exactly one arc leaves.
(v) P6 contains the subpath 2 --, 1 -+ ! --' 2, while P3 contains the
reverse of that subpath, namely, 2 -+ 1 -+ 1 -~ 2; P7 contains the
subpath _1 ~ 2, while P2 contains the subpath 2 ~ _1; and P8 contains
the subpath _1 --, 1 while P1 contains the subpath 1 -+ 1. In other words,
an augmentation of one unit over P6 in some sense "undoes" the
augmentation over P3, and the same is true for the pairs (PT,P2) and
(P8, Pa ).
(vi) Using observation (v), we can loosely represent P6, P7 and P8,
respectively as s 3 ~3 _3 t, s 3 P2
"- _3 t and s 3 P13 t.
Observations (v) and (vi) constitute the guts of the example. They
essentially say that the augmentations for N 3 correspond to (a) per-
forming the augmentations for N2; (b) performing two "spacer" aug-
mentations; and then (c) "unperforming" the augmentations for N 2.
Consequently, the number of augmentations for N 3 is more than
double that number of N 2. If we looked at N 4, we would find that the
augmentations for N 4 correspond to (a) performing the augmentations
for N 3 ; (b) performing two augmentations over paths s ~ 3 -+ _4 -+ t and
s --, 4 ~ _3 ~ t; and then (c) '°unperforming" the augmentations f o r N 3 .
(vii) With the exception of arcs (s,3) and (3_,t), the arcs adjacent to
nodes 3 and 3 have the same cost.
(viii) Since P3 is more expensive than P2, reducing the flow on P3
will be cheaper than reducing the flow on P2" This observation, along
with observation (vii), explains why P6 is cheaper than P7, and why P7
is cheaper than P8.

4. Outline of proof

The proof, which is given in [ 1 2], is inductive. The inductive step is to


show that if M-Path performs the sequence of augmentations P1 ,'", PN~
for Nk, then the sequence of augmentations it performs for Nk+ 1 m a y
be expressed as P1,...,PN~, plus the augmentations s k k+l t and
s k + l ~ t , plus a sequence of augmentations which may be expressed as
s k+l PNk k+l t, s k+l PNk- 1 k+l, t,...,s k+l P1 k+l t. The inductive
argument also requires a hypothesis as to the appearance of flows in the
network after PNx. The proof, as given in [12], consists of three steps.
We first show that when M-Path is applied to Ark+ 1, it begins by per-
forming P1 ,'",PNk" This follows because the costs of all arcs connected
to either node k+l or node k+l are chosen just large enough so that any
simple path contained entirely in Nk will be cheaper than any path
passing through k+l or k+l.
A bad network problem 265

The next step is to argue that s k k+l t and s k+l k t will be per-
formed after PNk" The substance of the argument is that s k k+l t and
s k+l k t contain only one costly arc connected to either nodes k+l or
k+_A1,whereas all their competitors contain two.
Finally, w e v e r i f y that the sequence s k+l PNk k+___llt, s k+l PNk
k+l t .... ,sk+l P1 k + l t will be performed in that order a f t e r s k+l k t.
We know t h a t s k+l PNk k+l t i s cheaper t h a n s k+l PNk --1 k+l t, etc.
because of observation (viii). Therefore, the burden of the p r o o f is to
show that (a) we can perform the sequence of augmentations s k+l PNk
k+l t,...,sk+l P1 k+l t, and that (b) no cheaper augmenting paths get
in the way at any point. This is a somewhat tedious argument which
requires an inductive assumption a s to what the flows after PNk are.
Once it is verified that s k + 1 PNk k + 1 t ..... s k + 1 P1 k + 1 t are performed,
then the inductive assumption concerning the flows after PNk+I is
stfown to be satisfied. This ends the proof.

Acknowledgment

The author would like to thank Professor I. Adler for his helpful
comments.
This work represents part of a Ph.D. thesis done under the direction
of Professor R.M. Karp.

References

[1] R.G. Busacker and P.J. Gowen, "A procedure for determining a family of minimal-cost
network flow patterns", Operations Research Office, The Johns Hopkins University, Bal-
timore, Md., No. ORO 15 (1961).
[2] G.B. Dantzig. Linear programming and extensions (Princeton University Press, Princeton,
N.J., 1962).
[3] J. Edmonds and R.M. Karp, "Theoretical improvements in algorithmic efficiency for
network flow problems", Journal of th e Association for Compu ring Machinery 19 (1972)
248-264.
[4] L. Ford and D.R. Fulkerson, "A primal dual algorithm for the capacitated Hitchcock
problem", Naval Research Logistics Quarterly 4 (1957) 47-54.
[5] L. Ford and D.R. Fulkerson, flows in networks (Princeton University Press, Princeton,
N.J., 1962).
[6] T.C. Hu, Integer programming and network flows (Addison-Wesley, Reading, Mass.,
1969).
[7] V.L. Klee and G.J. Minty, "How good is the simplex algorithm", Boeing Math. Note No.
643 (February 1970).
[8} M. Klein, "A primal method for minimal cost flows", Management Science 14 (1967)
205-220.
[9] N. Tomizawa, "On some techniques useful for solution of transportation network prob-
lems", Networks 1 (1972) 173-194.
266 N. Zadeh

[ 10] H.M. Wagner, "On a class of capacitated transportation problems", Management Science 5
(1959) 304-318.
[ 11] N. Zadeh, "Theoretical efficiency of the Edmonds-Karp algorithm for computing maxi-
mal flows", Journal of the Association for Computing Machinery 19 (1972) 184-192.
[12] N. Zadeh, "Theoretical efficiency and partial equivalence of minimum cost flow al-
gorithms: A bad network problem for the simplex method", Operations Research Center,
University of California, Berkeley, Calif., No. ORC 72-7 (1972).
[13] N. Zadeh, "More pathological examples for network flow problems", Mathematical pro-
gramming 5 (1973) 217-224.

You might also like