




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
2024/1/221第3章搜索战略问题求解系统划分为两大类知识贫乏系统依托搜索技术处理问题知识贫乏、缺乏针对性效率低知识丰富系统依托推理技术处理问题基于丰富知识的推理技术,直截了当效率高2024/1/222第3章搜索战略两大类搜索技术:1、普通图搜索、启发式搜索2、基于问题归约的与或图搜索两种典型的推理技术:1、基于归结的演绎推理归结反演2、基于规那么的演绎推理正向演绎推理逆向演绎推理2024/1/2233.1引言对于给定的问题,智能系统的行为普通是找到可以到达所希望目的的动作序列,并使其所付出的代价最小、性能最好。基于给定的问题,问题求解的第一步是目的的表示。搜索就是找到智能系统的动作序列的过程。2024/1/224搜索算法的输入是给定的问题,输出是表示为动作序列的方案。一旦有了方案,就可以执行该方案所给出的动作了。〔执行阶段〕因此,求解问题包括:目的表示搜索执行2024/1/225〔1〕初始形状集合:定义了初始的环境。〔2〕操作符集合:把一个问题从一个形状变换为另一个形状的动作集合。〔3〕目的检测函数:用来确定一个形状是不是目的。〔4〕途径费用函数:对每条途径赋予一定费用的函数。其中,初始形状集合和操作符集合定义了问题的搜索空间。普通给定问题就是确定该问题的一些根本信息,一个问题由4部分组成:2024/1/226和通常的搜索空间不同,人工智能中大多数问题的形状空间在问题求解之前不是全部知道的。在人工智能中,搜索问题普通包括两个重要的问题:搜索什么搜索什么通常指的就是目的。在哪里搜索在哪里搜索就是“搜索空间〞。搜索空间通常是指一系列形状的聚集,因此称为形状空间。2024/1/227所以,人工智能中的搜索可以分成两个阶段:形状空间的生成阶段在该形状空间中对所求问题形状的搜索搜索可以根据能否运用启发式信息分为盲目搜索启发式搜索2024/1/228盲目搜索只是可以区分出哪个是目的形状。普通是按预定的搜索战略进展搜索。没有思索到问题本身的特性,这种搜索具有很大的盲目性,效率不高,不便于复杂问题的求解。启发式搜索是在搜索过程中参与了与问题有关的启发式信息,用于指点搜索朝着最有希望的方向前进,加速问题的求解并找到最优解。2024/1/229根据问题的表示方式分为形状空间搜索与或图搜索形状空间搜索是用形状空间法来求解问题所进展的搜索与/或图搜索是指用问题规约方法来求解问题时所进展的搜索。2024/1/2210思索一个问题的形状空间为一棵树的方式。宽度优先搜索深度优先搜索假设根节点首先扩展,然后是扩展根节点生成的一切节点,然后是这些节点的后继,如此反复下去。在树的最深一层的节点中扩展一个节点。只需当搜索遇到一个死亡节点〔非目的节点并且是无法扩展的节点〕的时候,才前往上一层选择其他的节点搜索。2024/1/2211无论是宽度优先搜索还是深度优先搜索,遍历节点的顺序普通都是固定的,即一旦搜索空间给定,节点遍历的顺序就固定了。这种类型的遍历称为“确定性〞的,也就是盲目搜索。对于启发式搜索,在计算每个节点的参数之前无法确定先选择哪个节点扩展,这种搜索普通也称为非确定的。2024/1/2212完备性:假设存在一个解答,该战略能否保证可以找到?时间复杂性:需求多长时间可以找到解答?空间复杂性:执行搜索需求多少存储空间?最优性:假设存在不同的几个解答,该战略能否可以发现最高质量的解答?搜索战略评价规范:2024/1/2213有许多智力问题(如梵塔问题、游览商问题、八皇后问题、农夫过河问题等)和实践问题〔如途径规划、机器人行动规划等〕都可以归结为形状空间搜索。用形状空间搜索来求解问题的系统均定义一个形状空间,并经过适当的搜索算法在形状空间中搜索解答途径。3.2基于形状空间图的搜索技术2024/1/2214形状空间搜索
——1.形状空间及其搜索的表示(1)形状空间的表示形状空间记为SP,可表示为二元组:SP=(S,O)S——问题求解〔即搜索〕过程中一切能够到达的合法形状构成的集合;O——操作算子的集合,操作算子的执行会导致问题形状的变化;形状——用于记载问题求解〔即搜索〕过程中某一时辰问题现状的快照;笼统为矢量方式Q=[q0,q1,…,qn]T每个元素qi称为形状分量给定每个形状分量qi的值就得到一个详细的形状 Qk=[q0k,q1k,…,qnk]T2024/1/2215形状表示形状的变化操作算子问题的形状空间是一个表示该问题的全部能够形状及其变化的有向图。节点形状有向弧形状的变化弧上的标签导致形状变化的操作算子用形状空间搜索来求解问题的系统均定义一个形状空间,并经过适当的搜索算法在形状空间中搜索解答途径。2024/1/2216例1:走迷宫是人们熟习的一种游戏。形状空间搜索2024/1/2217格子、入口和出口——节点——形状通道——有向弧——操作算子迷宫可以由一个有向图表示2024/1/2218例2:在一个3×3的方格棋盘上放置着1,2,3,4,5,6,7,8八个数码,每个数码占一格,且有一个空格。这些数码可在棋盘上挪动,其挪动规那么是:与空格相邻的数码方可移入空格。 如今的问题是:对于指定的初始棋局和目的棋局,给出数码的挪动序列。该问题称为八数码问题。56741382初始棋局56748321目的棋局挪动数码2024/1/2219231847652318476528314765231847652831476528316475283147652831647528316475283714658321476528143765283145761237846512384765283641752831675483214765283714652814376528314576123847652024/1/22202024/1/2221形状空间搜索
——1.形状空间及其搜索的表示(2)形状空间表示的经典例子“传教士和野人问题〞问题的描画:N个传教士带着N个野人划船过河;3个平安约束条件:1)船上人数不得超越载重限量,设为K个人;2)任何时辰〔包括两岸、船上〕野人数目不得超越传教士;3)允许在河的某一岸或者在船上只需野人而没有传教士;2024/1/2222形状空间搜索
——1.形状空间及其搜索的表示(2)形状空间表示的经典例子“传教士和野人问题〞特例:N=3,K=2形状分量m——传教士在左岸的实践人数形状分量c——野人在左岸的实践人数形状分量b——指示船能否在左岸(1、0)3个平安约束条件m≧c(左岸平安)且N-m≧N-c(右岸平安);m=0且0≤c≤N(左岸没有传道士,右岸一定平安);N-m=0且0≤N-c≤N(右岸没有传道士,左岸一定平安);2024/1/2223设初始形状下传教士、野人和船都在左岸,目的形状下这三者均在右岸,问题形状以〔m,c,b〕表示。问题的求解义务可描画为:(3,3,1)→(0,0,0)该简单问题能够到达的合法形状:能够形状总数:4×4×2=32根据条件得出合法形状:20m≧c且N-m≧N-c(左岸平安且右岸平安)m=1,c=1;m=2,c=2m=0且0≤c≤N(左岸没有传道士)m=0,c=0,1,2,3N-m=0且0≤N-c≤N(右岸没有传道士)m=3,c=0,1,2,3不能够到达的合法形状:(0,0,1),(0,3,0),(3,0,1),(3,3,0)能够到达的合法形状共16个2024/1/2224形状空间搜索
——1.形状空间及其搜索的表示(2)形状空间表示的经典例子“传教士和野人问题〞定义2类操作算子:L(x,y)——指示从左岸到右岸的划船操作R(x,y)——指示从右岸到左岸的划船操作x+y≤K=2(船的载重限制);x和y取值的能够组合只需5个10,20,11,01,02(允许在船上只需野人而没有传教士)共有10个操作算子2024/1/2225渡河问题的形状空间有向图2024/1/2226形状空间搜索
——1.形状空间及其搜索的表示由此例可以看出用形状空间方法表示问题时,首先必需定义形状的描画方式,经过运用这种描画方式可把问题的一切形状都表示出来。另外,还要定义一组操作,经过运用这些操作可把问题由一种形状转变为另一种形状。问题的求解过程是一个不断把操作作用于形状的过程。假设在运用某个操作后得到的新形状是目的形状,就得到了问题的一个解。这个解是从初始形状到目的形状所用操作构成的序列。2024/1/2227形状空间搜索
——1.形状空间及其搜索的表示由此例可以看出要使问题由一种形状转变到另一种形状时,就必需运用一次操作。这样,在从初始形状转变到目的形状时,就能够存在多个操作序列(即得到多个解)。那么,其中运用操作最少或较少的解才为最优解(由于只需在运用操作时所付出的代价为最小的解才是最优解)。对其中的某一个形状,能够存在多个操作.使该形状变到几个不同的后继形状.那么究竟用哪个操作进展搜索呢?这就有赖于搜索战略了.不同的搜索战略有不同的顺序,这就是本章后面要讨论的问题。2024/1/2228课堂练习有一农夫带一只狐狸、一只小羊和一篮菜过河〔从左岸到右岸〕。假设船太小,农夫每次只能带一样东西过河;思索到平安,无农夫看管时,狐狸和小羊不能在一同,小羊和那篮菜也不能在一同。请为该问题的处理设计形状空间,并画出形状空间图。
2024/1/2229解析以变量m、f、s、v分别指示农夫、狐狸、小羊、菜,且每个变量只可取值1(表示在左岸)或0(表示在右岸)。问题形状可以四元组(m、f、s、v)描画,设初始形状下均在左岸,目的形状下都到达右岸。从而,问题求解义务可描画为
(1,1,1,1)->(0,0,0,0)由于问题简单,形状空间中能够的形状总数为2×2×2×2=16,由于要服从平安限制,合法的形状只需(除初、目形状外):
1110,1101,1011,1010,0101,0001,0010,0100;
不合法形状有:0111,1000,1100,0011,0110,1001设计二类操作算子:Lx、Rx,x为m、f、s、v时分别指示农夫单独,带狐狸,带小羊,带菜过河;形状空间图如下所示.由于Lx和Rx是互逆操作,故而解答途径可有无数条,但最近的只需二条;都是7个操作步.思索:为什么不把船的形状放到形状空间中去?2024/1/2230解析:四元组(m、f、s、v)2024/1/2231形状空间搜索
——1.形状空间及其搜索的表示(3)形状空间的搜索形状空间的搜索记为SE,可表示为五元组:SE=(S,O,E,I,G);E——搜索引擎;I——问题的初始形状,I∈S;G——问题的目的形状集合,GS。搜索引擎E——可以设计为实现任何搜索算法的控制系统。根本思想——经过搜索引擎E寻觅一个操作算子的调用序列,使问题从初始形状I变化到目的形状G之一。解答途径——初-目变化过程中的形状序列或相应的操作算子调用序列。2024/1/2232形状空间搜索
——1.形状空间及其搜索的表示或图〔普通图〕一个形状可以有多个可供选择的操作算子;操作算子间的选择是一种“或〞的关系;这样的有向图称为或图。2024/1/2233形状空间搜索
——1.形状空间及其搜索的表示(3)形状空间的搜索或图〔普通图〕一个形状可以有多个可供选择的操作算子;操作算子间的选择是一种“或〞的关系,这样的有向图称为或图。形状空间普通都表示为或图〔普通图〕搜索图——在搜索解答途径的过程中画出搜索时涉及到的节点和弧线,构成所谓的搜索图。形状空间搜索普通图搜索2024/1/2234形状空间搜索
——1.形状空间及其搜索的表示(3)形状空间的搜索形状空间、搜索图和解答途径之间的关系S0Sg2024/1/2235形状空间搜索
——1.形状空间及其搜索的表示(4)普通图搜索例子——八数码游戏求解的问题:给定初始规划(即初始形状)和目的规划(即目的形状),如何挪动数码才干从初始规划到达目的规划?解答就是一个合法的棋牌走步序列。初始规划目的规划挪动数码2024/1/2236形状空间搜索
——1.形状空间及其搜索的表示(4)普通图搜索例子——八数码游戏用普通图搜索方法处理该问题的步骤:1、为问题形状的表示建立数据构造2、制定操作算子集合3、设计搜索引擎第一步:为问题形状的表示建立数据构造3×3的一个矩阵S矩阵元素Sij∈{0,1,2,3,4,5,6,7,8},其中1≤i,j≤3数字0表示空格数字1-8表示相应的棋牌八数码问题就可表示为:2024/1/2237形状空间搜索
——1.形状空间及其搜索的表示初始规划目的规划挪动数码(4)普通图搜索例子——八数码游戏2024/1/2238形状空间搜索
——1.形状空间及其搜索的表示(4)普通图搜索例子——八数码游戏第二步:制定操作算子集直观方法——为每个棋牌制定一套能够的走步:左、上、右、下四种挪动。需求32个操作算子简易方法——仅为空格制定这4种走步。仅需4个操作算子第三步:设计搜索引擎问题形状空间的大小与问题涉及的元素个数是程指数级爆炸式增长〔即,组合爆炸问题〕如,棋盘规划〔问题形状〕总共有9!=362880个研讨焦点是处理组合爆炸问题,经过紧缩搜索空间,提高搜索效率。2024/1/2239形状空间搜索
——1.形状空间及其搜索的表示形状空间、搜索图和解答途径之间的关系S0Sg2024/1/2240形状空间搜索
——2.普通图搜索战略〔1〕搜索术语1、节点深度根节点指示初始形状,令其深度为0;搜索图中的其他节点的深度dn就可以递归地定义为其父节点深度dn-1加1:dn=dn-1+1。根节点深度=0第n-1层节点dn-1第n层节点dn=dn-1+1搜索图2024/1/2241形状空间搜索
——2.普通图搜索战略〔1〕搜索术语2、节点扩展运用操作算子将上一形状〔节点ni〕变化到下一形状〔节点nj〕节点ni称为被扩展节点〔父节点〕节点nj称为ni的子节点节点ni节点nj2024/1/2242〔1〕搜索术语3、途径节点ni到nj的途径是由相邻节点间的弧线构成的折线要求途径是无环的4、途径代价——相邻节点ni和ni+1间的途径代价记为C(ni,ni+1)通常令恣意相邻节点间的途径代价一样,并以途径长度1指示。即C(ni,ni+1)=1。形状空间搜索
——2.普通图搜索战略节点ni节点ni+1节点nj2024/1/2243形状空间搜索
——2.普通图搜索战略〔1〕搜索术语4、途径代价目的形状节点ng节点ni节点nkC(nk,ng)C(ni,nk)C(ni,ng)2024/1/2244形状空间搜索
——2.普通图搜索战略〔2〕普通图搜索算法符号阐明:s-初始形状节点G-搜索图OPEN-存放待扩展节点的表CLOSE-存放已被扩展的节点的表MOVE-FIRST(OPEN)-取OPEN表首的节点作为当前要被扩展的节点n,同时将节点n移至CLOSE表普通图搜索算法划分为二个阶段:1、初始化2、搜索循环2024/1/2245形状空间搜索
——2.普通图搜索战略〔2〕普通图搜索算法算法划分为二个阶段:1、初始化建立只包含初始形状节点s的搜索图G:={s}OPEN:={s}CLOSE:={}2、搜索循环MOVE-FIRST(OPEN)-取出OPEN表首的节点n作为扩展的节点,同时将其移到close表扩展出n的子节点,插入搜索图G和OPEN表适当的标志和修正指针排序OPEN表经过循环地执行该算法,搜索图G会因不断有新节点参与而逐渐长大,直到搜索到目的节点。2024/1/2246以下面的八数码为例,看普通图的搜索算法初始规划目的规划挪动数码形状空间搜索
——2.普通图搜索战略2024/1/22472024/1/22482024/1/22492024/1/22502024/1/22512024/1/22522024/1/22532024/1/22542024/1/22552024/1/22562024/1/22572024/1/22582024/1/22592024/1/22602024/1/22612024/1/22622024/1/22632024/1/22642024/1/22652024/1/2266形状空间搜索
——2.普通图搜索战略〔2〕普通图搜索算法——搜索过程中的指针修正节点n扩展后的子节点分为3类:(i)全新节点(ii)已出如今OPEN表中的节点(iii)已出现的CLOSE表中的节点指针标志和修正的方法:(i)类节点:参与OPEN表,建立从子节点到父节点n的指针(ii)类节点、(iii)类节点比较经由老父节点、新父节点n到达初始形状节点的途径代价经由新父节点n的代价比较小,那么将原子节点指向老父节点的指针,修正为指向新父节点n(iii)类节点还得从CLOSE表中移出,重新参与OPEN表。2024/1/2267形状空间搜索
——2.普通图搜索战略Sn4ninjn1n2n3n31n32节点ni是当前扩展的节点;扩展出4个后续节点;n1、n2是新节点,只需建立指向父节点的指针,并参与OPEN表;2024/1/2268形状空间搜索
——2.普通图搜索战略Sn4ninjn1n2n3n31n32n4曾经存在于OPEN表,并且已有父节点njn4经nj的途径代价大取消n4指向nj的指针改为建立n4指向新父节点ni的指针n3曾经存在于CLOSE表,并且已有父节点nj需求做和n4同样的比较和指针修正任务。并且要重新参与open表。2024/1/2269形状空间搜索
——2.普通图搜索战略〔2〕普通图搜索算法OPEN表中节点简单的排序方式:深度优先——扩展当前节点后生成的子节点总是置于OPEN表的前端,即OPEN表作为栈,后进先出,使搜索优先向纵深方向开展。2024/1/2270深度优先实例231847652318476528314765231847652831476528316475283147652831647528316475283714658321476528143765283145761237846512384765283641752831675483214765283714652814376528314576123468911131416181912384765目的571012151720212024/1/2271深度优先搜索在深度优先搜索中,首先扩展最新产生的(最深的)节点,深度相等的节点可以恣意陈列。“最晚产生的节点最先扩展〞起始节点深度为0任何其他节点的深度等于其父辈节点深度加上1:dn=dn-1+12024/1/2272深度优先搜索很明显这样做,不一定找到最正确解,而且由于深度的限制,能够找不到解,然而,假设不加深度限制,能够沿着一条道路无限制地扩展下去,这当然是不允许的。为保证找到解,应选择适当的深度界限,或者采取不断加大深度界限的方法,反复搜索,直到找到解。这种改良的方法叫做迭代加深搜索。2024/1/2273ProcedureDepthFirstSearch Begin 把初始节点压入栈,并设置栈顶指针; While栈不空do Begin 弹出栈顶元素; If栈顶元素=goal,胜利前往并终了; Else以恣意次序把栈顶元素的子女压入栈中; EndWhile End基于栈实现的深度优先搜索算法:2024/1/2274初始节点放到栈中,栈指针指向栈的最上边的元素。为了对该节点进展检测,需求从栈中弹出该节点,假设是目的,该算法终了,否那么把其子节点以任何顺序压入栈中。该过程直到栈变成为空。遍历一棵树的过程〔以下图〕。2024/1/2275深度优先搜索的性质普通不能保证找到最优解当深度限制不合理时,能够找不到解,可以将算法改为可变深度限制最坏情况时,搜索空间等同于穷举是一个通用的与问题无关的方法2024/1/2276深度优先搜索的优点是比宽度优先搜索算法需求较少的空间,该算法只需求保管搜索树的一部分,它由当前正在搜索的途径和该途径上还没有完全展开的节点标志所组成。深度优先搜索的存储器要求是深度约束的线性函数。深度优先搜索的优点2024/1/2277深度优先搜索的缺陷既不是完备的,也不是最优的。主要问题是能够搜索到了错误的途径上。很多问题能够具有很深甚至是无限的搜索树,假设不幸选择了一个错误的途径,那么深度优先搜索会不断搜索下去,而不会回到正确的途径上。这样一来对于这些问题,深度优先搜索要么堕入无限的循环而不能给出一个答案,要么最后找到一个答案,但途径很长而且不是最优的答案。2024/1/2278形状空间搜索
——2.普通图搜索战略〔2〕普通图搜索算法OPEN表中节点简单的排序方式:深度优先——扩展当前节点后生成的子节点总是置于OPEN表的前端,即OPEN表作为栈,后进先出,使搜索优先向纵深方向开展。宽度优先——扩展当前节点后生成的子节点总是置于OPEN表的后端,即OPEN表作为队列,先进先出,使搜索优先向横向方向开展。2024/1/2279宽度优先实例23184765283147652318476523184765283147652831647528314765283164752831647528371465832147652814376528314576123784651238476512567312384765目的8234187654910111213141516172024/1/2280宽度优先搜索假设搜索是以接近起始节点的程度依次扩展节点的,那么这种搜索就叫做宽度优先搜索。这种搜索是逐层进展的,在对下一层的恣意节点进展搜索之前,必需搜索完本层的一切节点。“先产生的节点先扩展〞2024/1/2281ProcedureBreadth-first-search Begin 把初始节点放入队列; Repeat 获得队列最前面的元素为current; Ifcurrent=goal 胜利前往并终了;Elsedo Begin 假设current有子女,那么current的子女 以恣意次序添加到队列的尾部; EndUntil队列为空 End采用队列构造,宽度优先算法可以表示如下:2024/1/2282宽度优先搜索算法原理:假设当前的节点不是目的节点,那么把当点节点的子孙以恣意顺序添加到队列的后面,并把队列的前端元素定义为current。假设目的发现,那么算法终止。2024/1/2283宽度优先搜索的性质当问题有解时,一定能找到解当问题为单位代价时,且问题有解时,一定能找到最优解方法与问题无关,具有通用性效率较低属于图搜索方法2024/1/2284宽度优先搜索是一种盲目搜索,时间和空间复杂度都比较高,当目的节点间隔初始节点较远时会产生许多无用的节点,搜索效率低。宽度优先搜索中,时间需求是一个很大的问题,特别是当搜索的深度比较大时,尤为严重,但是空间需求是比执行时间更严重的问题。宽度优先搜索优点:目的节点假设存在,用宽度优先搜索算法总可以找到该目的节点,而且是最小〔即最短途径〕的节点。宽度优先搜索的优点和缺陷2024/1/2285总结适用场所深度优先——当一个问题有多个解答或多条解答途径,且只须找到其中一个时;往往应对搜索深度加以限制。宽度优先——确保搜索到最短的解答途径。共同优缺陷:可直接运用普通图搜索算法实现,不需求设计特别的节点排序方法,从而简单易行,适宜于许多复杂度不高的问题求解义务。节点排序的盲目性,由于不采用领域专门知识去指点排序,往往会在白白搜索了大量无关的形状节点后才碰到解答,所以也称为盲目搜索。2024/1/2286有界深度搜索和迭代加深搜索有界深度优先搜索过程总体上按深度优先算法方法进展,但对搜索深度需求给出一个深度限制dm,当深度到达了dm的时候,假设还没有找到解答,就停顿对该分支的搜索,换到另外一个分支进展搜索。2024/1/2287战略阐明:〔1〕深度限制dm很重要。当问题有解,且解的途径长度小于或等于dm时,那么搜索过程一定可以找到解,但是和深度优先搜索一样这并不能保证最先找到的是最优解。但是当dm获得太小,解的途径长度大于dm时,那么搜索过程中就找不到解,即这时搜索过程甚至是不完备的。2024/1/2288〔2〕深度限制dm不能太大。当dm太大时,搜索过程会产生过多的无用节点,既浪费了计算机资源,又降低了搜索效率。〔3〕有界深度搜索的主要问题是深度限制值dm的选取。2024/1/2289改良方法:〔迭代加深搜索〕先恣意给定一个较小的数作为dm,然后按有界深度算法搜索,假设在此深度限制内找到了解,那么算法终了;如在此限制内没有找到问题的解,那么增大深度限制dm,继续搜索。2024/1/2290迭代加深搜索,试图尝试一切能够的深度限制:首先深度为0,然后深度为1,然后为2,等等。假设初始深度为0,那么该算法只生成根节点,并检测它。假设根节点不是目的,那么深度加1,经过典型的深度优先算法,生成深度为1的树。当深度限制为m时,树的深度为m。2024/1/2291迭代加深搜索看起来会很浪费,由于很多节点都能够扩展多次。然而对于很多问题,这种多次的扩展负担实践上很小,直觉上可以想象,假设一棵树的分支系数很大,几乎一切的节点都在最底层上,那么对于上面各层节点扩展多次对整个系统来说影响不是很大。2024/1/2292搜索最优战略的比较表注:b是分支系数,d是解答的深度,m是搜索树的最大深度,l是深度限制。2024/1/2293宽度优先搜索、深度优先搜索和迭代加深搜索都可以用于生成和测试算法。宽度优先搜索需求指数数量的空间,深度优先搜索的空间复杂度和最大搜索深度呈线性关系。2024/1/2294迭代加深搜索对一棵深度受控的树采用深度优先的搜索。它结合了宽度优先和深度优先搜索的优点。和宽度优先搜索一样,它是最优的,也是完备的。但对空间要求和深度优先搜索一样是适中的。2024/1/2295形状空间搜索
——2.普通图搜索战略〔2〕普通图搜索算法常用的简一方式:深度优先宽度优先【缺陷:节点排序的盲目性】在白白搜索了大量无关的形状节点后才碰到解答,效率低提高普通图搜索效率的关键优化OPEN表中节点的排序方式盲目搜索2024/1/2296125634最理想情况:每次排序后OPEN表表首元素n总在解答途径上2024/1/2297启发式搜索启发式知识指点OPEN表排序的普通图搜索:全局排序——对OPEN表中的一切节点排序,使最有希望的节点排在表首。A算法,A*算法〔掌握!〕部分排序——仅对新扩展出来的子节点排序,使这些新节点中最有希望者能优先取出调查和扩展;爬山法〔了解,对深度优先法的改良〕;2024/1/2298启发式搜索
——1.A算法〔掌握〕【根本思想】设计表达启发式知识的评价函数f(n);指点普通图搜索中OPEN表待扩展节点的排序:【评价函数f(n)=g(n)+h(n)〔掌握〕】n-搜索图G中的节点;f(n)-G中从初始形状节点s,经由节点n到达目的节点ng,估计的最小途径代价;g(n)-G中从s到n,目前实践的途径代价;h(n)-从n到ng,估计的最小途径代价;2024/1/2299启发式搜索
——1.A算法〔掌握〕Snng目的形状节点ng初始形状节点S节点n搜索图Gh(n):n-ng的估计最小途径代价g(n):s-n的实践途径代价f(n):s-n-ng的估计最小途径代价2024/1/22100启发式搜索
——1.A算法〔掌握〕【评价函数f(n)=g(n)+h(n)〔掌握〕】n-搜索图G中的节点;f(n)-G中从s经n到ng,估计的最小途径代价;g(n)-G中从s到n,目前实践的途径代价;h(n)-从n到ng,估计的最小途径代价;h(n)值-依赖于启发式知识加以计算;h(n)称为启发式函数〔掌握意义!〕。如何用评价函数来实现A算法?〔掌握!〕2024/1/22101启发式搜索
——1.A算法〔掌握〕A算法的设计与普通图搜索一样,划分为二个阶段:1、初始化建立只包含初始形状节点s的搜索图G:={s}OPEN:={s}CLOSE:={}2、搜索循环MOVE-FIRST(OPEN)-取出OPEN表首的节点n⑥扩展出n的子节点,插入搜索图G和OPEN表⑦适当的标志和修正指针〔子节点父节点〕⑧排序OPEN表〔评价函数f(n)的值排序〕经过循环地执行该算法,搜索图会因不断有新节点参与而逐渐长大,直到搜索到目的节点。2024/1/22102启发式搜索
——1.A算法〔掌握〕算法A的设计与普通图搜索类似,划分为二个阶段:1、初始化2、搜索循环MOVE-FIRST(OPEN)-取出OPEN表首的节点n⑥扩展出n的子节点,插入搜索图G和OPEN表对每个子节点ni,计算f(n,ni)=g(n,ni)+h(ni)⑦适当的标志和修正指针〔子节点父节点〕⑧排序OPEN表〔评价函数f(n)的值排序〕2024/1/22103启发式搜索
——1.A算法〔掌握〕⑥扩展出n的子节点,插入搜索图G和OPEN表对每个子节点ni,计算f(n,ni)=g(n,ni)+h(ni)⑦适当的标志和修正指针〔子节点父节点〕(i)全新节点:f(ni)=f(n,ni)(ii)已出如今OPEN表中的节点(iii)已出现的CLOSE表中的节点IFf(ni)>f(n,ni)THEN修正指针指向新父结点nf(ni)=f(n,ni)⑧排序OPEN表〔f(n)值从小到大排序〕2024/1/221042.假设OPEN表是空表,那么失败退出;算法A3.选择OPEN表上的第一个节点,把它从OPEN表移出并放进CLOSE表中,称此节点为节点n;1.建立一个只包含起始节点S的搜索图G,把S放到一个叫OPEN的未扩展节点表中;建立一个叫做CLOSE的已扩展节点表,其初始为空表;5.扩展节点n,同时生成不是n的祖先的那些子节点的集合M,把M的这些成员作为n的后继节点添入图G中;对于M中每个子节点ni,计算f(n,ni)=g(n,ni)+h(ni);4.假设n为一目的节点,那么有解胜利退出,此解是追踪图G中沿着指针从n到S这条途径而得到的;2024/1/221056.对那些未曾在G中出现过的M成员〔全新节点〕设置一个通向n的指针。把M的这些成员加进OPEN表。对曾经在OPEN表上的每一个M成员,比较子节点ni经由新、老父节点的评价函数值f(n,ni)、f(ni);假设f(n,ni)<f(ni)点,那么令f(ni)=f(n,ni),并挪动子节点指向老父节点的指针,改为指向新父节点。对已在CLOSE表上的每个M成员,作与第2类同样的处置,并把这些子结点从CLOSE表移出,重新参与OPEN表。7.按f(n)排序OPEN表中的节点,f(n)值最小者排在首位,重排OPEN表;8.转2。此过程生成一个明确的图G(搜索图〕和一个G的子集T(搜索树〕。2024/1/22106启发式搜索
——1.A算法〔掌握〕A算法实例——八数码游戏1)设计评价函数f(n)f(n)=d(n)+w(n),其中d(n)-节点n在搜索图中的节点深度,对g(n)的度量;w(n)-代表启发式函数h(n),其值是节点n与目的形状节点ng相比较,不思索空格,错位的棋牌个数;初始规划目的规划挪动数码2024/1/22107启发式搜索
——1.A算法〔掌握〕启发式算法A实例——八数码游戏1)设计评价函数f(n)f(n)计算实例初始规划s目的规划ngw(s):错位的棋牌个数d(s):当前节点深度f(s)h(n):n-ng的最小途径代价g(n):s-n的最小途径代价f(n):s-n-ng的最小途径代价注:W(S)不思索空格2024/1/22108形状空间搜索
——2.普通图搜索战略〔1〕搜索术语1、节点深度根节点指示初始形状,令其深度为0;搜索图中的其他节点的深度dn就可以递归地定义为其父节点深度dn-1加1:dn=dn-1+1。根节点深度=0第n-1层节点dn-1第n层节点dn=dn-1+1搜索图G2024/1/22109启发式搜索
——1.A算法〔掌握〕启发式算法A实例——八数码游戏1)设计评价函数f(n)f(n)计算实例初始规划s目的规划ngw(s):错位的棋牌个数d(s):当前节点深度f(s)h(n):n-ng的最小途径代价g(n):s-n的最小途径代价f(n):s-n-ng的最小途径代价044注:W(S)不思索空格2024/1/22110初始化OPEN:={s4}CLOSE:={}2024/1/22111循环1CLOSE:={s4}OPEN:={a b c}OPEN:={a6 b4 c6}OPEN:={b4 a6 c6}2024/1/22112循环2CLOSE:={s4 b4}OPEN:={a6 c6 d e i}OPEN:={a6 c6 d5 e5 i6}OPEN:={d5 e5 a6 c6 i6}2024/1/22113循环3CLOSE:={s4 b4 d5}OPEN:={e5 a6 c6 i6 j k}OPEN:={e5 a6 c6 i6 j7 k6}OPEN:={e5 a6 c6 i6 k6 j7}2024/1/22114循环4CLOSE:={s4,b4,d5,e5}OPEN:={a6 c6 i6 k6 j7 l m}OPEN:={a6 c6 i6 k6 j7 l5 m7}OPEN:={l5 a6 c6 i6 k6 j7 m7}2024/1/22115CLOSE:={s4,b4,d5,e5,l5}循环5OPEN:={a6 c6 i6 k6 j7 m7 n}OPEN:={a6 c6 i6 k6 j7 m7 n5}OPEN:={n5 a6 c6 i6 k6 j7 m7}2024/1/22116循环6CLOSE:={s4,b4,d5, e5,l5,n5}OPEN:={a6 c6 i6 k6 j7 m7 o g}OPEN:={a6 c6 i6 k6 j7 m7 o7 g5}OPEN:={g5 a6 c6 i6 k6 j7 m7 o7}2024/1/22117循环7胜利终了2024/1/22118最理想搜索图G2024/1/22119判别失误2024/1/22120例2给定4L和3L的水壶各一个,水壶上没有刻度,可以向水壶中加水。如何在4L的壶中准确地得到2L水?〔x,y〕——4L壶里的水有xL,3L壶里的水有yL,n表示搜索空间中的任一节点。那么给出下面的启发式函数:2024/1/22121h(n)=2 假设0<x<4并且0<y<3=4 假设0<x<4或者0<y<3 =8 假设x=0并且y=3 或者x=4并且y=0 =10 假设x=0并且y=0 或者x=4并且y=3假定g(n)表示搜索树中搜索的深度,那么根据图搜索战略得以下图的搜索空间。2024/1/22122水壶问题的形状空间扩展图在第0步,由节点O可以得到g+h=10。在第1步,得到两个节点M和N,其估价函数值都为1+8=9,因此可以任选一个节点扩展。2024/1/22123水壶问题的形状空间扩展图假定选择了节点M,在第2步扩展M得到了两个后继点P和R,对于P有2+4=6,对于R有2+10=12。如今,在节点P、R、N中,节点P具有最小的估价函数值,所以选择节点P扩展。在第3步,可以得到节点S,其中3+4=7。如今,在节点S、R、N中,节点S的估价函数值最小,所以下一步就会选择S节点扩展。该过程不断进展下去,直到到达目的节点。2024/1/22124启发式搜索
——2.实现启发式搜索的关键要素〔了解〕实现启发式搜索应思索的关键要素:〔1〕搜索算法的可采用性(Admissibility);〔2〕启发式函数h(n)的强弱及其影响;2024/1/22125启发式搜索
——2.实现启发式搜索的关键要素〔1〕搜索算法的可采用性(Admissibility)1)定义在存在从初始形状节点到目的形状节点解答途径的情况下,假设一个搜索法总能找到最短〔代价最小〕的解答途径,那么称该形状空间中的搜索算法具有可采用性,也叫最优性。如,宽度优先的搜索算法是可采用的,只是搜索效率不高。2)A算法的可采用性——定义f*(n)=g*(n)+h*(n)n-搜索图G中最短解答途径的节点;f*(n)-s经节点n到ng的最短解答途径的途径代价;g*(n)-该途径前段〔从s到n〕的途径代价;h*(n)-该途径后段〔从n到ng〕的途径代价;2024/1/22126启发式搜索
——2.实现启发式搜索的关键要素〔1〕搜索算法的可采用性(Admissibility)3)评价函数f与f*的比较f(n)、g(n)、h(n)分别是f*(n)、g*(n)、h*(n)的近似值〔估计值〕理想情况下:假设g(n)=g*(n)、h(n)=h*(n),那么搜索过程中,每次都正确选择,不扩展任何无关的节点。实践情况:设计接近f*的f是很困难的在算法执行过程中,g(n)容易从曾经生成的搜索树中计算出来Sn搜索图Gng2024/1/22127启发式搜索
——2.实现启发式搜索的关键要素〔1〕搜索算法的可采用性(Admissibility)3)评价函数f与f*的比价理想情况下:假设g(n)=g*(n)、h(n)=h*(n),不扩展无关的节点实践情况:设计接近f*的f是很困难的在算法执行过程中,g(n)容易从曾经生成的搜索树中计算出来,比如就以节点深度d(n)当做g(n),且有g(n)>=g*(n)h(n)尽能够接近h*(n)——A算法的关键。2024/1/22128启发式搜索
——2.实现启发式搜索的关键要素〔1〕搜索算法的可采用性(Admissibility)4)改良启发式函数——八数码游戏f(n)=d(n)+w(n),其中w(n)-表示错位的棋牌个数,不够贴切,错误的扩展了节点d;p(n)-节点n与目的形状节点比较,错位棋牌在不受阻拦的情况下,挪动到目的形状相应位置所需走步〔挪动次数〕的总和;p(n)比w(n)更接近于h*(n)-p(n)不仅思索了棋牌的错位要素,还思索了错位的间隔〔挪动间隔〕2024/1/22129启发式搜索
——2.实现启发式搜索的关键要素4)改良启发式函数——八数码游戏f(s)计算实例初始规划s目的规划ngw(s):错位的棋牌个数d(s):当前节点深度f(s)044p(s):错位棋牌挪动间隔d(s):当前节点深度f(s)05511122024/1/22130初始化OPEN:={s5}CLOSE:={}2024/1/22131循环1CLOSE:={s5}OPEN:={a b c}OPEN:={a7 b5 c7}OPEN:={b5 a7 c7}2024/1/22132循环2CLOSE:={s5 b5}OPEN:={a7 c7 d e i}OPEN:={a7 c7 d7 e5 i7}OPEN:={e5 a7 c7 d7 i7}2024/1/22133循环3CLOSE:={s5 b5 e5}OPEN:={a7 c7 d7 i7 l m}OPEN:={a7 c7 d7 i7 l5 m7}OPEN:={l5 a7 c7 d7 i7 m7}2024/1/22134CLOSE:={s5,b5,e5,l5}循环4OPEN:={a7 c7 d7 i7 m7 n}OPEN:={a7 c7 d7 i7 m7 n5}OPEN:={n5 a7 c7 d7 i7 m7}2024/1/22135CLOSE:={s5,b5, e5,l5, n5}循环5OPEN:={a7 c7 d7 i7 m7 o g}OPEN:={a7 c7 d7 i7 m7 o7 g5}OPEN:={g5 a7 c7 d7 i7 m7 o7}2024/1/22136循环6胜利终了最理想搜索图G2024/1/22137防止了错误选择2024/1/22138启发式搜索
——2.实现启发式搜索的关键要素〔1〕搜索算法的可采用性(Admissibility)5)A*算法定义:1、在A算法中,规定h(n)≤h*(n);2、经如此限制以后的A算法就是A*算法。A*算法是可采用的,即总能搜索到最短解答途径【回想:八数码游戏的h(n)】w(n)-错位的棋牌个数p(n)-错位棋牌在不受阻拦的情况下,挪动到目的形状相应位置所需走步〔挪动次数〕的总和;2024/1/22139启发式搜索
——2.实现启发式搜索的关键要素〔1〕搜索算法的可采用性(Admissibility)5)A*算法定义:1、在A算法中,规定h(n)≤h*(n);2、经如此限制以后的A算法就是A*算法。A*算法是可采用的,即总能搜索到最短解答途径证明:【<人工智能上册>陆汝钤P248】1〕假设存在一条从初始形状到目的形状的解答途径,那么一定存在一条最短解答通路;2〕设形状n’是最短解答途径上的一个形状,那么经过有限步后,n’必然会成为OPEN表的第一个节点;3〕由于最短解答途径只需有限个节点n’,所以有限步后算法必然因到达目的形状ng。这就是最优解。证明终了。2024/1/22140启发式搜索
——2.实现启发式搜索的关键要素〔1〕搜索算法的可采用性(Admissibility)5)满足可采用性条件的算法——A*算法证明:2〕设形状n’是最短解答途径上的一个形状,那么经过有限步后,n’必然会成为OPEN表的第一个节点;f(n’)=g(n’)+h(n’)∵根据假设,n’在最短解答途径上∴经过有限步骤后,g(n’)=g*(n’)∴f(n’)=g*(n’)+h(n’)∵h(n)≤h*(n)∴f(n’)=g*(n’)+h(n’)≤g*(n’)+h*(n’)=f*(n’)∵f*(n’)=f*(ng)∴f(n’)≤f*(ng)2024/1/22141启发式搜索
——2.实现启发式搜索的关键要素〔1〕搜索算法的可采用性(Admissibility)5)满足可采用性条件的算法——A*算法证明:2〕设形状n’是最短解答途径上的一个形状,那么经过有限步后,n’必然会成为OPEN表的第一个节点;设OPEN表中n’之前的节点只需有限个,设为N个,其中估计值最小者为a1,并称之为第一代节点;由第一代节点生成的节点称为第二代节点,其中估计值最小者为a2;a2≥a1+e(其中,e>0,表示每扩展一次起码的代价)扩展j代后,aj≥a1+(j-1)e当j足够大时一定有aj>f*(ng)∵f(n’)≤f*(ng)且OPEN表中n’之前的节点经过j次扩展后的最小估计值aj>f*(ng)≥f(n’)∴经过有限步后,n’必然会成为OPEN表的第一个节点2024/1/22142启发式搜索
——2.实现启发式搜索的关键要素〔2〕启发式函数的强弱及其影响h(n)接近h*(n)的程度——衡量启发式函数的强弱h(n)<h*(n)且差距较大时,OPEN表中节点排序的误差较大,h(n)过弱,产生较大的搜索图;h(n)>h*(n),h(n)过强,A算法失去可采用性,不能确保找到最短解答途径;h(n)=h*(n)是最理想的,OPEN表中节点排序没有误差,可以确保产生最小的搜索图,搜索到最短解答途径;无法设计A*算法搜索问题解答的关键h(n)在满足h(n)≤h*(n)的条件下,越大越好!2024/1/22143启发式搜索
——2.实现启发式搜索的关键要素〔2〕启发式函数的强弱及其影响定理:处理同一问题的两个A*算法A1和A2,假设h1(n)≤h2(n)≤h*(n)且g1(n)=g2(n)那么t(A1)≥t(A2)其中,h1、h2分别是算法A1、A2的启发式函数,t指示相应算法到达目的形状时搜索图含的节点总数。【证明:<人工智能上册>陆汝钤P250〕】八数码游戏:w(n)≤p(n)≤h*(n)p(n)扩展出的节点总数≤t(w(n))2024/1/22144迭代加深A*算法由于A*算法把一切生成的节点保管在内存中,所以A*算法在耗尽计算时间之前普通早曾经把空间耗尽了。目前开发了一些新的算法,它们的目的是为了抑制空间问题。但普通不满足最优性或完备性,如迭代加深A*算法IDA*、简化内存受限A*算法SMA*等。下面简单引见IDA*算法。2024/1/22145迭代加深搜索算法,它以深度优先的方式在有限制的深度内搜索目的节点。在每个深度上,该算法在每个深度上检查目的节点能否出现,假设出现那么停顿,否那么深度加1继续搜索。而A*算法是选择具有最小估价函数值的节点扩展。2024/1/22146迭代加深A*搜索算法IDA*是上述两种算法的结合。这里启发式函数用做深度的限制,而不是选择扩展节点的排序。2024/1/22147迭代加深A*算法ProcedureIDA*算法 Begin(1)初始化当前的深度限制c=1(2)把初始节点压入栈;并假定(3)While栈不空桥doBegin 弹出栈顶元素nIfn=goal,Then终了,前往n以及从初始节点到n的途径ElsedoBeginForn的每个子节点If,Then把压入栈Else EndforEndEndWhile(4)If栈为空并且,Then停顿并退出(5)If栈为空并且,Then,并前往2End2024/1/22148IDA*算法和A*算法相比,主要优点是对于内存的需求。A*算法需求指数级数量的存储空间,由于没有深度方面的限制。而IDA*算法只需当节点n的一切子节点的小于限制值c时才扩展它,这样就可以节省大量的内存。另一问题是当启发式函数是最优的时候,IDA*算法和A*算法扩展一样的节点,并且可以找到最优途径。特点2024/1/22149启发式搜索启发式知识指点OPEN表排序的普通图搜索:全局排序——对OPEN表中的一切节点排序,使最有希望的节点排在表首。A算法,A*算法〔掌握!〕部分排序——仅对新扩展出来的子节点排序,使这些新节点中最有希望者能优先取出调查和扩展;爬山法〔了解,对深度优先法的改良〕;2024/1/22150简单的搜索战略:g(n)≡0,f(n)=h(n),部分排序——只排序新扩展出来的子节点,即部分排序简单易行,适用于不要求最优解答的问题求解义务。1〕爬山法——实现启发式搜索的最简一方法。类似于人爬山——只需好爬,总是选取最陡处,以求快速登顶。求函数极大值问题——非数值解法,依赖于启发式知识,试探性地逐渐向顶峰逼近适用于能逐渐求精的问题。爬山法特点:只能向上,不准后退,从而简化了搜索算法;表达在:*从当前形状节点扩展出的子节点〔相当于找到上爬的途径〕中,将h(n)最小的子节点〔对应于到顶峰最近的上爬途径〕作为下一次调查和扩展的节点,其他子节点全部丢弃。不需设置OPEN和CLOSE表,由于没有必要保管任何待扩展节点;爬山法对于单一极值问题〔登单一山峰〕非常有效而又简便,对于具有多极值的问题无能为力——会错登上次顶峰而失败:不能到达最顶峰。回溯战略和爬山法2024/1/2215110J(0,1)用梯度下降算法最小化代价函数J(0,1)2024/1/2215201J(0,1)2024/1/221532024/1/221542〕回溯战略可以有效地抑制爬山法面临的困难——保管了每次扩展出的子节点,并按h(n)值从小到大陈列。相当于爬山的过程中记住了途经的岔路口——途径搜索失败时回溯〔后退〕,向另一途径方向搜索回溯战略和爬山法2024/1/221552〕回溯战略递归过程——实现回溯战略的有效方式算法名为BACKTRACK(n),参数n为当前被扩展的节点,初次调用时n即为初始形状节点s;分两个部分:*判别当前节点n的形状,*作搜索任务——扩展节点n,递归调用该算法,处置前往结果。回溯战略和爬山法2024/1/22156令PATH、SNL、n、n'为部分变量:·PATH--节点列表,指示解答途径;·SNL--当前节点扩展出的子节点列表;·MOVE-FIRST(SNL)--把SNL表首的节点移出,作为下一次要加以扩展的节点;·n、n‘--分别指示当前调查和下一次调查的节点。该递归过程的算法就取名为BACKTRACK(n),参数n为当前被扩展的节点,算法的初次调用式是BACKTRACK(s),s即为初始形状节点。算法的步骤如下:〔1〕假设n是目的形状节点,那么算法的本次调用胜利终了,前往空表;〔2〕假设n是失败形状,那么算法的本次调用失败终了,前往'FAIL';〔3〕扩展节点n,将生成的子节点置于列表SNL,并按评价函数f(k)=h(k)的值从小到大排序〔k指示子节点〕;〔4〕假设SNL为空,那么算法的本次调用失败终了,前往'FAIL';〔5〕n'=MOVE-FIRST(SNL);〔6〕PATH=BACKTRACK(n');〔7〕假设PATH='FAIL',前往到语句〔4〕;〔8〕将n'加到PATH表首,算法的本次调用胜利终了,前往PATH。2024/1/221572〕回溯战略三种失败形状:不合法形状〔如传教士和野人问题中所述的那样〕旧形状重现〔如八数码游戏中某一棋盘规划的重现,会导致搜索算法死循环〕,形状节点深度超越预定限制〔例如八数码游戏中,指示解答途径不超越6步〕。回溯条件失败形状,由算法第〔2〕句指示;搜索进入“死胡同〞,由该算法的第(4)句定义。回溯战略和爬山法2024/1/221582〕回溯战略解答途径的生成——从相应于目的形状节点的空表开场,递归前往PATH。影响回溯算法效率的关键要素——回溯次数。回溯——搜索到失败形状时的一种弥补行为,准确选择下一步搜索调查的节点——大幅度减少甚至防止回溯。设计好的启发式函数h(n)是至关重要的。回溯战略和爬山法2024/1/22159问题归约问题归约是人求解问题常用的战略:把复杂的问题变换为假设干需求同时处置的较为简单的子问题后再加以分别求解只需子问题全部处理时,问题才算处理;问题的解答由子问题的解答结合构成。本节主要内容:问题归约的描画〔了解〕与或图搜索的根本过程〔了解〕与或图的启发式搜索〔掌握〕2024/1/22160问题归约法
〔ProblemReductionRepresentation〕子问题1子问题n原始问题子问题集本原问题2024/1/22161问题归约可以用三元组表示:〔S0,O,P〕,其中S0是初始问题,即要求解的问题;P是本原问题集,其中的每一个问题是不用证明的,自然成立的,如公理、知现实等,或已证明过的问题;O是操作算子集,它是一组变换规那么,经过一个操作算子把一个问题化成假设干个子问题。2024/1/22162问题归约表示方法就是由初始问题出发,运用操作算子产生一些子问题,对子问题再运用操作算子产生子问题的子问题,这样不断进展到产生的问题均为本原问题,那么问题得解。2024/1/22163看如下符号积分问题: 初始问题——∫f(x)dx 变换规那么——积分规那么 本原问题——可直接求原函数和积分,如∫sin(x)dx,∫cos(x)dx等。 一切问题归约的最终目的是产生本原问题。2024/1/22164
符号积分问题
∫〔sin3x+x4/(x2+1)〕dx
=∫sin3xdx+∫(x4/(x2+1))dx
=∫-(1-cos2x)dcosx+∫(x2-1+1/(1+x2))dx
=(∫-dcosx+cos2xdcosx)+(∫x2dx-∫dx+∫(1/(1+x2))dx〕
=-cosx+cos3x/3+x3/3-x+arctgx
2024/1/22165分子构造识别问题
如何区分分子式一样但分子构造不同的有机化合物成为重要而又困难的问题。著名的专家系统DENDRAL能用于有效地识别分子构造,该系统建立了一套重写规那么去把分子式重写为原子数较少的分子式和原子间结合关系的混合构造2024/1/22166问题归约的本质:从目的(要处理的问题)出发逆向推理,建立子问题以及子问题的子问题,直至最后把初始问题归约为一个平凡的本原问题集合。2024/1/22167运用问题归约战略得到的形状空间图,也称为“与或图〞逻辑“与〞关系——用圆弧将几条节点间关联弧衔接在一同表示问题分解为子问题;子问题的形状结合起来构成问题形状。子问题全部处理才会导致问题的处理;逻辑“或〞关系:①问题可以有多种分解方式;②问题〔子问题〕能够激活多个形状变化操作;只需一种分解方式或形状变化操作能导致最终的解答胜利即可;导致多个能够的解答。与或图2024/1/22168用AND-OR图把问题归约为子问题交换集合。如,假设问题A既可经过问题C1与C2,也可经过问题C3、C4和C5,或者由单独求解问题C6来处理,如以下图所示。图中各节点表示要求解的问题或子问题。与或图2024/1/22169梵塔问题问题描画:初始形状下三个盘按A、B、C顺序堆放在1号柱子上;目的形状下三个盘以同样次序顺序堆放在3号柱子上;盘子的搬移规那么:每次只能搬一个盘子;较大盘不能压放在较小盘之上;CAB初始形状(111)目的形状(333)CAB132132与或图2024/1/22170梵塔问题——形状空间图(1,1,1)(3,3,3)(1,1,1)(2,2,1)(2,2,1)(2,2,3)(2,2,3)(3,3,3)(2,2,1)132CAB(2,2,3)123ABC目的形状(333)CAB1322024/1/22171梵塔问题——形状空间图(1,1,1)(3,3,3)(1,1,1)(2,2,1)(2,2,1)(2,2,3)(2,2,3)(3,3,3)(1,1,1)(3,1,1)(3,2,1)(2,2,1)(3,1,1)(3,2,1)(1,2,3)(1,3,3)(2,2,3)(1,2,3)(1,3,3)(3,3,3)2024/1/2217
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 纤维素纳米晶纤维应用-深度研究
- 基于大数据的归纳推理-深度研究
- 系统占用量优化-深度研究
- 航空物流信息安全-深度研究
- 野生植物种子保存技术-深度研究
- 矿化过程模拟计算-深度研究
- 广东建设职业技术学院《物联网原理及应用》2023-2024学年第二学期期末试卷
- 满洲里俄语职业学院《工业机器人设计》2023-2024学年第二学期期末试卷
- 上海师范大学《建筑照明技术A》2023-2024学年第二学期期末试卷
- 沈阳建筑大学《治金机械设备》2023-2024学年第二学期期末试卷
- 拆除工程施工拆除进度安排
- 绝缘技术监督上岗员:厂用电设备技术监督考试资料一
- 卫生监督村医培训课件
- 动物的感觉器官
- 猎头项目方案
- 2024年家庭教育指导师考试(重点)题库及答案(含各题型)
- 直肠癌术后的康复护理
- 性商老师课程培训课件
- 拆除锅炉可行性报告
- 二级精神病医院评审标准实施细则
- 全套ISO45001职业健康安全管理体系文件(手册及程序文件)
评论
0/150
提交评论