- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
《人工智能》-第三章搜索推理技术概要
中南大学 智能系统与智能软件研究所 人 工 智 能 主讲: 吴顺祥 教授 模式识别与智能系统研究所 第三章 搜索推理技术 第三章 搜索推理技术 讨论的问题: 有哪些常用的搜索算法。 问题有解时能否找到解。 找到的解是最佳的吗? 什么情况下可以找到最佳解? 求解的效率如何。 第三章 搜索推理技术 从问题表示到问题的解决,有一个求解的过程。接下来要研究的是实现求解的过程,采用的基本方法包括搜索和推理。本章先介绍搜索技术,将要讨论问题求解的搜索原理,包括一些早期的搜索技术或用于解决比较简单问题的搜索原理和一些比较新的能够求解比较复杂问题的搜索原理,包括算法、遗传算法和模拟退火算法等。 3.1 图搜索策略 例子:从某王姓家族的四代中找王A的后代且其寿命为X的人。 王A:寿命47,有儿子王B1、王B3、王B2 王B1:寿命77,有儿子王C1、王C2 王B3:寿命52,有儿子王D1 王B2:寿命65,有儿子王E1、王E2 王F1:寿命32 王G1:寿命96 王C2:寿命87,有儿子王F1 王D1:寿命77,没有儿子 王E1:寿命57,有儿子王G1 王E2:寿命92,有儿子王H1 王C1:寿命27,没有儿子 王H1:寿命51 若X=57,下面讨论一种可通用的图搜索策略求解此问题。 3.1 图搜索策略 如果是一个N代的家族表中找其寿命为X的人,我们最可能用的手工方法是从家族表的开始往下,例中还要求所找的人是某人的后代,就比较复杂了。如果用图来表示,就很容易了。图中把姓氏省去,每个成员的后代按例子中给出名字的先后顺序。图示为: 3.1 图搜索策略 图搜索控制策略一种在图中寻找路径的方法。图中每个节点对应一个状态,每条连线对应一个操作符。这些节点和连线(即状态与操作符)又分别由产生式系统的数据库和规则来标记。求得把一个数据库变换为另一数据库的规则序列问题就等价于求得图中的一条路径问题。 图搜索过程图 图搜索过程 图搜索(GRAPH SEARCH)的一般过程如下: (1) 建立一个只含有起始节点S的搜索图G,把S放到一个叫做OPEN的未扩展节点表中(简称OPEN表)。(2) 建立一个叫做CLOSED的已扩展节点表(简称CLOSED表),其初始为空表。(3) LOOP:若OPEN表是空表,则失败退出。(4) 选择OPEN表上的第一个节点,把它从OPEN表移出并放进CLOSED表中。称此节点为节点n,它是CLOSED表中节点的编号。(5) 若n为一目标节点,则有解并成功退出,此解是追踪图G中沿着指从n到S这条路径而得到的(指针将在第7步中设置)。 图搜索过程 (6) 扩展节点n,同时生成不是n的祖先的那些后继节点的集合M。把M的这些成员作为n的后继节点添入图G中。 (7) 对那些未曾在G中出现过的(既未曾在OPEN表上或CLOSED表上出现过的)M成员设置一个通向n的指针。把M的这些成员加进OPEN表。对已经在OPEN或CLOSED表上的每一个M成员,确定是否需要更改通到n的指针方向。对已在CLOSED表上的每个M成员,确定是否需要更改图G中通向它的每个后裔节点的指针方向。(8) 按某一任意方式或按某个探试值,重排OPEN表。 (9) GO LOOP。 图搜索过程 图搜索算法中的几个重要名词 1.OPEN表:包括节点和父节点。 2.CLOSED表:包括节点编号、节点和父节点。 3.搜索图与搜索树此过程生成一个明确的图G(称为搜索图)和一个G的子集T(称为搜索树),树T上的每个节点也在图G中。搜索树是由第7步中设置的指针来确定的。G中的每个节点(除S外)都有一个只指向G中一个父辈节点的指针,该父辈节点就定为树中那个节点的唯一父辈节点。 图搜索过程图如下: 图搜索方法的几点分析: 图搜索过程的第8步对OPEN表上的节点进行排序,以便能够从中选出一个“最好”的节点作为第4步扩展用。这种排序可以是任意的即盲目的(属于盲目搜索),也可以用以后要讨论的各种启发思想或其它准则为依据(属于启发式搜索)。每当被选作扩展的节点为目标节点时,这一过程就宣告成功结束。这时,能够重现从起始节点到目标节点的这条成功路径,其办法是从目标节点按指针向S返回追溯。当搜索树不再剩有未被扩展的端节点时,过程就以失败告终(某些节点最终可能没有后继节点,所以OPEN表可能最后变成空表)。在失败终止的情况下,从起始节点出发,一定达不到目标节点。 3.2 盲目搜索 盲目搜索又叫做无信息搜索:一般只适用于求解比较简单的问题,它只是可以区分出哪个是目标状态。一般是按预定的搜索策略进行搜索。没有考虑到问题本身的特性,这种搜索具
文档评论(0)