Дейкстра - особый случай для A *? - PullRequest
0 голосов
/ 22 февраля 2019

Согласно ao этот принятый ответ , Алгоритм Дейкстры является частным случаем A * алгоритма .

Особый случай

В логике, особенно в применении к математике, концепция A является частным случаем или специализацией концепции B именно в том случае, если каждый экземпляр A также является экземпляромB, но не наоборот, или эквивалентно, если B является обобщением A.

Однако существуют случаи, которые дают разные результаты для A * с эвристикой с постоянным нулем по сравнению с алгоритмом Дийктры.

Одним из них является их поведение, когда граф содержит отрицательные циклы: в то время как обработка закрытого множества * 10 * * A * полностью избегает таких циклов, Дейкстра бесконечно повторяет отрицательные циклы перед продолжением.

Другой крайний случай, когда их результаты могут отличаться, на этот раз даже с допустимой эвристикой , - это когда A * недооценивает стоимость финальногоребро в графе.Учитывая график, подобный следующему: graph with nodes A, B, C, D

Большинство реализаций A *, включая пример псевдокода в Википедии, неверно предположили бы, что ABD является кратчайшим путем, если эвристическая функция для скоростейB до D ниже 2, в то время как Дейкстра корректно выдает ACD.

Может ли алгоритм Дейкстры все еще рассматриваться как особый случай для A *, учитывая вышеизложенное?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...