Skip to content

ViniciusPinheiroLivinalli/Busca-8-Puzzle

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

55 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Solucionando o 8-Puzzle com A* e Busca em Profundidade Iterativa (IDDFS)

📌 Sobre o Projeto

Neste trabalho, mergulhamos no desenvolvimento de um simulador para o clássico quebra-cabeça 8-Puzzle, um desafio amplamente utilizado em Ciência da Computação e Inteligência Artificial para explorar algoritmos de busca e heurísticas. O jogo consiste em organizar um tabuleiro 3x3, com números de 1 a 8 e um espaço vazio, até atingir uma configuração específica.

Utilizamos duas abordagens para resolver o problema:

A*: Um algoritmo heurístico que combina custo acumulado e estimativa para encontrar a solução mais eficiente. IDDFS: Uma busca iterativa que combina profundidade e largura, otimizando o uso de memória enquanto explora camadas do espaço de estados.

🚀 Objetivos do Projeto

Implementar e analisar algoritmos de busca em um problema clássico. Comparar as abordagens em termos de eficiência, aplicabilidade e limitações. Proporcionar uma experiência prática no uso de heurísticas e estruturas de dados.

🧩 Destaques do Desenvolvimento

Ambientes Diversificados

Teste: Um tabuleiro pré-definido para verificar o desempenho dos algoritmos. Aleatório: Gerado dinamicamente com o algoritmo Fisher-Yates, garantindo desafios únicos e válidos. Algoritmo A*

Heurística Principal: Distância de Manhattan, ideal para estimar movimentos em problemas de ordenação. Estruturas de Dados: Lista ordenada (InsertionSort) e HashSet para evitar estados repetidos. Busca por Profundidade Iterativa (IDDFS)

Equilibra a profundidade com um limite iterativo, evitando loops infinitos e alto consumo de memória. Prioriza estados com lógica de empilhamento e backtracking. Colaboração com GitHub

Branches e ferramentas de projetos para gerenciar tarefas. Resolução eficiente de conflitos e integração contínua.

💡 Resultados e Aprendizados

A* mostrou-se eficiente e ideal para soluções rápidas e otimizadas, enquanto o IDDFS destacou-se pelo baixo uso de memória. Este projeto reforçou a importância de escolher algoritmos adequados ao contexto e otimizar estruturas de dados para problemas complexos.

🌟 Por que este projeto é importante?

O 8-Puzzle é mais do que um jogo — ele representa desafios reais em planejamento e otimização. Resolver problemas como este estimula o raciocínio lógico e permite aplicar conceitos avançados de programação e IA a cenários do mundo real.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •  

Languages