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