Algoritmos Genéticos e o Jogo da Vida de Conway

Precisa de Java! Se tiver problemas pode tentar esta versão

Feito com Processing

Descrição

O Applet mostra um algoritmo genético de selecção de uma população de autómatos celulares do Jogo da Vida de John Conway!

Os 3 tabuleiros são:

  • Esquerda: evolução do autómato
  • Meio: Cromossoma inicial deste autómato
  • Direita: Melhor cromossoma

A legenda corresponde a:

  • F: valor da função de fitness do autómato actual
  • B: valor do melhor fitness até ao momento
  • T: soma dos fitness da população da geração anterior
  • g: número da geração (a inicial é 0)
  • c: número do autómato a ser avaliado neste autómato

Fitness

A função de fitness utilizada é a Informação mútua de estados consecutivos. Esta é uma das medidas que se pode utilizar na identificação de comportamentos dinâmicos interessantes em autómatos celulares (e não só).

População

A população inicial é composta por 20 autómatos celulares (CA) do jogo da Vida. Cada CA tem 192 autómatos de lado (casas). Os CAs correm durante 40 passos e o valor da informação mútua entre os steps 39 e 40 é utilizado para o valor de fitness desse autómato.

É aplicado um crossover de 1 ponto para reprodução dos 50% melhores e uma factor de mutação de 1% a todos os cromossomas da nova população à excepção do melhor cromossoma!

Trata-se de um algoritmo genético muito simples, mas que permite juntar duas coisas interessantes em Complexidade: Autómatos celulares e Algoritmos genéticos.

(em tempo de férias um gajo tem que se entreter com alguma coisa e isto é um projecto em evolução. Se tiver algum comentário ou sugestão pode deixar um comentário ou através da página de contacto)