Each line type has a unit cost, u ab , which is the cost per unit distance of line type b on edge a which links the nodes i, j.. In some instances of the network design problem, the goal
Trang 1synthesized network topology, is NP-complete (Clementi and Di Ianni, 1996; Gavish, 1992; King-Tim et al., 1997) NP-complete problems are those for which no known algorithm can
find the optimum solution besides brute force, exhaustive approaches Thus, the challenge is
to develop algorithms that run in polynomial time, which produce designs as near aspossible optimum Since lower bounds on the network design problem are only known forsimple cases (involving only one type of communication link, for instance Dutta and Mitra(1993); Ng and Hoang (1983; 1987); Gerla and Kleinrock (1977)), the method of choice forselecting good algorithms is to compare their results on identical problems The approachtaken in this chapter is to implement several of the best known methods in order toobjectively compare them on randomly generated instances of the network design problem
Telecommunications Optimization: Heuristic and Adaptive Techniques, edited by D Corne, M.J Oates and G.D Smith
Copyright © 2000 John Wiley & Sons Ltd ISBNs: 0-471-98855-3 (Hardback); 0-470-84163X (Electronic)
Trang 2Because there is keen interest in designing optimum networks, many approaches have
been developed, including branch exchange (Maruyama, 1978; Steiglitz et al., 1969), cut saturation (Gerla et al., 1974), genetic algorithms (Elbaum and Sidi, 1995; King-Tim et al., 1997; Pierre and Legault, 1996), MENTOR algorithms (Grover et al., 1991; Kershenbaum,
1993), and simulated annealing In this chapter, we will look at the results of several ofthese methods and perform an in-depth study of several heuristic and genetic techniques
3.2 P roblem D efinition
The basic topology of a communication network can be modeled by an undirected graph of
edges and nodes (vertices) and is referred to by the symbol G(V, E) The network design
problem is to synthesize a network topology that will satisfy all of the requirements set forth
as follows
Each edge represents a set of communication lines that connect the two nodes Each line
type has a unit cost, u ab , which is the cost per unit distance of line type b on edge a (which
links the nodes (i, j)) The unit cost of a line is a function of the line’s capacity For instance,
a 6 Mbps line may cost $2 per mile; a 45 Mbps line, $5 per mile, etc Communication linetypes are available in discrete capacities, set by the local telephone company or mediacarrier Normally, telephone tariff charges follow an ‘economy of scale’ in which the unitcost decreases with increasing line capacity Additionally, some tariffs may have a fixedcharge per line type in addition to a cost per distance fee In this case, both components ofthe line cost must be incorporated into one unit cost per line type, per edge (since each edgepresumably has a unique length) The fixed cost is divided by the length of the line andadded to the cost per unit distance to yield one unit cost per line type, per edge If an
undirected graph, G(V, E), has m edges, and each edge (i, j) has a distance d ij and represents
l line types, each with a unit cost u ab, then the objective function of the optimization problemis:
∑∑
= =
m
a l
b
ab ab
ij u x d
Since minimizing cost while maximizing flow are diametrically opposed objectives, the
resolution of this conflict is to specify a requirements matrix, R, where r st represents the
minimum amount of continuous capacity required between nodes s and t The value r st is
often referred to as the demand between s and t Similarly, if the total flow between every
Trang 3pair of nodes is given by a flow matrix, F, and f st is the flow in G(V, E) from source s to sink
t, then the maximum flow requirement could be written as:
st
st r
Note that, since R and F are symmetric matrices, f st = f ts and r st = r ts Also, f ii = 0 and r ii = 0
along the major diagonal of F and R The notion of undirected graphs and symmetric
matrices here is supported by the fact that carrier lines are inherently bi-directional (forinstance, a T-2 line simultaneously carries two signals at 6 Mbps in both directions)
Simultaneous use of the network by multiple source-sink pairs is modeled by assigning a
unique commodity to the flow between every pair of nodes in G(V, E) Thus, there are
n(n!1)∋2 distinct flows, or commodities, in the network Capacity restrictions limit the total
flow on each edge to be at, or below, c ij , the total capacity of edge (i, j) Let the term f ij k
represent the flow of commodity k in edge (i, j) This constraint is expressed as:
ij b
Whatever the final topology G(V, E) may be, it is nec essary for a design algorithm to
provide a way to route all concurrent flows from sources to sinks This may take the form of
one path assigned to a commodity (virtual path routing), or a set of paths assigned to a single commodity (bifurcated routing) In either case, the assignment of flow to each edge
must be made explicit by any network synthesis method Most methods use some form ofshortest path routing (Dijkstra, 1959), with the only difference being how the “length” of anedge is defined In some models, the length may denote physical distance In others, it mayindicate delay (in seconds) or unit cost When the length of each edge is one, then the pathwith the minimum number of ‘hops’ is selected Unless otherwise stated, shortest distancerouting will be used by the methods presented in this chapter
In some instances of the network design problem, the goal of achieving minimum cost isrealized by a graph of minimum connectivity For instance, a tree is a graph which connectsall nodes with a minimum number of edges However, any single node (or edge) failure will
disconnect the network Two routes are said to be edge-disjoint if they connect the same source and sink and have no common edges Similarly, two routes are said to be node-
Trang 4disjoint if the only nodes they share are the source and sink Since single point failures are
common in networks, an acceptable design method must provide enough redundancy tosurvive single node failures However, any redundancy increases the cost of the network Tobalance these conflicting goals, a minimum of two node-disjoint paths must exist betweenevery pair of nodes In the case of a single point network failure, traffic can be sent along analternate path, albeit at a much slower rate (which, most likely, will not continue to meet the
minimum required capacity constraints in R).
The average branch delay, T, is a network-wide metric which measures the average amount
of time (in seconds) that a packet will wait before being transmitted along an edge in thenetwork Kleinrock (1964) has developed a widely accepted model for delay incommunication networks, in which each edge is modeled as an independent M/M/1 queue
in a network of queues Each queue has an exponentially distributed mean service time, and
an average arrival rate of new packets which follows a Poisson distribution The packetlengths are exponentially distributed, with an average packet length of 1/Φ According to
Kleinrock, the average delay on edge i is:
i i i i
f c T
where c i is the total capacity and f i is the total flow (of all commodities) on edge i Since
nothing specific can be known about the average packet length (it varies with application),set Φ = 1 Kleinrock defines T, the average delay on any edge in the network, as:
f T
Notice that each demand is counted twice, once for r ij and again for r ji Unless otherwisespecified, equation 3.5 will be used to estimate delay in the network Still, some mayconsider this delay model to be too limiting, because it ignores propagation and nodal delay.Kleinrock (1970) defines a more comprehensive formula for delay as:
∑
=
++
i
i i i
Trang 5where γi is the average packet rate on edge i, P i is the propagation delay on edge i, and K i is
the nodal processing time at the node in which edge i terminates The term T i depends upon
the nature of traffic on edge i and the packet length distribution Since some of these values
are application dependent, the more general delay model of equation 3.5 is used
At each node, the amount of flow into the node must equal the flow out of the node, unless
the node is a source or sink of flow for a particular commodity For a given commodity k, and a given node q, this requirement is expressed as:
s q f f
f
st
st
r q
k qr q
k pq
if
,if 0
if
) ( ) (
configured with a Central Processing Unit (CPU), an on-line, Randomly AccessibleMemory component (RAM) which stores single-valued data in consecutively addressedmemory locations, and a simple Input/Output device (I/O) The Arithmetic and Logic Unit(ALU) of the central processor must possess the circuitry to perform operations such as:addition (+), subtraction (–), assignment (=), comparisons (<, ≤, >, ≥), shifting (<<, and >>),reading, and writing of data, all in unit time All vector operations on a scalar machine takeplace in time proportional to the vector
Given the above definition of a scalar computing machine, the goal of any network
design method is to produce an n×n adjacency matrix which contains the optimum capacity label for each edge in the final topology A label of zero in cell (i, j) indicates that there is
no edge between nodes i and j in the final design Since edge capacities are discrete quantities, let k be the number of discrete values needed to be considered for each cell in an
optimum design An exhaustive search of all possible labelings would produce k(n2−n / 2labeled networks in the solution space to be tested for optimality Additionally, eachnetwork would have a large number of ways to route flow, only one of which is optimal.For even small instances of the network design problem, any approach on a scalar machinethat has to consider every possible outcome, is intractable For example, in the next section
an instance of this problem, known as the Ten Chinese Cities network design problem, will
Trang 6be defined in which k = 12 and n = 10 In this problem, there are more than 1048
possiblesolutions to be considered Clearly, problems of this level of complexity can not beaddressed by exhaustive methods Even traditional optimization algorithms, such as linearprogramming and integer programming methods, will face exponential execution times
If the network design problem of section 3.2 is formulated as a non-linear optimization
problem, the objective function is to minimize cost, subject to proper flow assignment and
capacity assignment, which meets the delay requirement in the proposed topology The
constraints of topology selection, flow assignment, capacity assignment and delay, are related with one another, and with the objective function For instance, a change in topologywould affect the cost of the network, as would a change in the flow assignment or capacityassignment A decrease in the delay would increase the cost of the network, since a lowerdelay requires more excess capacity in the network Flow and capacity assignment are inter-related, since the routing of the flow is dependent on finding an augmenting path for eachcommodity which fits within the capacity constraints of each edge in the topology Also,one only needs to look at equation 3.5 to see that delay is a function of both the flow and thecapacity assigned to each edge in the network Figure 3.1 attempts to show how these sub-problems are related to one another in the network design problem The arrowhead indicatesthe direction of the ‘affects’ relationship Of all the factors affecting cost, only topology isunaffected by the other constraints Also, the cycle formed by flow assignment, capacityassignment, and delay, indicates that any ordering may be used among these three sub-problems Since any acceptable network design algorithm must deal with all the constraints
inter-in Figure 3.1, the implication is that topology should be addressed first, followed by anyordering of flow assignment, capacity assignment and delay, in order to address theobjective of minimizing cost
Figure 3.1 Sub-problems of the network design problem and their inter-relationships.
Although any network design algorithm can be said to be heuristic (since none guarantee theoptimal answer), the genetic algorithms all share a common strategy of imitatingevolutionary systems by using the principle of ‘survival of the fittest’ to guide the search
Minimize Cost
Trang 7process Thus, genetic algorithms present a unique and distinctly different approach to theproblem, and are described in the next section There are many heuristic algorithms thathave been developed to address the general problem of network design They include branch
exchange (Maruyama, 1978; Steiglitz et al., 1969), cut saturation (Gerla et al., 1974), the MENTOR algorithm (Grover et al., 1991; Kershenbaum, 1993), and a new method
introduced in this section, called the Union of Rings algorithm (Blessing, 1998) Empiricalstudies suggest that cut saturation produces superior designs to branch exchange (Boorstyn
and Frank, 1977; Gerla et al., 1974) In several studies where cut saturation results are reported (King-Tim et al., 1997; Pierre and Legault, 1996), the Union of Rings method
produces a less costly design within the minimum delay requirement Since the Union ofRings method seems to produce the most promising results (albeit, on a small number of testcases), it will be used as a representative method to compare with the genetic methods of thefollowing section
The cut saturation method, like the Union of Rings method, is based on the analysis of
maximum flows and minimum cuts in a network A cut is a set of edges which, when
removed from the graph, disconnects the graph into two or more components In a networkflow problem, the labels on the edges of the graph denote the capacity of the edge Thus, thecapacity of a cut is simply the sum of the labels on each edge in the cut set A cut whose
edges are filled to capacity is called a saturated cut The cut saturation algorithm begins by
routing flow until a cut is saturated in the proposed graph In order to continue sending flowthrough the network, an edge must be added to the saturated cut An edge is added to thegraph which spans the saturated cut, thus increasing its capacity, and allowing more flowthrough the network Also, edges on either side of the saturated cut can be removed from thegraph, thus reducing cost The addition or deletion of edges causes flow to be re-routed, thusproducing new saturated cuts in the graph Edges are added and deleted from the network,
as long as the overall cost of the network is improving (i.e decreasing) The algorithm
terminates when a locally optimum point is reached, where neither the addition or deletion
of an edge improves the graph
Let G refer to any connected, undirected graph of n nodes In their seminal paper on
network flows, Ford and Fulkerson (1962) show that the maximum flow between any source and sink in G equals the value of the minimum cut separating the source and sink – this is known as the max-flow, min-cut theorem When considering all possible flows (i.e.
commodities) in a network, Gomory and Hu (1961) show that there are only n–1 minimum
cuts in G separating all possible source-sink pairs Further, these n–1 essential cuts in G form a tree, called the Gomory-Hu cut tree, T Since T preserves the maximum flows between all pairs of nodes in G, T is said to be flow-equivalent to G Thus, each edge in T represents both a minimum cut and a maximum flow in G The significance of Gomory and Hu’s multi-terminal, maximal flows result is that only n–1 maximum flow problems need be done to find the maximum flow between n(n–1)/2 pairs of nodes in G.
Two problems exist with using the Gomory-Hu cut tree as a network design algorithmfor the problem defined in section 3.2 First, a tree cannot survive a single edge or nodefailure, and second, multi-terminal, maximal flows allow for only one commodity at a time
to use the network
Also, it may be surprising to know that the Gomory-Hu cut tree is not a minimum weight flow-equivalent graph which connects all the nodes of G (the weight of a graph is simply the
sum of its edge capacities) Nor is the minimum spanning tree of Prim (1957)! The
Trang 8significance of a minimum weight flow-equivalent graph is that, if the cost to send one unit
of flow over any edge is one (a unit cost condition), then the minimum weight graph is also
a minimum cost graph, and is optimal under unit cost conditions Another appealing
property of the Minimum Weight Flow-Equivalent Graph (MWFEG) is that it is, at least,bi-connected (thus solving problem 1 above) If the MWFEG can be modified to allow forconcurrent use of the graph by multiple commodities, and accommodate a more robust costfunction, it may produce near-optimum results This is the main idea behind the Union ofRings algorithm
Frank and Frisch (1971) describe a synthesis process by which the minimum weight
flow-equivalent graph of G can be constructed However, it involves the complicated and time consuming tasks of computing the principally partitioned and semi-principally
partitioned matrices of the adjacency matrix of G As shown below, these steps are
unnecessary in order to compute the MWFEG of G The Union of Rings algorithm, which
makes use of the MWFEG, is outlined as follows:
1 Draw the requirements matrix, R, as a complete graph, labeling each edge (i, j) with the
minimum flow requirement r ij
2 Compute T, the maximum spanning tree of R.
3 Convert T into a linear flow-equivalent graph, L, by using Algorithm 1 below.
4 Factor L into a set of uniform capacity rings, as described in Frank and Frisch (1971).
5 Superimpose the set of rings from step 3 to form a network topology, N.
6 Remove any short cut edges in N which are not cost efficient, and re-route their flow on other edges in N This step produces the final network topology, NΝ
Steps 1 and 2 determine the dominant requirements of the problem Hu has shown that,
if the dominant requirements are satisfied between all nodes, then all requirements can besatisfied (Hu, 1982) Obviously, the maximum spanning tree of a complete requirementsgraph satisfies all dominant requirements (taken one requirement at a time) Steps 3, 4 and 5transform the tree into a biconnected, flow-equivalent graph Step 3 is best explained byExample 1, below Step 6 is a process of local optimization, where only some of the edges
in N are considered for removal For the sake of completeness, Algorithm 1 is as follows:
1 Initially, all nodes are unmarked Arbitrarily pick a starting node in T and mark it This node is the start of the linear graph L.
2 Select the maximum capacity edge incident to one marked, and one unmarked, node in
T as the next edge-node pair to append to L Break ties arbitrarily.
3 Mark the unmarked node that is incident to the edge selected in step 2
4 If all nodes are marked, then stop Otherwise, go to step 2
Example 1
Figure 3.2 shows a maximum spanning tree, T, of a typical requirements matrix Algorithm
1 is used to convert T into the flow-equivalent linear graph, L, shown below T in Figure 3.2.
To demonstrate that any tree can be converted into a flow-equivalent linear graph, a proof
of Algorithm 1 is contained in the Appendix to this chapter
Trang 9The Union of Rings algorithm is best described by an example The particular design
problem in question is published in King-Tim et al (1997) The problem is to link ten
Chinese cities into one network, subject to redundancy requirements (at least two disjointpaths between every pair of nodes), minimum flow requirements (expressed as theadjacency matrix in Table 3.1), and a maximum branch delay of 0.1 second
There are three types of communication lines available, which have the followingcapacities and costs:
• 6 Mbps lines cost 1 unit per kilometer
• 45 Mbps lines cost 4 units per kilometer
• 150 Mbps lines cost 9 units per kilometer
Figure 3.2 A maximum spanning tree and its flow-equivalent linear graph.
Figure 3.3 Maximum spanning tree of the complete requirements graph of Table 3.1.
A 5 D 4 C 3 B 7 G 6 F 5 J 4 K 3 E 2 I 1 H 6 M 5 L
A
D
I E
K
C B
G F
J
H
M L
5 4
3
7 6
5 4
6 5
Trang 10Table 3.1 Minimum flow requirements
Cities Beijing Shanghai Guangzhou Hong
Kong Wuhan Chengdu Xi’an Kunming Harbin Tianjin Beijing 0 20 20 20 20 10 10 2 5 20
complete requirements graph is given in Figure 3.3 The linear flow-equivalent graph which
corresponds to the maximum spanning tree is shown in Figure 3.4 The process by which
uniform capacity rings are extrac ted from the linear flow-equivalent graph is desc ribed in
Frank and Frisch (1971), and is illustrated in Figure 3.5 Basically, the minimum capacityedge is factored out of each edge in the linear graph This is repeated until all edges fromthe original graph are reduced to zero Once all the uniform capacity linear graphs havebeen determined, each linear graph is made into a uniform capacity ring by connecting thefirst and last nodes with a ‘wrap around’ edge When a ring has been formed, the capacity ofeach edge in the ring can be reduced by half and still preserve the flow-equivalenceproperty This is possible since each linear flow can now be divided evenly into two flows,one which goes ‘clockwise’ around the ring and the other in the ‘counter-clockwise’direction The uniform capacity rings are shown in Figure 3.6
Figure 3.4 Linear flow-equivalent graph corresponding to the spanning tree of Figure 3.3.
B 20 S 20 G 20 HK 20 W 20 T 10 C 10 X 5 H 5 K