是否允许h5 =(h1 + h2 + h3)/ 3?

时间:2015-02-06 01:22:59

标签: search artificial-intelligence heuristics

我对启发式功能的“数学”无菌感到非常困难。我今天在AI课上梦见了3分钟,我错过了解释。有人可以向我解释如何计算启发式函数是否可以接受?我发布了这个(是h5 =(h1 + h2 + h3)/ 3可以接受吗?)但老实说,我不一定是这个问题。我只是通过例子更好地理解。

另外,我有“AI:现代方法”一书,但我找不到一个例子。如果你知道我在哪里找到一个,我将不胜感激。

1 个答案:

答案 0 :(得分:4)

首先,我们回想一下,如果启发函数永远不会过高估计达到目标的成本,那么它就是可以接受的。这意味着什么?

简而言之,这意味着,如果启发式函数为状态h 返回值x,则没有真正的解决方案,成本较低x 。例如,对于寻路,当前点和目的地之间的欧氏距离是可以接受的,因为没有路径可以缩短直线!换句话说,可接受的启发式总是乐观的

现在,我们可以回到你的问题了。我们有三个可接受的启发式h1h2h3,我们希望找到这三个函数的平均值是否也可以接受。现在,我们可以从X(s)到目的地调用s 最佳可能的费用(换句话说,就是最优解决方案的费用)。 X的值显然是未知的,但它会很有用。

由于h1h2h3是可以接受的,因此我们知道对于任何州s

  • h1(s) < X(s)(请记住:h1永远不会高估最优成本!)
  • h2(s) < X(s)
  • h3(s) < X(s)

然后,因为h5是其他三个函数的平均值,我们确切知道,对于每个状态,它都在min(h1(s),h2(s),h3(s))max(h1(s),h2(s),h3(s))之间。所以我们可以说每个州s

h5(s) <= max(h1(s),h2(s),h3(s)) <= X(s)

同样h5也可以接受。