第4章+图搜索技术_1(穷举式).ppt

  1. 1、本文档共47页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第4章 图搜索技术 4.1 状态图搜索 4.2 状态图问题求解 4.3 与或图搜索 4.4 与或图问题求解 4.5 博弈树搜索 4.1 状态图搜索 4.1.1 状态图 我们通过例子引入状态图的概念。 例4.1 走迷宫是人们熟悉的一种游戏,如图4—1就是一个迷宫。如果我们把该迷宫的每一个格子以及入口和出口都作为节点,把通道作为边,则该迷宫可以由一个有向图表示(如图4—2所示)。那么,走迷宫其实就是从该有向图的初始节点(入口)出发,寻找目标节点(出口)的问题,或者是寻找通向目标节点(出口)的路径的问题。 例4.2 在一个3×3的方格棋盘上放置着1,2,3,4,5,6,7,8八个数码,每个数码占一格,且有一个空格。这些数码可在棋盘上移动,其移动规则是:与空格相邻的数码方可移入空格。现在的问题是:对于指定的初始棋局和目标棋局(如图4—3所示),给出数码的移动序列。该问题称为八数码难题或重排九宫问题。 在八数码难题中,状态描述了8个棋子中的每一个以及空位在棋盘的9个方格上的分布。 状态图实际上是一类问题的抽象表示。事实上,有许多智力问题(如梵塔问题、旅行商问题、八皇后问题、农夫过河问题等)和实际问题(如路径规划、定理证明、演绎推理、机器人行动规划等)都可以归结为在某一状态图中寻找目标或路径的问题。问题可定义如下: 初始状态 可能行动的描述 目标测试 路径耗散 问题的解就是从初始状态到目标状态的路径,寻找解的过程就是搜索,研究状态图搜索具有普遍意义。  例:旅行推销员问题。假设一个推销员要到5个城市去访问,然后回家。问题是要找到一条最短的路径,使得推销员访问过每个城市后回到出发地。假定推销员在A城, 他最后要返回原地。(开销为450里的路径[A,D,C,B,E,A]就是一个可能的回路的例子。目标要求的是有最小开销的完整回路。 传教士和野人问题: 有N个传教士和N个野人来到河边准备渡河,河岸有一条船,每次至多可供k人乘渡。问传教士为了安全起见,应如何规划摆渡方案,使得任何时刻,在河的两岸以及船上的野人数目总是不超过传教士的数目。即求解传教士和野人从左岸全部摆渡到右岸的过程中,任何时刻满足M(传教士数)≥C(野人数)和M+C≤k的摆渡方案。    搜索算法的任务是在问题空间里找到一条求解路径。它包含了一系列使问题得到解决的操作(算子)。    要成功地设计和实现搜索算法, 必须弄清楚: 是否一定能找到一个解? 是否能终止运行, 或是否会陷入一个死循环? 当找到解时, 找到的是否是最好的解? 搜索过程的时间与空间复杂性如何? 解释器怎样才能最有效地降低搜索的复杂性? 解释器应该怎样设计才能最有效地利用描述语言? 4.1.2 状态图搜索 在状态图中寻找目标或路径的基本方法就是搜索。所谓搜索,顾名思义,就是从初始节点出发,沿着与之相连的边试探地前进,寻找目标节点的过程(也可以反向进行)。 1.搜索方式 用计算机来实现状态图的搜索,有两种最基本的方式:树式搜索和线式搜索。 所谓树式搜索,形象地讲就是以“画树”的方式进行搜索。 2.搜索策略 由于搜索具有探索性,所以要提高搜索效率(尽快地找到目标节点),或要找最佳路径(最佳解)就必须注意搜索策略。对于状态图搜索,已经提出了许多策略,它们大体可分为盲目搜索和启发式(heuristic)搜索两大类。 3. 搜索算法 由于搜索的目的是为了寻找初始节点到目标节点的路径,所以在搜索过程中就得随时记录搜索轨迹。为此,我们用一个称为CLOSED表的动态数据结构来专门记录考查过的节点。显然,对于树式搜索来说,CLOSED表中存储的正是一棵不断成长的搜索树;而对于线式搜索来说,CLOSED表中存储的是一条不断伸长的折线,它可能本身就是所求的路径(如果能找到目标节点的话)。 另一方面,对于树式搜索来说,还得不断地把待考查的节点组织在一起,并做某种排列,以便控制搜索的方向和顺序。为此,我们采用一个称为OPEN表的动态数据结构,来专门登记当前待考查的节点。OPEN表和CLOSED表的结构如图4—4所示。 4.1.3 穷举式搜索 为简单起见,下面我们先讨论树型结构的状态图搜索,并仅限于树式搜索。

文档评论(0)

fc86033 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档