This thing is my contribution to the world of "Tower of Hanoi" puzzles.
Rather than designing a simplified representation of the puzzle, I decided to model it after a real-life tower in Hanoi (The Tran Quoc Pagoda). I like to think (but here we step into the world of legends) that the game originated in the mind of someone watching this tower...
I wanted to create an object that would represent the tower quite accurately, besides being the wonderfully satisfying logic puzzle game we all know.
The result is what you can see in the photos, an object that can comfortably sit on an office desk or a sitting room coffee table for aesthetic reasons, or be on a teen's room shelf as a curio for friends to attempt to solve.
If you stumble on this thing and have no idea what this puzzle is all about, I will briefly summarize the goal and rules you need to play and solve it.
The goal of the puzzle is to move the whole tower (my version being made up of 7 pieces, or discs) from one pole to another.
There are basically just two rules:
- You may only move ONE disc at a time, the topmost of any pole you decide to act on, from one pole to another.
- You may ONLY place a smaller disc on a bigger one, NEVER the opposite.
There is a bit of math involved, and this puzzle is often used to teach students about recursive algorithms in computer science, but I find that once you know the algorithm, the puzzle becomes a lot more "mechanic" and a lot less fascinating!
I will attach files in two different forms:
- An STL file for each peace to be printed, in this case please see the instructions to know how many of each should be printed
- An STL file for each color, including all models in a single file, printable on a 30x30cm build plate. This is how I printed mine.
If you make this, please post your makes, I am very curious to see the effect with different colors/materials!
BQ, Sienoc PLA
Black, white, orange, red
If you want to assemble your own build plates (i.e. if your print bed is not the same size as mine), you will need to print some models multiple times.
The following list indicates how many times each model should be printed to have all the pieces needed for the final assembly. I have divided them by the color of the PLA needed to print them, assuming you choose the same colors I did:
- Base: 1x
- Pole: 3x
- Inner Disc: 1x of each size (sizes are indicated end of the STL filename)
- Walls: 1x of each size (sizes are indicated end of the STL filename)
- Roof: 1x of each size (sizes are indicated end of the STL filename)
- Dome: 1x
- Half_Point: 6x
- Statue: 6x of each size (sizes are indicated end of the STL filename)
Once you have all the printed parts, you just need to assemble them.
You will need glue only to fix the statues to the black inner discs. All other parts should be snug enough to fit by pressure (they did in my tower, I only used glue for the statues).
Each disc should be assembled in this order:
- Glue the 6 statues to the black inner disc
- Once the glue is dry, slide the orange walls onto the inner disc all the way down
- Slide the roof onto the inner disc, making the hexagonal hole fit onti the inner disc, pushing all the way in (the roof should come flush with the inner disc top surface)
Hold the white points two at a time and slide them into the circular holes in the top of each pole.
Finally, push the poles into the slots in the base, pushing until the base of each pole is flush with the top surface of the base of the puzzle.
You're done! Time to attempt to solve the puzzle!
Should any part be loose, you can use glue to keep the parts together if they don't snap in place firmly.
If you, on the other hand, find it too difficult to fit the parts, because you don't have enough tolerance, use fine grit sandpaper to reduce the size of the inner parts, rather than forcing them (that could cause some parts to break).
I designed this thing in Fusion 360.
I modeled it after the Tran Quoc Pagoda in Hanoi (you can see the result of the modeling process and the photo of the actual Pagoda in the following pictures).
Each layer is scaled to 90% of the layer below it, it seemed to me that such scaling would preserve the overall proportions of the real Pagoda.
Overview and Background
This puzzle was originally invented in 1883 by the French mathematician Edouard Lucas.
There are many different legends behind its origins, but since the most common name for it is "Tower of Hanoi" (even though the very first versions of the puzzle had nothing to do with Hanoi), this version tries to stick to the name by representing the Tran Quoc Pagoda. The Pagoda in question is perfect, since every floor is slightly smaller than the previous one, and the point is perfectly suitable to stand on top of the three poles.
The beauty of this puzzle as a teaching tool is its simplicity. There are very few rules, just two in fact, that are of immediate comprehension by students of all ages.
The interest of younger students can be captivated by using bright colors and perhaps surrounding the puzzle with a bit of mystery regarding its origins.
Older students will appreciate more elaborate concepts such as recursion, the break-up of a problem into smaller sub-problems to reach a solution by iteration, the first notions of what an algorithm is and how to apply it to real-life problems.
Last but not least, the algorithm to solve this puzzle can very easily be translated to a computer program in any language suitable for the Grade of the class, creating that link between practical and theoretical problems that is often missing but that helps students realize the importance and sense of what they are learning.
Lesson Plan and Activity
Depending on the targeted Grade, students could be provided with the disassembled tower parts and a diagram of the expected result. They could work in teams, and assemble the tower in the first part of the lesson.
Obviously, for younger students it would be best to start the lesson with the tower already fully assembled.
Students could be presented the challenge to move a subset of the tower from one pole to the other (different teams of students could be made to start with both odd and even number of floors, so that later the teacher could point out the different ways the algorithm should start in order to complete the puzzle in the most efficient way), in a random way at first (like everybody who approaches the puzzle does the first times). Once they eventually succeed, the teacher can start to teach the students the algorithm, going deep as desired into the theory it is based upon.
Very important and easy to grasp concepts can be taught with this apparently simple puzzle, concepts such as "divide et impera", iteration, recursion.
Clearly, if the Grade is high enough, this physical tool can be used in conjunction with computers to make students code the solving algorithm once they have understood it in an empirical way.