人工智能第2版学习——盲目搜索3

书:人工智能第2版
有需要电子版的可以私信我。

这次讲讲盲目搜索算法,分两个,分别是深度优先搜索(DFS)和广度优先搜索(BFS)。
其实还有迭代加深(DFS-ID)的深度优先搜索,不过好像书这里没讲。
这几种算法都是不适用领域知识的不知情搜索算法,即不知道状态空间的任何信息。(这句话我其实也不太理解,后面如果有提到我再回来补上解释)

算法简单说明

深度优先搜索

我记得大一的数据结构课有讲过这两种算法,对于深度优先搜索,其实就是,先对每个分支进行搜索,搜索到底了,再回去搜索其它分支。
这里借用书中的图讲解:
按照先先左后右的顺序,从顶点A开始一直往左走(A-B-D),到底了,回去一层往右走(D-B-E),又到底了,回退一层再回退一层(E-B-A),因为左分支全部到底了,所以就开始搜索右分支。
所以最终搜索顺序就是A-B-D-B-E-B-A-C-F-C-G(这里我是便于理解才写这么仔细,图中直接把重复的点给省略了,给出的搜索顺序是A-B-D-E-C-F-G)
在这里插入图片描述

广度优先搜索算法

这个也很好理解的,深度是深度优先,广度就是广度优先。它每次先把同一层的搜索完,再搜索下一层。还是用上面那个图来说明:
同样是先左后右的顺序,从顶点A开始,搜索第二层(B、C),然后搜索第三层(D、E、F、G)。
所以最终顺序是A-B-C-D-E-F-G。

例子讲解1

3拼图

规则,图(a)是初始态,其中有个空白块,我们需要移动空白块,使得这个图最终变成图(b)的状态。
在这里插入图片描述
这里,书中定义了移动的顺序(上-下-右-左),如果找到了目标状态就不再搜索。然后如果搜索过程中遇到已经出现的状态,则不再对它进行搜索,并用X标记。
好了,不多说,我直接把书中的图放上来:
深度优先:可以看到,从一个分支一直往下找,找到了目标,然后就停了,整体结构很狭长。
在这里插入图片描述
广度优先:可以看到,每次要搜索同一层级的所有状态,然后再搜索下一层,知道找到目标。整体结构很宽大。
在这里插入图片描述

对于优缺点,书中放在了后面,这次就到这里,下次继续。

觉得我讲的可以的麻烦可以点个赞吗?谢谢啦。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小欣CZX

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值