Challenging Lolo – A sufrir con más puzzles

Ignoro cuántos de ustedes conocen el juego de “Adventures of Lolo”. Es juego de puzzles para NES, y hubo 3 entregas, pero aquí hay que ayudar a Lolo a tomar todos los corazones que hay en cada cuarto para que el cofre del tesoro se abra y pueda recuperar la perla que está adentro (y así seguir avanzando). Por lo demás, la trama es que la princesa Lala fue raptada por el gran demonio y hay que rescatarla (súper original, lo sé).

Obviamente no todo es tan fácil: existen obstáculos que harán más difícil la tarea de recoger corazones, así como enemigos que eliminan a Lolo con sólo tocarlo.

En los tiempos del NES, realmente gocé estos juegos: mecánica simple, pero puzzles cada vez más interesantes (y difíciles). En ese entonces pude terminar el 1 y el 2, pero siempre me quedaba atorado en el nivel 8 del 3, y así se quedó por un buen rato. La primera vez que terminé el 3 fue cuando me senté dispuesto a acabarlo justo antes de venir a Japón (ya con la beca): le puse un emulador a mi Dreamcast y me puse la meta de terminarlo de una vez por todas. Fue difícil, pero el sabor de la victoria fue indescriptible.

10 años después (es decir, “en estas fechas”), me puse a jugar los 3 títulos de nuevo. El 1 no me duró nada; en el 2 le sufrí con los niveles “Pro” porque no recordaba cómo resolverlos (y hay que tener creatividad para lograrlo). Pero llegué de nuevo al 3, y del nivel 13 en delante hubo algunos cuartos que me trajeron dando vueltas varios días (tomen en cuenta que no me pongo a jugar muchas horas ni tampoco a diario). A fin de cuentas lo terminé, y volví a disfrutar de esa sensación de éxito al ver las pantallas simples del final, que por cierto en los buenos tiempos no le dabas mayor importancia. Pensé: “Bueno. Ya los jugué de nuevo. Ahora, ¿con qué le sigo?”. Aprovechando que reviví mi PSP y que los estuve jugando en NesterJ, me di a la tarea de buscar otros títulos de antaño. No obstante, nunca pasó por mi cabeza el hecho de que existían más Lolo.

“Challenging Lolo” es un hack del primer juego en donde el autor se dio a la tarea de crear nuevos cuartos mucho más difíciles, sólo por el placer de hacerlo. El resultado es un Lolo que los mega fans (yoooo) disfrutarán desde el primer momento. Y no miento. Comparemos:

Continue reading “Challenging Lolo – A sufrir con más puzzles”

La triste realidad del sexo en Japón – Un documental

Hace poco más de 3 años escribí un artículo sobre Japón y el sexo. En él comentaba la realidad de la actividad sexual en este país.

En días pasados varios amigos me comentaron la existencia de un documental en español al respecto. Lo vi, e inmediatamente pensé compartirlo con ustedes.

El documental es de la televisión española, y es de al menos el año pasado (2012). Las traducciones de lo que dicen los entrevistados son exactas y fieles, no como casos ya comentados aquí con anterioridad.

Preparen un buen café y pónganse cómodos. Dura 53 minutos.

[vimeo]http://vimeo.com/37515238[/vimeo]

 

Mayo, y la otra cara de los 10 años

No es que le tenga un cariño especial al mes de mayo, pero al menos en lo que va del de este año se ha tornado “relajante”.

Cuando menos acordé, ya había terminado abril, y con eso me di cuenta que no había escrito nada en el blog en un buen rato. Cierto es que el escrito de los 10 años me llevó tiempo, y que no voy ni a la mitad de la siguiente entrega de “los años maravillosos”, pero aunque no me desconecté y seguí viendo y respondiendo comentarios, de repente si me di una escapada de la realidad.

Ahora que estuve hospitalizado, me dijeron que básicamente le tengo que bajar al estrés. Lo que no me explicaron fue cómo hacerlo en una sociedad como ésta y en un trabajo como el que tengo… menos con una personalidad como la mía. Verán: me pasa lo que a muchos investigadores les ocurre durante un tiempo: cuando no estás haciendo algo referente a tu área, léase “otro trabajo”, “diviertiéndote”, “saliendo con tus amigos” o simplemente “relajarte”, sientes que es tiempo perdido (en serio) y que podrías estar aprovechándolo en investigar más, en intentar otro experimento, en aprender algo nuevo. Todo con exceso es malo, muy sabias palabras. Por supuesto que me doy mis tiempos y mis escapadas, y tengo mis prioridades, pero últimamente mi deseo de que un día tenga 48 horas como mínimo se ha tornado mucho más grande (y si se cumpliera, seguro no me alcanzaría el tiempo).

En estas 2 semanas que van del presente mes creo que he aprendido y hecho mucho más que desde que llegué a la capital nipona. Falta también muy poco para liberarme por completo de compromisos adquiridos cuando trabajaba en Fukuoka, y siento que vienen muchas oportunidades.

Como saben, he pasado ya una década en esta parte del mundo, y aunque trato de estar al día con lo que sucede en mi país, hay cosas que simplemente se te olvidan porque ya no interactúas directamente con la sociedad; además, siendo Japón un país con una cultura y una forma de vida tan diferente a la de muchos otros países, vivir aquí por tanto tiempo hace que, forzosamente, te acostumbres a moverte al ritmo requerido. Explico:

Para mí ya es común tener siempre la razón cuando voy a un establecimiento o me proporcionan un servicio, simplemente porque soy “el cliente”. Es también normal que el transporte público sea eficiente (y los japoneses pierdan TODO el respeto y pasividad si se trata de subir a un tren repleto de gente con tal de llegar temprano al trabajo) y (lamentablemente) que no haya excusa de “se me fue el camión” cuando uno llega tarde a sus labores.  Asimismo, el hecho de ver gente que su única vida es el trabajo y que no quieren salir de él ni convivir porque muchas veces no saben cómo hacerlo, se ha convertido en algo cotidiano. De la misma manera, ver cómo los padres ocupados envían a sus hijos a la escuela esperando que sean los profesores quienes los eduquen mientras ellos no están, y que gasten un dineral en enviarlos a escuelas vespertinas/nocturnas para que “estudien más” y puedan ser admitidos a las primarias, secundarias y preparatorias necesarias para tener posibilidad de ingresar a una universidad de renombre con lo que asegurarán su futuro aunque salgan sin saber mucho es una imagen que ya no tiene nada de raro (pero con la que no necesariamente concuerdo). También ver cómo el matrimonio es más como “algo que tienes que hacer” en vez de “algo que quieres hacer” y que valga más ser una mujer divorciada a una soltera (o para algunos “quedada”) entra a la mente sin problemas después de una buena bombardeada de publicidad y una buena lavada de cerebro por parte de los medios de comunicación. ¡Ah! Y cómo olvidar el hecho de que es “normal” y “comprensible” que vayas a los lugares donde te ayuden (con dinero de por medio) a sacar tu estrés sexual si no tienes novia…

En fin. El párrafo anterior es para poner en perspectiva lo que uno ve, vive y capta de este lado del mundo. Pero, ¿qué pasa en otros lugares? ¿Han cambiado tanto las cosas en estos 10 años? ¿La sociedad se mueve diferente a como yo la recuerdo en 2003?

Se oye exagerado, pero permítanme ejemplificar lo que intento comunicar:

Hasta 2003, recuerdo que (al menos en mi rancho) todavía censuraban las palabras altisonantes en radio y televisión. Canciones como “Gimme the Power” de Molotov eran editadas para poder ser transmitidas; incluso personajes como Brozo “medían sus palabras”. No, no es que yo sea de la vela perpetua ni que me espante que ahora se diga de todo, pero me intriga saber en qué momento cambió todo.

Como referí arriba, no es que esté completamente perdido ni fuera de la jugada. Sólo me gustaría leer si ustedes han notado cambios en los últimos 10 años, y de ser así, cuáles y más o menos cuándo lo notaron.

Agradezco como siempre sus comentarios 🙂

 

8-puzzle: Implementación sencilla de A*

Hace poco estuve leyendo unas notas de un curso en línea sobre planeación en IA. En una de ellas me encontré con un algoritmo que tenía rato que no veía ni utilizaba, y me dio curiosidad por implementarlo en Scala; me refiero al algoritmo A*.

En vez de explicar qué hace específicamente el algoritmo, un googlazo o una búsqueda en Wikipedia proveen información más detallada al respecto. El problema a resolver era el famoso 8-puzzle, aquel cuadro con números del 1 al 8 en el que hay que ponerlos en orden:

El algoritmo A* aplicado a este problema lo pueden encontrar fácilmente con una búsqueda en internet, pero como yo quería practicar Scala (lenguaje que uso en mis proyectos) me puse a ver qué tal me quedaba. Solamente tuve un problema en el algoritmo: tuve que usar un mutable hashset (horror, lo sé), porque al usar uno inmutable el tiempo de ejecución se hacía muy largo. Si hay alguien por ahí que quiera optimizar el código, adelante. También implementé la solución de forma imperativa nada más para comparar.

Aquí el código. Recuerden que esto no es la mejor implementación, y que por ende, puede mejorar. Los heurísticos implementados son Manhattan Distance (distancia de un estado x a uno meta) Misplaced tiles (contar el número de cuadros que no están en su lugar. El segundo también lleva a la solución, pero tarda más en encontrarla. La función principal (solve) está optimizada como tail recursive para evitar un posible stack overflow. Además, van a ver muchos val quizá innecesarios que puse para darle legibilidad al depurarlo en el caso de que fuera necesario.

Sugerencias y comentarios son bienvenidos:

Continue reading “8-puzzle: Implementación sencilla de A*”