Carmine Cerrone, Raffaele Cerulli, Bruce Golden GO IX Sirmione, Italy July 2014 1.
-
Upload
malcolm-hart -
Category
Documents
-
view
214 -
download
0
Transcript of Carmine Cerrone, Raffaele Cerulli, Bruce Golden GO IX Sirmione, Italy July 2014 1.
1
Carousel Greedy: A Generalized Greedy Algorithm for Optimizing the
Cardinality of a SetCarmine Cerrone, Raffaele Cerulli, Bruce Golden
GO IXSirmione, Italy
July 2014
2
Outline Motivation
The Minimum Label Spanning Tree (MLST) problem
Experimental justification Introduction to Carousel Greedy Details of Carousel Greedy Computational experiments in combinatorial optimization Computational experiments in statistics Conclusions
3
Motivation We seek a heuristic framework that generalizes and
enhances greedy algorithms We want a heuristic that is fast It should outperform a greedy algorithm It should be applicable to many greedy algorithms It should be simpler than a metaheuristic It should involve a small number of parameters
4
Motivation The Minimum Label Spanning Tree (MLST)
ProblemCommunications network designEdges may be of different types or media (e.g., fiber
optics, cable, microwave, telephone lines, etc.)Each edge type is denoted by a unique letter or colorConstruct a spanning tree that minimizes the number
of colors
5
Motivation A Small Example
1 6
2 5
3 4
c
e
a
d
e
a
b
b bd
1 6
2 5
3 4
e e
b
b b
Input Solution
6
Description of MVCA0. Input: G (V, E, L).
1. Let C { } be the set of used labels.
2. repeat
3. Let H be the subgraph of G restricted to V and edges with labels from C.
4. for all i L – C do
5. Determine the number of connected components when inserting
all edges with label i in H.
6. end for
7. Choose label i with the smallest resulting number of components and
do: C C {i}.
8. Until H is connected.
7
How MVCA WorksSolution
1 6
2 5
3 4
c
e
a
d
e
a
b
b bd
1 6
2 5
3 4
e e
b
b b
Input Intermediate Solution
2 5
3 4b
b b
1 6
8
An Example to Motivate Carousel Greedy
b d b d b
Apply MVCA: add a, b, and c to obtain {a,b,c} Note that label a looked best, but now we can discard it
a a
c
a a
cc
9
An Example to Motivate Carousel Greedy
{b, c} is a MLST of cardinality 2 MVCA chose a wrong label initially Carousel Greedy will try to correct this
b
c
b
cc
b
10
Observations about MVCA and Greedy Algorithms in General We can divide MVCA into three phases 1 iterations S
Phase IThe set of candidate labels is very largeMany labels yield similar resultsIt is not possible to learn much from previous label
selections, because there haven’t been many
I II III
11
Observations about MVCA--continued Phase II
The set of candidate labels has been reduced It is possible to learn from previous label selectionsThe Phase 2 selections are “smarter”Some labels, chosen in Phase I, no longer look so good
Phase IIIThe set of candidate labels required for feasibility is smallThis phase is short since we are near the end
12
MCVA Phase Experiment We generated 10,000 random labeled graphs with
V = 85, E = 340, and L = 85 The optimal solution is 20 labels in all cases (Xiong,
Golden, Wasil – 2005) The x-axis indicates the percentage of the selections
in MVCA that have been completed The y-axis indicates the average percentage of labels
that are in the optimal solution
13
MVCA Phase Experiment
start of MVCA
end of
MVCA
14
A Limitation of MVCA We generated 1,300 random labeled graphs with V = 81, L = {30, 60, 90, …, 390} and E = 4 L
The optimal solution is 20 labels in all cases
The x-axis indicates the number of available labels, L
The y-axis indicates the average number of labels in
the MVCA solution
15
A Limitation of MVCA
When L is small, MVCA performs poorly
Can a generalized greedy algorithm do
better?
16
Questions to Address Can we extend Phase II?
Can we improve performance when L is small?
Can we ensure reasonable running times?
Can we keep it simple?
17
Iterated Greedy: A Simple Generalized Greedy Algorithm (Ruiz, Stutzle – 2008) Step 1. Apply greedy algorithm to obtain a feasible
solution Step 2. Destruction phase: Remove some elements from
the current solution, leaving a partial solution Step 3. Construction phase: Apply the greedy algorithm to
the partial solution to obtain another feasible solution
Step 4. Repeat Steps 2 & 3 until a stopping condition is satisfied
18
Carousel Greedy Illustration for S = 5, α = 1, β = 40%
MVCA Solution
Carousel Start
Iteration 2
Iteration 3
Iteration 4
Iteration 5
Iteration 6
Final Step
The length of a carousel string is S (1- β ) and the number of passes is α
19
More on Carousel Greedy We can represent this example by images of a carousel
in motionThe carousel is divided into S wedgesThe number of full turns or passes is α
The final step obtains a feasible solution
The carousel representation of this generalized greedy algorithm is shown on the next slide
20
The Carousel Greedy Algorithm
R R
R R R
R
G
G G G
O
O O
O
PP
P
B
GR
O
P
1 2 3
4 5 6
Start
21
Carousel Greedy Performs Well for Small L
22
Further Experiments with Carousel Greedy We look at the MLST problem We generate 20 random labeled graphs with V = 100,
L = 100, and E = 400 We tested different values of α and β The optimal solution is 25 labels in all cases Average improvements and running times are
presented next
23
Carousel Greedy Improvements over MVCA
38% 47% 41% 47% 52% 55% 44% 55%
54% 60% 60% 66% 67% 62% 62% 64%
55% 71% 73% 72% 75% 74% 71% 72%
60% 72% 72% 75% 74% 75% 73% 73%
α = 1 α = 2 α = 3 α = 4 α = 5 α = 6 α = 7 α = 8
β = 20%
β = 15%
β = 10%
β = 5%
For example, when α = 5 and β = 10%, Carousel Greedy reduces the gap between the MVCA solution and the optimal solution by 75%
24
Carousel Greedy Running Time
α = 1 α = 2 α = 3 α = 4 α = 5 α = 6 α = 7 α = 8
β = 20%
β = 15%
β = 10%
β = 5%
18 28 38 51 59 71 80 95
18 28 39 50 63 71 80 92
18 29 40 50 65 73 86 100
20 31 44 54 68 80 90 100
Time is in milliseconds
With α = 1, we expect the running time to be about twice the MVCA running time (10 ms)
25
Estimating the Complexity of Carousel Greedy Let O(I) be the computational complexity of the basic
greedy algorithm
We can show that Carousel Greedy has an approximate computational cost of (α + 1) O(I)
Next, we summarize our extensive computational results
26
MLST Instances We looked at 420 small instances with V = L ≤ 200
Pilot outperforms Carousel Greedy (CG) and Iterated Greedy (IG)
CG was faster than IG which was faster than Pilot
We looked at 400 large instances with V = L ≤ 1000Pilot is too slow to be usefulCG clearly outperforms IG IG takes about five times as long as CG
27
Other Computational Experiments We also tested CG on the Minimum Vertex Cover and
Maximum Independent Set problemsCG improves upon greedy to a substantial degree
In addition, we tested CG on the Minimum Weight Vertex Cover problemCG outperforms greedy, SA, TS, and ACO
Finally, we tested CG against Stepwise Regression on four instancesCG reduced the standard error in each instance
28
Conclusions We introduced Carousel Greedy--a new,
generalized greedy algorithm It is fast and widely applicable It has two (easy to set) parameters It has been tested on problems in
combinatorial optimization and statistics It outperforms greedy, Iterated Greedy, and
Pilot Further testing on Stepwise Regression is
required Buon Compleanno Grazia!!!