28
Carousel Greedy: A Generalized Greedy Algorithm for Optimizing the Cardinality of a Set Carmine Cerrone, Raffaele Cerulli, Bruce Golden GO IX Sirmione, Italy July 2014 1

Carmine Cerrone, Raffaele Cerulli, Bruce Golden GO IX Sirmione, Italy July 2014 1

Embed Size (px)

Citation preview

Page 1: 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

Page 2: Carmine Cerrone, Raffaele Cerulli, Bruce Golden GO IX Sirmione, Italy July 2014 1

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

Page 3: Carmine Cerrone, Raffaele Cerulli, Bruce Golden GO IX Sirmione, Italy July 2014 1

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

Page 4: Carmine Cerrone, Raffaele Cerulli, Bruce Golden GO IX Sirmione, Italy July 2014 1

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

Page 5: Carmine Cerrone, Raffaele Cerulli, Bruce Golden GO IX Sirmione, Italy July 2014 1

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

Page 6: Carmine Cerrone, Raffaele Cerulli, Bruce Golden GO IX Sirmione, Italy July 2014 1

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.

Page 7: Carmine Cerrone, Raffaele Cerulli, Bruce Golden GO IX Sirmione, Italy July 2014 1

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

Page 8: Carmine Cerrone, Raffaele Cerulli, Bruce Golden GO IX Sirmione, Italy July 2014 1

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

Page 9: Carmine Cerrone, Raffaele Cerulli, Bruce Golden GO IX Sirmione, Italy July 2014 1

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

Page 10: Carmine Cerrone, Raffaele Cerulli, Bruce Golden GO IX Sirmione, Italy July 2014 1

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

Page 11: Carmine Cerrone, Raffaele Cerulli, Bruce Golden GO IX Sirmione, Italy July 2014 1

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

Page 12: Carmine Cerrone, Raffaele Cerulli, Bruce Golden GO IX Sirmione, Italy July 2014 1

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

Page 13: Carmine Cerrone, Raffaele Cerulli, Bruce Golden GO IX Sirmione, Italy July 2014 1

13

MVCA Phase Experiment

 

start of MVCA

end of

MVCA

Page 14: Carmine Cerrone, Raffaele Cerulli, Bruce Golden GO IX Sirmione, Italy July 2014 1

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

Page 15: Carmine Cerrone, Raffaele Cerulli, Bruce Golden GO IX Sirmione, Italy July 2014 1

15

A Limitation of MVCA

When L is small, MVCA performs poorly

Can a generalized greedy algorithm do

better?

Page 16: Carmine Cerrone, Raffaele Cerulli, Bruce Golden GO IX Sirmione, Italy July 2014 1

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?

Page 17: Carmine Cerrone, Raffaele Cerulli, Bruce Golden GO IX Sirmione, Italy July 2014 1

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

Page 18: Carmine Cerrone, Raffaele Cerulli, Bruce Golden GO IX Sirmione, Italy July 2014 1

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 α

Page 19: Carmine Cerrone, Raffaele Cerulli, Bruce Golden GO IX Sirmione, Italy July 2014 1

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

Page 20: Carmine Cerrone, Raffaele Cerulli, Bruce Golden GO IX Sirmione, Italy July 2014 1

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

Page 21: Carmine Cerrone, Raffaele Cerulli, Bruce Golden GO IX Sirmione, Italy July 2014 1

21

Carousel Greedy Performs Well for Small L

Page 22: Carmine Cerrone, Raffaele Cerulli, Bruce Golden GO IX Sirmione, Italy July 2014 1

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

Page 23: Carmine Cerrone, Raffaele Cerulli, Bruce Golden GO IX Sirmione, Italy July 2014 1

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%

Page 24: Carmine Cerrone, Raffaele Cerulli, Bruce Golden GO IX Sirmione, Italy July 2014 1

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)

Page 25: Carmine Cerrone, Raffaele Cerulli, Bruce Golden GO IX Sirmione, Italy July 2014 1

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

Page 26: Carmine Cerrone, Raffaele Cerulli, Bruce Golden GO IX Sirmione, Italy July 2014 1

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

Page 27: Carmine Cerrone, Raffaele Cerulli, Bruce Golden GO IX Sirmione, Italy July 2014 1

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

Page 28: Carmine Cerrone, Raffaele Cerulli, Bruce Golden GO IX Sirmione, Italy July 2014 1

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!!!