人工智能读书笔记-第三章

有点难懂,卡住知情搜索的爬山法和最陡爬山法了。。。

第三章 知情搜索

知情搜索(informed search),又称信息搜索,是利用启发式方法,通过限定问题搜索的宽度或深度来缩小问题空间。

3.0 引言

第二章介绍的盲目搜索算法,以某种固定方式对搜索空间(search space)进行搜索,其中深度优先搜索(DFS)会深入探索一棵树,而广度优先搜索(BFS)则在进一步搜索之前检查靠近根的节点。DFS可能会忽略了靠近根的目标节点,BFS的空间需求(space requirement)过高,甚至中等大小的分支因子(braching factor)就很容易使其不堪重负。迭代加深的DFS结合了DFS 和BFS的优点,但最坏情况下的时间复杂度,与两者一样都是指数级的。

本章给出基于启发式方法的搜索算法,启发式方法有助于在搜索空间中引导前进的路线。3.2-3.4 描述3种“永不回头看”的搜索算法,爬山法(hill climbing)、最佳优先搜索(best-first search)和集束搜索(beam search)。在状态空间中,它们的路径完全由目标的剩余距离的启发式评估值(近似值)来引导

3.5介绍用于评估启发式方法或搜索算法的4个指标。若想让某个启发式方法有用,就应该低估(underestimate)剩余距离。搜索启发式方法中用到目标直线距离最短的启发方法的这个性质被称为可容许性或可采纳性

搜索中启发式方法的单调性(monotomicity)则要求更加严格,这个性质要求在向前搜索时,剩余距离的启发式评估值应持续减小。

有些算法只检查单条路径,通常这些搜索算法会产生次优的结果。例如爬山法,一直前进,直到到达某个节点为止,该节点的所有后续节点都不会更接近目标节点。此时算法可能已经达到目标,也可能陷入局部最优(local optimum)。可以换成,若允许回溯,算法课去探索其他的路径。这些情况下,我们将算法归类为试探性(tentative)搜索算法。

3.6描述的所有搜索算法都有一个共同特征,即它们都将从根开始遍历的距离作为度量好坏程度的启发式方法的一部分或全部。从某种意义商讲总是“向后看”的算法被称为分支定界算法(brach and bound algorithm).标准的分支定界算法可通过剩余距离的启发式估计或只保留到任何中间节点的最佳路径来进行增强处理。当在搜索中纳入上述两种增强策略时,就得到了著名的A*算法。

3.7讨论了2种:约束满足搜索(constraint satisfaction search)和双向搜索(bidirectional search/wave search).CSP(constraint satisfaction problem)算法尝试采用这些约束条件来对树进行剪枝,从而提高效率。

一个问题的求解通常涉及其子问题的求解。在某些情况下,要解决一个问题,就必须解决其所有的子问题,但有时解决其中一个子问题就足以解决整个问题。

3.1 启发式方法

“启发式方法之父”,乔治.波利亚(George Polya),著how to solve it,

Heristic serch,启发式搜索,heristic 在有些情况下代表某种评估值。

启发式方法的目的是大幅度减少到达目标状态所要考虑的节点数目,非常适合解决那些组合复杂度(combinational complexity)快速增长问题。旨在减少必须检查的对象数目。

玻尔注意到,用启发式方法可以通过修改策略来达到一个最优解,同时代价得以显著降低。博弈,特别是二人完美信息(perfect information)零博弈(zero-sum game),如国际象棋和跳棋,被证明是进行启发式研究和测试很有价值研究的领域。

3.2 知情搜索----找到任一解

3.2.1 爬山法(hill climbing)

最简单形式的爬山法是一种贪心算法

爬山法只考虑对剩余距离的估计,而忽略实际已经走过的距离。

3.2.2最陡爬山法(steep-ascent hill climbing)

在给定某状态时,我们希望做些什么来更接近某个目标状态,且做出的是最佳选择。最陡爬山法(steep-ascent hill climbing)是简单爬山法的一个变体,加入了有关决策的考虑。

不是很懂用简单爬山和最陡爬山法走不一样结果的原理

  1. 山丘问题(foothill problem)

爬山法是一种贪心算法,对过去和未来都没有意识,因此它会陷入局部最大值(local maximum)

  1. 平台问题(plateau problem)

即状态空间中存在一个相对平坦的区域,使得相邻的状态具有相同的值。

       3     山脊问题(ridge problem)

3.3 最佳优先搜索(best-first search)

       3.4 集束搜索

       搜索树中的每一层只扩展到最好的W个节点,如同形成一种薄的、聚焦的“光束”。

3.5 搜索算法的其他指标

在问题有解的情况下,搜索算法总是可以找到解,就称该搜索算法是完备的。若搜索空间的分支因子是有限的,那么广度优先搜索是完备的。若某搜索算法能从所有可能的解中返回开销最小的路径,就称该搜索算法是最优的。

空间复杂度

时间复杂度

尝试性(tentative)方法

不可撤回(irrevocable)的方法

3.6 知情搜索—找到最优解

3.6.1 分支定界法

统一开销搜索或统一代价搜索(uniform-cost search)

NP完全(NP-complete)问题

3.6.2 使用低估计启发值的分支定界法

3.6.3 采用动态规划的分支定界法

最优性原理(Principle of Optimality)

3.7 知情搜索—高级搜索算法

3.7.1 约束满足搜索

3.7.2 与或树

3.7.3 双向搜索

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值