启发式被认为是可接受的意味着什么?

What does it mean for a heuristic to be considered admissible?

有人告诉我,搜索算法的可接受启发式算法永远不会高估到达目标的最短路径。然而,让非目标状态节点的启发式值为 0 是否有效,或者它们是否有附加的可接受性规则,该规则还规定只有目标状态可能具有 0 启发式值?

例如节点到目标状态D的最短路径如下:

A = 5
B = 4
C = 3
D = 0

以下启发式是否有效:

A = 4
B = 4
C = 0
D = 0

这个启发式是否也有效(同时也是无用的)

A = 0
B = 0
C = 0
D = 0

可接受的启发式只是一种,如您所说,不会高估到目标的距离。允许低估,你给出的两个例子确实是有效的、可接受的启发式方法。

通常在我们使用这些启发式算法(例如 A*)讨论的算法类型中,如果启发式算法尽可能接近真相,那将是有益的。因此,就像您自己已经注意到的那样,最后一个所有节点的启发式值为 0 的示例不会很有用。通常,您希望您的启发式值尽可能接近事实,同时仍然是可接受的(确保它们 从不 高估)