2013-10-27 20 views
0

我在A *搜索算法的上下文中遇到了可接受的啓發式術語。有人可以解釋(或給出直覺)爲什麼啓發函數h只有在不會高估實際距離時纔可以接受?爲什麼可接受啓發式工作?

+0

你讀過維基百科頁嗎? – ziggystar

+0

你明白爲什麼在A *中啓發式不能高估剩餘的距離嗎? –

+0

@RonTeller讓我們說*應*。 – ziggystar

回答

2

想一想A *的停止條件下,如果它達到具有一定F值,其中F等於G目標節點的算法停止估計剩餘的目標路徑。

於目標節點,F等於G的剩餘路徑的目標估計爲0

停機條件是有效的只有H是可以受理的,從那以後,我們可以判斷,如果F值我們在目標節點處計算的值比我們在任何其他節點計算的其他任何其他節點的值都小,因此我們可以確定它是最短路徑,因爲沒有其他路徑可能會以較小的F值達到目標。

如果它不被允許,那麼可能有其他一些節點,我們計算F時高估了目標的剩餘路徑,並且我們無法停止算法,因爲可能存在較短的路徑。

+0

謝謝你的時間! – ishan3243

1

對於那些不尋求免費提供的資源和免費的努力。

在計算機科學中,特別是在涉及到 尋路算法,啓發式功能被認爲是容許的,如果它從未 高估到達目標的成本,即成本也 估計要達到的目標是不高於路徑中當前點的最低可能成本 。可接受的啓發式是 也被稱爲樂觀啓發式。

這是維基百科的鏈接:

http://en.wikipedia.org/wiki/Admissible_heuristic

關於第二個問題

啓發式是受理,但不高估的真實成本,只是因爲它定義了這個辦法。的路徑從起點迄今構建加啓發式值H其表示 -

+0

好吧,而不是自大,你應該再讀我的問題.....我要求一個直覺,爲什麼這是真正的A *搜索的背景下。維基百科沒有給出支持它的任何論據.....它只是陳述事實。 – ishan3243

+0

@ ishan3243爲了公平起見,我的最後一句話給出了你的問題唯一正確的答案。它是這樣定義的。 – ziggystar

+0

我不這麼認爲.....有一個原因是爲什麼它被定義爲這樣..如果你看到其他答案,我認爲它有所解釋 – ishan3243

相關問題