- 1、本文档共82页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
人工智能Artificial Intelligence 主讲:杨利英 西安电子科技大学计算机学院 E_mail:yangliying1208@163.com 第五章 搜索策略 5.1 基本概念 5.2 状态空间的搜索策略 5.3 与/或树的搜索策略 5.4 搜索的完备性与效率 5.1 基本概念 采用某种策略,在知识库中寻找可利用的知识,从而构造一条代价较小的推理路线,使问题得到解决的过程称为搜索。 5.1.1 什么是搜索 搜索分为盲目搜索和启发式搜索。 5.1.2 状态空间表示法 状态空间用“状态”和“算符”来表示问题。 状态 状态用以描述问题在求解过程中不同时刻的状态,一般用向量表示 算符 使问题从一个状态转变为另一个状态的操作称为算符。 状态空间 由所有可能出现的状态及一切可用算符所构成的集合称为问题的状态空间。 状态空间示例:十五数码难题 5.1.3 与/或树表示法 对于一个复杂问题,直接求解往往比较困难。此时可通过下述方法进行简化: (1)分解 (2)等价变换 5.1.3 与/或树表示法 (1)分解 把一个复杂问题分解为若干个较为简单的子问题,每个子问题又可继续分解。重复此过程,直到不需要再分解或者不能再分解为止。如此形成“与”树。 (2)等价变换 利用同构或同态的等价变换,把原问题变换为若干个较为容易求解的新问题。如此形成“或”树。 与/或树 解树 由可解节点所构成,并且由这些可解节点可推出初始节点为可解节点的子树称为解树(t表示终止节点)。解树中一定包含初始节点。(它对应于原始问题) 5.2 状态空间的搜索策略 5.2 状态空间的搜索策略 盲目搜索 搜索按规定的路线进行,不使用与问题有关的启发性信息; 适用于其状态空间图是树状结构的一类问题。 启发式搜索 使用与问题有关的启发性信息,并以这些启发性信息指导搜索过程,可以高效地求解结构复杂的问题。 5.2.1 状态空间的一般搜索过程 一个复杂问题的状态空间一般都是十分庞大的。如64阶梵塔问题共有3的64次方个不同的状态。 把问题的所有状态空间都进行存储有时候是不可能的。 把问题的所有状态空间都进行存储也是不必要的。因为与解题有关的状态空间往往只是整个状态空间的一部分,只要能生产并存储这部分状态空间就可以求出问题的解。 5.2.1 状态空间的一般搜索过程 如何产生问题需要的状态空间从而实现对问题的求解呢?答案就是搜索技术。 搜索技术基本思想:把问题的初始状态作为当前状态,选择适用的算符对其操作,生产一组子状态,然后检查目标状态是否在其中出现。若出现,则搜索成功,找到了问题的解,否则按某种搜索策略从已生成的状态中再选择一个作为当前状态。重复上述过程,直到目标状态出现或者不再有可供操作的状态及算符为止。 5.2.1 状态空间的一般搜索过程 OPEN表和CLOSE表 OPEN表用于存放刚生成的节点。对于不同的搜索策略,节点在OPEN表中的排列顺序是不同的。 CLOSE表用于存放将要扩展的节点。对一个节点的扩展是指:用所有可适用的算符对该节点进行操作,生成一组子节点 OPEN表 搜索的一般过程 把初始节点S0放入OPEN表,并建立目前只包含S0的图,记为G; 检查OPEN表是否为空,若为空则问题无解,退出; 把OPEN表的第一个节点取出放入CLOSE表,并计该节点为n; 考察节点n是否为目标节点。若是,则求得了问题的解,退出; 扩展节点n,生成一组子节点。把其中不是节点n先辈的那些子节点记做集合M,并把这些子节点作为节点n的子节点加入G中; 搜索的一般过程 针对M中子节点的不同情况,分别进行如下处理: 对于那些未曾在G中出现过的M成员设置一个指向父节点(即节点n)的指针,并把它们放入OPEN表;(不在OPEN表) 对于那些先前已经在G中出现过的M成员,确定是否需要修改它指向父节点的指针;(在OPEN表中) 对于那些先前已在G中出现并且已经扩展了的M成员,确定是否需要修改其后继节点指向父节点的指针;(在CLOSE表中) 按某种搜索策略对OPEN表中的节点进行排序; 转第2步。 对一般搜索过程的一些说明 一个节点经一个算符操作后一般只生成一个子节点。但适用于一个节点的算符可能有多个,此时就会生成一组子节点。这些子节点中可能有些是当前扩展节点的父节点、祖父节点等,此时不能把这些先辈节点作为当前扩展节点的子节点。 对一般搜索过程的一些说明 一个新生成的节点,它可能是第一次被生成的节点,也可能是先前已作为其它节点的子节点被生成过,当前又作为另一个节点的子节点被再次生成。此时,它究竟应选择哪个节点作为父节点?一般由原始节点到该节点的代价来决定,处于代价小的路途上的那个节点就作为该节点的父节点。 对
您可能关注的文档
- 中考作文及范文示例.doc
- 水压试验措施.doc
- 中考作文精选.doc
- 水灾害重点.doc
- 中考作文训练题与提示.doc
- 水灾事故现场处置演练评估.doc
- 中空玻璃失效的原因及预防措施.doc
- 水质检验中重金属的测定方法.doc
- 水质异常演习预案.doc
- 第五章零售组织设计.ppt
- 新高考生物二轮复习讲练测第6讲 遗传的分子基础(检测) (原卷版).docx
- 新高考生物二轮复习讲练测第12讲 生物与环境(检测)(原卷版).docx
- 新高考生物二轮复习讲练测第3讲 酶和ATP(检测)(原卷版).docx
- 新高考生物二轮复习讲练测第9讲 神经调节与体液调节(检测)(原卷版).docx
- 新高考生物二轮复习讲练测第11讲 植物生命活动的调节(讲练)(原卷版).docx
- 新高考生物二轮复习讲练测第8讲 生物的变异、育种与进化(检测)(原卷版).docx
- 新高考生物二轮复习讲练测第5讲 细胞的分裂、分化、衰老和死亡(讲练)(原卷版).docx
- 新高考生物二轮复习讲练测第5讲 细胞的分裂、分化、衰老和死亡(检测)(原卷版).docx
- 新高考生物二轮复习讲练测第12讲 生物与环境(讲练)(原卷版).docx
- 新高考生物二轮复习讲练测第11讲 植物生命活动的调节(检测)(原卷版).docx
文档评论(0)