The instructor will be absent on March 29 th . The class resumes on March 31 st .

1 / 39

# The instructor will be absent on March 29 th . The class resumes on March 31 st . - PowerPoint PPT Presentation

The instructor will be absent on March 29 th . The class resumes on March 31 st. Section 9-7 PTAS. Error Ratio Polynomial-Time Approximation Scheme A family of approximation algorithms For any pre-specified E, there exists an approximation algorithm with error ratio E

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.

## The instructor will be absent on March 29 th . The class resumes on March 31 st .

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
The instructor will be absent on March 29th.
• The class resumes on March 31st.
Section 9-7 PTAS
• Error Ratio
• Polynomial-Time Approximation Scheme
• A family of approximation algorithms
• For any pre-specified E, there exists an approximation algorithm with error ratio E
• And the complexity is still polynomial
• O(n/E)
Planar Graph
• Definition: A graph is said to be embedded on a surface S if it can be drawn on S so that its edges intersect only at their end vertices.
• A graph is a planar graph if it can be embedded on a plane.
Face
• Definition: A face is a region defined by a planar embedding.
• The unbound face is called exterior face
• e.g. 1-4-3-2-1
• All other faces are called interior faces.
• e.g. 1-2-6-5-1

4

1

5

8

6

7

2

3

k-outerplanar
• In a planar graph, we can associate each node with a level.
• Node on exterior face are of level 1.
• A graph is k-outerplanar if it has no nodes with level greater than k.

5

6

4

1

7

2

3

Example

5

4

12

11

10

17

16

14

9

8

3

15

13

6

7

1

2

Level 1

5

4

12

11

10

17

16

14

9

8

3

15

13

6

7

1

2

Level 2

12

11

10

17

16

14

9

8

15

13

6

7

Level 3

17

16

15

Max Independent Set Problem
• c.f Maximum & Maximal.
• Maximum independent set problem on planar graphs is NP-hard.
• For a k-outerplanar graph, an optimal solution for the maximum independent set problem can be found in O(8kn) time,
• through the dynamic programming approach
• n is the number of vertices.

This is a 2-outerplanar graph.

Maximum Independent Set Problem can be solved in O(8kn) time, where k=2.

Graph Obtained by Removing Nodes on Level 3,6,9
Algorithm 9-7 An Approximation Algorithm to Solve the Max Independent Set Problem on Planar Graph
• Step 1. For all i = 0, 1, 2, …, k, do
• (1.1) Let Gi be the graph obtained by deleting all nodes with levels congruent to i (mod k+1). The remaining subgraphs are all k-outerplanar graphs.
• (1.2) For each k-outerplanar graph, find its maximum independent set. Let Si denote the union of these solutions.
• Step 2. Among S0, S1, …, Sk, choose the Sj with the maximum size and let it be our approximation solution SAPX.

Time Complexity: O(8kkn)

Analysis
• All nodes are divided into (k+1) classes
• Each class corresponds to a level congruent to i (mod k+1), for i = 0, 1, …, k.
• For every independent set S, the average number of nodes in this set for each class is |S|/(k+1).
• There is at least one r, such that at most 1/(k+1) of vertices in SOPT are at a level which is congruent to r (mod k+1).
Analysis (cont.)
• Because at most |SOPT|/(k+1) nodes are deleted, the solution Sr obtained by deleting the nodes in class r from SOPT will have at least |SOPT|(1 – 1/(k+1)) = |SOPT| k/(k+1) nodes.
• |Sr||SOPT| k/(k+1)
• According to our algorithm, |SAPX| |Sr|
PTAS
• If we set k = ceiling(1/E) –1, the above formula becomes
• Thus for every given error bound E, we have a corresponding k to guarantee that the approximate solution differs from the optimum one within this error ratio.
• No matter how small the error is, the complexity of the algorithm is O(8kkn), which is polynomial with respect to n.
0/1 Knapsack Problem
• n objects, each with a weight wi > 0

a profit pi > 0

• capacity of knapsack : M
• Maximize
• Subject to
• xi = 0 or 1, 1 i n
Greedy on Density
• M=2k, APX=2k+3, OPT=4k
• M=2k+1, APX=OPT=4k+3
PTAS of 0/1 Knapsack Problem
• We shall demonstrate how to obtain an approximation algorithm with error ratio , no matter how small  is.
Step 2: Calculate a number Q
• Find the largest d such that W=w1+w2+…+wdM.
• If d=n or W=M, then
• Set PAPX =p1+p2+…+pd and INDICES={1,2,…,d} and stop.
• In this case, POPT=PAPX
• Otherwise, set Q=p1+p2+…+pd +pd+1
• For our case, d=3 and Q=90+61+50+33=234
Characteristics of Q
• p1+p2+…+pd POPT
• wd+1M, therefore pd+1 is a feasible solution
• pd+1 POPT
• Q= p1+p2+… +pd+pd+1 2POPT
• POPT is a feasible solution and Q is not, so POPTQ
• Q/2POPTQ
Step 3: Calculate a normalizing factor 
•  =Q( /3)2
• Let  to be 0.6
• In our case, =234(0.6/3)2=234(0.2)2=9.36
• Calculate
• Set T=Q( /3)
• In our case, T = 234(0.6/3)=46.8
Step 4.1: SMALL & BIG
• Let SMALL collect all items whose profits are smaller than or equial to T.
• Collect all other items into BIG.
• In our case,
• SMALL = {4, 5, 6, 7, 8}
• BIG = {1, 2, 3}
Step 4.3 Initialize an array A
• Array A has size g. Each entry corresponds to a combination of pi’s.
• Each entry A[i] consists of three fields
• I: index of the combination
• P: sum of profits
• W: sum of weights
Step 5. Add items in SMALL using the greedy algorithm

Step 6: Pick the largest profit to be our approximate solution

Why is it polynomial?
• Step 4.4 is an exhaustive scanning step.
• Intuitively, it will take exponential time:
• 2|BIG|
• Actually, the size of array A is not longer than g.
Time Complexity
• Step 1: O(n log n)
• Step 2: O(n)
• Step 4.1 to 4.2: O(n)
• Step 4.3: O(g)
• Step 4.4: O(ng)
• Step 5: O(ng)
• Step 6: O(g)
• Total:
• O(n log n) + O(ng) = O(n log n) + O(n(3/)2).
Exercise
• Use the example given in P.493,
• Run the PTAS with =0.75.
• What is the solution you obtain?
• What is the error ratio?
• Due: April 14th
• The instructor will be absent in next week.
Exercise
• Write a program which runs the PTAS of 0/1 Knapsack Problem. (Due: April 19th)
• Input format:

8

100

0.75

90 33

61 30

50 25

33 17

29 15

23 12

15 10

13 9