/dinochromeia

Projeto de um agente inteligente para o jogo Dino do Chrome

Primary LanguagePython

Dinochromeia

Projeto de um agente inteligente para o jogo Dino do Chrome

teste

Tecnologias utilizadas:

Para a criação do agente inteligente, utilizamos as seguintes bibliotecas:

  • NEAT-Python: Biblioteca Python que implementa um algoritmo evolucionario onde cria-se redes neurais artificiais (NeuroEvolution of Augmenting Topologies). Essa biblioteca é responsável por gerar as populações e gerações responsáveis por aprimorar o agente inteligente.
  • PyGame: Responsável pela criação de jogos, escrevendo elementos em tela e realizando animações utilizando a linguagem python, com ele é possível recriar jogos como o do Dino Chrome.

Estrutura do projeto:

├── dinochromeia                      # Diretório principal
│   ├── Assets                        # Diretório com as imagens dos obstáculos, dinossauros
│   ├── Characters                    # Diretório com as classes dos personagens|   ├── bird.py                   # Arquivo da classe Bird, tipo de personagem-obstáculo do jogo|   ├── cactus.py                 # Arquivo da classe Cactus, tipo de personagem-obstáculo do jogo|   ├── cloud.py                  # Arquivo da classe Cloud, compõe o cenário pre-histórico do jogo|   ├── dinosaur.py               # Arquivo da classe Dinosaur, personagem principal do jogo|   ├── obstacle.py               # Arquivo da classe Obstacle, demais obstáculos herdam desta.
│   ├── Utils                         # Diretório com a classe das constantes utlizadas|   ├── constants.py              # Arquivo de constantes utilizadas no código|   ├── globalVariableAcross.py   # Arquivo de variaveis globais usadas entre os módulos
│   ├── config.txt                    # Arquivo de configuração do NEAT-Python 
│   ├── main.py                       # Script principal 
│   ├── output_Dino.txt               # Arquivo com logs/reports 
│   ├── requirements.txt              # Arquivos de bibliotecas utilizadas no projeto
│   ├── supportFunctionGame.py        # Arquivo com funções de apoio
│   ├── supportFunctionNeat.py        # Arquivo com funções de apoio relativas ao uso para o NEAT

Este projeto foi baseado nos tutoriais: Chrome Dinosaur in Python & Pygame e Python A.I Tutorial with NEAT