人工智能搜索策略

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
缺点是对任何状态不是总能选得最优解,并且 具有一定的局限性,例如:
125 74
863
123 74
865

初始状态
目标状态
• 图 八数码题的爬山局部极大值
• 初始状态处于局部极大值,无法搜索。
3.3 回溯策略 回溯策略是试探性的控制方式,需要记住一条路径。 • 例:皇后问题
ຫໍສະໝຸດ BaiduQ Q
Q Q
()
Q ()
搜索策略: 不在位将牌个数:当前状态与目标状态对应
位置逐一比较后有差异的将牌个数。
计算举例:
123 283 81 6 44 7 55 76
有差异的将牌个数=4
我们定义一个描述状态的函数-W(n),其中, n表示任一状态,W(n)的值为不在位将牌个数。
初始状态的函数值为-4,目标状态的函数值 为0。爬山法选取规则的原则:选取使用规则后 生成的新状态的函数值有最大增长的规则,如 没有使函数值增长的规则,则选取使函数值不 减少的规则,若这种规则也没有,则过程停止。
Q Q
Q
() ((1,1)) ((1,1) (2,3)) ((1,1) (2,4)) ((1,1) (2,4) (3.2))
Q Q
Q () ((1,1))
((1,1) (2,3)) ((1,1) (2,4))
((1,1) (2,4) (3.2))
() ((1,1)) ((1,1) (2,3)) ((1,1) (2,4)) ((1,1) (2,4) (3.2))
• 建立了问题描述之后,就可以通过控制策略, 对状态空间进行搜索,求得一个解。
3.1.3 控制策略分类
控制策略分为两类:不可撤回的方式和试探方式 不可撤回的方式:选择一条适用的规则并应用它时, 不必为以后重新考虑做准备。 试探方式:选择一条适用的规则执行,但需为以后 应用另一条规则做准备。 试探方式也可分为两种:回溯式和图搜索式 回溯式:在选择一条规则时要建立一个回溯点,当 计算遇到困难,不能得到一个解时,使状态返回原 来的回溯点上,从那里改选另一条可应用规则。 图搜索:同时记住几个规则序列及其产生的结果。
任何类型的数据结构都可以描述问题的状态:符 号串、向量、二维数组、树、表格等。 起始状态:现状或已知条件 目标状态:一个或多个要达到的目标 中间状态:求解过程中的状态 状态空间:所有可能的状态集合 问题求解:从起始状态出发,经过一系列操作 交换,达到目标状态,即状态空间搜索问题。 状态转换:靠规则实现。 选择状态描述的原则:1.状态数目尽量要少。
第三章 状态空间搜索策略
3.1状态空间表示
被求解的问题: 一类容易形式化,但复杂度较高,可利用的领域知 识较少的问题。 一类复杂度较低,可利用的领域知识较多,但不容 易形式化的问题。 第一类更适于使用状态空间法求解。 状态空间法:找出所求问题的各种状态,通过对可 能的状态空间的搜索求得一个解。
3.1.1 状态的描述
• 设:not-visit(x,L): x是未去过的城市,不在表L中 为真.
• visit-all(L):所有城市名已在表中为真 • Move(x,L):将x加入表L中,表示已到x。 • 规则集: • 规则1:IF not-visit(x,L) THEN Move(x,L) • 规则2:IF visit-all(L) THEN Move(A,L)
((1,2))
Q Q
Q
((1,1) (2,3)) ((1,1) (2,4))
((1,2) (2,4))
((1,1) (2,4) (3.2))
使用爬山法过程如下:
283 164 75
283 14 765
23 184 765
23 184 765
123 84
765
123 84 765
283 14
765
813 24
765
83 214 765
83 214 765
813 24 765
13 824 765
13 824 765
123 84 765
• 从上述过程可知,用不可撤回方式(爬山策略) 可找到通往目标的路径,控制简单是其优点,
2.简单,易于操作。
• 3.1.2 举例
• 推销员问题
• 图为五城市推销员问题,求从A出发经其它几个 城市B、C、D、E回到A的最短路径。
• 综合数据库可用作为城市名的字母组成的表L来 表示,初始只包括城市A。


7 • B 10
• A• 13 7
•E

10 6•C 10 9 6

5 •D
图 推销员问题
Q ()
((1,1))
((1,2))
((1,1) (2,3)) ((1,1) (2,4))
((1,1) (2,4) (3.2))
() ((1,1))
((1,2))
Q Q
((1,1) (2,3)) ((1,1) (2,4))
((1,2) (2,4))
((1,1) (2,4) (3.2))
() ((1,1))
((1,1))
() ((1,1)) ((1,1) (2,3))
Q Q
Q () ((1,1))
((1,1) (2,3))
() ((1,1)) ((1,1) (2,3)) ((1,1) (2,4))
Q Q
() ((1,1)) ((1,1) (2,3)) ((1,1) (2,4)) ((1,1) (2,4) (3.2))
3.2 不可撤回方式 这种方式是利用问题给出的局部知识来决定如何选取 规则,不必考虑撤回已用的规则。这种控制策略的优 点是控制简单,是启发式策略。
3.2.1爬山法
爬山法就是利用高度随位置变化的函数引导爬山。
爬山法只有在登单峰的山时才有效,如遇到多峰、山 脊或平顶时,并不总是有效。
我们以八数码游戏为例加以说明。
在3×3的棋盘上,有八个将牌和一个空格,每一个将 牌都标有1—8中的某一个数码,空格周围的将牌可 向空格移动,求解的问题是:有一个初始布局和一 个目标布局,问如何移动将牌,从初始布局达到目 标。
综合数据库:我们用二维数组来表示3×3 的棋盘。
283
123
164
84
75
765
初始状态 目标状态
规则集合:可用四条产生式规则代表四种走法: 空格左移、空格上移、空格右移、空格下移 设用Bij表示表中第i行第j列的数码,u、v表示空格所 在的行列数,空格用0表示,则空格左移的规则定义 如下: IF v-1≧1 THEN Buv︰=Bu(v-1)∧Bu(v-1)=0
相关文档
最新文档