Autômato Celular -...

61
Autômato Celular O primeiro a cunhar a palavra auto-maton Aristóteles (a.C.) ficou fascinado por “Autômato” e teria dito: “Evidentemente, se abri-los, descobrirei apenas um mecanismo ridículo; mas se conservar a “caixa preta” fechada, então lhe atribuirei “livre-arbítrio”, uma vez que ignoro a causa e o efeito da mudança”. E o denominou de auto-maton, isto é, “que agem por sua própria vontade”. Segundo a interpretação aristotélica , o “livre-arbítrio” seria aquilo do qual ignoramos o funcionamento, ao passo que, se o conhecêssemos, então seria puro determinismo.

Transcript of Autômato Celular -...

Page 1: Autômato Celular - calhau.dca.fee.unicamp.brcalhau.dca.fee.unicamp.br/wiki/images/0/05/Introdução_aos... · John von Neumann Qualquer um que tentar gerar ... primeiro computador

Autômato Celular

O primeiro a cunhar a palavra auto-maton

Aristóteles (a.C.) ficou fascinado por “Autômato” e teria dito:

“Evidentemente, se abri-los, descobrirei apenas um mecanismo ridículo; mas se conservar a “caixa preta” fechada, então lhe atribuirei “livre-arbítrio”, uma vez que ignoro a causa e o efeito da mudança”.E o denominou de auto-maton, isto é, “que agem por sua própria vontade”.

Segundo a interpretação aristotélica , o “livre-arbítrio” seria aquilo do qual ignoramos o funcionamento, ao passo que, se o conhecêssemos, então seria puro determinismo.

Page 2: Autômato Celular - calhau.dca.fee.unicamp.brcalhau.dca.fee.unicamp.br/wiki/images/0/05/Introdução_aos... · John von Neumann Qualquer um que tentar gerar ... primeiro computador

Autômato CelularProf. Dr.Marco Aurélio Amaral Henriques

Aluna: Sílvia R.L.Magossi

Data: 27/04/2015

Page 3: Autômato Celular - calhau.dca.fee.unicamp.brcalhau.dca.fee.unicamp.br/wiki/images/0/05/Introdução_aos... · John von Neumann Qualquer um que tentar gerar ... primeiro computador

Agenda

• Áreas de Aplicação

• Precursores dos trabalhos sobre: Autômato Celular

• Autômato Celular Unidimensional

• Autômato Celular Bidimensional

• Game 0f Life

• Trabalhos futuros

• Trabalhos de Wolfran

• Autômato Celular e Criptografia

Page 4: Autômato Celular - calhau.dca.fee.unicamp.brcalhau.dca.fee.unicamp.br/wiki/images/0/05/Introdução_aos... · John von Neumann Qualquer um que tentar gerar ... primeiro computador

Áreas de Aplicação

Page 5: Autômato Celular - calhau.dca.fee.unicamp.brcalhau.dca.fee.unicamp.br/wiki/images/0/05/Introdução_aos... · John von Neumann Qualquer um que tentar gerar ... primeiro computador

Áreas de aplicação

Autômato Celular tem sido estudados extensivamente nas áreas:

• Ciências natural,

• Matemática,

• Ciência da computação.

São usados como modelo de fenômenos físicos e biológicos tais como:

• Fluxo de fluido,

• Formação de galáxias,

• Terremotos,

• Formação de padrão biológico.

Também são considerados objetos matemáticos sobre propriedades formais as quais elas

podem ser provadas.

Usados como dispositivos de computação paralela tanto para simulação de alta velocidade de

modelos científicos e para tarefas computacionais como processamento de imagem.

Estão sendo estudados como modelos abstratos emergentes com comportamentos

cooperativos ou coletivo em sistemas complexos.

Page 6: Autômato Celular - calhau.dca.fee.unicamp.brcalhau.dca.fee.unicamp.br/wiki/images/0/05/Introdução_aos... · John von Neumann Qualquer um que tentar gerar ... primeiro computador

Desde a sua publicação, Jogo da Vida de Conway tem atraído muito interesse, devido

as maneiras surpreendentes em que os padrões podem evoluir.

“Life” é um exemplo de crescimento e auto-organização.

Vários campos da ciência tem utilizado Autômato Celular para encontrar padrões

complexos, que podem vir da implementação das regras simples de jogos, tais como :

• computer science,

• physics,

• biology,

• biochemistry,

• economics,

• mathematics,

• philosophy, e

• generative sciences.

Page 7: Autômato Celular - calhau.dca.fee.unicamp.brcalhau.dca.fee.unicamp.br/wiki/images/0/05/Introdução_aos... · John von Neumann Qualquer um que tentar gerar ... primeiro computador

Precursores dos trabalhos na área Autômato Celular

Page 8: Autômato Celular - calhau.dca.fee.unicamp.brcalhau.dca.fee.unicamp.br/wiki/images/0/05/Introdução_aos... · John von Neumann Qualquer um que tentar gerar ... primeiro computador

John von NeumannQualquer um que tentar gerar números aleatórios por meios determinísticos, é claro, está vivendo em estado de pecado

Born Neumann János LajosDecember 28, 1903Budapest, Austria-Hungary

Died February 8, 1957 (aged 53)Walter Reed General HospitalWashington, D.C.

Page 9: Autômato Celular - calhau.dca.fee.unicamp.brcalhau.dca.fee.unicamp.br/wiki/images/0/05/Introdução_aos... · John von Neumann Qualquer um que tentar gerar ... primeiro computador

Alan Mathison Turing

Nacionalidade Reino Unido BritânicoNascimento 23 de Junho de 1912Morte 7 de Junho de 1954 (41 anos)

Page 10: Autômato Celular - calhau.dca.fee.unicamp.brcalhau.dca.fee.unicamp.br/wiki/images/0/05/Introdução_aos... · John von Neumann Qualquer um que tentar gerar ... primeiro computador

Stanislaw Marcin Ulam

Left to right— John von Neumann, Richard Feynman, Stanislaw Ulam

Nascimento 13 de abril de 1909Local Lviv - UcrâniaMorte 13 de maio de 1984 (75 anos)Local Santa Fé

Page 11: Autômato Celular - calhau.dca.fee.unicamp.brcalhau.dca.fee.unicamp.br/wiki/images/0/05/Introdução_aos... · John von Neumann Qualquer um que tentar gerar ... primeiro computador

Quais as ideias que estavam sendo discutidas naquele momento?

Computers were being built and used at Los Alamos. While the analogy

between the computer and the brain seems obvious to us today, that was not

so in the early days of computing.

Ulam , Alan Turing, and John von Neumann shared an interest in this analogy.

Also, the birth of the new biology with the Crick and Watson discovery of the

structure of DNA in 1953 stimulated more applications of mathematics to biology

and Ulam participated in these applications.

Page 12: Autômato Celular - calhau.dca.fee.unicamp.brcalhau.dca.fee.unicamp.br/wiki/images/0/05/Introdução_aos... · John von Neumann Qualquer um que tentar gerar ... primeiro computador

Final 1940: von Neumann inicia teoria geral sobre autômato. Haviam discussões frequentes com Ulam , o qual fez

sugestões e suas próprias contribuições.1949: von Neumann foi o primeiro a apresentar na

University de Illinois em Dezembro de 1949.1964: Aluno de Burks - J.W. Tatcher publica um relatório

técnico: Universality in the von Neumann Cellular Model .1966: Esse trabalho foi revisado, editado e publicado por

Arthur W. Burks, após a morte de von Neumann.Von Neumann, J., Theory of Self-Reproducing Automata,

Univ. of Illinois Press, Urbana, 1966.

Arthur Walter Burks

(Duluth, Minnesota, 13 de outubro de 1915 —

Ann Arbor, Michigan, 14 de maio de 2008)

Foi um matemático americano. E na década de 1940

que trabalhou como engenheiro sênior no projeto que

contribuiu para a construção do ENIAC, o

primeiro computador digital eletrônico de grande escala.

Page 13: Autômato Celular - calhau.dca.fee.unicamp.brcalhau.dca.fee.unicamp.br/wiki/images/0/05/Introdução_aos... · John von Neumann Qualquer um que tentar gerar ... primeiro computador
Page 14: Autômato Celular - calhau.dca.fee.unicamp.brcalhau.dca.fee.unicamp.br/wiki/images/0/05/Introdução_aos... · John von Neumann Qualquer um que tentar gerar ... primeiro computador

Dichotomy o f the Problem: Nature o f the Elements, Axiomatic

Discussion of Their Synthesis.

The Axiomatic Procedure.

DISCUSSION OF CERTAIN RELEVANT TRAITS OF COMPUTING MACHINES• Computing Machines-Typical Operations.• Precision and Reliability Requirements• The Analogy Principle.• The Digital Principle.• The Role o f the Digital Procedure in Reducing the Noise Level.

John von Neumann. The general and logical theory of automata. In Taub [Tau63b], pages 288–328. LCCN ???? See also volumes I–IV, VI [Tau61a, Tau61b, Tau63a, Tau62, Tau63c].

Page 15: Autômato Celular - calhau.dca.fee.unicamp.brcalhau.dca.fee.unicamp.br/wiki/images/0/05/Introdução_aos... · John von Neumann Qualquer um que tentar gerar ... primeiro computador

COMPARISONS BETWEEN COMPUTING MACHINES AND LIVING ORGANISMS

• Mixed Character of Living Organisms.• Affixed Character of Each Element.• The Concept of a Switching• Comparison of the Sizes of Large Computing Machines and Living Organisms.• Determination of the Significant Ratio of Sizes fur the Elements.• Analysis of the Reasons for the Extreme Ratio of Sizes

• Technological Interpretation of These Reasons

THE FUTURE LOGICAL THEORY OF AUTOMATA

• Further Discussion of the Factors That Limit the Present Size of• Artificial Automata.• The Limitation Which Is Due to the Lack of a Logical Theory ofAutomata.• Probable Characteristics of Such a Theory.• Effects of the Lack of a Logical Theory of Automata on the Procedures in Dealing with Errors.• The Single-Error Principle.

Page 16: Autômato Celular - calhau.dca.fee.unicamp.brcalhau.dca.fee.unicamp.br/wiki/images/0/05/Introdução_aos... · John von Neumann Qualquer um que tentar gerar ... primeiro computador

. PRINCIPLES OF DIGITALIZATION

• Digitalization of Continuous Quantities• Comparison of the Two Methods The Preference of Living Organisms for the Counting Method

FORMAL NEURAL NETWORKS

• The McCulloch-Pitts Theory of Formal Neural Networks.

• The Main Result of the McCulloch-Pitts Theory.• Interpretations of This Result.

THE CONCEPT OF COMPLICATION SELF-REPRODUCTION

• Turing's Theory of Computing Automata.• The Main Result of the Turing Theory.• Broadening o f the Program to Deal with Automata That Produce Automata.• The Basic Definitions.• Outline of the Derivation o f the Theorem Regarding Self-reproduction.• Interpretations of This Result and of Its Immediate Extensions.

DISCUSSION com DR. VON NEUMANN

• DR MC CULLOCH• DR. GERARD• DR. WEISS• DR. LASHLEY• DR. HALSTEAD• DR. LORENTE DE NÓ

Page 17: Autômato Celular - calhau.dca.fee.unicamp.brcalhau.dca.fee.unicamp.br/wiki/images/0/05/Introdução_aos... · John von Neumann Qualquer um que tentar gerar ... primeiro computador

No livro Stanislaw M. Ulam’s Contributions to Theoretical TheoryWILLIAM A. BEYER

PETER H. SELLERS

MICHAEL S. WATERMAN

os autores apresentam 5 modelos de self-reproducing automata:

1. Kinematic model;

2. Cellular Model;

3. Excitation-threshold-fatigue model;

4. Continuous Model , and

5. Probabilistic Model.

O modelo celular (Cellular Model) foi sugerido em conversa com Ulam,

onde o mesmo sugere que esse modelo pudesse ser mais amigável para

tratamento matemático e lógico.

Page 18: Autômato Celular - calhau.dca.fee.unicamp.brcalhau.dca.fee.unicamp.br/wiki/images/0/05/Introdução_aos... · John von Neumann Qualquer um que tentar gerar ... primeiro computador

Autômato Celular Unidimensional

Page 19: Autômato Celular - calhau.dca.fee.unicamp.brcalhau.dca.fee.unicamp.br/wiki/images/0/05/Introdução_aos... · John von Neumann Qualquer um que tentar gerar ... primeiro computador

A Brief History of Cellular Automata

PALASH SARKAR

Indian Statistical Institute

ACM Computing Surveys, Vol. 32, No. 1, March 2000

A mais simples descrição de um autômato celular é uma array de células de uma dimensão (possivelmente infinito nas duas direções). O tempo é discreto, marcado a cada tick do relógio, cada célula tem em um conjunto finito de possibilidade de estados. O estado da célula muda a cada tick do relógio, e o novo estado é completamente determinado pelo presente estado da célula e seus vizinhos da esquerda e da direita.

Computation in Cellular Automata: A Selected Review

Melanie Mitchell

Santa Fe Institute 1399 Hyde Park Road Santa Fe, NM 87501 U.S.A. email: [email protected]

In T. Gramss, S. Bornholdt, M. Gross, M. Mitchell, and T. Pellizzari, Nonstandard Computation, pp. 95–140. Weinheim: VCH Verlagsgesellschaft, 1998.

Para Melanie Mitchell autômato celular (CAs) são sistemas estendidos espacialmente descentralizados, contendo um grande número de componentes idênticos com conectividade local. Tais sistemas tem potencial para desempenharem complexas computações com alto grau de eficiência e robustez, tão bom como o comportamento de um modelo do Sistema complexo da natureza

Page 20: Autômato Celular - calhau.dca.fee.unicamp.brcalhau.dca.fee.unicamp.br/wiki/images/0/05/Introdução_aos... · John von Neumann Qualquer um que tentar gerar ... primeiro computador

Palash tenta mostrar as pesquisas realizadas nos últimos 40 anos, e divide otrabalho de autômato celular em 3 grandes áreas:

Clássica: Os temas os quais foram influenciado pelo trabalho inicial de vonNeumann.

Moderna: Os temas que foram influenciado por um lado pelo trabalho deWolfram , e por outro, pelos desenvolvimentos de outros ramos da ciência dacomputação.

Games: Além do Game of Life e s-game , Palash também incluiu o Firing Squadproblem (um problema de sincronização)

Page 21: Autômato Celular - calhau.dca.fee.unicamp.brcalhau.dca.fee.unicamp.br/wiki/images/0/05/Introdução_aos... · John von Neumann Qualquer um que tentar gerar ... primeiro computador

Regra local é a função que determina esta mudança de estado e é a mesmapara todas as células.O autômato não tem nenhuma entrada e dessa forma é autônomo.

Configuração ou estado global de CA: é a coleção de estados das células emalgum ponto no tempo o qual descreve o estágio da evolução do CA.

Mapa Global ou regra global do autômato: A aplicação da regra local em cadacélula do CA resulta em uma transformação do conjunto de todas asconfigurações em si mesmo.

Page 22: Autômato Celular - calhau.dca.fee.unicamp.brcalhau.dca.fee.unicamp.br/wiki/images/0/05/Introdução_aos... · John von Neumann Qualquer um que tentar gerar ... primeiro computador

Evolução de um elementar Autômato Celular (unidimensional) regra 30

O autômato-celular é dividido em oito células, cada célula pode carregar 0 ou 1 e os

valores decimais que as células representam em binário variam de 0 a 7 da esquerda para

direita.

Representação 1:

Representação 2:

A terceira linha na representação 1 e 2 indica o número da regra que se está utilizando,

exemplo: 00011110 = 30 , e como se dará o comportamento da evolução desse autômato

utilizando essa regra.

7 6 5 4 3 2 1 0

7 6 5 4 3 2 1 0

111 110 101 100 011 010 001 000

0 0 0 1 1 1 1 0

Page 23: Autômato Celular - calhau.dca.fee.unicamp.brcalhau.dca.fee.unicamp.br/wiki/images/0/05/Introdução_aos... · John von Neumann Qualquer um que tentar gerar ... primeiro computador

A evolução de um autômato-celular de uma dimensão pode ser ilustrado com o estado

inicial (geração zero) na primeira linha, a primeira geração na segunda linha e assim

por diante.

A figura abaixo ilustra as primeiras 15 gerações da elementar regra 30 de um

autômato-celular iniciando com uma simples célula preta.

(Wolfram 2002, p. 871), Se

observarmos a coluna

central , ela é dada por 1,

1, 0, 1, 1, 1, 0, 0, 1, 1, 0, 0,

0, 1, ... (OEIS A051023).

Page 24: Autômato Celular - calhau.dca.fee.unicamp.brcalhau.dca.fee.unicamp.br/wiki/images/0/05/Introdução_aos... · John von Neumann Qualquer um que tentar gerar ... primeiro computador

Exemplos de regras:As ilustrações ao ladomostram alguns números deautômatos que dão padrãoparticularmente interessantepropagada por 15 geraçõescomeçando com uma únicacélula preta na iteraçãoinicial.A regra 30 é de especialinteresse porque é caótica(Wolfran 2002, p.871).Na verdade , esta regra éusada como gerador denúmeros aleatórios utilizadopara grandes inteiros emMathematica (Wolfram2002).

Page 25: Autômato Celular - calhau.dca.fee.unicamp.brcalhau.dca.fee.unicamp.br/wiki/images/0/05/Introdução_aos... · John von Neumann Qualquer um que tentar gerar ... primeiro computador

Padrão de propagação das regras anteriores.

Page 26: Autômato Celular - calhau.dca.fee.unicamp.brcalhau.dca.fee.unicamp.br/wiki/images/0/05/Introdução_aos... · John von Neumann Qualquer um que tentar gerar ... primeiro computador
Page 27: Autômato Celular - calhau.dca.fee.unicamp.brcalhau.dca.fee.unicamp.br/wiki/images/0/05/Introdução_aos... · John von Neumann Qualquer um que tentar gerar ... primeiro computador
Page 28: Autômato Celular - calhau.dca.fee.unicamp.brcalhau.dca.fee.unicamp.br/wiki/images/0/05/Introdução_aos... · John von Neumann Qualquer um que tentar gerar ... primeiro computador

Temos 8 possíveis padrões de vizinhança 23 = 8

e 28 = 256 regras possíveis.

Page 29: Autômato Celular - calhau.dca.fee.unicamp.brcalhau.dca.fee.unicamp.br/wiki/images/0/05/Introdução_aos... · John von Neumann Qualquer um que tentar gerar ... primeiro computador

Formalização dos ECAs Autômato Celular Elementar

Page 30: Autômato Celular - calhau.dca.fee.unicamp.brcalhau.dca.fee.unicamp.br/wiki/images/0/05/Introdução_aos... · John von Neumann Qualquer um que tentar gerar ... primeiro computador

No trabalho de Melanie Mitchell um autômato celular é composto por dois componentes:

1. Espaço Celular

2. Regra de Transição.

Page 31: Autômato Celular - calhau.dca.fee.unicamp.brcalhau.dca.fee.unicamp.br/wiki/images/0/05/Introdução_aos... · John von Neumann Qualquer um que tentar gerar ... primeiro computador

Espaço Celular: uma malha (reticulado) com N máquinas de estado finito idênticas (células).

Seja:∑ o conjunto de estados dentro das células de uma máquina de estado finito.

K = |∑| o número de estado por célula.

Cada célula é indicada por um índice i e o estado no tempo t é indicado por 𝑥𝑖𝑡 (onde 𝑥𝑖

𝑡

Є ∑ ).

Os estados 𝑥𝑖𝑡 da célula i junto com os estados das células a qual a célula está conectada

é chamada de vizinhos η𝑖𝑡 da célula i.

Page 32: Autômato Celular - calhau.dca.fee.unicamp.brcalhau.dca.fee.unicamp.br/wiki/images/0/05/Introdução_aos... · John von Neumann Qualquer um que tentar gerar ... primeiro computador

Regra de Transição: é o segundo componente (ou “CA rule”) Φ (η𝑖𝑡) a qual fornece a

atualização do estado 𝑥𝑖𝑡+1 para cada célula i como uma função η

𝑖𝑡 .

A cada tick do relógio num CA é fornecido um sinal de atualização para todas as células , a cada passo do tempo todos os estados das células são atualizados de forma síncrona de acordo com Φ (η

𝑖𝑡).

Um autômato celular unidimensional , com K = 2 (∑ = {1,0}) é ilustrado no próximo slide.

Vizinhos :Consiste na própria célula e dos dois vizinhos mais próximos sendo as condições de contornos periódicas.

Ex.: A célula mais a esquerda é considerada ser vizinho direito da célula mais a direita e vice-versa

Page 33: Autômato Celular - calhau.dca.fee.unicamp.brcalhau.dca.fee.unicamp.br/wiki/images/0/05/Introdução_aos... · John von Neumann Qualquer um que tentar gerar ... primeiro computador
Page 34: Autômato Celular - calhau.dca.fee.unicamp.brcalhau.dca.fee.unicamp.br/wiki/images/0/05/Introdução_aos... · John von Neumann Qualquer um que tentar gerar ... primeiro computador

CA Rules

•One-dimensional CA:

•next state of cell i:

•Example: Rule 3010 = 1E16 = 000111102

Page 35: Autômato Celular - calhau.dca.fee.unicamp.brcalhau.dca.fee.unicamp.br/wiki/images/0/05/Introdução_aos... · John von Neumann Qualquer um que tentar gerar ... primeiro computador

Para autômato celular unidimensional o tamanho dos vizinhos η𝑖𝑡 (podemos tirar o tempo

quando ele não for necessário) é escrito como :

|η𝑖

| = 2r +1 onde r é chamado de raio do CA.

No caso unidimensional Φ(η𝑖𝑡): ∑

2𝑟+1∑

Portanto temos 256 autômato celular unidimensional, k=2, r = 1 e eles são chamados de autômatos celulares elementares.

Uma célula e as suas duas vizinhas formam uma vizinhança de 3 por isso existem 23 = 8 padrões possíveis para uma vizinhança. Há então 28 = 256 regras possíveis.

Page 36: Autômato Celular - calhau.dca.fee.unicamp.brcalhau.dca.fee.unicamp.br/wiki/images/0/05/Introdução_aos... · John von Neumann Qualquer um que tentar gerar ... primeiro computador

Modificações - aumentando o número das dimensões como:

• o número de estados por célula, • o tamanho dos vizinhos modificando as condições de contornos.

Pode mudar transformando a regra de um CA para estocástica ao invés de determinística.

Page 37: Autômato Celular - calhau.dca.fee.unicamp.brcalhau.dca.fee.unicamp.br/wiki/images/0/05/Introdução_aos... · John von Neumann Qualquer um que tentar gerar ... primeiro computador
Page 38: Autômato Celular - calhau.dca.fee.unicamp.brcalhau.dca.fee.unicamp.br/wiki/images/0/05/Introdução_aos... · John von Neumann Qualquer um que tentar gerar ... primeiro computador

Autômato Celular Bidimensional

Uma descrição alto nível como o autômato de auto reprodução de von Neumann trabalha.

Page 39: Autômato Celular - calhau.dca.fee.unicamp.brcalhau.dca.fee.unicamp.br/wiki/images/0/05/Introdução_aos... · John von Neumann Qualquer um que tentar gerar ... primeiro computador

O autômato originalmente descrito por von Neumann é um array infinito de duas dimensões de células uniformes, onde cada célula é conectada por quatro vizinhos ortogonal. Figura 2.Originalmente foi chamado de espaço celular, mas o termo CA (Cellular Automata) é mais popular agora.Autômato Celular foi apresentado por von Neumann em 1963 como um modelo formal de sistemas biológicos de auto reprodução (formal model of

self-reproducing)

Page 40: Autômato Celular - calhau.dca.fee.unicamp.brcalhau.dca.fee.unicamp.br/wiki/images/0/05/Introdução_aos... · John von Neumann Qualquer um que tentar gerar ... primeiro computador

“The main purpose of von Neumann was to bring the rigor of axiomatic and

deductive treatment to the study of “complicated” natural systems.

The basic idea of a self-reproducing automaton is presented in von Neumann

[1963a], and is a beautiful adaptation of the idea of constructing a universal Turing Machine (TM). Here we present a brief sketch of the idea.”

Page 41: Autômato Celular - calhau.dca.fee.unicamp.brcalhau.dca.fee.unicamp.br/wiki/images/0/05/Introdução_aos... · John von Neumann Qualquer um que tentar gerar ... primeiro computador

A grande ideia na mente de von Neumann :

O fenômeno biológico de auto reprodução.

Então ele coloca uma questão:

“What kind of logical organization is sufficient for an automaton to be

able to reproduce itself?”

A ideia em utilizar autômato celular como um framework para responder a

esta questão, foi sugerida à von Neumann por Stanislaw Ulan (Burks,

1970b).

Assim, o conceito original de autômato celular pode ser creditado a Ulam

enquanto o desenvolvimento embrionário desse conceito pode ser

creditado a von Neumann.

Page 42: Autômato Celular - calhau.dca.fee.unicamp.brcalhau.dca.fee.unicamp.br/wiki/images/0/05/Introdução_aos... · John von Neumann Qualquer um que tentar gerar ... primeiro computador

Von Neumann acreditava que autômato celular seria essencial em dois aspectos:

entendimento sistemas complexos da natureza e para projeto de sistemas complexos

artificiais.

Figura 3: (a) The von Neumann neighborhood. (b) The Moore neighborhood.

Em ambos os casos a célula a ser atualizada é a sombreada.

Page 43: Autômato Celular - calhau.dca.fee.unicamp.brcalhau.dca.fee.unicamp.br/wiki/images/0/05/Introdução_aos... · John von Neumann Qualquer um que tentar gerar ... primeiro computador

Autômato celular de von Neumann.

A figura 4 (próximo slide) ilustra esquematicamente o processo alto-nível pelo

qual o autômato auto reprodução trabalha.

Há 29 possíveis estados por célula (incluindo o estado em repouso).

A configuração é composta de duas unidades funcionais:

• Uma unidade de construção (que constrói o novo autômato).

• Uma unidade de fita (que armazena e lê a informação necessária para

construção do novo autômato).

Page 44: Autômato Celular - calhau.dca.fee.unicamp.brcalhau.dca.fee.unicamp.br/wiki/images/0/05/Introdução_aos... · John von Neumann Qualquer um que tentar gerar ... primeiro computador
Page 45: Autômato Celular - calhau.dca.fee.unicamp.brcalhau.dca.fee.unicamp.br/wiki/images/0/05/Introdução_aos... · John von Neumann Qualquer um que tentar gerar ... primeiro computador

Figuras tiradas do livro: Burks, A. W. (editor) (1970a) . Essays on CellularAutomata. Urbana, IL: University ofIllinois Press.

Page 46: Autômato Celular - calhau.dca.fee.unicamp.brcalhau.dca.fee.unicamp.br/wiki/images/0/05/Introdução_aos... · John von Neumann Qualquer um que tentar gerar ... primeiro computador
Page 47: Autômato Celular - calhau.dca.fee.unicamp.brcalhau.dca.fee.unicamp.br/wiki/images/0/05/Introdução_aos... · John von Neumann Qualquer um que tentar gerar ... primeiro computador

Descrição de Funcionamento

A construção do novo autômato é feita através do envio de sinais (na forma de propagação de

estados das células) entre a unidade de fita e a unidade de construção.

A unidade de construção é composta do controle de construção e de um “constructing arm”

(braço em construção).

O braço em construção é um array de células através do qual os estados das células para serem

construídos devem ser enviados a partir do controle da construção, para os locais designados na

área da construção.

O autômato original Mc é “turned on” por um sinal externo, enviado para o controle de

construção, para então construir o “arm”, braço, um array de estados de células expandindo e

contraindo, e movendo (mudando os estados intermediários das células) da sua posição inicial

para o canto superior esquerdo da área de construção.

O controle de construção pergunta e recebe, os valores sucessivos de estado da fita, e move

para o braço de construção para colocá-los em suas posições adequadas na área de construção.

Quando a construção estiver completa, o controle da construção move o braço em construção

para o canto inferior esquerdo de M , e envia o sinal start para ele, produzindo em M um novo

processo de auto reprodução. Então Mc volta a construção do braço de volta a posição original.

Page 48: Autômato Celular - calhau.dca.fee.unicamp.brcalhau.dca.fee.unicamp.br/wiki/images/0/05/Introdução_aos... · John von Neumann Qualquer um que tentar gerar ... primeiro computador

Game of Lifehttp://pt.wikipedia.org/wiki/Jogo_da_vida#O_Jogo

Page 49: Autômato Celular - calhau.dca.fee.unicamp.brcalhau.dca.fee.unicamp.br/wiki/images/0/05/Introdução_aos... · John von Neumann Qualquer um que tentar gerar ... primeiro computador

Autômato Bidimensional

“Game of Life” - inventado por John Conway em 1960

Popularizado por Martin Gardner em artigo na Scientific American - Data: Outubro de

1970.

A vizinhança da célula η𝑖𝑡 é o Moore neighborhood.

A regra transição 𝑥𝑖𝑡+1 = Φ(η𝑖

𝑡)Quando

𝑥𝑖𝑡+1 = 1 𝑠𝑠𝑒 𝑒𝑥𝑎𝑡𝑎𝑚𝑒𝑛𝑡𝑒 2 𝑜𝑢 3 𝑣𝑖𝑧𝑖𝑛ℎ𝑜𝑠 𝑒𝑠𝑡ã𝑜 𝑛𝑜 𝑒𝑠𝑡𝑎𝑑𝑜 1

𝑥𝑖𝑡 = 1

𝑥𝑖𝑡+1 = 0

𝑥𝑖𝑡+1 = 1 𝑠𝑠𝑒 𝑒𝑥𝑎𝑡𝑎𝑚𝑒𝑛𝑡𝑒 3 𝑣𝑖𝑧𝑖𝑛ℎ𝑜𝑠 𝑒𝑠𝑡ã𝑜 𝑛𝑜 𝑒𝑠𝑡𝑎𝑑𝑜 1

𝑥𝑖𝑡 = 0

𝑥𝑖𝑡+1 = 0

Life inicia uma configuração com um finito números de 1s e todos os outros conjunto

de células zero (0), se desenvolvendo num reticulado infinito bidimensional.

Page 50: Autômato Celular - calhau.dca.fee.unicamp.brcalhau.dca.fee.unicamp.br/wiki/images/0/05/Introdução_aos... · John von Neumann Qualquer um que tentar gerar ... primeiro computador

Regras do Game of Life

O valor das células se tornaram 0 ou 1, on ou off dependendo do estado das células

que estão ao redor de uma determinada célula ou célula corrente.

São oito células ao redor da célula a ser checada.

Verifica-se a situação das oito células ao redor da célula em questão, e altera se for o

caso.

As células que estão ligadas são contadas e esta contagem é utilizada para determinar

o que vai acontecer com a célula corrente.

1. Morte: Se a contagem das células vivas (on, 1) for menor que dois (2)

ou maior que três (3) a célula corrente é então trocada para

situação de morte (off, 0).

2. Sobrevivência: a) Se a contagem é exatamente 2;ou

b) A contagem é exatamente 3 e a célula corrente está em on,

a célula corrente não é alterada.

3. Nascimento: Se a célula corrente está em off e a contagem é exatamente 3,

a célula corrente é trocada para on (1).

Page 51: Autômato Celular - calhau.dca.fee.unicamp.brcalhau.dca.fee.unicamp.br/wiki/images/0/05/Introdução_aos... · John von Neumann Qualquer um que tentar gerar ... primeiro computador
Page 52: Autômato Celular - calhau.dca.fee.unicamp.brcalhau.dca.fee.unicamp.br/wiki/images/0/05/Introdução_aos... · John von Neumann Qualquer um que tentar gerar ... primeiro computador
Page 53: Autômato Celular - calhau.dca.fee.unicamp.brcalhau.dca.fee.unicamp.br/wiki/images/0/05/Introdução_aos... · John von Neumann Qualquer um que tentar gerar ... primeiro computador
Page 54: Autômato Celular - calhau.dca.fee.unicamp.brcalhau.dca.fee.unicamp.br/wiki/images/0/05/Introdução_aos... · John von Neumann Qualquer um que tentar gerar ... primeiro computador

Outras formas criam padrões complexos de movimento a partir de sua configuração inicial e movem-se em padrões repetitivos, dando "nascimento" a formas de vida independentes.

Page 55: Autômato Celular - calhau.dca.fee.unicamp.brcalhau.dca.fee.unicamp.br/wiki/images/0/05/Introdução_aos... · John von Neumann Qualquer um que tentar gerar ... primeiro computador
Page 56: Autômato Celular - calhau.dca.fee.unicamp.brcalhau.dca.fee.unicamp.br/wiki/images/0/05/Introdução_aos... · John von Neumann Qualquer um que tentar gerar ... primeiro computador

Weisstein gives an extensive alphabetical tabulation of life forms and terms.

Um padrão que não muda de uma geração para a próxima é conhecido como uma

natureza morta, e é dito ter período 1. Várias naturezas-mortas são ilustrados acima.

Os números de células ainda vive de n para n = 1, 2, 3, ... são 0, 0, 0, 2, 1, 5, 4, 9,

10, 25, 46, 121, 240, 619, 1353 , ... (OEIS A019473).

Page 57: Autômato Celular - calhau.dca.fee.unicamp.brcalhau.dca.fee.unicamp.br/wiki/images/0/05/Introdução_aos... · John von Neumann Qualquer um que tentar gerar ... primeiro computador

http://mathworld.wolfram.com/GameofLife.html

O desenho da grade vai se alterando de acordo com as regras para

completar o preenchimento das células

Page 58: Autômato Celular - calhau.dca.fee.unicamp.brcalhau.dca.fee.unicamp.br/wiki/images/0/05/Introdução_aos... · John von Neumann Qualquer um que tentar gerar ... primeiro computador

Trabalhos Futuros

Page 59: Autômato Celular - calhau.dca.fee.unicamp.brcalhau.dca.fee.unicamp.br/wiki/images/0/05/Introdução_aos... · John von Neumann Qualquer um que tentar gerar ... primeiro computador
Page 60: Autômato Celular - calhau.dca.fee.unicamp.brcalhau.dca.fee.unicamp.br/wiki/images/0/05/Introdução_aos... · John von Neumann Qualquer um que tentar gerar ... primeiro computador
Page 61: Autômato Celular - calhau.dca.fee.unicamp.brcalhau.dca.fee.unicamp.br/wiki/images/0/05/Introdução_aos... · John von Neumann Qualquer um que tentar gerar ... primeiro computador

A Fast Cryptographic Hash Function Based on Linear Cellular Automata

over GF(q)

Miodrag Mihaljevi, Yuliang Zheng , and Hideki Imai .

Survey of Cellular Automata Based Hash Functions

Jun-Cheol Jeon

Department of Computer Engineering at Kumoh National Institute of Technology,

Gumi, Korea

[email protected]

ISA 2013, ASTL Vol. 21, pp. 168 - 170, 2013 © SERSC 2013

Proceedings, The 7th International Conference on Information Security and

Assurance

Abstract. A cellular automata based schemes are very useful to design hash functions with a low hardware complexity because of its logical operation attribute and parallel property. In this paper, we discuss some hash functions based cellular automata.