我被告知,搜索算法的可接受启发式算法永远不会过高估计到达目标的最短路径。但是,非目标状态节点的启发式值为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
答案 0 :(得分:2)
如你所说,一个可接受的启发式算法就是高估与目标的距离。它被允许低估,你提供的两个例子确实是有效的,可接受的启发式。
通常在我们与这些启发式算法(例如,A *)讨论的算法类型中,如果启发式算法尽可能接近真实,则是有益的。所以,就像你已经注意到自己一样,所有节点的启发式值为0的最后一个例子都不是很有用。通常,您希望您的启发式值尽可能接近真实,同时仍然可以接受(确保它们从不过高估计)