[英]how to prove a compatible heuristics can be a admissible heuristics in A* search algorithm
兼容的啟發式(h)是具有以下條件的:
h(n)<= c(n,a,n')+ h(n')
****************************************************
可接受的啟發式(h)是具有以下條件的:
0 <= h(n)<= h *(n)
h *(n)是從節點n
到goal
的實際距離
如果啟發式兼容,如何證明它是可以接受的?
非常感謝。
假設h(n)不可接受,因此存在一些頂點n使得h(n) > h *(n) 。
但由於h(n)的兼容性,我們知道對於所有n`,它認為h(n)<= c(n,a,n')+ h(n') 。
現在結合這兩個謂詞,當n`是頂點G時 ,推導出一個矛盾,從而證明了所需的引理減少和荒謬 。
如果你在h上添加一個附加條件(即h(目標)= 0),你可以通過歸納從n到目標狀態的最小成本路徑來證明它。
對於基本情況,當n =目標時,最小成本路徑為0。 然后h(目標)= 0 = h *(目標)。
對於一般情況,讓n為節點,讓n'成為從n到目標的最小路徑上的下一個節點。 然后h *(n)= c(n,n')+ h *(n')> = c(n,n')+ h(n')> = h(n)使用歸納假設得到第一個不等式和第二種兼容性的定義。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.