一貫性は、ヒューリスティックも許容されることをどのように示唆していますか?


12

ヒューリスティック関数h(n)は...

  • ノードnからゴールまでの推定コストが、そのサクセサステップコストにnサクセサからゴールまでの推定コストを加えた値より大きくない場合、一貫性があります。
  • h(n)が目標状態への真のコストを過大評価しない場合に許容されます。

私の人工知能コースの教科書には、一貫性は許容性よりも強いと書かれていますが、それを証明するものではなく、数学的な説明をするのに苦労しています。


回答:


11

あなたの質問の声明を証明するために、一貫性は容認性を意味するのに対し、反対は必ずしも真実ではないことを証明しましょう。これにより、一貫性が後者よりも強い状態になります。

一貫性は許容性を意味します:

ヒューリスティック関数h許容可能な場合(tは目標)、強調することから始めましょう。エッジコストは非負であると想定されるため、1つのノードからそれ自体までの最適コストは必然的に0これはヒューリスティック関数が許容できる場合には確かに当てはまりますが、一貫性が必ず許容性を意味することを証明したいです。このため、任意の目標に対してh t = 0であるとさらに仮定します。この事実は、以下の基本ケースで使用されます。h(t)=0hth(t)=0

証明は帰納法で進みます:

基本ケース:目標ノード前身を取得します。してみましょうnはそのことを、それを表すtはの後継者であるN。ヒューリスティック関数である場合、一貫した、次いでH N C N T + H T = C N T + 0 = C N T 、したがって、時間 admissiblyこの場合に動作。tntnh(n)c(n,t)+h(t)=c(n,t)+0=c(n,t)h

ベースケースは、そのエッジを想定していないことに留意されたい必ずしもから最適解であるNTと、実際に、異なる経路があるかもしれないNT低コストです。ベースケースの重要性は、すなわちH N C N T ノードのすべての先祖のためのT!この結果は、誘導ステップで再利用されます。n,tntnth(n)c(n,t)t

誘導ステップ:ノード検討します。ゴールに到達するための最適なコストTをよりNH *nが:のように計算される、M S C S N { C N M + H *M }ここで、S C Sn は、ノードnの後継セットです。一貫性としてntnh(n)minmSCS(n){c(n,m)+h(m)}SCS(n)n仮説によって想定され、次いで、。また、ようにH N 'H *N '次に、誘導工程によって仮定されるH N C N N '+ H *N 'h(n)c(n,n)+h(n)h(n)h(n)h(n)c(n,n)+h(n) そして、これはノードnのすべての後継者に当てはまります。:換言すれば、H N 、M S C S N { C N M + H *M } = H *N 、その結果、H N H *nはnnh(n)minmSCS(n){c(n,m)+h(m)}=h(n)h(n)h(n)

許容性は必ずしも一貫性を意味するものではありません。

このためには、簡単な例で十分です。:10個のノードと単一のパスから成るグラフ検討目標は、nは9。すべてのエッジコストが1に等しいとwlogを仮定します。明らかにh n 0= 9h n 0= 8h n i=n0,n1,n2,...,n9n9h(n0)=9h(n0)=8及び H N 9= 0。明らかに、発見的関数は追加可能です:h(ni)=1,1i<9h(n9)=0

  1. h(t)=0
  2. iは1 I < 9h(ni)=1h(ni)=(9i)i,1i<9
  3. 最後に、h(n0)=8h(n0)=9

ただし、一貫しておらず、h n 0= 8 > c n 0n 1+ h n 1= 1 + 1 = 2です。h(n)h(n0)=8>c(n0,n1)+h(n1)=1+1=2

お役に立てれば、

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.