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

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 • 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√ 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 √ 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 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 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