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
kK
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
kK
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
kK
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
(Lece)
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 /
(pRCL 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