Presentation prepared for IEEE International Conference on Communications 2009
Paper is online at http://ieeexplore.ieee.org/xpl/freeabs_all.jsp?arnumber=5198761
Abstract: "This paper addresses the problem of traffic grooming in WDM rings in which all traffic emanates from a single node and all other nodes are destination nodes. This “one-to-many” scenario arises in metropolitan access networks in which one
node serves as a “hub” connecting the ring to a larger network as well as in video-on-demand and other multimedia services
where a single source node serves a collection of subscriber nodes. The ring comprises a given number of wavelengths of
uniform capacity and a variable number of tunable Add-Drop Multiplexers (ADMs) at each node. Given a set of requests at
the destination nodes, where each request comprises a bandwidth demand and a profit for fulfilling the request, our objective is
to select a subset of the requests and pack (“groom”) them onto the wavelengths such that no wavelength’s capacity is exceeded
and the total profit of the selected requests is maximized. Although this problem is NP-complete, we give polynomial time
approximation algorithms with excellent theoretical performance validated with experimental results."
Approximation Algorithms for Traffic Grooming in WDM Rings
1. Problem Statement Theoretical Results Experimental Results
Approximation Algorithms for Traffic Grooming
in WDM Rings
K. Corcoran1 S. Flaxman2 M. Neyer3 C. Weidert4
P. Scherpelz5 R. Libeskind-Hadas6
1
University of Oregon, USA
2
Ecole Polytechnique F´d´rale de Lausanne, Switzerland
e e
3
University of North Carolina, USA
4
Simon Fraser University, Canada
5
University of Chicago, USA, Supported by the Hertz Foundation
6
Harvey Mudd College, USA. This work was supported by the National Science Foundation under grant
0451293 to Harvey Mudd College
2. Problem Statement Theoretical Results Experimental Results
Single-Source WDM Rings
3. Problem Statement Theoretical Results Experimental Results
Single-Source WDM Rings
ˆ WDM ring with given set of
wavelengths, each with fixed
capacity C
4. Problem Statement Theoretical Results Experimental Results
Single-Source WDM Rings
ˆ WDM ring with given set of
wavelengths, each with fixed
capacity C
ˆ Single source/hub from which all
other destination nodes receive
data
5. Problem Statement Theoretical Results Experimental Results
Single-Source WDM Rings
ˆ WDM ring with given set of
wavelengths, each with fixed
capacity C
ˆ Single source/hub from which all
other destination nodes receive
data
ˆ Source node can transmit on all
wavelengths
6. Problem Statement Theoretical Results Experimental Results
Single-Source WDM Rings
ˆ WDM ring with given set of
wavelengths, each with fixed
capacity C
ˆ Single source/hub from which all
other destination nodes receive
data
ˆ Source node can transmit on all
wavelengths
ˆ Each destination node has some
number of tunable ADMs
7. Problem Statement Theoretical Results Experimental Results
Single-Source WDM Rings
ˆ WDM ring with given set of
wavelengths, each with fixed
capacity C
ˆ Single source/hub from which all
other destination nodes receive
data
ˆ Source node can transmit on all
wavelengths
ˆ Each destination node has some
number of tunable ADMs
ˆ A path from the source to a
destination has a pre-determined
route (e.g. all clockwise)
8. Problem Statement Theoretical Results Experimental Results
The Tunable Ring Grooming Problem
ˆ Each node may make a request r for
personalized data to be sent from the
source
9. Problem Statement Theoretical Results Experimental Results
The Tunable Ring Grooming Problem
ˆ Each node may make a request r for
personalized data to be sent from the
source
ˆ request r consists of:
ˆ integer size: demand(r )
ˆ value: profit(r )
10. Problem Statement Theoretical Results Experimental Results
The Tunable Ring Grooming Problem
ˆ Each node may make a request r for
personalized data to be sent from the
source
ˆ request r consists of:
ˆ integer size: demand(r )
ˆ value: profit(r )
ˆ A request may be partitioned onto
multiple wavelengths in integral parts
11. Problem Statement Theoretical Results Experimental Results
The Tunable Ring Grooming Problem
ˆ Each node may make a request r for
personalized data to be sent from the
source
ˆ request r consists of:
ˆ integer size: demand(r )
ˆ value: profit(r )
ˆ A request may be partitioned onto
multiple wavelengths in integral parts
ˆ Multiple requests (or parts of requests)
can be “groomed” onto the same
wavelength
12. Problem Statement Theoretical Results Experimental Results
The Tunable Ring Grooming Problem
ˆ Each node may make a request r for
personalized data to be sent from the
source
ˆ request r consists of:
ˆ integer size: demand(r )
ˆ value: profit(r )
ˆ A request may be partitioned onto
multiple wavelengths in integral parts
ˆ Multiple requests (or parts of requests)
can be “groomed” onto the same
wavelength
ˆ Objective: Tune ADMs and groom
requests onto wavelengths to maximize
total profit of all satisfied requests
13. Problem Statement Theoretical Results Experimental Results
Sample Instance of the Tunable Ring Grooming Problem
Figure: Capacity C = 4 for each wavelength. Objective: Tune ADMs
and groom requests onto wavelengths to maximize total profit of all
satisfied requests.
14. Problem Statement Theoretical Results Experimental Results
Sample Instance of the Tunable Ring Grooming Problem
Figure: A solution. Profit = 650. Is it optimal?
15. Problem Statement Theoretical Results Experimental Results
Sample Instance of the Tunable Ring Grooming Problem
Figure: Profit = 650 Figure: Profit = 950
16. Problem Statement Theoretical Results Experimental Results
Overview of Results
ˆ The Tunable Ring Grooming Problem is NP-complete in the
strong sense
17. Problem Statement Theoretical Results Experimental Results
Overview of Results
ˆ The Tunable Ring Grooming Problem is NP-complete in the
strong sense
ˆ Problem remains NP-complete even for special cases
ˆ Only one wavelength, only one ADM per node, at least two
ADMs per node
18. Problem Statement Theoretical Results Experimental Results
Overview of Results
ˆ The Tunable Ring Grooming Problem is NP-complete in the
strong sense
ˆ Problem remains NP-complete even for special cases
ˆ Only one wavelength, only one ADM per node, at least two
ADMs per node
ˆ Polynomial time approximation schemes for these special
cases
19. Problem Statement Theoretical Results Experimental Results
Overview of Results
ˆ The Tunable Ring Grooming Problem is NP-complete in the
strong sense
ˆ Problem remains NP-complete even for special cases
ˆ Only one wavelength, only one ADM per node, at least two
ADMs per node
ˆ Polynomial time approximation schemes for these special
cases
ˆ The “general case” that the number of ADMs is one or more
appears to be the most challenging
20. Problem Statement Theoretical Results Experimental Results
Overview of Results
ˆ The Tunable Ring Grooming Problem is NP-complete in the
strong sense
ˆ Problem remains NP-complete even for special cases
ˆ Only one wavelength, only one ADM per node, at least two
ADMs per node
ˆ Polynomial time approximation schemes for these special
cases
ˆ The “general case” that the number of ADMs is one or more
appears to be the most challenging
ˆ New approximation algorithm for the general case
21. Problem Statement Theoretical Results Experimental Results
The General Case
ˆ Let C denote the capacity of a wavelength and let q be an
C
integer such that every request has demand at most q, i.e.
22. Problem Statement Theoretical Results Experimental Results
The General Case
ˆ Let C denote the capacity of a wavelength and let q be an
C
integer such that every request has demand at most q, i.e.
ˆ If a request can demand as much as capacity C , then q = 1
23. Problem Statement Theoretical Results Experimental Results
The General Case
ˆ Let C denote the capacity of a wavelength and let q be an
C
integer such that every request has demand at most q, i.e.
ˆ If a request can demand as much as capacity C , then q = 1
ˆ If every request demands at most 1 of C , then q = 2
2
24. Problem Statement Theoretical Results Experimental Results
The General Case
ˆ Let C denote the capacity of a wavelength and let q be an
C
integer such that every request has demand at most q, i.e.
ˆ If a request can demand as much as capacity C , then q = 1
ˆ If every request demands at most 1 of C , then q = 2
2
ˆ Main Result: A polynomial time approximation algorithm
q
that guarantees solutions within q+1 of optimal, i.e.
25. Problem Statement Theoretical Results Experimental Results
The General Case
ˆ Let C denote the capacity of a wavelength and let q be an
C
integer such that every request has demand at most q, i.e.
ˆ If a request can demand as much as capacity C , then q = 1
ˆ If every request demands at most 1 of C , then q = 2
2
ˆ Main Result: A polynomial time approximation algorithm
q
that guarantees solutions within q+1 of optimal, i.e.
ˆ If q = 1, profit is guaranteed to be within 1/2 of optimal
ˆ If q = 2, profit is guaranteed to be within 2/3 of optimal
ˆ If q = 10, profit is guaranteed to be within 10/11 of optimal
26. Problem Statement Theoretical Results Experimental Results
The General Case: The Algorithm
27. Problem Statement Theoretical Results Experimental Results
The General Case: The Algorithm
1 Sort requests by non-increasing density into a list S
28. Problem Statement Theoretical Results Experimental Results
The General Case: The Algorithm
1 Sort requests by non-increasing density into a list S
q
2 Let A = S if total demand ≤ CW q+1 , otherwise let A be the
q
minimal prefix of S with total demand > CW q+1
29. Problem Statement Theoretical Results Experimental Results
The General Case: The Algorithm
1 Sort requests by non-increasing density into a list S
q
2 Let A = S if total demand ≤ CW q+1 , otherwise let A be the
q
minimal prefix of S with total demand > CW q+1
3 Pack A onto wavelengths with First Fit Decreasing (FFD)
30. Problem Statement Theoretical Results Experimental Results
The General Case: The Algorithm
1 Sort requests by non-increasing density into a list S
q
2 Let A = S if total demand ≤ CW q+1 , otherwise let A be the
q
minimal prefix of S with total demand > CW q+1
3 Pack A onto wavelengths with First Fit Decreasing (FFD)
4 if some request in A was not packed then
5 Let r denote first request not packed by FFD
6 Let B be the set containing r and all requests which were
packed with demand ≥ demand(r )
7 Discard the request with the least profit from B
8 if r was not discarded then
9 Pack r in place of the discarded request
31. Problem Statement Theoretical Results Experimental Results
The General Case: Analysis
ˆ The approximation algorithm is proved correct and analyzed in
the paper
32. Problem Statement Theoretical Results Experimental Results
The General Case: Analysis
ˆ The approximation algorithm is proved correct and analyzed in
the paper
ˆ The running time is O(R log R + RW ) where R is the number
of requests and W is the number of wavelengths
33. Problem Statement Theoretical Results Experimental Results
Heuristics and Experiments
ˆ Heuristic “on top” of approximation algorithm
ˆ Performs q/(q + 1)-approximation algorithm for general case
ˆ Attempts to improve solution using heuristic rules, including
splitting
34. Problem Statement Theoretical Results Experimental Results
Heuristics and Experiments
ˆ Heuristic “on top” of approximation algorithm
ˆ Performs q/(q + 1)-approximation algorithm for general case
ˆ Attempts to improve solution using heuristic rules, including
splitting
ˆ Experiments using heuristic
ˆ Heuristic profit divided by optimal profit
ˆ Optimal found with linear programming
35. Problem Statement Theoretical Results Experimental Results
Experimental Results: Parameters
Parameter Possible values
Wavelength capacity C 4, 8, 16
Number of wavelengths 5
Number of requests 16, 32
Probability α that a request has α = 0, 4 , 1 , 4 , 1
1
2
3
two ADMs (one ADM other-
wise)
Demand limited to fraction 1/q q = 1, 2
of capacity
Density of request Constant or variable
(∈ U[1/2, 2))
Table: Parameters used in generating random instances
36. Problem Statement Theoretical Results Experimental Results
Sample Results
ˆ When q = 1, approximation algorithm guarantees ratio of 1
2
Tunable Results: Worst Case
0.6
0.5
0.4
Fraction of instances
0.3
0.2
0.1
0
<= .87 .88-.89 .90-.91 .92-.93 .94-.95 .96-.97 .99-1.00
Approximation ratio
Figure: Worst ratios found in experiments. Parameters: 5 wavelengths,
wavelength capacity C = 16, q = 1, 1 of nodes have 1 ADM and
2
remaining have 2 ADMs
37. Problem Statement Theoretical Results Experimental Results
Future Work
ˆ Generalizing to allow requests to demand more than a
wavelength’s capacity
ˆ Tighter approximation bounds
ˆ What if the direction of travel for a request is not
pre-determined? Can we still find good approximation
algorithms?
ˆ Using splitting in algorithm, not just heuristic