Skip to content

Jogo do Flappy Bird recriado com versão normal e uma IA jogando o mesmo.

Notifications You must be signed in to change notification settings

lucena564/Flappy-Bird

Repository files navigation

Flappy-Bird com IA

GIF do Flappy Bird              GIF do Flappy Bird - Ponto Alto

Sempre quis colocar em prática os conceitos adquiridos durante meus estudos na área de aprendizado de máquina.

Decidi desenvolver uma Multilayer Perceptron para aprender a jogar o Flappy Bird.

Para isso foi necessário primeiro recriar o jogo do Flappy Bird e depois implementar uma perceptron.


Para jogar o jogo por conta própria, basta executar o arquivo:

  $ python flappy_bird_jogo.py

ou

  $ python3 flappy_bird_jogo.py


A inteligência artificial foi completamente implementada no arquivo:

  IA_flappybird.py


Para observar a IA em treinamento, execute o arquivo:

  $ python main.py

Alguns detalhes que utilizei para esta implementação:

  • Utilização de 3 sensores para a camada de entrada.
  • 5 neurônios para a camada oculta e 1 neurônio para a camada de saída.
  • O Bias presente na camanda escondida e de saída.
  • Função de ativação ReLu para todos os neurônios da camada oculta.
  • Função de ativação tangente hiperbólica para a camada de saída.

Algumas tarefas que farei no futuro:

  • Adicionar um requirements.txt
  • Organizar o sensor de cada pássaro para a movimentação correta
  • Investigar o motivo de alguns pesos gerarem passaros que vão para full para cima e outros para baixo.
  • Implementar uma estrutura que cria e deixa visível a estrutura da IA (camada de entrada, camada escondida e a camada de saída).
  • Tirar todos os hard coded que deixei.
  • Criar uma lib para criar uma nova configuração de rede com o input (x, y, z), sendo x a camada de entrada e y a camada de saída.
  • Determinar a pontuação máxima para parar o treinamento e salvar os pesos. Além disso, criar uma função para carregar os pesos da IA treinada deixando a opção para jogar contra a IA.
  • Verificar e estudar, mostrando um relatório do impacto das diferentes funções de ativações, nas diferentes camadas.

About

Jogo do Flappy Bird recriado com versão normal e uma IA jogando o mesmo.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages