Transcript
Page 1: Polynomial-Time Approximation Schemes for Geometric Intersection Graphs

Polynomial-Time Approximation Schemes for Geometric Intersection Graphs

Authors: T. Erlebach, L. Jansen, and E. Seidel

Presented by: Ping Luo10/17/2005

Page 2: Polynomial-Time Approximation Schemes for Geometric Intersection Graphs

Agenda

• Preliminaries• Disk partition and plane subdivision• Dynamic programming

Page 3: Polynomial-Time Approximation Schemes for Geometric Intersection Graphs

Basic Concepts

• Intersection graph: for a set V of geometric objects, the corresponding intersection graph is the undirected graph with vertex set V and an edge between two vertices if the corresponding objects intersect.

• Disk graph: a disk graph is the intersection graph of a set of disks– Disk graph recognition is NP-hard

Page 4: Polynomial-Time Approximation Schemes for Geometric Intersection Graphs

Disk graph – an example

Page 5: Polynomial-Time Approximation Schemes for Geometric Intersection Graphs

Problem definitions

• Maximum Weight Independent Set (MWIS) – For a given set of geographic objects, find a subset of

disjoint objects such that the total weight is maximum.– This paper deals with disks and is the topic of this

talk.

• Minimum Weight Vertex Cover (MWVC)– Find a subset of a given objects with minimum total

weight such that, for any two intersection objects, at least one is in the subset.

Page 6: Polynomial-Time Approximation Schemes for Geometric Intersection Graphs

Basic idea of the PTAS algorithm for MWIS

• The plane is partitioned into squares on each level. Some disks in each level are removed so that different squares on the same level yield independent subproblems with respect to all disks that are on this level or smaller levels.

• Each square has at most a constant number of disks so that enumeration is possible

Page 7: Polynomial-Time Approximation Schemes for Geometric Intersection Graphs

Agenda

• Preliminaries• Disk partition and plane subdivision• Dynamic programming

Page 8: Polynomial-Time Approximation Schemes for Geometric Intersection Graphs

Partition disks into levels

• Zoom in or out to make the largest diameter to be 1. The smallest is denoted as dmin

• Compute disk levels

• Determine disk level j of each disk with diameter d:

)1(1

logmin

1

k

dl k

)0()1()1( )1( ljkdk jj

Page 9: Polynomial-Time Approximation Schemes for Geometric Intersection Graphs

Partition disks – an example

Level 0

Level 1

Level 2

Page 10: Polynomial-Time Approximation Schemes for Geometric Intersection Graphs

Plane subdivision

An example: k = 3, l = 2

1/16 1/4 1(0,0)

1

1/4

1/16

Page 11: Polynomial-Time Approximation Schemes for Geometric Intersection Graphs

Definitions I• (r, s) active Lines

(0≤r,s<k): vertical lines whose line number mode k = r and horizontal lines whose line number mode k = s

• j-square: a square bounded by two consecutive r-active lines and two consecutive s-active lines of level j (0≤j<l)

0 1 (level 0)

0 1 2 3 4 5 (level 1)

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 (level 2)

(0,0)

1

1/4

1/16

1/16 1/4 1

Example: r=1, s=0

1-square

2-square

Page 12: Polynomial-Time Approximation Schemes for Geometric Intersection Graphs

Observation about j-squares in different levels

• For any j, , every (j+1)-square is completely contained in some j-square.

• Every j-square is the union of (j+1)-squares.

lj 0

2)1( k

Page 13: Polynomial-Time Approximation Schemes for Geometric Intersection Graphs

Definition II - D(r,s)

• Delete disks that hit (r,s) active lines. The rest of the disks forms a new disk graph called D(r,s).

• There are many different D(r,s) since 0<=r,s<k.• There is at least one D(r,s) such that the following

inequality holds:

2k

)()1

1()),(( 2 Doptk

srDopt

Not: once we find an optimal solution for each D(r,s), we can choose the one with largest weight and use that solution as an approximation for D, with (1+ε) approximation ratio.

Page 14: Polynomial-Time Approximation Schemes for Geometric Intersection Graphs

Definitions III

Relevant square: a j-squarethat contains at least one disk in D(r,s) of level j

Forest structure: a forestthat stores the child-parentrelationship between relevant squares

Child square: a relevantj’-square S’ that is containedin a relevant j-square Sand no relevant square S’’ of levels j’’ such that j<j’’<j’and S contains S’’ and S’’contains S’.

Page 15: Polynomial-Time Approximation Schemes for Geometric Intersection Graphs

Useful upper bounds

• The number of disks (level<j) that intersect a j-square is bounded by

• The number of disks (level≤j) that intersect the boundary of a rectangle (contained in a j-square) is bounded by

26k

216k

Note: these bounds guarantee that we can enumerate disks in each j-squares

Page 16: Polynomial-Time Approximation Schemes for Geometric Intersection Graphs

Agenda

• Preliminaries• Disk partition and plane subdivision• Dynamic programming

Page 17: Polynomial-Time Approximation Schemes for Geometric Intersection Graphs

Tables

• Two types of tables are used for each relevant j-square S to store the intermediate results. – Main table . It is indexed by I, a set of

independent disks of level <j and intersect S. Value stored is a set of maximum weighted independent disks X (level>=j) contained in S, and X U I=Φ

– Auxiliary tables and . J is a set of independent disks of level <=j that intersect the boundary of (or ). The value stored in each entry is a set X of maximum weighted independent disks of level >= j and contained in S, X U I U J=Φ

)(ITS

),( ',, JSAT hgIS ),( '

..,.., 2121JSAT hhggIS

',hgS '

..,.. 2121 hhggS

Page 18: Polynomial-Time Approximation Schemes for Geometric Intersection Graphs

Outline of the algorithm

• For each pair of r and s (0<=r, s<k), the algorithm computes an optimal independent set for the D(r,s) using dynamic programming. Among the independent sets, it selects the one with the largest weight.

• The algorithm uses dynamic programming to obtain opt(D(r,s)). – The computation processes all relevant squares in

order of nonincreasing levels. – In each level j, a table Ts(I) is constructed.

• is computed using Ts’(I) • is computed by combining • Ts(I) =

– Each 0-square S has a Ts(Φ) . The union of all Ts(Φ) is an opt(D(r,s)).

2k

),( ',, JSAT hgIS

),( '..,.., 2121

JSAT hhggIS),( '

,, JSAT hgIS

),( '..0,..0, kkIS SAT

Page 19: Polynomial-Time Approximation Schemes for Geometric Intersection Graphs

Base auxiliary table construction pseudocode

od

fi

fi

),(

then)),(()(or undefined is ),( if

} ofboundary theintersects |{

}in contained is |{

)(

} intersects |{

hendisjoint t are in disks theif

do such that allfor

ngintersecti level of ),(in disks all

;undefined,*)(

allfor),(entriestable:Output

ngintersectilevelofdisksdisjointofset

,,0with,integers,levelonsquare:Input

',,

',,

',,

',

',

'

',

2

',

',,

',,

',

XJSAT

JSATwXwJSAT

SDUDJ

SDUDXX

UITX

SDIDI

UI

CkUQU

SjsrDQ

SAT

JJSAT

SjI

khghgjS

hgIs

hgIshgIs

hg

hg

S

hg'

hg

hgIs

hgIs

hg

Page 20: Polynomial-Time Approximation Schemes for Geometric Intersection Graphs

Auxiliary table base construction – an example

Page 21: Polynomial-Time Approximation Schemes for Geometric Intersection Graphs

Auxiliary table combining pseudocode

;or ofboundary he t

ngintersecti level of ),(in disks all

undefined; ,*)(

;

;

allfor ),( entries table:Output

,*)( and ,*)(

entries tablecomputed previously

,0 with , integers

,0 with ,, integers

, ngintersecti level of disksdisjoint of set

, levelon square :Input

21

'..,..,

'..,..12

'..,..1

'..,..,

'..,..1,

'..,..,

2121

321321

2131

2132

2121

2131

21322121

RR

jsrDQ

SAT

SR

SR

JJSAT

SATSAT

khhhh

kgggggg

SjI

jS

hhggIS

hhgg

hhgg

hhggIS

hhggIShhggIS

(continue on next slide)

Page 22: Polynomial-Time Approximation Schemes for Geometric Intersection Graphs

Auxiliary table combining pseudocode

od

fi

fi

),(

then)),(()(or undefined is ),( if

} ofboundary theintersects |{

}; ofboundary theintersect not does |{

od

)(

} ofboundary theintersects |{

do 2 to1for

hendisjoint t are in disks theif

do 2such that allfor

'..,..,

'..,..,

'..,..,

'..,..

'..,..21

,

2'

2131

21312131

2131

2131

XJSAT

JSATwXwJSAT

SDUDJ

SDUDXXX

URATX

RDUDU

i

UI

kCUQU

hhggIs

hhggIshhggIs

hhgg

hhgg

iiIS

ii

Page 23: Polynomial-Time Approximation Schemes for Geometric Intersection Graphs

Caveat of the combining algorithm

Not independent!

Page 24: Polynomial-Time Approximation Schemes for Geometric Intersection Graphs

A correction

• Instead of enumerating disks that intersect the boundary of R1 or R2, we enumerate disks that intersect private boundary of R1, or private boundary of R2, or shared boundary of R1 and R2. The time complexity won’t change due to this correction

shared boundary

Page 25: Polynomial-Time Approximation Schemes for Geometric Intersection Graphs

Deal with missing child squares

• Some squares contain no disks and hence are not relevant. No table will be constructed for irrelevant squares.

• If a j-square S contains some irrelevant (j+1)-squares S’, all the child squares of S contained in S’ will be considered.

Page 26: Polynomial-Time Approximation Schemes for Geometric Intersection Graphs

Summary of the algorithm

• Construct D(r,s) for 0<=r,s<k.• Construct forest structure for relevant squares• For each relevant square,

– Compute missing tables– For each level, from highest to lowest, compute the auxiliary

tables and form by combining rows and columns, and eventually table Ts(I) will be computed automatically.

• Union of all the Ts(Φ) forms opt(D(r,s))• Output the largest opt(D(r,s)) (0≤r,s<k) as an

approximation of MWIS

,*)( ',, hgIS SAT ,*)( '

..,.., 2121 hhggIS SAT

Page 27: Polynomial-Time Approximation Schemes for Geometric Intersection Graphs

Time complexity

)(2)( 22

)( kOkO nkOn

• D(r,s) need to be considered.

• The relevant squares and their forest structure can be constructed in time polynomial in n:

• For each relevant square S, missing child squares can be handled in time .

Then a dynamic approach is used to construct table Ts for the square S, which takes

2k

)1(On

)(2 2

)( kOnkO

)()(2)()(2)1(2 2222

))()(( kOkOkOkOO nnkOnnkOnk

Total time complexity:

Page 28: Polynomial-Time Approximation Schemes for Geometric Intersection Graphs

Questions?

• Homework– Why does the paper assumes the input of its

algorithms is the set D of disks, not only the corresponding intersection graph?

– In the MWIS presented in this paper, if each disk has weight 1, then MWIS can be reduced to a MIS problem. Describe in your own words what the difference is between the MIS in this paper and the MIS you learned in the class. List at least two aspects which you can think of.

Page 29: Polynomial-Time Approximation Schemes for Geometric Intersection Graphs

Reference

• "Polynomial-time approximation schemes for geometric intersection graphs", T. Erlebach, K. Jansen, and E. Seidel, SIAM Journal on Computing 34, pp. 1302-1323 (2005).


Top Related