Posts tagged ‘openFrameworks’
Turmites
On 1936, Alan Turing publshied an article with the title “On Computable Numbers, with an Application to the Entscheidungsproblem” in which he formally defined what an Algorithm is. There were another attempts before Turing. Kurt Gödel propposed a definition for algorithm some years before Turing, and on 1935, the american mathematician Alonso Church, generalizing Gödel’s idea, propposed his deffinition of algorithm. Turing made his deffinition independetly of the other two, although Gödel’s work in other areas was highly influential on Turing during his research. If these other scientists formalized the concept of algorithm before Turing, why we use his deffinition? Because his deffinition is most intuitive one of computation and algorithm, associating the task with the execution of a machine, Turing’s Machines (TM) as we called them today. The other deffinitions propposed for Algorithms and computers were highly abstract in a mathematical sense and were difficult to grasp for non-mathematicians.
Game of Life
“Se as pessoas não acreditam que a matemática é simples, é apenas porque elas não percebem o quão complicado é a vida“.
A frase acima é de John von Neumann, um dos maiores matemáticos do século XX. Foi o cientista chefe do projeto que criou o primeiro computador eletrônico (há controvérsias por causa do Collossus feito 3 anos antes na Inglaterra, mas só apresentado publicamente após 20 anos) , criou junto com Oskar Morgenstern o ramo da matemática/economia chamada Teoria dos Jogos, fundamentou várias partes da Mecânica Quântica; e introduziu um conceito chave para muitas partes da ciência chamada Autômatos Celulares (AC) (farei um post sobre isto em breve).
Em 1970, John Conway, outro matemático, pesquisando sobre autômatos celulares, bolou um modelo matemático para observar qual seria o resultado de uma simulação de regras simples em um conjunto de AC. Ele batizou este modelo de Game of Life ou simplesmente Life, devido a alguns resultados bem interessantes, pode-se dizer até “orgânicos”, que ele obteve após algumas simulações. O vídeo abaixo mostra o próprio Conway descrevendo sua motivação ao propor o modelo.
Langton’s Ant
Resolvi iniciar uma série de posts sobre Vida Artificial (Artificial Life – AL) para aprender um pouco mais sobre as bibliotecas de CreativeCoding, principalmente Processing e openFrameworks, e claro, o exemplo mais simples, o HelloWorld da área de AL, é um experimento chamado de Formigas de Langton (Langton’s Ant).
Christopher Langton é um cientista da computação e um dos fundadores da área de Artificial Life. Um dos grandes argumentos contra a Teoria da Evolução das Espécies é que é impossível algo tão complexo como a vida que conhecemos hoje no planeta possa ter surgido de processos aleatórios, como a Seleção Natural, e sem alguma “inteligência” por trás para guiar a evolução. Este é o grande argumento dos que defendem a teoria do Design Inteligente, um concorrente da Teoria da Evolução das Espécies de Darwin. Cada um acredite no que achar mais conveniente, mas em 1986, Langton elaborou um experimento computacional bem simples para mostrar que comportamentos, ou melhor, padrões complexos podem surgir de sistemas com regras bem simples, sem nenhum tipo de “inteligência” guiando a evolução do sistema. O experimento ficou conhecido como Langton’s ant. Existe um grid quadricular onde cada quadrado pode ter apenas duas cores (branco ou preto neste experimento). Apenas três regras definem o como o sistema evolui.:





