• Keine Ergebnisse gefunden

Local Search for Hitting Set and Set Cover

N/A
N/A
Protected

Academic year: 2021

Aktie "Local Search for Hitting Set and Set Cover"

Copied!
62
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Local Search for Hitting Set and Set Cover

S´andor Kisfaludi-Bak

Computaional Geometry Summer semester 2020

(2)

Overview

• r-divisions in planar graphs

(3)

Overview

• r-divisions in planar graphs

• Hitting set and set cover via local search

(4)

Overview

• r-divisions in planar graphs

• Hitting set and set cover via local search

• The locality condition

(5)

Overview

• r-divisions in planar graphs

• Hitting set and set cover via local search

• Locality condition for halfspaces

• The locality condition

(6)

Balanced separator for a subset

Observation. Given planar graph G = (V, E) and a vertex set W ⊂ V , G has separator of size O(√

n) s.t. each side has

≤ 36/37|W | vertices from W.

Proof.

Start proof with smallest square that encloses ≥ |W|/37 disks from W .

(7)

r -divisions

Vi

Theorem (Frederickson 1987) For any r ∈ Z+ and planar graph G, there are O(n/r) vertex sets V1, V2, . . . satisfying

• every edge is induced by some Vi

• |Vi| ≤ r

• small boundaries: ∂Vi = Vi ∩ (S

j6=i Vj), |∂Vi| = O(√ r)

• small total boundary set: P

i |∂Vi| = O(n/√ r)

(8)

Computing an r-division

Proof sketch. Use planar separator theorem.

Recursively divide until size ≤ r

X := union of separators throughout.

Vi: final group+neighborhood

group size Xgroup number Xedge covering X

(9)

Computing an r-division

Proof sketch. Use planar separator theorem.

Recursively divide until size ≤ r

X := union of separators throughout.

Vi: final group+neighborhood

group size Xgroup number Xedge covering X

(10)

Computing an r-division

Proof sketch. Use planar separator theorem.

Recursively divide until size ≤ r

X := union of separators throughout.

Vi: final group+neighborhood

group size Xgroup number Xedge covering X

|W| > r

(11)

Computing an r-division

Proof sketch. Use planar separator theorem.

Recursively divide until size ≤ r

X := union of separators throughout.

Vi: final group+neighborhood

group size Xgroup number Xedge covering X

|W| > r

(12)

Computing an r-division

Proof sketch. Use planar separator theorem.

Recursively divide until size ≤ r

X := union of separators throughout.

Vi: final group+neighborhood

group size Xgroup number Xedge covering X

Still need ∂W := W ∩ X is small!

Idea: if ∂W > cp

|W|, separate W with balance wrt. ∂W .

|W| > r

(13)

Hitting set via local search

(Mustafa–Ray; Chan–Har-Peled 2008)

(14)

Hitting set for halfspaces

Hitting set

Given a set P ⊂ Rd of points and a set D ⊂ 2Rd of ranges, find minimum size Q ⊂ P such that all ranges are “hit”: for any D ∈ D, D ∩ Q 6= ∅.

(15)

Hitting set for halfspaces

Hitting set

Given a set P ⊂ Rd of points and a set D ⊂ 2Rd of ranges, find minimum size Q ⊂ P such that all ranges are “hit”: for any D ∈ D, D ∩ Q 6= ∅.

E.g.: hitting disks, hitting triangles, hitting halfspaces in R3

(16)

Hitting set for halfspaces

Hitting set

Given a set P ⊂ Rd of points and a set D ⊂ 2Rd of ranges, find minimum size Q ⊂ P such that all ranges are “hit”: for any D ∈ D, D ∩ Q 6= ∅.

E.g.: hitting disks, hitting triangles, hitting halfspaces in R3 APX-hard even for fat triangles

v

For each disk D ∈ D, take ball B touching v and B ∩ H = D

Inversion with center v maps each ball to halfspace.

Point-disk containment is preserved H

(17)

Local search for hitting set / set cover

Dualized hitting set: find minimum set of halfspaces to hit all points = Geometric Set Cover!

(18)

Local search for hitting set / set cover

Dualized hitting set: find minimum set of halfspaces to hit all points = Geometric Set Cover!

Local search:

Given a feasible hitting set Q, a valid local search step removes k elements of Q and adds k − 1 other elements so that the

result is still a feasible hitting set.

A feasible hitting set Q is k-locally optimal if there are no valid local search steps.

(19)

Local search for hitting set / set cover

Dualized hitting set: find minimum set of halfspaces to hit all points = Geometric Set Cover!

Local search:

Given a feasible hitting set Q, a valid local search step removes k elements of Q and adds k − 1 other elements so that the

result is still a feasible hitting set.

A feasible hitting set Q is k-locally optimal if there are no valid local search steps.

n = |P|, m = |Q|

Running time of k-local search is O(n2k+1m) (or better)

(20)

Local search for hitting set / set cover

Dualized hitting set: find minimum set of halfspaces to hit all points = Geometric Set Cover!

Local search:

Given a feasible hitting set Q, a valid local search step removes k elements of Q and adds k − 1 other elements so that the

result is still a feasible hitting set.

A feasible hitting set Q is k-locally optimal if there are no valid local search steps.

n = |P|, m = |Q|

Running time of k-local search is O(n2k+1m) (or better)

Theorem (Mustafa–Ray 2010).There is a c > 0 such that the (c/ε2)-locally optimal hitting set for halfspaces in R3 is a (1 + ε)-approximation of the minimum hitting set.

(21)

The locality condition

(22)

Locality condition

Definition. A range space (P, D) has the locality condition if for any pair of disjoint sets R, B ⊂ P there is a planar bipartite graph G bewteen R and B s.t. for any D ∈ D intersecting

both R and B we have some uv ∈ E(G) with u ∈ D ∩ R and v ∈ D ∩ R.

(23)

Locality condition

Definition. A range space (P, D) has the locality condition if for any pair of disjoint sets R, B ⊂ P there is a planar bipartite graph G bewteen R and B s.t. for any D ∈ D intersecting

both R and B we have some uv ∈ E(G) with u ∈ D ∩ R and v ∈ D ∩ R.

Example: disks in the plane

G: subgraph of Delaunay triangulation of P 0 = R ∪ B B

R

(24)

Locality condition

Definition. A range space (P, D) has the locality condition if for any pair of disjoint sets R, B ⊂ P there is a planar bipartite graph G bewteen R and B s.t. for any D ∈ D intersecting

both R and B we have some uv ∈ E(G) with u ∈ D ∩ R and v ∈ D ∩ R.

Example: disks in the plane

G: subgraph of Delaunay triangulation of P 0 = R ∪ B

G

B

R ⇒

For u ∈ D ∩ R and v ∈ D ∩ B, there is a conencting path in

DT(D ∩ P 0), which contains red-blue edge

Claim. For any disk D ⊂ R2, DT (P0)|P0∩D is connected.

(25)

Locality implies larger neighborhoods

Theorem. (P, D) is range space satisfying locality condition, R is optimal hitting set, B is k-locally optimal, and R ∩ B = ∅.

Then there is planar G = (R, B, E) s.t. for all B0 ⊂ B with

|B0| ≤ k, we have large neighborhood: |N(B0)| ≥ |B0|

(26)

Locality implies larger neighborhoods

Theorem. (P, D) is range space satisfying locality condition, R is optimal hitting set, B is k-locally optimal, and R ∩ B = ∅.

Then there is planar G = (R, B, E) s.t. for all B0 ⊂ B with

|B0| ≤ k, we have large neighborhood: |N(B0)| ≥ |B0| Proof. B and R are both hitting sets

⇒ every range has ≥ 1 pt from both

If B0 ⊂ B, then (B \ B0) ∪ N(B0) is hitting:

if only B0 hits D from B, then some b ∈ B0 has red neighbor hitting D,

otherwise B \ B0 hits D.

(27)

Locality implies larger neighborhoods

Theorem. (P, D) is range space satisfying locality condition, R is optimal hitting set, B is k-locally optimal, and R ∩ B = ∅.

Then there is planar G = (R, B, E) s.t. for all B0 ⊂ B with

|B0| ≤ k, we have large neighborhood: |N(B0)| ≥ |B0| Proof. B and R are both hitting sets

⇒ every range has ≥ 1 pt from both

If B0 ⊂ B, then (B \ B0) ∪ N(B0) is hitting:

if only B0 hits D from B, then some b ∈ B0 has red neighbor hitting D,

otherwise B \ B0 hits D.

But for |B0| ≤ k there is no valid local search step.

(28)

Locality implies larger neighborhoods

Theorem. (P, D) is range space satisfying locality condition, R is optimal hitting set, B is k-locally optimal, and R ∩ B = ∅.

Then there is planar G = (R, B, E) s.t. for all B0 ⊂ B with

|B0| ≤ k, we have large neighborhood: |N(B0)| ≥ |B0| Proof. B and R are both hitting sets

⇒ every range has ≥ 1 pt from both

If B0 ⊂ B, then (B \ B0) ∪ N(B0) is hitting:

if only B0 hits D from B, then some b ∈ B0 has red neighbor hitting D,

otherwise B \ B0 hits D.

But for |B0| ≤ k there is no valid local search step.

If R ∩ B = I 6= ∅, then let D0 = ranges not hit by I. Use the same on (P \ I, D0). If B0 is (1 + ε)-approx on (P \ I, D0) → B0 ∪ I is (1 + ε)-approx on (P, D)

(29)

B has large neighborhoods only if relatively small

Theorem. Let G = (R, B, E) bipartite planar, s.t.

for every B0 ⊂ B of size |B0| ≤ k, |N(B0)| ≥ |B0|.

Then |B| ≤ (1 + c/√

k)|R| for some constant c.

(30)

B has large neighborhoods only if relatively small

Theorem. Let G = (R, B, E) bipartite planar, s.t.

for every B0 ⊂ B of size |B0| ≤ k, |N(B0)| ≥ |B0|.

Then |B| ≤ (1 + c/√

k)|R| for some constant c.

Proof. r := |R|, b := |B|,

Use k-division of G. → V1, V2, . . . Vi has boundary Vi ∩ (S

j6=i Vj) and interior Vi \ (S

j6=i Vj).

ri, bi , riint, binti : # red/blue in Vi in boundary and interior.

(31)

B has large neighborhoods only if relatively small

Theorem. Let G = (R, B, E) bipartite planar, s.t.

for every B0 ⊂ B of size |B0| ≤ k, |N(B0)| ≥ |B0|.

Then |B| ≤ (1 + c/√

k)|R| for some constant c.

Proof. r := |R|, b := |B|,

Use k-division of G. → V1, V2, . . . Vi has boundary Vi ∩ (S

j6=i Vj) and interior Vi \ (S

j6=i Vj).

ri, bi , riint, binti : # red/blue in Vi in boundary and interior.

• P

i(ri + bi ) ≤ γ(r + b)/√

k (γ = const) (by k-division)

(32)

B has large neighborhoods only if relatively small

Theorem. Let G = (R, B, E) bipartite planar, s.t.

for every B0 ⊂ B of size |B0| ≤ k, |N(B0)| ≥ |B0|.

Then |B| ≤ (1 + c/√

k)|R| for some constant c.

Proof. r := |R|, b := |B|,

Use k-division of G. → V1, V2, . . . Vi has boundary Vi ∩ (S

j6=i Vj) and interior Vi \ (S

j6=i Vj).

ri, bi , riint, binti : # red/blue in Vi in boundary and interior.

• P

i(ri + bi ) ≤ γ(r + b)/√

k (γ = const) (by k-division)

• binti ≤ riint + ri (binti ≤ k so it has large neighborhood) binti + bi ≤ riint + ri + bi

b ≤ X

i

(binti +bi ) ≤ X

i

riint+X

i

(ri+bi ) ≤ r+γ(r+b)/

√ k

(33)

b ≤ r + γ(r + b)/

√ k If k ≥ 4γ2, then

b ≤ r 1 + γ/√ k 1 − γ/√

k ≤ · · · ≤ r(1 + c/

√ k)

Locality condition wrap-up

(34)

b ≤ r + γ(r + b)/

√ k If k ≥ 4γ2, then

b ≤ r 1 + γ/√ k 1 − γ/√

k ≤ · · · ≤ r(1 + c/

√ k)

Locality condition wrap-up

Theorem. Locality condition implies PTAS for hitting set with running time nO(1/ε2).

Theorem. Hitting disks with points in R2 has a PTAS with running time nO(1/ε2).

(35)

Locality condition for half-spaces

(36)

Radon’s theorem

Theorem (Radon, 1921) Any set of d + 2 points in Rd can be partitioned into two subsets whose convex hulls intersect.

(37)

Radon’s theorem

Theorem (Radon, 1921) Any set of d + 2 points in Rd can be partitioned into two subsets whose convex hulls intersect.

Proof. Let P = {p1, . . . , pd+2}.

There exsists λ1, . . . , λd+2 not all 0 s.t.

d+2

X

i=1

λipi = 0 and

d+2

X

i=1

λi = 0.

Let I: indices i where λi > 0. (denote remaining indices by J) Then P

i∈I λi = − P

j∈J λj =: µ, thus

p0 := X

i∈I

λi

µ pi = X

j∈J

−λj

µ pj ∈ conv(P |I) ∩ conv(P |J)

(38)

Locality for half-spaces: graph and embedding

Recall: R and B disjoint hitting sets for a set D of half-spaces.

Need bipartite planar graph G on R ∪ B, s.t. for any D ∈ D containing both red and blue, there is an edge induced.

(39)

Locality for half-spaces: graph and embedding

Recall: R and B disjoint hitting sets for a set D of half-spaces.

Need bipartite planar graph G on R ∪ B, s.t. for any D ∈ D containing both red and blue, there is an edge induced.

Guess o ∈ P from hitting set, remove D ∈ D that contains o.

⇒ wlog. o outside S

D∈D D

(40)

Locality for half-spaces: graph and embedding

Recall: R and B disjoint hitting sets for a set D of half-spaces.

Need bipartite planar graph G on R ∪ B, s.t. for any D ∈ D containing both red and blue, there is an edge induced.

Guess o ∈ P from hitting set, remove D ∈ D that contains o.

⇒ wlog. o outside S

D∈D D

Two stages:

• Add all red-blue edges of C := ∂conv(R ∪ B) to G, triangulate faces of C

• For p ∈ (R ∪ B) \ C, let p0 be point where ray(o, p) exits C Define edges of p via p0 in a triangle of C.

⇒ results in planar graph on C

(41)

Defining G in a bichromatic triangle

T is a triangle of C.

If T has 1 red and 2 blue corners (1 blue 2 red symmetric)

T

(42)

Defining G in a bichromatic triangle

T is a triangle of C.

If T has 1 red and 2 blue corners (1 blue 2 red symmetric)

T Connect each p0 to all

differently colored corners

(43)

Defining G in a bichromatic triangle

T is a triangle of C.

If T has 1 red and 2 blue corners (1 blue 2 red symmetric)

T Connect each p0 to all

differently colored corners

(44)

Defining G in a bichromatic triangle

T is a triangle of C.

If T has 1 red and 2 blue corners (1 blue 2 red symmetric)

T Connect each p0 to all

differently colored corners

(45)

Defining G in a bichromatic triangle

T is a triangle of C.

If T has 1 red and 2 blue corners (1 blue 2 red symmetric)

T Connect each p0 to all

differently colored corners

(46)

Defining G in a bichromatic triangle

T is a triangle of C.

If T has 1 red and 2 blue corners (1 blue 2 red symmetric)

T Connect each p0 to all

differently colored corners

(47)

Defining G in a monochromatic triangle

T

(48)

Defining G in a monochromatic triangle

T

BT := blue pts mapped to T

≤ 1 pt in BT connected to c1, c2, c3; rest connected to two corners

(49)

Defining G in a monochromatic triangle

T

BT := blue pts mapped to T

≤ 1 pt in BT connected to c1, c2, c3; rest connected to two corners

(50)

Defining G in a monochromatic triangle

T

BT := blue pts mapped to T

≤ 1 pt in BT connected to c1, c2, c3; rest connected to two corners

(51)

Defining G in a monochromatic triangle

T

BT := blue pts mapped to T

≤ 1 pt in BT connected to c1, c2, c3; rest connected to two corners

How to select neighboring corners for each b ∈ BT ?

If there is a corner c s.t. there is no halfspace h ⊂ R3

containing only b, c among BT ∪ {c1, c2, c3, o}, then connect b0 to other two corners

c1

c2 c3

(52)

Defining G in a monochromatic triangle

T

BT := blue pts mapped to T

≤ 1 pt in BT connected to c1, c2, c3; rest connected to two corners

How to select neighboring corners for each b ∈ BT ?

If there is a corner c s.t. there is no halfspace h ⊂ R3

containing only b, c among BT ∪ {c1, c2, c3, o}, then connect b0 to other two corners

c1

c2 c3

Claim. For all but one b ∈ BT there is such a corner.

(53)

Corner connections via Radon’s thm

Proof. by contradiction:

assume b1, b2 ∈ BT have no good corner.

There are halfspaces containing exactly

bicj (i = 1, 2; j = 1, 2, 3) among F := {b1, b2, c1, c2, c3}

Claim. For all but one b ∈ BT there is a corner c s.t. there is no halfspace containing just b, c among BT ∪ {o, c1, c2, c3}.

(54)

Corner connections via Radon’s thm

Proof. by contradiction:

assume b1, b2 ∈ BT have no good corner.

There are halfspaces containing exactly

bicj (i = 1, 2; j = 1, 2, 3) among F := {b1, b2, c1, c2, c3}

Claim. For all but one b ∈ BT there is a corner c s.t. there is no halfspace containing just b, c among BT ∪ {o, c1, c2, c3}.

There is plane separating b1, b2 from corners

⇒ wlog. conv(b1, c1) ∩ conv(b2, c2, c3) 6= ∅.

F in convex position. Radon thm gives 2:3 partition of F.

(55)

Corner connections via Radon’s thm

Proof. by contradiction:

assume b1, b2 ∈ BT have no good corner.

There are halfspaces containing exactly

bicj (i = 1, 2; j = 1, 2, 3) among F := {b1, b2, c1, c2, c3}

Claim. For all but one b ∈ BT there is a corner c s.t. there is no halfspace containing just b, c among BT ∪ {o, c1, c2, c3}.

There is plane separating b1, b2 from corners

⇒ wlog. conv(b1, c1) ∩ conv(b2, c2, c3) 6= ∅.

⇒ there is no halfspace containg exactly b1, c1

F in convex position. Radon thm gives 2:3 partition of F.

(56)

G construction correctness

G is planar bipartite.

Need: any halfspace with red+blue induces some edge.

X

Lemma. Halfspaces have the locality property, and it is witnessed by G.

(57)

G construction correctness

G is planar bipartite.

Need: any halfspace with red+blue induces some edge.

X

• If D ∈ D contains red and blue from C, then there is bichromatic triangle X

Lemma. Halfspaces have the locality property, and it is witnessed by G.

(58)

G construction correctness

G is planar bipartite.

Need: any halfspace with red+blue induces some edge.

X

• If D ∈ D contains red and blue from C, then there is bichromatic triangle X

• Let D0 ⊂ D be halfspace parallel to ∂D, smallest that contains both red and blue.

D0 has 1 blue b on its boundary.

o 6∈ D ⇒ o 6∈ D0

⇒ D0 has ≥ 1 corner c of the traingle of b0.

Lemma. Halfspaces have the locality property, and it is witnessed by G.

(59)

G construction correctness

G is planar bipartite.

Need: any halfspace with red+blue induces some edge.

X

• If D ∈ D contains red and blue from C, then there is bichromatic triangle X

• Let D0 ⊂ D be halfspace parallel to ∂D, smallest that contains both red and blue.

D0 has 1 blue b on its boundary.

o 6∈ D ⇒ o 6∈ D0

⇒ D0 has ≥ 1 corner c of the traingle of b0.

If D0 contains c, c0, then at least one connects to b.

If D0 contains just c, then bc ∈ E(G) by def of G.

Lemma. Halfspaces have the locality property, and it is witnessed by G.

(60)

Halfspace wrap-up

Theorem. (Mustafa–Ray 2010) Hitting halfspaces with points in R3 has a PTAS with running time nO(1/ε2).

(61)

Halfspace wrap-up

Theorem. (Mustafa–Ray 2010) Hitting halfspaces with points in R3 has a PTAS with running time nO(1/ε2).

• APX-hard in R≥4

• Locality condition can be proved for several obejct types in R2, for hitting/covering/packing

Most general: hitting/covering/packing non-piercing objects

• Analysis is tight: k = o(1/ε2) local search doesn’t work

• general lower bounds of nΩ(1/ε)

(62)

Halfspace wrap-up

Theorem. (Mustafa–Ray 2010) Hitting halfspaces with points in R3 has a PTAS with running time nO(1/ε2).

• APX-hard in R≥4

• Locality condition can be proved for several obejct types in R2, for hitting/covering/packing

Most general: hitting/covering/packing non-piercing objects

• Analysis is tight: k = o(1/ε2) local search doesn’t work

• general lower bounds of nΩ(1/ε) Exact has matching lower bound.

Theorem. Hitting set of size k for halfspaces with points in R3 can be computed in time nO(

k).

In R≥4, there is nΩ(k) lower bound.

Referenzen

ÄHNLICHE DOKUMENTE

Key words: Allen-Cahn systems, non-local constraints, variational inequality, vector-valued obstacle problems, primal-dual active set method, semi-smooth New- ton method.. AMS

Figure 1: Overview map of the study area showing available multibeam data coverage from the Global Multi-Resolution Topography Synthesis (GMRT), National Centers

der Universit at M unchen Set

For each optimal center o ∈ O, let s o denote its closest heuristic center in S. Note that each optimal center is captured by exactly one heuristic center, but each heuristic center

Consequently, the number of possible results when drawing k of n balls with replacement and not taking the order into account coincides with.. #{(k

During the second phase of the Uruguay Round, the EU joined forces with key developing countries, notably Brazil and India, in trying to fashion a more conservative format for the

Cohomology Constructivism Relativization by internalization Internalizing higher direct images Flabby objects In the effective topos.. How not to

119841 Local controllability and infinitesimal generators of semi-groups of set-valued maps (to appear). [to appear] On the local