Towers of Hanoi
From Math Images
|Towers of Hanoi|
Basic DescriptionThe standard game begins with 3 poles, one of which (typically the leftmost) has some whole number, k, disks placed around it in increasing size from top to bottom, while the other poles start out empty.
- Goal: Move all k disks from the start tower (typically the leftmost) to the specified end tower (typically the rightmost), following these rules:
- Only one disk may be moved at one time.
- Each move consists of moving the top disk of one rod onto the top of another rod.
- Each disk must be placed on a larger disk.
To fully understand the end of the world legend, one must understand the relationship between the number of disks and the amount of moves. As it turns out, this relationship is exponential; if the priests move one disk per second, then they would need 18,446,744,073,709,551,615 seconds, or 584.54 billion years, to complete the game. Given that this is about 58.5 times the life span of the Sun, the legend overestimates the amount of time we have until the world ends (unless we can someday live without the Sun).
Play the Game
You can play the game Towers of Hanoi right here! This applet will help you understand how the game works.
Example of Solving the Game
Solving Towers of Hanoi with 4 disks.
A More Mathematical Explanation
The Recursive SolutionThis game becomes more interesting when we try to figure out the quickest [...]
The Recursive Solution
This game becomes more interesting when we try to figure out the quickest solution to any Towers of Hanoi game. We will first reason through the ideal minimum amount of steps to solve a game with k-disks, then provide an algorithm that requires the same amount of moves as this ideal minimum. Define to be the minimum amount of moves needed for k disks. It is obvious that:
Assume that we know is true. Note that to move the kth(bottom) disk, we must first move the top k-1 disks. In addition, we must move the kth disk at least (and hopefully only) once. Finally, the top k-1 disks must be placed on top of the kth disk at some point to complete the game. Thus, the ideal recursive function for is:
Now we will provide an algorithm that requires the same amount of steps as . Since and do not change, we can assume that the (k-1)th game is solvable. One algorithm to solve the kth game is as follows:
- 1. Move the top k-1 disks to Pole B (assuming we start on Pole A and end on Pole C).
- 2. Move the kth disk to Pole C.
- 3. Move the k-1 disks on Pole B to Pole C, on top of the kth disk.
The total steps for this are:
Thus our ideal minimum function is a plausible solution to any Towers of Hanoi game.
The Non-Recursive Equation
We will show by induction that the non-recursive equation is
The base case is satisfied:
- as desired.
Assume the (k-1)th case holds. Then
Thus we have shown the non-recursive equation holds for any Towers of Hanoi game with k disks.
Back to the Legend
Now that we have the equation to determine the amount of moves needed for any number of disks, we can verify the numbers listed in the Basic Description. A Towers of Hanoi game with 64 disks will take:
If the priests move 1 disk per second, then they will need:
Assuming that the Sun has a life span of 10 billion years, the time predicted by the legend is times longer than the Sun's lifespan.
Why It's InterestingTo solve a Towers of Hanoi game with k disks, we need at least moves, which is an exponential relationship. This indicates that the time required to solve the game will drastically increase as the number of disks increase. In computer science, good algorithm times are usually polynomial and logarithmic. Exponential times, however, are horrible for programming. Even with only 64 disks, the game requires around 584.54 billion moves. Assuming the average computer can do 100 million operations per second, then it will need 5845.4 seconds, or 97.42 minutes, to solve the game. If we try to solve the game with any more disks, we would need to start using supercomputers to solve it within reasonable times.
- There are currently no teaching materials for this page. Add teaching materials.
Leave a message on the discussion page by clicking the 'discussion' tab at the top of this image page.