Detecting non-Hamiltonicity in a Cubic Graph
Transcription
Detecting non-Hamiltonicity in a Cubic Graph
Detecting non-Hamiltonicity in a Cubic Graph Kieran Clancy; Jerzy Filar; Michael Haythorpe and Serguei Rossomakhine Flinders University April 9, 2015 K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine Detecting non-Hamiltonicity in a Cubic Graph Hamiltonian Cycle Problem The Hamiltonian Cycle Problem (HCP) is defined by the following - deceptively simple - statement: K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine Detecting non-Hamiltonicity in a Cubic Graph Hamiltonian Cycle Problem The Hamiltonian Cycle Problem (HCP) is defined by the following - deceptively simple - statement: Given a graph, find a simple cycle that contains all vertices of the graph (Hamiltonian cycle (HC)) or prove that one does not exist. K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine Detecting non-Hamiltonicity in a Cubic Graph Hamiltonian Cycle Problem The Hamiltonian Cycle Problem (HCP) is defined by the following - deceptively simple - statement: Given a graph, find a simple cycle that contains all vertices of the graph (Hamiltonian cycle (HC)) or prove that one does not exist. Graphs possessing a HC are called Hamiltonian. K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine Detecting non-Hamiltonicity in a Cubic Graph Hamiltonian Cycle Problem The Hamiltonian Cycle Problem (HCP) is defined by the following - deceptively simple - statement: Given a graph, find a simple cycle that contains all vertices of the graph (Hamiltonian cycle (HC)) or prove that one does not exist. Graphs possessing a HC are called Hamiltonian. It is known that HCP is already NP-complete even in the case when simply a Yes or No answer is required and even when we restrict ourselves to cubic graphs only. K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine Detecting non-Hamiltonicity in a Cubic Graph Hamiltonian Cycle Problem The Hamiltonian Cycle Problem (HCP) is defined by the following - deceptively simple - statement: Given a graph, find a simple cycle that contains all vertices of the graph (Hamiltonian cycle (HC)) or prove that one does not exist. Graphs possessing a HC are called Hamiltonian. It is known that HCP is already NP-complete even in the case when simply a Yes or No answer is required and even when we restrict ourselves to cubic graphs only. Despite the above, I am here to suggest that polynomial algorithms may exist that will supply a correct answer but only “most of the time”. K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine Detecting non-Hamiltonicity in a Cubic Graph Well, it may be all right in practice, but it will never work in theory! Visualisation of a solution to GP(243,2) instance of the Hamiltonian cycle problem. It displays one of three possible solutions out of 3486 candidate solutions - found by SLH. K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine Detecting non-Hamiltonicity in a Cubic Graph Embedding in Markov Decision Processes Filar and Krass, Mathematics of OR, 1994, developed a model for the HCP by embedding it in a perturbed Markov decision process. K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine Detecting non-Hamiltonicity in a Cubic Graph Embedding in Markov Decision Processes Filar and Krass, Mathematics of OR, 1994, developed a model for the HCP by embedding it in a perturbed Markov decision process. They converted the deterministic HCP to a particular average-reward Markov decision process. K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine Detecting non-Hamiltonicity in a Cubic Graph Embedding in Markov Decision Processes Filar and Krass, Mathematics of OR, 1994, developed a model for the HCP by embedding it in a perturbed Markov decision process. They converted the deterministic HCP to a particular average-reward Markov decision process. Feinberg, Mathematics of OR, 2000, converted the HCP to a class of Markov decision processes, the so-called weighted discounted Markov decision processes. K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine Detecting non-Hamiltonicity in a Cubic Graph Embedding in Markov Decision Processes Filar and Krass, Mathematics of OR, 1994, developed a model for the HCP by embedding it in a perturbed Markov decision process. They converted the deterministic HCP to a particular average-reward Markov decision process. Feinberg, Mathematics of OR, 2000, converted the HCP to a class of Markov decision processes, the so-called weighted discounted Markov decision processes. MDP embedding implies that you can search for a Hamiltonian cycle in a nicely structured polyhedral domain of discounted occupational measures. K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine Detecting non-Hamiltonicity in a Cubic Graph Notations The HCP in this Talk Let G be a directed graph on N vertices/nodes with no self-loops, S = {1, 2, . . . , N} be the set of all nodes and A be the set of all arcs in this graph. For each node i, we can define two subsets A(i) = {a ∈ S|(i, a) ∈ A } and B(i) = {b ∈ S|(b, i) ∈ A }. K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine Detecting non-Hamiltonicity in a Cubic Graph Notations The HCP in this Talk Let G be a directed graph on N vertices/nodes with no self-loops, S = {1, 2, . . . , N} be the set of all nodes and A be the set of all arcs in this graph. For each node i, we can define two subsets A(i) = {a ∈ S|(i, a) ∈ A } and B(i) = {b ∈ S|(b, i) ∈ A }. Example S = {1, 2, 3, 4} A(1) = {2, 3, 4} K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine B(1) = {2, 4} Detecting non-Hamiltonicity in a Cubic Graph Domain of Discounted Occupational Measures of an MDP Discount: β ∈ (0, 1); Policy: f := {f (i, a) | ∀ i ∈ S , a ∈ A(i)} f (i, a) := Pr [At = a | St = i]; ∀ i ∈ S , a ∈ A(i), t ∈ N ∞ X xiak (f ) := β t Pr [St = i, At = a | S0 = k, f ]. t=0 for convenience we will ”change variables” and use instead xiak (f ) := (1 − β N ) ∞ X β t Pr [St = i, At = a | S0 = k, f ]. t=0 K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine Detecting non-Hamiltonicity in a Cubic Graph Domain of Discounted Occupational Measures Hβ Polytope Associated with the Graph G ; β ∈ (0, 1) X X x1a − β a∈A(1) X a∈A(i) xb1 = 1 − β N b∈B(1) xia − β X xbi = 0 ; i = 2, 3, . . . , N b∈B(i) X x1a = 1 a∈A(1) xia ≥ 0 K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine ; ∀ i ∈ S , a ∈ A(i) Detecting non-Hamiltonicity in a Cubic Graph Illustration Example 1 −β 0 0 1 1 0 −β 0 1 1 0 0 −β 1 −β 1 0 0 0 0 1 −β 0 0 0 −β 1 0 0 0 0 1 −β 0 −β 0 0 1 0 0 0 −β 1 0 x12 x13 x14 x21 x23 x32 x34 x41 x43 = 1 − β4 0 0 0 1 xia ≥ 0 ; i = 1, 2, 3, 4 , a ∈ A(i) K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine Detecting non-Hamiltonicity in a Cubic Graph Illustration Example 1 −β 0 0 1 1 0 −β 0 1 1 0 0 −β 1 −β 1 0 0 0 0 1 −β 0 0 0 −β 1 0 0 0 0 1 −β 0 −β 0 0 1 0 0 0 −β 1 0 x12 x13 x14 x21 x23 x32 x34 x41 x43 = 1 − β4 0 0 0 1 xia ≥ 0 ; i = 1, 2, 3, 4 , a ∈ A(i) xT = (1, 0, 0, 0, β, 0, β 2 , β 3 , 0) K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine Detecting non-Hamiltonicity in a Cubic Graph Or, if you insist on optimization..... Example 4 X X min xia xib i=1 a6=b 1 −β 0 0 1 1 0 −β 0 1 1 0 0 −β 1 −β 1 0 0 0 0 1 −β 0 0 0 −β 1 0 0 0 0 1 −β 0 0 0 −β 1 0 −β 0 0 1 0 x12 x13 x14 x21 x23 x32 x34 x41 x43 = 1 − β4 0 0 0 1 xia ≥ 0 ; i = 1, 2, 3, 4 , a ∈ A(i) xT = (1, 0, 0, 0, β, 0, β 2 , β 3 , 0) =⇒ K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine P4 i=1 P a6=b xia xib = 0; not a coincidence! Detecting non-Hamiltonicity in a Cubic Graph Reducing the Feasible Region The Wedged Hamiltonian Polytope WHβ [Eshragh et. al. 2009] Hβ β N−1 ≤ and X xia ≤ β 1 for i = 2, 3, . . . , N a∈A(i) K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine Detecting non-Hamiltonicity in a Cubic Graph Reducing the Feasible Region The Wedged Hamiltonian Polytope WHβ [Eshragh et. al. 2009] Hβ β N−1 ≤ and X xia ≤ β 1 for i = 2, 3, . . . , N a∈A(i) or, if need be, using shortest paths K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine Detecting non-Hamiltonicity in a Cubic Graph Reducing the Feasible Region The Wedged Hamiltonian Polytope WHβ [Eshragh et. al. 2009] Hβ β N−1 ≤ and X xia ≤ β 1 for i = 2, 3, . . . , N a∈A(i) or, if need be, using shortest paths β N−πi ≤ X xia ≤ β πi for i = 2, 3, . . . , N a∈A(i) K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine Detecting non-Hamiltonicity in a Cubic Graph Reducing the Feasible Region The Wedged Hamiltonian Polytope WHβ [Eshragh et. al. 2009] Hβ β N−1 ≤ and X xia ≤ β 1 for i = 2, 3, . . . , N a∈A(i) or, if need be, using shortest paths β N−πi ≤ X xia ≤ β πi for i = 2, 3, . . . , N a∈A(i) K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine Detecting non-Hamiltonicity in a Cubic Graph Lifting to Higher Dimension Lifting and peeling task 1 Many valid propositions about WHβ that hold ∀ ; β near 1; can be “lifted” to parameter free, propositions in higher dimensional spaces. K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine Detecting non-Hamiltonicity in a Cubic Graph Lifting to Higher Dimension Lifting and peeling task 1 2 Many valid propositions about WHβ that hold ∀ ; β near 1; can be “lifted” to parameter free, propositions in higher dimensional spaces. We are interested in the convex hull of those xk (β) ∈ WHβ whose positive entries trace out tours in the given graph. K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine Detecting non-Hamiltonicity in a Cubic Graph Lifting to Higher Dimension Lifting and peeling task 1 2 3 Many valid propositions about WHβ that hold ∀ ; β near 1; can be “lifted” to parameter free, propositions in higher dimensional spaces. We are interested in the convex hull of those xk (β) ∈ WHβ whose positive entries trace out tours in the given graph. But, we observed that these points can be expressed as PN−1 k x (β) = r =0 β r xkr . K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine Detecting non-Hamiltonicity in a Cubic Graph Lifting to Higher Dimension Lifting and peeling task 1 2 3 Many valid propositions about WHβ that hold ∀ ; β near 1; can be “lifted” to parameter free, propositions in higher dimensional spaces. We are interested in the convex hull of those xk (β) ∈ WHβ whose positive entries trace out tours in the given graph. But, we observed that these points can be expressed as PN−1 k x (β) = r =0 β r xkr . Example xT = (1, 0, 0, 0, β, 0, β 2 , β 3 , 0) = β 0 (1, 0, 0, 0, 0, 0, 0, 0, 0)+ β 1 (0, 0, 0, 0, 1, 0, 0, 0, 0)+β 2 (0, 0, 0, 0, 0, 0, 1, 0, 0)+β 3 (0, 0, 0, 0, 0, 0, 0, 1, 0) K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine Detecting non-Hamiltonicity in a Cubic Graph Polytope in N 4 dimensions Lifting and peeling task cont. 1 Thus variables in xk (β) can be replaced by an extended set of variable vectors {xkr ; r = 0, 1, . . . , N − 1}. K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine Detecting non-Hamiltonicity in a Cubic Graph Polytope in N 4 dimensions Lifting and peeling task cont. 1 2 Thus variables in xk (β) can be replaced by an extended set of variable vectors {xkr ; r = 0, 1, . . . , N − 1}. The latter also possess a probabilistic interpretation: xrk,ia := [xkr ]ia = Pr {starting at k, i is the r th vertex visited & arc (i,a) is selected} = [P r (f )]ki f (i, a). K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine Detecting non-Hamiltonicity in a Cubic Graph Polytope in N 4 dimensions Lifting and peeling task cont. 1 2 Thus variables in xk (β) can be replaced by an extended set of variable vectors {xkr ; r = 0, 1, . . . , N − 1}. The latter also possess a probabilistic interpretation: xrk,ia := [xkr ]ia = Pr {starting at k, i is the r th vertex visited & arc (i,a) is selected} = [P r (f )]ki f (i, a). 3 When policy f traces out a tour, then each xrk,ia ∈ {0, 1} K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine Detecting non-Hamiltonicity in a Cubic Graph Polytope in N 4 dimensions Lifting and peeling task cont. 1 The equating of powers of β yields to following, linear, constraints 2 X k x0,ia = δki ∀ i, k (1) a∈A(i) X a∈A(i) xrk,ia − X xrk−1,bi = 0 ∀ i, k, r = 1, . . . , N − 1 (2) b∈B(i) X k xN−1,bi = δki ∀ i, k (3) b∈B(i) xrk,ia 3 ∈ [0, 1] ∀ r , i, k, a ∈ A(i). (4) No variables are required to be integer, or 0 − 1, valued! K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine Detecting non-Hamiltonicity in a Cubic Graph Polytope in N 4 dimensions Lifting and peeling task cont. 1 Now, consider the (possibly empty) set Q that is the closed convex hull of all points - in the extended space - induced by the tours of the given graph G . K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine Detecting non-Hamiltonicity in a Cubic Graph Polytope in N 4 dimensions Lifting and peeling task cont. 1 Now, consider the (possibly empty) set Q that is the closed convex hull of all points - in the extended space - induced by the tours of the given graph G . 2 Ultimate goal: construct a polytope P defined by polynomially many constraints and variables, and only so “slightly” larger than Q that: Q ⊂ P but P = ∅ ⇔α G is non-Hamiltonian, K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine Detecting non-Hamiltonicity in a Cubic Graph Polytope in N 4 dimensions Lifting and peeling task cont. 1 Now, consider the (possibly empty) set Q that is the closed convex hull of all points - in the extended space - induced by the tours of the given graph G . 2 Ultimate goal: construct a polytope P defined by polynomially many constraints and variables, and only so “slightly” larger than Q that: Q ⊂ P but P = ∅ ⇔α G is non-Hamiltonian, 3 where ⇔α means for all except rare(?) instances of graphs that are “less likely than α”. K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine Detecting non-Hamiltonicity in a Cubic Graph Polytope in N 4 dimensions Lifting and peeling task cont. 1 Now, consider the (possibly empty) set Q that is the closed convex hull of all points - in the extended space - induced by the tours of the given graph G . 2 Ultimate goal: construct a polytope P defined by polynomially many constraints and variables, and only so “slightly” larger than Q that: Q ⊂ P but P = ∅ ⇔α G is non-Hamiltonian, 3 where ⇔α means for all except rare(?) instances of graphs that are “less likely than α”. 4 The polytope P defined by (1) − (4) contains Q but is still way too large! K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine Detecting non-Hamiltonicity in a Cubic Graph Cubic Graphs as a “Test Laboratory” Much can be learned about the HCP, by studying the whole population of connected cubic graphs on N vertices K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine Detecting non-Hamiltonicity in a Cubic Graph Cubic Graphs as a “Test Laboratory” Much can be learned about the HCP, by studying the whole population of connected cubic graphs on N vertices The HCP is already NP−complete for cubic graphs K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine Detecting non-Hamiltonicity in a Cubic Graph Cubic Graphs as a “Test Laboratory” Much can be learned about the HCP, by studying the whole population of connected cubic graphs on N vertices The HCP is already NP−complete for cubic graphs The above N 4 dimensionality drops to N 3 K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine Detecting non-Hamiltonicity in a Cubic Graph Cubic Graphs as a “Test Laboratory” Much can be learned about the HCP, by studying the whole population of connected cubic graphs on N vertices The HCP is already NP−complete for cubic graphs The above N 4 dimensionality drops to N 3 For small N there is reliable, public domain, software enabling us to explicitly enumerate all distinct, connected, cubic graphs on N vertices K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine Detecting non-Hamiltonicity in a Cubic Graph Cubic Graphs as a “Test Laboratory” Much can be learned about the HCP, by studying the whole population of connected cubic graphs on N vertices The HCP is already NP−complete for cubic graphs The above N 4 dimensionality drops to N 3 For small N there is reliable, public domain, software enabling us to explicitly enumerate all distinct, connected, cubic graphs on N vertices We recall that, for N = 8, 10, 12, 14, 16, 18, there are 5, 19, 85, 509, 4060, 41301 such graphs K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine Detecting non-Hamiltonicity in a Cubic Graph Cubic Graphs as a “Test Laboratory” Much can be learned about the HCP, by studying the whole population of connected cubic graphs on N vertices The HCP is already NP−complete for cubic graphs The above N 4 dimensionality drops to N 3 For small N there is reliable, public domain, software enabling us to explicitly enumerate all distinct, connected, cubic graphs on N vertices We recall that, for N = 8, 10, 12, 14, 16, 18, there are 5, 19, 85, 509, 4060, 41301 such graphs Unsurprisingly, perhaps, the structure of cubic graphs is already very rich. K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine Detecting non-Hamiltonicity in a Cubic Graph Cubic bridge and non-bridge graphs N 10 12 14 16 18 20 22 24 Cubic 19 85 509 4060 41301 510489 7319447 117940535 NH 2 5 35 219 1666 14498 148790 1768732 K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine Bridge 1 4 29 186 1435 12671 131820 1590900 NBNH 1 1 6 33 231 1827 16970 177832 Bridge/NH 0.5000 0.8000 0.8286 0.8493 0.8613 0.8740 0.8859 0.8995 Detecting non-Hamiltonicity in a Cubic Graph Cubic bridge and non-bridge graphs N 10 12 14 16 18 20 22 24 Cubic 19 85 509 4060 41301 510489 7319447 117940535 NH 2 5 35 219 1666 14498 148790 1768732 Bridge 1 4 29 186 1435 12671 131820 1590900 NBNH 1 1 6 33 231 1827 16970 177832 Bridge/NH 0.5000 0.8000 0.8286 0.8493 0.8613 0.8740 0.8859 0.8995 Conjecture (still open) lim N→∞ |cubic bridge graphs of size N| =1 |cubic non-Hamiltonian graphs of size N| K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine Detecting non-Hamiltonicity in a Cubic Graph Next smaller polytope Additional all-purpose constraints X xrk,ia − a∈A(i) X i xN−r ,ka = 0 ∀ i, k, r = 1, . . . , N − 1 (5) a∈A(k) N−1 X r =0 N X xrk,ia − xrk,ia − N−1 X r =0 N X xrj ,ia = 0 ∀ j 6= k, i, a ∈ A(i) (6) k xt,ia = 0 ∀ r 6= t, i, a ∈ A(i) (7) xrk,ia = 1 ∀ i, k (8) xrk,ia = 1 ∀ k, r = 0, . . . , N − 1. (9) k=1 k=1 N−1 X X r =0 a∈A(i) N X X i=1 a∈A(i) K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine Detecting non-Hamiltonicity in a Cubic Graph Next smaller polytope: some explanation Typical intuition behind preceding all-purpose constraints Suppose {xkr ; r = 0, 1, . . . , N − 1} corresponds to a Hamiltonian cycle and consider the constraint (5) K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine Detecting non-Hamiltonicity in a Cubic Graph Next smaller polytope: some explanation Typical intuition behind preceding all-purpose constraints Suppose {xkr ; r = 0, 1, . . . , N − 1} corresponds to a Hamiltonian cycle and consider the constraint (5) X a∈A(i) xrk,ia − X i xN−r ,ka = 0 ∀ i, k, r = 1, . . . , N − 1. a∈A(k) K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine Detecting non-Hamiltonicity in a Cubic Graph Next smaller polytope: some explanation Typical intuition behind preceding all-purpose constraints Suppose {xkr ; r = 0, 1, . . . , N − 1} corresponds to a Hamiltonian cycle and consider the constraint (5) X a∈A(i) xrk,ia − X i xN−r ,ka = 0 ∀ i, k, r = 1, . . . , N − 1. a∈A(k) This simply states that when policy f traces out a tour, then [P r (f )]ki = [P N−r (f )]ik , that is, probability of going from vertex k to i in r steps, is same as going from vertex i to k on the same tour in N − r steps. K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine Detecting non-Hamiltonicity in a Cubic Graph Next smaller polytope, cont. More all-purpose constraints 1 Starting node k must not be revisited before the last step: xrk,ka = 0 ∀k, a ∈ A(k), r = 1, . . . , N − 1 (10) xrk,bk (11) = 0 ∀k, b ∈ B(k), r = 0, 1, . . . , N − 2. K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine Detecting non-Hamiltonicity in a Cubic Graph Next smaller polytope, cont. More all-purpose constraints 1 2 Starting node k must not be revisited before the last step: xrk,ka = 0 ∀k, a ∈ A(k), r = 1, . . . , N − 1 (10) xrk,bk (11) = 0 ∀k, b ∈ B(k), r = 0, 1, . . . , N − 2. Simple wedge constraints transformed to xrk,ia = 0 ∀ k, i 6= k, a 6= k ∈ A(i), r = 0 or r = N − 1 (12) K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine Detecting non-Hamiltonicity in a Cubic Graph Next smaller polytope, cont. More all-purpose constraints 1 2 Starting node k must not be revisited before the last step: xrk,ka = 0 ∀k, a ∈ A(k), r = 1, . . . , N − 1 (10) xrk,bk (11) = 0 ∀k, b ∈ B(k), r = 0, 1, . . . , N − 2. Simple wedge constraints transformed to xrk,ia = 0 ∀ k, i 6= k, a 6= k ∈ A(i), r = 0 or r = N − 1 (12) Proposition For all cubic bridge graphs, the resulting polytope P 0 = ∅. K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine Detecting non-Hamiltonicity in a Cubic Graph The next smaller polytope, cont. Graph specific (shortest path) constraints 1 Let πik be the length of the shortest path between nodes k and i in the graph G and replace constraints (12) by xrk,ia = 0 ∀ i, k, a ∈ A(i), r < πik , r ≥ N − πka 2 (13) Empirical finding: N 10 12 14 16 18 # B 1 4 29 186 1435 P0 = ∅ 1 4 29 186 1435 K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine # NBNH 1 1 6 33 231 P0 = ∅ 0 0 1 6 42 Detecting non-Hamiltonicity in a Cubic Graph The next smaller polytope, cont. Graph specific (shortest path) constraints 1 Let πik be the length of the shortest path between nodes k and i in the graph G and replace constraints (12) by xrk,ia = 0 ∀ i, k, a ∈ A(i), r < πik , r ≥ N − πka 2 Empirical finding: N 10 12 14 16 18 3 (13) # B 1 4 29 186 1435 P0 = ∅ 1 4 29 186 1435 # NBNH 1 1 6 33 231 P0 = ∅ 0 0 1 6 42 Slight progress; but can we do better? K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine Detecting non-Hamiltonicity in a Cubic Graph Graph Specific Structures: Crackers, Mutants We shall attempt to generalise the benefits of a bridge. K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine Detecting non-Hamiltonicity in a Cubic Graph Graph Specific Structures: Crackers, Mutants We shall attempt to generalise the benefits of a bridge. An n-cracker is a set of n non-adjacent edges whose removal disconnects the graph, such that removal of any proper subset of the n-cracker does not disconnect the graph. K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine Detecting non-Hamiltonicity in a Cubic Graph Graph Specific Structures: Crackers, Mutants We shall attempt to generalise the benefits of a bridge. An n-cracker is a set of n non-adjacent edges whose removal disconnects the graph, such that removal of any proper subset of the n-cracker does not disconnect the graph. We will denote the size of the smallest cracker by s. It can be shown that s ≥ 1, for all except two exceptional, trivially small, cubic graphs. K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine Detecting non-Hamiltonicity in a Cubic Graph Graph Specific Structures: Crackers, Mutants We shall attempt to generalise the benefits of a bridge. An n-cracker is a set of n non-adjacent edges whose removal disconnects the graph, such that removal of any proper subset of the n-cracker does not disconnect the graph. We will denote the size of the smallest cracker by s. It can be shown that s ≥ 1, for all except two exceptional, trivially small, cubic graphs. A non-Hamiltonian cubic graph with s ≥ 4, will be called a mutant. Mutants are very “rare”! K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine Detecting non-Hamiltonicity in a Cubic Graph Graph Specific Structures: Crackers, Mutants We shall attempt to generalise the benefits of a bridge. An n-cracker is a set of n non-adjacent edges whose removal disconnects the graph, such that removal of any proper subset of the n-cracker does not disconnect the graph. We will denote the size of the smallest cracker by s. It can be shown that s ≥ 1, for all except two exceptional, trivially small, cubic graphs. A non-Hamiltonian cubic graph with s ≥ 4, will be called a mutant. Mutants are very “rare”! K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine Detecting non-Hamiltonicity in a Cubic Graph Graph Specific Structures: Crackers, Mutants We shall attempt to generalise the benefits of a bridge. An n-cracker is a set of n non-adjacent edges whose removal disconnects the graph, such that removal of any proper subset of the n-cracker does not disconnect the graph. We will denote the size of the smallest cracker by s. It can be shown that s ≥ 1, for all except two exceptional, trivially small, cubic graphs. A non-Hamiltonian cubic graph with s ≥ 4, will be called a mutant. Mutants are very “rare”! The Petersen graph is a mutant with s = 5. K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine Detecting non-Hamiltonicity in a Cubic Graph Illustration of simple graphs with cubic crackers Bridge graphs all have s = 1 A graph with a 2−cracker and s = 2 A graph with a 3−cracker and s = 3 K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine Detecting non-Hamiltonicity in a Cubic Graph Exploiting positional properties Peeling task cont. 1 But when f traces out a tour, then each xrk,ia ∈ {0, 1} and the position of i on this tour is given by: K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine Detecting non-Hamiltonicity in a Cubic Graph Exploiting positional properties Peeling task cont. 1 But when f traces out a tour, then each xrk,ia ∈ {0, 1} and the position of i on this tour is given by: P P k µki := N−1 r =0 a∈A(i) r xr ,ia . K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine Detecting non-Hamiltonicity in a Cubic Graph Exploiting positional properties Peeling task cont. 1 2 But when f traces out a tour, then each xrk,ia ∈ {0, 1} and the position of i on this tour is given by: P P k µki := N−1 r =0 a∈A(i) r xr ,ia . In fact, when f traces out a tour, then the matrix M of vertex positions on this tour is given by: M := N−1 X r [P r (f )]. r =0 3 Identification of crackers leads to many “peeling constraints” that exploit positional properties of vertices and arcs on Hamiltonian cycles. K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine Detecting non-Hamiltonicity in a Cubic Graph Crackers & positional properties Cracker induced divission of vertices 1 Identification of a cracker uniquely partitions the vertices into U and V connected only by the edges forming the cracker. K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine Detecting non-Hamiltonicity in a Cubic Graph Crackers & positional properties Cracker induced divission of vertices 1 Identification of a cracker uniquely partitions the vertices into U and V connected only by the edges forming the cracker. K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine Detecting non-Hamiltonicity in a Cubic Graph Crackers & positional properties Cracker induced divission of vertices 1 Identification of a cracker uniquely partitions the vertices into U and V connected only by the edges forming the cracker. 2 If there is a tour, then this partition contains lots of useful information about positions of various vertices. K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine Detecting non-Hamiltonicity in a Cubic Graph Crackers & positional properties Cracker induced divission of vertices 1 Identification of a cracker uniquely partitions the vertices into U and V connected only by the edges forming the cracker. 2 If there is a tour, then this partition contains lots of useful information about positions of various vertices. 3 Fix the orientation of the tour, as given in the figure. K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine Detecting non-Hamiltonicity in a Cubic Graph The second best results to date Polytope P 0 : (1)-(13) + cracker constraints 1 Empirical finding: N 10 12 14 16 18 # B 1 4 29 186 1435 P0 = ∅ 1 4 29 186 1435 K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine # NBNH 1 1 6 33 231 P0 = ∅ 0 1 6 33 228 Detecting non-Hamiltonicity in a Cubic Graph The second best results to date Polytope P 0 : (1)-(13) + cracker constraints 1 Empirical finding: N 10 12 14 16 18 2 # B 1 4 29 186 1435 P0 = ∅ 1 4 29 186 1435 # NBNH 1 1 6 33 231 P0 = ∅ 0 1 6 33 228 Much better!? For N ≤ 16 only 1 (Petersen graph) out of 261 NH graphs was not correctly identified! K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine Detecting non-Hamiltonicity in a Cubic Graph The second best results to date Polytope P 0 : (1)-(13) + cracker constraints 1 Empirical finding: N 10 12 14 16 18 # B 1 4 29 186 1435 P0 = ∅ 1 4 29 186 1435 # NBNH 1 1 6 33 231 P0 = ∅ 0 1 6 33 228 2 Much better!? For N ≤ 16 only 1 (Petersen graph) out of 261 NH graphs was not correctly identified! 3 If an 18−vertex cubic graph were selected at random and tested as above, then the chance of “mis-diagnosis” would be 3/41301=0.000073 . K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine Detecting non-Hamiltonicity in a Cubic Graph Symmetry Reductions: Petersen graph example Petersen graph. K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine Detecting non-Hamiltonicity in a Cubic Graph Petersen graph example Petersen graph. Three edges are equivalent, but only two can be used. K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine Detecting non-Hamiltonicity in a Cubic Graph Petersen graph example Petersen graph. Remove an edge. K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine Detecting non-Hamiltonicity in a Cubic Graph Petersen graph example Petersen graph. Two red edges are equivalent, and only one can be used. K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine Detecting non-Hamiltonicity in a Cubic Graph Petersen graph example Petersen graph. Remove an edge. K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine Detecting non-Hamiltonicity in a Cubic Graph Petersen graph example Petersen graph. Blue edges are forced, so red edge cannot be used. K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine Detecting non-Hamiltonicity in a Cubic Graph Petersen graph example Petersen graph. Remove edge, and shorten sequence of degree 2 vertices. K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine Detecting non-Hamiltonicity in a Cubic Graph Petersen graph example Petersen graph. A forced short cycle occurs, implying the graph is non-Hamiltonian. P0 = ∅ K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine Detecting non-Hamiltonicity in a Cubic Graph The best heuristic to date Symmetry reductions + testing P 0 : (1)-(13) + cracker constraints 1 Empirical finding: N 10 12 14 16 18 # B 1 4 29 186 1435 P0 = ∅ 1 4 29 186 1435 K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine # NBNH 1 1 6 33 231 P0 = ∅ 1 1 6 33 229 Detecting non-Hamiltonicity in a Cubic Graph The best heuristic to date Symmetry reductions + testing P 0 : (1)-(13) + cracker constraints 1 Empirical finding: N 10 12 14 16 18 2 # B 1 4 29 186 1435 P0 = ∅ 1 4 29 186 1435 # NBNH 1 1 6 33 231 P0 = ∅ 1 1 6 33 229 Slightly better!? For N ≤ 16 ALL 261 NH graphs were correctly identified! K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine Detecting non-Hamiltonicity in a Cubic Graph The best heuristic to date Symmetry reductions + testing P 0 : (1)-(13) + cracker constraints 1 Empirical finding: N 10 12 14 16 18 # B 1 4 29 186 1435 P0 = ∅ 1 4 29 186 1435 # NBNH 1 1 6 33 231 P0 = ∅ 1 1 6 33 229 2 Slightly better!? For N ≤ 16 ALL 261 NH graphs were correctly identified! 3 If an 18−vertex cubic graph were selected at random and tested as above, then the chance of “mis-diagnosis” would be 2/41301=0.000048 . K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine Detecting non-Hamiltonicity in a Cubic Graph The above results are (will be?) interspersed in: Filar, Haythorpe and Rossomakhine, just revised for Computers and OR, 2015?. Avrachenkov, Eshragh and Filar, Annals of OR, 2014. Baniasadi, Ejov, Filar and Haythorpe, under review for SpringerBriefs in OR, 2014. Clancy, PhD thesis, 2015? K. Clancy; J.A. Filar; M. Haythorpe and S. Rossomakhine Detecting non-Hamiltonicity in a Cubic Graph