簡體   English   中英

如何證明兼容的啟發式算法可以成為A *搜索算法中的一個可接受的啟發式算法

[英]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)是從節點ngoal的實際距離

如果啟發式兼容,如何證明它是可以接受的?

非常感謝。

假設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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM