在这个图中:
我们假设h(C)= 1 如果f(A)= g(A)+ h(A)= 0 + 4 = 4,并且f(C)= g(C)+ h(C)= 1 + 1 = 2 那么f(C)不大于或等于f(A) 因此,这个例子是一致和可接受的,但是有人能给我一个不一致的可接受启发式的例子吗?请
答案 0 :(得分:10)
如果您希望您的启发式规则可以接受,则每个节点h(n) <=h*(n)
都应该n
,其中h*
是目标的实际成本。在你的情况下你想要:
h(A) <= 4
h(C) <= 3
h(G) <= 0
如果您希望您的启发式方法保持一致,那么您应该拥有h(G) = 0
和h(n) <= cost(n, c) + h(c)
,其中节点c
是节点c
的子级。所以在你的情况下
h(A) <= 1 + h(C)
h(C) <= 3 + h(G) = 3
如果您想要不一致,并且h(C) <= 3
因为受理条件,那么您应该拥有h(A) > 1 + h(C)
。所以任何满足的语言学都是:
h(A) > 1 + h(C)
h(C) <= 3
h(G) = 0
可接受且不一致。你给了
h(A) = 4
h(C) = 1
h(G) = 0
这是一个有效的候选人。
答案 1 :(得分:0)
如果为最佳派生路径的深度分配递减的启发式函数(但尝试不违反可容许性的高估条件),则结果启发式是可接受的,但不一致。