Trooper
|
[NERD]Conway's Game of Life
23-06-09, 11:01
#1
Pra quem gosta de nerdices matemáticas (denovo!). Muito do que escrevi tá na wikipedia em inglês sobre o assunto, mas tirei pitadas de outras fontes.
O Jogo da Vida de Conway é um autômato celular (um modelo discreto de um estruturas 'celulares'). Foi criado em 1970 em resposta a um problema exposto por Von Neumann (o famoso): uma máquina que constrói cópias de si mesma. Basicamente: o Conway's Life é um modo simples de implementação de um autômato celular. É um grid de 'células' que seguem regras de vida-e-morte. A complexidade das formas e padrões que surgem nessa espaço finito é infinita, e existem formas de implementar máquinas de turing completas com isso! (Máquinas de Turing completas podem computar qualquer coisa que seja computável dado tempo e espaço infinito). Aqui tem uma imagem de uma, embora eu não tenha entendido direito como se usa na prática (http://www.csse.monash.edu.au/~aland/TALKS/images/AROB2002/turingLifeGameLarge.gif) Enfim, as regras do Life são: 1 - Cada célula com um ou nenhum vizinho morre ou fica morta na próxima geração; (morte por solidão) 2 - Cada célula com dois vizinhos permanece no mesmo estado (viva se viva, morta se morta) na próxima geração; 3 - Células com exatamente três vizinhos ficam vivas na próxima geração; 4- Células com quatro ou mais vizinhos morrem de superpopulação na próxima geração. (morte por superpolução) Dá pra resumir em uma frase: três vizinhos fica vivo, dois vizinhos fica igual, qualquer outra situação é morte. Eu perdi um tempo fazendo uma sequência de imagens (e tive que postar no flickr porque o imageshack ta dando pau) pra mostrar a evolução de uma forma bem conhecida, o f-pentomino, nas primeiras 5 gerações. Os quadrados pretos são células vivas e os números indicam quantos vizinhos cada célula (mesmo as mortas) têm, se diferente de zero. A cor indica se estará vivo (verde) ou morto (vermelho) na próxima geração. Primeira geração Segunda geração Terceira geração Quarta geração Quinta geração Aqui um gif que me tomou um dia pra aprender a fazer: Notem que há quase sempre um fecho convexo de 1's e 2's vermelhos ao redor da forma, quase sempre violado por um ou dois 3's verdes. São essas violações que expandem a área da figura. Aqui tá o resultado da geração 143: Esse pentomino (também chamado de R-Pentomino, que até acho que é o nome certo) é a única das formas inicias com menos que 6 células conectadas que vai longe. Ele vai até a geração 1103, com população 116. E gera alguns gliders, como pode ser visto na figura acima. Um glider é a menor 'spaceship' conhecida. Spaceships são formas viajantes que mantém um tamanho (população da forma conexa) mais ou menos constante. Aqui tem a animação de um glider viajando: (http://upload.wikimedia.org/wikipedi...der_emblem.gif) se não aparecer. Na página da wikipedia tem várias outras formas, como as periódicas pequenas (blinkers, toads) e coisas altamente loucas como: Glider Guns: uma forma periódica que gera gliders! (http://upload.wikimedia.org/wikipedi...glider_gun.gif) E puffer trains, uma forma de evolução infinita e velocidade alta que deixa um rastro muito foda: abra esse site e procure pelo botao 'Run Puf Train' http://www.math.com/students/wonders/life/life.html Aproveite pra ler tudo que tem nesse site sobre o Life. É interessante pra caralho. Por exemplo: sendo óbvio que uma forma convexa não pode gerar uma célula viva que não seja contida no fecho convexo da figura ou adjacente a ele, é óbvio que nenhuma forma pode se propagar a mais que uma célula por geração. Assim, definiram essa velocidade como a velocidade da luz no Game of Life. Eis que um cara descobriu como fazer uma spaceship (que é enorme) que se propaga mais rápido que isso. Só que precisa ser num mundo pontilhado em certa frequência por células vivas. No vácuo, nada é mais rápido que a luz no Life. Outra coisa massa e que tem nesse site é que descobrem-se coisas na natureza que parecem o Life (na verdade o contrário). Alguns tipos de organização de colônias de insetos, por exemplo, são complexas absurdamente, mas seguem poucas regras simples. O Conway's Game of Life é interessante porque mostra como de regras simples podem surgir resultados supreendentes e evolucionários. Ele é uma prova de que noções como 'design' e 'organização'podem surgir espontaneamente na ausência de um designer. Cool, huh? O Life é usado em várias áreas da ciência como exemplo de auto-organização. Também é referenciado como prova de que de uma condição inicial simples e regras definidas conhecidas o caos logo pode emergir, na Teoria do Caos. Existems muitas, muitas variantes, com mais dimensões (3 dimensões, 4 dimensões...35 dimensões) e regras diferentes (por exemplo com 3 vizinhos sendo o estado estável, ou sem morte por superpolução). As regras diferem pra caralho quando mudam as dimensões. Uma coisa massa a fazer é pegar o movimento (ou evolução) de uma forma no Life normal (2D) e adicionar um eixo a mais. Aqui tem a imagem de um glider 'estirado' no tempo como uma dimensão espacial Z: Existe muito, muito estudo sobre os padrões do Life. Essa página aqui tem um Lexicon muito fodido de grande: http://www.argentum.freeserve.co.uk/lex.htm Por fim, a minha implementação do life, talvez não roda aí, mas pode baixar sem medo que mais que não rodar não vai acontecer (já tenho até idéia de porque não vai funcionar, mas a tentiada é livre, qqr coisa ajeito depois): Eu vou usar ainda isso em conjunto com um colega de laboratório para fazer uma aplicação teste em CUDA, além de estar criando um jogo mesmo (que não seja Zero-player game, aceite input e competição multiplayer) utilizando uma engine de um jogo da vida, e por fim, vou dar uma pesquisa para ver a viabilidade de usar isso como um gerador de mundos 'pano de fundo' para uma app que penso desenvolver. É mais ou menos como se um personagem viajasse por um mundo que evoluiu (e continua evolunindo) apesar dele, mas as ações dele afetam o mundo. Espero que alguém tenha gostado. De todas as coisas nerds que eu já postei essa é a mais. Last edited by Zedd; 06-11-19 at 17:40.. |
||||
Trooper
|
23-06-09, 11:12
#2
é muita coisa pra ler e jamais eu entenderia isso.
|
Trooper
|
23-06-09, 11:24
#3
|
Trooper
|
23-06-09, 12:04
#4
reply solidário!
Realmente isso ta muito complexo para a minha mente inferior... =( |
Mandalorian
|
23-06-09, 12:17
#5
Eu curti, mas sem um exame aprofundado (impossível no momento), não tenho nenhuma contribuição o topic.
Ou seja, camper. Por enquanto. |
The Alpha Male
|
23-06-09, 12:22
#6
essa teoria eh classica em meios computacionais
eh muito massa |
PHD em Dota 2
|
23-06-09, 12:48
#7
cara muito massa
só não entendi como que elas se multiplicam, impressão minha ou ficou faltando no texto? |
inativo
|
23-06-09, 13:11
#8
Quote:
Quote:
|
||
Mandalorian
|
23-06-09, 13:12
#9
Ai.
|
PHD em Dota 2
|
23-06-09, 14:15
#10
ow shi ... o item 3 eu tinha entendido errado, que as células que já estavam vivas permaneciam vivas e achei que era meio repetição do item 2.
duhp |
Trooper
|
23-06-09, 14:20
#11
Alguém conseguiu fazer o meu funcionar aí?
|
Mandalorian
|
23-06-09, 14:20
#12
Ai (2)
marconds, você não perguntou com os dots se geram? De onde que elas surgem? |
Trooper
|
23-06-09, 16:24
#13
Tinha um jogo de flash em que você tinha uma meta de seres para tal geração. Você coloca os "seeds" e deixar rodar. É bonito e você acaba pegando a lógica rapidinho, tem alguns grupos que vivem juntos, migrando, mó loco.
quando eu tiver tempo procurarei e postarei o jogo. http://www.kongregate.com/games/squi...argame-of-life =) Last edited by Stranger; 23-06-09 at 16:30.. |
Trooper
|
23-06-09, 16:30
#14
|
Trooper
|
23-06-09, 21:12
#15
Massa esse jogo Stranger.
O que eu estou a fazer é um em que os jogadores competem para ter mais células do seu tipo vivas. As regras variam pouco, o legal é que a cada X gerações o jogo pausa e cada jogador ganha novas células para colocar em jogo (baseado no número de células que tem vivas). Quem não leu: é pra isso que serve o [NERD] no título. Da próxima vez favor nem entrar no tópico. Sobre o não entender, eu duvido largamente visto que é um jogo matemático ensinado para crianças de terceira a quinta série. |
Trooper
|
23-06-09, 22:32
#16
A ds me dá medo as vezes.
|
Trooper
|
23-06-09, 22:48
#17
humm olhando as 4 primeiras imagens eu diria q eh um modo de cheat pra ganhar no campo minado
|
Trooper
|
24-06-09, 00:03
#18
wat?
|
Quagmire
|
24-06-09, 00:48
#19
|
Trooper
|
02-07-09, 21:20
#20
Ok, up desproposital, mas eu queria saber se alguém chegou a baixar e a conseguir rodar
E se não conseguiu qq deu no erro Prette plis |
Trooper
|
02-07-09, 21:44
#21
zedd, eu até posso testar e ler novamente isso tudo, quem sabe comentar alguma coisa...
Mas só nas férias (daqui 1 semana) pq além de ser bem complicado isso tudo, to sem tempo (finalera de semestre tá foda), mas nas férias vou rever isso aih |
Trooper
|
02-07-09, 22:06
#22
---------------------------
D:\Downloads\life\life.exe --------------------------- D:\Downloads\life\life.exe Falha na inicialização do aplicativo devido a configuração incorreta. A reinstalação do aplicativo pode resolver o problema. --------------------------- OK --------------------------- |
Trooper
|
02-07-09, 22:23
#23
po zedd eu li e nao entendi pohanenhuma....... haehhae
depois de varios minutos analisando os desenhos consegui entender, eu acho... mas tu tb nao explicou direito. - os "vizinhos" sao só os vizinhos vivos. - o "3" nao só fica vivo, mas tb ressucita caso esteja morto agora to tentando fazer esse negocio ai rodar ahahhae [Window Title] C:\Users\Desktop\life.exe [Content] C:\Users\Desktop\life.exe The application has failed to start because its side-by-side configuration is incorrect. Please see the application event log for more detail. [OK] Last edited by MAD MAX; 02-07-09 at 22:28.. |
Trooper
|
02-07-09, 23:36
#24
Rapaiz, mto complexo mesmo..
Porem, voce esta a desenvolver uma ferramenta que simule esse "JOGO" ? E voce diz que, eles conseguem estuar algo com isso, ou somente o fazem por desafio da mente, ou diversao? |
Trooper
|
02-07-09, 23:40
#25
Claro que conseguem estudar algo com isso. Pode ser que não com o modelo estrito, mas com a idéia geral. Simuladores de autocomplexidade em qualquer área tem a mesma base lógica.
O que eu vou fazer é meio complicado de explicar, mas é mais ou menos como: vou definir um conjunto de regras que cria um automato celular, vou desenvolver um controle de tempo (por geraçoes), vou fazer algoritmos de reconhecimento de padrões e vou usar esses padrões (que expressam informação através de sua posição (x e y), tempo de vida, cor, etc.. e o que mais eu quiser colocar pra complicar) pra gerar um `mundo virtual` 2d. É mais ou menos como se eu criasse um gerador de mundos que são aleatórios mas seguem regras bem definidas de forma que não importa o mundo gerado ele seja verossímil. O jogo MESMO, que os jogador jogam, interage com esse mundo. Então a cada partida será criado um mundo diferente e o jogador que jogar algumas vezes vai perceber um padrão, imprevisível nos detalhes mas ainda assim um padrão, do desenvolvimento do mundo. Pensa assim: cidades geralmente surgem perto de rios, mas nem todos os rios tem cidades ao longo. É difícil adivinhar onde uma cidade vai surgir, mas chutar ao lado de um rio aumenta a probabilidade um pouquinho. É esse tipo de coisa que eu quero que os jogadores tenham que levar em conta. Deu pra entender ou só piorei? Tenho 3 provas amanha e nao parei pra pensar muito na resposta ======== Sobre o pessoal que postou os erros, valeu. Vou ver se arrumo logo no primeiro dia de férias. |
Trooper
|
20-09-09, 15:41
#26
Up, mas não é desproposital
Então, fiz um trabalho com isso e ficou maneiro até Last edited by Zedd; 06-11-19 at 17:41.. Motivo: nope |
The real (1)
|
20-09-09, 15:59
#27
Quote:
|
|
Trooper
|
22-09-09, 06:58
#28
pensei que fosse tipo um jogo sobre a vida de Conway Twitty
|
Trooper
|
22-09-09, 08:47
#29
|
Trooper
|
30-09-09, 17:54
#31
Bom, gurizada, de todos os assuntos nerds que eu já postei na DS esse foi o menos querido e isso me deixa triste, porque é o mais nerd e o que eu mais gosto
Como eu to ainda um pouco às voltas com esse assunto (digo, to relatando o que eu fiz pra nunca mais fazer nada com isso) e a vontade de explicar e fazer coisas não acabou, acho qeu vou fazer uma versão mais abstrativa da explicação.. deixar um pouco menos nerd pra vocês poderem apreciar tanto quanto eu Mas amanhã que hoje to escrevendo artigo a dar com pau! |
Trooper
|
19-11-12, 02:01
#32
Rise from your grave
Procurem "conway's game of life" no google |
Trooper
|
19-11-12, 04:33
#33
Podia melhorar o resumo de " cada célula com tres vizinho fica viva" para " cada célula com tres vizinhos permanece viva ou nasce".
|
Trooper
|
19-11-12, 09:25
#34
me informaram que esse era o tópico com um método pra validar a virgindade masculina, confere?
|
Trooper
|
19-11-12, 10:18
#35
iuaihaeauhau vegetous
|
Pit
|
19-11-12, 11:43
#36
A questão é, tu já ficou o exe? hehe
|
|
|