Skip to content

ofelipegabriel321/pingpong-IA

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Pingpong Artificial Intelligence

GitHub language count Made by @nelsondiaas License Stargazers

Prerequisites

  • Python (>= 3.6)

Getting Started

  1. Fork este repositório e clone em sua máquina
  2. Mude o diretório para pingpong-IA onde você o clonou;
  3. No terminal, execute:
/* Install dependencies */

$ pip install -r requeriments.txt

/* Coletar dados */

$ python PingPongCollect.py

/* Treinar dados */

$ python NeuralNetwork.py

/* Executar IA */

$ python PingPongIA.py

Neural Network

A rede neural possue uma camada de entrada de 2 neurônios, uma camada oculta que possue 30 neurônios, e uma camada de saida de 1 neurônio. A rede pode ser personalizada apenas com a quantidade de neurônios.

File Structure

pingpong-IA
├── src/
│   ├── database/
│   │   ├── controller/
│   │   │   └── db.py
│   │   ├── data/
│   │   │   └── data-50.txt
│   │   └── weights/
│   │       ├── weight-w1.txt
│   │       └── weight-w2.txt
│   ├── network/
│   │   └── NeuralNetwork.py
│   ├── PingPongCollect.py
│   └── PingPongIA.py
├── .gitignore
├── LICENSE.md
├── README.md
└── requeriments.txt

Vision

O objetivo desse jogo, é que a palheita não deixe a bolinha tocar no chão. A implementação se consiste em um aprendizado de maquina supervisionado, por tanto teremos que passar ao jogo dados iniciais para que o mesmo processe o aprendizado. No arquivo src/PingPongCollect.py, ele ira executar o jogo para que você jogue e colete informações para serem usadas no aprendizado de sua maquina, os dados seram salvos em src/database/data. Logo em seguida você poderá treinar seus dados de duas formas, a primeira delas você podera executar os dados coletados diretamente na redeneural sem precisar jogar, no terminal será impresso uma imformação, que é a taxa de error do treinamento de sua rede neural, quanto menor a taxa melhor, no final desse treinamento sera salvo os pessos em src/database/weights, essas informações são dos neurônios treinados de sua rede, no caso o cerebro o conhecimento em si, a segunda forma de treinar a sua rede e jogando diretamente, no caso treinando e jogando ao mesmo tempo. Para fazer a sua maquina jogar, você tera que executar o arquivo src/PingPongIA.py lá você pode tanto já setar os pessos emitidos pelo treinamento de sua rede, ou não passar nenhum peso e deixar o aprendizado do zero.

License

Esse projeto está sob a licença MIT. Veja o arquivo LICENSE para mais detalhes.


About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%