Lição
A teoria — Jogo da Vida de Conway
Todo o Jogo da vida são dois números. B3: uma célula morta com exatamente três vizinhas vivas nasce. S23: uma célula viva com duas ou três vizinhas sobrevive, caso contrário morre. Não há outra regra, nem acaso, nem jogador — tu pões a primeira geração e o resto é forçado. Tudo o que o painel conta, e cada padrão da lista, é consequência desses dois números aplicados a todas as células ao mesmo tempo.
O que significa cada símbolo
n- o número de células vivas entre as oito vizinhas — quatro lados e quatro cantos. Cada decisão do jogo é tomada a partir desse único inteiro.
B3- a regra de nascimento. Exatamente três: duas não chegam e quatro são demais, e é essa nitidez que faz os padrões terem bordos limpos em vez de manchas.
S23- a regra de sobrevivência. Uma célula viva com menos de duas vizinhas morre como isolada; com mais de três, como sufocada.
Phase- o veredicto do próprio painel sobre o que o padrão está a fazer — Evolving, Still life, Oscillating ou Extinct. É uma comparação com gerações anteriores, não uma previsão.
De onde vem a fórmula
- Para cada célula do tabuleiro, conta as vivas entre as suas oito vizinhas. Fá-lo também para as mortas — o nascimento decide-se do mesmo modo que a sobrevivência, e uma célula que ainda não existe tem vizinhas na mesma.
- Aplica
B3. Uma célula morta com n = 3 passa a viva. Carrega o bloco e confirma: cada casa vazia que lhe toca vê no máximo duas vivas, portanto nunca nasce nada ao seu lado. É essa toda a razão por que o bloco fica quieto. - Aplica
S23. Uma célula viva com n = 2 ou n = 3 permanece. Cada uma das quatro células do bloco toca exatamente outras três, por isso as quatro sobrevivem e o bloco reproduz-se igual. - E faz tudo ao mesmo tempo. Cada célula é julgada contra o mesmo instantâneo e depois o tabuleiro inteiro é substituído. Atualiza célula a célula e obténs outro jogo, errado — a vizinha que já mudaste repercutiria na célula ao lado. A simultaneidade não é um detalhe de implementação: faz parte da regra.
Como ler o que vê
Vigia a linha Phase em vez da grelha. Carrega o bloco e ao fim de uma geração marca Still life; o pisca-pisca precisa de duas para chegar a Oscillating; o diehard corre 130 gerações e então marca Extinct. Carrega agora o planador e avança o que quiseres. Fica em Evolving para sempre — e é a coisa mais ordenada do menu, repetindo a sua forma exata a cada quatro gerações. O classificador compara o tabuleiro inteiro com tabuleiros anteriores, e o de um planador nunca se repete, porque a forma avançou uma casa na diagonal. A ordem que viaja é invisível a um teste de ordem que fica parada.
- Pressupõe
- Um tabuleiro finito — e que não controlas por completo: cada padrão traz o seu próprio tamanho de grelha e anula o teu. A página abre a 30×30; escolhe Acorn e passa a 50×50, põe 70 à mão e mantém-se, depois escolhe Diehard e desce a 40×40. A regra de Conway está definida num plano ilimitado, portanto um padrão que aqui chega à borda já não joga exatamente o mesmo jogo.
- Falha quando
- A linha Phase nunca te poderá dizer que um padrão vai sobreviver. Carrega o diehard: sete células, que crescem até vinte e quatro, vagueiam mais de cem gerações e desapareceram na geração 130 — o nome é merecido. Nada no ecrã o sugeria antes da geração 130, e nada o poderia ter feito. O Jogo da vida é Turing-completo, portanto perguntar «este padrão vai extinguir-se?» é o problema da paragem com outro chapéu, e nenhum algoritmo o decide. O que o painel responde é a pergunta decidível — este tabuleiro já se repetiu? — e enquanto espera diz cuidadosamente Evolving e nada mais forte.
Problema resolvido na íntegra
-
Cinco células vivas numa grelha de 30 × 30 5 passos
Cinco células vivas numa grelha de 30 × 30. Determine a densidade mostrada pelo painel e, em seguida, determine a velocidade a que o glider se desloca e por que razão não pode ir mais depressa. Este é o estado Planador.
-
A densidade é apenas o número de células vivas a dividir pelo número de células, e a grelha é quadrada.
-
A regra na íntegra. Note-se o que ela não contém: qualquer noção de direção, distância ou memória. Uma célula vê oito vizinhas e a geração atual, e isso é tudo.
-
Ao acompanhar o glider ao longo de quatro passos, ele volta a ser ele próprio, uma célula à direita e uma célula para baixo. Dois desses passos não se parecem em nada com o início, razão pela qual o período é quatro e não dois.
-
A velocidade é o deslocamento a dividir pelo período. O denominador do limite é determinado pela vizinhança: uma célula por geração é o mais rápido que a informação se pode mover.
-
Escalone-se para o tabuleiro. O tempo de travessia é uma propriedade do padrão e da grelha, não da velocidade de animação — esta apenas altera o tempo de espera.
Resposta
c/4, onde c é uma célula por geração. O Life tem um limite estrito de velocidade, que decorre diretamente da regra: uma célula apenas observa as suas oito vizinhas, pelo que nenhuma influência se pode deslocar mais do que uma célula por geração, independentemente do padrão construído. Esse é o cone causal, a que a literatura do Life chama a velocidade da luz sem grande ironia. O glider regressa à sua própria forma após quatro gerações, deslocado uma célula na diagonal, pelo que se move a um quarto do limite — e nada construído a partir de B3/S23 alguma vez superou c/2 ortogonalmente. Um padrão de cinco células com um período e um deslocamento é o menor objeto no Life que se desloca, demorando 120 gerações, ou 24 segundos nesta definição de velocidade, a atravessar o tabuleiro.
-
Referências (3)
- Turing completeness made explicit — a working universal Turing machine built out of Life patterns: P. Rendell, "A Universal Turing Machine in Conway’s Game of Life." 2011 International Conference on High Performance Computing & Simulation, 764–772.
- The column that introduced Life to a general audience: Martin Gardner, "Mathematical Games: The fantastic combinations of John Conway's new solitaire game 'life'." Scientific American 223, 120–123, October 1970.
- Where Life's universality is worked out: E. R. Berlekamp, J. H. Conway & R. K. Guy, Winning Ways for Your Mathematical Plays, volume 4, 2nd edition. A K Peters, 2004. ISBN 978-1-56881-144-4.