A* vs Dijkstra
-
Could A* be regarded as a Dijkstra algorithm that has the visited node chain spreading in all directions from the start point?
-
Could A* be regarded as a Dijkstra algorithm that has the visited node chain spreading in all directions from the start point?
Of course, what's wrong with you?
The difficult we do right away... ...the impossible takes slightly longer.
-
Could A* be regarded as a Dijkstra algorithm that has the visited node chain spreading in all directions from the start point?
No, it's the other way around. Dijkstra could be regarded as a special case of A*, with a heuristic of zero, resulting in a "circular" node visiting pattern (when possible), thanks to the heuristic of zero not "preferring" any particular direction. Some pedants may say "it's actually UCS that is a special case of A*, not Dijkstra", but UCS is a fancy name for how Dijkstra is normally implemented in practice. The original version of the algorithm that Edsger W. Dijkstra wrote down is rarely, if ever, used in practice, because it always touches *all* nodes, not just nodes that are dynamically encountered during the search.
-
Of course, what's wrong with you?
The difficult we do right away... ...the impossible takes slightly longer.
alright [confidence++]
-
No, it's the other way around. Dijkstra could be regarded as a special case of A*, with a heuristic of zero, resulting in a "circular" node visiting pattern (when possible), thanks to the heuristic of zero not "preferring" any particular direction. Some pedants may say "it's actually UCS that is a special case of A*, not Dijkstra", but UCS is a fancy name for how Dijkstra is normally implemented in practice. The original version of the algorithm that Edsger W. Dijkstra wrote down is rarely, if ever, used in practice, because it always touches *all* nodes, not just nodes that are dynamically encountered during the search.
Thanks for setting me on the track.
-
No, it's the other way around. Dijkstra could be regarded as a special case of A*, with a heuristic of zero, resulting in a "circular" node visiting pattern (when possible), thanks to the heuristic of zero not "preferring" any particular direction. Some pedants may say "it's actually UCS that is a special case of A*, not Dijkstra", but UCS is a fancy name for how Dijkstra is normally implemented in practice. The original version of the algorithm that Edsger W. Dijkstra wrote down is rarely, if ever, used in practice, because it always touches *all* nodes, not just nodes that are dynamically encountered during the search.
>>The original version of the algorithm that Edsger W. Dijkstra wrote down is rarely, if ever, used in practice, because it always touches all nodes Is processing all nodes making the algorithm slow when you deal with large maps?
-
Could A* be regarded as a Dijkstra algorithm that has the visited node chain spreading in all directions from the start point?