Jueves, 29 de junio de 2006

Análisis PalmSokoban: sencillo de aprender, difícil de dominar

En japonés, las personas que trabajan en un almacén reciben el nombre de Sokoban, y por eso recibe este nombre el juego en el que debemos empujar una serie de cajas, a través de un laberinto, y colocarlas en unas posiciones determinadas. Sólo podemos empujarlas, y además sólo una, por lo que un mal movimiento puede dejar las cajas en una posición tal que no podamos continuar jugando.

El nivel inicial de Sokoban
El nivel inicial de Sokoban

Sokoban fue inventado en 1980 por Hiroyuki Imabayashi, que ganó con él un concurso de diseño de videojuegos. Posteriormente fue publicado en 1982 por la compañía Thinking Rabbit, presidida por el propio Hiroyuki, y debido a su simplicidad y elegancia de reglas, pero desafiante complejidad intelectual, en seguida se hizo muy popular. Aunque posteriormente aparecieron infinidad de versiones, existe un conjunto básico “estándar” de 50 problemas, ordenados de más fácil a más difícil, que originalmente aparecieron en la versión para PC del juego desarrollada por Spectrum Holobyte en 1984.

Sokoban esconde mucho más de lo que parece a simple vista. Los diseños de los diferentes niveles esconden una belleza, detallismo y complejidad, que va mucho más allá de la simple diversión que es intentar resolverlos, convirtiéndolos en pequeñas obras de arte. De hecho, algunos niveles son muy valorados, y sus autores tienen un gran prestigio entre los amantes de este juego. En ocasiones, alguien se ha hecho con alguno de estos niveles más valorados, y los ha modificado sin conocer la complejidad que se ocultaba detrás del diseño, siendo comparados estos actos con robar un cuadro de Velázquez y pintar encima algunas lineas, destruyendo la obra.

Desde el punto de vista de la complejidad algorítmica, Sokoban es un problema de tipo NP-hard y EspacioP-completo, volviéndose muy interesante para investigadores en inteligencia artificial, porque resolver un nivel de Sokoban es comparable a diseñar un robot que se pueda mover por un almacén. Sokoban es muy complejo debido a su factor de ramificación (comparable al del ajedrez), y por la enorme profundidad de su árbol de búsqueda (algunos niveles requieren empujar las cajas más de 1000 veces). Por ello, ha sido objeto de muchos estudios, como por ejemplo el que dio como resultado el solucionador automático Rolling Stone, desarrollado por el departamento de juegos de la Universidad de Alberta.

Un nivel más complicado
Un nivel más complicado

Sokoban esta disponible para multitud de sistemas: Windows, Linux, MacOS X… y por supuesto también PalmOS. Existen unas cuantas implementaciones para elegir, algunas de pago (HotSokoban, Sokoban, PicoBan), pero las hay también gratuitas:

El interfaz de BoxMan
El interfaz de BoxMan

  • BoxMan es el que más me ha gustado, ya que aunque todas las versiones gratuitas de Sokoban para PalmOS que he encontrado, son algo antiguas y no soportan alta resolución, o navegador de 5 direcciones, ésta permite dirigir cómodamente los movimientos con el stylus: nosotros marcamos la casilla a la que queremos llegar, y el programa mueve la hormiguita a esa posición. Lo mismo ocurre cuando movemos las cajas. Dispone de 110 niveles, guarda nuestra puntuación en movimientos, para que podamos jugar a batir nuestra propia marca, y permite deshacer nuestros movimientos. Existe una versión shareware llamada HandySokoban, que añade a BoxMan más funciones y las soluciones de todos los niveles.
  • Patio BoxWorld es bastante básico, aunque dispone de opción deshacer. Tiene versión en color, y una colección de niveles (100 en total) creada por los desarrlolladores.

Sokoban, como todos los buenos puzzles, consigue con reglas sencillas, hacernos pensar bastante si queremos pasar al siguiente nivel. Un juego adictivo y entretenido, para disfrutar de nuestra Palm en los ratos libres.

si te ha gustado este post.



13 comentarios sobre “Sokoban: sencillo de aprender, difícil de dominar”


Deja un comentario


Etiquetas válidas:<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Akismet ha protegido ya este blog de miles de comentarios fraudulentos. Pero si por error filtra tu comentario por favor avísame mediante el email de contacto de la derecha.