16、启发式搜索算法:原理、应用与优化

启发式搜索算法:原理、应用与优化

1. 启发式搜索概述

在搜索方法中,广度优先和深度优先搜索通常选择边界上的第一条路径进行扩展,区别仅在于新路径添加到边界的顺序。而启发式搜索则利用对每条路径通向良好结果可能性的估计,选择最有期望的路径进行下一步探索。其核心思想是,如果估计较为准确,就能更快找到最优路径。在启发式搜索里,边界被管理为一个优先队列,队列中的优先级是对路径优劣的估计,每一步都会选择优先级最高的路径进行进一步扩展。启发式搜索主要用于寻找问题的单个解决方案。

1.1 启发式搜索示例

以在道路网络中寻找两个城镇之间的路线为例,从一个城镇到最终目的地的成本可以估计为两城镇之间的直线距离,即“乌鸦飞行距离”。由于实际路线不可能比这个距离更短,所以这是一个乐观估计。在选择下一步探索的部分路线时,会选择使已走过路线的成本与剩余路程估计成本之和最小的路线。这与 Dijkstra 算法不同,Dijkstra 算法总是探索当前成本最小的部分路线,而忽略完成旅程的估计成本。路线查找算法在人工智能领域有广泛应用,如机器人技术、游戏和谜题求解等。

1.2 相关算法及数据结构

启发式搜索通常使用图和边的术语来描述,假设图由有限个顶点和有向边组成,且每条边的成本(或权重)始终为正数。接下来将介绍两种密切相关的启发式搜索算法,它们分别基于对估计函数的不同假设。同时,还会回顾优先队列的必要操作,并介绍一种新的数据结构——优先搜索队列,它有助于提高搜索的运行时间。

2. 乐观启发式搜索

2.1 乐观启发式定义

估计函数或启发式函数 (h) 是一个从顶点到成本的函数,(h(v)) 用于估计从顶

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值