La belleza algorítmica de las plantas

Mayo 29, 2009

Tal es el título de un libro que estoy leyendo en estos días. Se puede conseguir gratuitamente en este sitio (en formato pdf).

El libro describe técnicas de modelado matemático de muchas estructuras que aparecen en el mundo vegetal. Todas son interesantes y muchas son muy fáciles de implementar, con algoritmos elegantes y breves (yo mismo he encontrado muy sencillo implementar una variante en mi programejo garabatos).

La existencia de estos modelos es muy evocativa y sugiere que la aparición de estructuras complejas no requiere de fuerzas misteriosas o leyes complicadas, sino de la aplicación reiterada de reglas sencillas a una cantidad muy pequeña de información inicial.

Recomiendo el libro a todos aquellos que amen las plantas y/o la matemática, y a los que estén interesados en la visión computacional del universo.


Aleatoriedad

Enero 4, 2009

La generación de números aleatorios es demasiado importante para dejarla librada al azar.

Robert R. Coveyou, 1969


MiniMax

Noviembre 28, 2008

MiniMax es el pintoresco nombre del algoritmo usado en muchos sistemas de análisis o simulación de juegos bipersonales.

Su funcionamiento emula el pequeño bucle recursivo que se genera a veces en las mentes de los jugadores, cuando no hay atajos para conocer la jugada óptima:

“Él va a hacer la la jugada A porque piensa que yo voy a hacer la jugada B porque pienso que él va a hacer la jugada C porque piensa que…”

Claro que los detalles son más escabrosos: hay que intercambiar roles en cada paso, evitar recursiones infinitas, usar poca memoria, etc; pero la idea básica es realmente encantadora, y más aún cuando uno ve que realmente funciona.


Una computadora más

Octubre 27, 2008

La historia del universo es, en efecto, un enorme y continuo cálculo cuántico. El universo es una computadora cuántica.

Esto obliga a preguntar: ¿Qué calcula el universo? Se calcula a sí mismo. El universo calcula su propio comportamiento.

(Programming the Universe, de Seth Lloyd)


Sitio propio para Robotín

Septiembre 24, 2008

Para no polucionar Bucles con el tema, hice una paginita para Robotín. Pasen por aquí.


Robotín: versión casera del Light Bot

Septiembre 23, 2008

He aquí la versión pre-pre-alpha de Robotín. Los que quieran probar la versión para windows no tienen más que bajarla desde este link. Cuando pueda compilaré la versión para Linux.

Envíen sugerencias y/o niveles nuevos (es fácil crearlos).


Light Bot

Septiembre 19, 2008

Ayer me recomendaron un juego realmente notable: el Light Bot.

El objetivo del juego es lograr que un robotito recorra su entorno, encendiendo algunas de las baldosas por las cuales camina. Para ello disponemos de acceso a la memoria del robot, pudiendo almacenar allí las instrucciones que lo harán moverse, girar, saltar y encender o apagar las baldosas.

Lo desafiante del juego es que el robot tiene muy poca memoria: 28 instrucciones en total, divididas en 12 principales y dos grupos de 8 para definir dos funciones o subrutinas.

Esta parquedad hace que, tras unos cuantos niveles, tengamos que recurrir a la recursión (chiste no intencional) para ganar, lo cual me pareció realmente delicioso.


Automatis floris

Agosto 26, 2008


IAAs

Junio 23, 2008

A veces, cuando pruebo algún algoritmo para un juego, me doy cuenta de que soy una Inteligencia Artificial Artificial, es decir, una inteligencia natural simulando ser una inteligencia artificial.

La sensación es incómoda; las ganas de «corromper» el algoritmo en mitad de una partida si le descubrimos una posible debilidad es tan poderosa, que no me extrañaría que la Inteligencia Artificial se logre cuando podamos hacer algoritmos que se corrompan a sí mismos.


Historia multifurcada

Junio 18, 2008

Ayer decidí revivir un viejo proyecto: el de la historia multifurcada. Se trata de una historia cuya estructura topológica es un árbol con raíz.

En cierto sentido, un árbol es lo más opuesto posible a un bucle (dado que explícitamente prohíbe los ciclos); pero me gusta esta estructura porque tiene una definición recursiva muy sencilla.

La idea del proyecto es que cada nodo del árbol define una historia distinta, que se puede extender agregando continuaciones a gusto (para mantener un poco acotada la cosa, puse un límite de 12 continuaciones posibles por nodo; pero creo que es más que suficiente).

No es una idea nueva; todos recordarán la famosa serie de libros Elige tu propia aventura (aunque eran estáticos y no se podían extender), y actualmente hay muchos proyectos por el estilo en internet; pero no muchos en español.

Espero que les guste el proyecto y agreguen sus propios capítulos; puede que dentro de un tiempo publique en forma lineal las ramas más graciosas o bellas.