Jogo do quebra-cabeças de 8 peças em linha de comando desenvolvido para a disciplina de Inteligência Artificial. Escrito em python, este projeto tem como objetivo a aplicação dos conceitos estudados e a implementação de um simples agente inteligente que consiga resolver o jogo.
- Python 3.9.0 ou superior
- Clone o projeto (ou baixe):
git clone https://github.com/Nakahwra/EightPuzzle.git && cd EightPuzzle/
- Execute o arquivo principal
jogo.py
:python3 ./jogo.py
São implementados dois agentes automáticos que utilizam dois algoritmos de buscas de "força bruta":
Busca em largura, algoritmo de busca em grafos/árvores onde prioriza-se a exploração de todos os vértices vizinhos antes da travessia para a próxima profundidade, até que se encontre um nó solução.
Busca em profundidade, algoritmo de busca em grafos/árvores onde prioriza-se a exploração de um dos ramos do nó raíz em sua totalidade até que se encontre um nó solução.
O tabuleiro pode ser ajustado no construtor da classe de regras do jogo em: regras_jogo/regras_eightpuzzle.py
. Lá estão disponíveis outros dois tabuleiros usados para testes, e também pode-se configurar novos tabuleiros.
O intervalo entre cada jogada de um agente automático pode ser configurado alterando o parâmetro da função sleep
em agentes/agente_automatico.py
no método escolherProximaAcao
🚀 Desenvolvido por Lucas Nakahara e Gabriel Rodrigues