• Nenhum resultado encontrado

AUTÔMATOS CELULARES BIDIMENSIONAIS E O JOGO DA VIDA

Embora os autômatos celulares bidimensionais apresentem maior complexidade que os unidimensionais, eles foram os primeiros a serem desenvolvidos, já que os modelos de reprodução artificial de von Neumann foram implementados em malhas 2D. Os CA2D

apresentam as mesmas características fundamentais dos CA1D, mas com vizinhanças em duas

direções ortogonais. No entanto, três tipos fundamentais dessas vizinhanças foram predominantemente considerados. Além da própria Vizinhança de Neumann, utilizada em sua máquina auto replicante, a Vizinhança de Moore ou Nine-Cell Moore (WEISSTEIN e WOLFRAM, 1999) consistiu de uma malha quadrática, com uma célula ao centro e vizinhos em todas as direções (Figura 24a). Na forma mais fundamental (r = 1), consiste de um arranjo de nove células, ou oito células envolvendo uma célula central. Ambas as vizinhanças, de Neumann e de Moore, são úteis na solução de diversos problemas, em diferentes contextos. Comumente utiliza-se a notação (i, j) para referenciar a posição horizontal e vertical de uma

célula no tempo t, denotada por ci,j (t). Enquanto em um CA1D elementar o arranjo k = 2, e r =

1 permite 23 = 8 possíveis vizinhanças, nos CA2D com a mesma situação na Vizinhança de

Moore existem 29 = 512 possibilidades de vizinhança, desde o arranjo com todas as células

brancas até o arranjo com todas as células pretas, passando pelas outras 510 possibilidades entre elas. Nessa condição um número astronômico de regras é possível, precisamente 2512 ou 10154.

Com a Vizinhança de Neumann esse número é reduzido para 232 = 10 bilhões.

A maioria das implementações de CA2D utilizaram esses dois exemplos de vizinhança. No

entanto, uma vizinhança mais recente foi imaginada por Margolus (Figura 24b), fundamentalmente diferente das duas anteriores. Esta consiste na divisão da fita de células em partes, utilizando o caso bidimensional mais simples, que são os blocos de células 2x2. Nesse caso, as regras de transição atualizam o bloco como uma entidade distinta, ao invés de célula individual. Uma característica única da Vizinhança de Margolus é que existem sobreposições, nas quais uma célula pode pertencer simultaneamente a mais de uma vizinhança e alterar de maneira diferente cada uma delas ao longo das gerações. Esse tipo de vizinhança foi amplamente utilizado em autômatos celulares que simulam o comportamento de gases e outros comportamentos físicos (MARGOLUS e TOFFOLI, 1987).

a. Vizinhança de Moore. b. Vizinhança de Margolus.

Figura 24: Outras vizinhanças possíveis nos autômatos celulares. Fonte: ilustração nossa. Os primeiros experimentos com CA2D efetuados em sistemas operacionais de computador

tiveram início na década de 1960, no Laboratório de Los Alamos. Com um plano de quadras considerado infinito, foram experimentadas regras de transição com as quais obtiveram-se resultados empíricos. Uma dessas experimentações em particular, proposta por uma equipe coordenada por Ulam, chamou a atenção: uma célula morta (0) se tornava viva (1) na próxima geração caso possuísse como vizinha uma única célula viva na geração corrente (nesse caso utilizando a Vizinhança de Neumann). Posteriormente, os autores uniram essa regra a outra regra denominada Regra de Morte, da qual ao fazer a transição de uma geração n para uma geração posterior n + 1, a geração anterior n - 1 tinha suas células inteiramente apagadas. Assim,

apenas as duas últimas gerações sobreviviam em qualquer configuração (SCHRANDT e ULAM, 1970).

Esse experimento foi provavelmente uma das maiores influências à ideia do matemático britânico John Horton Conway em desenvolver o mais famoso CA2D: o Jogo da Vida, publicado

na coluna sobre jogos matemáticos da revista Scientific American (GARDNER, 1970). Originalmente, o Jogo da Vida era jogado em tabuleiros de xadrez ou de go, quando então os avanços na computação permitiram sua implementação de maneira extremamente simples, utilizando os dois estados originais (vivo = 1; morto = 0) nas oito células da Vizinhança de Moore. As seguintes regras determinavam o próximo estado de uma célula (Quadro 2)

Quadro 2: Regras do Jogo da Vida

Situação Regra correspondente no Jogo da Vida

Morte

uma célula viva (1) morrerá (0) nas circunstâncias de:

Superlotação: se a célula possuir 4 ou mais vizinhos Solidão: se a célula possuir 1 ou menos vizinhos

Nascimento Possuir exatamente três vizinhos vivos (nem mais, nem menos) Êxtase

em todos os outros casos as células não mudarão:

Permanece viva: se tem exatamente 2 ou 3 vizinhos vivos

Permanece morta: se tem qualquer quantidade de vizinhos diferente de 3.

Fonte: Adaptado de Gardner (1970).

A jogabilidade do Jogo da Vida difere de um jogo convencional, no qual os jogadores intervêm na configuração constantemente. No entanto, ele abre uma possibilidade de exploração completamente diferente da anterior, na qual uma configuração dinâmica emerge de um estado inicial e de interações locais. Variações da configuração proposta por Conway foram consideradas, principalmente com malhas triangulares e hexagonais, entretanto nenhuma delas foi alvo de tantas explorações computacionais quanto a original. Enquanto algumas explorações computacionais do jogo resultaram em configurações periódicas, outras se mostraram bastante aleatórias.

Desse modo, o Jogo da Vida é um exemplo de autômato celular de Classe IV, exibindo alguns comportamentos assíncronos que às vezes convergem para estados estacionários (BERSINI; DETOUR, 1994). Também é um exemplo de regra totalizante, em que o estado da célula central na próxima geração depende a priori da soma dos valores das oito vizinhanças. No entanto, os modos de visualização dos autômatos bidimensionais, são diferentes unidimensionais. Em substituição ao empilhamento de células, nos quais visualiza-se o comportamento como um

todo, nos autômatos bidimensionais visualiza-se uma geração após a outra, o que o faz parecer um quadro de animação. Ao observar as transições em um monitor de vídeo, por exemplo, ficam evidentes alguns resultados intrigantes em relação a outros que permanecem estáticos.

A partir dos conceitos de morte e vida foram caracterizadas Formas de Vida elementares, que são gerações iniciais do Jogo da Vida, capazes de representar praticamente os conceitos mais amplos dos CA2D. Em linhas gerais, três situações contemplam esses conceitos: 1) formas de vida de 3 células: podem resultar rapidamente em processos de extinção, ou formar um bloco estático, que permanece por todas as gerações subsequentes; algumas configurações ainda oscilam de maneira cíclica a sua disposição; 2) formas de vida de 4 células: envolvem tanto comportamentos estáticos quanto variáveis; 3) formas de vida de 5 células (também denominadas de R-pentomino): também envolvem tanto comportamentos estáticos quanto variáveis, mas chegam a apresentar estabilidade depois de mais de 1000 gerações em comportamento variável. As principais formas de vida do Jogo da Vida, são as seguintes (WEISSTEIN, 2009).

Invariantes (Invariant forms): são as configurações que permanecem imutáveis ao longo de todos os instantes de tempo. Dessas, a forma bloco (1) é a mais comum, em que cada célula tem exatamente três vizinhos adjuntos. Outras formas de vida invariável são classificadas fazendo alusão a formas semelhantes: um padrão com quatro células vivas recebe o nome de banheira (2); com seis células, os padrões geométricos são colmeia (3), navio (4) e cobra (5); com sete células, os padrões anzol (6) e pão (7); e com oito células, o padrão lagoa (8) (Figura 25).

Figura 25: Formas de vida invariantes. Fonte: Weisstein (2009).

Osciladores (Oscillators): são as configurações que exibem um comportamento periódico, oscilando indefinidamente entre um número fixo de configurações. Alternam entre dois ou mais estados distintos, embora os casos de oscilação entre dois períodos sejam os mais comuns. A quantidade de períodos pode variar entre 3 e 18, embora implementações computacionais tenham obtido osciladores com períodos maiores, como a pesquisa de Achin Flammenkamp que desenvolveu um padrão geométrico para o Jogo da Vida capaz de se repetir a cada 144 gerações (ADAMATZKY, 2010). Gerações de um oscilador são mostradas na Figura 26.

Figura 26: Três formas de vida alternantes do oscilador CP-Pulsar. Fonte: Schiff (2008).

 Planadores (Gliders): essa forma de vida foi desenvolvida pelos pesquisadores do Gosper's Group do MIT. Tratam-se de configurações de 5 células que "movem" diagonalmente uma célula a cada 4 instantes de tempo. Elas são chamadas de planadores, pois no instante t + 2 essa linha de células diagonal é espelhada tomando a forma de um avião planador. No instante de tempo t + 4 o planador é espelhado novamente para a sua diagonal original, essa última deslocada de uma célula. Esse ciclo de tempo t = 4 é repetido intermitentemente (SILVER, 2009). Quando rodado em sequência em um

monitor de vídeo, o planador parece entrar em movimento, em uma espécie de "dança desajeitada". Nas palavras de Grand (2001, p. 40): "[...] o planador é algo, um fenômeno persistente coerente que se move através do espaço e ainda não está separado ou sobreposto ao mesmo. É simplesmente a auto propagação a partir de uma perturbação por pequenas regras [...]"7. A velocidade máxima de propagação de uma célula para outra (horizontalmente, verticalmente ou diagonalmente) é de uma célula por geração. Em novembro de 1970, o mesmo grupo de pesquisadores do MIT desenvolveu um padrão geométrico capaz de emitir simultaneamente um oscilador (denominado de metralhadora), juntamente com os planadores. Esse padrão ficou conhecido como Glider Gun13 e chamou a atenção, pois, pela primeira vez dois períodos distintos foram

considerados (Figura 27a-d).

a. t = 000. b. t = 75. c. t = 100. d. t = 130.

Figura 27: Gerações do Glider Gun. Fonte: Silver (2009).

Configurações Matusalém (Methuselah Configurations): são as configurações com menos de 10 células iniciais que produzem um grande número de formas de vida antes de se estabilizar, mas outras configurações com o mesmo comportamento foram obtidas como mais células de início. A forma estabilizada (sobrevivente) é chamada de um Matusalém, em referência ao personagem que, segundo a bíblia, viveu 969 antes de morrer. Nos exemplos mais comuns, tem-se um R-pentonimo após 1103 gerações, depois de variar 6 configurações ao longo das mesmas. Outras formas de vida do mesmo tipo foram desenvolvidas e batizadas pela semelhança de sua forma remanescente. Dentre as mais célebres, a Bolota, que sobrevive após 5206 gerações, desenvolvida por Charles Corderman; e o Coelho desenvolvida por Andrew Trevorrow, que se estabiliza após 17.331 gerações após oscilar entre vários ciclos de dois períodos e variar 39 configurações (Figura 28a-c).

a. Coelho. b. Bolota. c. R-Pentonimo. Figura 28: Exemplos de formas de vida Matusalém. Fonte: Adamatzky (2010).

Jardim do Éden (Garden of Eden): como mencionado, a evolução dos autômatos celulares é governada por funções de transição locais que alternam os estados das células em uma ordem sincrônica em instantes de tempo discretos. Desse modo, o padrão de células formado muda para outros padrões. No entanto, a questão sobre a existência de padrões de células que não surgem jamais, durante toda a evolução, exceto nas condições iniciais, vem sendo respondida ao logo dos anos, por longos processos computacionais e desenvolvimentos matemáticos. Uma forma de vida cuja a configuração não surge em nenhum instante de tempo posterior, ou seja, que não possui antecessores, é um padrão chamado de Jardim do Éden. O termo é atribuído a John Turkey e é também uma referência ao local destinado por Deus a Adão e Eva, antes do pecado, segundo a Bíblia. A partir dessa definição, esse padrão geométrico apresenta-se como um teorema de existência e não como um padrão recorrentemente a ser observado. Pelo fato do Jogo da Vida possuir configurações repetitivas e também configurações que se extinguem, as conjecturas sobre os Jardim do Éden têm sido investigadas, a fim de estabelecer a infinitude dos CA2D. Um exemplo dessa forma de vida é mostrado na Figura 29, de autoria de Achin

Flammenkamp.

Figura 29: Exemplo de uma forma de vida Jardim do Éden. Fonte: Schiff (2008). Embora o Jogo da Vida tenha sido de longe a aplicação de mais sucesso dentro dos autômatos celulares bidimensionais, uma quantidade inumerável de CA2D foram desenvolvidos ao longo

dos últimos 30 anos de aplicações em diversos ramos da ciência. Os CA2D são rápidos e fáceis

de implementar, além disso, frequentemente, a resposta visual obtida se assemelha aos padrões experimentados de outras formas empíricas. Assim, os autômatos celulares são uma maneira de

formalizar teoricamente os mecanismos vivenciados na prática em termos computacionais. Esses aspectos são, provavelmente, as duas grandes possibilidades dos CA em relação as outras abordagens mais tradicionais (ERMENTROUT e EDELSTEIN-KESHET, 1993).

Dentre essas explorações computacionais inspiradas em processos biológicos, os modelos baseados em autômatos celulares estão entre as implementações de maior aplicação em áreas externas à Ciência da Computação, como as Engenharias e as Ciências Sociais Aplicadas. Nas considerações de Langton (1990) "[...] o entendimento da vida por meio de tentativas resumidas a princípios dinâmicos fundamentais subjacentes aos fenômenos biológicos, possibilita recriam seus dinamismos em outras mídias, como os computadores, tornando-as acessíveis a novos tipos de manipulações e testes experimentais."

Esses experimentos têm sido cada vez mais frequentes na área do Design Computacional, a fim de reproduzir formas espaciais de elevada complexidade, a partir de regras relativamente simples. No entanto, mesmo podendo ser tridimensionais, nem sempre a utilização conceitual dos autômatos celulares leva a cabo a sua noção 3D, isto é, com malhas cúbicas de slots14 e

uma vizinhança padrão de 27 células. Em alguns casos, visando otimizar a manipulação