Exact Algorithms for Hard Geometric Problems Using Geometric Separators
subexponential subexponential algorithms for algorithm for planar graphs subexponential Euclidean TSP algorithms for disk graphs
ETH-based lower bound for Euclidean TSP
Mark de Berg (TU Eindhoven)
TU e
Old and New (Geometric) Separator Theorems
subexponential subexponential algorithms for algorithm for planar graphs subexponential Euclidean TSP algorithms for disk graphs
ETH-based lower bound for Euclidean TSP
Mark de Berg (TU Eindhoven)
TU e Hardness: A Traditional Algorithmic View
pspace
np
p
Assumption: p 6= np
• P = tractable • np-hard = untractable
TU e Hardness: A Traditional Algorithmic View
Algorithmic approach to problem solving
pspace • Determine np-hardness by reduction from known np-hard problem np • give approximation algorithm
p or
• try to give fastest possible Assumption: p 6= np polynomial-time algorithm • sometimes lower bounds • P = tractable • np-hard = untractable
TU e A More Refined View
Algorithmic approach to problem solving
pspace • Determine np-hardness by reduction from known np-hard problem np • give approximation algorithm • study parameterized complexity • study subexponential algorithms p or
• try to give fastest possible Assumption: p 6= np polynomial-time algorithm • sometimes lower bounds • P = tractable • np-hard = untractable and relate problems to each other through conditional lower bounds TU e Talk Overview
subexponential subexponential algorithms for algorithm for planar graphs subexponential Euclidean TSP algorithms for disk graphs
ETH-based lower bound for Euclidean TSP
TU e TALK OVERVIEW
subexponential algorithms for planar graphs ETH-based lower bound for subexponential Euclidean TSP algorithms for subexponential disk graphs algorithm for Euclidean TSP subexponential subexponential algorithms for algorithm for planar graphs subexponential Euclidean TSP algorithms for disk graphs
ETH-based lower bound for Euclidean TSP
TU e Subexponential algorithms
Subexponential algorithms: running time 2o(n) √ √ • Typical examples: 2O( n) or nO( n) or 2O(n/ log n)
TU e Subexponential algorithms
Subexponential algorithms: running time 2o(n) √ √ • Typical examples: 2O( n) or nO( n) or 2O(n/ log n)
Do np-hard problems have subexponential algorithms? • 3-SAT: Is given 3-CNF formula witn n variables satisfiable?
(x1 ∨ x2 ∨ x5) ∧ (x3 ∨ x4 ∨ x6) ∧ (x2 ∨ x3 ∨ x5)
TU e Subexponential algorithms
Subexponential algorithms: running time 2o(n) √ √ • Typical examples: 2O( n) or nO( n) or 2O(n/ log n)
Do np-hard problems have subexponential algorithms? • 3-SAT: Is given 3-CNF formula witn n variables satisfiable?
(x1 ∨ x2 ∨ x5) ∧ (x3 ∨ x4 ∨ x6) ∧ (x2 ∨ x3 ∨ x5)
Exponential-Time Hypothesis (ETH) (Impagliazzo, Paturi and Zane 2001) There is no sub-exponential algorithm for 3-SAT, that is, 3-SAT cannot be solved in 2o(n) time.
What about other np-hard problems? TU e Three classic np-hard graph problems
Input: graph G = (V,E) with n vertices
Independent Set • Find largest set I ⊆ V such that no two vertices in I are connected by an edge.
Vertex Cover • Find smallest set C ⊆ V that contains at least one endpoint of every edge in E.
Dominating Set • Find smallest D ⊆ V such that for each v ∈ V either v or one of its neighbors is in D.
TU e Three classic np-hard graph problems
Input: graph G = (V,E) with n vertices
Independent Set • Find largest set I ⊆ V such that no two vertices in I are connected by an edge.
Vertex Cover • Find smallest set C ⊆ V that contains at least one endpoint of every edge in E.
Dominating Set • Find smallest D ⊆ V such that for each v ∈ V either v or one of its neighbors is in D.
TU e Three classic np-hard graph problems
Input: graph G = (V,E) with n vertices
Independent Set • Find largest set I ⊆ V such that no two vertices in I are connected by an edge.
Vertex Cover • Find smallest set C ⊆ V that contains at least one endpoint of every edge in E.
Dominating Set • Find smallest D ⊆ V such that for each v ∈ V either v or one of its neighbors is in D.
TU e Three classic np-hard graph problems
Input: graph G = (V,E) with n vertices
Independent Set • Find largest set I ⊆ V such that no two vertices in I are connected by an edge. complement Vertex Cover • Find smallest set C ⊆ V that contains at least one endpoint of every edge in E.
Dominating Set • Find smallest D ⊆ V such that for each v ∈ V either v or one of its neighbors is in D.
TU e Three classic np-hard graph problems
Input: graph G = (V,E) with n vertices
Independent Set • Find largest set I ⊆ V such that no two vertices in I are connected by an edge. complement Vertex Cover • Find smallest set C ⊆ V that contains at least one endpoint of every edge in E.
Dominating Set • Find smallest D ⊆ V such that for each v ∈ V either v or one of its neighbors is in D.
TU e Three classic np-hard graph problems
Are there subexponential algorithms for these classic graph problems?
TU e Three classic np-hard graph problems
Are there subexponential algorithms for these classic graph problems?
Theorem. Independent Set, Vertex Cover, and Dominating Set cannot be solved in 2o(n) time, under ETH.
TU e Three classic np-hard graph problems
Are there subexponential algorithms for these classic graph problems?
Theorem. Independent Set, Vertex Cover, and Dominating Set cannot be solved in 2o(n) time, under ETH.
but we can get subexponential algorithms on planar graphs
TU e Planar graphs
Planar graphs: graphs that can be drawn without crossing edges
TU e Planar graphs
Planar graphs: graphs that can be drawn without crossing edges
Planar Separator Theorem (Lipton,Tarjan 1979)
TU e Planar graphs
Planar graphs: graphs that can be drawn without crossing edges
Planar Separator Theorem (Lipton,Tarjan 1979) For any√ planar graph G = (V,E) there is a separator S ⊂ V of size O( n) such that V \ S can be partitioned into subsets A and 2 B, each of size at most 3 n and with no edges between them.
TU e Planar graphs
Planar graphs: graphs that can be drawn without crossing edges S
A B Planar Separator Theorem (Lipton,Tarjan 1979) For any√ planar graph G = (V,E) there is a separator S ⊂ V of size O( n) such that V \ S can be partitioned into subsets A and 2 B, each of size at most 3 n and with no edges between them.
TU e Planar graphs
Planar graphs: graphs that can be drawn without crossing edges S
A B Planar Separator Theorem (Lipton,Tarjan 1979) For any√ planar graph G = (V,E) there is a separator S ⊂ V of size O( n) such that V \ S can be partitioned into subsets A and 2 B, each of size at most 3 n and with no edges between them. Such a (2/3)-balanced separator can be computed in O(n) time. TU e Subexponential algorithms on planar graphs
√ Theorem. Independent Set can be solved in 2O( n) time in planar graphs.
TU e Subexponential algorithms on planar graphs
√ Theorem. Independent Set can be solved in 2O( n) time in planar graphs.
√ 1. Compute (2/3)-balanced separator S of size O( n). 2. For each independent set IS ⊆ S (including empty set) do (a) Recursively find max independent set IA for A \{neighbors of IS} (b) Recursively find max independent set IB for B \{neighbors of IS} (c) I(S) := IS ∪ IA ∪ IB 3. Return the largest of the sets I(S) found in Step 2. TU e Subexponential algorithms on planar graphs
√ Theorem. Independent Set can be solved in 2O( n) time in planar graphs.
√ 1. Compute (2/3)-balanced separator S of size O( n). 2. For each independent set IS ⊆ S (including empty set) do (a) Recursively find max independent set IA for A \{neighbors of IS} (b) Recursively find max independent set IB for B \{neighbors of IS} (c) I(S) := IS ∪ IA ∪ IB 3. Return the largest of the sets I(S) found in Step 2. TU e Subexponential algorithms on planar graphs
√ Theorem. Independent Set can be solved in 2O( n) time in planar graphs.
√ 1. Compute (2/3)-balanced separator S of size O( n). 2. For each independent set IS ⊆ S (including empty set) do (a) Recursively find max independent set IA for A \{neighbors of IS} (b) Recursively find max independent set IB for B \{neighbors of IS} (c) I(S) := IS ∪ IA ∪ IB 3. Return the largest of the sets I(S) found in Step 2. TU e Subexponential algorithms on planar graphs
√ Theorem. Independent Set can be solved in 2O( n) time in planar graphs.
√ 1. Compute (2/3)-balanced separator S of size O( n). 2. For each independent set IS ⊆ S (including empty set) do (a) Recursively find max independent set IA for A \{neighbors of IS} (b) Recursively find max independent set IB for B \{neighbors of IS} (c) I(S) := IS ∪ IA ∪ IB 3. Return the largest of the sets I(S) found in Step 2. TU e Subexponential algorithms on planar graphs
√ Theorem. Independent Set can be solved in 2O( n) time in planar graphs.
√ 1. Compute (2/3)-balanced separator S of size O( n). 2. For each independent set IS ⊆ S (including empty set) do (a) Recursively find max independent set IA for A \{neighbors of IS} (b) Recursively find max independent set IB for B \{neighbors of IS} (c) I(S) := IS ∪ IA ∪ IB 3. Return the largest of the sets I(S) found in Step 2. TU e Subexponential algorithms on planar graphs
√ Theorem. Independent Set can be solved in 2O( n) time in planar graphs.
√ 1. Compute (2/3)-balanced separator S of size O( n). 2. For each independent set IS ⊆ S (including empty set) do (a) Recursively find max independent set IA for A \{neighbors of IS} (b) Recursively find max independent set IB for B \{neighbors of IS} (c) I(S) := IS ∪ IA ∪ IB 3. Return the largest of the sets I(S) found in Step 2. TU e Subexponential algorithms on planar graphs
√ Theorem. Independent Set can be solved in 2O( n) time in planar graphs.
√ 1. Compute (2/3)-balanced separator S of size O( n). 2. For each independent set IS ⊆ S (including empty set) do (a) Recursively find max independent set IA for A \{neighbors of IS} (b) Recursively find max independent set IB for B \{neighbors of IS} (c) I(S) := IS ∪ IA ∪ IB 3. Return the largest of the sets I(S) found in Step 2. TU e Subexponential algorithms on planar graphs
√ Theorem. Independent Set can be solved in 2O( n) time in planar graphs.
√ 1. Compute (2/3)-balanced separator S of size O( n). 2. For each independent set IS ⊆ S (including empty set) do (a) Recursively find max independent set IA for A \{neighbors of IS} (b) Recursively find max independent set IB for B \{neighbors of IS} (c) I(S) := IS ∪ IA ∪ IB 3. Return the largest of the sets I(S) found in Step 2. TU e Subexponential algorithms on planar graphs
√ Theorem. Independent Set can be solved in 2O( n) time in planar graphs.
√ 1. Compute (2/3)-balanced separator S of size O( n). 2. For each independent set IS ⊆ S (including empty set) do (a) Recursively find max independent set IA for A \{neighbors of IS} (b) Recursively find max independent set IB for B \{neighbors of IS} (c) I(S) := IS ∪ IA ∪ IB 3. Return the largest of the sets I(S) found in Step 2. TU e Subexponential algorithms on planar graphs
√ Theorem. Independent Set can be solved in 2O( n) time in planar graphs.
√ 1. Compute (2/3)-balanced separator S of size O( n). 2. For each independent set IS ⊆ S (including empty set) do (a) Recursively find max independent set IA for A \{neighbors of IS} (b) Recursively find max independent set IB for B \{neighbors of IS} (c) I(S) := IS ∪ IA ∪ IB 3. Return the largest of the sets I(S) found in Step 2. TU e Subexponential algorithms on planar graphs
√ Theorem. Independent Set can be solved in 2O( n) time in planar graphs.
√ 1. Compute (2/3)-balanced separator S of size O( n). 2. For each independent set IS ⊆ S (including empty set) do (a) Recursively find max independent set IA for A \{neighbors of IS} (b) Recursively find max independent set IB for B \{neighbors of IS} (c) I(S) := IS ∪ IA ∪ IB 3. Return the largest of the sets I(S) found in Step 2. TU e Subexponential algorithms on planar graphs
√ Theorem. Independent Set can be solved in 2O( n) time in planar graphs.
Running time
TU e Subexponential algorithms on planar graphs
√ Theorem. Independent Set can be solved in 2O( n) time in planar graphs.
Running time
√ √ √ T (n) = 2O( n) + 2O( n) · T (2n/3) =⇒ T (n) = 2O( n)
TU e A geometric proof of the Planar Separator Theorem A geometric proof of the Planar Separator Theorem
Fact: Any planar graph is the contact graph of a set of interior-disjoint disks.
TU e A geometric proof of the Planar Separator Theorem
Fact: Any planar graph is the contact graph of a set of interior-disjoint disks.
Proof idea: Find√ a square σ intersecting O( n) disks that is a balanced separator.
e.g. [Har-Peled, Quanrud ’15] TU e A geometric proof of the Planar Separator Theorem
Theorem. For any contact graph of √n interior-disjoint disks, there is an α-balanced separator of size O( n), where α = 36/37. Proof.
TU e A geometric proof of the Planar Separator Theorem
Theorem. For any contact graph of √n interior-disjoint disks, there is an α-balanced separator of size O( n), where α = 36/37. Proof.
3
smallest square containing at least n/37 disks TU e A geometric proof of the Planar Separator Theorem
Theorem. For any contact graph of √n interior-disjoint disks, there is an α-balanced separator of size O( n), where α = 36/37. Proof. √ √ n squares σ1√, . . . , σ n at distance 1/ n from each other
3
smallest square containing at least n/37 disks TU e A geometric proof of the Planar Separator Theorem
Theorem. For any contact graph of √n interior-disjoint disks, there is an α-balanced separator of size O( n), where α = 36/37. Proof.
• large disks: diameter > 1/4 • small disks: diameter < 1/4 3
smallest square containing at least n/37 disks TU e A geometric proof of the Planar Separator Theorem
Theorem. For any contact graph of √n interior-disjoint disks, there is an α-balanced separator of size O( n), where α = 36/37. Proof.
• large disks: diameter > 1/4 • small disks: diameter < 1/4 3 Construct separator as follows:
1. Select√ a square σi that intersects O( n) small disks and put these smallest square disks into the separator. containing at least 2. Add all large disks intersecting n/37 disks σi or inside it to the separator. TU e A geometric proof of the Planar Separator Theorem
Theorem. For any contact graph of √n interior-disjoint disks, there is an α-balanced separator of size O( n), where α = 36/37. Proof.
• large disks: diameter > 1/4 • small disks: diameter < 1/4 3 Construct separator as follows:
1. Select√ a square σi that intersects O( n) small disks and put these smallest square disks into the separator. containing at least 2. Add all large disks intersecting n/37 disks σi or inside it to the separator. TU e A geometric proof of the Planar Separator Theorem
Theorem. For any contact graph of √n interior-disjoint disks, there is an α-balanced separator of size O( n), where α = 36/37. Proof.
Things to check √ • size of separator = O( n) 3 • separator is (36/37)-balanced • does square σi with the desired property actually exist ??
smallest square containing at least n/37 disks TU e A geometric proof of the Planar Separator Theorem
Theorem. For any contact graph of √n interior-disjoint disks, there is an α-balanced separator of size O( n), where α = 36/37. Proof.
√ size of separator = O( n) √ • O( n) intersecting small disks 3 • O(1) large disks inside or intersecting σ
smallest square containing at least n/37 disks TU e A geometric proof of the Planar Separator Theorem
Theorem. For any contact graph of √n interior-disjoint disks, there is an α-balanced separator of size O( n), where α = 36/37. Proof.
separator is (36/37)-balanced
3
smallest square containing at least n/37 disks TU e A geometric proof of the Planar Separator Theorem
Theorem. For any contact graph of √n interior-disjoint disks, there is an α-balanced separator of size O( n), where α = 36/37. Proof.
separator is (36/37)-balanced • at least n/37 disks inside
3
smallest square containing at least n/37 disks TU e A geometric proof of the Planar Separator Theorem
Theorem. For any contact graph of √n interior-disjoint disks, there is an α-balanced separator of size O( n), where α = 36/37. Proof.
separator is (36/37)-balanced • at least n/37 disks inside • at most 36n/37 disks inside 3
smallest square containing at least n/37 disks TU e A geometric proof of the Planar Separator Theorem
Theorem. For any contact graph of √n interior-disjoint disks, there is an α-balanced separator of size O( n), where α = 36/37. Proof.
separator is (36/37)-balanced • at least n/37 disks inside • at most 36n/37 disks inside 3
smallest square containing at least n/37 disks TU e A geometric proof of the Planar Separator Theorem
Theorem. For any contact graph of √n interior-disjoint disks, there is an α-balanced separator of size O( n), where α = 36/37. Proof. √ Does σi intersecting O( n) disks exist?
3
smallest square containing at least n/37 disks TU e A geometric proof of the Planar Separator Theorem
Theorem. For any contact graph of √n interior-disjoint disks, there is an α-balanced separator of size O( n), where α = 36/37. Proof. √ Does σi intersecting O( n) disks exist? total number of disk-square intersections √ Pnsmall 6 i=1 (1 + diam(Di) · n)
3
smallest square containing at least n/37 disks TU e A geometric proof of the Planar Separator Theorem
Theorem. For any contact graph of √n interior-disjoint disks, there is an α-balanced separator of size O( n), where α = 36/37. Proof. √ Does σi intersecting O( n) disks exist? total number of disk-square intersections √ Pnsmall 6 i=1 (1 + diam(Di) · n) √ Pnsmall p 6 nsmall + O( n) · i=1 area(Di) 3
smallest square containing at least n/37 disks TU e A geometric proof of the Planar Separator Theorem
Theorem. For any contact graph of √n interior-disjoint disks, there is an α-balanced separator of size O( n), where α = 36/37. Proof. √ Does σi intersecting O( n) disks exist? total number of disk-square intersections √ Pnsmall 6 i=1 (1 + diam(Di) · n) √ Pnsmall p 6 nsmall + O( n) · i=1 area(Di) 3 = O(n)
last step uses
• Pnsmall area(D ) (3.5)2 smallest square i=1 i 6 √ q Pk a containing at least Pk Pk i=1 i • i=1 ai 6 i=1 k n/37 disks TU e A geometric proof of the Planar Separator Theorem
Theorem. For any contact graph of √n interior-disjoint disks, there is an α-balanced separator of size O( n), where α = 36/37. Proof. √ Does σi intersecting O( n) disks exist? total number of disk-square intersections = O(n)
3
smallest square containing at least n/37 disks TU e A geometric proof of the Planar Separator Theorem
Theorem. For any contact graph of √n interior-disjoint disks, there is an α-balanced separator of size O( n), where α = 36/37. Proof. √ Does σi intersecting O( n) disks exist? total number of disk-square intersections = O(n)
√ 3 =⇒ one of the σi’s intersects O( n) disks
smallest square containing at least n/37 disks TU e subexponential subexponential algorithms for algorithm for planar graphs subexponential Euclidean TSP algorithms for disk graphs
conditional lower bounds
ETH-based lower bound for Euclidean TSP
TU e Extension to disk graphs?
Disk graph: intersection graph of set of disks: • nodes = disks • two nodes are connected iff the corresponding disks intersect
TU e Extension to disk graphs?
Disk graph: intersection graph of set of disks: • nodes = disks • two nodes are connected iff the corresponding disks intersect
Unit-disk graphs are a popular model for ad-hoc wireless networks
TU e A Separator Theorem for disk graphs?
Disk graph: intersection graph of set of disks: • nodes = disks • two nodes are connected iff the corresponding disks intersect
TU e A Separator Theorem for disk graphs?
Disk graph: intersection graph of set of disks: • nodes = disks • two nodes are connected iff the corresponding disks intersect
Can we√ get a balanced separator of size O( n) for disk graphs?
TU e A Separator Theorem for disk graphs?
Disk graph: intersection graph of set of disks: • nodes = disks • two nodes are connected iff the corresponding disks intersect
Can we√ get a balanced separator of No size O( n) for disk graphs? can have arbitrarily large cliques TU e A Separator Theorem for disk graphs
Theorem. (dB, Bodlaender, Kisfaludi-Bak, Marx, vd Zanden, STOC 2018)
Let GD be the intersection graph of a set D of n disks. Then there is an α-balanced separator for GD, where α = 36/37, consisting of a collection C1,C2,...,Cm of cliques such that
m X √ log(|Ci| + 1) = O( n) i=1
TU e Subexponential algorithms on disk graphs
√ Theorem. Independent Set can be solved in 2O( n) time in disk graphs.
TU e Subexponential algorithms on disk graphs
√ Theorem. Independent Set can be solved in 2O( n) time in disk graphs.
√ 1. Compute (36/37)-balanced separator S of weighted clique size O( n). 2. For each independent set IS ⊆ S (including empty set) do same as before
TU e Subexponential algorithms on disk graphs
√ Theorem. Independent Set can be solved in 2O( n) time in disk graphs.
√ 1. Compute (36/37)-balanced separator S of weighted clique size O( n). 2. For each independent set IS ⊆ S (including empty set) do same as before
Number of independent sets IS ⊆ S
TU e Subexponential algorithms on disk graphs
√ Theorem. Independent Set can be solved in 2O( n) time in disk graphs.
√ 1. Compute (36/37)-balanced separator S of weighted clique size O( n). 2. For each independent set IS ⊆ S (including empty set) do same as before
Number of independent sets IS ⊆ S
Pm √ m m log(|Ci|+1) i=1 log(|Ci|+1) O( n) Πi=1(|Ci|+1) = Πi=12 = 2 = 2
TU e Subexponential algorithms on disk graphs
√ Theorem. Independent Set can be solved in 2O( n) time in disk graphs.
√ 1. Compute (36/37)-balanced separator S of weighted clique size O( n). 2. For each independent set IS ⊆ S (including empty set) do same as before
Number of independent sets IS ⊆ S
Pm √ m m log(|Ci|+1) i=1 log(|Ci|+1) O( n) Πi=1(|Ci|+1) = Πi=12 = 2 = 2 √ =⇒ running time is 2O( n)
TU e Subexponential algorithms on unit-disk graphs
Theorem. √For unit-disk graphs we can also solve Dominating Set in 2O( n) time.
TU e Subexponential algorithms on unit-disk graphs
Theorem. √For unit-disk graphs we can also solve Dominating Set in 2O( n) time.
Crucial property of unit disks: • Maximal clique intersects O(1) other cliques
TU e Subexponential algorithms on unit-disk graphs
Theorem. √For unit-disk graphs we can also solve Dominating Set in 2O( n) time.
Crucial property of unit disks: • Maximal clique intersects O(1) other cliques Dominating set selects O(1) disks from any clique
TU e Subexponential algorithms on unit-disk graphs
Theorem. √For unit-disk graphs we can also solve Dominating Set in 2O( n) time.
Crucial property of unit disks: • Maximal clique intersects O(1) other cliques Dominating set selects O(1) disks from any clique
Number of dominating sets IS ⊆ S we need to try
Pm √ m O(1) i=1 O(log |Ci|) O( n) Πi=1|Ci| = 2 = 2 √ =⇒ running time is 2O( n) TU e Subexponential algorithms on unit-disk graphs
Theorem. For unit-disk graphs we can also solve • (Connected) Dominating Set • (Connected) Vertex Cover • (Connected) Feedback Vertex Set • Hamiltonian Cycle √ in 2O( n) time.
TU e Subexponential algorithms on unit-disk graphs
Theorem. For unit-disk graphs we can also solve • (Connected) Dominating Set • (Connected) Vertex Cover • (Connected) Feedback Vertex Set • Hamiltonian Cycle √ in 2O( n) time.
Approach • use Separator Theorem to get tree decomposition of small weight on intersection graph induced by cliques • use algorithms based on (weighted) tree decompositions Note: Algorithms also work for similarly-sized fat objects
TU e Extension to higher dimensions
Theorem. (dB, Bodlaender, Kisfaludi-Bak, Marx, van der Zanden 2018) d Let GD be the intersection graph of a set D of n balls in R . Then d d there is an α-balanced separator for GD, where α =6 /(6 + 1), consisting of a collection C1,C2,...,Cm of cliques such that
m X 1−1/d log(|Ci| + 1) = O(n ) i=1
TU e Extension to higher dimensions
Theorem. (dB, Bodlaender, Kisfaludi-Bak, Marx, van der Zanden 2018) d Let GD be the intersection graph of a set D of n balls in R . Then d d there is an α-balanced separator for GD, where α =6 /(6 + 1), consisting of a collection C1,C2,...,Cm of cliques such that
m X 1−1/d log(|Ci| + 1) = O(n ) i=1
Why n1−1/d?
TU e Extension to higher dimensions
Theorem. (dB, Bodlaender, Kisfaludi-Bak, Marx, van der Zanden 2018) d Let GD be the intersection graph of a set D of n balls in R . Then d d there is an α-balanced separator for GD, where α =6 /(6 + 1), consisting of a collection C1,C2,...,Cm of cliques such that
m X 1−1/d log(|Ci| + 1) = O(n ) i=1
• n1/d × · · · × n1/d spheres Why n1−1/d? • any balanced separator has size Ω(n1−1/d)
From: chemistry.stackexchange.com TU e Extension to higher dimensions
Theorem.
1−1/d For ball graphs we can solve Independent Set in 2O(n ) time. For unit-ball graphs we can also solve • (Connected) Dominating Set • (Connected) Vertex Cover • (Connected) Feedback Vertex Set • Hamiltonian Cycle 1−1/d in 2O(n ) time.
Also works for (similarly-sized) fat objects.
TU e Extension to higher dimensions
Theorem.
1−1/d For ball graphs we can solve Independent Set in 2O(n ) time. For unit-ball graphs we can also solve • (Connected) Dominating Set • (Connected) Vertex Cover • (Connected) Feedback Vertex Set • Hamiltonian Cycle 1−1/d in 2O(n ) time.
Also works for (similarly-sized) fat objects.
All these results are optimal, assuming ETH.
TU e Extension to higher dimensions
Theorem.
1−1/d For ball graphs we can solve Independent Set in 2O(n ) time. For unit-ball graphs we can also solve • (Connected) Dominating Set Open problem(s) • (Connected) Vertex Cover extend to balls of • (Connected) Feedback Vertex Set arbitrary sizes • Hamiltonian Cycle 1−1/d in 2O(n ) time.
Also works for (similarly-sized) fat objects.
All these results are optimal, assuming ETH.
TU e subexponential subexponential algorithms for algorithm for planar graphs subexponential Euclidean TSP algorithms for disk graphs
ETH-based lower bound for Euclidean TSP
TU e Traveling Salesman Problem (TSP)
Compute min-length tour visiting all cities
TU e Traveling Salesman Problem (TSP)
Compute min-length tour visiting all cities
TU e Traveling Salesman Problem (TSP)
http://learnfresh.blogspot.nl/ Compute min-length tour Compute min-length tour visiting all cities visiting all holes to be drilled
TU e TSP: general setting vs Euclidean setting
General setting Euclidean setting 9 6 7 4 7 3 √ 3 5 5 6 3 8
• cities = nodes in a graph • cities = points in the plane • arbitrary edge lengths • edge length = Euclidean (satisfying triangle inequality) distance
TU e Obstacles for a Traveling Salesman in India
From: circusgirl.blog.hu Obstacles for a Traveling Salesman in India Obstacles for a Traveling Salesman in India No Obstacles for a Traveling Salesman in IIT Guwahati :) Exact Algorithms for (Euclidean) TSP
• Algorithm for general case: O(n22n) [ Held-Karp, Bellmann, ’62 ] √ √ • Best known for Euclidean case: nO( n) = 2O( n log n) [ Kann ’92, Hwang-Lee-Chan ’93, Smith-Wormald ’98 ]
TU e Exact Algorithms for (Euclidean) TSP
• Algorithm for general case: O(n22n) [ Held-Karp, Bellmann, ’62 ] √ √ • Best known for Euclidean case: nO( n) = 2O( n log n) [ Kann ’92, Hwang-Lee-Chan ’93, Smith-Wormald ’98 ]
Theorem. (dB, Bodlaender, Kisfaludi-Bak, Kolay, FOCS 2018) √ O( n) Euclidean TSP can be solved√ in 2 time, and there is no algorithm with running time 2o( n)) under ETH.
TU e ETH-based lower bound for Euclidean TSP in R2
Idea: Convert 3-SAT instance with n variables to Euclidean TSP instance on O(n2) points (construction similar to Plesn´ık’79)
TU e A Subexponential Algorithm for Euclidean TSP
Main tool: Geometric Separator Theorem for TSP
balanced separator√ crossed O( n) times by optimal tour
TU e A Subexponential Algorithm for Euclidean TSP
Main tool: Geometric Separator Theorem for TSP
balanced separator√ crossed O( n) times by optimal tour
TU e A Subexponential Algorithm for Euclidean TSP
Main tool: Geometric Separator Theorem for TSP
balanced separator√ crossed O( n) times by optimal tour
TU e A Subexponential Algorithm for Euclidean TSP
Main tool: Geometric Separator Theorem for TSP
balanced separator√ crossed O( n) times by optimal tour does not happen
Packing property of edges in optimal tour
Any square s intersects only O(1) edges of length > size(s) TU e A Subexponential Algorithm for Euclidean TSP
Main tool: Geometric Separator Theorem for TSP
balanced separator√ crossed O( n) times by optimal tour
We need a separator that has ”few” points ”close” to it.
TU e A Separator Theorem for TSP
Lemma. For any set of n points, there is a balanced separator such i √ √2 i that (# pts within distance n · size(σ)) = O(4 n), for all i > 0.
TU e A Separator Theorem for TSP
Lemma. For any set of n points, there is a balanced separator such i √ √2 i that (# pts within distance n · size(σ)) = O(4 n), for all i > 0.
size(σ)
TU e A Separator Theorem for TSP
Lemma. For any set of n points, there is a balanced separator such i √ √2 i that (# pts within distance n · size(σ)) = O(4 n), for all i > 0.
Proof.
TU e A Separator Theorem for TSP
Lemma. For any set of n points, there is a balanced separator such i √ √2 i that (# pts within distance n · size(σ)) = O(4 n), for all i > 0.
σ
smallest square with n/37 points assume size = 1 TU e A Separator Theorem for TSP
Lemma. For any set of n points, there is a balanced separator such i √ √2 i that (# pts within distance n · size(σ)) = O(4 n), for all i > 0.
3σ Idea: Find suitable 1 6 t 6 3 such 2σ that tσ meets the requirements. σ
smallest square with n/37 points assume size = 1 TU e A Separator Theorem for TSP
Lemma. For any set of n points, there is a balanced separator such i √ √2 i that (# pts within distance n · size(σ)) = O(4 n), for all i > 0.
3σ Idea: Find suitable 1 6 t 6 3 such 2σ that tσ meets the requirements. σ
Claim: Any separator tσ with 1 6 t 6 3 is (36/37)-balanced.
smallest square with n/37 points assume size = 1 TU e A Separator Theorem for TSP
Lemma. For any set of n points, there is a balanced separator such i √ √2 i that (# pts within distance n · size(σ)) = O(4 n), for all i > 0.
3σ Idea: Find suitable 1 6 t 6 3 such 2σ that tσ meets the requirements. σ
Claim: Any separator tσ with 1 6 t 6 3 is (36/37)-balanced.
Claim: There is a suitable t. smallest square with n/37 points assume size = 1 TU e A Separator Theorem for TSP
Lemma. For any set of n points, there is a balanced separator such i √ √2 i that (# pts within distance n · size(σ)) = O(4 n), for all i > 0.
3σ 2σ σ
smallest square with n/37 points assume size = 1 TU e A Separator Theorem for TSP
Lemma. For any set of n points, there is a balanced separator such i √ √2 i that (# pts within distance n · size(σ)) = O(4 n), for all i > 0.
3σ Define function fp(t) for each p: √ 2σ n fp(t) = i when σ 4 i−1 i 2√ √2 n < dist(p, tσ) 6 n
√ n
smallest square with n/37 points t assume size = 1 1 3 TU e A Separator Theorem for TSP
Lemma. For any set of n points, there is a balanced separator such i √ √2 i that (# pts within distance n · size(σ)) = O(4 n), for all i > 0.
Define function fp(t) for each p:
√ i−1 i n 2√ √2 fp(t) = 4i when n < dist(p, tσ) 6 n
√ n
t 1 3
TU e A Separator Theorem for TSP
Lemma. For any set of n points, there is a balanced separator such i √ √2 i that (# pts within distance n · size(σ)) = O(4 n), for all i > 0.
Define function fp(t) for each p:
√ i−1 i n 2√ √2 fp(t) = 4i when n < dist(p, tσ) 6 n
√ n area below fp(t) = O(1)
t 1 3
TU e A Separator Theorem for TSP
Lemma. For any set of n points, there is a balanced separator such i √ √2 i that (# pts within distance n · size(σ)) = O(4 n), for all i > 0.
Define function fp(t) for each p:
√ i−1 i n 2√ √2 fp(t) = 4i when n < dist(p, tσ) 6 n
√ n area below fp(t) = O(1) P =⇒ area below p fp(t) = O(n)
t 1 3
TU e A Separator Theorem for TSP
Lemma. For any set of n points, there is a balanced separator such i √ √2 i that (# pts within distance n · size(σ)) = O(4 n), for all i > 0.
Define function fp(t) for each p:
√ i−1 i n 2√ √2 fp(t) = 4i when n < dist(p, tσ) 6 n
√ n area below fp(t) = O(1) P =⇒ area below p fp(t) = O(n) P =⇒ p fp(t) = O(n) for some t t 1 3
TU e A Separator Theorem for TSP
Lemma. For any set of n points, there is a balanced separator such i √ √2 i that (# pts within distance n · size(σ)) = O(4 n), for all i > 0.
Define function fp(t) for each p:
√ i−1 i n 2√ √2 fp(t) = 4i when n < dist(p, tσ) 6 n
√ n area below fp(t) = O(1) P =⇒ area below p fp(t) = O(n) P =⇒ p fp(t) = O(n) for some t t =⇒ this t is suitable 1 3
TU e A Separator Theorem for TSP
Lemma. For any set of n points, there is a balanced separator such i √ √2 i that (# pts within distance n · size(σ)) = O(4 n), for all i > 0.
TU e A Separator Theorem for TSP
Lemma. For any set of n points, there is a balanced separator such i √ √2 i that (# pts within distance n · size(σ)) = O(4 n), for all i > 0.
Theorem. For any set of n points, there is a balanced separator σ such that √ • σ is crossed O( n) times by an optimal tour.
i √2 number of crossing edges of length ≈ n · size(σ) √ i+1 n 2√ • O( 2i ) cells of size ≈ n · size(σ) around σ • O(1) edges per cell (Packing Property)
TU e A Separator Theorem for TSP
Lemma. For any set of n points, there is a balanced separator such i √ √2 i that (# pts within distance n · size(σ)) = O(4 n), for all i > 0.
Theorem. For any set of n points, there is a balanced separator σ such that √ • σ is crossed O( n) times by an optimal tour.
i √2 number of crossing edges of length ≈ n · size(σ) √ i+1 n 2√ • O( 2i ) cells of size ≈ n · size(σ) around σ • O(1) edges per cell (Packing Property) √ P n √ total number of edges: i O( 2i ) = O( n) (major cheating going on ...) TU e The Algorithm?
1. Compute separator√ that is crossed O( n) times. √ 2. Try all subsets of O( n) crossing edges. 3. Recursively solve problems inside and outside separator
TU e The Algorithm?
1. Compute separator√ that is crossed O( n) times. √ 2. Try all subsets of O( n) crossing edges. 3. Recursively solve problems inside and outside separator
√ √ there are nO( n), but we want 2O( n)
TU e A Separator Theorem for TSP
Theorem. For any set of n points, there is a balanced separator σ such that √ • σ is crossed O( n) times by an optimal tour.
TU e A Separator Theorem for TSP
Theorem. For any set of n points, there is a balanced separator σ such that √ • σ is crossed O( n) times by an optimal tour. √ • and the number of candidate crossing sets is 2O( n)
TU e A Separator Theorem for TSP
Theorem. For any set of n points, there is a balanced separator σ such that √ • σ is crossed O( n) times by an optimal tour. √ • and the number of candidate crossing sets is 2O( n)
i √2 no. of candidate edge sets of length ≈ n · size(σ) i √2 • put cells of size 2 n · size(σ) around σ • O(1) edges per cell√ (Packing Property) • worst case: O(4i n) points distributed evenly √ √ √ 4i n i O( i n) √ O( n/2 ) 2i • we get ( i ) = 2 . n/2 √ summing over i still gives 2O( n) TU e The Algorithm?
1. Compute separator√ that is crossed O( n) times. √ 2. Try all subsets of O( n) crossing edges. 3. Recursively solve problems inside and outside separator
TU e The Algorithm?
1. Compute separator√ that is crossed O( n) times. √ 2. Try all subsets of O( n) crossing edges. 3. Recursively solve problems inside and outside separator
different connectivity patterns give√ different subproblems for each crossing set; still gives nO( n) subproblems in total
TU e The Algorithm?
1. Compute separator√ that is crossed O( n) times. √ 2. Try all subsets of O( n) crossing edges. 3. Recursively solve problems inside and outside separator
different connectivity patterns give√ different subproblems for each crossing set; still gives nO( n) subproblems in total
• 2D: Use Catalan structure of connections • higher dimensions: use rank-based approach TU e Exact Algorithms for (Euclidean) TSP
Theorem. (dB, Bodlaender, Kisfaludi-Bak, Kolay, FOCS 2018)
1−1/d Euclidean TSP in d can be solved in 2O(n ) time, and R 1−1/d there is no algorithm with running time 2o(n ) under ETH.
TU e Exact Algorithms for (Euclidean) TSP
Theorem. (dB, Bodlaender, Kisfaludi-Bak, Kolay, FOCS 2018)
1−1/d Euclidean TSP in d can be solved in 2O(n ) time, and R 1−1/d there is no algorithm with running time 2o(n ) under ETH.
√ Open problem: Can techniques help to get 2O( n) algorithm for Euclidean rectilinear Steiner tree?
TU e Thanks for your attention!
TSP Art by Carig Kaplan and Robert Bosch
and thanks to Hans Bodlaender, S´andor Kisfaludi-Bak, Sudeshna Kolay, D´anielMarx, Tom van der Zanden
TU e