22
1 COMBINATORIAL OPTIMIZATION < s , f > : an instance s : Solutions Set f : s → Cost function to minimize (Max) Find s* S s.t. f ( s* ) f ( s ) , s S ( MIN) or f ( s* ) f ( s ) , s S ( MAX)

1 COMBINATORIAL OPTIMIZATION : an instance s : Solutions Set f : s → Cost function to minimize (Max) Find s* S s.t. f ( s* ) f ( s ), s S ( MIN) or f (

  • View
    221

  • Download
    1

Embed Size (px)

Citation preview

Page 1: 1 COMBINATORIAL OPTIMIZATION : an instance s : Solutions Set f : s → Cost function to minimize (Max) Find s* S s.t. f ( s* ) f ( s ), s S ( MIN) or f (

1

COMBINATORIAL OPTIMIZATION

< s , f > : an instance

s : Solutions Set

f : s → Cost function to minimize (Max)

Find s* S s.t.

f ( s* ) f ( s ) , s S ( MIN)

or

f ( s* ) f ( s ) , s S ( MAX)

Page 2: 1 COMBINATORIAL OPTIMIZATION : an instance s : Solutions Set f : s → Cost function to minimize (Max) Find s* S s.t. f ( s* ) f ( s ), s S ( MIN) or f (

2

Local Search ( LS)

Neighborhood structure : - i solution- N : S →

i→ N ( i ) S N ( i ) = ¨ near ¨ to i solutions

ĩ is a local minimum iff ( i ) f ( j ) , j N ( i )

ĩ is a local maximum iff ( i ) f ( j ) , j N ( i )

S

2

Page 3: 1 COMBINATORIAL OPTIMIZATION : an instance s : Solutions Set f : s → Cost function to minimize (Max) Find s* S s.t. f ( s* ) f ( s ), s S ( MIN) or f (

3

Local Search Algorithm

Define a neighborhood N ( ) Initial solution = Find a solution ΄ N ( )

improving the cost : = ´ If ´ does not exist STOP ( local optimum)

0sss

s

ss s

s

Page 4: 1 COMBINATORIAL OPTIMIZATION : an instance s : Solutions Set f : s → Cost function to minimize (Max) Find s* S s.t. f ( s* ) f ( s ), s S ( MIN) or f (

4

The local search algorithm

Page 5: 1 COMBINATORIAL OPTIMIZATION : an instance s : Solutions Set f : s → Cost function to minimize (Max) Find s* S s.t. f ( s* ) f ( s ), s S ( MIN) or f (

5

Examples

The Traveling Salesman Problem

2 - opt , 3 – opt , . . . , k – opt

2 - exchange

Page 6: 1 COMBINATORIAL OPTIMIZATION : an instance s : Solutions Set f : s → Cost function to minimize (Max) Find s* S s.t. f ( s* ) f ( s ), s S ( MIN) or f (

6

Page 7: 1 COMBINATORIAL OPTIMIZATION : an instance s : Solutions Set f : s → Cost function to minimize (Max) Find s* S s.t. f ( s* ) f ( s ), s S ( MIN) or f (

7

Examples

The Bipartitioning of a weighted

graph G ( V , E , W ) , = 2 n.

Find partitions A , B of V with

= and

Minimizing f ( A , B ) =

V

A B

AB

Page 8: 1 COMBINATORIAL OPTIMIZATION : an instance s : Solutions Set f : s → Cost function to minimize (Max) Find s* S s.t. f ( s* ) f ( s ), s S ( MIN) or f (

8

Graph Bipartitioning

Page 9: 1 COMBINATORIAL OPTIMIZATION : an instance s : Solutions Set f : s → Cost function to minimize (Max) Find s* S s.t. f ( s* ) f ( s ), s S ( MIN) or f (

9

Search strategies in LS

First improvement

Best improvement

Worst improvement

Page 10: 1 COMBINATORIAL OPTIMIZATION : an instance s : Solutions Set f : s → Cost function to minimize (Max) Find s* S s.t. f ( s* ) f ( s ), s S ( MIN) or f (

10

The Quadratic Assignment Problem (QAP)

n locations : distance n facilities: flow fij

π(i)=k: facility i location k

minimize the local cost

Min f dik i ki k

n

( ) ( ), 1

Page 11: 1 COMBINATORIAL OPTIMIZATION : an instance s : Solutions Set f : s → Cost function to minimize (Max) Find s* S s.t. f ( s* ) f ( s ), s S ( MIN) or f (

11

The Quadratic Assignment Problem (QAP)

n locations : distance n facilities: flow fij

π(i)=k: facility i location k

minimize the total cost

Min f dik i ki k

n

( ) ( ), 1

Page 12: 1 COMBINATORIAL OPTIMIZATION : an instance s : Solutions Set f : s → Cost function to minimize (Max) Find s* S s.t. f ( s* ) f ( s ), s S ( MIN) or f (

12

The QAP 2-exchange:

π=(π(1),...,π(i),...,π(j),...π(n))πij=(π(1),...,π(j),...,π(i),...π(n))

N(π)=(n*(n-1))/2

Page 13: 1 COMBINATORIAL OPTIMIZATION : an instance s : Solutions Set f : s → Cost function to minimize (Max) Find s* S s.t. f ( s* ) f ( s ), s S ( MIN) or f (

13

The QAP: an example

π=3 1 2 5 4 6

2-exch.

πij=3 4 2 5 1 6

6

5

1

3

4

26

5

1

4

3

2

locations

Page 14: 1 COMBINATORIAL OPTIMIZATION : an instance s : Solutions Set f : s → Cost function to minimize (Max) Find s* S s.t. f ( s* ) f ( s ), s S ( MIN) or f (

14

Traveling Salesman Problem (2-exchange)

ij

ij

D= d adj. matrix

0 1 0 . . . . . 0 1

1 0 1 0 . . . . . 0

0 1 0 1 0 . . . . .

0 0 1 0 1 0 . . . .

. . 0 1 0 1 0 . . . F= f

. . . 0 1 0 1 0 . .

. . . . 0 1 0 1 0 0

. . . . . 0 1 0 1 0

0 . . . . . 0 1 0 1

1 0 . . . . . 0 1 0

Page 15: 1 COMBINATORIAL OPTIMIZATION : an instance s : Solutions Set f : s → Cost function to minimize (Max) Find s* S s.t. f ( s* ) f ( s ), s S ( MIN) or f (

15

Bipartitioning

weighted graph G(V,E)

2-exchange

A BV

D = d adj.matrixij

2

1bgdi

Page 16: 1 COMBINATORIAL OPTIMIZATION : an instance s : Solutions Set f : s → Cost function to minimize (Max) Find s* S s.t. f ( s* ) f ( s ), s S ( MIN) or f (

16

Particular cases(Bipartitioning)

F = fO U

U O

U = u i, j = 1,...,n

2 otherwise

ij

ij

di

di

FHG

IKJ

RS|T|1

0

,

h/2

h/2

Page 17: 1 COMBINATORIAL OPTIMIZATION : an instance s : Solutions Set f : s → Cost function to minimize (Max) Find s* S s.t. f ( s* ) f ( s ), s S ( MIN) or f (

17

K-densest and k-lightest

Graph G V, E V n

consider m n m = 1,..., n

"Find a sub - graph G V ,E with V m

and E maximum minimum

NP - complete

- maximum clique

- maximum Independent set

G

b gb g

b gb g

,

,

Page 18: 1 COMBINATORIAL OPTIMIZATION : an instance s : Solutions Set f : s → Cost function to minimize (Max) Find s* S s.t. f ( s* ) f ( s ), s S ( MIN) or f (

18

Results (2-exchange)

ij

1 2 n

1 0F= D= d

0 0

d d ... d degrees of G

m

n-m

Page 19: 1 COMBINATORIAL OPTIMIZATION : an instance s : Solutions Set f : s → Cost function to minimize (Max) Find s* S s.t. f ( s* ) f ( s ), s S ( MIN) or f (

19

The Local Search: The MIS

example : The maximum Independent Set problem in a graph G(V,E)

"Find V V s. t. u, V u, " 1

2

3

4

1 3,l q a solution

Page 20: 1 COMBINATORIAL OPTIMIZATION : an instance s : Solutions Set f : s → Cost function to minimize (Max) Find s* S s.t. f ( s* ) f ( s ), s S ( MIN) or f (

20

The MIS by the Local Search

Solution coding :

Function :

x x x x

x V

x V

1 2 i n

i i

i i

, ,..., ,...,

1

0

Max x

= u, with u, V

ii=1

n

,

m r

Page 21: 1 COMBINATORIAL OPTIMIZATION : an instance s : Solutions Set f : s → Cost function to minimize (Max) Find s* S s.t. f ( s* ) f ( s ), s S ( MIN) or f (

21

Neighborhood : FLIP

x x x x x current sol.

x x x x x neighboor sol.

1 2 3 i n

1 2 3 i n

, , ,..., ,...,

, , ,..., ,...,

Page 22: 1 COMBINATORIAL OPTIMIZATION : an instance s : Solutions Set f : s → Cost function to minimize (Max) Find s* S s.t. f ( s* ) f ( s ), s S ( MIN) or f (

22

LS Drawbacks

Local optimum “good“ neighborhoods exploration strategies Performances guarantee ? Parallelization ?