基本搜索技术

基本搜索技术

ID:20124934

大小:121.00 KB

页数:4页

时间:2018-10-08

基本搜索技术_第1页
基本搜索技术_第2页
基本搜索技术_第3页
基本搜索技术_第4页
资源描述:

《基本搜索技术》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、第四章基本搜索技术假定你的房间里铺有100块地板,其中一块底下有一块金砖,而另一块底下有一颗地雷。如果你翻开有金砖的那块地板,你就可以成为百万富翁;如果你翻开有地雷的那块地板,你就可以到地狱旅行。在经历了长期煎熬之后,你决定将这些地板逐一翻开,以找寻百万富翁的生活。这个寻找命运答案的过程,就是搜索(Search)。而将地板逐一翻开的搜索方法,叫作盲目搜索(BlindSearch)。在这个盲目搜索的过程中,随着未翻开地板数目的减少,终将会找到一个答案。又假定你还有一位朝夕相伴的室友,同你一样起了这个念头。于是,你们商定每人每

2、天可以交替翻开一块地板。这样当一个人碰到地雷时,他最亲密的朋友就可以得到剩下的金砖。所以你们各自在心中祝愿对方黄泉路上一帆风顺。最多50天,命运的答案就会完全揭晓。你们翻开了98块地板后仍一无所获,在最后的时刻,你犹豫了,到底要不要翻开这一块决定命运的地板?你感到同你竞争的并非你的室友,而是魔鬼的化身。这个同魔鬼的化身交战的过程就叫作博弈。而敌对双方交替动作的搜索叫作对抗性搜索(AdversarialSearch)。4.1博弈树设想下象棋的情形,两人对弈,我们将其中一位叫做甲,另一位叫做乙。假定现在该甲走棋,甲可以有40种

3、走法(不论好坏);而对甲的任一走法,乙也可以有与之相对的若干种走法。然后又轮到甲走棋,对乙的走法甲又有若干种方法应对……如此往复。显然,我们可以依此构建一棵博弈树,将所有的走法罗列出来。在这棵树的根部是棋局的初始局面。根的若干子节点则是由甲的每一种可能走法所生成的局面,而这些节点的子节点则是由与之相对的乙的每一种可能走法所生成的局面……在这棵树的末梢,是结束的棋局,甲胜或者乙胜或者是双方都无法取胜的平局。图4.1极为简化地示意了博弈树的概要。图中省略号的地方指未能列出的大量分枝。如果我们令甲胜的局面值为WIN,乙胜的局面值

4、为LOST,而和局的值为DRAW。当轮到甲走时,甲定会选择子节点值为WIN或DRAW(如果没有值为WIN的子节点的话)的走法;而轮到乙时,乙则会选择子节点值为LOST或DRAW(如果没有值为LOST的子节点的话)的走法。对于中间节点的值可以有如下计算方法:如果该节点所对应的局面轮到甲走棋,则该节点的值是其所有子节点中值最佳(对甲而言)的一个的值;如果该节点所对应的局面轮到乙走棋,则该节点的值是其所有子节点中值最差(对甲而言)的一个的值。这样看来从这棵树的叶子节点倒推向根部,就可以得出所有节点的值。双方就可以从其所面临的棋局

5、中选择一步好棋。然后一步步走向胜利。博弈树是从根部向下递归产生的一棵包含所有可能的对弈过程的搜索树,这里称为完全搜索树。NeillGraham形容此过程类似于在一个状态图中寻求从初始状态通向终了状态的过程①。只是状态图搜索仅有一个主体参加,仅是单方面做出的路径选择。而博弈树的搜索则有对立的双方参加,一方只能做出一半选择,而这一半选择的目的是使对方远离其竭力靠近的目标。也就是说状态图搜索是纯粹的或树(ORtree),而博弈树搜索是与或树(AND/ORtree)。①参考文献[2]。图4.1象棋博弈树示意让我们面对一下不幸的实际

6、。那就是,除了极少数非常简单的棋类游戏,大多数棋类游戏,如象棋,我们都没有建立完全搜索树的可能。一方面是因为很多情形根本就到达不了叶子节点,如将一个棋子反复来回走动就可永远循环下去。另一方面,即使我们将循环的情形排除,这棵树上的节点数量也已多到了无法处理的程度。以中国象棋为例,其每一局面可有约20!60种走法。以平均40种走法计,建立一棵(双方各走50步)搜索树就需生成约10160个节点。这远远超出了当今计算机的处理能力。即使生成一个节点仅需10-8秒,生成这棵树也要10140年以上。显然这是不切实际的;也就是说,必须得有

7、其他切合实际的方法。4.1极大极小值算法(MinimaxAlgorithm)②在上面的博弈树中,如果我们令甲胜的局面值为1,乙胜的局面值为-1,而和局的值为0。当轮到甲走时,甲定会选择子节点值最大的走法;而轮到乙时,乙则会选择子节点值最小的走法。所以,对于中间节点的值可以有如下计算方法:如果该节点所对应的局面轮到甲走棋,则该节点的值是其所有子节点中值最大的一个的值。而如果该节点所对应的局面轮到乙走棋,则该节点的值是其所有子节点中值最小的一个的值。对博弈树的这个变化仅仅是形式上的,本质上丝毫未变,但是这个形式更容易推广以运用

8、到一般实际的情形。既然建立整棵的搜索树不可能,那么,为当前所面临的局面找出一步好棋如何?也就是通过少量的搜索,为当前局面选择一步较好的走法。在通常的棋局当中,一个局面的评估往往并不像输、赢、平3种状态这么简单,在分不出输赢的局面中棋局也有优劣之分。也就是说,要用更细致的方法来刻画局面的优劣,而不是仅仅使

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。