• Nenhum resultado encontrado

Embora os ACs possam ser definidos em qualquer dimensão, os mais usuais são os unidimensionais e os bidimensionais, os quais descrevemos a seguir.

3.3.1 Autômatos Celulares Unidimensionais

Os ACs unidimensionais são aqueles cujo reticulado é representado por uma “linha” de células. O tamanho da vizinhança ηi é usualmente dado pela fórmula m = 2r + 1, onde r é chamado o raio do

AC. O raio indica quantas células à direita e à esquerda da célula central deverão ser consideradas para a formação da vizinhança. Por exemplo, seja r = 1. Neste caso, a vizinhança de uma dada célula

i será formada pela célula i - 1, pela própria célula i e pela célula i + 1. Sendo assim, o tamanho da vizinhança é m = 2 × 1 + 1 = 3. O cálculo é feito de forma similiar para raios maiores. A Figura 3.3a apresenta um AC unidimensinal binário de raio r = 1 e a Figura 3.3b apresenta um AC unidimensional binário de raio r = 2, ambos formados por um reticulado de tamanho N = 5 e com condição de contorno não-periódica (o estado para as células ausentes na vizinhança é 0). As figuras destacam a vizinhança da célula i = 4.

Nos ACs unidimensionais tem-se a regra de transição Φ : Σ2r+1 → Σ. Sendo k o número de estados possíveis por célula, a fórmula utilizada para se calcular o tamanho da regra de transição é n = k2r+1, e o espaço de regras, formado pelo conjunto todas as seqüências finitas possíveis com comprimento n, é dado pela fórmula kn. Por exemplo, se k = 2 e r = 2, tem-se que o comprimento da regra é n = 2(2×2)+1 = 32 e que o espaço de regras é formado por um conjunto de 232diferentes

Fig. 3.3: Exemplos de AC unidimensional binário: (a) raio r = 1, (b) raio r = 2.

regras.

Conforme mencionamos anteriormente, o modelo de AC mais simples é o unidimensional, binário (k = 2) e de raio r = 1. Neste tipo de AC, tem-se então que n = 8 e o espaço de regras é composto por 28 = 256 regras. Estes autômatos celulares são também chamados de elementares. Um exemplo de AC elementar é apresentado na Figura 3.1. Wolfram [118] propôs um esquema de numeração para os ACs elementares, no qual bits de saídas são ordenados lexicograficamente, como na regra de transição da Figura 3.1b, e são lidos da direita para a esquerda para formar um número na base decimal entre 0 e 255. Por exemplo, a regra da Figura 3.1b é o AC elementar 169. Para raios maiores que 1, o mais comum é representar a regra na base hexadecimal. Por exemplo, a regra de raio r = 2 dada pelos bits de saída 11101010110000111000101011101000 é equivalante à regra EAC38AE8.

Para observar o comportamento dos ACs unidimensionais, costuma-se utilizar os diagramas de padrões espaço-temporais. A Figura 3.1c apresenta um exemplo de diagrama espaço-temporal de um AC evoluído em 3 passos. O reticulado é mostrado horizontalmente e o tempo é incrementado ver- ticalmente para baixo. Nestes diagramas, a configuração de estados em um reticulado é apresentada em função do tempo. Por exemplo, no tempo t = 0 tem-se a configuração inicial do reticulado. No tempo t = 1 tem-se uma nova configuração que resulta da aplicação da regra de transição no reticulado inicial. No tempo t = 2 tem-se uma nova configuração que resulta da aplicação da regra de transição no reticulado do tempo t = 1, e assim sucessivamente. Uma outra maneira de representação de dia- gramas espaço-temporais é apresentada na Figura 3.4, na qual as células no estado 0 são desenhadas na cor preta e aquelas no estado 1 são desenhadas na cor branca.

O espaço de regras cresce muito rápido, em função do tamanho n da regra. Por esta razão, alguns tipos de regras são usados com a finalidade de tornar as regras de transição dos ACs menores e, com isso, diminuir o espaço de regras. Estas regras são chamadas de regras totalísticas. Neste tipo de

Fig. 3.4: Diagrama de padrões espaço-temporais de um AC [117].

regra de transição, a atualização dos estados das células é feita com base no somatório dos estados das células na vizinhança, isto é,

Sit+1 = Φt(Si−rt + . . . + Si−1t + Sit+ S t

i+1+ . . . + Si+rt ) (3.1) Por exemplo, para um AC com raio r = 2, o comprimento de uma regra de transição totalística é reduzido para n = 6, e o número total de regras no espaço de regras é 26. Isto acontece porque, por exemplo, os estados da vizinhaça 00001, 00010, 00100, 01000 e 10000 mapeiam todos para um mesmo estado da célula central, uma vez que o somatório dos bits da vizinhança é igual a 1. A Tabela 3.1 apresenta três exemplos de regras totalísticas para um AC unidimensional binário de raio r = 2.

Somatória dos Estados da Vizinhança: 0 1 2 3 4 5

Regra Φ1 1 1 0 0 0 1

Regra Φ2 0 1 1 1 0 1

Regra Φ3 0 0 1 1 1 1

A complexidade dos ACs pode ser aumentada de várias formas [5]: alterando-se a dimensão do reticulado, o número de estados por célula ou o tamanho da vizinhança. Diferentes modelos de ACs também podem ser obtidos modificando-se as condições de contorno, tornando-se as regras de transição estocásticas ao invés de determinísticas, tornando-se a vizinhança não local [65], ou mesmo tornando-se as regras de transição não uniformes dentre as células [100]. A seguir, serão apresentados os ACs definidos em reticulados bidimensionais.

3.3.2 Autômatos Celulares Bidimensionais

Os ACs bidimensionais têm suas células arranjadas em um reticulado definido no plano bidimen- sional. A Figura 3.5a apresenta um exemplo de reticulado de um AC bidimensional binário. As vizinhanças bidimensionais mais utilizadas são apresentadas na Figura 3.5b e 3.5c: a vizinhança de von Neumann, composta por 5 células, e a vizinhança de Moore, composta por 9 células.

Fig. 3.5: (a) Exemplo de reticulado de um AC binário bidimensional, (b) a vizinhança de von Neu- mann e (c) a vizinhança de Moore.

• Uma célula que está no estado 1 permanecerá neste estado se 2 ou 3 vizinhas estiverem no estado 1; caso contrário, ela irá para o estado 0.

• Uma célula que está no estado 0 irá para o estado 1 se exatamente 3 vizinhas estiverem no estado 1; caso contrário, ela permanecerá em 0.

O Life começa com uma configuração inicial com um número finito de 1s. Uma célula cujo estado é 0 é chamada de célula morta e uma célula de estado 1 é chamada de célula viva. Este AC é muito conhecido porque, com freqüência, dá origem a padrões interessantes e complexos no espaço de células, apesar de sua regra de transição ser simples. Por exemplo, a Figura 3.6 apresenta um tipo de estrutura interessante encontrada no Life, a qual se assemelha a um relógio.

Fig. 3.6: Estrutura periódica no Life semelhante a um relógio [28]

O Life é um dos exemplos mais simples da chamada “complexidade emergente” ou “sistemas de auto-organização”. Esta área tem chamado a atenção de matemáticos e cientistas em diversos campos. Ela é o estudo de como elaborar padrões e comportamentos que possam emergir de regras muito simples. Ela nos ajuda a entender, por exemplo, como as pétalas de rosa ou as listras em uma zebra podem surgir de um tecido de células vivas crescendo juntas. Ela pode até mesmo nos ajudar a entender a diversidade da vida que se desenvolveu no planeta [17].