Algorithms for Non-crossing Spanning Trees
This paper explores the challenging problem of finding non-crossing spanning trees (NCST) within geometric and topological graphs. It discusses the NP-hardness of determining the presence of NCST and highlights recent algorithmic advancements, including parameterized complexity results and approximation ratios. Key techniques involve simplification of problem instances, utilizing small graph separators, and recursive problem-solving strategies. The findings indicate that while efficient solutions remain difficult, significant improvements have been made with algorithms achieving time complexities of O*(2^k) and beyond.
Algorithms for Non-crossing Spanning Trees
E N D
Presentation Transcript
Algorithms for Non-crossing Spanning Trees Magnús M. Halldórsson Joint with Christian Knauer Freie U., Berlin Andreas Spillner Jena Takeshi Tokuyama Tohoku University Alexander Wolff University of Karlsruhe
Geometric graphs • Points (vertices), and • lines (edges)embedded in the plane ICE-TCS Theory Day
Topological graphs • Points (vertices), and • curves (edges)embedded in the plane ICE-TCS Theory Day
Non-Crossing Spanning Tree Set of edges that: • No two overlap • Involve all vertices • Form a tree ICE-TCS Theory Day
NP-hardness • “Does topological graph G contain a NCST”is an NP-complete problem [Kratochvil, Lubiw, Nesetril, ’91] • Same for geometric graphs [Jansen, Woeginger, ’9x] • ERGO: We (almost surely) can’t find efficient algorithms THEN WHAT? Parameterize ICE-TCS Theory Day
Input parameters • Crossing: pair of edges that cross • k = # crossings • Crossedge: edge that crosses other edges • = # crossedges k = 2 = 2 ICE-TCS Theory Day
Recent results for NCST [Knauer,Schramm,Spillner,Wolff, 2005] • FPT: • O*(2k) time algorithm • Approximation: • k1- ratio is NP-hard! • k ratio is trivial ICE-TCS Theory Day
O*(2k) algorithm • Pick an edge e that crosses other edges • Either e is in the solution or not in. • Try both possibilities, recursively! Original problem instance and its measure Recurrence tree k k-1 k-1 ICE-TCS Theory Day
Improved results • Knauer,Schramm,Spillner,Wolff Dec’95: • O*(k) time, where 1.9 ICE-TCS Theory Day
Improved results • Knauer,Schramm,Spillner,Wolff Dec’95: • O*(k) time, where 1.99 ICE-TCS Theory Day
Improved results • Knauer,Schramm,Spillner,Wolff Dec’95: • O*(k) time, where 1.999 ICE-TCS Theory Day
Improved results • Knauer,Schramm,Spillner,Wolff Dec’95: • O*(k) time, where 1.9999 ICE-TCS Theory Day
Improved results • Knauer,Schramm,Spillner,Wolff Dec’95: • O*(k) time, where 1.99999 ICE-TCS Theory Day
Improved results • Knauer,Schramm,Spillner,Wolff Dec’95: • O*(k) time, where 1.999999 ICE-TCS Theory Day
Improved results • Knauer,Schramm,Spillner,Wolff Dec’95: • O*(k) time, where 1.9999992 ICE-TCS Theory Day
Improved results • Knauer,Schramm,Spillner,Wolff Dec’95: • O*(k) time, where 1.9999992 • [Here:] • ck time • Matching lower bound ICE-TCS Theory Day
Outline of our approach • Simplify the instance • Find a small graph separator • Guess which edges to use • Guess their configuration: how they connect the rest of the graph • Recursively solve “left half” • Recursively solve “right half” ICE-TCS Theory Day
Outline of our approach • Simplify the instance • [Kernelize] Obtain an equivalent graph on O(k) vertices (only those involved in crossing edges) • [Degree reduction] Obtain equivalent graph where each vertex has degree <= 3 • [Multiplicity reduction] Only two edges cross in the same point in 2 ICE-TCS Theory Day
Outline of our approach • Simplify the instance • Find a small graph separator |S| cn, |G1| 2n/3, |G2| 2n/3 [Lipton, Tarjan ’79] S G1 G2 ICE-TCS Theory Day
Outline of our approach • Simplify the instance • Find a small graph separator Edge-cut C ICE-TCS Theory Day
Outline of our approach • Simplify the instance • Find a small graph separator • Guess which edges to use ICE-TCS Theory Day
Outline of our approach • Simplify the instance • Find a small graph separator • Guess which edges to use • Guess their configuration: how they connect the rest of the graph ICE-TCS Theory Day
Outline of our approach • Simplify the instance • Find a small graph separator • Guess which edges to use • Guess their configuration: how they connect the rest of the graph • Recursively solve “left half” ICE-TCS Theory Day
Outline of our approach • Simplify the instance • Find a small graph separator • Guess which edges to use • Guess their configuration: how they connect the rest of the graph • Recursively solve “left half” ICE-TCS Theory Day
Outline of our approach • Simplify the instance • Find a small graph separator • Guess which edges to use • Guess their configuration: how they connect the rest of the graph • Recursively solve “left half” • Recursively solve “right half” ICE-TCS Theory Day
Outline of our approach • Simplify the instance • Find a small graph separator • Guess which edges to use • Guess their configuration: how they connect the rest of the graph • Recursively solve “left half” • Recursively solve “right half” ICE-TCS Theory Day
Outline of our approach • Simplify the instance • Find a small graph separator • Guess which edges to use • Guess their configuration: how they connect the rest of the graph • Recursively solve “left half” • Recursively solve “right half” ICE-TCS Theory Day
Sketch of analysis • Kernelization implies n = O(k) • Let s’ = O(n) be vertex separator size • s = O(s’) = O(n) is edge separator size Time complexity: • T(n) # separator edge subsets * # spanning forests of left half * cost of recursive problems 2s * ss * [T(n’) + T(n-n’)] nO(n) * [T(n/3) + T(2n/3)] nO(n) ICE-TCS Theory Day
Sketch of analysis, improved • #spanning plane forests of s points is only exp(s) Time complexity: • T(n) # separator edge subsets * # spanning forests of left half * cost of recursive problems 2s * exp(s) * [T(n’) + T(n-n’)] cn * [T(n/3) + T(2n/3)] cO(n) ICE-TCS Theory Day
Lower bound • If we can solve NCST in time exp(f(n)), then we can solve SAT in time exp(f(n)^2) • Reduction, through Planar SAT • Cor: ck time is the best we can hope for ICE-TCS Theory Day
Further results • Several generalizations possible • Various non-crossing problems (paths, cycles) • Optimization: #crossings left, #components • Similar measures: #crossing edges, #crossing points • Different measure: i, #nodes inside convex hull • tw(G) = O(sqrt(i)) • i^O(i) algorithm, exponential space ICE-TCS Theory Day
Further results • Several generalizations possible • Various non-crossing problems (paths, cycles) • Optimization: #crossings left, #components • Measure: #crossing edges, #crossing points • Can apply technique to other problem • Min Connected Dominating Set in planar graphs (but already done by Fomin et al. ’06) ICE-TCS Theory Day