Orden en el caos
El mundo de los rompecabezas
matemáticos
Orden en el caos es un libro sobre rompecabezas matemáticos, centrado en puzzles de movimientos secuenciales, como el Cubo de Rubik, la Torre de Hanoi, Deslizzzp, etc. Los autores somos Javier Santos y Rodolfo Valeiras. Si te gustan nuestras páginas web y nuestros otros proyectos conjuntos, a lo mejor también te gusta nuestro libro. Para que te hagas una idea, este es más o menos su contenido:
- Introducción
- Para calentar motores, decimos qué es para nosotros un rompecabezas o puzzle, qué puede tener qué ver con las matemáticas, la educación, el arte... Presentamos brevemente una clasificación y avisamos al lector de lo que se le viene encima.
- Primera parte: Rompecabezas de piezas deslizantes
- Se analizan diversos rompecabezas de piezas deslizantes, empezando por el
más famoso y simple, el Juego del 15.
- 1.1. El Juego del 15
- El Juego del 15 nos invita a presentar algunas nociones sobre las permutaciones y cuestiones sobre paridad que nos van a ser útiles con otros muchos puzzles. También se hace una breve incursión en el mundo de los algoritmos matemáticos de búsqueda de soluciones.
- 1.2. Deslizzzp
- En este capítulo presentamos nuestro juego Deslizzzp, una especie de versión extendida del Juego del 15, analizando en profundidad algunos rompecabezas seleccionados de entre los más de cien que contiene.
- 1.3. Otros puzzles de piezas deslizantes
- Analizamos varios otros rompecabezas formados por bloques que hay que deslizar sobre un tablero, algunos clásicos, otros modernos, y unos cuantos originales.
- 1.4. Rompecabezas de piezas deslizantes y partes giratorias
- El recorrido por los puzzles de piezas deslizantes termina con el estudio de varios de tipo mixto, en los que además de mover las piezas al hueco libre hay partes que giran. Las estrellas invitadas son Whip-it, La Torre de Babel, Missing link, y, en su debut, el intrigante juego «El ocho tumbado».
- Segunda parte: Rompecabezas de intercambio de piezas
- La segunda parte está dedicada a los rompecabezas que normalmente se
clasifican como tipo Cubo de Rubik. Y claro, empezamos con el Cubo de Rubik.
- 2.1. El Cubo de Rubik
- Adoramos a este bendito cubo de colores. Si en su día no fuiste capaz de resolverlo, éste es el momento de conseguirlo. Si ya lo sabes resolver, a lo mejor te gustaría profundizar en sus propiedades matemáticas.
- 2.2. La generación Rubik
- Después del cubo vinieron más cubos, pirámides, icosaedros... Mini Cubos, Super Cubos, Skewb, Pyraminx... Te explicamos algunos secretos de estas mágicas figuras.
- 2.3. Orden y caos en dimensiones varias
- A pesar de título, en realidad este capítulo está dedicado a puzzles tipo Cubo de Rubik de apariencia plana. Se aprovecha la ocasión para ilustrar de forma elemental las posibilidades de una herramienta computacional como GAP.
- Tercera parte: Otros rompecabezas de movimientos secuenciales
- Aún nos quedan muchos rompecabezas con los que sufrir y disfrutar. Los
hemos dejado todos para esta tercera parte.
- 3.1. La Torre de Hanoi
- Le toca el turno a otro clásico entre los clásicos, que nos permite adentrarnos en conceptos como los algoritmos iterativos y recursivos y los números binarios.
- 3.2 Las Argollas Chinas
- Analizamos este otro clásico, en su formato original o encarnado en formas como La Escalera o el moderno Spin out. Profundizamos en la idea de los algoritmos recursivos e introducimos el código Gray.
- 3.3. Gravedad
- Un cambio de tercio para zambullirnos en puzzles en los que hay piezas que se deslizan o caen por efecto de la gravedad. Se analizan puzzles como 4x4, Kaos, o nuestros 2DG y 9.81.
- 3.4. Rubik's Magic
- La imaginación de Ernö Rubik no se agotó después de crear su archifamoso cubo y aún dio de sí creaciones tan geniales como este conjunto de cuadrados unidos por hilos.
- 3.5. Sokoban
- Terminamos nuestro recorrido con una invitación a Sokoban, un tipo de rompecabezas que sólo habita en las pantallas y chips de los ordenadores. Antes de echar un vistazo a los problemas que nos plantea el juego nos enfrentamos al diseño de un simulador y entramos en contacto con algoritmos de búsqueda de caminos.
Si ya tienes el libro, el resto de esta página te va a ser muy útil, porque en ella están todos los enlaces que allí aparecen, además de información adicional, algunos simuladores a los que hacemos referencia, etc.
Introducción
Notas
- [2] http://mathforum.org/isaac/problems/bridges2.html. También hay una explicación en español muy accesible en este artículo de Adrián Paenza para el diario argentino Página/12.
- [3] http://perso.club-internet.fr/duthen/SOKOBAN-HTML/sokoban-jd.html
- [4] http://www.his.com/~pshapiro/about.ss.html
- [7] http://www.cleverwood.com/about1.htm
- [8] http://www.karakuri.gr.jp/creation/
- [9] http://www.johnrausch.com/PuzzleWorld/toc.asp?t=_cat/pv001.htm&m=cat/pv000.htm
- [10] http://johnrausch.com/PuzzleWorld/toc.asp?t=_des/mb001.htm&m=des/mb000.htm.
- [11] http://www.puzzlebeast.com/index.html
- [12] http://johnrausch.com/PuzzleWorld/cat/category.htm
- [13] http://www.puzzlemuseum.com/class/class01.htm
1.1. El Juego del 15
págs. 35 y 36
FE DE ERRATAS. El cálculo del número de inversiones de la posición mostrada en la figura 13 es incorrecto, aunque la paridad final es la misma. En concreto se pasan por alto las inversiones del número 14 y se cuenta una inversión de más para el 7. El resultado final es de 67 inversiones. El texto que empieza en el último párrafo de la página 35 debería quedar así (las diferencias aparecen destacadas):
Se puede averiguar contando el número de inversiones: el 13 tiene 12 inversiones (con todas las piezas menos 14 y 15); el 2 tiene 1 (con el 1); el 14 tiene 11; el 7, 5 (todos los números menores que 7 están detrás de él, a excepción del 2); el 12 tiene 9; el 15 también 9; el 9, 6; el 6, 4; el 3, 1; el 10, 4; el 8, 3; el 1 ninguno (nunca tiene); el 11, 2; y 4, 5 y 16 (invisible) no tienen ninguna. Las sumamos todas: 12 + 1 + 11 + 5 + 9 + 9 + 6 + 4 + 1 + 4 + 3 + 2 = 67.
Gracias a César Álvarez Pérez por avisarnos de este error.
págs. 40-43
Aquí está el código fuente en Free Pascal de un resolvedor del 9-Puzzle, de acuerdo con el algoritmo IDA*, del que se da una idea en el libro. También tenemos una versión compilada para Windows para ver como funciona sin tener que instalar Free Pascal. La posición inicial aparece en el propio código, así que para resolver una posición distinta hay que cambiarlo y recompilar. En principio es fácil modificarlo para el 15-Puzzle, pero sería poco eficiente sin añadir otras optimizaciones.
Notas
- [1] http://www.mathpuzzle.com/loyd
- [2] http://www.thinkfun.com. Muchos de los rompecabezas de Thinkfun son distribuidos ahora en España por Giro. También es posible comprarles directamente.
- [3] La página http://www.cleverwood.com/sliding_block_puzzles.htm no existe actualmente, pero de todas formas los puzzles no eran nada del otro mundo.
- [4] http://www.damert.com/puzzles/p-3dslide/3dslide.html
- [5] http://www.javaonthebrain.com/java/puzz15
- [6] http://www.rodoval.com/Deslizzzp/Deslizzzp.html
- [7] http://www.research.att.com/~aarcher/Research/ y http://www-2.cs.cmu.edu/afs/cs/academic/class/15859-f01/www/notes/15-puzzle.pdf.
- [8] http://citeseer.ist.psu.edu/gasser95harnessing.html
- [9] http://www.ic-net.or.jp/home/takaken/e/15pz/index.html
- [10] http://www.zib.de/reinefeld/Publications/index.html
- [12] http://www.ifor.math.ethz.ch/~fukuda/fukuda.html
- [14] http://www.puzzle-shop.de/start-museum.html y http://www.twistypuzzles.com/.
1.2. Deslizzzp
pág. 55
Para jugar con un rompecabezas como el de la figura 6, bájate este fichero. Tiene la misma estructura que Orden en el Caos pero con las piezas rotuladas de otra forma.
pág. 62
Este es el fichero que corresponde al rompecabezas OO 3-ciclo, y este otro el que contiene la lista de movimientos que lo resuelve. Puede usarse repetidamente la función Leer movimientos de Deslizzzp con este fichero para resolver poco a poco OO.
Notas
- [1] http://www.rodoval.com/Deslizzzp/Deslizzzp.html
- [6] http://homepage2.nifty.com/yuki-tani/index_e.html
- [7] http://www.culand.ch/dev/SBPSolver.htm
- [8] http://www.statlerandwaldorf.org/jimslide/
1.3. Otros rompecabezas de piezas deslizantes
Todos los simuladores enlazados en esta sección (incluidos los de las notas 1 y 3) requieren tener instalado soporte para Java.
pág. 86
Este enlace abre directamente el simulador del juego Pennant Puzzle en la página web de Nick Baxter.
págs. 89-90
Quzzle, L'Âne Rouge y Supercompo también se encuentran en la página de Nick Baxter.
pág. 91
Puedes manipular el puzzle Inversión en esta página. Y aquí está la versión monocolor.
pág. 94
Este enlace te permitirá jugar con Simplicity y otros rompecabezas de bloques deslizantes de James W. Stephens.
págs. 95-103
Aquí están los simuladores para los puzzles de Javier Santos con piezas no rectangulares: Fuga de Alcatraz, Fuga de Alcatraz 2, Fuga de Alcatraz 3, Revolución, 7+, Reconciliación y Centrifugado.
Notas
- [1] http://www.johnrausch.com/SlidingBlockPuzzles/default.htm
- [2] http://www.quirkle.com/puzzle/
- [3] http://www.pro.or.jp/~fuji/java/puzzle/slide/index-eng.html
1.4. Rompecabezas de piezas deslizantes y partes giratorias
pág. 118
Aquí está el simulador de El ocho tumbado (requiere soporte para Java).
Notas
- [1] http://www.geocities.com/jaapsch/puzzles/tower.htm
- [2] http://www.geocities.com/jaapsch/puzzles/missing.htm
2.1. El Cubo de Rubik
pág. 135
FE DE ERRATAS. En la quinta línea del tercer párrafo dice «factor de 212» y debería decir «factor de 212».
pág. 161
FE DE ERRATAS. Bajo la parte izquierda de la figura 17 pone ATA'F' AT'A'F' y debería poner ATA'F' AT'A'F (o sea, sobra el apóstrofo de la última letra).
pág. 162
FE DE ERRATAS. Bajo la parte derecha de la figura 18 pone (FBF'F')2 y debería poner (BFB'F')2.
Notas
FE DE ERRATAS. Las notas 19 y 20 aparecen con los números 20 y 21. Las referencias en el texto tienen la numeración correcta.
- [2] http://www.rubiks.com
- [5] http://inventors.about.com/library/weekly/aa040497.htm
- [7] http://cubeman.vg-network.com/cchrono.txt
- [8] Popular de Juguetes cerró y su página web ya no existe. En http://www.rubiks.com aparecen distribuidores para varios países. El de España es Goliath Games Iberia (parece que la página web aún no está preparada; se pueden encontrar formas de contacto en http://www.rubiks.com).
- [9] http://www.rubiks.com, http://www.ebay.com.
- [10] http://www.javaonthebrain.com/java/rubik
- [11] http://www.randelshofer.ch/rubik/index.html
- [14] http://www.twistypuzzles.com
- [16] http://www.recordholders.org/en/list/rubik.html
- [17] http://www.speedcubing.com/chris, http://www.ws.binghamton.edu/fridrich/video.html, http://cubefreak.hp.infoseek.co.jp/index.html
- [18] http://www.ws.binghamton.edu/fridrich/cube.html, http://lar5.com/cube
- [19] http://www.randelshofer.ch/rubik/virtualcubes/index.html (aparece con el número 20 por error).
- [20] http://www.mefferts.com (aparece con el número 19 por error).
2.2. La generación Rubik
pág. 186
En el cálculo del número de estados del Dino Cube hay un pequeño error o imprecisión. En el texto dice:
Son doce piezas y doce nichos, todos de la misma categoría (una sola órbita), así que hay en principio 12! posibilidades. Pero en los puzzles que no tienen piezas estáticas de referencia (como las facetas centrales del Cubo de Rubik), para fijar la orientación general de la figura es necesario dejar quieta una pieza, con lo que el número queda, por el momento, reducido a 11!. Dicho de otra forma, al calcular 12! estamos contando cada configuración 24 veces (lo mismo sucedía en el Skewb).
El problema es que si dividimos 12! entre 24 no sale 11!. El cubo lo podemos orientar de 24 formas, pero la mitad de las configuraciones resultantes son imposibles debido a consideraciones de paridad, por lo que solo hay que tener en cuenta 12 de esas 24 orientaciones.
Notas
- [1] http://www.rubiks.com, http://www.mefferts.com, http://www.e-sheen.com
- [2] La página enlazada ha desaparecido.
- [3] http://www.uspto.gov/patft/index.html, http://www.calormen.com/TwistyPuzzles/twisty.htm
- [4] http://www.calormen.com/TwistyPuzzles/twisty.htm.
- [5] http://www.olympicube.com
- [6] http://www.twistypuzzles.com/cgi-bin/puzzle.cgi?pid=594
- [7] http://www.npac.syr.edu/projects/java/magic/Magic.html
- [8] http://byrden.com/puzzles
- [9] http://www.twistypuzzles.com/cgi-bin/puzzle.cgi?pid=596
- [10] http://www.geocities.com/alchemistmatt/cube/5by5cube.html
- [11] http://www.geocities.com/eliasvalencia2000/index.html
- [12] http://www.geocities.com/jaapsch/puzzles
- [14] http://www.mefferts.com
- [15] http://www.mud.ca/puzzler/jpuzzler/jpuzzler.html, http://byrden.com/puzzles, http://www.tux.org/~bagleyd/puzzles.html
- [16] http://www.geocities.com/jaapsch/puzzles/skewb.htm
- [17] http://www.rodoval.com/heureka/skewb
- [18] http://www.twistypuzzles.com/cgi-bin/puzzle.cgi?pid=606&allprices=1
- [19] http://byrden.com/puzzles
- [20] http://home.aanet.com.au/robertw/Puzzle.html
- [21] http://www.bethel.co.jp/Annai/cube.htm
- [22] http://www.puzzle-shop.de/start-shop.html
- [23] http://www.mefferts.com/about-uwe-1.html
- [24] http://byrden.com/puzzles/
- [25] http://www.mefferts.com
- [26] http://www.mefferts.com/puzzles/megasol1.html
- [27] http://www.thomas-ball.com
2.3. Caos y orden en dimensiones varias
pág. 217
El fichero puzzler.LGO contiene un simulador de Puzzler con todas las piezas numeradas como en la figura 3, escrito para el entorno MSW Logo. También es necesaria la imagen puzzler.gif. Para poder ejecutarlo hay que tener instalado MSW Logo (hace falta la versión original en inglés, no una traducida). Una vez instalado MSW Logo, carga el fichero puzzler.LGO (File - Load), escribe jugar en la línea de órdenes (la zona inferior de la ventana Commander), y pulsa Intro.
Una vez en funcionamiento, nuestro Puzzler se puede manejar pulsando las siguientes teclas (el foco tiene que estar en la ventana principal MSWLogo Screen):
- i
- Gira la rueda izquierda en el sentido de las agujas del reloj
- I
- Gira la rueda izquierda en el sentido contrario al de las agujas del reloj
- d
- Gira la rueda derecha en el sentido de las agujas del reloj
- D
- Gira la rueda derecha en el sentido contrario al de las agujas del reloj
- c
- Desordena el rompecabezas haciendo cien movimientos al azar
- e
- Ordena el rompecabezas
- Retroceso
- Deshace el último movimiento. Se puede pulsar varias veces.
- o
- Ejecuta la secuencia de movimientos iDId
- p
- Ejecuta la secuencia de movimientos idID
También se pueden hacer los movimientos haciendo clic con el ratón en las teclas i, I, d y D que están en los centros de las ruedas.
pág. 226
El simulador de la Parrilla 1 es similar al anterior (requiere la imagen parrilla1.gif) y se ejecuta de la misma forma, introduciendo la orden jugar. El manejo es análogo, haciendo clic sobre las letras (a, b, c, d, A, B, C, D) o pulsándolas en el teclado. Por lo demás, tiene las siguientes variaciones:
- Control-c
- Sustituye a c para desordenar el puzzle
- Intro
- Rehace el último movimiento deshecho con Retroceso
Las teclas o y p no tienen efecto. Además, para jugar teniendo en cuenta la orientación hay que ejecutar en la ventana de órdenes (ventana Commander):
make "orient "true jugar
Notas
- [1] http://www.calormen.com/TwistyPuzzles/twisty.htm
- [3] http://www.geocities.com/jaapsch/puzzles/turnstil.htm
- [4] http://www.gap-system.org/gap.html
- [6] http://www.math.rwth-aachen.de/~Martin.Schoenert/Cube-Lovers/Stan_Isaacs__Circle_Puzzles.html, http://www.geocities.com/jaapsch/puzzles/cubic2.htm#p14
- [7] http://www.mujweb.cz/www/rashkey/english.htm, http://www.puzzle-shop.de/start-shop.html
- [8] http://www.geocities.com/jaapsch/puzzles/rashkey.htm, http://www.sweb.cz/Sindylek/Hlavolamy/Hlavolamy.htm
- [9] http://www.geocities.com/jaapsch/puzzles/circle.htm
- [10] http://www.rodoval.com/heureka/jop2.html
- [11] http://www.puzzle-shop.de/5-circles.html, http://www.geocities.com/jaapsch/puzzles/gripple.htm
- [12] http://www.cut-the-knot.org, http://sylvain.seccia.com
- [13] http://www.rodoval.com/heureka
- [14] http://www.puzzle-shop.de/puzzle-ring.html
- [15] http://www.geocities.com/jaapsch/puzzles/gerdig.htm
- [17] http://www.uspto.gov/patft/index.html
- [18] http://www.twistypuzzles.com/cgi-bin/pdb-search.cgi?act=sec&key=bead, http://www.puzzle-shop.de/start-museum.html
- [19] http://www.rubiks.com
- [20] http://www.geocities.com/jaapsch/puzzles/rings.htm
- [21] http://www.lucyscafe.co.uk/games/gamepages/rings.asp
- [22] http://brightworld.com/CrossRingsPuzzle
- [23] http://www.calormen.com/TwistyPuzzles/twisty.htm
- [24] http://www.puzzle-shop.de/start-shop.html
- [25] http://www.geocities.com/jaapsch/puzzles/topspin.htm
- [26] http://www.maar10.net/puzzles/online-puzzles/topspin/topspin.html
- [27] http://www.rose-hulman.edu/mathjournal
- [28] http://www.superliminal.com/cube/cube.htm
3.1. La torre de Hanoi
Notas
- [1] http://www.mazeworks.com/hanoi/
- [2] http://hanoitower.mkolar.org/shortestTHalgo.html
- [4] http://matap.dmae.upm.es/cursofractales/index.htm
- [5] http://www.hcc.hawaii.edu/~sam/RevesApplet.html
- [6] http://math.bu.edu/people/renchev/java/MyHanoi
- [7] http://gwyn.tux.org/~bagleyd/java/PanexApp.html
3.2. Las argollas chinas
Notas
- [1] http://www.johnrausch.com/PuzzleWorld/toc.asp?t=_cat/sm001.htm&m=cat/sm000.htm
- [2] La conferencia de David Singmaster tuvo lugar en mayo de 2005 y el sumario desapareció de la página citada. Hay una referencia al manuscrito de Pacioli en http://www.daviddarling.info/encyclopedia/C/Chinese_rings.html.
- [3] http://www.arabesk.nl
- [4] http://www.calormen.com/TwistyPuzzles/twisty.htm
- [5] http://www.puzzle-shop.de/start-shop.html
- [6] http://www.puzzles.com/products/elephantspinout.htm, http://www.maar10.net/puzzles/online-puzzles/spinout/spinout.html
- [7] http://www.geocities.com/jaapsch/puzzles/spinout.htm
3.3. Gravedad
Notas
- [1] http://www.bekkoame.ne.jp/~ishmnn/java/java.html
- [2] http://www.clickmazes.com/indext.htm
- [3] http://www.rodoval.com/java/Gravedad/gravedad.html
- [4] http://www.geocities.com/jaapsch/puzzles/rackemup.htm, http://www.geocities.com/jaapsch/puzzles/rowbyrow.htm
- [5] http://www.puzzle-shop.de/start-shop.html
- [6] http://www.geocities.com/jaapsch/puzzles/chaos.htm
3.4. Rubik Magic
pág. 353
FE DE ERRATAS. Aunque el pie de la figura 23 aparece al final de esta página, la figura 23 es la que está al principio de la página siguiente. La que aparece encima de este pie es la figura 22.
pág. 354
FE DE ERRATAS. Por dos veces, en el texto normal y en el pie de la figura 24, se alude a una versión de 16 placas que en realidad sólo tiene 12, como se puede ver en la figura.
Notas
3.5. Sokoban
pág. 359
Este es el código fuente en Free Pascal de un sencillísimo Sokoban para jugar el primer nivel clásico que traduce fielmente el pseudocódigo de la página 359. Para que no tengas que compilarlo, aquí está el ejecutable para Windows.
Notas
- [1] http://www.sokoban.jp
- [2] http://www.cs.cornell.edu/andru/xsokoban.html
- [3] http://citeseer.ist.psu.edu/gasser95harnessing.html
- [4] http://www.games4brains.de/twostyles.html
- [5] http://www.siteexperts.com/games/sokoban/sokoban.htm
- [6] http://www.ne.jp/asahi/ai/yoshio/sokoban/auto52/index.html
- [7] http://www.ic-net.or.jp/home/takaken/e/soko/level/index.html
- [8] http://sourceforge.net/projects/sokobanyasc, http://easysok.sourceforge.net
- [9] http://sokoban.online.fr/theorie/page_indicateurs.html
- [10] http://sokoban.online.fr/theorie/page_theoremes.html
- [11] http://www.ic-net.or.jp/home/takaken/e/soko/index.html, http://paul.voyer.free.fr/main1.htm, http://www.codecola.net/sps, https://sourceforge.net/projects/sokobanyasc
Contacto
Puedes enviarnos cualquier consulta o comentario sobre el libro escribiendo a una de estas direcciones electrónicas: