Hamiltonian cycles on (regular) polyhedra (PPT)

advertisement
Bridges 2004, Winfield KS
Hamiltonian Cycles
on Symmetrical Graphs
Carlo H. Séquin
EECS Computer Science Division
University of California, Berkeley
Map of Königsberg

Can you find a path that crosses all seven bridges
exactly once – and then returns to the start ?
Leonhard Euler (1707-83) says: NO ! (1735)
– because there are vertices with odd valence.
Definitions

Eulerian Path:
Uses all edges of a graph.

Eulerian Cycle:
A closed Eulerian Path
that returns to the start.

Hamiltonian Path:
Visits all vertices once.

Hamiltonian Cycle:
A closed Ham. Path.
START
END
This is a Test … (closed book!)

What Eulerian / Hamiltonian Path / Cycle(s)
does the following graph contain ?
Answer:
 It
admits an Eulerian Cycle !
– but no Hamiltonian Path.
Another Example … (extra credit!)

What paths/cycles exist on this graph?

No Eulerian Cycles: Not all valences are even.
No Eulerian Paths: >2 odd-valence vertices.



Hamiltonian Cycles? – YES!
= Projection of a cube (edge frame);
Do other Platonic solids have Hamiltonian cycles ?
The Platonic Solids in 3D
 Eulerian
Cycles ?

Hamiltonian Cycles ?
The Octahedron

All vertices have valence 4.

They admit 2 paths passing through.

Pink edges form Hamiltonian cycle.

Yellow edges form Hamiltonian cycle.

The two paths are congruent !

All edges are covered.

Together they form a Eulerian cycle.

Are there other (semi-)regular
polyhedra for which we can do that ?
The Cuboctahedron

Hamiltonian cycle
on polyhedron edges.

Flattened net of
cuboctahedron
to show symmetry.
The cyan and the red cycles are congruent (mirrored)!
Larger Challenges

All these graphs have been planar … boring !

Our examples had only two Hamiltonian cycles.

Can we find graphs that are covered by
three or more Hamiltonian cycles ?
 Graphs need to have vertices of valence ≥ 6.

Can we still make those cycles congruent ?
 Graphs need to have all vertices equivalent.

Let’s look at complete graphs,
i.e., N fully connected vertices.
Complete Graphs K5, K7, and K9

5, 7, 9 vertices – all connected to each other.

Let’s only consider graphs with all even vertices,
i.e., only K2i+1.
K5
K7
Can we make the i Hamiltonian cycles in each graph congruent ?
K9
Complete Graphs K2i+1
 K2i+1 will need i Hamiltonian cycles for coverage.

Arrange nodes with i-fold symmetry: 2i-gon  C2i

Last node is placed in center.
The common Hamiltonian cycle for all K2i+1
Make Constructions in 3D …

We would like to have highly symmetrical graphs.

All vertices should be of the same even valence.

All vertices should be connected equivalently.

Graph should allow for some symmetrical layout
in 3D space.

Where can we obtain such graphs? From 4D!
(But don’t be afraid of the 4D source …
This is really just a way of getting interesting
3D wire frames on which we can play Euler’s
coloring game.
The 6 Regular Polytopes in 4D
From BRIDGES’2002 Talk
Which 4D-to-3D Projection ??

There are many possible ways to project the
edge frame of the 4D polytopes to 3D.
Example: Tesseract (Hypercube, 8-Cell)
Cell-first
Face-first
Edge-first
Vertex-first
Use Cell-first: High symmetry; no coinciding vertices/edges
4D Simplex: 2 Hamiltonian Paths
Two identical paths, complementing each other
C2
4D Cross Polytope: 3 Paths
 All
vertices have valence 6 !
C3
Hypercube: 2 Hamitonian Cycles
 There
are many different options:
The Most Satisfying Solution ?
 Each
C4 (C2)
Path
has its own
C2-symmetry.
 90°-rotation
around z-axis
changes color
on all edges.
The 24-Cell Is More Challenging

Valence 8:
-> 4 Hamiltonian paths
are needed !

C4
Natural to consider
one C4-axis
for replicating the
Hamiltonian cycles.
24-Cell: Shell-based Approach

This is a mess …
hard to deal with !
Exploiting the
concentric shells:
5 families of edges.
Shell-Schedule for the 24-Cell
 The
24 vertices lie on 3 shells.
 Pre-color
the shells individually
obeying the desired symmetry.
 Rotate
shells against each other.
OUTER SHELL
MIDDLE SHELL
INNER SHELL
This is the visitation schedule for one Ham. cycle.
One Cycle – Showing Broken Symmetry
Almost C2
C2-Symmetry  More than One Cycle!
C2

That is what I had to inspect for …
Path Composition
24-Cell: 4 Hamiltonian Cycles
Aligned:
 4-fold symmetry
Why Shells Make Task Easier
 Decompose
problem into smaller ones:

Find a suitable shell schedule;

Prepare components on shells
compatible with schedule;

Find a coloring that fits the schedule
and glues components together,
by “rotating” the shells and connector edges
within the chosen symmetry group.
 Fewer
combinations to deal with.
 Easier
to maintain desired symmetry.
Tetrahedral Symmetry on “0cta”-Shell

C3*-rotations that keep one color in place,
cyclically exchange the three other ones:
C3*
C3*
C3*
C3*
“Tetrahedral” Symmetry for the 24-Cell

All shells must have the same symmetry orientation
- this reduces the size of the search tree greatly.

Of course such a solution may not exist …
Note that the same-colored edges are disconnected !
Another Shell-Schedule for the 24-Cell

Stay on each shell for only one edge at a time:
OUTER SHELL
MIDDLE SHELL
INNER SHELL
This is the schedule needed for
overall tetrahedral symmetry !
Exploiting C3-Symmetry for the 24-Cell
OUTER SHELL
MIDDLE SHELL
I/O-MIRROR
INNER SHELL
REPEATED UNIT

Only 1/3 of the cycle needs to be found.
(C3-axis does not go through any edges, vertices)

We can also use inside / outside symmetry,
so only 1/6 of the cycle needs to be found !
One of the C3-symmetric Cycles
INSIDE-OUTSIDE SYMMETRY
Pipe-Cleaner Models for the 24-Cell
That is actually how I first found
the tetrahedral solution !
INNER
OCTA
CENTRAL
CUBOCTA
OUTER
OCTA
Rapid Prototyping Model of the 24-Cell

Notice
the 3-fold
permutation
of colors
Made on
the Z-corp
machine.
3D Color Printer (Z Corporation)
The Uncolored 120-Cell

120-Cell:

600 valence 4-vertices, 1200 edges

--> May yield 2 Hamiltonian cycles length 600.
Brute-force approach for the 120-Cell
Thanks to Mike Pao for his programming efforts !
 Assign
opposite edges different colors
(i.e., build both cycles simultaneously).
 Do
path-search with backtracking.
 Came
to a length of 550/600,
but then painted ourselves in a corner !
(i.e., could not connect back to the start).
 Perhaps
we can exploit symmetry
to make search tree less deep.
A More Promising Approach

Clearly we need to employ the shell-based
approach for these monsters!

But what symmetries can we expect ?

These objects belong to the icosahedral
symmetry group which has
6 C5-axes and 10 C3-axes.

Can we expect the individual paths to have
3-fold or 5-fold symmetry ?
This would dramatically reduce the depth
of the search tree !
Simpler Model with Dodecahedral Shells
Just two shells (magenta) and (yellow)
Each Ham.-path needs 15 edges on each shell,
and 10 connectors (cyan) between the shells.
Dodecahedral Double Shell
Colored by two congruent Hamiltonian cycles
Physical Model of Penta-Double-Shell
The 600-Cell

120 vertices,
valence 12;

720 edges;
 Make 6 cycles,
length 120.
Search on the 600-Cell


Search by “loop expansion”:

Replace an edge in the current path
with the two other edges of a triangle
attached to the chosen edge.

 Always keeps path a closed cycle !
This quickly worked for finding a full cycle.

Also worked for finding 3 congruent cycles
of length 120.

When we tried to do 4 cycles simultaneously,
we got to 54/60 using inside/outside symmetry.
Shells in the 600-Cell
INNERMOST TETRAHEDRON
CONNECTORS
SPANNING THE
CENTRAL SHELL
OUTERMOST TETRAHEDRON
INSIDE / OUTSIDE
SYMMETRY
Number of segments of each type in each Hamiltonian cycle
Shells in the 600-Cell
Summary of features:

15 shells of vertices

49 different types of edges:

4 intra shells with 6 (tetrahedral) edges,

4 intra shells with 12 edges,

28 connector shells with 12 edges,

13 connector shells with 24 edges.

Inside/outside symmetry

What other symmetries are there … ?
Start With a Simpler Model …
Specifications:

All vertices of valence 12

Overall symmetry compatible with “tetra-6”

Inner-, outer-most shells = tetrahedra

No edge intersections

As few shells as possible …
…. This is tricky … 
Icosi-Tetrahedral Double-Shell (ITDS)
Just 4 nested shells (192 edges):

Tetrahedron: 4V, 6E

Icosahedron: 12V, 30E

Icosahedron: 12V, 30E

Tetrahedron: 4V, 6E
total: 32V
CONNECTORS
ITDS: The 2 Icosahedral Shells
The Complete ITDS: 4 shells, 192 edges
TETRA
ICOSA
ICOSA
TETRA
SHELLS CONNECTORS
One Cycle on the ITDS
SHELLS CONNECTORS
TETRA
ICOSA
ICOSA
TETRA
The Composite ITDS
ITDS: Composite of 6 Ham. Cycles
One Vertex of ITDS (valence 12)
Broken Part on Zcorp machine
Icosi-tetrahedral Double Shell
What Did I Learn from the ITDS ?
A larger, more complex model
to exercise the shell-based approach.

Shells, or subsets of edges cannot just be
rotated as in the first version of the 24-Cell.

The 6-fold symmetry, corresponding to six
differently colored edges on a tetrahedron,
is actually quite tricky !

Not one of the standard symmetry groups.

What are the symmetries we can hope for ?
The Symmetries of the Composite ?

4 C3 rotational axes (thru tetra vertices)
that permute two sets of 3 colors each.

Inside/outside mirror symmetry. ???
C3 (RGB, CMY)
C3 (BCM, YRG)
Directionality !!
C3 (RMY, CGB)
C3 (GCY, MBR)
When Is I/O Symmetry Possible ?
Hypothesis:

When the number of edges in one Ham. cycle
that cross the central shell is 4i+2
The 600-Cell cannot accommodate I/O symmetry !
All Possible Shell Vertex Positions
Basic Tetra
--
truncated
--
Dual (mid-face) -- Dual truncated --
or beveled
Mid-edge
.
All Possible Edge Patterns
( shown on one tetrahedral face )
Constraints between
2 edges of one cycle
INTRASHELL
EDGES
INTERSHELL
EDGES
6
12
Two completely
independent sets
12
12+12
Possible Colorings for Intra-Shell Edges
Basic Tetrahedron (4):
Tetras with Offset Edges (12):
0
1
2
3
4
6
7
8
9
10
5
11
Inter-shell Edge Colorings
0
1
2
3
4
5
6
7
8
9
10
11
Adding the second half-edge:
0+3(9)
1+7(10)
2+8(11)
3+0(6)
4+7(10)
5+8(11)
6+3(9)
7+1(4)
8+2(5)
9+0(6)
10+1(4)
11+2(5)
Always two options – but only 12 unique solutions!
Combinatorics for the ITDS

Total colorings: 6192  10149

37
Pick 192 / 6 edges: ( 192
)

10
32

Pick one edge at every vertex: 1232  1034
 Assuming
inside-out symmetry: 1216  1017

All shell combinations: 42 *5762 *126 *124  1017

Combinations in my GUI: 42 *576 *126 *124  1014

Constellations examined:  103 until success.
Comparison: ITDS  600-Cell

Total Colorings: [10149]  6720  10560

Pick 120 edges: [1037]  (

Pick one edge at every vertex: [1034]  12120  10130

Hope for inside-out symmetry: [1017]  1260  1065

All shell combinations: [1017]  42 *124 *1254  1063

Shells with I/O symmetry: [1014]  4 *122 *1228  1032

Constellations to examine: [103]   10??
720 )
120
 10168
Where is the “Art” … ?

Can these Math Models lead to something
artistic as well ?

Any constructivist sculptures resulting
from these efforts ?

Suppose you had to show the flow
of the various Hamiltonian cycles
without the use of color …
Complementary Bands in the 5-Cell
As a Sculpture
Double Volution Shell
Resulting from the
two complementary
Hamiltonian paths
on cuboctahedron
As a Sculpture
4D Cross Polytope
As a Sculpture
Conclusions

Finding a Hamiltonian path/cycle is
an NP-hard computational problem.

Trying to get Eulerian coverage with
a set of congruent Hamiltonian paths
is obviously even harder.

Taking symmetry into account judiciously
can help enormously.
Conclusions (2)

The simpler 4D polytopes yielded their
solutions relatively quickly.

Those solutions actually do have nice
symmetrical paths!

The two monster polytopes presented a
much harder problem than first expected
-- mostly because I did not understand
what symmetries can truly be asked for.
Conclusions (3)

The 24-Cell, Double-Penta-Shell, and
Icosi-Tetra Double Shell, have given me
a much deeper understanding of the
symmetry issues involved.
 Now
it’s just a matter of programming
these insights into a procedural search
to find the 2 remaining solutions.
 The
24-Cell is really unusually symmetrical
and the most beautiful of them all.
QUESTIONS ?
Download