我十分肯定的* (星)在A *算法意味着該算法是受理,即可以保證它發現在如果此路徑存在圖中的最短路徑(當所採用的啓發式是樂觀的)。A *算法中的星號是什麼意思?
我說得對不對?我沒有找到有關該主題的任何信息,但我找不到任何參考。希望這個社區的大多數有經驗的用戶知道A *的歷史與我的不同。順便說一句,我認爲像IDA *,D *,SMA *,MOA *,NAMOA *,等基於A *的其他算法遵循相同的名稱約定。
我十分肯定的* (星)在A *算法意味着該算法是受理,即可以保證它發現在如果此路徑存在圖中的最短路徑(當所採用的啓發式是樂觀的)。A *算法中的星號是什麼意思?
我說得對不對?我沒有找到有關該主題的任何信息,但我找不到任何參考。希望這個社區的大多數有經驗的用戶知道A *的歷史與我的不同。順便說一句,我認爲像IDA *,D *,SMA *,MOA *,NAMOA *,等基於A *的其他算法遵循相同的名稱約定。
原因是科學家們首先提出了他們稱爲A1的Dijkstra算法的改進版本。後來,A *的發明人發現A1的改進,他們稱之爲A2。然後,這些人設法證明,在使用啓發式的假設下,A2實際上是最優的。由於A2是最佳的,所以它被重新命名爲A *。在科學中,尤其是在優化中,通常使用「*」符號來表示最優解。有些人還將「*」解釋爲「任何版本號」,因爲已證明不可能構建出性能優於A2/A *的「A3」算法。
順便說一句,在這種情況下,「最優」並不意味着它達到最佳解決方案,而是它在探索最小節點數量時這樣做。當然,A *也是完整的,這意味着它達到最佳解決方案(如果我們使用可接受的啓發式)。
我也從維基百科讀到這個條目:https://en.wikipedia.org/wiki/A*_search_algorithm。我特別尋找這個名稱約定的參考(在一篇研究論文或着名的資料來源中)。 – FrankS101
挖了一下,我發現這個帖子可能會讓你感興趣:http://stackoverflow.com/a/29470434/2174693 – francoisr
謝謝。我看到我的問題是那個問題的重複。有趣的是,接受的答案是引用一篇已發表的論文。那篇論文的作者引用了維基百科在他們的文章中介紹該段落。那麼誰首先在維基百科上寫下這些內容?也許是哈特,也許是那篇論文之前的作者,誰知道...... – FrankS101
不符合[維基百科](https://en.wikipedia.org/wiki/A*_search_algorithm#History)。 – beaker