Artificial intelligence 什么样的启发式评估函数或算法可以被视为不可接受

Artificial intelligence 什么样的启发式评估函数或算法可以被视为不可接受,artificial-intelligence,heuristics,Artificial Intelligence,Heuristics,我已经学习了几个启发式函数,它们可以用来处理经典的8字谜问题,我知道你可以将一个因子乘以一个可容许函数,使其不可容许,我想知道对于8字谜问题是否还有其他不可接受的启发式函数?对于这个谜题,有各种各样的不可接受的启发式函数。一个不可接受的启发式算法只需要高估它解决给定难题所需的步骤数,因此一个简单的不可接受的启发式算法是 h(S) = infinity 因为任何可解的谜题都可以用少于无限的步骤来解决,所以启发式是不允许的 一个更棘手、更有趣的问题是,什么是好的可接受的启发式,因为它们要求您尽可能

我已经学习了几个启发式函数,它们可以用来处理经典的8字谜问题,我知道你可以将一个因子乘以一个可容许函数,使其不可容许,我想知道对于8字谜问题是否还有其他不可接受的启发式函数?

对于这个谜题,有各种各样的不可接受的启发式函数。一个不可接受的启发式算法只需要高估它解决给定难题所需的步骤数,因此一个简单的不可接受的启发式算法是

h(S) = infinity
因为任何可解的谜题都可以用少于无限的步骤来解决,所以启发式是不允许的


一个更棘手、更有趣的问题是,什么是好的可接受的启发式,因为它们要求您尽可能给出最大的值,而不会高估距离。对此,我没有一个好的答案。:-)

基本上,任何高估成本的函数都是不可接受的,这意味着构造不可接受的函数很容易


具有良好的描述

启发式评估函数估计单代理路径查找问题中两个状态之间的最优路径的成本


阅读更多文章。

@templatetypedef:谢谢你的回答,但是不允许有什么好处,例如,如果你设置h(s)=无穷大,基本上,搜索算法最终会尝试状态空间中的所有状态,我见过像“不可接受”这样的事情会加速sometime@starcaller-不可接受的启发式并不意味着你找不到有效的答案;相反,这意味着您的A*搜索不能保证为您提供问题的最佳解决方案。如果你使用无限启发法,你将探索每一种可能的状态,在某个时候可能会给你一个解决方案。只是绝对不能保证您找到的解决方案使用最佳移动次数。@templatetypedef:那么我为什么要使用不允许的启发式,就像bfs一样,每个状态都会被检查。@templatetypedef:还有,我可以将一个因子乘以一个可接受的启发式函数,使其不可接受吗?@starcaller-您可能希望使用一个可接受的启发式函数,因为它显著提高了您的搜索进度。在具有高分支因子的图中,如果启发式足够好,使用可容许的启发式可以避免探索指数级的多个状态;事实上,如果给出一个完美的启发式(一个能告诉你距离的启发式),你只会探索那些能让你找到答案的状态。不可接受的启发式可能导致待探索状态的指数级爆炸,耗尽时间或内存。