Linux, Open-source, Programação e Produtividade

O Jogo da Vida

convidados em 22/08/2008

Life

Não é deste jogo da vida que abordaremos

O Jogo da Vida (Life no original) foi um dos primeiros programas que fiz na faculdade como exercício e é, definitivamente, um dos clássicos da computação. Imagine uma grade bidimensional onde células podem estar vivas ou mortas. O Jogo ocorre em turnos, e a cada turno decidimos se uma célula continua viva, morre ou nasce dependendo apenas de três regras básicas que são baseadas nos 8 vizinhos do turno anterior.

  • Regra de nascimento: Uma célula morta com exatamente três vizinhos torna-se uma célula víva
    Regra de Nascimento
    Regra de Nascimento 2
  • Regra de sobrevivência: Uma célula viva com dois ou três vizinhos continua viva
    Regra de Sobrevivência 1
    Regra de Sobrevivência 2
    Regra de Sobrevivência 3
  • Regra de morte: Em todos os outros casos, a célula morre ou continua morta (devido a superpopulação ou a solidão)
    Regra de Morte 1
    Regra de Morte 2
    Regra de Morte 3
    Regra de Morte 4

Este jogo é um caso de autômatos celulares, um ramo bem estudado da computação e da matemática discreta. Mas mais do que isso, ele é equivalente a uma máquina de Turing e portanto é tão poderoso quanto qualquer linguagem de programação e os hardwares existentes (obviamente em capacidade computacional e não velocidade, apesar de que nestes casos não se altera a polinomialidade (ou exponencialidade) de um algoritmo). Isso é feito de uma maneira muito estranha, imitando o envio de pulsos elétricos e operadores booleanos. Recentemente me deparei com um texto (de onde foram tiradas as imagems) que aborda muito bem o assunto, discutindo a história do Jogo da Vida, padrões encontrados e até contém um applet com uma implementação para que você possa ver as simulações. Este texto pode ser encontrado no
Math.com.

Duas curiosidades, a primeira o pessoal da IBM tem uma sessão chamada Ponder This que aborda vários desafios, um por mês, dos mais variados assuntos que interessam computólogos. Neste link está um de Maio deste ano que aborda o jogo da vida, vale a pena dar uma olhada. A segunda, se você não leu ainda, dê uma olhada no nosso post recente sobre calcular PI e porque não se deve fazer isso.

Foto por rastafabi