Para comprovar a afirmação em sua pergunta, demonstremos que consistência implica admissibilidade, enquanto o contrário não é necessariamente verdadeiro. Isso tornaria a consistência uma condição mais forte que a última.
Consistência implica admissibilidade:
Deixe-me começar enfatizando que se a função heurística h é admissível (onde t é uma meta), pois os custos de borda são considerados não negativos e, portanto, o custo ideal de um nó para si é necessariamente 0 Isso certamente se aplica caso a função heurística seja admissível, mas queremos provar que a consistência necessariamente implica admissibilidade . Para isso, suponhamos ainda que h ( t ) = 0 para qualquer objetivo - e esse fato será usado no caso base abaixo.h(t)=0hth(t)=0
A prova prossegue por indução:
Caso base : adote qualquer antecessor do nó de objetivo . Seja n o denotado, para que t seja um sucessor de n . Se a função heurística é consistente , então h ( n ) ≤ c ( n , t ) + h ( t ) = c ( n , t ) + 0 = c ( n , t ) e, portanto, h se comporta de maneira admissível nesse caso.tntnh(n)≤c(n,t)+h(t)=c(n,t)+0=c(n,t)h
Note-se que o caso de base não assume que a borda é necessariamente a solução óptima do n de t e, na verdade, pode haver um caminho diferente do n de t com um custo mais baixo. A importância do caso base é que h ( n ) ≤ c ( n , t ) para todos os ancestrais do nó t ! Este resultado será reutilizado na etapa de indução.⟨n,t⟩ntnth(n)≤c(n,t)t
Etapa de indução : considere um nó . O custo ideal para atingir a meta t de n , h ∗ ( n ) é calculado como: min m ∈ S C S ( n ) { c ( n , m ) + h ∗ ( m ) } , onde S C S ( n ) é o conjunto de sucessores do nó n . Como consistênciantnh∗(n)minm∈SCS(n){c(n,m)+h∗(m)}SCS(n)né assumido por hipótese, então . Além disso, como h ( n ′ ) ≤ h ∗ ( n ′ ) é assumido pelo passo de indução, então 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′) e isso é verdade para todos os sucessores do nó n . Em outras palavras: h ( n ) ≤ min m ∈ S C S ( n ) { c ( n , m ) + h ∗ ( m ) } = h ∗ ( n ) , de modo que h ( n ) ≤ h ∗ ( n ) .n′nh(n)≤minm∈SCS(n){c(n,m)+h∗(m)}=h∗(n)h(n)≤h∗(n)
A admissibilidade não implica necessariamente consistência:
Para isso, basta um exemplo simples. Considere-se um gráfico que consiste de um único caminho com 10 nós: , onde o objectivo é n 9 . Vamos supor WLOG que todos os custos de ponta são iguais a 1. Obviamente h * ( n 0 ) = 9 , e façamos h ( n 0 ) = 8 , h ( n i ) =⟨n0,n1,n2,...,n9⟩n9h∗(n0)=9h(n0)=8 e h ( n 9 ) = 0 . Claramente, a função heurística éadmissível:h(ni)=1,1≤i<9h(n9)=0
- h(t)=0
- , ∀ i , 1 ≤ i < 9 .h(ni)=1≤h∗(ni)=(9−i)∀i,1≤i<9
- Finalmente, .h(n0)=8≤h∗(n0)=9
No entanto, não é consistente e h ( n 0 ) = 8 > c ( n 0 , n 1 ) + h ( n 1 ) = 1 + 1 = 2 .h(n)h(n0)=8>c(n0,n1)+h(n1)=1+1=2
Espero que isto ajude,