Este projeto implementa o famoso Jogo da Vida (Game of Life), criado por John Horton Conway em 1970. Trata-se de um autômato celular, isto é, um sistema discreto que evolui em passos de tempo segundo regras matemáticas simples, mas capazes de gerar comportamentos complexos e surpreendentes.
O Jogo da Vida é um exemplo clássico de sistemas dinâmicos e computação baseada em regras. Ele é amplamente estudado em matemática, ciência da computação, filosofia da complexidade, teoria dos autômatos e lógica matemática.
- O "universo" do jogo é uma grade bidimensional de células.
- Cada célula pode estar viva (1) ou morta (0).
- A evolução do sistema ocorre em passos discretos (gerações).
- O estado de cada célula na próxima geração depende apenas do estado atual dela e de seus 8 vizinhos imediatos.
- Qualquer célula viva com 2 ou 3 vizinhos vivos sobrevive.
- Qualquer célula morta com exatamente 3 vizinhos vivos se torna viva.
- Todas as outras células morrem ou permanecem mortas na próxima geração.
Essas regras simples geram padrões que podem se estabilizar, oscilar, se mover pelo campo ou crescer de forma caótica.
- O Jogo da Vida é um exemplo de emergência: comportamentos complexos surgem de regras simples.
- É Turing completo: pode simular qualquer computador universal.
- Inspirou discussões sobre vida artificial, auto-organização e limites da lógica formal.
git clone <url-do-repositorio>
cd Jogo_da_Vidapython3 -m venv venv
source venv/bin/activatepip install -r requirements.txtpython main.py- Botão "Reiniciar": reinicia o campo com células aleatórias.
- Scroll bar: selecione o tamanho do campo entre 50x50 e 200x200.
- Clique esquerdo: cria vida em uma célula morta ou mata uma célula viva.
- ESC: fecha o jogo.
- Ctrl+Q: fecha o jogo.
- Ctrl+C (no terminal): encerra o jogo de forma graciosa.
main.py: ponto de entrada do programa.game_controller.py: controla eventos, fluxo principal e integração entre lógica e interface.game_display.py: gerencia a interface gráfica (pygame).life_game.py: implementa o algoritmo e estado do Jogo da Vida.requirements.txt: dependências do projeto.
- Wikipedia — Conway's Game of Life
- Stanford Encyclopedia of Philosophy — Life
- Conway, J. H. (1970). "The Game of Life", Scientific American.