25 marzo, 2006

El juego de la vida

Este juego es creado en 1970 por John Conway A lo largo de todo estos años ha sido digno de reconocimiento por muchas revistas de su campo a la vez que se producía el rechazo por aquellos que critican este método de ver la vida.

Su objetivo es reproducir lo más fielmente posible la evolución de una especie de seres vivos cualquiera, lo que hace algún tiempo Darwin explicaba en una de sus teorías más conocidas.

El juego funciona de la siguiente manera:
Se tiene una matriz en la que cada posición es una célula viva o muerta. Inicialmente, se genera de forma aleatoria qué posiciones resultan ser una célula viva y qué posiciones resultan ser una célula muerta. Una vez hecho eso, se aplican las siguientes reglas:
  • Una célula muerta con exactamente 3 células vecinas vivas "nace" (al turno siguiente estará viva).
  • Una célula viva con 2 o 3 células vecinas vivas sigue viva, en otro caso muere o permanece muerta(por "soledad" o "superpoblación")
En base a eso, obtenemos las siguientes generaciones. Se puede considerar que este juego no tiene fin. En muy raras ocaciones acabaremos con una matriz en la que todas sus células están muertas. Pruebas realizadas personalmente por mi, dicen que eso pasa 1 de cada 100 combinaciones aproximadamente. Comúnmente acabaremos con "patrones" predefinidos, lo que llevándolo a términos reales, podríamos denominarlos como nucleos de población.

Ya comentaba anteriormente que existe mucha gente en contra de este juego. Son aquellas que defienden que la reproducción humana (y de cualquier especie en general) no puede definirse en base a unas reglas, no puede ser algo que nace gracias a una fórmula matemática. Por el contrario, también existe gente que queda maravillada al verlo. Esas reglas no se eligieron al azar, tienen un sentido. Una ligera modificación de las mismas puede dar un resultado auténticamente caótico. Desde la destrucción total en unas pocas (no más de 10) generaciones hasta una ocupación de casi el 100% del espacio total disponible.

Para ilustrar acerca de lo que hablo he decidido programar yo mismo este juego y poner el código al alcance de cualquiera que lo quiera modificar. No hace falta que se me informe al respecto, ni mucho menos. Es código totalmente libre. Antes que nada, quiero avisar de un pequeño problema. Sólo funciona en linux. Ya sé que muchos usan windows pero no he conseguido la forma de hacerlo funcionar ahí. El lenguaje de programación que he usado es C++.

Aquí dejo un archivo en rar con el código fuente y el ejecutable para Ubuntu Linux. No lo he probado en otras distribuciones de linux, pero debería de ir en todas ellas.

Para más información, se puede acudir a la Wikipedia

1 Comentarios:

A las 4:34 p. m., Blogger JuanMa dijo...

buen post!! y sobre todo el poner el codigo a sido un detalle

 

Publicar un comentario

<< Home