Download - OPTIMA 2001
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 1/104
OPTIMA 2001
Routing in communication networks and advances in metaheuristics
IV Congreso Chileno de Investigación Operativa
Curicó, Chile, October 2001
Celso C. RibeiroCatholic University of Rio de Janeiro, Brazil
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 2/104
Summary• PVC routing• Integer multicommodity flow formulation• Cost function• Solution method: GRASP with path-relinking• Numerical results and conclusions• Weight setting in OSPF routing• Genetic algorithm for OSPF routing• Population dynamics• Parallel GA for OSPF routing• Numerical results and conclusions• Experiments with // in GRASP and path-relinking
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 3/104
• PVC routing• Integer multicommodity flow
formulation• Cost function• Solution method: GRASP with path-
relinking• Numerical results and conclusions
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 4/104
PVC routing: application
• Frame relay service offers virtual private networks: permanent (long-term) virtual circuits (PVCs) between customer endpoints on a backbone network
• Routing: either automatically by switch or by network designer without any knowledge of future requests
• Inefficiencies and occasional need for off-line rerouting of the PVCs
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 5/104
PVC routing: application
• Reorder PVCs and apply algorithm on switch to reroute: – taking advantage of factors not
considered by switch algorithm may lead to greater network efficiency
– FR switch algorithm is typically fast since it is also used to reroute in case of switch or trunk failures
– this can be traded off for improved network resource utilization when routing off-line
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 6/104
PVC routing: application
• Other algorithms simply handle the number of hops (e.g. routing algorithm in Cisco switches)
• Handling delays is particularly important in international networks, where distances between backbone nodes vary considerably
Cisco Catalystic 5505 switch
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 7/104
PVC routing: application
• Load balancing is important for providing flexibility to handle:– overbooking: typically used by network
designers to account for non-coincidence of traffic
– PVC rerouting: due to failures– bursting above the committed rate: not
only allowed, but also sold to customers as one of the attractive features of frame relay
• Integer multicommodity network flow problem
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 8/104
PVC routing: example
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 9/104
PVC routing: example
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 10/104
PVC routing: example
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 11/104
PVC routing: example
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 12/104
PVC routing: examplemax capacity = 3
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 13/104
PVC routing: examplemax capacity = 3very long path!
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 14/104
PVC routing: examplemax capacity = 3very long path!
reroute
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 15/104
PVC routing: examplemax capacity = 3
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 16/104
PVC routing: examplemax capacity = 3feasible and
optimal!
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 17/104
• PVC routing• Integer multicommodity flow
formulation• Cost function• Solution method: GRASP with path-
relinking• Numerical results and conclusions
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 18/104
Problem formulation
• Given undirected FR network G = (V, E), where– V denotes n backbone nodes (FR switches)– E denotes m trunks connecting backbone
nodes• for each trunk e = (i,j )
– b (e ): maximum bandwidth (max kbits/sec rate)
– c (e ): maximum number of PVCs that can be routed on it
– d (e ): propagation and hopping delay
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 19/104
Problem formulation
• Demands K = {1,…,p } defined by– Origin-destination pairs– r (p): effective bandwidth requirement
(forward, backward, overbooking) for PVC p
• Objective is to minimize– delays– network load unbalance
• subject to– technological constraints
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 20/104
Problem formulation
• route for PVC (o, d ) is a sequence of adjacent trunks from node o to node d
• set of routing assignments is feasible if for all trunks e– total bandwidth requirements routed on
e does exceed b (e)– number of PVCs routed on e not greater
than c(e)
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 21/104
Problem formulation
, ,( , ) ( , )
1
, , ,
1, , , , ,
,
, , ,
( ) ,
1,
min ( ) ( ,..., , ,..., )
subject
if is source for
1
to
( ) , (
, if
, ) ,
( ) , ( , ) ,k kk i j j i i j
k
k ki j j i i j
k K
k ki j
p ki j i j i j j i j i
i j E i j
j i
K
i j E i j E
x x x
r
i V k
x x b i j E
x x c i j E i j
x
j
x
i
x
K
x
,
is destination for
0, other
0,1 , ( , ) ,
wise
.ki jx i j
i K
E k K
V k
,ki jx= 1, iff trunk (i,j )
is used to route PVC k.
,ki jx
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 22/104
• PVC routing• Integer multicommodity flow
formulation• Cost function• Solution method: GRASP with path-
relinking• Numerical results and conclusions
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 23/104
Cost function
• Linear combination of – delay component - weighted by (1-)– load balancing component - weighted
by
• Delay component: , , ,( )k ki j k i j j ik K
d x x
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 24/104
Cost function
• Load balancing component: measure of Fortz & Thorup (2000) to compute congestion:
= 1(L1) + 2(L2) + … + |E|(L|
E|)
where Le is the load on link e E,
e(Le) is piecewise linear and convex,
e(0) = 0, for all e E.
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 25/104
Piecewise linear and convex e(Le) link
congestion measure
0
10
20
30
40
50
60
70
0 0.2 0.4 0.6 0.8 1 1.2
cost
per
unit
of ca
paci
ty
trunk utilization rate
slope = 1slope = 3 slope = 10
slope = 70
slope = 500
slope = 5000
(Lece)
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 26/104
Some recent applications• Laguna & Glover (1993): tabu search, different
cost function, no constraints on PVCs routed on the same trunk (assign calls to paths)
• Sung & Park (1995): Lagrangean heuristic, very small graphs
• Amiri et al. (1999): Lagrangean heuristic, min delay
• Dahl et al. (1999): cutting planes (traffic assignment)
• Barnhart et al (2000): branch-and-price, different cost function, no constraints on PVCs routed on same trunk
• Shyur & Wen (2000): tabu search, min hubs
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 27/104
• PVC routing• Integer multicommodity flow
formulation• Cost function• Solution method: GRASP with
path-relinking• Numerical results and conclusions
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 28/104
Solution method: GRASP with
path-relinking• GRASP: Multistart metaheuristic, Feo &
Resende 1989• Path-relinking: intensification, Glover (1996)• Repeat for Max_Iterations:
– Construct greedy randomized solution– Use local search to improve constructed solution– Apply path-relinking to further improve solution– Update pool of elite solutions– Update best solution found
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 29/104
Solution method: GRASP
• GRASP– Construction:
• RCL: nc unrouted PVCs with largest demands• choose unrouted pair k biasing in favor of high
bandwidth requirements, with probablity k = rk / (pRCL rp)
• capacity constraints relaxed and handled via the penalty function introduced by the load-balance component
• length of each edge (i,j) is the incremental cost of routing rk additional units of demand on it
• route pair k using shortest route between its endpoints
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 30/104
Solution method: GRASP
• GRASP– Local search:
• for each PVC k K , remove rk units of flow from each edge in its current route
• recompute incremental weights of routing rk additional units of flow for all edges
• reroute PVC k using new shortest path
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 31/104
Solution method: path-relinking
• Introduced in the context of tabu search by Glover (1996)– Intensification strategy using set of
elite solutions
• Consists in exploring trajectories that connect high quality solutions.
initialsolution
guidingsolution
path in neighborhood of solutions
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 32/104
Solution method: path-relinking
• Path is generated by selecting moves that introduce in the initial solution attributes of the guiding solution.
• At each step, all moves that incorporate attributes of the guiding solution are evaluated and the best move is taken:
Initialsolution
guiding solution
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 33/104
Elite solutions x and y(x,y): symmetric difference
between S and T while ( |(x,y)| > 0 ) {
evaluate moves corresponding in (x,y) make best move
update (x,y)}
Solution method: path-relinking
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 34/104
Path-relinking in GRASP
• Introduced by Laguna & Martí (1999) • Maintain an elite set of solutions found
during GRASP iterations.• After each GRASP iteration
(construction & local search):– Select an elite solution at random: guiding
solution.– Use GRASP solution as initial solution.– Perform path-relinking between these two
solutions.
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 35/104
Path-relinking in GRASP
• Successful applications:– Prize-collecting Steiner tree problem
Canuto, Resende, & Ribeiro (2000)– Steiner tree problem
Ribeiro, Uchoa, & Werneck (2000) (e.g., best known results for open problems in series dv640 of the SteinLib)
– Three-index assignment problem Aiex, Pardalos, Resende, & Toraldo (2000)
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 36/104
Path-relinking: elite set
• P is set of elite solutions• Each iteration of first |P | GRASP
iterations adds one solution to P (if different from others).
• After that: solution x is promoted to P if:– x is better than best solution in P.– x is not better than best solution in P, but is
better than worst and it is sufficiently different from all solutions in P .
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 37/104
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 38/104
• PVC routing• Integer multicommodity flow
formulation• Cost function• Solution method: GRASP with path-
relinking• Numerical results and
conclusions
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 39/104
Experiment
• Heuristics:– H1: sorts demands in decreasing order and
routes them using minimum hops paths– H2: sorts demands in decreasing order and
routes using same cost function as GRASP– H3: adds the same local search to H2– GPRb: GRASP with backwards path-relinking
• SGI Challenge 196 MHz
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 40/104
Experiment• Test problems:
The Cartesian product of a family of Theorem:algorithms by a family of test problems is
an unreadable table!
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 41/104
• Variants of path-relinking:– G: pure GRASP– GPRb: GRASP with backward PR– GPRf: GRASP with forward PR– GPRbf: GRASP with two-way PR
• Other strategies:– Truncated path-relinking– Do not apply PR at every iteration
(frequency)
Variants of GRASP and path-relinking
S T
TS
S T
S T
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 42/104
Variants of GRASP and path-relinking
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
10 100 1000 10000 100000 1e+06
GGPRfGPRb
GPRfb
time
Pro
bab
ility
Each variant: 200 runs for one instance of PVC routing problem
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 43/104
Variants of GRASP and path-relinking
• Same computation time: probability of finding a solution at least as good as the target value increases from G GPRf GPRfb GPRb
• P(h,t) = probability variant h finds solution as good as target value in time no greater than t– P(GPRfb,100s)=9.25% P(GPRb,100s)=28.75%– P(G,2000s)=8.33% P(GPRf,2000s)=65.25%
• P(h,time)=50% Times for each variant: – GPRb:129s G:10933s GPRf:1727s
GPRfb:172s
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 44/104
Comparisons
Distribution: 86/60/2: 86 edges with utilization in [0,1/3), 60 in [1/3,2/3), and two in [2/3,9/10)
In general: GPRB > H3 > H2 > H1 (cost, max utilization, distribution)
costmax util.
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 45/104
Parameter of the objective function• Objective function (solution) = Delay x (1-) +
Load imbalance cost x
• if = 1: consider only trunk utilization rates• if = 0: consider only delays (capacities relaxed)• increasing 0 1 minimization of maximum
utilization rate dominates reduction of flows in edges with higher loads increase of flows in underloaded edges until the next breakpoint flows concentrate around breakpoint levels useful strategy for setting appropriate value of to achieve some level of quality of service (max util.)
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 46/104
Parameter of the objective function
0.65
0.7
0.75
0.8
0.85
0.9
0.95
1
1.05
1.1
0.0001 0.001 0.01 0.1 192000
94000
96000
98000
100000
102000
104000
maxim
um
utiliz
ation
dela
y
delta
delay
maximum utilization
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 47/104
Concluding remarks (1/3)
• New formulation with flexible objective function
• Family of heuristics (greedy, greedy+LS, GRASP, GRASP+PR)
• Simple greedy heuristic improves algorithm used in traffic engineering by network planners
• Objective function provides effective strategy for setting the weight parameter to achieve some quality of service level
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 48/104
Concluding remarks (2/3)
• Path-relinking adds memory and intensification mechanisms to GRASP, systematically contributing to improve solution quality.
• Some implementation strategies appear to be more effective than others (e.g., backwards from better, elite solution to current locally optimal solution).
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 49/104
Concluding remarks (3/3)• NETROUTER – Tool for optimally loading
demands on single-path routes on a capacitated network. It uses the GPRb variant of the combination of GRASP and path-relinking, minimizing delays while balancing network load.
• Application - Netrouter is currently being used for the design of AT&T's next generation frame-relay and MPLS core architecture, to assess if the current and forecasted demands can be handled by the proposed trunking plan.
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 50/104
Slides and publications
• Slides of this talk can be downloaded from: http://www.inf.puc-rio/~celso/talks/curico.ppt
• Recent survey about GRASP available at: http://www.inf.puc-rio.br/~celso/publicacoes• Paper about PVC routing available at: http://www.inf.puc-rio.br/~celso/publicacoes
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 51/104
OPTIMA 2001
Routing in communication networks and advances in metaheuristicsPart II
IV Congreso Chileno de Investigación Operativa
Curicó, Chile, October 2001
Celso C. RibeiroCatholic University of Rio de Janeiro, Brazil
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 52/104
Summary• PVC routing• Integer multicommodity flow formulation• Cost function• Solution method: GRASP with path-relinking• Numerical results and conclusions• Weight setting in OSPF routing• Genetic algorithm for OSPF routing• Population dynamics• Parallel GA for OSPF routing• Numerical results and conclusions• Experiments with // in GRASP and path-relinking
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 53/104
• Weight setting in OSPF routing• Genetic algorithm for OSPF routing• Population dynamics• Parallel GA for OSPF routing• Numerical results and conclusions
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 54/104
Weight setting in OSPF routing
• Internet traffic has been doubling each year Coffman & Odlyzko (2001): in the 1995-96 period (introduction of web browsers), traffic doubled every three months!
• Increasingly heavy traffic (due to video, voice, etc.) is raising the requirements of the Internet of tomorrow.
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 55/104
Weight setting in OSPF routing
• Objective of traffic engineering: make more efficient use of existing network resources
• Routing of traffic can have a major impact on the efficiency of network resource utilization
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 56/104
Packets of information
body header
Information sent over the Internet is broken into chunks, calledpackets or datagrams.
Contains necessary routinginformation, such as IP destination address.
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 57/104
Packet routing
router
router
router
router
router
When packet arrives at router,router must decide where tosend it next.
Packet’s final destination.
Routing consists in finding apath from source to destination.
D1
D2
D3
D4
R1
R2
R3
R4Routing table
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 58/104
Autonomous systems
To decrease the complexity ofrouting, the Internet is divided intosmaller domains, called AutonomousSystems.
AS1
AS2
AS3
AS4Routing within an AS is done viaInterior Gateway Protocols (IGP),while between AS’s Exterior GatewayProtocols (EGP) are used.
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 59/104
OSPF (Open Shortest Path First)
• OSPF is the most commonly used intra-domain routing protocol (IGP).
• It requires routers to exchange routing information with all other routers in the AS.– Complete network topology knowledge
is available to all routers, i.e. state of all routers and links in the AS.
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 60/104
Weight setting in OSPF routing
• Each link in the AS is assigned an integer weight [1,65535=2161]– Smaller weights may be used: MAX
• Each router computes tree of shortest weight paths to all other routers in the AS, with itself as the root, using Dijkstra’s algorithm.Bottom: Cisco 7000 router
Top: ForeRunner ASX-200 ATM switch
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 61/104
Weight setting in OSPF routing
321
351
2
4
D1
D2
D3
D4
R1
R1
R2
R3
root
First hop routers.
Routing table
Destination routers
Routing table is filledwith first hop routersfor each possible destination.In case of multiple shortest paths, flow is evenly split.
D5
D6
R1
R36
Cisco 12400 routers
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 62/104
Weight setting in OSPF routing
• OSPF weights are assigned by network operator– CISCO assigns, by default, a weight proportional
to the inverse of the available link bandwidth.– If all weights are unit, the cost of a path is the
number of hops in the path.
• Fortz & Thorup (2000): weight setting by using local search on large networks with up to 100 nodes and 503 links
• Ericsson, Pardalos, & Resende (2001): genetic algorithm
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 63/104
Minimization of congestion
• Directed capacitated network G = (N,A,c), where N are routers, A are links, and ca is the capacity of link a A.
• Same measure of Fortz & Thorup (2000) to compute congestion (also used for PVC routing):
= 1(L1) + 2(L2) + … + |A|(L|A|)
La is the load on link a A, a(La) is piecewise linear and convex, and a(0) = 0, for all a A.
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 64/104
Piecewise linear and convex a(La) link
congestion measure
0
10
20
30
40
50
60
70
0 0.2 0.4 0.6 0.8 1 1.2
cost
per
unit
of ca
paci
ty
trunk utilization rate
slope = 1slope = 3 slope = 10
slope = 70
slope = 500
slope = 5000
(Laca )
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 65/104
Weight setting in OSPF routing
• Given a directed network G = (N, A ) with link capacities ca A and demand matrix D = (ds,t ) specifying a demand to be sent from node s to node t :– Assign weights wa [1,65535] to each link
a A, such that the objective function is minimized when demand is routed according to the OSPF protocol.
• Weights are computed off-line and do not change often
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 66/104
• Weight setting in OSPF routing• Genetic algorithm for OSPF
routing• Population dynamics• Parallel GA for OSPF routing• Numerical results and conclusions
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 67/104
Genetic algorithms
Initialize and evaluate P (0);
Set t = 1Test termination
Generate P (t ) from P (t1)
Alter P (t )
Evaluate P (t )t = t + 1
done
crossover
mutationP (t ) is population ofsolutions at generation t.
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 68/104
GA for OSPF: solution encoding
• Ericsson, Pardalos, & Resende (2001)• A population consists of nPop integer
weight arrays: w = (w1, w2 ,…, w|A| ),
where wa [1,MAX]
• All possible weight arrays correspond to feasible solutions, i.e., every weight setting is feasible– nice problem feature for application of a
GA
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 69/104
GA for OSPF: fitness evaluation
• Route each demand pair (s,t ) using OSPF
• Compute loads Las,t
on each link a A• Add up loads on each link a A,
yielding total load La on link• Compute link congestion cost a(La) for
each link a A• Add up costs:
= 1(L1) + 2(L2) + … + |A|(L|A|)
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 70/104
• Weight setting in OSPF routing• Genetic algorithm for OSPF routing• Population dynamics• Parallel GA for OSPF routing• Numerical results and conclusions
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 71/104
Initial population• nPop 10 solutions with randomly
generated arc weights, uniformly in the interval [1,MAX]
• Weight settings of two other common heuristics:– OSPF (unit): all weights set to 1– OSPF (invCap): each arc weight is set
inversely proportional to its arc capacity– OSPF (fractions): all weights set to .MAX,
with = 1/8, 1/4, 3/8, 1/2, 5/8, 3/4, 7/8, 1 all but invCap lead to the same routing
decisions (all weights are equal)
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 72/104
Population partitioning
Class A
Class C
Class B
20% most fit
10% least fit
Population is sorted according tofitness (solution value) and solutions are classified into three categories.
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 73/104
Population dynamics
Class A
Class C
Class B
generation t generation t + 1
Class AClass A is promoted unchanged
Class C is replaced by randomlygenerated solutions.
Class C
Class B is replaced by crossover of: one Class A parent and
one Class B or Cparent.
Class B
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 74/104
Parent selection
• Parents are chosen at random:– one parent from Class A (elite)– one parent from Class B or C (non-elite)
• Reselection is allowed, i.e. parents can breed more than once per generation
• Better individuals are more likely to reproduce
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 75/104
Crossover with random keys
Bean (1994): crossover combines elite parent p1 with non-elite parent p2 to produce child c :
for all genes i = 1,2,…,|A | do
if rrandom[0,1] < 0.01 then c [i ] = irandom[1,MAX] else if rrandom[0,1] < 0.7
then c [i ] = p1[i ]
else c [i ] = p2[i ]
end
With small probability childhas single gene mutation.
Child is more likely to inheritgene of elite parent.
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 76/104
• Weight setting in OSPF routing• Genetic algorithm for OSPF routing• Population dynamics• Parallel GA for OSPF routing• Numerical results and conclusions
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 77/104
Parallel GA: local search• Combine GA with local search• LS with cost recomputations from scratch:
– For each arc e with current weight we do: • Temporarily replace arc weight by (1+ we)/2• Evaluate fitness• If new improved solution, update weight and go to
next arc• Otherwise, temporarily replace arc weight by (MAX+
we)/2• Evaluate fitness• If new improved solution, update weight• Go to next arc
– Until no further improvement is possible
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 78/104
Parallel GA: local search
• Variants:– V-1: at each processor, apply LS to
the best solution whenever it is improved
– V-2: at each processor, always apply LS to the best non-locally optimal solution
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 79/104
Parallel GA: cooperation
• P processors• Whenever a processor improves its
incumbent, the latter is broadcasted to:– all other processors– all closest log P processors (logical
organization)• At the beginning of each generation,
every processor replaces its worst solutions by those sent by other processors
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 80/104
• Weight setting in OSPF routing• Genetic algorithm for OSPF routing• Population dynamics• Parallel GA for OSPF routing• Numerical results and
conclusions
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 81/104
Numerical results• Work-in-progress, preliminary results: GA, LS
– Combine GA+LS? Cooperative // GA? Scatter search?
• One real world network: AT&T Worldnet backbone with 90 nodes, 274 links, and 272 pairs
• Compared with cost and maximum utilizations of the LB lower bound and several heuristics:– OSPF(invCap)– Local search of Fortz and Thorup (2000)– Original sequential GA of Ericsson et al.
(2001) – LP lower bound
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 82/104
2.35
2.4
2.45
2.5
2.55
2.6
2.65
2.7
2.75
2.8
2.85
0 2 4 6 8 10 12 14 16
co
st
processors
Collaborative vs. noncollaborative versions
collab_v1nocollab_v1
collab_v2nocollab_v2
F&TseqGA-500itr
LPLB
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 83/104
2.35
2.4
2.45
2.5
2.55
2.6
2.65
2.7
2.75
2.8
2.85
0 2 4 6 8 10 12 14 16
co
st
processors
Number of generations: 500 and 8000
collab_v1-500itrnocollab_v1-500itr
collab_v1-8000itrnocollab_v1-8000itr
F&TseqGA-500itr
LPLB
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 84/104
0
2
4
6
8
10
12
0 5000 100001500020000250003000035000400004500050000
cost
scaled internet traffic
InvCapGA //LPLB
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 85/104
0
0.5
1
1.5
2
0 5000 100001500020000250003000035000400004500050000
ma
xim
um
utiliza
tio
n
scaled internet traffic
InvCapGA //LPLB
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 86/104
Concluding remarks (1/1)• Sequential GAOSPF produced as good
solutions as LS for most instances, even better in some cases.
• GA generally finds good solutions close to the LP lower bound.
• //GA+LS works very well on real-world AT&T Worldnet backbone network, significantly increasing traffic and Internet capacity over CISCO’s recommended weight setting strategy.
• Extensions: speedup LS, improve cooperation, evaluate effects, scatter search
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 87/104
• Experiments with // in GRASP and path-relinking
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 88/104
Some experiments with parallelism in GRASP and
path-relinkingParallel implementations of GRASP• Aiex, Resende, & Ribeiro (2000):
speedups in independent multi-thread parallel GRASP implementations
• random variable time to target solution value fits a two-parameter exponential distribution approximate linear speedups with straightforward implementations
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 89/104
0
0.2
0.4
0.6
0.8
1
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5
pro
babili
ty
time to target solution value (seconds)
0
1
2
3
4
5
6
0 1 2 3 4 5 6
measu
red tim
es
exponential quantiles
Using standard graphical methodology ( Aiex, Resende, & Ribeiro, 2000), one observes that random variable time to target solution value fits a two-parameter exponential distribution.
Therefore, one should expect approximate linear speedup in a straightforward parallel implementation.
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 90/104
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
10 100 1000 10000 100000
pro
babili
ty
time to sub-optimal
1 processor2 processors4 processors8 processors
16 processors
3-index assignment
60 independent runsof each algorithm.
MPI implementation.
196Mhz MIPS R10000
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 91/104
2
4
6
8
10
12
14
16
18
2 4 6 8 10 12 14 16
speedup
number of processors
linear speedupparallel implementation
3-index assignment
Average speedup of 60 independent runs.
MPI implementation.
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 92/104
Some experiments with parallelism in GRASP and
path-relinkingPath-relinking in parallel• Aiex, Pardalos, Resende, & Toraldo 2000• Stopping criteria• Independent strategy• Cooperative strategy • Message Passing Interface (MPI)
implementation• SGI Challenge computer with 28
processors
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 93/104
Stopping strategy
• If process finds target solution– it stops and sends a message to other
processes, which stop.
• If process completes maximum number of iterations– it sends a message to other processes,
which do not stop until all processes complete maximum number of iterations.
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 94/104
Independent strategy
21 3 p4
seed(1) seed(2) seed(3) seed(4) seed(p)
Stopping criteria arecommunicated amongprocesses.
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 95/104
Cooperative strategy
Elite set
1
Elite set
p
Elite set
3
Elite set
2
Solutions accepted into elite sets are communicated among processes.
Stopping criteriaare communicated among processes asbefore.
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 96/104
Elite set communication
• Each process checks if there is any message to receive before each PR leg.
• If messages are waiting:– receive messages: one or more candidate
elite solutions– apply acceptance criteria to each
candidate solution– update elite set of process if necessary
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 97/104
Elite set communication
• In order to minimize communication:– During a GRASP+PR iteration, each
process bufferizes all solutions accepted into its elite set.
– At end of GRASP+PR iteration, bufferized solutions are sent to all other processes.
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 98/104
3-index assignment (AP3)
cost = 10
Complete tripartite graph:Each triangle made up ofthree distinctly colored nodes has a cost.
cost = 5
AP3: Find a set of trianglessuch that each node appearsin exactly one triangle and thesum of the costs of the triangles is minimized.
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 99/104
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
0 50 100 150 200 250 300 350
pro
babili
ty
time to target solution (seconds)
1 processor2 processors4 processors8 processors
16 processors
Independent on 3-index assignment: bs26
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 100/104
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
0 50 100 150 200 250 300 350
pro
babili
ty
time to target solution (seconds)
1 processor2 processors4 processors8 processors
16 processors
Collaborative on 3-index assignment: bs26
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 101/104
5
10
15
20
25
1 2 4 8 16
ave
rage s
peed-u
p
number of processors
independentcooperative
linear speedup
Speedup on 3-index assignment: bs26
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 102/104
Concluding remarks (1/1)
• Path-relinking adds intensification and memory mechanisms to GRASP.
• Time to target solution fits a two-parameter exponential distribution, so approximate linear speedups can be expected using independent processors.
• Exchange of information by processors can improve performance of parallel implementation.
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 103/104
Slides and publications
• Slides of this talk can be downloaded from: http://www.inf.puc-rio/~celso/talks/curico.ppt
• Chapter about GRASP and PR available at: http://www.inf.puc-rio.br/~celso/publicacoes• Paper about sequential GA for OSPF setting
available at: http://www.research.att.com/~mgcr/doc/gaospf.pdf• Paper about parallel GA for OSPF setting in
preparation
October 10, 2001
Routing in communication networks (OPTIMA 2001)
Page 104/104Curicó (Chile), October 9, 2001, 7:30 PM