polynomial-time approximation schemes for geometric intersection graphs authors: t. erlebach, l....
Post on 19-Dec-2015
212 views
TRANSCRIPT
![Page 1: Polynomial-Time Approximation Schemes for Geometric Intersection Graphs Authors: T. Erlebach, L. Jansen, and E. Seidel Presented by: Ping Luo 10/17/2005](https://reader030.vdocuments.us/reader030/viewer/2022032800/56649d3f5503460f94a18722/html5/thumbnails/1.jpg)
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 Authors: T. Erlebach, L. Jansen, and E. Seidel Presented by: Ping Luo 10/17/2005](https://reader030.vdocuments.us/reader030/viewer/2022032800/56649d3f5503460f94a18722/html5/thumbnails/2.jpg)
Agenda
• Preliminaries• Disk partition and plane subdivision• Dynamic programming
![Page 3: Polynomial-Time Approximation Schemes for Geometric Intersection Graphs Authors: T. Erlebach, L. Jansen, and E. Seidel Presented by: Ping Luo 10/17/2005](https://reader030.vdocuments.us/reader030/viewer/2022032800/56649d3f5503460f94a18722/html5/thumbnails/3.jpg)
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 Authors: T. Erlebach, L. Jansen, and E. Seidel Presented by: Ping Luo 10/17/2005](https://reader030.vdocuments.us/reader030/viewer/2022032800/56649d3f5503460f94a18722/html5/thumbnails/4.jpg)
Disk graph – an example
![Page 5: Polynomial-Time Approximation Schemes for Geometric Intersection Graphs Authors: T. Erlebach, L. Jansen, and E. Seidel Presented by: Ping Luo 10/17/2005](https://reader030.vdocuments.us/reader030/viewer/2022032800/56649d3f5503460f94a18722/html5/thumbnails/5.jpg)
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 Authors: T. Erlebach, L. Jansen, and E. Seidel Presented by: Ping Luo 10/17/2005](https://reader030.vdocuments.us/reader030/viewer/2022032800/56649d3f5503460f94a18722/html5/thumbnails/6.jpg)
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 Authors: T. Erlebach, L. Jansen, and E. Seidel Presented by: Ping Luo 10/17/2005](https://reader030.vdocuments.us/reader030/viewer/2022032800/56649d3f5503460f94a18722/html5/thumbnails/7.jpg)
Agenda
• Preliminaries• Disk partition and plane subdivision• Dynamic programming
![Page 8: Polynomial-Time Approximation Schemes for Geometric Intersection Graphs Authors: T. Erlebach, L. Jansen, and E. Seidel Presented by: Ping Luo 10/17/2005](https://reader030.vdocuments.us/reader030/viewer/2022032800/56649d3f5503460f94a18722/html5/thumbnails/8.jpg)
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 Authors: T. Erlebach, L. Jansen, and E. Seidel Presented by: Ping Luo 10/17/2005](https://reader030.vdocuments.us/reader030/viewer/2022032800/56649d3f5503460f94a18722/html5/thumbnails/9.jpg)
Partition disks – an example
Level 0
Level 1
Level 2
![Page 10: Polynomial-Time Approximation Schemes for Geometric Intersection Graphs Authors: T. Erlebach, L. Jansen, and E. Seidel Presented by: Ping Luo 10/17/2005](https://reader030.vdocuments.us/reader030/viewer/2022032800/56649d3f5503460f94a18722/html5/thumbnails/10.jpg)
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 Authors: T. Erlebach, L. Jansen, and E. Seidel Presented by: Ping Luo 10/17/2005](https://reader030.vdocuments.us/reader030/viewer/2022032800/56649d3f5503460f94a18722/html5/thumbnails/11.jpg)
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 Authors: T. Erlebach, L. Jansen, and E. Seidel Presented by: Ping Luo 10/17/2005](https://reader030.vdocuments.us/reader030/viewer/2022032800/56649d3f5503460f94a18722/html5/thumbnails/12.jpg)
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 Authors: T. Erlebach, L. Jansen, and E. Seidel Presented by: Ping Luo 10/17/2005](https://reader030.vdocuments.us/reader030/viewer/2022032800/56649d3f5503460f94a18722/html5/thumbnails/13.jpg)
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 Authors: T. Erlebach, L. Jansen, and E. Seidel Presented by: Ping Luo 10/17/2005](https://reader030.vdocuments.us/reader030/viewer/2022032800/56649d3f5503460f94a18722/html5/thumbnails/14.jpg)
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 Authors: T. Erlebach, L. Jansen, and E. Seidel Presented by: Ping Luo 10/17/2005](https://reader030.vdocuments.us/reader030/viewer/2022032800/56649d3f5503460f94a18722/html5/thumbnails/15.jpg)
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 Authors: T. Erlebach, L. Jansen, and E. Seidel Presented by: Ping Luo 10/17/2005](https://reader030.vdocuments.us/reader030/viewer/2022032800/56649d3f5503460f94a18722/html5/thumbnails/16.jpg)
Agenda
• Preliminaries• Disk partition and plane subdivision• Dynamic programming
![Page 17: Polynomial-Time Approximation Schemes for Geometric Intersection Graphs Authors: T. Erlebach, L. Jansen, and E. Seidel Presented by: Ping Luo 10/17/2005](https://reader030.vdocuments.us/reader030/viewer/2022032800/56649d3f5503460f94a18722/html5/thumbnails/17.jpg)
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 Authors: T. Erlebach, L. Jansen, and E. Seidel Presented by: Ping Luo 10/17/2005](https://reader030.vdocuments.us/reader030/viewer/2022032800/56649d3f5503460f94a18722/html5/thumbnails/18.jpg)
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 Authors: T. Erlebach, L. Jansen, and E. Seidel Presented by: Ping Luo 10/17/2005](https://reader030.vdocuments.us/reader030/viewer/2022032800/56649d3f5503460f94a18722/html5/thumbnails/19.jpg)
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 Authors: T. Erlebach, L. Jansen, and E. Seidel Presented by: Ping Luo 10/17/2005](https://reader030.vdocuments.us/reader030/viewer/2022032800/56649d3f5503460f94a18722/html5/thumbnails/20.jpg)
Auxiliary table base construction – an example
![Page 21: Polynomial-Time Approximation Schemes for Geometric Intersection Graphs Authors: T. Erlebach, L. Jansen, and E. Seidel Presented by: Ping Luo 10/17/2005](https://reader030.vdocuments.us/reader030/viewer/2022032800/56649d3f5503460f94a18722/html5/thumbnails/21.jpg)
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 Authors: T. Erlebach, L. Jansen, and E. Seidel Presented by: Ping Luo 10/17/2005](https://reader030.vdocuments.us/reader030/viewer/2022032800/56649d3f5503460f94a18722/html5/thumbnails/22.jpg)
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 Authors: T. Erlebach, L. Jansen, and E. Seidel Presented by: Ping Luo 10/17/2005](https://reader030.vdocuments.us/reader030/viewer/2022032800/56649d3f5503460f94a18722/html5/thumbnails/23.jpg)
Caveat of the combining algorithm
Not independent!
![Page 24: Polynomial-Time Approximation Schemes for Geometric Intersection Graphs Authors: T. Erlebach, L. Jansen, and E. Seidel Presented by: Ping Luo 10/17/2005](https://reader030.vdocuments.us/reader030/viewer/2022032800/56649d3f5503460f94a18722/html5/thumbnails/24.jpg)
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 Authors: T. Erlebach, L. Jansen, and E. Seidel Presented by: Ping Luo 10/17/2005](https://reader030.vdocuments.us/reader030/viewer/2022032800/56649d3f5503460f94a18722/html5/thumbnails/25.jpg)
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 Authors: T. Erlebach, L. Jansen, and E. Seidel Presented by: Ping Luo 10/17/2005](https://reader030.vdocuments.us/reader030/viewer/2022032800/56649d3f5503460f94a18722/html5/thumbnails/26.jpg)
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 Authors: T. Erlebach, L. Jansen, and E. Seidel Presented by: Ping Luo 10/17/2005](https://reader030.vdocuments.us/reader030/viewer/2022032800/56649d3f5503460f94a18722/html5/thumbnails/27.jpg)
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 Authors: T. Erlebach, L. Jansen, and E. Seidel Presented by: Ping Luo 10/17/2005](https://reader030.vdocuments.us/reader030/viewer/2022032800/56649d3f5503460f94a18722/html5/thumbnails/28.jpg)
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 Authors: T. Erlebach, L. Jansen, and E. Seidel Presented by: Ping Luo 10/17/2005](https://reader030.vdocuments.us/reader030/viewer/2022032800/56649d3f5503460f94a18722/html5/thumbnails/29.jpg)
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).