1 / 32

Algorithms for Non-crossing Spanning Trees

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

precious
Télécharger la présentation

Algorithms for Non-crossing Spanning Trees

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 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

  2. Geometric graphs • Points (vertices), and • lines (edges)embedded in the plane ICE-TCS Theory Day

  3. Topological graphs • Points (vertices), and • curves (edges)embedded in the plane ICE-TCS Theory Day

  4. Non-Crossing Spanning Tree Set of edges that: • No two overlap • Involve all vertices • Form a tree ICE-TCS Theory Day

  5. 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

  6. Input parameters • Crossing: pair of edges that cross • k = # crossings • Crossedge: edge that crosses other edges •  = # crossedges k = 2  = 2 ICE-TCS Theory Day

  7. 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

  8. 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

  9. Improved results • Knauer,Schramm,Spillner,Wolff Dec’95: • O*(k) time, where 1.9 ICE-TCS Theory Day

  10. Improved results • Knauer,Schramm,Spillner,Wolff Dec’95: • O*(k) time, where 1.99 ICE-TCS Theory Day

  11. Improved results • Knauer,Schramm,Spillner,Wolff Dec’95: • O*(k) time, where 1.999 ICE-TCS Theory Day

  12. Improved results • Knauer,Schramm,Spillner,Wolff Dec’95: • O*(k) time, where 1.9999 ICE-TCS Theory Day

  13. Improved results • Knauer,Schramm,Spillner,Wolff Dec’95: • O*(k) time, where 1.99999 ICE-TCS Theory Day

  14. Improved results • Knauer,Schramm,Spillner,Wolff Dec’95: • O*(k) time, where 1.999999 ICE-TCS Theory Day

  15. Improved results • Knauer,Schramm,Spillner,Wolff Dec’95: • O*(k) time, where 1.9999992 ICE-TCS Theory Day

  16. Improved results • Knauer,Schramm,Spillner,Wolff Dec’95: • O*(k) time, where 1.9999992 • [Here:] • ck time • Matching lower bound ICE-TCS Theory Day

  17. 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

  18. 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

  19. Outline of our approach • Simplify the instance • Find a small graph separator |S| cn, |G1| 2n/3, |G2| 2n/3 [Lipton, Tarjan ’79] S G1 G2 ICE-TCS Theory Day

  20. Outline of our approach • Simplify the instance • Find a small graph separator Edge-cut C ICE-TCS Theory Day

  21. Outline of our approach • Simplify the instance • Find a small graph separator • Guess which edges to use ICE-TCS Theory Day

  22. 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

  23. 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

  24. 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

  25. 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

  26. 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

  27. 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

  28. 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

  29. 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’)] cn * [T(n/3) + T(2n/3)]  cO(n) ICE-TCS Theory Day

  30. 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: ck time is the best we can hope for ICE-TCS Theory Day

  31. 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

  32. 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

More Related