一致和可接受的启发式方法

时间:2013-12-11 10:00:42

标签: search artificial-intelligence a-star heuristics

任何一致的启发式也是可以接受的。但什么时候启发式可以接受但不一致(单调)?

请举例说明这种情况。

4 个答案:

答案 0 :(得分:34)

正如Russel和Norvig在人工智能:现代方法(最常用的AI教科书)中指出的那样,提出一种可接受但不一致的启发式技术具有挑战性。

显然,您可以为图表中的节点选择值,使得它们表示的启发式是可接受的但不一致。 This paper by Felner et al有一个很好的例子,说明了这两种可能的方法,但它有点密集,所以我总结一下:

An admissible but inconsistent heuristic

  • 这种启发式方法在c1处不一致,因为它提供了比其父节点更低(即信息量更少)到达目标的成本下限。通过父节点到达目标的成本估算至少为10(因为p的路径成本为5,p的启发式估算也为5)。但是,通过c1达到目标的成本估算仅为8(父项成本(5),加上父项(1)的路径成本,加上c1的启发式估算(2) )。
  • 由于此图表是无向的,因此c2的此启发式也不一致,因为从c2p的问题与上述问题相同。

Felner等人还提供了一些允许但不一致的启发式的具体例子。考虑8拼图问题:

The 8-puzzle problem

在这个谜题中,有8个编号为1-8的滑动瓦片和一个空白区域。切片不按顺序开始(如左图所示)。目标是通过将瓷砖滑入空白区域,使拼图进入右上方所示的状态。这个问题的经典启发式(每个瓦片的曼哈顿距离到它应该是的位置)是可接受的和一致的。

但是,你可以想出一个不同的启发式方法。也许你只想看看1号,2号和3号的曼哈顿距离(即距离的平方数)到它们应该处于目标状态的位置。启发式虽然比所有瓷砖的曼哈顿距离信息量少,但仍然是可接受的和一致的。

但是让我们说你选择了另外一组正方形,可能是5,6和7.然后让我们说你在每个节点计算启发式的方法是随机选择其中一组(1,2, 3)或(5,6和7)并计算他们与目标位置的曼哈顿距离。这种启发式仍然可以接受 - 它只能低估或匹配到达目标状态所需的移动次数。但是,不再一致 - 每个节点的启发式估算之间没有明确的关系。

答案 1 :(得分:1)

已经死了,但无论如何我还是给了我两美分。我认为到目前为止最容易想到的方法是,一个可接受的启发式方法说,当你到达一个特定的目标节点时,你不能超调,而一致的启发式方法说,当你到达时,你不能超越任何节点。这使关系变得清晰:由于目标节点是某个节点,因此可以接受一致的启发式算法。但由于可接受仅保证一个节点的此属性,因此可接受并不意味着一致性。

答案 2 :(得分:1)

最好将一致启发式视为服从三角形不等式的可允许启发式:

Cost(a -> c) <= Cost(a -> b) + Cost(b -> c)

对于搜索空间中的任何三个节点a,b和c,要理解的是,成本是使用相邻节点之间的实际成本计算的,否则使用试探法。

答案 3 :(得分:1)

可接受的启发式

永远不要高估实现目标的成本。 f(n) 永远不会高估沿着通过 n 的当前路径的解决方案的成本。 一个明显的可采启发式示例是直线距离。

一致性启发式

  • 一致启发式:对于由任何动作 a 生成的每个节点 n 和 n 的每个后继 n':h(n) ≤ c(n,a,n') + h(n')
  • 仅在将 A* 应用于图搜索时需要
  • 每个一致的启发式方法也是可以接受的。