Feasibility-Preserving Crossover for Maximum k -Coverage Problem

Post on 10-Jan-2016

38 views 0 download

Tags:

description

Feasibility-Preserving Crossover for Maximum k -Coverage Problem. Yourim Yoon Yong-Hyuk Kim Byung-Ro Moon Seoul National University. S 2. S 3. S 4. S 1. S 5. S 6. Covering Problems. Set covering problem # of elements = 12 # of subsets = 6 Min-size set cover? - PowerPoint PPT Presentation

transcript

Feasibility-Preserving Crossover for Maximum k-Coverage Problem

Yourim YoonYong-Hyuk KimByung-Ro Moon

Seoul National University

Covering Problems

Set covering problem # of elements = 12 # of subsets = 6 Min-size set cover? = {S2, S3, S4}

S2 S3 S4

S5

S6

S1

Maximum k-Coverage Problem

S2 S3 S4

S5

S6

S1

# of elements = 16 # of subsets = 6 k = 3 (# of used subsets) Maximum coverage with

3 subsets? = {S1, S3, S5}

(covers 13 elements)

Maximum k-Coverage Problem

A generalized version of covering problems Introduced by [Hochbaum and Pathria, 1998] NP-hard Many applications

Covering graphs by subgraphs Facility location problem Packing and circuit layout design Scheduling problems

Representation

Subsets {S1, S2, S3, S4}, n = 4, k = 2

Two encodings Binary encoding

Length-n binary string E.g., {S1, S3}

Integer encoding Length-k integer string of indices of selected subsets E.g., {S1, S3} or

Each phenotype is represented by k! genotypes

We consider integer encoding (since k << n)

1 0 1 0

1 3 3 1

Motivation

GA should produce offspring such that … They have as few common elements between genes (subsets)

as possible.

m = 5, n = 4, k = 2

1 2 3

4 5

S1

S2S3

S4

Solution Common

element set

Coverage

(size)

(1,2)

(1,3)

(1,4)

(2,3)

(2,4)

(3,4)

Empty

Empty

{2}

{5}

{3}

Empty

{1,2,3,5} (4)

{1,2,4,5} (4)

{1,2,3} (3)

{3,4,5} (3)

{2,3,5} (3)

{2,3,4,5} (4)

Motivation (cont’d)

Integer encoding is redundant Each phenotype is represented by k! genotypes

In crossover, Each gene (subset) of Parent 1 should match the gene

(subset) of Parent 2 with as many common elements as possible.

1 3 3 1=

New Crossover

Let distance dij for each subset pair (Si, Sj) be given

Pseudo-code

STEP 1. Find an optimal assignment between genes of

Parent 1 and those of Parent 2;

STEP 2. Normalize Parent 2 using the above assignment;

STEP 3. Do traditional n-point crossover between Parent 1

and normalized Parent 2;

STEP 1 can be efficiently computed by Hungarian method.

Its time complexity is O(k3)

Optimal Assignment between Genes

Parent 1 Parent 2

Gene 1

Gene 2

Gene k

Gene 1

Gene 2

Gene k

Permutationσ

Minimize the summation of distances betweenGene i of Parent 1 and Gene σ(i) of Parent 2 for all i

Formally, min Σi diσ(i)

NormalizedParent 2

Gene σ(1)

Gene σ(2)

Gene σ(k)

Distances between Subsets

Hamming distance Distance between Si and Sj := |(Si−Sj)(Sj− Si)|

NH-Xover Normalized by Hamming distance

Discrete distance Distance between Si and Sj := I(Si = Sj)

ND-Xover Normalized by discrete distance

Distances between Subsets (cont’d)

An example Hamming distance

Discrete distancem = 5, n = 4, k = 2

S1

S2S3

S4Parent 1

Parent 2

1 3

2 3

1 2

Parent 1

Parent 2

1 3

2 3

1 2

Distance 4 + 0 = 4

Distance 1 + 0 = 1

cut point

New Crossover (cont’d)

An example of NH-Xover

Parent 1

Parent 2

1 2

3 4

Distance 4 + 2 = 6

Parent 1

Normalized Parent 2

1 2

4 3

Distance 2 + 2 = 4

m = 5, n = 4, k = 2

S1

S2S3

S4

1 2

Distance between Si and Sj = |(Si−Sj) (Sj− Si)|

Traditional Approaches

Do not preserve feasibility Example. k = 4, n = 10

3 5 6 9

1 3 5 7

3 3 5 7

Parent 1

Parent 2

Offspring

0 0 1 0 1 1 0 0 1 0

1 0 1 0 1 0 1 0 0 0

0 0 1 0 1 1 0 0 0 0

Integer representation Binary representation

1 2 3 4 1 2 3 4 5 6 7 8 9 10

Useful Property

Theorem. Proposed crossover preserves feasibility

Parent 1

Parent 2

NormalizedParent 2

Experiments

Genetic Framework A variant of CHC [Eshelman, 1991]

Pseudo-codeMake an initial population (N individuals);do

Choose N/2 random pairs from population;Make N/2 offspring by crossover;Select the best N individuals for next population;if population has no change during T generation,

then reinitialize population;until (stop criterion); return the best solution found so far;

400 individuals

500 generations

Experiments (cont’d)

Test Instance Sets 11 classes, 65 instances from OR-library Instance sets for set covering problems

Instance set m n Density (%) # of instances

I-4

I-5

I-6

I-A

I-B

I-C

I-D

I-E

I-F

I-G

I-H

200

200

200

300

300

400

400

500

500

1,000

1,000

1,000

2,000

1,000

3,000

3,000

4,000

4,000

5,000

5,000

10,000

10,000

2

2

5

2

5

2

5

10

20

2

5

10

10

5

5

5

5

5

5

5

5

5

0

0.5

1

1.5

2

2.5

3

3.5

4

I-4 I-5 I-6 I-A I-B I-C I-D I-E I-F I-G I-H

Aver

age

Instance set

%-g

ap NH-XoverND-Xover

Comparison between NH-Xover & ND-Xover

k = 10

Here, %-gap = 100 x |best − output| / best

0

0.5

1

1.5

2

2.5

3

3.5

4

4.5

I-4 I-5 I-6 I-A I-B I-C I-D I-E I-F I-G I-H

Aver

age

Instance set

%-g

ap NH-XoverND-Xover

Comparison between NH-Xover & ND-Xover (cont’d)

k = 20

Here, %-gap = 100 x |best − output| / best

Conclusions

New crossover for maximum k-coverage problem Efficient running

Implemented using Hungarian method Preserving feasibility

Not necessary to repair

Future work Extensive empirical studies for various test set Comparison with traditional crossovers combined with

repairing On integer encoding & binary encoding

Thank you for listening!

Maximum k-Coverage Problem

m := # of elements, n := # of subsets

m = 5, n = 4

1 2 3

4 5

S1

S2S3

S4A = (aij) m x n 0-1 matrix

1 1 0 0 02 1 0 0 13 0 1 0 14 0 0 1 05 0 1 1 0( )

S1 S2 S3 S4

element

subset

Maximum k-Coverage Problem

Formal definition xj = 1 iff the j th subset is selected

Here, I(true) = 1 & I(false) = 0

# of selected subsets = k

Weighted sum ofcovered elements