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 ?