朱全民-搜索教案【信息技术】.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
搜索算法目录 第一课 搜索算法的基本理论 ……………………….. 1 第二课 宽度优先搜索 ……………………………….. 6 深度优先搜索 ……………………………….. 15 第四课 启发式搜索 ………………………………….. 27 第五课 搜索的优化 ………………………………….. 34 第一课 搜索算法的基本理论 课题:搜索原理 目标: 知识目标:产生式系统、搜索框架、搜索算法的分类 能力目标:对问题进行阐析,分析综合数据库和产生式规则 重点:综合数据库和产生式规则的描述,搜索算法的实质 难点:产生式规则的理解 板书示意: 综合数据库 产生式规则 状态空间图与节点的耗散值 搜索算法的框架 授课过程: 信息学竞赛的试题一般有两种类型: 一、简明的数学模型揭示问题本质。对于这一类试题,我们尽量用解析法求解。 二、对给定的问题建立数学模型,或即使有一定的数学模型,但采用数学方法解决有一定困难。对于这一类试题,我们只好用模拟或搜索求解。 尽管搜索的时间复杂度一般是指数级的,但在缺乏解决问题的有效模型时,搜索却是一种最行之有效的解决问题的基本方法,而且,在使用搜索算法解决问题时,在实现过程中能有很大的优化空间。信息学竞赛中考察搜索算法,其一是考察选手算法运用能力,其二是考察选手的算法优化能力。 下面我们来看看八数码问题。 在3*3组成的九宫格棋盘上,摆有八个将牌,每一个将牌都刻有1—8中的某一个数码。棋盘中留有一个空格,允许其周围的某一个将牌向空格中移动,如右图所示。这样通过移动将牌就可以不断改变的布局结构,给出一个初始布局(称初始状态)和一个目标布局(称目标状态),问如何移动将牌,才能实现从初始状态到目标状态的转换。 对此题,我们很难找到非常简明的数学方法,因此搜索势在必行。在介绍算法之前,我们先介绍一下与搜索有关的基本概念。 一、综合数据库 与问题相关的所有数据元素构成的集合,称为综合数据库。它是用来表述问题状态或有关事实,即它含有所求解问题的信息,其中有些部分可以是不变的,有些部分则可能只与当前问题的解有关。人们可以根据问题的性质,用适当的方法来构造综合数据库的信息。 在描述问题时,可以选择字符串,数组,集合,树,图等数据结构来构建综合数据库,对于八数码问题而言,选用二维数组可以简明直观地描述问题。因此,八数码问题的综合数据库可描述如下: {Pxy},其中1 =x,y =3,Pxy∈{0,1,2,3,4,5,6,7,8},且Pxy互不相等。 因此,从理论上分析,八数码问题的综合数据库共有9!=362880种不同的状态。但实际并不能达到这么多,大概只有9!/2=181440种。 问题中所有的可能的出现的状态集合就构成了问题的状态空间。问题的状态空间描述了一个问题的求解过程。它一般包含三种类型状态,即初始状态集合S,中间状态集合M,目标状态集合G,所以我们可把状态空间记为三元状态(S,M,G)。对八数码而说,S={唯一的初始状态},M={初始状态所有可达的非目标状态},G={唯一的目标状态}。 用Pascal语言描述如下: type tState = array[1..3,1..3]of byte; var S ,G: tState; {S为初始状态,G为目标状态} M : array[0.. 181440] of tState; {综合数据库} 二、产生式规则 构建了综合数据库以后,还需要研究问题的移动规则,称为产生式规则。产生式规则一般可以用如下形式描述: if 条件 then 规则; 条件描述了规则实施的先决因素,而规则描述问题实施的具体过程,通常为应用该规则所采取的行动或得到的结论。在搜索过程中,一条产生式规则满足了应用条件之后,就可以作用于综合数据库,使综合数据库的状态发生改变,产生新的状态。对于八数码问题而言,把将牌移入空格,实际上等价于将空格向将牌移动,因此移动的规则有四条,具体描述如下: 设Pxy表示将牌第x行第y列的数码,m,n表示数码空格所在的行列值,记Pm,n=0,则可以得到如下四条规则: ① if n -1 =1 then begin Pm, n:=Pm,n -1 ; Pm,n -1 :=0 end; ② if m - 1 =1 then begin Pm, n:=Pm-1, n ; Pm-1, n :=0 end; ③ if n + 1 =3 then begin Pm, n:=Pm, n+1; Pm, n+1:=0 end; ④ if m + 1 =3 then begin Pm, n:=Pm+1,n; Pm+1, n:=0 end; 三、状态空间图 在由初始状态扩展到目标状态的进程中,将扩展出来的所有状态构建成一个图来进行保存,这个图称为状态空间图。为了对它有更深

文档评论(0)

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档