Tengo este uno de la lista de correo.
Disparo* está basado en aristas, así que va de borde a borde, mientras que A* y
Dijkstra ir vrom de vértice a vértice. Por lo tanto necesita de una estructura de datos
lo que mantiene todas las aristas adyacentes para cada borde de su gráfica. Puede ser
también se realiza a través de un gráfico de líneas
(http://en.wikipedia.org/wiki/Line_graph) fuera de su camino original
red. Y, a continuación, puede asignar un borde-a-borde pasaje costo (como un
atributo especial de sus bordes adyacentes de la estructura o como un costo de la
gráfico de líneas), que actualmente representa ningún tipo de limitaciones o
sanciones para ir de un extremo a otro - tal como
restricciones en caso de turnos o cualquier otro tipo de restricciones, como
luces de tráfico. Teniendo esto, usted puede usar Un* o cualquier otra ruta más corta
algoritmo usando los bordes de los vértices.
Así que, esa es la idea detrás del Disparo*.
Y me sale este agaian de Anton Patrushev:
http://download.osgeo.org/pgrouting/forum/pgrouting.postlbs.org/discussion/topic/276.html. Escribe así: En Un* estamos usando algo similar a Manhattan función (de|Dx|+|Dy|)/2 http://pgrouting.postlbs.org/browser/trunk/core/src/astar_boost_wrapper.cpp#L75
Allí podrás ver otros intentos comentado.
Hemos intentado función diferente es ACEPTAR. Probablemente, fue la razón histórica. heurística de la función y por alguna razón (no recuerdo ahora) decidió que para el común de la red de carreteras de esta
En el Rodaje de* estamos utilizando la distancia Euclidiana. http://pgrouting.postlbs.org/browser/trunk/core/src/shooting_star_boost_wrapper.cpp#L100 .
La otra fórmula:
- La distancia euclídea > Sqrt(Dx2+Dy2+Dz2) ;
- Manhattan a distancia > |Dx|+|Y|+|Dz| ;
- Distancia máxima > Max(|Dx|, |Dy|, |Dz|).
Todavía no entiendo acerca de todo.Amigo, me Puedes explicar brevemente y de detalle del proceso algoritmo de una estrella fugaz?