algorithm - 有人可以给我一个不一致的可接受启发式的例子吗?

标签 algorithm artificial-intelligence heuristics

在这个图中:

enter image description here 假设 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) 因此这个例子是一致的和可接受的,但是有人能给我一个不一致的可接受启发式的例子吗?请

最佳答案

如果你想让你的启发式方法被接受,那么你应该拥有 h(n) <=h*(n)对于每个节点 n其中 h*是实现目标的实际成本。在你的情况下你想要:

h(A) <= 4
h(C) <= 3
h(G) <= 0

如果您希望您的启发式算法保持一致,那么您应该拥有 h(G) = 0h(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

这是一个有效的候选人。

关于algorithm - 有人可以给我一个不一致的可接受启发式的例子吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32906001/

相关文章:

actionscript-3 - 检测数组中的最后一项何时停止

algorithm - 人工智能方法检测游戏中的作弊行为

graph - A* 搜索(具有 0 个启发式的非目标)

algorithm - 为什么具有可接受的不一致启发式的 A* 会找到非最优解?

c# - 计算大数的乘积

java - HashMap中容量计算算法的理解

java - "Reverse Order"中二叉树逐行层序遍历,时间复杂度O(n)

math - 预测球路 - 人工智能

Java 克隆西洋跳棋游戏棋盘

R:sample.int() 中的错误:NMOF 包