Giter Club home page Giter Club logo

snake_ai's Introduction


Snake IA

Conteúdo

Sobre o projeto

Este projeto implementa o algoritmo Q-Learning para treinar um agente em um jogo inspirado no clássico 'Snake'. O Q-Learning é uma técnica de aprendizado por reforço que permite que um agente aprenda a tomar decisões ótimas em um ambiente desconhecido, maximizando uma recompensa cumulativa ao longo do tempo.

O jogo consiste em um agente (cobra) que precisa coletar frutas evitando colidir com seu próprio corpo ou as bordas do tabuleiro. O agente utiliza o Q-Learning para aprender a escolher ações que maximizem sua pontuação.

Funcionalidades

  • Estado do Jogo: O estado atual do jogo é representado pela posição do jogador, da fruta e da trilha.

  • Ações Disponíveis: As ações disponíveis para o agente são 'up', 'down', 'left' e 'right'.

  • Tabela Q: A tabela Q é utilizada para armazenar o valor de ação para cada par de estado e ação possível.

  • Atualização da Tabela Q: A tabela Q é atualizada usando a equação Q-Learning: Q(s, a) = Q(s, a) + α [r + γ max Q(s', a') - Q(s, a)], onde α é a taxa de aprendizado, γ é o fator de desconto, r é a recompensa instantânea, s é o estado atual, a é a ação tomada, e s' é o próximo estado.

  • Treinamento e Execução: O projeto oferece métodos para treinar o agente usando o Q-Learning e executar o agente treinado para jogar o jogo.

Links

Licença

Este projeto está licenciado sob a licença MIT. Consulte o arquivo LICENSE para obter mais informações.

Autores

Referencias

snake_ai's People

Contributors

rodrigoscamargo avatar phewrys avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.