Hamiltonicity below Dirac’s condition

Slides:



Advertisements
Similar presentations
Bart Jansen 1.  Problem definition  Instance: Connected graph G, positive integer k  Question: Is there a spanning tree for G with at least k leaves?
Advertisements

Theory of Computing Lecture 18 MAS 714 Hartmut Klauck.
Lecture 24 Coping with NPC and Unsolvable problems. When a problem is unsolvable, that's generally very bad news: it means there is no general algorithm.
Bart Jansen, Utrecht University. 2  Max Leaf  Instance: Connected graph G, positive integer k  Question: Is there a spanning tree for G with at least.
1 NP-Complete Problems. 2 We discuss some hard problems:  how hard? (computational complexity)  what makes them hard?  any solutions? Definitions 
Combinatorial Algorithms
Introduction to Approximation Algorithms Lecture 12: Mar 1.
Transitivity of  poly Theorem: Let ,  ’, and  ’’ be three decision problems such that   poly  ’ and  ’  poly  ’’. Then  poly  ’’. Proof:
The Theory of NP-Completeness
NP-Complete Problems Problems in Computer Science are classified into
Analysis of Algorithms CS 477/677
Data reduction lower bounds: Problems without polynomial kernels Hans L. Bodlaender Joint work with Downey, Fellows, Hermelin, Thomasse, Yeo.
Fixed Parameter Complexity Algorithms and Networks.
Hamiltonian Graphs By: Matt Connor Fall 2013.
NP-Complete Problems. Running Time v.s. Input Size Concern with problems whose complexity may be described by exponential functions. Tractable problems.
NP-COMPLETE PROBLEMS. Admin  Two more assignments…  No office hours on tomorrow.
NP-Complete problems.
CS 3343: Analysis of Algorithms Lecture 25: P and NP Some slides courtesy of Carola Wenk.
Data Reduction for Graph Coloring Problems Bart M. P. Jansen Joint work with Stefan Kratsch August 22 nd 2011, Oslo.
Algorithms for hard problems Parameterized complexity – definitions, sample algorithms Juris Viksna, 2015.
Algorithms for hard problems Introduction Juris Viksna, 2015.
NPC.
Kernel Bounds for Path and Cycle Problems Bart M. P. Jansen Joint work with Hans L. Bodlaender & Stefan Kratsch September 8 th 2011, Saarbrucken.
CSE 332: NP Completeness, Part II Richard Anderson Spring 2016.
TU/e Algorithms (2IL15) – Lecture 10 1 NP-Completeness, II.
ICS 353: Design and Analysis of Algorithms NP-Complete Problems King Fahd University of Petroleum & Minerals Information & Computer Science Department.
Hamiltonian Graphs Graphs Hubert Chan (Chapter 9.5)
The NP class. NP-completeness
More NP-complete problems
NP-completeness Ch.34.
Chapter 10 NP-Complete Problems.
EECS 203 Lecture 19 Graphs.
Joint work with Hans Bodlaender
Fast Hamiltonicity Checking via Bases of Perfect Matchings
Richard Anderson Lecture 26 NP-Completeness
Routing Through Networks - 1
Richard Anderson Lecture 26 NP-Completeness
Hard Problems Introduction to NP
Hamiltonian Graphs Graphs Hubert Chan (Chapter 9.5)
Algorithms for hard problems
EECS 203 Lecture 20 More Graphs.
Richard Anderson Lecture 25 Min Cut Applications and NP-Completeness
Algorithms and Networks
NP-Completeness Yin Tat Lee
Computability and Complexity
Discrete Maths 9. Graphs Objective
Analysis and design of algorithm
CSE 421: Introduction to Algorithms
ICS 353: Design and Analysis of Algorithms
Constrained Bipartite Vertex Cover: The Easy Kernel is Essentially Tight Bart M. P. Jansen June 4th, WORKER 2015, Nordfjordeid, Norway.
Parameterised Complexity
Bart M. P. Jansen June 3rd 2016, Algorithms for Optimization Problems
Richard Anderson Lecture 25 NP-Completeness
Fine-Grained Complexity Analysis of Improving Traveling Salesman Tours
Richard Anderson Lecture 28 NP-Completeness
REDUCESEARCH Polynomial Kernels for Hitting Forbidden Minors under Structural Parameterizations Bart M. P. Jansen Astrid Pieterse ESA 2018 August.
Discrete Math II Howon Kim
NP-Complete Problems.
Dániel Marx (slides by Daniel Lokshtanov)
Hamiltonian Circuits and Paths
CS 3343: Analysis of Algorithms
Graphs and Algorithms (2MMD30)
NP-Completeness Yin Tat Lee
NP-Completeness Reference: Computers and Intractability: A Guide to the Theory of NP-Completeness by Garey and Johnson, W.H. Freeman and Company, 1979.
Euler and Hamiltonian Graphs
Complexity Theory in Practice
CSE 589 Applied Algorithms Spring 1999
Complexity Theory in Practice
CSC 380: Design and Analysis of Algorithms
Parameterized Complexity of Conflict-free Graph Coloring
Presentation transcript:

Hamiltonicity below Dirac’s condition László Kozma Bart M. P. Jansen Jesper Nederlof Advertisement for this talk: (1) it deals with a game that someone actually introduced for fun, not just a ‘game-theory’ game which are generally not fun. (2) It shows you some elegant ideas in graph theory. (3) It showcases a way to turn mathematical statements about existence of certain types of objects, into interesting algorithmic research questions. Perspective projection of a dodecahedron with a Hamiltion cycle through its vertices by CMG Lee based on http://commons.wikimedia.org/wiki/File:Dodecahedron_light_blue.svg (cc-by-sa). Networks Training Week Spring 2019 May 6th 2019, Kaap Doorn, Netherlands

William Rowan Hamilton (1805-1865) REDUCESEARCH If, like me, you programmed computer games at age 15, you might have come across his notion of quaternions to describe rotations. Game introduced by William Rowan Hamilton (Irish Mathematician, died in 1865). He invented icosian calculus and the icosian game. The related algorithmic problem is: given a graph, determine whether or not it has a Hamiltonian cycle. It is NP-hard and explains the intractability of the Traveling Salesman problem. Perspective projection of a dodecahedron with a Hamiltion cycle through its vertices by CMG Lee based on http://commons.wikimedia.org/wiki/File:Dodecahedron_light_blue.svg (cc-by-sa). Also, https://en.wikipedia.org/wiki/File:Hamiltonian_path.svg by Christoph Sommer (cc-by-sa). By Created by en:User:Cyp and copied from the English Wikipedia. - not stated, CC BY-SA 3.0, https://commons.wikimedia.org/w/index.php?curid=38668 William Rowan Hamilton (1805-1865) A Hamiltonian cycle visits every vertex exactly once Bart M. P. Jansen

REDUCESEARCH Let 𝐺 be an undirected 𝑛-vertex graph having non-adjacent vertices 𝑢,𝑣 with deg 𝑢 + deg 𝑣 ≥𝑛. Let 𝐺′ be obtained from 𝐺 by adding edge {𝑢,𝑣}. Then: 𝐺 has a Hamiltonian cycle ⇔ 𝐺′ has a Hamiltonian cycle [Bondy & Chvátal ‘76] If (𝑢,𝑣, 𝑥 1 ,…, 𝑥 𝑛−2 ,𝑢) is a Hamiltonian cycle in 𝐺′, there exists 1≤𝑖<𝑛−2 such that 𝑢, 𝑥 𝑖 , 𝑣, 𝑥 𝑖+1 ∈𝐸(𝐺) Bondy–Chvátal. Now, the order of this talk is unconvential. Usually, one first gives motivation, then defines the problem, and ends with some proofs. Here we go the other way around: I start by showing you a proof, which will motivate our problem. (Also, it has the side-effect that if you dose off after the first couple of minutes, at least you will have seen this proof.) Graph 𝐺 𝑛=8 vertices Graph 𝐺′ Bart M. P. Jansen

𝐺 has a Hamiltonian cycle ⇔ 𝐺′ has a Hamiltonian cycle REDUCESEARCH Let 𝐺 be an undirected 𝑛-vertex graph having non-adjacent vertices 𝑢,𝑣 with deg 𝑢 + deg 𝑣 ≥𝑛. Let 𝐺′ be obtained from 𝐺 by adding edge {𝑢,𝑣}. Then: 𝐺 has a Hamiltonian cycle ⇔ 𝐺′ has a Hamiltonian cycle [Bondy & Chvátal ‘76] If (𝑢,𝑣, 𝑥 1 ,…, 𝑥 𝑛−2 ,𝑢) is a Hamiltonian cycle in 𝐺′, there exists 1≤𝑖<𝑛−2 such that 𝑢, 𝑥 𝑖 , 𝑣, 𝑥 𝑖+1 ∈𝐸(𝐺) Together, 𝑢 and 𝑣 have ≥𝑛 edges into these 𝑛+1 bins Now, the order of this talk is unconvential. Usually, one first gives motivation, then defines the problem, and ends with some proofs. Here we go the other way around: I start by showing you a proof, which will motivate our problem. (Also, it has the side-effect that if you dose off after the first couple of minutes, at least you will have seen this proof.) 𝐵 𝑛−1 … 𝐵 2 𝐵 1 Bart M. P. Jansen

𝐺 has a Hamiltonian cycle ⇔ 𝐺′ has a Hamiltonian cycle REDUCESEARCH Let 𝐺 be an undirected 𝑛-vertex graph having non-adjacent vertices 𝑢,𝑣 with deg 𝑢 + deg 𝑣 ≥𝑛. Let 𝐺′ be obtained from 𝐺 by adding edge {𝑢,𝑣}. Then: 𝐺 has a Hamiltonian cycle ⇔ 𝐺′ has a Hamiltonian cycle [Bondy & Chvátal ‘76] If (𝑢,𝑣, 𝑥 1 ,…, 𝑥 𝑛−2 ,𝑢) is a Hamiltonian cycle in 𝐺′, there exists 1≤𝑖<𝑛−2 such that 𝑢, 𝑥 𝑖 , 𝑣, 𝑥 𝑖+1 ∈𝐸(𝐺) Replace edges {𝑢,𝑣} and { 𝑥 𝑖 , 𝑥 𝑖+1 } with 𝑢, 𝑥 𝑖 and 𝑣, 𝑥 𝑖+1 to obtain a Hamiltonian cycle in 𝐺 Now, the order of this talk is unconvential. Usually, one first gives motivation, then defines the problem, and ends with some proofs. Here we go the other way around: I start by showing you a proof, which will motivate our problem. (Also, it has the side-effect that if you dose off after the first couple of minutes, at least you will have seen this proof.) Bart M. P. Jansen

𝐺 has a Hamiltonian cycle ⇔ 𝐺′ has a Hamiltonian cycle Let 𝐺 be an undirected 𝑛-vertex graph having non-adjacent vertices 𝑢,𝑣 with deg 𝑢 + deg 𝑣 ≥𝑛. Let 𝐺′ be obtained from 𝐺 by adding edge {𝑢,𝑣}. Then: 𝐺 has a Hamiltonian cycle ⇔ 𝐺′ has a Hamiltonian cycle [Bondy & Chvátal ‘76] Implies Dirac’s theorem: Best-possible; there are infinitely many non-Hamiltonian graphs: with minimum degree 𝑛 2 , or in which all but 1 vertex has degree ≥𝑛/2 If 𝐺 is an 𝑛-vertex graph of minimum degree ≥𝑛/2, then 𝐺 has a Hamiltonian cycle Why does it imply Dirac’s theorem? Note that Hamiltonian Cycle is a famous NP-complete problem. What is the complexity of Hamiltonian cycle when Dirac’s condition is almost satisfied?

Results Fixed-parameter tractable algorithms to test Hamiltonicity, with parameterizations measuring the violation of Dirac’s condition Assuming the Exponential Time Hypothesis, the running times cannot be improved to 2 𝑜 𝑘 ⋅ 𝑛 𝑂 1 If all vertices of an 𝑛-vertex graph 𝐺 have degree at least 𝑛/2−𝑘, then Hamiltonian Cycle on 𝐺 can be solved in time 𝑂( 30 6𝑘 ⋅𝑛3). If all but 𝑘 vertices of an 𝑛-vertex graph 𝐺 have degree at least 𝑛/2, then Hamiltonian Cycle on 𝐺 can be solved in 𝑂( 8 𝑘 ⋅ 𝑘 2 + 𝑛 3 ) time. Let 𝐺 be an 𝑛-vertex graph such that 𝑛−𝑘 vertices of 𝐺 have degree ≥𝑛/2. There is an algorithm that, given 𝐺, constructs a graph 𝐺′ on ≤3𝑘 vertices in 𝑂( 𝑛 3 ) time, such that 𝐺 is Hamiltonian if and only if 𝐺 ′ is Hamiltonian. Second theorem follows from the kernelization result by running the standard Held-Karp DP on the equivalent input on 3𝑘 vertices. Running time of this form f(k) * poly(n) is called fixed-parameter tractable.

Let 𝐺 be an 𝑛-vertex graph such that 𝑛−𝑘 vertices of 𝐺 have degree ≥𝑛/2. There is an algorithm that, given 𝐺, constructs a graph 𝐺′ on ≤3𝑘 vertices in 𝑂( 𝑛 3 ) time, such that 𝐺 is Hamiltonian if and only if 𝐺 ′ is Hamiltonian. Let 𝑆 be the vertices of degree less than 𝑛/2, with 𝑆 =𝑘 All vertex pairs in 𝐶≔𝑉 𝐺 ∖𝑆 have degree-sum ≥𝑛: inserting edges to make 𝐶 a clique preserves Hamiltonicity Statement is trivial if 𝐶 ≤2|𝑆|, so goal is to shrink the clique 𝐶 𝑆 Graph 𝐺 𝑛=8 vertices

Let 𝐺 be an 𝑛-vertex graph such that 𝑛−𝑘 vertices of 𝐺 have degree ≥𝑛/2. There is an algorithm that, given 𝐺, constructs a graph 𝐺′ on ≤3𝑘 vertices in 𝑂( 𝑛 3 ) time, such that 𝐺 is Hamiltonian if and only if 𝐺 ′ is Hamiltonian. Build a bipartite graph 𝐻 consisting of two partite sets: the vertices from the clique 𝐶 on one side two copies 𝑠′,𝑠′′ for every low-degree vertex 𝑠∈𝑆 Find a maximum matching 𝑀 in graph 𝐻 Obtain 𝐺′ from 𝐺 by removing unmatched 𝐶-vertices 𝑆 ′ 𝑆 ′′ 𝐶 𝑆 𝐶 Graph 𝐺 𝑛=8 vertices Graph 𝐻 (bipartite)

Let 𝐺 be an 𝑛-vertex graph such that 𝑛−𝑘 vertices of 𝐺 have degree ≥𝑛/2. There is an algorithm that, given 𝐺, constructs a graph 𝐺′ on ≤3𝑘 vertices in 𝑂( 𝑛 3 ) time, such that 𝐺 is Hamiltonian if and only if 𝐺 ′ is Hamiltonian. Matching 𝑀 has at most 𝑆 ′ ∪ 𝑆 ′′ =2 𝑆 =2𝑘 edges Resulting graph 𝐺′ has at most 2𝑘+𝑘=3𝑘 vertices To prove: 𝐺 is Hamiltonian if and only if 𝐺′ is Find a maximum matching 𝑀 in graph 𝐻 Obtain 𝐺′ from 𝐺 by removing unmatched 𝐶-vertices 𝑆 ′ 𝑆 ′′ 𝐶 𝑆 𝐶 Graph 𝐺 𝑛=8 vertices Graph 𝐻 (bipartite)

To prove: 𝐺 is Hamiltonian if and only if 𝐺′ is Let 𝐺 be an 𝑛-vertex graph such that 𝑛−𝑘 vertices of 𝐺 have degree ≥𝑛/2. There is an algorithm that, given 𝐺, constructs a graph 𝐺′ on ≤3𝑘 vertices in 𝑂( 𝑛 3 ) time, such that 𝐺 is Hamiltonian if and only if 𝐺 ′ is Hamiltonian. To prove: 𝐺 is Hamiltonian if and only if 𝐺′ is

Set 𝑆 of 𝑘 low-degree vertices Let 𝐺 be an 𝑛-vertex graph such that 𝑛−𝑘 vertices of 𝐺 have degree ≥𝑛/2. There is an algorithm that, given 𝐺, constructs a graph 𝐺′ on ≤3𝑘 vertices in 𝑂( 𝑛 3 ) time, such that 𝐺 is Hamiltonian if and only if 𝐺 ′ is Hamiltonian. ⇐ Insert omitted vertices between two consecutive 𝐶-vertices Clique 𝐶 Set 𝑆 of 𝑘 low-degree vertices

Set 𝑆 of 𝑘 low-degree vertices Let 𝐺 be an 𝑛-vertex graph such that 𝑛−𝑘 vertices of 𝐺 have degree ≥𝑛/2. There is an algorithm that, given 𝐺, constructs a graph 𝐺′ on ≤3𝑘 vertices in 𝑂( 𝑛 3 ) time, such that 𝐺 is Hamiltonian if and only if 𝐺 ′ is Hamiltonian. ⇒ Re-route cycle to jump between 𝐶 and 𝑆 via matching Clique 𝐶 Set 𝑆 of 𝑘 low-degree vertices

Above/below guarantee parameterizations Brooks’ theorem: a graph of maximum degree 𝑞 is 𝑞-colorable (unless it is a clique or an odd cycle) Exists FPT algorithm for coloring parameterized by #vertices of degree >𝑞 Graph 𝑞-colorability In a CNF-formula where all of the 𝑚 clauses have size 𝑟, there exists an assignment satisfying 𝑚 1− 1 2 𝑟 clauses Exists FPT algorithm to test if you can satisfy 𝑘+𝑚 1− 1 2 𝑟 clauses Maximum Satisfiability Any 𝑚-edge graph has a cut of 𝑚/2 edges Exists FPT algorithm to test if you can cut 𝑘+ 𝑚 2 edges Maximum Cut [J & Nederlof] [Alon et al. Algorithmica ‘11] There are FPT algorithms above better bounds for max cut. [Mahajan & Raman J. Algorithms ‘99]

Conclusion Fixed-parameter tractable algorithms for two parameterizations by how far the input graph is from satisfying Dirac’s condition All but 𝑘 vertices have degree at least 𝑛/2 All vertices have degree at least 𝑛/2−𝑘 Open problem: What if all but 𝑘 vertices have degree at least 𝑛/2−𝑘? Direction for future research: Parameterize other problems by how much the conditions that guarantee existence of a solution, are violated THANK YOU!