slide1 n.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
The instructor will be absent on March 29 th . The class resumes on March 31 st . PowerPoint Presentation
Download Presentation
The instructor will be absent on March 29 th . The class resumes on March 31 st .

Loading in 2 Seconds...

play fullscreen
1 / 39

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


  • 90 Views
  • Uploaded on

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

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

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


An Image/Link below is provided (as is) to download presentation

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
slide1
The instructor will be absent on March 29th.
  • The class resumes on March 31st.
section 9 7 ptas
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
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.
slide5
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
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
Example

5

4

12

11

10

17

16

14

9

8

3

15

13

6

7

1

2

level 1
Level 1

5

4

12

11

10

17

16

14

9

8

3

15

13

6

7

1

2

level 2
Level 2

12

11

10

17

16

14

9

8

15

13

6

7

level 3
Level 3

17

16

15

max independent set problem
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.
graph obtained by removing nodes on level 3 6 9

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
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
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
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|
slide20
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
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
Greedy on Density
  • M=2k, APX=2k+3, OPT=4k
  • M=2k+1, APX=OPT=4k+3
ptas of 0 1 knapsack problem
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
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
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
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
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
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 5. Add items in SMALL using the greedy algorithm

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

why is it polynomial
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
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
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.
exercise1
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