Andrew Zhu

Towers of Hanoi

Project Timespan

A day or two in Spring 2018


I recently made a list of my favorite short stories, one of which is “The Nine Billion Names of God,” published in 1953 by the English science-fiction writer Arthur C. Clarke. In the story, a pair of Western computer operators are hired by Tibetan lamas to venture out to a remote monastery and use modern-era technology to list of all nine billion names of God, a task that the lamas previously were laboring on by hand. 

For one reason or another, the short story reminded me of a classic children’s game called Towers of Hanoi, a version of which I made a few years ago in Philadelphia.

Project Overview

Towers of Hanoi Gameplay

The rules of the game are simple. At the start of a game, there are three columns, one of which holds a stack of disks of various circumferences. In this stack, larger disks are placed below smaller disks, and no disk has the same circumference. A complete stack resembles the traditional pagoda-style buildings of eastern and southeastern Asia, which may be the reason why one name of the game is the “Towers of Hanoi.”

The objective of the game is to move a disk, one at a time, from column to column, such that by the end of the game one has transferred the entire stack from the initial column to another column. However, a disk can only be placed upon a disk of larger circumference.

Trấn Quốc Pagoda (Vietnamese: Chùa Trấn Quốc) in Hanoi, Vietnam

As one may expect, as the number of rings in the initial column increases, the number of steps required to complete the game also increases exponentially. The optimal number of moves to solve a game is 2n − 1, where n is the number of starting disks.

One might have noticed that the featured image for this post is a fractal, that of the famous Sierpiński Triangle. The Towers of Hanoi game can also be modeled as an undirected graph of nodes and edges, with nodes representing states of the game and edges representing moves. A game consisting of 7 disks and 3 towers is represented by the fractal at this post’s beginning!

Project Materials

– 1/4 inch Baltic birch plywood

– 1/2 inch wood dowel

– Wood glue

– Wood stain

Project Design

I had leftover Baltic birch plywood and wood dowels from a Stirling Warwolf trebuchet I scratch-built [future post to come] and designed the puzzle to make use of the scraps. The base was constructed from three pieces of 1/4 inch plywood – the top two layers had three 1/2 inch circle holes for the dowel that would form the three columns of the puzzles. The diameters of the rings ranged from 1 inch to 3.75 inches, with a diameter step-up of 1/4 inch between rings.

Project Construction

The laser cutter made quick work of the design elements, though I opted for two shallow passes on the vector cut to minimize kerf loss through burning. I used a handsaw to cut the dowels to length. After, I used wood glue to assemble base and dowels together. As a few of the pieces were too snug to move with pace from column to column, so I used some coarse sandpaper along the inner border of these pieces to loosen them up. 

Now that all components were cut out, I then proceeded to stain the base and dowels a medium brown shade. For the rings, I used a repeating pattern of four stains – dark brown, blue, medium brown, and light brown – as I went from smallest disk to largest disk. Such a pattern helps during gameplay to remember the movement pattern of the iterative puzzle!

I did a quick run of a game of nine disks totaling 511 moves. The puzzle took 6 minutes and 20 seconds to complete, or 0.74 seconds per move (though I used both hands).

Play Video

Lessons Learned & Improvements

I did revisit this project at a later date as I was not satisfied at the initial design. Here are a couple of changes I made:

1. Colors: The colors felt too vibrant to me, so I used sandpaper to knock down and mute the hues. I did this for both the base, the dowels, as well as the disks.

2. Base levels: I did not find the tiered bases to be aesthetically pleasing, so I trimmed down the sides with a table saw so that all three layers were flush. I decided against staining the sides as I preferred the natural finish of the wood.

One consideration is to use plywood edge banding to cover up the sides of the base – I am ambivalent as to whether that would look better.


The version of Towers of Hanoi that I made incorporates a total of 12 disks. Therefore, a complete game would require 212 – 1 moves for a total of 4095 moves! And yes, I have completed this set in its entirety!

Towers of Hanoi reminds me of “The Nine Billion Names of God” as in the short story, the lamas believe that the world will end when all of the names of God are written down. Similarly, one myth surrounding the puzzle – this time going by the name of the Tower of Brahma – involves an ancient Hindu temple that contains a room with three posts and 64 golden disks. Brahmin priests move the disks, one by one, until the puzzle is complete. When this occurs, the world will end!