Download presentation

Presentation is loading. Please wait.

2
Optimization problems INSTANCE FEASIBLE SOLUTIONS COST

3
Vertex Cover problem INSTANCE graph G FEASIBLE SOLUTIONS S V, such that ( e E) S e COST c(S) = |S|

4
Set Cover problem INSTANCE family of sets A 1,...,A n FEASIBLE SOLUTIONS S [n], such that A i COST c(S) = |S| iSiS

5
Set Cover problem INSTANCE family of sets A 1,...,A n FEASIBLE SOLUTIONS S [n], such that A i COST c(S) = |S| INSTANCE graph G FEASIBLE SOLUTIONS S V, such that ( e E) S e COST c(S) = |S| Vertex Cover problem iSiS

6
Set Cover problem INSTANCE family of sets A 1,...,A n FEASIBLE SOLUTIONS S [n], such that A i COST c(S) = |S| INSTANCE graph G FEASIBLE SOLUTIONS S V, such that ( e E) S e COST c(S) = |S| Vertex Cover problem iSiS = E A i E is the set of edges adjacent to i V

7
Optimization problems INSTANCE FEASIBLE SOLUTIONS COST OPTIMAL SOLUTIONOPT= min c(T) T FEASIBLE SOLUTIONS

8
approximation algorithm INSTANCE T such that c(T) OPT

9
Last Class: 2-approximation algorithm for Vertex-Cover 2-approximation algorithm for Metric TSP 1.5-approximation algorithm for Metric TSP

10
This Class: (1+ )-approximation algorithm for Knapsack O(log n)-approximation algorithm for Set Cover

11
Knapsack INSTANCE: value v i, weight w i, for i {1,...,n} weight limit W FEASIBLE SOLUTION: collection of items S {1,...,n} with total weight W COST (MAXIMIZE): sum of the values of items in S

12
Knapsack INSTANCE: value v i, weight w i, for i {1,...,n} weight limit W FEASIBLE SOLUTION: collection of items S {1,...,n} with total weight W COST (MAXIMIZE): sum of the values of items in S We had: pseudo-polynomial algorithm, time = O(Wn) pseudo-polynomial algorithm, time = O(Vn), where V = v 1 +... +v n

13
Knapsack INSTANCE: value v i, weight w i, for i {1,...,n} weight limit W FEASIBLE SOLUTION: collection of items S {1,...,n} with total weight W COST (MAXIMIZE): sum of the values of items in S pseudo-polynomial algorithm, time = O(Vn), where V = v 1 +... +v n GOAL convert into an approximation algorithm IDEA = rounding

14
Knapsack wlog all w i W M = maximum of v i v i v i ’ := n v i / (M ) OPT’ n 2 / S = optimal solution in original S’ = optimal solution in modified Will show: optimal solution in modified is an approximately optimal solution in original

15
Knapsack v i v i ’ := n v i / (M ) S = optimal solution in original S’ = optimal solution in modified (n/(M )) v i v i ’ v i ’ ( nv i / (M ) -1 ) i S’ i S Will show: optimal solution in modified is an approximately optimal solution in original

16
Knapsack v i v i ’ := n v i / (M ) S = optimal solution in original S’ = optimal solution in modified (n/(M )) v i v i ’ v i ’ ( nv i / (M ) -1 ) i S’ i S Will show: optimal solution in modified is an approximately optimal solution in original v i ( v i - ) i S’ i S n/(M ) 1 OPT – M OPT(1– )

17
Running time? pseudo-polynomial algorithm, time = O(V’n), where V’ = v’ 1 +... +v’ n M = maximum of v i v i v i ’ := n v i / (M )

18
Running time? pseudo-polynomial algorithm, time = O(V’n), where V’ = v’ 1 +... +v’ n M = maximum of v i v i v i ’ := n v i / (M ) v’ i n/ V’ n running time = O(n 3 / )

19
FPTAS Fully polynomial-time approximation scheme (1+ )-approximation algorithm running in time poly(INPUT,1/ ) We have an algorithm for the Knapsack problem, which outputs a solution with value (1- ) OPT and runs in time O(n 3 / )

20
Weighted set cover problem INSTANCE: A 1,...,A m , weights w 1,...,w m FEASIBLE SOLUTION: collection S of the A i covering OBJECTIVE (minimize): the cost of the collection (in the unweighted version we have w i =1)

21
Weighted set cover problem Greedy algorithm: pick A i with minimal w i / |A i | remove elements in A i from repeat

22
Negative example (last class) approximation ratio = (log n)

23
Weighted set cover problem Greedy algorithm: pick A i with minimal w i / |A i | remove elements in A i from repeat Theorem: O(log n) approximation algorithm.

24
Weighted set cover problem Greedy algorithm: pick A i with minimal w i / |A i | remove elements in A i from repeat Theorem: O(log n) approximation algorithm. AiAi everybody pays w i / |A i | when A i picked, cost of the solution increases by w i

25
Weighted set cover problem Let B be a set of weight w. How much did the guys in B pay? B pick me! cost=w/ B pick me! cost=w/ B

26
Weighted set cover problem Greedy algorithm: pick A i with minimal w i / |A i | remove elements in A i from repeat Theorem: O(log n) approximation algorithm. B pick me! cost=w/ B pick me! cost=w/ B sorry A i was cheaper sorry A i was cheaper AiAi paid less than w/B

27
Weighted set cover problem Greedy algorithm: pick A i with minimal w i / |A i | remove elements in A i from repeat Theorem: O(log n) approximation algorithm. B

28
Weighted set cover problem continue, size of B went down by 1 B pick me! cost=w/(B-1) pick me! cost=w/(B-1)

29
Weighted set cover problem Greedy algorithm: pick A i with minimal w i / |A i | remove elements in A i from repeat Theorem: O(log n) approximation algorithm. B sorry A j was cheaper sorry A j was cheaper AjAj paid less than w/(B-1) pick me! cost=w/(B-1) pick me! cost=w/(B-1)

30
Weighted set cover problem Greedy algorithm: pick A i with minimal w i / |A i | remove elements in A i from repeat Theorem: O(log n) approximation algorithm. B

31
Weighted set cover problem continue, size of B went down by 1 B pick me! cost=w/(B-2) pick me! cost=w/(B-2)

32
Weighted set cover problem B vertices in order they are covered by greedy paid w/B paid w/(B-1) paid w/(B-2) paid w paid w/2

33
Weighted set cover problem B TOTAL PAID w (1/B + 1/(B-1) +... +1/2 + 1) = w O(ln B) = w O(ln n) paid w/B paid w/(B-1) paid w/(B-2) paid w paid w/2

34
Weighted set cover problem INSTANCE: A 1,...,A m , weights w 1,...,w m FEASIBLE SOLUTION: collection S of the A i covering OBJECTIVE (minimize): the cost of the collection Greedy algorithm: pick A i with minimal w i / |A i | remove elements in A i from repeat Theorem: O(log n) approximation algorithm.

35
Clustering n points in R m d(i,j) = distance between points i,j partition the points into k clusters of small diameter diam(C) = max d(i,j) i,j C

36
Clustering k = 3

38
Clustering k = 2

40
k-Clustering INSTANCE n points in R m FEASIBLE SOLUTION partition of [n] into C 1,...,C k COST max diam(C i ) i [k] diam(C) = max d(i,j) i,j C

41
k-Clustering GREEDY ALGORITHM pick s 1 [n] for i from 2 to k do pick s i the farthest point from s 1,...,s i-1 C i = {x [n] whose closest center is s i }

42
k-Clustering GREEDY ALGORITHM pick s 1 [n] for i from 2 to k do pick s i the farthest point from s 1,...,s i-1 C i = {x [n] whose closest center is s i } s1s1

43
k-Clustering GREEDY ALGORITHM pick s 1 [n] for i from 2 to k do pick s i the farthest point from s 1,...,s i-1 C i = {x [n] whose closest center is s i } s1s1 s2s2

44
k-Clustering GREEDY ALGORITHM pick s 1 [n] for i from 2 to k do pick s i the farthest point from s 1,...,s i-1 C i = {x [n] whose closest center is s i } s1s1 s2s2 s3s3

45
k-Clustering GREEDY ALGORITHM pick s 1 [n] for i from 2 to k do pick s i the farthest point from s 1,...,s i-1 C i = {x [n] whose closest center is s i } s1s1 s2s2 s3s3

46
k-Clustering GREEDY ALGORITHM pick s 1 [n] for i from 2 to k do pick s i the farthest point from s 1,...,s i-1 C i = {x [n] whose closest center is s i } Theorem: GREEDY ALGORITHM IS A 2-APPROXIMATION ALGORITHM

47
Theorem: GREEDY ALGORITHM IS A 2-APPROXIMATION ALGORITHM s1s1 s2s2 sksk s k+1 d(s i,s j ) d(s k+1,{s 1,...,s k }) = r OPT r cost of greedy 2r

Similar presentations

© 2020 SlidePlayer.com Inc.

All rights reserved.

To make this website work, we log user data and share it with processors. To use this website, you must agree to our Privacy Policy, including cookie policy.

Ads by Google