a- path finding

8
A* Path Finding

Upload: karinny-goncalves

Post on 11-Jul-2016

5 views

Category:

Documents


4 download

DESCRIPTION

Algoritmo A*

TRANSCRIPT

Page 1: A- Path Finding

A* Path Finding

Page 2: A- Path Finding

Imagine que um gatinho precisa encontrar o melhor caminho até o seu petisco.

Introdução

Page 3: A- Path Finding

● Divida o mapa em secções

● Utilizaremos duas listas:

- Lista Aberta- Lista Fechada

Definindo o mapa

Page 4: A- Path Finding

● Aberta: Contém todos os quadrados que precisam ser avaliados para o melhor caminho;

● Fechada: Contém todos os que já foram avaliados.

● O quadrado atual deve ser adicionado a lista fechada, e todos os seus vizinhos a lista aberta.

Lista Aberta / Lista Fechada

Page 5: A- Path Finding

Todo quadrado terá uma pontuação F, essa pontuação será a soma do custo de movimento (G) e da estimativa de distância até o objetivo (H)

F = G + H

Pontuando os caminhos

Page 6: A- Path Finding

● G: Quanto custa para se movimentar da origem até esse quadrado.

●● H: A estimativa de distância do

quadrado atual até o quadrado final. Utilizaremos o método Manhattan, que conta o número de quadrados horizontais e verticais até chegar ao objetivo.

Pontuando os caminhos

Page 7: A- Path Finding

O gato encontrará o caminho mais curto repetindo os seguintes passos: 1. Verifique o quadrado com o menor F;2. Retire-o da lista aberta e adicione-o a lista fechada;3. Para cada cada vizinho desse quadrado:- Se ele estiver na lista fechada, ignore- Se ele não estiver na lista aberta, adicione-o e calcule seu F- Se ele está na lista aberta, verifique se a pontuação F dele fica

menor se usarmos o caminho gerado até aqui. Se sim, atualize o F e seu quadrado pai.

O algoritmo A*

Page 8: A- Path Finding

Quando o objetivo está na lista aberta, você deve adicioná-lo a lista fechada e retornar a lista do caminho encontrado.

O algoritmo A*