为什么可接受启发式有效?

我在A*搜索算法的背景下遇到了“可接受启发式”这个术语。能否有人解释一下(或提供一个直观的理解),为什么启发式函数h只有在不高估实际距离的情况下才是可接受的?


回答:

考虑A*的停止条件,算法会在达到目标节点并具有特定F值时停止,其中F等于G——从起点构建的路径加上启发式值H,后者代表对剩余路径到目标的估计。

在目标节点,F等于G,因为对剩余路径到目标的估计为0。

只有当H是可接受的时,停止条件才有效,因为这样我们就可以确定,如果我们在目标节点计算的F值小于我们在任何其他节点计算的任何其他F值,我们可以肯定它是最短路径,因为没有其他路径可以以更小的F值到达目标。

如果它不是可接受的,那么可能存在其他节点,我们为其计算的F值高估了剩余路径到目标的距离,我们不能停止算法,因为可能存在更短的路径。

Related Posts

L1-L2正则化的不同系数

我想对网络的权重同时应用L1和L2正则化。然而,我找不…

使用scikit-learn的无监督方法将列表分类成不同组别,有没有办法?

我有一系列实例,每个实例都有一份列表,代表它所遵循的不…

f1_score metric in lightgbm

我想使用自定义指标f1_score来训练一个lgb模型…

通过相关系数矩阵进行特征选择

我在测试不同的算法时,如逻辑回归、高斯朴素贝叶斯、随机…

可以将机器学习库用于流式输入和输出吗?

已关闭。此问题需要更加聚焦。目前不接受回答。 想要改进…

在TensorFlow中,queue.dequeue_up_to()方法的用途是什么?

我对这个方法感到非常困惑,特别是当我发现这个令人费解的…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注