PVC routing algorithms

Download Report

Transcript PVC routing algorithms

A GRASP with path-relinking
heuristic for PVC routing
Celso C. Ribeiro
Computer Science Department
Catholic University of Rio de Janeiro
joint work with M.G.C. Resende
February 2002
Slide 1/42 (ROADEF)
GRASP with path-relinking for PVC routing
Summary
•
•
•
•
•
•
PVC routing
Integer multicommodity flow formulation
Cost function
Solution method: GRASP with path-relinking
Numerical results
Conclusions
February 2002
Slide 2/42 (ROADEF)
GRASP with path-relinking for PVC routing
PVC routing: application
• 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
February 2002
Slide 3/42 (ROADEF)
GRASP with path-relinking for PVC routing
PVC routing: example
February 2002
Slide 4/42 (ROADEF)
GRASP with path-relinking for PVC routing
PVC routing: example
February 2002
Slide 5/42 (ROADEF)
GRASP with path-relinking for PVC routing
PVC routing: example
February 2002
Slide 6/42 (ROADEF)
GRASP with path-relinking for PVC routing
PVC routing: example
February 2002
Slide 7/42 (ROADEF)
GRASP with path-relinking for PVC routing
PVC routing: example
max capacity = 3
February 2002
Slide 8/42 (ROADEF)
GRASP with path-relinking for PVC routing
PVC routing: example
very long path!
February 2002
Slide 9/42 (ROADEF)
max capacity = 3
GRASP with path-relinking for PVC routing
PVC routing: example
very long path!
max capacity = 3
reroute
February 2002
Slide 10/42 (ROADEF)
GRASP with path-relinking for PVC routing
PVC routing: example
max capacity = 3
February 2002
Slide 11/42 (ROADEF)
GRASP with path-relinking for PVC routing
PVC routing: example
feasible and
optimal!
February 2002
Slide 12/42 (ROADEF)
max capacity = 3
GRASP with path-relinking for PVC routing
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
February 2002
Slide 13/42 (ROADEF)
GRASP with path-relinking for PVC routing
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
February 2002
Slide 14/42 (ROADEF)
GRASP with path-relinking for PVC routing
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
February
2002
GRASP with path-relinking for PVC routing
Slide 15/42 (ROADEF)
problem
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
– 2002
d (e ): propagation
delayfor PVC routing
February
GRASP with path-relinking
Slide 16/42 (ROADEF) and hopping
Problem formulation
• 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
February 2002
Slide 17/42 (ROADEF)
GRASP with path-relinking for PVC routing
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)
February 2002
Slide 18/42 (ROADEF)
GRASP with path-relinking for PVC routing
Problem formulation
min  ( x) 

( i , j )E ,i  j
i , j ( xi1, j ,..., xip, j , x1j ,i ,..., x kj ,i )
k = 1, iff trunk (i,j )
i, j
x
subject to
 r (x
kK
k
k
i, j
 x )  bi , j ,  (i, j )  E , i  j
k
j ,i
is used to route
PVC k.
k
k
(
x

x
 i, j j ,i )  ci , j ,  (i, j )  E , i  j
kK
 1, if i  V is source for k  K

k
k
x

x

1, if i  V is destination for k  K


i, j
j ,i
( i , j )E
( i , j )E

0, otherwise

xik, j  0,1 , (i, j )  E ,k  K .
February 2002
Slide 19/42 (ROADEF)
GRASP with path-relinking for PVC routing
Cost function
• Linear combination of
– delay component - weighted by (1-)
– load balancing component - weighted by 
• Delay component: di , j
February 2002
Slide 20/42 (ROADEF)
  (x
kK
k
k
i, j
x )
k
j ,i
GRASP with path-relinking for PVC routing
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.
February 2002
Slide 21/42 (ROADEF)
GRASP with path-relinking for PVC routing
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
February 2002
Slide 22/42 (ROADEF)
1
1.2
(Lece)
GRASP with path-relinking for PVC routing
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
February 2002
Slide 23/42 (ROADEF)
GRASP with path-relinking for PVC routing
Solution method: GRASP with
path-relinking
• GRASP: Multistart metaheuristic, Feo & Resende
1989
• Path-relinking: intensification, Glover (1996)
• Repeat for Max_Iterations:
–
–
–
–
–
Construct a greedy randomized solution
Use local search to improve the constructed solution
Apply path-relinking to further improve this solution
Update the pool of elite solutions
Update the best solution found
February 2002
Slide 24/42 (ROADEF)
GRASP with path-relinking for PVC routing
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 /
(pRCL rp )
• capacity constraints relaxed and handled via the
penalty function introduced by the load-balancing
component
• length of each edge (i,j) is the incremental cost of
routing rk additional units of demand on it
February 2002
GRASP
with path-relinking
PVC routing
25/42k(ROADEF)
• routeSlide
pair
using shortest
route
betweenforits
endpoints
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
February 2002
Slide 26/42 (ROADEF)
GRASP with path-relinking for PVC routing
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.
initial
solution
February 2002
path in neighborhood of solutions
Slide 27/42 (ROADEF)
guiding
solution
GRASP with path-relinking for PVC routing
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:
Initial
solution
February 2002
Slide 28/42 (ROADEF)
GRASP with path-relinking for PVC routing
guiding
solution
Solution method: 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)
}
February 2002
Slide 29/42 (ROADEF)
GRASP with path-relinking for PVC routing
Path-relinking in GRASP
• 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.
February 2002
GRASP with path-relinking for PVC routing
Slide 30/42 (ROADEF)
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)
February 2002
Slide 31/42 (ROADEF)
GRASP with path-relinking for PVC routing
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 is sufficiently different
from allSlidesolutions
February 2002
32/42 (ROADEF)in P . GRASP with path-relinking for PVC routing
February 2002
Slide 33/42 (ROADEF)
GRASP with path-relinking for PVC routing
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
February 2002
Slide 34/42 (ROADEF)
GRASP with path-relinking for PVC routing
Experiment
• Test problems:
February 2002
Slide 35/42 (ROADEF)
GRASP with path-relinking for PVC routing
Variants of GRASP and pathrelinking
• Variants of path-relinking:
–
–
–
–
T
S
G: pure GRASP
GPRb: GRASP with backward PR
S
GPRf: GRASP with forward PR
GPRbf: GRASP with two-way PRS
• Other strategies:
– Truncated path-relinking S
– Do not apply PR at every iteration (frequency)
February 2002
Slide 36/42 (ROADEF)
GRASP with path-relinking for PVC routing
T
T
T
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
February 2002
100
Slide 37/42 (ROADEF)
1000
10000
100000
1e+06
Time (s)
GRASP with path-relinking for PVC routing
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
February 2002
GRASP with path-relinking for PVC routing
Slide 38/42 (ROADEF)
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)
February 2002
Slide 39/42 (ROADEF)
GRASP with path-relinking for PVC routing
•
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
February 2002
GRASP with path-relinking for PVC routing
Slide 40/42 (ROADEF)
setting appropriate
value
of  to achieve some
Parameter of the objective
function
1.1
104000
1.05
102000
1
0.95
100000
delay
0.9
maximum utilization
98000
0.85
0.8
96000
0.75
94000
0.7
0.65
0.0001
delay
92000
0.001
0.01
0.1
1
delta
February 2002
Slide 41/42 (ROADEF)
GRASP with path-relinking for PVC routing
Concluding remarks (1/3)
• New formulation with flexible objective
function
• Family of heuristics (greedy, greedy+LS,
GRASP, GRASP+PR)
• Simple greedy heuristic improves algorithm
in traffic engineering by network planners
• Objective function provides effective
strategy for setting the weight parameter to
achieve some quality of service level
February 2002
Slide 42/42 (ROADEF)
GRASP with path-relinking for PVC routing
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).
February 2002
Slide 43/42 (ROADEF)
GRASP with path-relinking for PVC routing
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
by the proposed
trunking
February
2002be handled
GRASP with path-relinking
for PVC routing
Slide 44/42 (ROADEF)
Slides and publications
• Slides of this talk can be downloaded
from: http://www.inf.puc-rio/~celso/talks
• Paper about PVC routing available at:
http://www.inf.puc-rio.br/~celso/publicacoes
February 2002
Slide 45/42 (ROADEF)
GRASP with path-relinking for PVC routing