+ All Categories
Home > Documents > Approximation Algorithms

Approximation Algorithms

Date post: 19-Jan-2016
Category:
Upload: diata
View: 28 times
Download: 0 times
Share this document with a friend
Description:
EPIT 2007. Approximation Algorithms. EPIT 2007. Independent Set. Instance: G=(V,E), k  N Question: Is there an independent set of size k in G (i.e. a subset V’  V such that no two vertices in V’ are joined by an edge) ? This problem is NP-Complete Instance: G=(V,E) - PowerPoint PPT Presentation
Popular Tags:
61
1 EPIT 2007 Approximation Algorithms
Transcript
Page 1: Approximation Algorithms

1

EPIT 2007

Approximation Algorithms

Page 2: Approximation Algorithms

2

EPIT 2007

Independent Set

Instance: G=(V,E), k N

Question: Is there an independent set of size k in G (i.e. a subset V’ V such that no two vertices in V’ are joined by

an edge) ?

This problem is NP-Complete

Instance: G=(V,E)

Question: Find an independent set of maximal cardinality

NP-hard

Page 3: Approximation Algorithms

3

EPIT 2007

Definition of Approximation Algorithms

Find a «good solution» in polynomial-time

What is a good solution?

Let S be a solution given by a heuristic

Let S* be an optimal solution

The aim: S/S*≈1

Page 4: Approximation Algorithms

4

EPIT 2007

Another problem: vertex cover

Instance: G=(V,E), k N

Question:

Find a set cover of edges with minimal size (i.e. a subset V’ V such that, for each edge {u,v} E, at least one of u and v belongs to

V’).

Page 5: Approximation Algorithms

5

EPIT 2007

These two problems seem to be equivalent  independent set = vertex cover and vertex cover = independent set

Max independent set ≈ Min vertex cover

An existence of an independent set of size k <=> an existence of the vertex cover of size n-k.

Page 6: Approximation Algorithms

6

EPIT 2007

In fact these two problems are very different in term of approximability:

there exists an algorithm for the vertex cover which gives a solution S to a factor two of a

optimal solution S* at most => 2 S/S*

No constant ratio exists for the independent set

Page 7: Approximation Algorithms

7

EPIT 2007

Definition

An algorithm A is (n)-approximated

If Max (S/S*,S*/S) (n)

For all instances of size n of the problem where S is the solution given by A and S* an

optimal solution.

Page 8: Approximation Algorithms

8

EPIT 2007

FPTAS and PTAS

Q PTAS:

>0, Asuch that A is (1+)-approximated.

Moreover, if the complexity of A is polynomial in 1/, then Q FPTAS.

Page 9: Approximation Algorithms

9

EPIT 2007

Some problems of PTAS

Cover of points by minimum number of circles of radius r

Knapsack problem

Page 10: Approximation Algorithms

10

EPIT 2007

APX and no-APX

Q APX:

R, A such that A is a -approximation algorithm

Q no-APX :

R, there exists no A such that A is -approximation algorithm

Page 11: Approximation Algorithms

11

EPIT 2007

Some problems APX and no-APX

Vertex cover of a graph is APX

Travelling salesman problem is APX

Independent set of maximum cardinality is no-APX

Vertices coloring is no-APX

Page 12: Approximation Algorithms

12

EPIT 2007

The world if N NP

P

PTAS APX

No-APX

FPTAS

Page 13: Approximation Algorithms

13

EPIT 2007

An absolute approximation Algorithm

The edge coloring of a graph:

It exists a 4/3-approximated algorithm

Vizing’s theorem :

It is always possible to color the edges with (G)+1 colors

Page 14: Approximation Algorithms

14

EPIT 2007

An absolute approximation Algorithm

This result is the best possible

Indeed : the problem to know if a graph

with (G)=3 can be colored with 3 colors

is NP-complete.

It is easy to see that an algorithm

-approximated with <4/3 permits

to solve this problem.

Page 15: Approximation Algorithms

15

EPIT 2007

An absolute approximation Algorithm

Indeed if the solution is c<4 then c* ≤3,

and the graph can be colored with 3 colors.

If the solution is c4,

since c/c*<4/3 we have c*>3 and the graph cannot be colored with 3 colors.

Page 16: Approximation Algorithms

16

EPIT 2007

The problem of the k-center

Instance: Let V be a set of n sites, D be a matrix where dij is the distance between site i and site j,

and let kN.

Problem : Find S V, |S|=k which minimizes maxiV(dist(i,S))

with dist(i,S)=minjS(dij)

Page 17: Approximation Algorithms

17

EPIT 2007

Remark

There exists no -approximated algorithm with <2.

Proof : If such an algorithm existed,

it could be used to solve the problem

of the existence of a dominating set of size k.

Page 18: Approximation Algorithms

18

EPIT 2007

Some definitions

We call Gd=(V,Ed) the graph where {i,j} Ed

if and only if d dij .

Let G=(V,E), we call G2=(V,E’) the graph such that {i,j} E’ if and only if

either {i,j} E

or k such that {i,k} E and {k,j} E.

Page 19: Approximation Algorithms

19

EPIT 2007

Here is a 2-approximated algorithm:

Sort the dij : d1 < d2 < … < dm ,

i :=0

Repeat

i := i+1 ; d := di

Construct Gd2

Find a maximal stable S of Gd2

until k |S|

Take S as solution

Page 20: Approximation Algorithms

20

EPIT 2007

Remark :

1. Let i0 be the value of the last i in the loop. Then all the sites are at distance at most

2di0 from S.

2. The optimal solution is at least di0.

Indeed Gd2 with d=di0-1, has a stable of

cardinality at least k+1.

Page 21: Approximation Algorithms

21

EPIT 2007

Conclusion

Thus the algorithm is a 2-approximated.

That is the best possible result.

Page 22: Approximation Algorithms

22

EPIT 2007

Most of the scheduling problems are NP-Hard

Take the following simple problem:

Instance:

Independent tasks (no precedence constraint), each task ti has a processing time pi

Question:

Scheduling these tasks on two processors while minimizing the length of the schedule

Page 23: Approximation Algorithms

23

EPIT 2007

This problem is NP-Hard (partition is a particular case).

But there exists a FPTAS

Page 24: Approximation Algorithms

24

EPIT 2007

A intermediate problem

Let be the sum problem: a list E of n integers, an integer t.

The goal is to find a sublist E’ E which the sum of the integers in E’ is maximum but less

than t

(Find E’ E, such that max(∑ iE’ i) t)

Page 25: Approximation Algorithms

25

EPIT 2007

A pseudo-polynomial-time algorithm

L0 = {0}

L1 = {0, e1 }

Li = Li-1 {x |y Li-1, x=y+ei, x t}

The solution is expressed as y*= max (Ln)

The complexity order of this algorithm is in

O (n * min(t,2n))

Page 26: Approximation Algorithms

26

EPIT 2007

How can we reduce the size of the lists?

The idea is to filter the list

Example. Suppose that the two integers 45 and 47 are in a list Li. The sum which we

would able to reach from 45 will be closed to their from 47.

Thus 45 will represent 47

Page 27: Approximation Algorithms

27

EPIT 2007

How do we reduce the size of the lists ?

Filtering (L, ) consists in suppressing all the integers y in L such that there exists

an integer z in L with y z (1- )y

Example:

L = {0, 1, 2, 4, 5, 11, 12, 20, 21, 23, 24, 25, 26} and =0.2

Page 28: Approximation Algorithms

28

EPIT 2007

How do we reduce the size of the lists ?

Filtering (L, ) consists in suppressing all the integers y in L such that there exists

an integer z in L with y z (1- )y

Example:

L = {0, 1, 2, 4, 5, 11, 12, 20, 21, 23, 24, 25, 26} and =0.2.

Then Filtering(L,)= {0,1,2, 4, 11, 20, 26}

Page 29: Approximation Algorithms

29

EPIT 2007

How do we reducethe size of the lists ?

We are given

the pseudo-polynomial algorithm,

and in each step we filter with =/n.

Let L’i be the intermediate lists.

Then the approximated solution is

y = max(L’n)

Page 30: Approximation Algorithms

30

EPIT 2007

The sizes of the lists are small

L’i = {0, z1 , z2 , … zm+1}

we have by construction :

zi/ zi-1 > 1/(1-) and t zm+1 and z1 1

Thus

t zm+1/z1 = i=2..m+1 zi/ zi-1 (1/(1- ) )m

Page 31: Approximation Algorithms

31

EPIT 2007

The sizes of the lists are small

Thus t (1/(1- ) )m

log (t) - m * log (1- )

Finally m < n log(t)/

(because - log(1-x)>x)

Page 32: Approximation Algorithms

32

EPIT 2007

The sizes of the lists are small

1. m < n log(t)/

2. the size of the lists is in O(m)

The algorithm becomes polynomial.

Page 33: Approximation Algorithms

33

EPIT 2007

The error is small

We can prove by induction that :

yLi , zL’i such that y z (1-)i y

Page 34: Approximation Algorithms

34

EPIT 2007

The error is small

We can prove by induction that :

yLi , zL’i such that y z (1-)i y

This result is true for i=n and y=y*

Page 35: Approximation Algorithms

35

EPIT 2007

The error is small

We can prove by induction that :

yLi , zL’i such that y z (1-)i y

This result is true for i=n and y=y*

zL’n z (1-)n y*

Page 36: Approximation Algorithms

36

EPIT 2007

The error is small

zL’n z (1-)n y* and y z

Conclusion:

y / y* (1-/n)n 1-

Page 37: Approximation Algorithms

37

EPIT 2007

Back to our problem

Let B be the sum of the processing time of all the tasks.

P1

P2

B/2

The solution S is B/2+

If pi becomes ei and t=B/2 : the solution S’ is B/2-

Page 38: Approximation Algorithms

38

EPIT 2007

Back to our problem

B/2

The solution S is B/2+ , S* is B/2+ with

If pi becomes ei and t=B/2 : the solution S’ is B/2- and the best solution S’* is B/2-

It suffices to note that S/S*<S’*/S’ to show that our problem is FPTAS

Page 39: Approximation Algorithms

39

EPIT 2007

A non-APX problem Instance: Some tasks with the same

processing times and some incompatibility constraints.

Question: Find a optimal schedule satisfing the incompatibility constraints.

Let G be the conflict graph where vertices represent tasks

a scheduling ≈ vertex coloring.

This problem is not APX

Page 40: Approximation Algorithms

40

EPIT 2007

An APX problem without PTAS

Instance: Let G=(V,A) be a d.a.g. with the chronological constraints and let m be the

number of processors

Question: Minimize the length of the schedule

Scheduling on a given number of processors

Page 41: Approximation Algorithms

41

EPIT 2007

No -approximated algorithm if <4/3

We are going to show that :

Even if the graph is bipartite and the duration of all the tasks is equal to 1, knowing whether the graph can be scheduled in time 3 is an NP-complete problem

The proof of this result suffices to conclude

Page 42: Approximation Algorithms

42

EPIT 2007

The proof

The problem of well-balanced independent set in bipartite graphs is NP-complete

Instance : G=(V1V2,E) a bipartite graph

Question : does there exist an independent set S in G such that |S|=|V1| and |V1|=|V2| and |V1S|= |V2S|?

Page 43: Approximation Algorithms

43

EPIT 2007

X with |X|=n

Y with |Y|=n

W with |W|=n/2

T with |T|=n/2

The edges of G Complete Graph

Page 44: Approximation Algorithms

44

EPIT 2007

X with |X|=n

Y with |Y|=n

W with |W|=n/2

T with |T|=n/2

Scheduling this DAG in three steps on n processors is equivalent to showing the existence of a well-balanced independent set in the graph G.

Page 45: Approximation Algorithms

45

EPIT 2007

X with |X|=n

T with |T|=n/2

W with |W|=n/2

Y with |Y|=n

Scheduling in 3 steps : no idle time

m=n

Page 46: Approximation Algorithms

46

EPIT 2007

X with |X|=n

T with |T|=n/2

W with |W|=n/2

Y with |Y|=n

Scheduling in 3 steps : no idle time

Step 1 : W and X1 ( X1 X, |X1|=n/2) must be executed.

m=n

Page 47: Approximation Algorithms

47

EPIT 2007

X with |X|=n

T with |T|=n/2

W with |W|=n/2

Y with |Y|=n

Scheduling in 3 steps : no idle time

Step 1 : W and X1 ( X1 X, |X1|=n/2) must be executed.

m=n

Step 3 : T and Y1 ( Y1 Y, |Y1|=n/2) must be executed.

Page 48: Approximation Algorithms

48

EPIT 2007

X with |X|=n

T with |T|=n/2

W with |W|=n/2

Y with |Y|=n

Scheduling in 3 steps : no idle time

Step 1 : W and X1 ( X1 X, |X1|=n/2) must be executed.

m=n

Step 3 : T and Y1 ( Y1 Y, |Y1|=n/2) must be executed.

Step 2 : X2 and Y2 ( |X2|=|Y2|=n/2 ) must be executed.

Page 49: Approximation Algorithms

49

EPIT 2007

X with |X|=n

T with |T|=n/2

W with |W|=n/2

Y with |Y|=n

Scheduling in 3 steps : no idle time

m=n

Step 2 : X2 and Y2 ( |X2|=|Y2|=n/2 ) must be executed.

X2 Y2 is a well balanced independent set in the graph G

Page 50: Approximation Algorithms

50

EPIT 2007

2-approximated list scheduling

Graham’s Theorem : all lists scheduling is a 2-approximation for this problem.

Proof: We can construct by induction a path in the d.a.g. such that at all the times, either a

task in the path is executing or all the processors are working.

Page 51: Approximation Algorithms

51

EPIT 2007

2-approximated list scheduling

construction of the path

Take as t1 one of the tasks finishing at the end of the scheduling, and take as tk any

predecessor of tk-1 which finishing last among all its predecessors.

The construction is achieved when we arrive at a source (task with no predecessor)

Page 52: Approximation Algorithms

52

EPIT 2007

2-approximated list scheduling

The sum of the times when all the processors are working is smaller than the duration of the optimal scheduling and the rest of the time is smaller than the longer of the path and so the

duration of the optimal scheduling.

This concludes the proof .

Page 53: Approximation Algorithms

53

EPIT 2007

Some remarks

We have seen that the constraints of incompatibility yield a very difficult problem

(non-APX) but the chronologic constraint yield an easier problem (often APX) but even polynomial if the number of processors is not

bounded .

Page 54: Approximation Algorithms

54

EPIT 2007

Other constraintsCommunication delays

It is reasonable to assume that two tasks executing on two different processors need to

comunicate and this takes a certain delay.

As a first approximation, we suppose that this delay is always equal to 1 like the duration of

each task.

Page 55: Approximation Algorithms

55

EPIT 2007

Communication delay : UET-UCT

When the number of processors is not bounded, the problem become APX and the

duplication techniques permit to reduce sensitively the complexity (Colin-Chretienne show that the problem remain polynomial).

Without duplication a lower bound of 7/6 has been found (Hoogeveen, Lenstra, Veltman).

Page 56: Approximation Algorithms

56

EPIT 2007

Communication delay : UET - UCT

Munier and Co have given a 4/3-approximated algorithm.

Their idea is to solve a linear problem which gives a solution smaller that the solution of the original problem. A rounding technique

permit to give a realistic solution.

Page 57: Approximation Algorithms

57

EPIT 2007

Communication delay: UET - UCT

i jcij

If di is the starting time of i: dj di + 1 + cij

where cij is equal to 0 only for one successor task of ti.The problem then amounts to giving each arc a value cij equal to 0 or 1, with the constraints that, for each task at most one incoming (resp. outcoming) arc has the value 0.

Page 58: Approximation Algorithms

58

EPIT 2007

Communication delay : UET - UCT

ti tjcij

If every cij takes its value in [0,1] the problem becomes easy : the sum of the cij (resp. cji ) for a fixed i must be greater than the out-degree (resp. in-degree) minus 1. To find a realistic solution the integer value of the arc is 0 only if cij < 1/2.

Page 59: Approximation Algorithms

59

EPIT 2007

Communication delay : UET - UCT

ti tjcij

The rounding step distends the path by a factor at most 4/3. Indeed suppose a path of length (k+1) with x arcs such that cij < ½ (i.e the cost of the path in the real solution is greater than 3/2k-1/2x+1). After rounding, the cost is 2k-x+1. The ratio is always smaller of 4/3.

Page 60: Approximation Algorithms

60

EPIT 2007

Unbounded vs. bounded number of processors

Technique : folding. (each step of the unbounded scheduling where x tasks are executing is transformed into x/m steps for the scheduling with m processors.

Without communication : a polynomial problem becomes 2-approximated algorithm

With the uet-uct model : a -approximated algorithm becomes a (+1)-approximated algorithm.

Page 61: Approximation Algorithms

61

EPIT 2007

Other ratios have been used for approximation problems, the differential ratio

for example.

Other constraints and other models : there is no small communication time (thin granularity i.e. more possibility of

parallelism)


Recommended