Vous êtes sur la page 1sur 8

LA SOLUCION A LA TORRE DE HANOI.

El documento es una recopilacin de informacin encontrada en Internet


La solucin del problema de las Torres de Hani es muy fcil de hallar, aunque el nmero de
pasos para resolver el problema crece exponencialmente conforme aumenta el nmero de discos.

Solucin simple
Una forma de resolver el problema se fundamenta en el disco ms pequeo, el de ms arriba en
la varilla de origen. El movimiento inicial de este es hacia la varilla auxiliar. El disco n.o 2 se
debe mover, por regla, a la varilla destino. Luego, el disco n.o 1 se mueve tambin a la varilla
destino para que quede sobre el disco n.o 2. A continuacin, se mueve el disco que sigue de la
varilla origen, en este caso el disco n.o 3, y se coloca en la varilla auxiliar. Finalmente, el disco
n.o 1 regresa de la varilla destino a la origen (sin pasar por la auxiliar), y as sucesivamente. Es
decir, el truco est en el disco ms pequeo

Mediante recursividad
Este problema se suele plantear a menudo en programacin, especialmente para explicar la
recursividad. Si numeramos los discos desde 1 hasta n, si llamamos origen a la primera pila de
discos, destino a la tercera y auxiliar a la intermedia, y si a la funcin la denominramos hanoi,
con origen, auxiliar y destino como parmetros, el algoritmo de la funcin sera el siguiente:

Iterativa
Otra manera de resolver el problema, sin utilizar la recursividad, se basa en el hecho de que para
obtener la solucin ms corta, es necesario mover el disco ms pequeo en todos los pasos
impares, mientras que en los pasos pares slo existe un movimiento posible que no lo incluye. El
problema se reduce a decidir en cada paso impar a cul de las dos pilas posibles se desplazar el
disco pequeo. El algoritmo en cuestin depende del nmero de discos del problema:

Si inicialmente se tiene un nmero impar de discos, el primer movimiento debe ser


colocar el disco ms pequeo en la pila destino, y en cada paso impar se le mueve a la
siguiente pila a su izquierda (o a la pila destino si est en la pila origen).
La secuencia ser: destino, auxiliar, origen, destino, auxiliar, origen, etc.

Si se tiene inicialmente un nmero par de discos, el primer movimiento debe ser colocar
el disco ms pequeo en la pila auxiliar, y en cada paso impar se le mueve a la siguiente
pila a su derecha (o a la pila origen si est en la pila destino).
La secuencia ser: auxiliar, destino, origen, auxiliar, destino, origen, etc.

Una forma equivalente de resolverlo es la siguiente: coloreando los discos pares de un color y los
impares de otro, y se resuelve el problema aadiendo la siguiente regla: no colocar juntos dos
discos de un mismo color. De esta manera, solo queda un movimiento posible (adems del de
volver hacia atrs).
ESTUDIO DE CASOS PARTICULARES
La torre de Hanoi

Hallar la secuencia
N de discos

N mnimo de
movimientos

.................................

.................................

Metodologa

Comenzar por pocos discos.

Observar que antes de terminar el juego con n discos, hay que hacerlo con n -1,
siendo An = An-1 + 1 + An-1 = 1 + 2An-1

Observar que de A1 = 1; A2 = 3; A3 = 7; A4 = 15; A5 = 15; etc, se sigue que An= 2n - 1.

NMERO DE MOVIMIENTOS EN FUNCIN DEL NMERO DE DISCOS


De ahora en adelante, llamaremos mk al nmero de movimentos mnimos necesarios para
pasar k discos de la torre "IZQUIERDA" a la torre "DERECHA". As tenemos que:
m1 = 1, m2 = 3, m3 = 7, m4 = 15, m5 = 31
Es fcil observar un par de cosas:

mk = 2*mk-1 + 1. Por ejemplo: m5 = 2*m4 + 1. Si hemos trabajado


suficientemente con la escena y hemos pensado cmo conseguimos pasar los discos
a la torre de la derecha, nos habremos dado cuenta que, utilizando como ejemplo 4
discos: primero pasamos los tres de arriba a la torre "CENTRO" utilizando para ello

7 movimientos (m3); luego pasamos el disco mayor a la torre "DERECHA", 1


movimiento; por ltimo pasamos los tres discos de "CENTRO" mediante 7
movimientos (m3). En total, para 4 discos, hemos necesitado: m3 + 1 + m3 = 2*m3
+ 1 = m4 .

mk = 2k - 1. Si se conoce el mtodo de induccin, puede hacerse una demostracin


fcil de esta frmula utilizando la frmula anterior.

Ya tenemos una frmula que nos permite calcular el nmero de movimientos necesarios
para trasladar todos los discos desde la torre "IZQUIERDA" a la torre "DERECHA". Vamos a
utilizarla para averiguar cuanto queda hasta el final de los tiempos segn la leyenda de la
Torres de Hanoi.
Como son 64 discos, el nmero de movimientos es 264 - 1 = 18446744073709551615.
Si suponemos que los monjes tienen la suficiente habilidad como para hacer un
movimiento en un segundo, en un da harn 60*60*24 movimientos. Y en un ao de 365
das: 60*60*24*365. Dividimos el nmero de movimientos por el resultado de la operacin
anterior y nos debe dar, aproximadamente, medio billn de aos. Slo falta averiguar
cuantos aos se estiman que el hombre lleva sobre la tierra y sabremos el tiempo que le
queda sobre ella.

b) La Torre de Hanoi
Se proporciona a los alumnos un tablero de la Torre de Hanoi (Figura 6) con cinco discos
(A,B,C,D,E) de dimetro decreciente. El problema consiste en trasladar los discos desde el
primer listn hasta el tercero, teniendo en cuenta las reglas siguientes: en cada movimiento solo
se puede desplazar un disco; y un disco nunca puede estar encima de otro de dimetro inferior.
Se pide a los alumnos hallar el nmero mnimo de movimientos necesarios para desplazar los 5
discos y generalizar el resultado para n discos.
En general, la forma de proceder de los alumnos es la de experimentar con dos, tres y cuatro
discos y anotar el nmero total de movimientos que obtienen, y a partir de aqu inducir la
frmula general.
El ejemplo que mostramos a continuacin es novedoso en el sentido de que los alumnos hacen
las anotaciones de los movimientos que realiza cada disco, de la forma siguiente:
2 fichas: E y D
E D E
E: 2 pasos.
D: 1 paso
Total: 3 pasos

3 Fichas: E, D y C
EDECEDE
E: 4 pasos. D: 2 pasos. C: 1 paso
Total: 7 pasos

4 Fichas: E, D, C y B
EDECEDEBEDECEDE
E: 8 pasos. D: 4 pasos. C: 2 pasos.
B: 1 paso.
Total: 15 pasos.

5 Fichas: E, D, C, B y A
(E D E C E D E B E D E C E D E) A(...)
E: 16 pasos. D: 8 pasos. C: 4 pasos.
B: 2 pasos. A: 1 paso.
Total: 31 pasos.

Observando los resultados anteriores obtienen fcilmente el nmero mnimo de movimientos


para el caso general de n discos, que expresan de la forma: 2 -1.
4. CONCLUSIONES
Los materiales didcticos pueden desempear un papel importante tanto en la motivacin inicial
de los alumnos como en el desarrollo de los procesos inductivos y deductivos en Matemticas.
En este sentido, consideramos que la elaboracin por los propios alumnos de dichos materiales
ayuda a enfocar la enseanza de las Matemticas desde un doble punto de vista. Por una parte,
los alumnos tienen la oportunidad de analizar y concretar los contenidos matemticos que
subyacen a dicha elaboracin, y, por otra, los mismos alumnos o sus compaeros pueden
aprovecharse matemticamente de su uso, como hemos puesto de manifiesto a lo largo de esta
comunicacin.

El grafo de Hanoi
Un juego TH5, como ya sabemos, requiere de M5=251=31 movimientos para
ser resuelto de manera ptima, es decir, con el menor nmero de
movimientos. Cada movimiento, como tambin se ha dicho ya, puede ser
representado mediante un cdigo en base 3 con cinco dgitos. En cambio,
con cinco dgitos existen 35=243 cdigos diferentes. Representan algo los
cdigos no usados en el camino ptimo?
Cada uno de los cdigos no usados representa una situacin del juego por la
que no se pasa en el camino ptimo, pero que eventualmente podra darse si
elegimos un camino ms largo. En realidad, como vamos a ver, se puede
elegir un camino que recorra todas las situaciones posibles del juego y, por
tanto, todos los cdigos posibles. Este camino, que llamaremos psimo,
como hace Rodolfo Valeiras, tendr 3n1 movimientos. La existencia de este
camino nos proporciona el resultado siguiente: sea cual sea la posicin del
juego (siempre que cumpla sus normas) podremos llegar, mediante
movimientos legales, a la solucin. Para su anlisis nos ayudaremos del
llamado Grafo de Hanoi, invencin de Ian Stewart.
Empezaremos considerando un juego TH1, es decir, un juego donde slo hay
un disco. Tenemos que x0=0 (en notacin de base 3). Del poste 0 podemos
pasar al 1 al 2, aunque ya sabemos que lo ms eficiente es pasar al 2. Si
optamos por pasar al poste 1, desde ste se puede pasar al poste 2,
completando el camino psimo en dos movimientos. Estas opciones se
pueden representar en forma de tringulo, como muestra la figura 5. El lado
derecho de este tringulo (que une 0 con 2) es el camino ptimo. El camino
psimo consiste en recorrer los vrtices 0-1-2.

Figura 5: Grafo de Hanoi para el juego TH1


Supongamos ahora que el juego tiene 2 discos. Entonces, de la posicin 00
se puede pasar a 01 a 02 (slo se puede mover el pequeo). De 01
podemos a 02, cerrando as un tringulo. Pero tambin de 01 se puede pasar
a 21 y de 02 se puede pasar a 12. Ahora se analizan los movimientos legales
desde 21 y desde 12 y el resultado puede presentarse en un grafo como el
de la figura 6.

Figura 6: Grafo de Hanoi para el juego TH2


Como se puede observar en esta figura, todas las posibles posiciones del
juego estn conectadas. El lado derecho del tringulo nos sigue presentando
la solucin ptima (en tres movimientos, por supuesto). Para encontrar el
camino psimo debemos recorrer todo el grafo sin pasar dos veces por el
mismo vrtice. Esto es siempre posible. Para ello, saliendo desde 00,
recorremos el primer tringulo en sentido horario, terminando en 02. Luego
bajamos al vrtice 12 y recorremos ese tringulo en sentido antihorario,
terminando en 10. Llegamos luego al vrtice 20 y recorremos ese tringulo
en sentido horario. Este recorrido, dicho sea para que Euler repose tranquilo,
como se ve, pasa por todos los puntos, pero no por todas las aristas, es
decir, el juego pasa por todas las posiciones posibles pero no se realizan
todos los movimientos posibles. Si quisiramos, adems, realizar todos los
movimientos posibles una sola vez, habra que recorrer el grafo pasando por
todas las aristas una sola vez, cosa que es imposible pues existen ms de
dos vrtices de ndice impar lo que imposibilita, como Euler nos ense, tal

recorrido. Agotar todos los movimientos exigira repetir alguno de ellos. Tal
camino merecera ser llamado el peor camino.
El grafo para el juego TH2 puede ser entendido como un gran tringulo
equiltero que tiene en cada vrtice sendos tringulos equilteros colocados
en su interior. Los lados de los tringulos pequeos representan los
movimientos del disco pequeo y los tramos no usados de los lados del
grande representan los movimientos del disco grande. Es decir, el grafo de
TH2 consiste en un tringulo que tiene en cada vrtice un grafo de TH1. Esta
forma recursiva de mirar el grafo nos permitir construir los siguientes. En
efecto, el grafo de TH3 (figura 7) es un tringulo que tiene en cada vrtice un
grafo de TH2.

Figura 7: Grafo de Hanoi para el juego TH3


La forma de encontrar el camino psimo en este grafo es tambin recurrente
y se puede encontrar de manera sencilla si recorremos las siguientes etapas:
i) Si n es par recorremos el primer tringulo pequeo en sentido horario. Si
n es impar lo recorremos en sentido antihorario.
ii) Pasamos al nico tringulo pequeo accesible desde el fin del recorrido
anterior y lo recorremos en el sentido contrario al anterior.
iii) Repetimos el paso ii tantas veces como sea necesario hasta llegar a la
ltima posicin.

Cada lado de un tringulo pequeo representa un movimiento del disco


pequeo, cada lado de un tringulo mediano que no pertenezca a un
tringulo pequeo representa un movimiento del disco segundo y cada lado
del tringulo grande que no pertenezca a un tringulo menor representa los
movimientos del disco grande.
Se atrever el lector a disear un grafo de Hanoi para TH4? Nosotros damos
en la figura 8 el grafo de TH5 sin indicar los cdigos. Un buen ejercicio sera,
precisamente, ponrselos.

Figura 8: Grafo de Hanoi para el juego TH5


Por supuesto que el grafo de Hanoi para el juego THn, cuando n vaya
creciendo sin lmite, se convierte en un fractal. Cada una de sus partes
reproduce el modelo del grafo completo.
Vamos a mencionar una curiosa relacin. Si construimos un tringulo de
Pascal ilimitado y sustituimos cada nmero par por un punto blanco y cada
nmero impar por un punto negro, el resultado es un fractal bastante
parecido al famoso estuche de Sierpinski. Para crear un estuche de
Sierpinski dibuje un tringulo negro. Divdalo en cuatro tringulos iguales y
pinte de blanco el central. Haga lo mismo con los tres tringulos negros
pequeos y repita este proceso hasta el infinito. El resultado es bastante

parecido a colorear de la forma indicada el tringulo de Pascal. El hecho es


que douard Lucas, el creador de la Torre de Hanoi, estudi la forma de
averiguar cundo es par o impar un nmero del tringulo de Pascal, de
forma que tambin contribuy, sin saberlo, a la creacin de estos fractales.
Nos interesa ahora, a modo de despedida, que el lector reflexione sobre la
siguiente pregunta: No se parece el estuche de Sierpinski (figura ) al grafo
de Hanoi?

Figura 9: Estuche de Sierpinski

Vous aimerez peut-être aussi