Skip to content

Algoritmo A estrela

Ana-Monici edited this page Jun 17, 2021 · 5 revisions

A* (A estrela)

Introdução

"Algoritmo A* (Lê-se: A-estrela) é um algoritmo para Busca de Caminho. Ele busca o caminho em um grafo de um vértice inicial até um vértice final." Fonte: Wikipédia (https://pt.wikipedia.org/wiki/Algoritmo_A*)

O A* é usado no NeonFC com um grafo de nós representando pontos no campo no qual o robô poderá percorrer. O A* retorna a lista de nós em ordem na qual o robô deve percorrer para chegar ao nó objetivo percorrendo a menor distância possível.

O NeonFC tem uma classe abstrata chamada FieldGraph para criar o grafo que será usado pelo A*. A classe tem como único atributo o nó inicial do grafo. Recomenda-se usar a posição do robô como posição do nó inicial. Cada nó do grafo terá sua coordenada no campo passada como parâmetro na criação do nó.

Criando estratégias

Várias estratégias para criação de grafo no campo podem ser implementadas. Recomenda-se o uso do arquivo asScratch.py como molde para as novas estratégias.

Mais sobre A* e grafos