FINDING THE n MOST VITAL LINKS
IN FLOW NETWORKS
By
GUY THOMAS SICILIA
A DISSERTATION PRESENTED TO THE GRADUATE COUNCIL OF
THE UNIVERSITY OF FLORIDA IN PARTIAL
FULFILLMENT OF THE REQUIREMENTS FOR THE DEGREE OF
DOCTOR OF PHILOSOPHY
UNIVERSITY OF FLORIDA
1971
TO
THE THREE MOST IMPORTANT PEOPLE
IN MY LIFE
MY MOTHER, AGATHA MARIE
MY FATHER, PETER
AND
MY WIFE, ANNE
A CK NOWLEDGMENTS
It is only just that when speaking of acknowledgments,
Dr. H. D. Ratliff, my supervisory committee chairman, be the first
mentioned. His assistance and direction are greatly appreciated.
For assistance in finding a meaningful topic and in carrying
out the research, I am deeply grateful to Dr. S. Lubore. I would also
like to thank Mr. S. Haus with whom I had many helpful discussions.
The research for this thesis was supported partly by the
Army Research Office (Project Themis) and by the Mitre Corporation
(as much of the research was accomplished while the author was
employed by Mitre). MIr. J. Selinka and Dr. W. Yondorf were largely
responsible for this latter support. For this assistance I am very
grateful.
Finally, my typist, Mrs. Larrick, and my wife, Anne, deserve
a great deal of gratitude as they were very patient while trying to
decipher my handwriting and preparing this manuscript.
TABLE OF CONTENTS
Page
ACKNOWLEDGMENTS . . . . . . . . . . . . iii
LIST OF TABLES . . . . . . . . . v
LIST OF FIGURES . . . . . . vi
ABSTRACT . . . . . . . . . . . vii
CHAPTER
1 INTRODUCTION .. . . . . . . . . 1
Problem Definition . . . . . . . . ... 4
Applications .. .. . . . . . . . . . 7
Previous Contributions .. . . . . . . 8
2 THE SINGLE MOST VITAL LINK PROBLEM . . . . .. 14
Introduction . . . . . . . . 14
Wollmer's Algorithm . . . . . . . . .. 15
An Improved Algorithm .... . .. . . . 16
A Labeling Scheme . . . . . . . . . . 18
An Example . . . . . . . . . . 23
3 THE n MOST VITAL LINKS PROBLEM . . . . . . 27
Introduction ...... . . . . . . 27
A Cut Problem Approach . . . . . . . .. 27
Development of a Cut Algorithm . . . . . . 29
The Modified Cut Method . . . . . . ... . 33
An Example Using the Modified Cut Method . . . .. 35
An Exmnple Where a Gap Occurs . . . . . ... 38
4 RESOLUTION OF THE GAP PROBLEM . . . . . ... 42
Introduction ... . . . . . . . . 42
Some Preliminary Results . . . . . . . .. 43
The Extended Modified Cut Method . . . . . . 45
The General Algorithm . . . . . 49
An Improved General Algorithm . . . . . . . 52
An Example . . . . . . . . . 55
5 COMPUTATIONAL RESULTS AND CONCLUSIONS . . . . .. 58
Conclusions . . . . . . . . 63
APPENDIX A FORMULATIONS OF THE n MOST VITAL LINKS PROBLEM . 65
A Linear Formulation . . . . . . . . 65
A Quadratic Formulation . . . . . . ... 67
REFERENCES . . . . . . . . . . . . . 72
VITA . .. . . . . . . . . ... 75
LIST OF TABLES
Table Page
5.1 Results of Applying Modified Cut Method to
Sample Networks ......... . ....... . 60
5.2 Results of Applying Improved General Algorithm to
Gaps That Occurred in Sample Networks . . . ... 62
LIST OF FIGURES
Figure Page
2.1 Maximal Flow in Sample Network 2.1 with Source Node s
and Sink Node t . . . . . . . . ... .. . 23
2.2 Revised Maximal Flow in Sample Network 2.1 ...... 25
3.1 Example Network 3.1 . . . . . . . . ... 36
3.2 G1(N,A) of Example Network 3.1 . . . . . ... 36
3.3 G2(N,A) of Example Network 3.1 . . . . . ... 37
3
3.4 G (N,A) of Example Network 3.1 . . . . . ... 38
3.5 Example Network 3.2 . . . . . . . . ... 39
3.6 G (N,A) of Example Network 3.2 . . . . . ... 39
3.7 G2(N,A) of Example Network 3.2 . . . . . ... 140
3.8 G (N,A) of Example Network 3.2 . . . . . ... 41
4.1 Example Network 4.1 . . . . . . . . ... 55
4.2 The First Subnetwork of Example Network 4.1 . . . 56
4.3 The Second Subnetwork of Example Network 4.1 . . .. 57
Abstract of Dissertation Presented to the
Graduate Council of the University of Florida in Partial Fulfillment
of the Requirements for the Degree of Doctor of Philosophy
FINDING THIE n MOST VITAL LIN(S
IN FLOW NETWORKS
By
Guy Thomas Sicilia
December, 1971
Chairman: Dr. H. D. Ratliff
Major Department: Industrial and Systems Engineering
The n most vital links of a flow network are defined as those
n arcs whose simultaneous removal from the network causes the greatest
decrease in the throughput capability of the remaining system between
a specified node pair. These n arcs are shown to be the n largest
capacity arcs in some cut. A solution procedure is developed which
involves sequentially modifying the network in such a manner as to
make this cut minimal. An algorithm with computational results is
presented.
vii
CHAPTER 1
INTRODUCTION
The research presented in this dissertation is concerned with
the problem of optimally removing components of a flow network. There
are many problems embedded in this part of network theory. This is
due to the multitude of considerations which are involved in stating
and solving a network problem. For instance, one must note the type
of network involved; which and how many network elements are candidates
for removal; and what is the measure of optimality (i.e., what was the
purpose of posing the problem).
The problem of removing arcs from a network so as to stop all
flow from a set of sources, S, to a set of sinks, T, at a minimal cost
(where each arc requires an assigned cost for removal) is referred to
in the literature as the Attacker's Problem. The related problem of
reinforcing a network so as to most increase the cost of the optimal
solution to the Attacker's Problem is referred to as the Defender's
Problem. In this latter problem there is an assigned cost which is
required to improve any link and a budget consideration which limits
the "improvements" that can be made. Thus, there are several sets of
improvements which the defender could make and remain within his budget.
Any such set of improvements is called cost feasible and each of these,
if implemented, would lead to a different reinforced network.
The Defender's Problem is to find that costfeasible set of improvements
which gives a reinforced network with the property that the optimal
solution to the Attacker's Problem used against this reinforced network
is at least as large as the optimal attacker's solution against any of
the other feasible reinforced networks. Jarvis [19] solves both the
Attacker's and Defender's Problems for the singlecommodity case by
using the Generalized Lagrange Multiplier Method of Everett [10] and
Nunn [24], and the transshipment model of either Busacker and Gowen [6]
or Ford and Fulkerson [11]. In the same paper, Jarvis solves the multi
commodity Attacker's Problem and formulates, but does not solve, the
multicommodity Defender's Problem. Ratliff [26] solves the multi
commodity Defender's Problem for a network by solving a series of multi
commodity minimal disconnecting set problems and a series of setcovering
problems. Ratliff uses a method developed by Bellmore, Greenberg, and
Jarvis [3] to solve the former series of problems and a method of
Bellmore and Ratliff [4] to solve the latter series of problems.
Greenberg [15] defines a more general Attacker's Problem than that of
Jarvis. His method of solution for the singlecommodity case involves
the Generalized Lagrange Multiplier Method and the maximum flow algo
rithm [11]. He solves the multicommodity Attacker's Problem by modi
fying a 01 integer programming method described by Geoffrion [14] and
Balas [1].
It can be noted that by setting the cost of destroying an are
equal to its capacity,the Attacker's Problem becomes synonymous with
the minimal disconnecting set problem. Bennington [5] gives a method
to solve the latter problem for an undirected network. He also shows
that the multicommlodity minimal disconnecting set problem can be posed
as a node isolation problem. A discussion of the isolation problem and
a method to solve it are given by Bellmore, Bennington, and Lubore [2].
The notion of assigning values to different elements of the net
work has also been employed by various people. Hobbs [18] assigns num
bers to the links and nodes of a communication network to reflect their
relative importance. The determination of these "importance numbers"
which are based on the configuration of the network and the assigned
value of each commandersubordinate pair, is equal to a sum of products.
The sum is taken over the possible commandersubordinate pairs, where
each element of the sum is a product of the value of the particular
commandersubordinate pair and the percent of chains connecting the
commander and subordinate which contain the link in question. Krokowski
[20] also suggests that importance values be assigned to links and nodes,
but he proposes that a good measure of the value of a network .component
(in a war situation) would be the replacement cost of the element. He
recommends a linear programming approach but does not develop the solu
tion beyond the conceptual stage.
The effect of changing the length of a link on some or all of
the shortest paths between nodes in a network is addressed by Halder
[17]. In fact, he locates the shortest path distances that will be
affected by increasing the length of an arc for a symmetric distance
network (a network where d(a,b) = d(b,a) for all nodes a, b in the
set N).
It should also be noted that the general subject of network
vulnerability and synthesis can be viewed strictly as a graph theory
problem. For instance, Frank and Frisch in [13] present analysis meth
ods for problems similar to, and yet different from, those previously
mentioned. In particular, they consider an Attackerlike Problem in
which the objective is to determine the minimum number of nodes, arcs,
or arcs and nodes that must be removed to: (1) stop all possible flow
between designated node sets, and (2) partition the network into two
disjoint sets (i.e., source and sink nodes are not specified and break
ing the communication between any pair of nodes is acceptable). They
also consider the problem of constructing a network, subject to cost
constraints, for which the number of elements that must be removed to
partition the network into two components is maximal.
Problem Definition
The problem to be addressed in this paper is to determine those
n arcs (or links) whose simultaneous removal from the network causes the
greatest decrease in the maximal possible flow between some specified
node pair. This problem will be referred to as the n Most Vital Links
Problem and the best set of n arcs to remove will be called the n most
vital links. Note that if removing n arcs stops all the flow between
a source and sink, then this problem becomes the Attacker's Problem
where the cost to destroy any are is the same.
The following definitions and notation will be used throughout
this dissertation.
A network will be denoted by G(N,A), where N = {x1,x2,...J is
a finite collection of elements x., each representing a node in the
1
network, and A is a subset of the pairs (x,y) of elements from N repre
senting arcs in the network. (Another characterization of the arcs which
will be employed is a eA.) The number of nodes in N will be denoted by
MN and the number of arcs in A by m. If the arc (x,y) is an ordered
pair, then it is called a directed arc; otherwise, it is an undirected
arc. For the results presented in this dissertation, arcs may be con
sidered as either directed or undirected.
Given the network G(N,A), if a nonnegative number denoted by
either c(x,y) or c(a) is assigned for each arc in A, then this value
will be defined as the capacity of the arc (x,y), as it can be thought
of as the maximal amount of some commodity that can arrive at node y
from node x per unit time.
One of the fundamental notions in network theory is the concept
of the maximal flow between a designated pair of nodes (s and t). Given
the network G(N,A) and a capacity c(x,y) for each (x,y) e A, a question
which arises is: what is the maximum amount of steady state flow that
can travel from node s to node t over the network G(N,A), subject to
the condition that the flow over any arc is no larger than the capacity
of the arc? Ford and Fulkerson [11] formulate this problem as a linear
programming problem with a special structure. This structure allows
the use of very efficient methods (the maximum flow algorithm) for
solving the problem. Let f(x,y) be a variable which corresponds to
the flow over arc (x,y) and v the net flow out of node s, or equiva
lently, the net flow into node t (i.e., v = E f(s,y) E f(y,s)
yeN yeN
for all pairs which are arcs in the network). A statement of the
maximal flow problem is:
Max v
such that v if x = s
Z f(x,y) E f(y,x) = 0 if x / s,t
ycN yeN
v if x = t
f(x,y) < c(x,y) for all (x,y) e A
f(x,y) > 0 for all (x,y) C A
Finally, two related sets of arcs, disconnecting sets and cuts,
will be discussed. A cut, (X,X), separating a designated pair of nodes
s and t is a set of arcs defined by:
(X,X) = ((x,y) I (x,y) CA, x eX, and y eCR
where the sets X and X are any partition of the set of nodes, N, such
that s eX, t eC, XnRX= ,and XUX = N. (A cut, on occasion, will also
be denoted by A*.) A disconnecting set separating a designated pair of
nodes s and t is a set of arcs which partitions the nodes of N into
p sets; X1,X 2... Xp such that if s eXi, then t, Xi for i = 1,2,...,p;
'2 p i
X. nX. = for i ; j; and X. =N. Thus, a cut is a special type
1 3 =
of disconnecting set, i.e., a disconnecting set for which p = 2. The
capacity or value of a cut and a disconnecting set will be taken as the
sum of the capacities of the arcs in the cut and disconnecting set,
respectively.
Letting a cut be defined as minimal if its value is at least
as small as the value of every cut of G(N,A), Ford and Fulkerson [11]
prove that the maximal flow value of G(N,A) is equal to the minimal
cut value of the same network.
Using the notation and results just discussed, the n most vital
links problem may now be restated as:
Let E. for i = 1,2,...,p be all subsets of A that contain
1
exactly n elements (the cardinality of the set E. will be
1
denoted by JEil), and let Co(N,A) be the capacity of a min
imum cut in G(N,A). Find the arc set Ek such that
C (N,AEk) 5 C (N,AE.) for j = 1,2,...,p.
Applications
Some applications of the most vital links problem include:
(1) A conflict situation where there is a logistics or communi
cations network, a defender or user of this system and an interdictor
of the system. The user wishes to know which arcs are most vital to
him so that he can reinforce these arcs against attack, while the
attacker, naturally, wants to destroy those arcs which most decrease
the efficiency of the system.
(2) A traffic control situation where, during evening rush
hour, most motorists go from the city (source) to the suburbs (sinks).
A question which arises is: If n road segments were to become blocked
what effect would this have on the rush hour flow and the blockage which
n road segments would most decrease flow? One use for this information
arises in the scheduling of work crews to the transportation network.
For example, given there are n different repair crews, simultaneously
assigning them to the n most vital links would not be advisable.
Previous Contributions
The most vital links problem and other very similar problems
previously have been addressed. These findings are mentioned in this
section with the most significant results being outlined in more
detail.
Wollmer [29] has devised an algorithm for finding the single
most vital link in a network. Also, by solving shortest path problems
[11], for a dual graph [7], in [27] he has been able to solve for the
n simultaneous most vital links for a planar undirected network.
Durbin [9] uses Wollmer's single most vital link approach to target
strikes for an attacker of a given network. Each arc is given a repair
time (in time periods) and n strikes are made for each time period on
that part of the network which is currently operative. Ondrasek and
Wollmer [25] address a problem, similar to, but more general than that
of Durbin as they add the consideration of repair time and cost of an
arc in determining which arcs to attack.
The single most vital link problem allows solution methods
which cannot be efficiently applied to the more general problem. For
this reason only results concerning the more general problem are pre
sented here. Chapter 2 will be solely devoted to the single most
vital link problem.
The most significant contributions in this area are due to
Wollmer [27,28], and McMasters and Mustin [22]. Their results can be
summarized as follows:
Results due to Wollmer
Letting a network G(N,A) be defined as planar if it can be
drawn on a plane such that no two arcs intercept except at nodes, and
as sourcesink planar, if the network generated by adding to G(N,A) an
arc from the source to sink is planar, the problem proposed by Wollmer
can be stated as:
Consider a sourcesink undirected planar network in which
each arc is subject to, at most, one breakdown: a breakdown
resulting in a reduction in the capacity of that arc by a
known quantity. It is desired to find the greatest reduction
in maximum flow possible from, at most, n breakdowns and where
these breakdowns must occur, to give this reduction.
If a given network, the primal network, is sourcesink planar
there exists a related dual network. Wollmer's solution technique uses
these two networks and a relationship developed by Ford and Fulkerson
in [12]; i.e., the result is:
A one to one correspondence exists between the cut sets
of the original or primal network and the loopless path through
the dual network (in the dual network the arcs have lengths
rather than capacities). The problem of finding the minimum
cut set in the primal network is equivalent to finding the
shortest path through the dual.
Thus, finding the maximal flow value of a sourcesink planar
network is equivalent to solving a shortest path problem through the
dual. Also, the problem proposed by Wollmer can be stated in terms
of the dual network as:
Let each are of the dual network have two lengths assigned
to it, i.e., the original and the reduced length (where in the
primal network these correspond to the original and reduced
capacities, respectively). Assuming that the lengthsof at most
n 'arcs can be reduced, the problem is: the length reduction
of which n arcs will lead to the shortest possible path through
the network?
Wollmer, using the fact that shortest path problems are in gen
eral easier to solve than other network problems, developed an algo
rithm which solves n+ network problems. The first or th problem is
a shortest path problem for the dual network. The other n problems,
for i = 1,...,n, solve the following: Given that the shortest path
problem in which at most i 1 arcs may have their length decreased has
been solved, what is the optimal solution to a shortest path problem
which allows at most i arcs to have a reduced length? Wollmer solves
th
the i subproblem by finding the shortest iarc paths between the
source and all the other nodes of the network, where an iarc path to
node a is any path from the source to node a along which at most i arcs
have their length reduced. The algorithm uses information gained by
solving the i 1st subproblem to solve the ith subproblem, i.e., all
the shortest i 1 arc path lengths are used in finding the set of the
shortest iarc paths.
Results due to McMasters and Mustin
The interdiction problem posed by McMasters and Mustin in [22]
is not exactly the most vital links problem as defined in this paper.
However, the problem which they solve is very closely related to the
stated problem and is a natural parallel problem or extension to the
most vital links problem. Thus, the problem statement and a brief
description of the solution method aregiven in this section.
The problem in the notation of its originators is:
Consider an undirected planar network, [N;A]. Each are
(i,j) in the network is assumed to have a maximum flow capac
ity, uij !0, and a minimum flow capacity, lij 0 and it is
assumed that at least one arc has 1..> 0. After the inter
diction has taken place, the actual capacity of an are, mij.,
will satisfy 0 1i m 5 u...
i3 ij i3
Assuming that the interdictor incurs a cost, C.., per
unit of capacity destroyed, then this total cost for reduc
ing an arc's capacity from u.. to m.. is C.. [u.. m.].
J i ij ij ij3
If the interdiction has a budget of K, then the interdictor's
problem is to find a set of m.. which minimizes the maximum
flow value of the network subject to:
E C [u.. m..] K K
(i,j)eA 13 13 13
!. im.
3 j :L ij
The authors,like Wollmer, rely on the original network being
planar and undirected. Also, the dual network is used in this method
as it was'in Wollmer's. A very brief description of the method will
now be given. The actual statement of the algorithm is rather lengthy
and will not be included.
The first step of the algorithm is to set the capacities of
each arc to its lower bound and to find a minimum cut for this "reduced"
network by solving a shortest path problem in the dual network. If
this solution is feasible to the above interdictor's problem, then it
is optimal, since this is as good as even an infinitely wealthy attacker
could do. If the solution is not feasible, the best feasible solution
allowed by interdicting only the arcs of the minimum cut is found and
another minimum cut to the reduced problem is chosen and tested. This
procedure ends in one of two states: either a minimum cut solution is
feasible and thus is optimal or no minimum cut solution is feasible
but the current "best solution" has been noted. If the latter condi
tion holds, the cuts of the reduced network are tested in increasing
value (actually the rth shortest path problem is found in the dual
graph). This testing and updating of the current "best solution" is
continued until, for the "kth smallest cut," the best possible solution
for this cut, i.e., the solution with all the capacities equal to the
lower bound, is not better than the current best feasible solution.
At this point, the algorithm terminates as all the remaining cuts to
the reduced problem will have values greater than a feasible solution
of another cut.
The remainder of this paper is divided as follows. Chapter 2
treats the single most vital links problem; a solution method for this
special case is given and an example is used to show how the solution
may be found. Chapters 3 and 4 discuss the more general n most vital
links problem. Algorithms are developed and the computational experi
ence using them is described in Chapter 5. In Appendix A, a linear
zeroone and a zeroone quadratic formulation of the n most vital links
problem are presented and discussed.
CHAPTER 2
THE SINGLE MOST VITAL LINK PROBLEM
Introduction
The problem addressed by this chapter is concerned with finding
the most vital link in a single commodity flow network G(N,A) (directed,
undirected, or mixed). An arc (x,y)e A is declared to be the most
vital link if its value v(x,y) is at least as large as the value of
every other arc in the network. The value of arc (x,y) is defined as
the difference in the maximal flow values in networks G(N,A) and
G(N,A (x,y)) between some source node and some sink node. Thus, v(x,y)
reflects the reduction in the maximal flow attainable if arc (x,y) is
removed from the network.
Wollmer has developed an algorithm [29] for determining the
most vital network link. This algorithm has been employed by Durbin
[9] to determine the single most critical link in a highway system.
The following sections of this paper briefly present Wollmer's
method for finding the most vital link in a network and develop an
improved algorithm for solving the most vital link problem. An example
using the improved method is included.
Wollmer's Algorithm
Wollmer's algorithm for finding the most vital link in a net
work follows as a consequence of the following theorem. The proof of
this theorem is given in reference [29].
Theorem (Wollmer):
Suppose the network G(N,A) has a maximal flow value of v(F*)
while the network G(N,A (x,y)) has a maximal flow value of v(F* ).
xy
Then, every maximal flow pattern of G(N,A) has at least v(F*) v(F )
xy
units of flow through the arc (x,y). Moreover, there is a maximal
flow pattern of G(N,A) which has exactly v(F*) v(F* ) units of flow
xy
over the arc (x,y).
As Wollmer points out, "the above theorem reduces the problem
to one of finding that link whose minimal flow among all maximal flow
patterns is greatest." Wollmer's iterative procedure for finding this
link is as follows:
STEP 0:
Find a maximal flow pattern, F*, in the network G(N,A) and
let f*(x,y) be the corresponding flow in each arc (x,y) eA.
Set the "least flow" of each arc (x,y) equal to f*(x,y).
Let f*(p,q) = max f*(x,y) and go to STEP 1.
(x,y) e A
STEP 1:
Solve a maximal flow problem for the network G(N,A (p,q)).
Let the corresponding maximal flow pattern be denoted as F*
pq
and go to STEP 2.
STEP 2:
(a) Set the capacity c(p,q) of arc (p,q) equal to v(F*) v(F* )
pq
and solve a maximal flow problem for this network (i.e., the
network G(N,A) with c(p,q) = v(F*) v(F* )). Call the
pq
corresponding maximal flow pattern F (Note F is also
amaximal flow pattern of G(N,A).)
(b) Next, compare the least flow of each arc (x,y) with f'(x,y)
and if f (x,y) < least flow of arc (x,y), replace the least
flow of (x,y) with f (x,y). Reset c(p,q) to its original
value and go to STEP 3.
STEP 3:
Let U = max (least flow of arc (x,y)}.
(x,y) A
(a) If U v(F*) V(F* ) terminate; (p,q) is a most vital link;
pq
(b) If U > v(F*) v(F* ); find an arc (p,q) such that the
pq
least flow of (p,q) equals U, and go to STEP 1.
An Improved Algorithm
Wollmer's algorithm considers each arc as a candidate for the
most vital link. However, a necessary condition is employed in the
improved algorithm which reduces the number of arcs that must be con
sidered explicitly as candidates.
Theorem 1:
A necessary condition for an arc (n,b) to be a most vital link
is that for any maximal flow pattern in the network G(N,A), the flow
in arc (a,b) is at least as great as the flow over every arc in a min
imal cut.
The following lemma will be useful in the proof of Theorem 1.
Lemma 2.1:
If (X,X) is a minimal cut containing at least two arcs in a
network G(N.A) and if arc (x,y) is in (X,X), then (X,X) (x,y) is
a minimal cut in the network G(N,A (x,y)).
Proof: (Lemma 2.1)
Suppose that (Y,Y) is a minimal cut in G(N,A (x,y)) and that
C(Y,Y)
necting set for G(N,A) and that C(Y,Y) + c(x,y) < C(X,X): but (X,X)
is a minimal cut of G(N,A) and (Y,Y) U (x,y) is a disconnecting set of
G(N,A). Thus, it must be true that C(Y,Y)= C(X,X) c(x,y) and, hence,
(X,X) (x,y) is a minimal disconnecting set and thus a minimal cut in
G(N,A (x,y)).
Proof: (Theorem 2.1)
Let (X,X) be a minimal cut in G(N,A) and note that by hypothesis
arc (a,b) is a most vital link. Assume that f*(a,b)
(x,y)e(X,X)
for some maximal flow pattern F defined in G(N,A). It will be shown
that this assumption leads to a contradiction.
(1) By Lemma 2.1: v(F* ) = v(F*)f*(p,q); by assumption f*(a,b)
pq
therefore, v(F ) = v(F*) f*(p,q) < v(F*) f*(a,b).
pq
(2) Further, there exists a flow pattern in G(N,A (a,b)) with the
value v(Fab) = v(F*) f*(a,b), and, hence, the maximal flow value
v(F* ), in G(N,A(a,b)), must satisfy: v(F* ) >v(F*) f*(a,b).
ab ab
(3) Conditions (1) and (2) imply that v(F* )>v(F* ); but this
leads to a contradiction since by assumption (ab) is a most
leads to a contradiction since by assumption (a,b) is a most
vital link and by the definition of a most vital link it
follows that: v(F* ) v(F* ), for all (x,y) e A.
ab xy
Q. E. D.
Theorem 1 guarantees that those arcs whose flow is less than
the largest flow through an are in a minimal cut for some maximal flow
pattern in G(N,A) need not be considered as candidates for the most
vital link.
A Labeling Scheme
A labeling scheme is employed in the algorithm for finding
a most vital link from the set of candidate arcs. At the outset of
the labeling, it is assumed that there is a maximal flow pattern, and
minimal cut defined for G(N,A). Suppose that arc (a,b) is an arc from
the candidate set (this set is made up of those arcs that satisfy the
necessary condition of Theorem 1). Next, an attempt is made to label
from node a to node b without using the are (a,b). Initially node a
is labeled and all other nodes are unlabeled. The labeling scheme
systematically searches for a flow path from node a to node b which
does not include arc (a,b) such that flow may be diverted from arc (a,b)
over this path. If node b is labeled (breakthrough), such a path exists.
The labeling (and backtracking) rules to be used are similar to those
employed by Ford and Fulkerson [11] in their algorithm for the solution
of the maximal flow problem. The labeling and flow changing rules are:
Let node a be labeled with (, C (a) = ). At a general step,
suppose the node x is labeled (z C (x)) and that the nodes x and y
are connected by some arc. Then, node y may be labeled if either of the
following situations occur:
(a) f(y,x) > 0; then node y is labeled (x e (y)) where
e (y) = mine (x), f(y,x)); or
(b) f(x,y) < c(x,y); then node y is labeled (x e (y)) where
e (y) = min ( (x), c(x,y) f(x,y)).
The labeling process is continued until either node b is labeled
(breakthrough), or node b is unlabeled in which case no more labeling is
possible (nonbreakthrough). If breakthrough occurs, node b must have
a label of the form (q e (b)) for some node q. Likewise, node q has
a label (r C (q)) and node r has a label (p e (r)), etc. Thus a series
of nodes (and a path of arcs) starting with node b and ending with node
a is defined.
Let e = min [e (b),f(a,b)]. For each arc (x,y) on this path,
change the flow as follows:
(a) If node y has a label (x e (y)), replace f(x,y) by f(x,y) + e;
(b) If node y has a label (x (y)), replace f(y,x) by f(y,x) e.
Finally, decrease the flow in arc (a,b) by e units.
As Ford and Fulkerson have shown, the labeling scheme must end
in one of two mentioned states: breakthrough is achieved or breakthrough
is not achieved. The following results indicate what can be deduced
when either of these states occur at the end of the labeling process.
Theorem 2:
Let F* be a maximal flow pattern in the network G(N,A). Let (a,b)
be an arc in G(N,A) and use the labeling scheme to label from node a to
node b without using arc (a,b). If breakthrough occurs, the value of
arc (a,b) is less than or equal to f (a,b) e. If nonbreakthrough
occurs, the value of arc (a,b) is equal to f*(a,b).
Proof:
If breakthrough occurs an alternate maximal flow pattern is
found by making an C change of flow in the path established by the
labeling and decreasing the flow in (a,b) by C. Then,
v(F* ) v(F*) f*(a,b) + C, and, since
ab
v(a,b) = v(F*) v(F* ) v(F*) [v(F*) f*(a,b) + e] and
ab
e > 0, it follows that v(a,b) A f*(a,b) e < f*(a,b).
Assume that nonbreakthrough occurs, then by the nature of the
labeling rules, no maximal flow pattern exists in G(N,A) which has less
than f*(a,b) units of flow over arc (a,b) and, hence, by Wollmer's
theorem v(a,b) = f*(a,b).
Utilizing these results, the following algorithm
to locate a most vital link in a network:
Q. E. D.
can be employed
STEP 0:
(a) Find a maximal flow pattern, F in the network G(N,A) and let
(X,X) be a minimal cut. Let U* = max c(x,y) or, alternately,
(x,y)e(X,X)
*
U = max f (x,y).
(x,y)e(X,X)
The Ford and Fulkerson maximal flow algorithm [11] may be used
since it identifies a minimal cut as well as a maximal flow pattern.
(b) Note those arcs (x,y) e A for which f *(x,y) 0 U* and store
these arcs in a list; these arcs form the candidate set, S.
For each arc in this set define an upper bound as
U(x,y) = f*(x,y).
STEP 1:
Let U(a,b) = max U(x,y) and set f(x,y) = f*(x,y) for all arcs
(x,y) eS
in G(N,A).
STEP 2:
Use the labeling rules to label from node a to node b without
using arc (a,b).
STEP 3:
(a) If breakthrough occurs, use the backtracking and flow changing
rules, replace f(x,y) by the resultant flow in each (x,y) CA,
and if f(a,b) > 0, repeat STEP 2.
(b) Otherwise, replace U(a,b) with f(a,b) and if U(a,b) >max U(x,y)
(x,y) eS
terminate; arc (a,b)is a most vital link.
Otherwise, replace f (x,y) with f(x,y) for all (x,y) e A
and go to STEP 1.
By the use of this algorithm, a maximal flow pattern is always
maintained and once nonbreakthrough results for the arc (a,b) and
An alternative to STEP 3a is to test if f(x,y)
(x,y) eS, and if f(x,y) SU*, to replace U(x,y) with f(x,y); if
f(x,y)
putations are continued by either repeating STEP 2 if arc (a,b) has
not been dropped or returning to STEP 1 if arc (a,b) has been dropped.
U(a,b) 2 U(x,y) for all arcs (x,y) of the candidate set S, the arc
(a,b) can be declared a most vital link, i.e., nonbreakthrough implies
that v(a,b) = f*(a,b) = U(a,b) and, thus, v(a,b) U(x,y) >v(x,y) for
(x,y) e S and by Theorem 1 the most vital link of G(N,A) is an element
of S.
The other aspects of the method that must be considered are:
(1) is the method finite and (2) is there a way to locate alternative
optimal solutions? The finiteness of the procedure follows since there
can be only a finite number of arcs in the candidate set and there is
a finite number of labelings that can be made for each arc of the set.
Alternative optima are readily identified as follows: after an optimal
solution has been found and other candidate arcs exist, reapply the
algorithm to any arc in the candidate set whose upper bound is equal to
the value of the most vital link (a,b), i.e., set U = U(a,b), delete
arc (a,b) from the candidate set, and reapply the algorithm. If upon
reapplication of the algorithm the most vital link has a value equal
to U then an alternative solution has been found. In the latter case,
the algorithm is reapplied using a further reduced candidate set and
the procedure is continued until all alternative optimal solutions
have been found.
An Example
Consider the flow network G(N,A) shown in Figure 2.1.
Figure 2.1. Maximal Flow in Sample Network 2.1 with
Source Node s and Sink Node t.
Associated with each arc in the network is an ordered pair of
numbers. The first number corresponds to the capacity of the arc and
the second number corresponds to the amount of flow over the arc in
some maximal flow pattern.
The improved algorithm will be employed to find all most vital
links in the network G(N,A).
STEP 0:
(a) Figure 2.1 presents a maximal flow pattern F* in the network
with 27 units of flow from node s to node t. The individual
arc flows are:
f*(s,a) = 25 f (a,c) = 15
f*(s,b) = 2 f*(a,d) = 10
f (c,t) = 17 f*(b,c) = 2
f*(d,t) = 10 f*(b,d) = 0
The corresponding minimal cut (which is unique) contains the
arcs (a,c), (b,c), and (d,t). Hence,
U = max f*(x,y) = f*(a,c) = 15
(x,y)e(X,X)
(b) The set of candidate arcs is:
S = {(s,a), (c,t), (a,c)}
STEP 1:
Start with arc (s,a), since U(s,a) = f*(s,a) = max U(x,y).
(x,y) CS
STEP 2:
Labeling from node s to node a without using arc (s,a) is
possible over the path containing the arcs (s,b), (b,d),
and (a,d). The value of e = 8.
STEP 3:
(a) Since breakthrough occurred, the e units of flow are removed
from arc (s,a) and added to each arc in the path found in
STEP 2. The revised maximal flow pattern is shown in Figure 2.2.
Figure 2.2. Revised Maximal Flow in Sample Network 2.1.
STEP 2:
Starting with the maximal flow pattern of Figure 2.2, it is
not possible to label from node s to node a and non
breakthrough has occurred.
STEP 3:
(b) Replace U(s,a) with the flow f(s,a) = 17. Since
U(s,a) R max U(x,y) = U(c,t), arc (s,a) is a
(x,y) eS
most vital link.
26
Since U(c,t) = U(s,a) = 17, arc (c,t) may also be a most vital
link. In order to test this hypothesis, arc(s,a) is dropped from the
set S and the algorithm is reapplied starting with the maximal flow
pattern in Figure 2.2.
Employment of the labeling rules from node c to node t results
in nonbreakthrough and arc (c,t) is an alternative most vital link.
CHAPTER 3
THE n MOST VITAL LINKS PROBLEM
Introduction
As stated in Chapter 1, determining the n most vital links of
a network involves locating that set of n arcs whose removal most
impairs the throughput capability of the remaining network. In
Chapter 2, results pertaining to the special case where n=l were
given. While the algorithm developed in that chapter is, with minor
changes, valid for the more general problem it is not computationally
feasible for large problems with n>l. Furthermore, as Wollmer in [29]
notes, the single most vital link may not be one of the n most vital
links. Thus, the single most vital link problem will be treated as
a special case and another approach will be employed for the more gen
eral problem.
A Cut Problem Approach
In this chapter the n most vital links problem is formulated as
a cut problem and an algorithm, which uses the maximum flow algorithm
of Ford and Fulkerson [11],is developed to solve this problem.
Theorem 3.1 and Corollary 3.1.1 characterize the n most vital
links of G(N,A) as elements in a cut between the source and sink of G(N,A).
Theorem 3.1:
If the arcs in A are the n most vital links in the network,
n
G(N,A), then there exists a cut A' such that A' C A and A A' is
n n
a minimum cut in G(N,AA ).
n
Proof:
Find the minimum cut in G(N,AA ), say A with capacity C(A ).
n n n
Now consider the arc set A' U A This is certainly a disconnecting
n n
set for G(N,A). Suppose it is not a cut. Then there exists at least
one arc a. e A" U A' such that A" U A' fa.i is also a disconnecting
i n n n n
set for G(N,A). If a. e A", then A" is not a minimum cut for
i n n
G(N,AA ). If a. e A then A' U (ak ai., where ak is any arc
n i n n k k
in A", is a better set of n links to remove from G(N,A). In either
n
case a contradiction results. Hence, by letting A" = A' U A", the
n n
result follows.
Q. E. D.
Corollary 3.1.1:
C(A') C(A*) for all arc sets, A* CA', which contain at most
n n n
n arcs.
Proof:
Suppose C(A ) > C(A ) for some A C A containing at most n
n n n
arcs. Note that for any A* C A'
n 
C(A') = C(A*) + C(A'A*) = C(A) + C(AlA)),
n n n n
hence, C(A A ) < C(A A'), but this implies that A is not the n most
n n n
vital links in G(N,A) which is a contradiction.
Q. E. D.
Corollary 3.1.2:
C(A') C(AI ) where All is any minimum cut of G(N,A) and A'
n n n
contains the n largest arcs of A
Proof:
This result follows since C(A'AI) 5 C(A/ A/)
n n
(or C(A') C(A') < C(AI ) C(AmI)) and C(A') > C(AI").
n n
Q. E. D.
Note that due to Theorem 3.1 and Corollary 3.1.1, the n most
vital links problem of G(N,A) can be stated as the following cut problem:
Find the n largest arcs, A*, of the cut A* which satisfies:
n
C(A*A*) = min C(A'AI)
n n
for all cuts At
where A denotes the n largest arcs of A .
n
Development of a Cut Algorithm
Let G (N,A) be the network G(N,A) with the capacity of each
arc a. C A defined as:
1
c(a.) if c(a.) < u
c (a.) =
u if c(a.) u.
Note that Gm(N,A) G(N,A). For any Ak A let
C (A ) = ( c (a.).
a cA
i k
Theorem 3.2:
If A' is a minimum cut in G (N,A) with
A' = a. a. eA and cu(a.) = u), and a = IA I is defined as the
U 1 1 1 U
number of arcs contained in A', then the arcs in A' are the a most
u u
Co
vital links in G (N,A).
Proof:
A contains the a largest arcs in A' for both GU(N,A) and
u .
G (N,A). Suppose A does not contain the a most vital arcs in G (N,A).
u
Then, from Theorem 3.1 there exists a cut A* such that:
Cm(A*A*) < Cm(A'A ) (1)
u u
where A* are the a largest arcs of A* in G (N,A).
u
Note that c (a.) < u for all a eA A since
i i u .
c (a.) > u > cU(a.) u u a CA
1 1 1 U
Hence,
Cm(A'A') = CU(A'A') (2)
u u
Equations (1) and (2) imply that
C (A A ) < Cu(A'A )
u u
but
C (A*A*) C(A*A) .
u u
Hence,
C (A A ) < CU(A A )
u u
CU(A*) Cu(A ) < CU(A ) C (A)
U u
Now, since cu (a.) u for all a. CA* and c (a.) = u,
1 1 U 1
for all a. CeA, CU(A*) < Cu(A ) which implies that CU(A*) < CU(A )
1 u u u
which is a contradiction, since A' is a minimum cut of G (N,A).
Q. E. D.
Corollary 3.2.1:
The maximum flow through the network G(N,AA') is equal to
u
C(A'A').
u
Proof:
A' A is a minimum cut in G (N,AA') and, since
u u
C (A A ) = C (A'A') A' A is also a minimum cut in G (N,AA').
U u U u
Q. E. D.
Corollary 3.2.2:
Let A' = (a ai eA and cm(a ) > u} where A = I
X i 1 1 x
and A' = (a. a. A' and c (a.) = u3 where A = Then
p 1 1 1 p
k
A U a. are the cr+k most vital links of G(N,A) for a. A' and
x i=1 p
i=l
any k = 0,1,2,... ,.
Proof:
Same as for Theorem 3.2.
Q. E. D.
Let a minimum cut of G (N,A) be denoted by Au and define A
to be the set of arcs defined by A a a and ca) = u
to be the set of arcs defined by A a [a j a CAu and cu(a) = u}.
u
Theorem 3.3:
Let I be defined as the smallest number of arcs contained in
any cut (i.e., 1 is the minimum number of arcs necessary to disconnect
the network G (N,A)), then
= IAl A ... IA ... IA. > 0.
Proof:
From the definition of A it follows that IAI  0. Also,
by noting that in G (N,A) all arcs have a capacity of 1, it follows
that the minimum cut of G (N,A) must be that cut which contains the
fewest arcs (i.e., A = IA1 ).
It must now be shown that p
that this is not the case, i.e., assume that p
Note that by Theorems 3.1 and 3.2 the arcs in A are the IAp
most vital links of G(N,A) and the maximal flow value of G(N,AA )
is C(A A ). Similarly, the arcs in A are the A most vital links
P q q
of G(N,A) and removing A from G(N,A) leaves a maximal flow value of
q
C(A A ) in G(N,A A ). Also, since it is assumed that IAq >A ,
q q Iq p
it follows that
C (APA ) C (AqA ) (3)
P q
p
Since for any arc a eA c (a) > p if and only if a A ,
p
it follows that
C (APA ) = CP(AA ),
P P
(where CP(APA ) = C (A) pA p).
Similarly,it follows that
C (A A ) = Cq(A A ) = C ) qA q.
q q
Using these identities the inequality (3) can be written as
P(AP) pA C (A ) qA (4)
Finally, note that
Cq(A A ) CP(AqA ),
q q
or equivalently
C (A ) qIAq q CP(A ) p)Aq
Thus, using this last relationship with (4) and the assumption that
IA q > IA ,I it follows that
CP(Ap) > C(A) .
But this is a contradiction, since AP is a minimum cut of G (N,A)
and, thus, A ql IA .
Q. E. D.
The Modified Cut Method
Theorems 3.2 and 3.3 provide the basis for a very simple
algorithm to solve the n most vital links problem for some values
of n. The algorithm consists of defining a graph as in Theorem 3.2
and then systematically changing the value of u. Stated formally,
the algorithm, "the modified cut method," becomes:
Let u = 1 and go to STEP 1.
SSet c (a.) =
I
c (a)
u
if c (a.) < u
if c (a
if c (a.) > u
1
Solve for the minimum cut of G (N,A).
Note Au, Au, and IA . Go to STEP 2.
Note A ,uIA
STEP 2:
If IAu > n
If JAu = n
If Au < n
let u=u+l. Go to STEP 1.
terminate as the n most vital links are the
arcs contained in A
u
terminate, a gap has occurred at the n most
vital links problem.
Note that, due to Corollary 3.2.2, if k of the IAu ceiling
arcs have c (a.) = u, then the IAul k through the Aul most vital
1
links have been found. This addition to the algorithm has proved
useful in the examples that have been tried to date.
STEP 0:
STEP 1:
If the algorithm terminates with IAu = n, then from Theorem 3.2
the n most vital links have been found. If the algorithm terminates
with Aul < n, then there is a "gap" at the value of interest (i.e.,
the algorithm obtains some sets of most vital links but not the n most
vital). This problem will be treated in detail in Chapter 4. The
algorithm clearly terminates in a finite number of steps, since for
u = max c(a.) + 1 for all ai eA, IAuI = 0 (for.every minimum cut of
G (N,A)). It should be noted that for u = 1 all arcs in Au are at
capacity u = 1. Hence, at least for this value the algorithm finds
a set of most vital links. In particular, it finds the fewest arcs
necessary to disconnect the network. Also, from Theorem 3.3, IA is
nonincreasing; hence, if IAu < n, there is no point in investigating
a larger value of u.
Finally, observe that the maximum flow pattern found for some
GU(N,A) is feasible for Gu+(N,A) and can be used as an initial flow
in finding the maximum flow in Gu+(N,A).
An Example Using the Modified Cut Method
The modified cut method will be illustrated by determining the
two most vital links in Example Network 3.1 as defined in Figure 3.1.
a5, 2
all 1
Figure 3.1. Example Network 3.1.
Note that G (N,A) is defined as in Figure 3.2.
Figure 3.2. G (N,A) of Example Network 3.1.
The minimum cut value of G (N,A) is 4 with A = [al,a2,a3,a43
a minimum cut of G(N,A) and IA I = 4.
For G (N,A) (see Figure 3.3), the desired minimum cut is
A2 = (all,al2,a13,a143 and IA21 = 3. The minimum cut value of
G2(N,A) is 7.
2
2 a12, 2
2 2 a13,2
s
t
Figure 3.3. G (N,A) of Example Network 3.1.
3
For G (N,A), as shown in
is again A3 = {allal2,al3,al4 ,
is 9. Thus, a12 and a14 are the
is solved. It may be noted that
were invoked at G (N,A), the same
since a13 was in the minimum cut
Figure 3.4, the desired minimum cut
IA31 = 2 and the minimum cut value
two most vital links and the problem
if the result of Corollary 3.2.2
conclusions could have been made,
of G2(N,A); IA21 = 3; and, cc(al) =2.
Figure 3.4. G(N,A) of Example Network 3.1.
Figure 3.4. G (N,A) of Example Network 3.1.
An Example Where a Gap Occurs
In stating the modified cut method it was noted that the algo
rithm may end in a gap, that is, )Au > f and IAu+1 < a.
In Chapter 5 the frequency of occurrence of these gaps in the sample
problems to date.is noted and discussed. In this section a network
will be used for which the modified cut method fails to find the n most
vital links.
Consider the Example Network 3.2 as defined in Figure 3.5 and
use the modified cut method to find the two most vital links of that
network.
Figure 3.5. Example Network 3.2.
Note that for G (N,A) the arcs leaving node s form the minimum cut.
(See Figure 3.6).
1 1
11
1 1
1
1 s t
Figure 3.6. G (N,A) of Example Network 3.2.
Thus, the minimum cut value of G (N,A) is 3 and IAu = 3.
2
G (N,A) is noted in Figure 3.7. Again the arcs leaving node s
form the minimum cut, IA 2 = 3, and the minimum cut value is 6.
2
2
2
2 2
2
2
t
The
as shown in
Each of the
network, so
Figure 3.7. G (N,A) of Example Network 3.2.
arcs that enter node t form a minimum cut for G (N,A),
Figure 3.8. This minimum cut has a cut value of 8.
arcs in this cut has a capacity of 2 in the original
IA 3 = 0, and a gap exists at the desired problem.
Figure 3.8. G3(N,A) of Example Network 3.2.
In Chapter 4 the gap problem will be treated and the resulting
algorithm will be applied to Example Network 3.2 given in this chapter.
CHAPTER 4
RESOLUTION OF THE GAP PROBLEM
Introduction
In this chapter the gap problem introduced in Chapter 3 is
addressed. As shown in Example 3.2, at termination the modified cut
method may not determine the desired n most vital links, i.e., the
method may end in a gap. Results will now be developed and an algo
rithm presented which will resolve a gap if it occurs.
It will be assumed in this chapter that the arcs of a network
are ordered such that if a. and a. are arbitrary arcs of G(N,A) and
if i < j, then c(a.) > c(a.). This leads to no loss of generality,
since, if the condition does not hold in the original network, the
arcs can be renumbered without changing the network. Also, since in
what follows only disconnecting sets between the source node s and
sink node t are of interest, the term disconnecting set will imply a
disconnecting set between s and t. If F is a disconnecting set,
then C(F F ) will be called the nreduced value of F, where F
n n
denotes the n largest arcs of F. Finally, if C(FF ) C(HHI ) for
n n
all disconnecting sets in some set W/, then F will be called the
weakest ndisconnecting set of W.
Some Preliminary Results
Recall that in Chapter 3 the n most vital links were shown to
be the n largest arcs A* of a disconnecting set A which satisfies:
n
/ )
C(A A ) C(A A ) for all disconnecting sets A in G(N,A). Thus,
n n
solving for the optimal solution of this disconnecting set problem
determines the n most vital links. Initially, every disconnecting set
of G(N,A) is a candidate for the optimal solution to the most vital
links cut problem. The following theorem can be used to eliminate from
further consideration many of the disconnecting sets of G(N,A).
Theorem 4.1:
Let ai, aj be arcs of G(N,A) such that c(a.) 2 c(a.), and
define the set WI to be:
[ (H H is a disconnecting set of G(N,A) and ai e Hn.
If H is a disconnecting set of W which satisfies:
*
C(H H ) 5 C(HH ) for all disconnecting sets H e
n n
and if there exists a disconnecting set F such that a. e F and
j n
C(FF ) < C(H H ), then a. 9 F.
n n 1
Actually only cuts were considered in Chapter 3, but since
the weakest ndisconnecting set of G(N,A) is a cut and every cut is
a disconnecting set, this generalization follows.
Proof:
Given that a e F there are three possible cases
J n
Case 1  a. e F and a e F
3 n i n
Case 2  a. e F and a. e FF
j n 1 n
Case 3  a. e F and a. t F.
J n 1
If Case 1 holds, then Fe A but by the hypothesis C(H H ): C(HH )
n n
for all H e ~ so this case cannot occur. Case 2 is not possible,
since, if c(a.) > c(a.), then a. e FF implies that a. e FF ,
a j 1 n j n
and if c(a.) = c(a.), then Fe IW and the comments made about Case 1
1 3
are valid and lead to a contradiction for this case. Thus, only
Case 3 is possible and the result follows.
Q. E. D.
Corollary 4.1.1:
Given the network G(N,A), let I = [a ,a2,...,a l be a set of
2i p
arcs such that F A and let ak A where k > p (i.e., c(ak) < c(a )
for i = 1,2,...p). If among all disconnecting sets H which satisfy
H nn Fr H is the weakest ndisconnecting set and if there exists
n
*
a disconnecting set F for which ak C F and C(FF ) < C(H H ), then
k n n n
F nF= P.
Proof:
Since c(a.) c(ak) for i = 1,2,...,p, the result follows
from Theorem 4.1.
Let W and [ be sets defined by:
S= (1 H is a disconnecting set of G(N,A) and a e Hn}
1(= [i*I is a disconnecting set of G(N,A) and al 1 H }.
If the weakest ndisconnecting sets in both W( and W/ are found, then,
by Theorem 4.1, the n most vital links of G(N,A) are determined. The
problem of determining these arc sets will now be investigated.
The Extended Modified Cut Method
Observe that in defining the modified cut method it was only
necessary to find the weakest ncut of G(N,A), i.e., only cuts of
G(N,A) and not all disconnecting sets were considered. In this section
an extended version of this method will be employed, and it will be
necessary to consider disconnecting sets rather than cuts of G(N,A).
That is, for a fixed set of arcs A the nJAI most vital links will be
found in G(N,AA). Thus, while the weakest (nIAI)disconnecting set
of G(N,AA) will be a cut of G(N,AA), the set together with A may only
be a disconnecting set of G(N,A). This will cause no difficulty, how
ever, as all the results which have been stated are valid for both
disconnecting sets and cuts.
Observe that the weakest ndisconnecting set of the set [ may
be characterized as the set whose n largest arcs consist of al and the
n1 best arcs to remove from G(N,A), given al is to be removed. But,
this is exactly the disconnecting set which would be found by setting
A = a and solving for the nJAI most vital links of G(N,AA). Thus,
the modified cut method can be used to find the weakest ndisconnecting
set of (. Assuming that the desired set of ( is found (the case where
a gap occurs in this problem will be treated later in this section),
*
the set V' will now be considered, and it will be demonstrated that the
modified cut method can also be extended to find the weakest
ndisconnecting set among those sets which do not contain arcs from
some fixed set F. (Thus, for F = a the method to be presented will
locate the weakest ndisconnecting set of [ .)
It is assumed in what follows that there exist disconnecting
sets in G(N,A) which do not contain arcs from F, since, if this is not
the case, then in the context of the last section / = P.
Given the fixed set of arcs F and G(N,A), let .u(N,A) be G(N,A)
with a capacity function Cu defined by:
a if a. e
Cu(ai) = u if a. rF and c(a.) u
c(a.) if a. r and c(a.) < u
1 1 1
An arc a. will be called a uceiling arc of c(a.) = u in ~u(N,A).
1 1
Theorem 4.2:
If a minimum cut A of U(N,A) contains a uceiling arcs,
then C(A A ) ( C(BB ) for all cuts B such that B n F = 0.
n n
Proof:
A is a minimum cut of U(N,A), therefore C (A ) C C (B) for
all cuts B. Also, for all cuts B that satisfy B n F = c, C (B?) uac.
But, by the hypothesis C (A ) = uc; therefore,
Cu(A A*) = Cu(A ) uao C (B) ua C (BB ) (1)
for all cuts B such that B f F = n.
Next, observe that for cuts B which satisfy B n F = ,
c 0u (BB nc *
C(BB ) ) C (BB ) and that, since A contains exactly a uceiling
u *
arcs, C(A A ) = C (A A ). Combining these last conclusions with (1)
gives the desired result.
Q. E. D.
Recalling Theorem 3.3, which is valid for the u(N,A) as
well as the G (N,A) networks and Theorem 4.2, the extended modified
cut method may be stated as:
Note the fixed set F.
Let u = 1 and go to
CO
Set c (a.) = c (a.)
u
if ai e
if c (a.) < u, and a. F
1 1
if c (a.) u, and a. F
1 1
Solve for the minimum cut of bU(N,A); if the minimum cut value
is not finite stop (all cuts contain arcs of ) otherwise
note Au, Au, and IAu Go to STEP 2.
STEP 2:
If JA > n
If IA u = n
If IA < n
let u = u+ 1. Go to STEP 1.
terminate as the n most vital links are the
arcs contained in A
u
terminate, a gap has occurred at the n most
vital links problem.
Finally, the problem of resolving gaps that arise in using the
extended modified cut method to find the weakest ndisconnecting set
in either , or ( must be addressed. Suppose a gap occurs in solving
for the nIAI most vital links in G(N,AA) where the disconnecting sets
containing arcs from some fixed set F are not to be considered. This
is a welldeflned problem exactly like that posed at the beginning
STEP 0:
STEP 1:
STEP 1.
of this chapter; therefore, the extended modified cut method can again
be employed as follows: place the largest arc in A A F, say a ,
into the set A and solve for the weakest (nIAI)disconnecting set in
both of the following sets:
[ = [H IH is a disconnecting set of G(N,AA), F1n= and, a e H I
and
n**
S= ll(H is a disconnecting set of G(N,AA), FlH= n and, a H j.
p n
The General Algorithm
The general algorithm consists of 3 routines. Routine A is
the extended modified cut method with the set F of infinite capacitied
arcs and a set A of arcs to be removed from G(N,A) (i.e., the network
G(N,AA) is considered). Routine B is employed when Routine A ends
in a success; i.e., no gap occurred or when all the disconnecting sets
have been considered. Routine C is used to define a new set of sub
problems if a gap occurs.
It is assumed at the outset that A and F are both empty.
Initially the current best solution value, denoted by Vo, is set to
infinity or to the value of the best solution known.
The General Algorithm can be stated as:
ROUTINE A
STEP 0:
If n Al = 0 let u = m, otherwise
STEP 1:
c(a)
U
Let c (a) =
c(a) < u, and a A F
a F
c(a) 2 u, and a 4 F
Step 2:
Find a minimum disconnecting set A in &u(N,AA). Let
U = (a a C A and c(a) = u}.
STEP 3:
If Cu(A*) = , go to STEP 2, ROUTINE B.
STEP 4:
IU > nAJ, let u = u+l
IUI = nIAJ, go to STEP 1,
IUI < nIA!, go to ROUTINE
and go to STEP 1.
ROUTINE B.
C.
let u = 1.
ROUTINE B
STEP 1:
o *
If C(A U) < V let A = A and V = C(AU).
o o
STEP 2:
If A = $ terminate, A is the optimal solution. If
A continue.
STEP 3:
Let A = A (a ] where p 2 k for all ak A
(i.e., a is the smallest capacity arc in A).
p
Let F = U (a p (F [ ap+1,ap+2 ....am})
(i.e., add a to F and remove from r all arcs having
p
indices greater than p). Go to ROUTINE A.
ROUTINE C
STEP 1:
If A A U F = go to STEP 2, ROUTINE B.
STEP 2:
Let A = AU (a a where p 5 k for all ak e AAUF
(i.e., a is the largest capacity arc not in A or F).
Go to ROUTINE A.
An Improved General Algorithm
In this section results which improve the computational effi
ciency of the general algorithm are discussed and an improved general
algorithm is developed.
Lemma 4.1:
If a cut B is optimal for the nk but not the n most vital
links problem of G(N,A) and if the cut H is optimal for the n most
vital links problem, then C(Hn Hk) > C(Bn Bk)
Proof:
Note, by the hypothesis of Lemma 4.1,
C(B Bk) k C(H Hk) (2)
and
C(B B ) > C(H H ). (3)
n n
Combining (2) and (3) yields:
** **
C(B Bk) C(B B )
But (4) reduces to C(B B ) < C(H H ) which is the desired result.
n k n k
Q. E. D.
Lemma 4.1 is most useful for the case where k= 1; that is,
consider the situation where, in using the modified cut method, a gap
occurs at the n but not at the n 1 most vital links problem. If the
th
cut B is found to be optimal for this latter problem and the nth
th
largest arc of B is a then cuts whose n largest arc is no larger
x
than a do not have a smaller nreduced value than that of B (the
x
optimal cut of the n 1 most vital links problem).
The final result of this chapter concerns a lower bound on
the optimal solution of the a most vital links problem which is found
as a byproduct of the modified cut method.
Lemma 4.2:
u *
If B is a minimum cut of G (N,A), then the optimal cut, A ,
to the a most vital links problem satisfies:
C(A*A ) C CU(B*) u .
Proof:
Verification of this result only requires the observation that
*
if B contains a uceiling arcs, then B is the optimal cut for the a
* u *
most vital links problem (Theorem 3.2) and C(B Ba) = C (B ) ua.
u (*
Thus, the optimal solution A can be no better than C (B ) ua.
Q. E. D.
Note that Lemma 4.2 also holds for any J u(N,A) where one is
considering all cuts but those which contain arcs from a set F (this
follows, since Theorem 4.2 and Theorem 3.2 prove parallel results for
nu(N,A) and Gu(N,A), respectively).
Although given gap occurs, the bound found in Lemma 4.2 is
always a strictlower bound, the last result can be employed in two
ways. The first use is utilizing the bound as a stopping rule, i.e.,
if the current best solution is "close" to the lower bound, terminate.
The second use is as follows: suppose a gap occurs at some subproblem.
If the lower bound on the optimal of this subproblem is no better than
a solution which already has been found, then the subproblem need not
be considered any further, even if it ended in a gap.
Since the results of this section apply to Routine C, an improved
Routine C will now be noted. It is assumed that c(a ) will be set to
x
c(a ) if the n 1 most vital links are not found when solving for the
n most vital links in G(N,A); otherwise, it will represent the capacity
th
of the nth largest arc of the optimal cut to this latter problem.
To use the improved algorithm the best lower bound (BLB) of the current
subproblem as well as the current best solution and the current best
solution's value (CBSV) must be maintained.
The Improved Routine C becomes:
STEP 1:
If BLB 2 CBSV, go to STEP 2, ROUTINE B.
STEP 2:
Let A = A U (a where p < k for all ak A A U F.
If c(a ) S c(a ) for any a e A, go to STEP 2, ROUTINE B,
q x q
otherwise, go to ROUTINE A.
An Example
Recall that in Chapter 3 it was established that a gap occurs
in solving for the two most vital links of Example Network 4.1,
defined by Figure 4.1. The Improved General Algorithm will now be
applied to this network to resolve this gap and locate the two most
vital links. a12 2
S12('
1 inn 9\ \A 780OO
Figure 4.1. Example Network 4.1.
The algorithm starts in Routine A with F = $, A = $ (i.e.,
the original network G(N,A)). As noted in Chapter 3, the modified
cut method ends in a gap with the following minimal cuts of G (N,A),
1 2
u = 1,2,3,..., being located A = A = al,a2,a3 and
3 2 3
A = [al2,a13,al',a15). The best lower bound is found at G or G
and has value C3(A3) (2)(3) = 8 6 = 2. The current best solution
is the cut [a12,a13,a14,a 15 with a 2reduced cut value of 4.
Since a gap occurred, Routine C is employed to define the
network depicted in Figure 4.2.
Figure 4.2. The First Subnetwork of
Example Network 4.1.
Upon definition of the G(N,Aa ), Routine A is again employed
to locate the one most vital link of this network. In this problem
1. 2 3 4
A1 = A = A = (a2,a3} and A = [a12,a13,a14,a153. Thus a gap occurs
and the current best solution value remains 4. The best lower bound
of this subproblem has a value of 4 and is found at 3M3(N,A). Therefore,
since the lower bound of the subproblem is not better than the best
current solution, the subproblem does not have to be considered and
Routine B is called.
Upon applying Routine B, the network shown in Figure 4.3 is
realized.
Figure 4.3. The Second Subnetwork of
Example Network 4.1.
For this problem the cut fa12,a13,a14,a153 is the minimum cut
for every ,u. Thus, at 2, the two most vital links problem is
solved for the above network and Routine B is called.
Since A = $, the algorithm terminates with the current best
solution being declared the optimal solution (i.e., any pair of arcs
from the set [a12,a13,a14,a15 are the two most vital links of this
network).
CHAPTER 5
COMPUTATIONAL RESULTS AND CONCLUSIONS
The modified cut method of Chapter 3 and the improved general
algorithm of Chapter 4 were coded in Fortran IV and problems were
solved using an IBM 360/65 computer. These algorithms for a given
network require approximately the same amount of core space that the
maximum flow algorithm of Ford and Fulkerson [12] would require to
solve the maximum flowminimum cut problem for the same network.
For the example networks referred to in this chapter, the capacity of
the arcs ranged from 1 to 50.
Several basic network configurations were used to test the
algorithms and, as can be seen in Table 5.1, the test problems ranged
in size from small (14 arcs, 6 nodes) to larger networks (250 arcs,
50 nodes). Also, since changing the capacity function of a network
affects the solution of the n most vital links problem,several of the
example networks have the same structures with different capacity
functions,
Actually the improved general algorithm which contains the
modified cut method requires four IAIcomponent vectors more than the
maximum flow algorithm.
Naturally, if the range of the capacity values were signif
icantly larger than 50, then, for a given large problem, one might
expect slightly longer execution times than are cited in this chapter.
58
The results of applying the modified cut method to the example
problems are presented in Table 5.1. The symbol I which has been used
to indicate the smallest number of arcs in any cut between the source
and sink nodes in G(N,A) also represents the maximum number of most
vital links problems that could be of interest for a given network,
i.e., n = 1,2,...,. Those values of n for which a gap occurred are
noted in the last column of Table 5.1 for each test problem. Observe
that for the sample problems which were solved,about 5 percent of the
possible most vital links problems ended in a gap.
In Table 5.2 the results of applying the improved general
algorithm to those gaps noted in Table 5.1 are presented. Since the
number of times the modified cut method (Routine A) is employed is a
key factor in determining the efficiency of the improved general algo
rithm, this statistic is included in column 6 of the Table 5.2.
TABLE 5.1
RESULTS OF APPLYING MODIFIED CUT METHOD
TO SAMPLE NETWORKS
Execution Values of n
Problem AI IN Time for Which
Number (minutes) Gaps Occurred
1 28 12 4 .03
2 28 12 4 .03
3 28 12 4 .03
4 35 16 5 .04
5 35 16 5 .03
6 35 16 5 .04
7 14 6 4 .03
8 14 6 4 .02
9 14 6 4 .03
10 52 17 8 .07 2
11 52 17 8 .06
12 52 17 8 .11 4
13 41 16 8 .06 4,5
14 41 16 8 .05
15 41 16 8 .07
16 41 12 7 .05 5
17 41 12 7 .03
18 41 12 7 .04
19 48 16 7 .04
20 48 16 7 .05
21 48 16 7 .08
TABLE 5.1 (Continued)
Execution Values of n
Problem IAI NI Time for Which
Number(minutes) Gaps Occurred
(minutes) Gaps Occurred
26
26
26
57
57
57
35
35
35
15
250
250
250
250
250
250
250
250
250
.05
.03
.05
.03
.05
.05
.04
.05
.05
.02
.30
.38
.35
.43
.36
.26
.50
.27
.29
4,6
1,2
6,18,19
6,7,8,9,12,13
4,14
7,8,9,10,11
TABLE 5.2
RESULTS OF APPLYING IMPROVED GENERAL ALGORITHM
TO GAPS THAT OCCURRED IN SAMPLE NETWORKS
Problem Value of n Execution Times Modified
Number in IAI INI Solved for Time Cut Method
Table 5.1 (minutes) Employed
52
52
41
41
41
35
35
15
15
250
250
250
250
250
250
250
250
250
250
250
250
250
250
250
250
.48
.12
.09
.09
.07
.16
.08
.02
.02
2.72
1.10
1.06
2.28
2.50
2.46
2.46
.92
.92
8.50
.69
12.15
12.20
12.20
12.56
12.04
Conclusions
To find the n most vital links of an arbitrary network by
enumeration would involve solving either (I) maximum flow problems
(one for each possible set of n arcs of A) or locating all the cuts
between the source and sink nodes. As noted in this chapter for the
problems investigated to date, a gap occurred for less than 5 percent
of the possible nvalues. Thus, 95 percent of the cases required one
use of the modified cut method (which is effectively the same as
solving a maximum flow problem) and the solution found included a fam
ily of most vital links of which the nvalue of interest was a member.
Furthermore, even in situations where gaps occurred, on the average it
has only been required to employ the modified cut method sixteen times
per gap problem. This is approximately equivalent to sixteen maximum
flow problems.
Next, recall that two bounds have been identified (Lemma 4.1
and Lemma 4.2) in connection with the improved general algorithm. While
each of these has been employed in particular problems, the lower bound
on the value of the optimal solutions (Lemma 4.2) has proved to be much
stronger than the bound noted in Lemma 4.1. However, since both bounds
are easy to find and maintain, it is suggested that both be used when
applying the methods developed in this paper.
In conclusion, while the above observations were made after
considering only a small sample of problems, the partitioning scheme
of the improved general algorithm, while similar to implicit enumer
ation (e.g., Balas [1], Geoffrion [14]), is much more efficient than
64
the latter approach. This is due to the infrequency of gaps occurring;
the bounds which truncate subproblems; and the fact that each time an
arc is placed in F whole classes of disconnecting sets are eliminated
from further consideration.
APPENDIX A
FORMULATIONS OF THE n MOST VITAL LINKS PROBLEM
A Linear Formulation
In Chapter 3, it was demonstrated that the n most vital links
problem could be posed as a cut problem where the optimal cut A*
satisfies
C(A A ) = min C(BB ) for all cuts B (A.1)
n n
and A contains the n most vital links. This cut problem will now
n
be formulated as a linear zeroone integer programming problem. First
observe that, instead of only considering cuts in equation (A.1), the
B's could represent all disconnecting sets separating the source
and sink. This is valid, since the weakest disconnecting set will
always be a cut.
The minimum cut problem as formulated by Ford and Fulkerson [11]
may be posed as a zeroone integer programming problem, i.e.,
Min Z c(i,j) y(ij)
(i,j)
such that TT(s) + TT(t) 2 1
I
iT(i) T(j) + y(i,j) 0 (ij) e A
TT(i), y(i,j) = 0,1 (i,j) e A and (i) C N
Furthermore, a solution is feasible for I, if and only if, the set
of arcs for which y(i,j) = 1 forms a disconnecting set of the given
network.
Now define a new set of zeroone variables u such that for each
arc (i,j) there is a variable u(i,j). These u(i,j)'s are restricted
to satisfy u(i,j) y(i,j). Thus, for any solution only u(i,j)'s
corresponding to arcs in the identified disconnecting set may be non
zero. Adding the constraint E u(i,j) : n insures that no more than
(i,j)
n of the u(i,j) variables will be nonzero for any feasible solution of
the problem to be defined. The n most vital links problem can then be
formulated as:
Min E c(i,j) y(i,j) E c(i,j) u(i,j)
(i,j) (i,j)
such that
TT(s) + n(t) 1 (i,j) C A
II
n(i) T(j) + y(i,j) r 0 (i,j) E A
(. .u(i,j) n (i,j) e A
u(i,j), y(i,j), n(i) = 0,1 (i,j) C A and (i) e N
u(i,j) y(i,j) 5 0 (i,j) C A
Note that only disconnecting sets, B, are feasible for II and
for each such B the optimal u(i,j) values are one if (i,j) C B and
n
zero otherwise. Thus, the optimal solution to II is that disconnecting
set A which satisfies equation (A.1).
By making the change of variable y'(i,j) = y(i,j) u(i,j),
problem II becomes:
Min E c(i,j) y (i,j)
(i,j)
such that
n(s) + Tr(t) > 1
III
n(i) TT(j) + (i,j) + u(i,j) 0 (i,j) e A
E u(i,j) S n (i,j) C A
(i,j)
u(i,j), y'(i,j), r(i) = 0,1 (i,j) e A and (i) e N
A Quadratic Formulation
In this section a zeroone quadratic formulation with special
structure is developed for solving the n most vital links problem.
Basically, the formulation is Formulation II presented in the last
section with the constraints y(i,j) u(i,j) 2 0 removed from the
constraint set. These conditions, i.e., u(i,j) 5 y(i,j), are guar
anteed at optimality in the new formulation by introducing a quadratic
part to the objective function which is zero if u(i,j) 5 y(i,j) and
c if the constraint is violated. The objective function will be shown
to be concave and the constraint coefficient matrix unimodular. This
structure will allow the optimal solution to this new formulation to
be found by ranking the extreme points of a related continuous quad
ratic programming problem.
Consider the following zeroone quadratic programming problem,
where M is some very large positive number.
Min E c(i,j) y(i,j) c(i,j) u(i,j)
(i,j) (i,j)
+ E Ml 1 u(i,j) y(i,j) 12 u(i,j) +y(i,j) )2
(i ,j)
such that
1T(s) + TT(t) > 1
IV
T(i) n(j) + y(i,j) 0 (i,j) e A
Z u(i,j) < n (i,j) e A
(i,j)
u(i,j), y(i,j), T(i) = 0,1 (i,j) e A and (i) e N
Let f(u(ij),y(i,j) 1 l(u(i,j) y(i,j) 1)2
(u(i,j) +y(i,j) 1)2 M.
Note that f(u(i,j),y(i,j))=0 whenever y(i,j) u(i,j) in IV and
f(u(i,j),y(i,j)) = M if y(i,j) = 0 and u(i,j) = 1. Thus, for M
sufficiently large, the optimal solutions to Formulation II of the last
section and IV, given above, will be the same and IV will solve the
n most vital links problem.
Next, E f(u(i,j),y(i,j)) will be shown to be a concave
(i,j)
function of u and y. Note that f(u(ij),y(ij) is a sum of
a constant and two quadratic forms, each of which has a value of less
than or equal to zero for all values of y(i,j) and u(i,j); thus, each
of the forms are concave. Furthermore, the sums of concave functions
are concave so f(u(i,j),y(i,j)) is concave as is the function
E f (Y(i,j),u(i,j) .
(i,j)
Consider Formulation V which is really a continuous version
of Formulation IV.
Min Z c(i,j) y(i,j) c(i,j) y(i,j) + E f(u(i,j),y(i,j)
(i,j) (i,j) (i,j)
such that
TT(s) + TT(t) 1
V
T(i) ri(j) + y(i,j) O (i,j) C A
Z u(i,j) a n (i,j) e A
(i,j)
0 y(i,j) 1 (i,j) C A
0 s u(i,j) 1 (i,j) e A
0 < TT(i) 5 1 (i) C N
Hadley in [16] notes that when minimizing a concave function
over a convex set, there is an optimal to the problem which occurs
at an extreme point of the convex set. The convex constraint set of
V will now be shown to be unimodular. Thus, since, if this is the
case, each extreme point solution will be zeroone, the optimal
zeroone solution to IV can be found by ranking the extreme points
of the constraint set of V. Murty [23], and Cabot and Francis [8]
demonstrate how to rank the extreme points of quadratic programming
problems.
It only remains to verify that the coefficient matrix of V
has the unimodularity property. The first two sets of constraints of V
are just the constraints of the minimum cut problem and it is a known
fact that the coefficient matrix associated with the constraint set of
the minimum cut problem is unimodular. Thus, by letting the coefficient
matrix associated with these constraints be denoted by R the problem
reduces to showing that if R is a unimodular matrix, then R' is also
unimodular. Where R' is defined in partitioned form as:
R _ where 0, 1 are row
  vectors and a is equal to
R = 0 1 21AI + INI for G(N,A)
j
0 I
The matrix R is unimodular if and only if every minor determinate is
equal to 0, +1, or 1. To show this result holds for R', the matrices
R1, R2, R3 will be defined where R1 = [R:0], R2 = [0:1] and R3 = [0:1 ].
Let A be an arbitrary minor of R'. If A f R3 7 , then there is
some row, r, of A which contains elements of R3. By expanding A by this
row a matrix, B, satisfying B A and IAI = IBI will be found.
Also, B will not contain the row r. Likewise, it is possible to expand
B by any row which contains elements of R3 and this expansion process
can be continued until for some matrix, C, such that IAI = ICI, and
c n R= .
3
Next, consider the case where a minor, C, of R has C n R3 =
If C 0 R2 = , then C R1 and thus ICI = 0, +1 or 1, since R1 is
unimodular. If C I R2 / , then there are columns of C which contain
elements of R2. By a sequential expansion about this set of columns,
it will be possible to equate ICI = IDI where D C C and D R =
But, D C C implies that D f R3 = $ which in turn implies that D c R
Thus, ICI = IDI which has a value of 0, +1, or 1.
The above discussion leads to the following method for showing
that if A is a minor of R', then IAI = 0, +1, or 1. First A is
expanded by any row containing elements of R3 and the method described
above is used to get a matrix B where: B A, IAI= IBI, and B n R3= .
Next, the columns of B are inspected to find if B n R2 = . If this is
the case, B C R and the desired result has been found. If R N R2 ; ,
then the above expansion scheme will locate a new matrix, C, such that
IAl = IBI = ICI and C cR1. So in either case (BI, and thus IAI,
has a value of 0, +1, or 1.
REFERENCES
1. Balas, E., "An Additive Algorithm for Solving Linear Programs with
ZeroOne Variables," ORSA, Vol. 13, No. 4, 1965.
2. Bellmore, AM., Bennington, G., and Lubore, S., "A Network Isolation
Algorithm," MITRE Technical Paper, MTP30, December, 1969.
3. Bellmore, M., Greenberg, H., and Jarvis, J., "Multicommodity Dis
connecting Sets," Management Science, Vol. 16, No. 6, 1970.
4. Bellmore, AM., and Ratliff, H., "Set Covering and Involuntary Bases',
to appear in Management Science.
5. Bennington, G. E., "Multicommodity Disconnecting Sets in Undirected
Graphs by Node Partitioning," Ph.D. Dissertation, The Johns
Hopkins University, 1969.
6. Busacker, R. G., and Gowen, P. G., "A Procedure for Determining
a Family of MinimalCost Network Flow Patterns," O.R.O. Tech
nical Paper 15, 1961.
7. Busacker, R. G., and Saaty, T. L., Finite Graphs and Networks,
McGrawHill, Inc., New York, N. Y., 1965.
8. Cabot, A. V., and Francis, R. L., "Solving Certain Quadratic
Minimization Problems by Ranking the Extreme Points," ORSA,
Vol. 18, No. 1, 1970.
9. Durbin, E. P., "An Interdiction Model of Highway Transportation,"
RAND Memorandum, RM4945 PR, May, 1966.
10. Everett, R., "Generalized Lagrange Multiplier Method for Solving
Problems of Optimum Allocation of Resources," ORSA, Vol. 11,
No. 3, 1963.
11. Ford, L. R., and Fulkerson, D. R., Flows in Networks, Princeton
University Press, Princeton, New Jersey, 1962.
12. Ford, L. R., and Fulkerson, D. R., "Maximal Flow Through a Network,"
Canad. J. Math., Vol. 8, 1956, pp. 399404.
13. Frank, H., and Frisch, I. T., Communication, Transmission, and
Transportation Networks, AddisonWesley, Reading, Mass., 1971.
14. Geoffrion, A. M., "Integer Programming by Implicit Enumeration
and Balas' Method," SIAM Review, Vol. 9, No. 2, 1967.
15. Greenberg, H. J., "Optimal Attack of a Command and Control Com
munications Network," Ph.D. Dissertation, The Johns Hopkins
University, 1968.
16. Hadley, G., Nonlinear and Dynamic Programming, AddisonWesley
Publishing Company, Inc., Reading, Massachusetts, 1964.
17. Halder, A. K., "The Method of Competing Links," Transportation
Science (ORSA), Vol. 4, No. 1, 1970.
18. Hobbs, A. M., "Programmer's Manual for the Pathfinding Importance
Number Generator," U. S. Department of Commerce, National
Bureau of Standards, Washington, D. C., 1962.
19. Jarvis, J., "Optimal Attack and Defense of a Command and Control
Communications Network," Ph.D. Dissertation, The Johns Hopkins
University, 1968.
20. Krokowski, lM., "Some Considerations in Assignment of Values to
Elements of Communications Network," Working Paper, National
Bureau of Standards, Project 4556455, July, 1967.
21. Laughhunn, D. J., "Quadratic Binary Programming with Applications
to CapitalBudgeting Problems," ORSA, Vol. 18, No. 3, 1970.
22. McMasters, A. W., and Mustin, T. lM., "Optimal Interdiction of
a Supply Network," to appear in the Naval Research Logistics
Quarterly.
23. Murty, Katta G., "An Algorithm for Ranking all the Assignments
in Order of Increasing Cost," ORSA, Vol. 16, No. 3, 1968.
24. Nunn, W., "The Lagrange MultiplierHeuristic Presentation,"
OEG Research Report, Number 76, CNA, Washington, D. C., 1966.
25. Ondrasek, M. J., and Wollmer, R. D., "A Model for Targeting Strikes
in a LOC Network," RAND Memorandum, RM5940PR, September, 1969.
26. Ratliff, H., "Optimal Defense of MultiCommodity Network," Ph.D.
Dissertation, The Johns Hopkins University, 1970.
74
27. Wollmer, R. D., "Removing Arcs from a Network," ORSA, Vol. 12,
No. 6, 1964.
28. Wollmer, R., "Sensitivity Analysis in Networks," Ph.D. Disserta
tion, University of California, Berkeley, 1965.
29. Wollmer, R. D., "Some Methods for Determining the Most Vital Link
in a Railway Network, RAND Memorandum, RM3321ISA, April,
1963.
VITA
Guy Thomas Sicilia was born in Frederick, Maryland, on
May 16, 1944. He attended Saint Joseph's High School, Emmitsburg,
Maryland, from 1958 to 1962, and enrolled at The Johns Hopkins
University in September 1962.
"At Johns Hopkins he studied Operations Research and in
1966 received a Bachelor of Engineering Science (Operations
Research).
In September 1966, Mr. Sicilia began graduate studies in
the Industrial and Systems Engineering Department, University
of Florida. He was a research assistant from 1966 through Sep
tember 1969, and was employed by the Mitre Corporation while pur
suing his degree from September 1969 to June 1971.
In December 1969, Mr. Sicilia received a Master of
Science in Systems Engineering (Operations Research) and completed
all requirements for the degree of Doctor of Philosophy in
September 1971. He is a member of Alpha Pi Mu, Honorary Indus
trial Engineering Society.
Mr. Sicilia is married. He and his wife, Anne, have one
son, Peter.
I certify that I have read this study and that in my opinion it
conforms to acceptable standards of scholarly presentation and is fully
adequate, in scope and quality, as a dissertation for the degree of
Doctor of Philosophy.
H. D. Ratliff, Chairman
Assistant Professor of Industrial and
Systems Engineering
I certify that I have read this study and that in my opinion it
conforms to acceptable standards of scholarly presentation and is fully
adequate, in scope and quality, as a dissertation for the degree of
Doctor of Philosophy.
M. E. Thomas
Professor of Industrial and Systems Engineering
I certify that I have read this study and that in my opinion it
conforms to acceptable standards of scholarly presentation and is fully
adequate, in scope and quality, as a dissertation for the degree of
Doctor of Philosophy.
T. J. Hodgson
Assistant Professor\of Industrial and
Systems Engineering\
I certify that I have read this study and that in my opinion it
conforms to acceptable standards of scholarly presentation and is fully
adequate, in scope and quality, as a dissertation for the degree of
Doctor of Philosophy.
iV Lc,, ~4\ CL VG _C
A. K. Varma
Associate Professor of Mathematics
This dissertation was submitted to the Dean of the College of Engineering
and to the Graduate Council, and was accepted as partial fulfillment of
the requirements for the degree of Doctor of Philosophy.
December, 1971
Dean, College of Engineering
Dean, Graduate School
