Upload
linette-scott
View
216
Download
1
Tags:
Embed Size (px)
Citation preview
A Theorem on Subdivision Approximation and Its
Application to Obtaining PTAS’s for Geometric Optimization
Problems
Joseph S.B. MitchellStony Brook University
Workshop on Computational and Conformal Geometry, April 21, 2007
22
A DedicationA Dedication
Happy 60th Birthday!!
Michael Ian Shamos: PhD thesis “Computational Geometry”, Yale University, 1978
33
Motivating Problem: TSP with Motivating Problem: TSP with NeighborhoodsNeighborhoods
Find shortest tour to visit a set of neighborhoods P1,P2,…,Pn
44
TSPN for Disk PackingTSPN for Disk Packing
55
TSPN in a Circle PackingTSPN in a Circle Packing
"Introduction to Circle Packing: the Theory of Discrete Analytic functions"by Ken Stephenson
66
Another (Springtime) Another (Springtime) MotivationMotivation
Best method of mowing the lawn?
TSPN: Visit the disk centered at each blade of grass
77
Watchman Route ProblemWatchman Route Problem
88
Sensor Network Application: Sensor Network Application: Cover Tour ProblemCover Tour Problem
Alt, Arkin, Bronnimann, Erickson, Fekete, Knauer, Lenchner, Mitchell,Whittlesey, SoCG’06
Min: Tour length + C * (sum of radii)
99
Sensor Network Application: Sensor Network Application: Minimizing # Relay StationsMinimizing # Relay Stations
Efrat, Fekete, Mitchell 2007
Goal: Connect all subnetworks of sensors using min # of new relay stations
New result: PTAS
1010
Min-Weight Convex SubdivisionMin-Weight Convex Subdivision
Steiner version
Special Case: Min-weight (Steiner) triangulation
1111
Approximation AlgorithmsApproximation Algorithms
1212
Background on TSPBackground on TSP
1313
PTAS for Geometric TSPPTAS for Geometric TSP
1414
TSPN Recent ResultTSPN Recent Result
TSPN has a PTAS for TSPN has a PTAS for regions/neighborhoods that are regions/neighborhoods that are ““fatfat”, disjoint (or sufficiently disjoint) ”, disjoint (or sufficiently disjoint) connected regions in the planeconnected regions in the plane
Applies also to “MST with Applies also to “MST with neighborhoods”, Steiner MSTN, and neighborhoods”, Steiner MSTN, and many related problemsmany related problems
PTAS = Polynomial-Time Approximation Scheme = (1+)-approx, any >0
[SODA’07]
1515
Background on TSPNBackground on TSPN
Generalizes 2D Euclidean TSP (thus, NP-Generalizes 2D Euclidean TSP (thus, NP-hard)hard)
Introduced by Introduced by [Arkin & Hassin, 1994][Arkin & Hassin, 1994]• ““obvious” heuristics do not work:obvious” heuristics do not work:
TSP approx on centroids (TSP approx on centroids (as representative pointsas representative points)) Greedy algorithms (Greedy algorithms (Prim- or Kruskal-likePrim- or Kruskal-like) )
• O(1)-approx, time O(n + k log k), for “nice” O(1)-approx, time O(n + k log k), for “nice” regions:regions:
Parallel unit segmentsParallel unit segments Unit disksUnit disks Translates of a polygon PTranslates of a polygon P
• Combination LemmaCombination Lemma
1616
General Connected RegionsGeneral Connected Regions
O(log k)-approxO(log k)-approx [Mata & M, SoCG’95][Mata & M, SoCG’95]
Use guillotine rectangular subdivisions, Use guillotine rectangular subdivisions, DPDP
((nonnon – disjoint: regions may overlap) – disjoint: regions may overlap)
O(nO(n55) time) time
[Mata & M, SoCG’95][Mata & M, SoCG’95]
O(nO(n22 log n) log n)[Gudmundsson & Levcopoulos, 1999][Gudmundsson & Levcopoulos, 1999]k = # regions n = # vertices of all regions
1717
O(1)-ApproximationsO(1)-Approximations Unit disks, parallel unit segments, translates of Unit disks, parallel unit segments, translates of PP
[Arkin & Hassin, 1993][Arkin & Hassin, 1993]
Connected regions of comparable sizeConnected regions of comparable size [Dumitrescu & M, SODA’01][Dumitrescu & M, SODA’01]
Disjoint Disjoint fatfat regions of regions of anyany size size [de Berg, [de Berg, Gudmundsson, Gudmundsson, Katz, Levcopoulos, Overmars, van Katz, Levcopoulos, Overmars, van der Stappen, ESA’02]der Stappen, ESA’02]
Discrete point sets within disjoint, fat, Discrete point sets within disjoint, fat, nonnon-convex -convex regionsregions
[Elbassioni, Fishkin, Mustafa, Sitters, [Elbassioni, Fishkin, Mustafa, Sitters, ICALP’05]ICALP’05]
Non Non - disjoint, convex, fat, comparable size- disjoint, convex, fat, comparable size [Elbassioni, Fishkin, Sitters, [Elbassioni, Fishkin, Sitters, ISAAC’06]ISAAC’06]
1818
PTAS: O(1+PTAS: O(1+)-)-ApproximationsApproximations
Disjoint (or nearly disjoint) Disjoint (or nearly disjoint) fatfat regions of comparable regions of comparable size size [Dumitrescu & M, SODA’01][Dumitrescu & M, SODA’01]
Point clusters within disjoint Point clusters within disjoint fatfat regions of regions of comparable size in Rcomparable size in Rdd
[Feremans, Grigoriev, [Feremans, Grigoriev, EWCG’05]EWCG’05]
NewNew: PTAS for disjoint (or nearly disjoint) : PTAS for disjoint (or nearly disjoint) fatfat regions of regions of arbitraryarbitrary sizes. sizes.
Def: P is fat if area( P ) = ( diam2(P) )Weaker notion than usual “fatness”
1919
Related Work: APX-hardnessRelated Work: APX-hardness General connected regions (overlapping):General connected regions (overlapping):
• No c-approx with c<391/390, unless P=NPNo c-approx with c<391/390, unless P=NP
[de Berg, Gudmundsson, Katz, [de Berg, Gudmundsson, Katz,
Levcopoulos, Levcopoulos, Overmars, van der Stappen, Overmars, van der Stappen,
ESA’02]ESA’02]
(from MinVertexCover)(from MinVertexCover)
• No c-approx with c<2, unless P No c-approx with c<2, unless P j TIME (n TIME (nO(log log n)O(log log n)))
[Safra, Schwartz, [Safra, Schwartz,
ESA’03]ESA’03](from Hypergraph VertexCover)(from Hypergraph VertexCover)
Line segments, comparable lengthLine segments, comparable length[Elbassioni, Fishkin, Sitters, ISAAC’06][Elbassioni, Fishkin, Sitters, ISAAC’06]
Pairs of points (disconnected)Pairs of points (disconnected) [Dror, Orlin, [Dror, Orlin, 2004]2004]
2020
Exact Poly-Time SolutionsExact Poly-Time Solutions
TSPN for a set of infinite lines in 2D:
Solved in O(n4 log n) time using Watchman Route solution [Dror, Efrat, Lubiw, M, STOC’03]
Is this the only nontrivial case exactly solvable in poly-time?
What about visiting planes in 3D?
2121
Recipe for PTASRecipe for PTAS
OPT Network with specialrecursive structure
increasing length by (1+) factor
Use dynamic programming to compute shortest network with the required structure (connectivity, Eulerian subgraph, etc)
Optimal network with special structure TSPN tour
Structure Theorem
What should the special recursive structure be?
2222
m-Guillotine Structurem-Guillotine Structure
Network edge set E is m-guillotine if it can be recursively partitioned by horiz/vertical cuts, each having small (O(m)) complexity wrt E
Example: 3-guillotineEach cut intersects E in at most 3 connected components
2323
Desired Recursive StructureDesired Recursive Structure
Constant (O(m))
information flow across boundary
Rectangular subproblem in dynamic program (recursion)
cut
2424
m-Guillotine Structure Theoremm-Guillotine Structure Theorem
Any set E of edges of length L can be made to be m-guillotine by adding length O(L/m) to E, for any positive integer m.
Proof is based on a simple charging scheme.
While this “scribble” may not be m-guillotine, it is “close”
in that it can be made m-guillotineby adding only (1/m)th of its length
2525
Possible Vertical CutsPossible Vertical Cuts
f(x)
xf(x) = length of m-bridge
= cost of construction
2626
Paying for the Bridge Paying for the Bridge Construction: The Chargeable Construction: The Chargeable
LengthLength
h(x) = chargeable length
xGreen portion: “m-dark”
2727
Charging SchemeCharging Scheme
2828
Charging SchemeCharging Scheme
2929
Charging SchemeCharging Scheme
x
y
f(x) = cost of construction of vert cut at x
h(y) = chargeable length of horiz cut at y
Red area = =
3030
Charging SchemeCharging Scheme
y
Blue area =
3131
Charging SchemeCharging Scheme
3232
SubproblemSubproblem
3333
Dynamic Program: Dynamic Program: Min Steiner TreeMin Steiner Tree
3434
Difficulty in Applying TSP Difficulty in Applying TSP Methods to TSPN / MSTNMethods to TSPN / MSTN
Consider a subproblem (rectangle):
3535
New StructureNew Structure
Build Build region-bridgesregion-bridges in order to encode in order to encode succinctly which regions are the succinctly which regions are the “responsibility” of a subproblem“responsibility” of a subproblem
Cannot afford to build Cannot afford to build mm-region-bridges-region-bridgesfor for m = O(1/m = O(1/),), constant wrt constant wrt nn..
But But cancan afford to build afford to build M-M-region-bridges, region-bridges, with with M=O((1/M=O((1/)log n))log n) and this is “just and this is “just right”, since the remaining right”, since the remaining MM bridges that bridges that are not part of the bridge can be specified are not part of the bridge can be specified in the subproblem: in the subproblem: 22MM = = 22O(log n)O(log n) is is poly(n)poly(n)
3636
Subproblem: A Window into Subproblem: A Window into OPTOPT
Region-Bridges
M=3
Bridgesm = 4
3737
Subproblem OptimizationSubproblem Optimization
Region-Bridges
Bridges
Specification of a subproblem:
1. Window W
2. 4 Bridges, 2m segs/side of W
3. 4 Region-Bridges, one bit per 8M non-bridged crossing region: Is the subproblem responsible to visit?
4. Protruding regions not in RW0
specified by 2 sequences per side
5. Connection pattern among the O(m) segs crossing into W m = 1/
M = (1/) log n
W
mO(m)
nO(1)
nO(1)+2O((1/)log n) = nO(m)
n4
mO(m)
Total # subproblems = nO(m)
and nO(m) choices for the best horiz/vertical cut, in DP optimization
3838
(m,M)-Guillotine Structure(m,M)-Guillotine Structure
Definition: Network edge set E is (m,M)-guillotine if it can be recursively partitioned by horiz/vertical cuts, each containing the “m-span” (bridge) of E and the “M-region-span” (region-bridge) of the set of regions.
3939
What the DP ComputesWhat the DP Computes
Minimum-length network that is
1. (m,M)-guillotine wrt window W0 and regions RW0
2. Connected
3. Containing an Eulerian spanning subnetwork
4. Spanning (visits all regions)
4040
Main Idea of PTASMain Idea of PTAS
Use m-guillotine PTAS method, with new structure to address difficulty with TSPN
OPT (m,M)-guillotine networkwith special structure
increasing length by (1+) factor
Use dynamic programming to compute shortest (m,M)-guillotine
network with the required structure (connectivity, Eulerian subgraph, etc)
Optimal (m,M)-guillotine network with structure TSPN tour
Structure Theorem
4141
New Structure TheoremNew Structure Theorem
Theorem: Let E be a connected set of edges of length L, spanning all regions. Then, for any positive integers m and M, there is a superset, E’, of E, of length at most L + (sqrt(2)/m) L + (sqrt(2)/M) (RW0
).
Key Lemma: L* C (RW0) / log n
We pick M = (1/) log n , and m = 1/
Then, by the Key Lemma, we see that T* can be converted to be (m,M)-guillotine, adding length O(T*/)
Sum of region diameters
4242
The sum of the perimeters of a set of n disjoint fat regions that are visited by a path of length L is at most O(L log n)
Uses PACKING argument
Ex: Bound is tight
Key Geometric Observation
4343
Key Lemma: Lower Bound on Key Lemma: Lower Bound on OPTOPT
Key Lemma: L* C (RW0) / log n
Relates tour length of OPT, L*, to sum of diameters, (RW0)
Ex: Tight
L* = ( (RW0) / log
n)
4444
Proof of Key LemmaProof of Key Lemma
Let Ai = area( (T* + B(di )) W0 )Minkowski sum with ball of radius di
Cluster regions by size (diameter), into log (n/) classes
There are ni regions with diameter in range (di/2,di)
Area (packing) argument:
Claim: Ai 2di L*
By fatness, Ai C0 di2 ni , for some constant C0
Thus, by Claim below, C0 di2 ni 2di L*, or L* (C0/2) di
ni
Summing on i, we get L* C (RW0) / log n
This is where fatness and disjointness are
used!
4545
Bucketing Regions by SizeBucketing Regions by Size
Consider each minimal covering AAB, Consider each minimal covering AAB, WW00, snapped to grid, snapped to grid
RRWW00 = regions fully within = regions fully within WW00
PartitionPartition RRWW00 into into
K=O(log(D/K=O(log(D/))=O(log(n/))=O(log(n/)))) classes classes according to the diameters falling in according to the diameters falling in ranges:ranges:
(only O(n4) of them)
(each has diameter O(D))
(0,) (,2) (2,4) (4,8) … (2i-1,2i) … (2K-2,2K-1)
di=2i = D/n
Class i
Can shrink to single grid points, by Grid Lemma
4646
Proof of ClaimProof of Claim
Claim: Ai = area( (T* + B(di )) W0 ) 2di L*Proof:
area( T* + B(di ) ) 2di L* + di2
That portion within W0 does not include (at least) the area, di
2
W0=BB(T*)
Minkowski sum with ball of radius di
4747
Main ResultMain Result
Theorem: TSPN for disjoint fat regions has a PTAS.
PTAS also for the case of nondisjoint regions, if there are disjoint disks 1,…,n, with i Pi and diam(Pi)/diam(i) < C.Improve running time to O(nC), with C
independent of 1/: use grid-rounded guillotine subdivisions.
¿
4848
Generalizations/ExtensionsGeneralizations/Extensions
Disconnected regions: sets of Disconnected regions: sets of points/regions that are within a points/regions that are within a “nice” set of regions“nice” set of regions
k-TSPNk-TSPN Steiner MST with NeighborhoodsSteiner MST with Neighborhoods MST with Neighborhoods (MSTN)MST with Neighborhoods (MSTN) k-MSTNk-MSTN
4949
Approximation of 2D TSPN: Approximation of 2D TSPN: Connected RegionsConnected Regions Fat Regions non-Fat Regions
Comparablesizes
Arbitrarysize
Disjoint
Non-Disjoint
Disjoint
Non-Disjoint
Disjoint
Non-Disjoint
Disjoint
Non-Disjoint
PTAS
O(1)
O(1)
O(1)O(1), PTAS?
PTASNew
O(log n)
O(log n)
APX-hard
O(log n)
O(1)
APX-hard
Conjecture: PTAS for all
Conjecture: O(1) for all
PTASNewest
Newest
5050
Laundry List of ProblemsLaundry List of Problems
Know PTASKnow PTAS• TSP, k-TSP, Steiner TSP, k-TSP, Steiner
MST, k-MSTMST, k-MST• Red-blue separationRed-blue separation• Min-weight convex Min-weight convex
subdivisionsubdivision• TSPN, fat regionsTSPN, fat regions• Orienteering Orienteering
problemproblem• Lawnmowing Lawnmowing
problemproblem
OPEN: PTAS?OPEN: PTAS?• TSPN, disjoint regions in 2DTSPN, disjoint regions in 2D• Vehicle routing; min-weight Vehicle routing; min-weight
cover with k-tourscover with k-tours• Deg-3, deg-4 spanning Deg-3, deg-4 spanning
treestrees• Min-weight triangulationMin-weight triangulation• Watchman route problemWatchman route problem• Min-area triangulated Min-area triangulated
surface; special case: surface; special case: terrainterrain