Algoritmo A*

OubeLa

Power Member
Tenho de implementar o Algoritmo A* para um jogo de tetris, mas só encontro documentação e informação relativas à implementação deste algoritmo em grafos. A implementação deste em árvores parece-me bem mais simples, mas não encontro grande coisa. Se alguém souber de alguma documentação sobre isto ficaria extremamente agradecido.
 
Tenho de implementar o Algoritmo A* para um jogo de tetris, mas só encontro documentação e informação relativas à implementação deste algoritmo em grafos. A implementação deste em árvores parece-me bem mais simples, mas não encontro grande coisa. Se alguém souber de alguma documentação sobre isto ficaria extremamente agradecido.

Se quiseres posso mandart um trabalho que fiz para inteligencia artificial onde usei o A*, IDA*, ID e BF... Está em java e era para resolver um puzzle todo estranho com regras manhosas :lol: não está perfeito mas talvez consigas ter uma ideia... Se tiveres interessado manda-me uma pm com o teu mail ;)
 
Boas, uma árvore não é mais do que um caso especial de um grafo acíclico (dirigido, obviamente), sendo que podes utilizar a implementação standard do algoritmo A* para resolver o teu problema. Eventualmente, poderias simplificar a implementação ao não utilizar a lista que guarda os nós visitados.
 
Exacto... o A* apenas se torna num grafo caso chegue a casos repetidos... Se isso nunca acontece é só aplicar a geração de nós normalmente e assim fica sempre em árvore. Agora se houver nós repetidos convém guardar essa informação algures para não ser repetirem caminhos...
 
Boas.
Eu recomendo a leitura de um livro editado pela FCA que é "Inteligência Artifical: Fundamentos e Aplicaçoes", de Ernesto Costa e Anabela Simões. Apesar de não ter exemplos ditos "programados", explica muito bem os conceitos e os algoritmos por detras de Agentes Inteligentes de diversos tipos
 
Back
Topo