PortadaÍndiceCalendarioFAQBuscarMiembrosGrupos de UsuariosRegistrarseConectarse

Comparte | 
 

 Simulación del juego de la vida de Conway

Ver el tema anterior Ver el tema siguiente Ir abajo 
AutorMensaje
elPatrixF
Soporte
Soporte
avatar

Argentina Masculino 100% Cumplimiento de las normas
Reputación : 325
Mensajes enviados : 1296
Edad : 24
Premios : Ganador concurso periódico: Demos de Aplicaciones 3º puesto concurso anual: Demos de juegos

MensajeTema: Simulación del juego de la vida de Conway   Jue Feb 09, 2012 5:14 pm

Este es un proyecto un tanto complejo, pero es una implementación completa del juego de la vida de conway. Algunos lo deben conocer por el emblema hacker.

El juego de la vida es el mejor ejemplo de un autómata celular, diseñado por el matemático británico John Horton Conway en 1970.

El juego de la vida es en realidad un juego de cero jugadores, lo que quiere decir que su evolución está determinada por el estado inicial y no necesita ninguna entrada de datos posterior. El "tablero de juego" es una malla formada por cuadrados ("células") que se extiende por el infinito en todas las direcciones. Cada célula tiene 8 células vecinas, que son las que están próximas a ella, incluso en las diagonales. Las células tienen dos estados: están "vivas" o "muertas" (o "encendidas" y "apagadas"). El estado de la malla evoluciona a lo largo de unidades de tiempo discretas (se podría decir que por turnos). El estado de todas las células se tiene en cuenta para calcular el estado de las mismas al turno siguiente. Todas las células se actualizan simultáneamente.
Las transiciones dependen del número de células vecinas vivas:
  • Una célula muerta con exactamente 3 células vecinas vivas "nace" (al turno siguiente estará viva).
  • Una célula viva con 2 ó 3 células vecinas vivas sigue viva, en otro caso muere o permanece muerta (por "soledad" o "superpoblación").
Más info en
[Tienes que estar registrado y conectado para ver este vínculo]
[Tienes que estar registrado y conectado para ver este vínculo]

Esta implementación está hecha en un tablero (Surface) de 160x90. Está todo bien comentado para que cualquiera pueda usarlo. Usa el mersenne twister para el "espolvoreo", totalmente al pedo :xD:.

Para una explicación rápida, se puede editar con el mouse (Clic izquierdo pinta, clic derecho borra), se activan las generaciones con la barra espaciadora, y se cambia de "reglas" con las teclas 1-4.

Este es un ejemplo de un diseño de autómata celular. Un generador de gliders.
[Tienes que estar registrado y conectado para ver esa imagen]

Y un glider es esto. Un cosito que va viajando por el plano Razz
[Tienes que estar registrado y conectado para ver esa imagen]

Como corolario, tiene una de las funciones más largas que he tenido que usar en un juego, (Todo sea por ahorrar eventos) siendo ésta, GetRGB(RedAt( "s", LoopIndex("a"), LoopIndex("b")), RedAt( "s", LoopIndex("a")-1, LoopIndex("b")-1) mod 2+RedAt( "s", LoopIndex("a"), LoopIndex("b")-1) mod 2+RedAt( "s", LoopIndex("a")+1, LoopIndex("b")-1) mod 2+RedAt( "s", LoopIndex("a")-1, LoopIndex("b")) mod 2+RedAt( "s", LoopIndex("a")+1, LoopIndex("b")) mod 2+RedAt( "s", LoopIndex("a")-1, LoopIndex("b")+1) mod 2+RedAt( "s", LoopIndex("a"), LoopIndex("b")+1) mod 2+RedAt( "s", LoopIndex("a")+1, LoopIndex("b")+1) mod 2, 0).

Descargar:
[ [Tienes que estar registrado y conectado para ver este vínculo] ]


elPatrixF @Web, Twitter, [Tienes que estar registrado y conectado para ver este vínculo]


Última edición por elPatrixF el Mar Jun 12, 2012 1:49 pm, editado 1 vez
Volver arriba Ir abajo
Ver perfil de usuario http://elpatrixf.com
elPatrixF
Soporte
Soporte
avatar

Argentina Masculino 100% Cumplimiento de las normas
Reputación : 325
Mensajes enviados : 1296
Edad : 24
Premios : Ganador concurso periódico: Demos de Aplicaciones 3º puesto concurso anual: Demos de juegos

MensajeTema: Re: Simulación del juego de la vida de Conway   Vie Feb 10, 2012 7:11 pm

¿Alguien lo probó o a nadie le interesa? :xD:


elPatrixF @Web, Twitter, [Tienes que estar registrado y conectado para ver este vínculo]
Volver arriba Ir abajo
Ver perfil de usuario http://elpatrixf.com
ErichZann
Moderador
Moderador
avatar

Argentina Masculino 100% Cumplimiento de las normas
Reputación : 331
Mensajes enviados : 1414
Premios : Ganador concurso periódico: Demos de juegos (x2) Ganador concurso navideño Ganador concurso anual: Demos de juegos

MensajeTema: Re: Simulación del juego de la vida de Conway   Vie Feb 10, 2012 8:43 pm

Es interesante y me gusta, especialmente si dibujo un cuadrado con "life 34", yo estaba intentando algo en esa linea, la idea era buena, pero se complicó.... si algún día lo termíno....


Algunos de mis juegos:
Spoiler:
 
Volver arriba Ir abajo
Ver perfil de usuario http://ezann.com.ar/
Zonacas
Super-Moderador
Super-Moderador
avatar

España Masculino 100% Cumplimiento de las normas
Reputación : 557
Mensajes enviados : 2871
Premios : Ganador Concurso "Aniversario PacMan" 2º puesto concurso anual: Demos de juegos

MensajeTema: Re: Simulación del juego de la vida de Conway   Sáb Feb 11, 2012 6:50 am

Aquí lo tenéis en Html 5

[Tienes que estar registrado y conectado para ver este vínculo]






[Tienes que estar registrado y conectado para ver esa imagen]
[Tienes que estar registrado y conectado para ver este vínculo]
ENLACES INTERESANTES: [Tienes que estar registrado y conectado para ver este vínculo] - [Tienes que estar registrado y conectado para ver este vínculo] - [Tienes que estar registrado y conectado para ver este vínculo]
Volver arriba Ir abajo
Ver perfil de usuario http://www.comunidadid.com/
elpupas7
Administrador
Administrador
avatar

España Masculino Ningúno
Reputación : 1226
Mensajes enviados : 3884
Premios : Empty (invisible) Empty (invisible) Empty (invisible) Empty (invisible)

MensajeTema: Re: Simulación del juego de la vida de Conway   Mar Feb 14, 2012 4:01 am

Se agradece el .mfa.
Lo había visto en multiples lenguajes, pero no para mmf.
Ahora con esto, cada uno puede mejorar la interfaz e implementar otras opciones...
Siempre he visto este "juego" como un "ejercicio de programación" y algo "bonito de ver".
+R
Volver arriba Ir abajo
Ver perfil de usuario
elPatrixF
Soporte
Soporte
avatar

Argentina Masculino 100% Cumplimiento de las normas
Reputación : 325
Mensajes enviados : 1296
Edad : 24
Premios : Ganador concurso periódico: Demos de Aplicaciones 3º puesto concurso anual: Demos de juegos

MensajeTema: Re: Simulación del juego de la vida de Conway   Mar Feb 14, 2012 1:53 pm

Sep, es como un autómata celular :clown:
Hay unos cuantos diseños bonitos circulando por internet. En la wikipedia muestran unos cuantos osciladores, naves espaciales, y chiches curiosos que se pueden hacer en mi simulador Razz.

El único problema es que la implementación base es una máquina de carcomer ciclos de cpu.
Ya con una cuadrícula de 160x90 en una computadora estándar las generaciones se hacen a 30-40 cuadros por segundo.

Imaginarse una cuadrícula de 320x200, y ni hablar de 640x480 Shocked
Para cuadrículas grandes conviene usar el algoritmo hashlife, pero todavía no lo leí bien así que no se como implementarlo :xD:

Estaba en mis planes crear un juego al estilo del "Life genesis" de microsoft, donde habían dos colores. El único dilema es que hay que guardar información adicional en la cuadrícula Razz
Ya había inventado algo parecido, pero con objetos activos y un arreglo.
Spoiler:
 

Se los dejo acá para que chusmeen :xD:


elPatrixF @Web, Twitter, [Tienes que estar registrado y conectado para ver este vínculo]
Volver arriba Ir abajo
Ver perfil de usuario http://elpatrixf.com
Zonacas
Super-Moderador
Super-Moderador
avatar

España Masculino 100% Cumplimiento de las normas
Reputación : 557
Mensajes enviados : 2871
Premios : Ganador Concurso "Aniversario PacMan" 2º puesto concurso anual: Demos de juegos

MensajeTema: Re: Simulación del juego de la vida de Conway   Miér Feb 15, 2012 5:16 am

Chusmeando....

Cuanta formula Shocked

estaría bien que cuando sitúas los bloques azules te deje colocar los bloques rojos antes de que empiecen a evolucionar

para que comiencen los dos a evolucionar a la vez

Se ve muy interesante Smile

PD:Truco, he conseguido posicionar células rojas y azules y que comiencen a la vez, coloquen por ejemplo un fila de celulas azules (click izquierdo) y sin soltar desplácense al borde o fuera del cuadro de dibujo, desde allí y sin soltar el botón del ratón hagan click derecho para cambiar el color a rojo, ahora ya pueden soltar el botón izquierdo del ratón, vayan al lado contrario y pinten otra fila, suelten el botón y verán la batalla de las células Very Happy



[Tienes que estar registrado y conectado para ver esa imagen]
[Tienes que estar registrado y conectado para ver este vínculo]
ENLACES INTERESANTES: [Tienes que estar registrado y conectado para ver este vínculo] - [Tienes que estar registrado y conectado para ver este vínculo] - [Tienes que estar registrado y conectado para ver este vínculo]
Volver arriba Ir abajo
Ver perfil de usuario http://www.comunidadid.com/
elPatrixF
Soporte
Soporte
avatar

Argentina Masculino 100% Cumplimiento de las normas
Reputación : 325
Mensajes enviados : 1296
Edad : 24
Premios : Ganador concurso periódico: Demos de Aplicaciones 3º puesto concurso anual: Demos de juegos

MensajeTema: Re: Simulación del juego de la vida de Conway   Miér Feb 15, 2012 3:05 pm

Embarassed Mantené pulsada la tecla CTRL para que la simulación se pause- Me olvidé de decirlo.


elPatrixF @Web, Twitter, [Tienes que estar registrado y conectado para ver este vínculo]
Volver arriba Ir abajo
Ver perfil de usuario http://elpatrixf.com
Zonacas
Super-Moderador
Super-Moderador
avatar

España Masculino 100% Cumplimiento de las normas
Reputación : 557
Mensajes enviados : 2871
Premios : Ganador Concurso "Aniversario PacMan" 2º puesto concurso anual: Demos de juegos

MensajeTema: Re: Simulación del juego de la vida de Conway   Jue Feb 16, 2012 5:11 am

Ah vaya así mucho mejor Smile



[Tienes que estar registrado y conectado para ver esa imagen]
[Tienes que estar registrado y conectado para ver este vínculo]
ENLACES INTERESANTES: [Tienes que estar registrado y conectado para ver este vínculo] - [Tienes que estar registrado y conectado para ver este vínculo] - [Tienes que estar registrado y conectado para ver este vínculo]
Volver arriba Ir abajo
Ver perfil de usuario http://www.comunidadid.com/
mataguiris
Experto
Experto
avatar

España Masculino 100% Cumplimiento de las normas
Reputación : 63
Mensajes enviados : 498
Premios : Vacío

MensajeTema: Re: Simulación del juego de la vida de Conway   Miér Mayo 27, 2015 6:49 am

Muy bueno, estuve viendo el mfa y no lo entiendo muy bien Embarassed he estado probando en Cosntruct2 y me estaba volviendo loco con arrays, entonces alguien ha conseguido hacerlo, aunque de una manera distinta, comprobando las distancias entre células muerta y viva, y bueno, lo ha conseguido también.

Cuando llegue a casa subo el ejemplo de Construct2, aunque el rendimiento flaquea mucho cuando hay muchas células vivas, en cambio el mismo ejemplo con ConstructClassic tiene un rendimiento bastante más aceptable.

Abrí un hilo sin saber que existía este, voy a pedir que cierren el otro.
Volver arriba Ir abajo
Ver perfil de usuario http://mataguiris-g.blogspot.com
imed
Novato
Novato
avatar

Argentina Masculino 100% Cumplimiento de las normas
Reputación : 0
Mensajes enviados : 24
Edad : 26
Premios : Vacío

MensajeTema: Re: Simulación del juego de la vida de Conway   Jue Sep 03, 2015 11:38 pm

Baboso


Me encantan estos post, siempre aprendo algo nuevo.
Es realmente muy interesante todo este tema... hora de investigar!
Volver arriba Ir abajo
Ver perfil de usuario http://demedgruppe.comuf.com/
Contenido patrocinado




MensajeTema: Re: Simulación del juego de la vida de Conway   

Volver arriba Ir abajo
 
Simulación del juego de la vida de Conway
Ver el tema anterior Ver el tema siguiente Volver arriba 
Página 1 de 1.
 Temas similares
-
» El juego de la vida
» JUEGO: Frases de Cine
» Reportaje "500 gr de Vida"
» EXPLOSIÓN DEMOGRÁFICA, MEDIO AMBIENTE Y CALIDAD DE VIDA
» DESTITUYEN A LA TRAIDORA PIEDAD CORDOBA......me juego una de mis presiadas joyas que esto esta en el disco duro recuperado.

Permisos de este foro:No puedes responder a temas en este foro.
 :: Descargas y Recursos :: Aportes y ejemplos-
Cambiar a: