启发式搜索

✍ dations ◷ 2025-08-18 08:45:26 #算法

计算机科学中所谓的heuristic,除了有经验法则的意思外(见启发式),它还有另外两个技术上的意义。

计算机科学的两大基础目标,就是发现可证明其运行效率良好且可得最佳解或次佳解的算法。而启发式算法则试图一次提供一个或全部目标。例如它常能发现很不错的解,但也没办法证明它不会得到较坏的解;它通常可在合理时间解出答案,但也没办法知道它是否每次都可以这样的速度求解。

有时候人们会发现在某些特殊情况下,启发式算法会得到很坏的答案或效率极差,然而造成那些特殊情况的数据结构,也许永远不会在现实世界出现。因此现实世界中启发式算法很常用来解决问题。启发式算法处理许多实际问题时通常可以在合理时间内得到不错的答案。

有一类的通用启发式策略称为元启发算法(metaheuristic),通常使用随机数搜索技巧。他们可以应用在非常广泛的问题上,但不能保证效率。

所谓的最短路径问题有很多种意思,在这里启发式指的是在一个搜索树的节点上定义的函数 h ( n ) {\displaystyle h(n)} ,用于评估从此节点到目标节点成本最小的路径。启发式通常用于信息充份的搜索算法,例如最好优先贪心算法与A*。最好优先贪心算法会为启发式函数选择最低代价的节点;A*则会为 g ( n ) + h ( n ) {\displaystyle g(n)+h(n)} 选择最低代价的节点,此 g ( n ) {\displaystyle g(n)} 是从起始节点到目前节点的路径的确实代价。如果 h ( n ) {\displaystyle h(n)} 是可接受的(admissible)意即 h ( n ) {\displaystyle h(n)} 未曾付出超过达到目标的代价,则A*一定会找出最佳解。

最能感受到启发式算法好处的经典问题是n-puzzle。此问题在计算错误的拼图图形,与计算任两块拼图的曼哈顿距离的总和以及它距离目的有多远时,使用了本算法。注意,上述两条件都必须在可接受的范围内。

任何的搜索问题中,每个节点都有 b {\displaystyle b} 个选择以及到达目标的深度 d {\displaystyle d} ,一个毫无技巧的算法通常都要搜索 b d {\displaystyle b^{d}} 个节点才能找到答案。启发式算法借由使用某种切割机制降低了分支因子(branching factor)以改进搜索效率,由 b d {\displaystyle b^{d}} 降到较低的 b {\displaystyle b'} 。分叉率可以用来定义启发式算法的偏序关系,例如:若在一个 n {\displaystyle n} 节点的搜索树上, h 1 ( n ) {\displaystyle h_{1}(n)} 的分叉率较 h 2 ( n ) {\displaystyle h_{2}(n)} 低,则 h 1 ( n ) < h 2 ( n ) {\displaystyle h_{1}(n)<h_{2}(n)} 。启发式为每个要解决特定问题的搜索树的每个节点提供了较低的分叉率,因此它们拥有较佳效率的计算能力。

如何找到一个分叉率较少又通用的合理启发式算法,已被人工智能社群深入探究过。他们使用几种常见技术:

一个在1993年由A.E. Prieditis写出的程序ABSOLVER就运用了这些技术,这程序可以自动为问题产生启发式算法。ABSOLVER为8-puzzle产生的启发式算法优于任何先前存在的!而且它也发现了第一个有用的解魔术方块的启发式程序。

相关

  • 呋喃唑酮呋喃唑酮(Furazolidone,曾用名称:痢特灵、硝基呋喃)是一种硝基呋喃类抗生素,可用于治疗细菌和原虫引起的痢疾、肠炎、胃溃疡等胃肠道疾患。呋喃唑酮为广谱抗菌药,对常见的革兰氏阴
  • 查谟和克什米尔中央直辖区查谟和克什米尔(Jammu and Kashmir)是一个位于印度北部的中央直辖区,分为查谟和克什米尔山谷两个专区,为印度控制的克什米尔的一部分。该地南面与旁遮普和喜马偕尔邦接壤,东北部
  • 2003年 大邱第二十二届夏季世界大学生运动会于2003年8月21日至2003年8月31日在韩国的大邱举行。这是韩国首次主办夏季世界大学生运动会,韩国也成为第三个获得夏季大学生运动会主办权的亚
  • 银鱼银鱼科(学名:Salangidae)通称银鱼,古称脍残鱼,属辐鳍鱼纲胡瓜鱼目。以小型甲壳类为食。银鱼可供鲜食用或晒鱼干。银鱼是一种小型鱼类,身体细长、光滑、半透明,头平扁;口大,两颌和口盖
  • 韩式炸鸡韩式炸鸡(韩语:(양념)치킨,又称“韩国炸鸡”,韩语中亦常简称为치킨)是一种韩国风味的炸鸡,既可以是快餐店、餐厅和酒吧的主菜,也可以被当做零食。韩式炸鸡口味很多,有原味、香辣酱料
  • 恩格尔伯特·陶尔斐斯恩格尔伯特·陶尔斐斯(德语:Engelbert Dollfuß,1892年10月4日-1934年7月25日),奥地利政治人物,基督社会党籍,1932年-1934年担任奥地利总理。陶尔斐斯生于下奥地利的特克辛塔尔。1930
  • 智辩家智辩家(希腊语:σοφιστής, )是古希腊公元前5世纪至4世纪时的一种类型的教师。他们中的许多善于哲学和修辞学,但也有人教授音乐、体育和数学。他们通常声称自己传授Arete(
  • 塔纳米沙漠塔奈米沙漠(Tanami)是澳洲北部的一个沙漠。大部分横亘于北领地中部,小部分伸入西澳大利亚州。
  • 吸光度当大部分光经过一个样本时,部分光会被吸收。在光谱学,透光率 T {\displaystyle {\mathcal {T}}}
  • 黏孢子虫黏孢子虫(Myxosporea)是黏体动物(Myxozoa,有人称黏体动物亚门与黏体动物门)的一个纲。下有近1100种生物,较为知名的如寄生虫脑粘体虫()与Alataspora solomoni、Ceratomyxa shasta(英