PVC routing algorithms

Download Report

Transcript PVC routing algorithms

Recent Developments in Metaheuristics
and
Applications to Network Design
Problems
Celso C. RIBEIRO
Catholic University of Rio de Janeiro, Brazil
Department of Computer Science
Joint work with Maurício Resende and Isabel Rosseti
March 2002
Slide 1/59 (EHESS)
Recents developments in metaheuristics and
applications to network design problems
Summary
• 2-path network design problem
• PVC routing problem
• GRASP with path-relinking
–
–
–
–
Construction phase
Local search phase
Extended local search
Path-relinking
• Parallel implementation
• Numerical results
– Variants of path-relinking
– Effectiveness of the new heuristics
– Parallelization
• Concluding remarks
March 2002
Slide 2/59 (EHESS)
Recents developments in metaheuristics and
applications to network design problems
2-path network design problem
• Graph G = (V,E)
V: node set
E: edge set
weights we associated with each edge e  E
• k-path between nodes s,t  V: sequence of
at most k edges connecting s and t
• D: set of demands (origin-destination pairs)
March 2002
Slide 3/59 (EHESS)
Recents developments in metaheuristics and
applications to network design problems
2-path network design problem
• 2-path network design problem (2PNDP):
Find a minimum weighted subset of edges E’
 E containing a 2-path in G between the
extremities of every origin-destination pair
in D
• Applications: design of communication
networks, in which paths with few edges are
sought to enforce high reliability and small
delays
March 2002
Slide 4/59 (EHESS)
Recents developments in metaheuristics and
applications to network design problems
2-path network design problem
• Dahl & Johannessen (2000):
– Decision version of 2PNDP is NP-complete.
– Approximate algorithm
– Exact cutting plane algorithm
• Balakrishnan & Altinkemer (1992):
– Integer programming formulation for kPNDP
– See also LeBlanc, Chifflet & Mahey (1999).
• Generalizations: k-hop minimum spanning
tree, k-hop minimum Steiner tree
March 2002
Slide 5/59 (EHESS)
Recents developments in metaheuristics and
applications to network design problems
PVC routing
• Virtual private networks: permanent 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 offline rerouting of the PVCs
March 2002
Slide 6/59 (EHESS)
Recents developments in metaheuristics and
applications to network design problems
PVC routing: example
March 2002
Slide 7/59 (EHESS)
Recents developments in metaheuristics and
applications to network design problems
PVC routing: example
March 2002
Slide 8/59 (EHESS)
Recents developments in metaheuristics and
applications to network design problems
PVC routing: example
March 2002
Slide 9/59 (EHESS)
Recents developments in metaheuristics and
applications to network design problems
PVC routing: example
March 2002
Slide 10/59 (EHESS)
Recents developments in metaheuristics and
applications to network design problems
PVC routing: example
max capacity = 3
March 2002
Slide 11/59 (EHESS)
Recents developments in metaheuristics and
applications to network design problems
PVC routing: example
max capacity = 3
reroute
very long path!
March 2002
Slide 12/59 (EHESS)
Recents developments in metaheuristics and
applications to network design problems
PVC routing: example
max capacity = 3
March 2002
Slide 13/59 (EHESS)
Recents developments in metaheuristics and
applications to network design problems
PVC routing: example
feasible and
optimal!
March 2002
Slide 14/59 (EHESS)
max capacity = 3
Recents developments in metaheuristics and
applications to network design problems
PVC routing
• Other algorithms simply handle
the number of hops (e.g. routing
algorithm in Cisco switches) Cisco Catalystic 5505 switch
• Handling delays is particularly important in
international networks, where distances
between backbone nodes vary considerably
March 2002
Slide 15/59 (EHESS)
Recents developments in metaheuristics and
applications to network design problems
PVC routing
• 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
March
2002
Recents developments in metaheuristics and
Slide 16/59 (EHESS)
problem
applications to network design problems
PVC routing
• 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
delay
March–
2002
Recents developments
in metaheuristics and
Slide 17/59 (EHESS) and hopping
applications to network design problems
PVC routing
• Demands K = {1,…,p } defined by
– Origin-destination pairs (o,d )
– r (p): effective bandwidth requirement (forward,
backward, overbooking) for PVC p
• Objective is to minimize
– delays
– network load unbalance
• subject to
– technological constraints
March 2002
Slide 18/59 (EHESS)
Recents developments in metaheuristics and
applications to network design problems
PVC routing
• 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)
March 2002
Slide 19/59 (EHESS)
Recents developments in metaheuristics and
applications to network design problems
Cost function
• Linear combination of
– delay component - weighted by (1-)
– load balancing component - weighted by 
• Delay component: di , j
March 2002
Slide 20/59 (EHESS)
  (x
kK
k
k
i, j
x )
k
j ,i
Recents developments in metaheuristics and
applications to network design problems
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.
March 2002
Slide 21/59 (EHESS)
Recents developments in metaheuristics and
applications to network design problems
Piecewise linear and convex
e(Le) link congestion measure
70
slope = 5000
60
50
slope = 500
40
30
20
slope = 3
slope = 10
slope = 1
10
slope = 70
0
0
0.2
0.4
0.6
0.8
trunk utilization rate
March 2002
Slide 22/59 (EHESS)
1
1.2
(Lece)
Recents developments in metaheuristics and
applications to network design problems
GRASP with path-relinking
• GRASP:
– Multistart metaheuristic, Feo & Resende (1989)
• Path-relinking:
– Intensification strategy, Glover (1996)
• Repeat for MaxIterations:
–
–
–
–
–
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
March 2002
Slide 23/59 (EHESS)
Recents developments in metaheuristics and
applications to network design problems
Greedy Randomized Adaptive
Search Procedures (GRASP)
• Combinaison d’une méthode constructive
avec une approche par recherche locale,
dans une procédure itérative (multi-départ)
où les itérations sont totalement
indépendantes les unes des autres
(a) construction d’une solution
(b) recherche locale
March 2002
Slide 24/59 (EHESS)
Recents developments in metaheuristics and
applications to network design problems
Greedy Randomized Adaptive
Search Procedures (GRASP)
f(s*)  +
for i = 1,…,MaxIterations do
Construire une solution s en utilisant un
algorithme glouton randomisé
Appliquer une procédure de recherche
locale
à partir de s, pour obtenir la
solution s’
if f(s’) < f(s*) then s*  s’
end-for
March 2002
Slide 25/59 (EHESS)
Recents developments in metaheuristics and
applications to network design problems
GRASP
• Phase de construction: construire une
solution réalisable, un élément à la fois
• Chaque itération:
– évaluer le bénéfice de chaque élément en
utilisant une fonction gloutonne
– créer une liste restricte de candidats, formée
par les éléments avec les meilleures évaluations
– sélectionner de façon probabiliste un élément
de la liste restricte de candidats
– adapter la fonction gloutonne après l’utilisation
de l’élément choisi
March 2002
Slide 26/59 (EHESS)
Recents developments in metaheuristics and
applications to network design problems
GRASP
• Restriction des éléments dans la liste de
candidats:
– nombre maximum d’éléments dans la liste
– qualité des éléments dans la liste (par rapport au
choix exclusivement glouton)
cmin = bénefice minimum parmi tous les éléments
cmax = bénefice maximum parmi tous les éléments
Paramètre α permet de controler la qualité des
éléments dans la liste de candidats:
Liste = { éléments j: cj ≤ cmin + α . (cmax - cmin)}
α = 0: choix glouton
March 2002
developments in metaheuristics and
Slide 27/59 (EHESS)
α = 1: choix
probabilisteRecents
applications to network design problems
GRASP
• Choix probabiliste entre les meilleurs éléments
de la liste de candidats (pas forcément le
meilleur, comme c’est le cas du choix
exclusivement glouton)
– la qualité moyenne de la solution dépend de la
qualité des éléments dans la liste
– la diversité des solutions construites dépend du
nombre d’éléments dans la liste
• Diversification basée sur la randomisation
controlée: différentes solutions construites lors
de différentes
iterations
GRASP
March 2002
Recents
developments in metaheuristics and
Slide 28/59 (EHESS)
applications to network design problems
GRASP
• Construction gloutonne: bonnes solutions
(près des optima locaux), permettant
d’accélérer la recherche locale
• Recherche locale: amélioration des solutions
construites lors de la première phase
– choix du voisinage
– structures de données efficaces pour accélérer
la recherche locale
– bonnes solutions de départ permettent
d’accélérer la recherche locale
March 2002
Slide 29/59 (EHESS)
Recents developments in metaheuristics and
applications to network design problems
GRASP
• Technique d’échantillonage
de l’espace de
March 2002
Slide 30/59 (EHESS)
recherche
Recents developments in metaheuristics and
applications to network design problems
GRASP
• Implémentation simple:
algorithme glouton + recherche locale
• Peu de paramètres à régler:
– restrictivité de la liste de candidats
– nombre d’itérations
• Desavantage: n’utilise pas de mémoire
• Parallélisation: simple et directe
– N itérations, p processeurs: chaque processeur fait
N/p itérations et à la fin informe au maître la
meilleure solution qu’il a trouvée
March 2002
Slide 31/59 (EHESS)
Recents developments in metaheuristics and
applications to network design problems
GRASP with extended local
search
• Basic GRASP procedure puts too much effort
in the construction phase, but stops in the
first local optimum.
• Strategy to increase the effort in the local
search phase and to add memory to GRASP.
• Improved local search by using a very shortterm memory (tabu search).
March 2002
Slide 32/59 (EHESS)
Recents developments in metaheuristics and
applications to network design problems
GRASP with extended local
search
• Keep a tabu list with the last TabuTenure
(small value, typically 5-10) solutions visited.
• Move to the best neighbor solution (be it an
improving solution or not) which is not in the
tabu list.
• Stop after TabuTenure iterations without
improvement in the best global solution.
• Best results for capacitated minimum
spanning tree: Souza, Duhamel & Ribeiro
March 2002
Recents developments in metaheuristics and
Slide 33/59 (EHESS)
applications to network design problems
(2002)
GRASP for 2-path network design
•
GRASP
–
Construction phase
1. Set the modified weights equal to the original
weights.
2. Randomly select an origin-destination pair (a,b)  D.
3. Compute a shortest 2-path between a and b using the
modified weights.
4. Set to 0 the modified weights of the edges in this
path.
5. Remove (a,b) from D.
March 2002
Recents developments in metaheuristics and
Slide 34/59 (EHESS)
6. If D is empty stop, otherwise
goto back
to step
2.
applications
network design
problems
GRASP for 2-path network design
•
GRASP
–
Local search phase
1. Generate a circular random permutation of the pairs in
D.
2. Select the next origin-destination pair (a,b)  D.
3. Tentatively replace the shortest 2-path between a and
b:
•
•
•
March 2002
•
Weights of edges used by other 2-paths are temporarilly set to
0.
Compute a new shortest 2-path between a and b.
Update the current solution if it is improved by the new 2path.
Restore all original edge
weights.
Recents developments in metaheuristics and
Slide 35/59 (EHESS)
to networkwithout
design problems
4. If |D| paths have been applications
investigated
Path-relinking
• 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.
initial
solution
March 2002
path in neighborhood of solutions
Slide 36/59 (EHESS)
guiding
solution
Recents developments in metaheuristics and
applications to network design problems
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:
guiding
solution
Initial
solution
March 2002
Slide 37/59 (EHESS)
Recents developments in metaheuristics and
applications to network design problems
Path-relinking
Elite solutions x and y
(x,y): symmetric difference between x and y
while ( |(x,y)| > 0 ) {
evaluate moves corresponding in (x,y)
make best move
update (x,y)
}
March 2002
Slide 38/59 (EHESS)
Recents developments in metaheuristics and
applications to network design problems
GRASP with path-relinking
• Maintain an elite set of solutions found
during GRASP iterations.
• After each GRASP iteration (construction
and local search):
– Select an elite solution at random: guiding
solution.
– Use GRASP solution as initial solution.
– Perform path-relinking between these two
solutions.
• PR allows introducing memory into GRASP.
March 2002
Slide 39/59 (EHESS)
Recents developments in metaheuristics and
applications to network design problems
GRASP with path-relinking
• P is a 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 is sufficiently different
from allSlide
solutions
March 2002
40/59 (EHESS) in P. Recents developments in metaheuristics and
applications to network design problems
Path-relinking with GRASP
• Successful applications:
– Prize-collecting Steiner tree problem
Canuto, Resende & Ribeiro (2001)
– Steiner tree problem
Ribeiro,
Uchoa & Werneck (2002) (e.g., best known
results for open problems in series
dv640 of
the SteinLib)
– Three-index assignment problem
Aiex, Pardalos, Resende & Toraldo (2000)
– Capacitated minimum spanning tree:
Souza, Duhamel & Ribeiro (2002) (e.g., best
known results for largest problems with 160
nodes) Slide 41/59 (EHESS)
March 2002
Recents developments in metaheuristics and
applications to network design problems
March 2002
Slide 42/59 (EHESS)
Recents developments in metaheuristics and
applications to network design problems
Parallel implementation
• Main interest of parallel implementations
of metaheuristics: robustness
Cung, Martins, Ribeiro & Roucairol (2001)
• Parallelization strategy:
– Multiple-walk independent-thread strategy
– Iterations evenly distributed over p processors
– Each processor keeps a copy of the algorithm and
data
– One processor acts as the master (data, seeds,
iterations)
March 2002
Recents developments in metaheuristics and
Slide 43/59 (EHESS)
applications to network design problems
Computational results:
2-path network design
• Parallel GRASP heuristic:
– Implementation in C
– MPI LAM 6.3.2 for communication
– Linux cluster with 32 Pentium II-400 processors
• Largest instances solved:
– Larger instances solved with the GRASP heuristic:
|V|= 400, |E|= 79800, |D|= 4000
(previously: |V|= 120, |E|= 7140, |D|= 60)
March 2002
Slide 44/59 (EHESS)
Recents developments in metaheuristics and
applications to network design problems
Computational results:
2-path network design
• Effectiveness:
Parallel D&J
GRASP (2000)
– 100 small instances with
70 nodes generated as in
Sample Sample
Dahl and Johannessen
A
B
(2000) for comparison
Size
100
30
purposes.
– Statistical test t for
Mean
443.7 453.7
unpaired observations
(-2.2%)
– Parallel GRASP finds
Std.
dev.
40.6
61.6
better solutions with 40%
of confidence.
March 2002
Slide 45/59 (EHESS)
Recents developments in metaheuristics and
applications to network design problems
Variants of GRASP with path-relinking
• Variants of GRASP with path-relinking:
–
–
–
–
T
S
GRASP: pure GRASP
G+PR(B): GRASP with backward PR
S
G+PR(F): GRASP with forward PR
G+PR(BF): GRASP with two-way PRS
• Other strategies:
S
– Truncated path-relinking
– Do not apply PR at every iteration (frequency)
March 2002
Slide 46/59 (EHESS)
Recents developments in metaheuristics and
applications to network design problems
T
T
T
Variants of GRASP with pathrelinking
• Select an instance and a target value.
• For each variant of GRASP with pathrelinking:
– Perform 200 runs using different seeds.
– Stop when a solution value at least as good as
the target is found.
– For each run, measure the time-to-target-value.
– Plot the probabilities of finding a solution at
least as good as the target value within some
computation
time.
March 2002
Recents developments in metaheuristics and
Slide 47/59 (EHESS)
applications to network design problems
Variants of GRASP with pathrelinking
Each variant: 200 runs for one instance of 2PNDP
1.0
0.9
0.8
0.7
Probability
0.6
0.5
0.4
0.3
0.2
G+PR(BF)
G+PR(B)
G+PR(F)
GRASP
0.1
0.0
0.1
1.0
10.0
100.0
1000.0
10000.0
Time (seconds)
March 2002
Slide 48/59 (EHESS)
Recents developments in metaheuristics and
applications to network design problems
Variants of GRASP with pathrelinking
• Same computation time: probability of finding a
solution at least as good as the target value
increases from GRASP  G+PR(F)  G+PR(B) 
G+PR(BF)
• P(h,t) = probability that variant h finds a solution
as good as the target value in time no greater
than t
– P(GRASP,10s) = 2%
P(G+PR(F),10s) = 56%
P(G+PR(B),10s) = 75% P(G+PR(BF),10s) = 84%
• Effectiveness of path-relinking to improve and
March 2002
Recents developments in metaheuristics and
Slide 49/59 (EHESS)
applications to network design problems
speedup the pure GRASP
Computational results: PVC
routing
• 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
March 2002
Slide 50/59 (EHESS)
Recents developments in metaheuristics and
applications to network design problems
Computational results: PVC
routing
• Test problems:
March 2002
Slide 51/59 (EHESS)
Recents developments in metaheuristics and
applications to network design problems
Variants of GRASP and pathrelinking
Each variant: 200 runs for one instance of PVC routing problem
1
G
GPRf
GPRb
GPRf b
0.9
0.8
Probability
0.7
0.6
0.5
0.4
0.3
0.2
0.1
0
10
March 2002
100
Slide 52/59 (EHESS)
1000
10000
100000
1e+06
Time (s)
Recents developments in metaheuristics and
applications to network design problems
Variants of GRASP and pathrelinking
• 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
March 2002
Recents developments in metaheuristics and
Slide 53/59 (EHESS)
applications to network design problems
Comparisons
cost
max util.
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)
March 2002
Slide 54/59 (EHESS)
Recents developments in metaheuristics and
applications to network design problems
•
Parallel implementation:
Linear speedups:speedups
2PNDP, |V|= 400, 3200
Speedup
iterations
31.2
15.7
7.9
GRASP+PR
4.0
2.0
1.0
1 2
4
8
16
32
Processors
March 2002
Slide 55/59 (EHESS)
Recents developments in metaheuristics and
applications to network design problems
Concluding remarks (1/3)
• Effectiveness of the new heuristic for the 2path network design problem:
– Larger problems solved.
– New heuristic finds better solutions.
– Domination is stronger for harder or
larger instances.
• Heuristic for PVC routing improves algorithm
used in traffic engineering by network
planners.
March 2002
Slide 56/59 (EHESS)
Recents developments in metaheuristics and
applications to network design problems
Concluding remarks (2/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
by the proposed
March
2002 be handled
Recents developmentstrunking
in metaheuristics and
Slide 57/59 (EHESS)
applications to network design problems
Concluding remarks (3/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).
• Extended local search also adds memory and
improves the solutions obtained by basic local
search.
• Linear speedups with the parallel
March 2002
Recents developments in metaheuristics and
Slide 58/59 (EHESS)
mplementation.
applications to network design problems
Slides and publications
• Slides of this talk can be downloaded from:
http://www.inf.puc-rio/~celso/talks
• Papers about
– recent developments and state-of-the-art on GRASP;
– GRASP with path-relinking heuristic for PVC routing;
– parallel GRASP heuristic for the 2-path network
design problem; and
– applications of GRASP and path-relinking
on which this talk was based are available at:
http://www.inf.puc-rio.br/~celso/publicacoes
March 2002
Slide 59/59 (EHESS)
Recents developments in metaheuristics and
applications to network design problems