博弈树的搜索课件.ppt

上传人:小飞机 文档编号:2144695 上传时间:2023-01-18 格式:PPT 页数:17 大小:176KB
返回 下载 相关 举报
博弈树的搜索课件.ppt_第1页
第1页 / 共17页
博弈树的搜索课件.ppt_第2页
第2页 / 共17页
博弈树的搜索课件.ppt_第3页
第3页 / 共17页
博弈树的搜索课件.ppt_第4页
第4页 / 共17页
博弈树的搜索课件.ppt_第5页
第5页 / 共17页
点击查看更多>>
资源描述

《博弈树的搜索课件.ppt》由会员分享,可在线阅读,更多相关《博弈树的搜索课件.ppt(17页珍藏版)》请在三一办公上搜索。

1、博弈树搜索,所谓双人完备信息,就是两位选手对垒,轮流走步,这时每一方不仅都知道对方过去已经走过的棋步,而且还能估计出对方未来可能的走步。对弈的结果是一方赢(另一方则输),或者双方和局。这类博弈的实例有:一字棋、余一棋、西洋跳棋、国际象棋、中国象棋、围棋等。对于带机遇性的任何博弈,因不具有完备信息,不属这里讨论范围,但有些论述可推广到某些机遇博弈中应用。,博弈问题可以用产生式系统的形式来描述,例如中国象棋,综合数据库可规定为棋盘上棋子各种位置布局的一种描述,产生式规则是各类棋子合法走步的描述,目标则可规定为将(帅)被吃掉,规则作用于数据库的结果便生成出博弈图或博弈树。下面举一个简单的例子说明博弈

2、问题可用与或图表示,并讨论搜索策略应考虑的实际问题。,中国象棋,一盘棋平均走50步,总状态数约为10的161次方。假设1毫微秒走一步,约需10的145次方年。结论:不可能穷举。,博弈树是与/或树,双方都希望自己能够获胜。因此,当任何一方走步时,都是试图选择对自己最为有利,而对另一方最为不利的行动方案。从MAX方的观点看,在博弈过程的每一步,可供自己选择的行动方案之间是“或”的关系,原因在于选择哪个方案完全是由自己决定的;而可供MIN选择的行动方案之间则是“与”的关系,原因是主动权掌握在MIN手里,任何一个方案都有可能被MIN选中,MAX必须防止那种对自己最为不利的情况的发生。这样,从选手的角度

3、看,博弈树就是一棵与或树,其特点是:(l)博弈的初始状态是初始节点;(2)博弈树中的“或”节点和“与”节点逐层交替出现(3)整个博弈过程始终站在某一方的立场上,所有能使自己一方获胜的终局都是本原问题,相应的节点是可解节点;所有使对方获胜的终局都是不可解节点。,极小极大搜索过程,极小极大搜索策略是考虑双方对弈若干步之后,从可能的走步中选一步相对好棋的走法来走,即在有限的搜索深度范围内进行求解。为此要定义一个静态估计函数f,以便对棋局的势态(节点)作出优劣估值,这个函数可根据势态优劣特征来定义(主要用于对端节点的“价值”进行度量)。一般规定有利于MAX的势态,f(p)取正值,有利于MIN的势态,f

4、(p)取负值,势均力敌的势态,f(p)取0值。若f(p),则表示MAX赢,若f(p),则表示MIN赢。下面的讨论规定:顶节点深度d0,MAX代表程序方,MIN代表对手方,MAX先走。,极小极大搜索过程,极大极小过程步骤:(1)以当前考察的态势P为根节点,生成指定深度的博弈树。(2)根据静态估计函数f计算各叶节点的估计值。(3)自底向上计算各个非叶节点的估计值,计算的方法是MAX节点取其子节点的最大值,MIN节点取其子节点的最小值。(4)将根节点的倒推值对应的策略作为当前的最佳策略。,极小极大过程,0,-3,3,-3,-3,-2,1,-3,6,-3,0,3,1,6,0,1,1,极大,极小,一字棋

5、游戏,设有一个三行三列的棋盘,两个棋手轮流走步,每个棋手走时往空格上摆一个自己的棋子,谁先使自己的棋子成三子一线为赢。设程序方MAX的棋子用()表示,对手MIN的棋子用()表示,MAX先走。静态估计函数f(p)规定如下:1.若 P是 MAX的必胜局,则 e(P)=+;2.若 P是 MIN的必胜局,则 e(P)=-;3.若P对MAX、MIN都是胜负未定局,则 e(P)=e(+P)e(-P)其中,e(+P)表示棋局 P上有可能使 成三子一线的数目;e(-P)表示棋局 P上有可能使 成三子一线的数目。,一字棋游戏,f(+P)=6,f(P)=f(+P)-f(P)=2,f(-P)=4,例,在搜索过程中,

6、具有对称性的棋局认为是同一棋局,以大大减少搜索空间。,用极大极小搜索方法为MAX寻找第一步棋的走法。(搜索深度为2),-剪枝,极大极小过程是先生成与/或树,然后再计算各节点的估值,即生成节点和计算估值这两个过程是分离的。在搜索时,需要生成规定深度内的所有节点,因此搜索效率较低。以棋盘为1515大小的五子棋为例,人机对弈,用极大极小搜索算法,搜索深度为3时,计算机(配 置:CUP赛场1.7 G,内存DDR266 256 M)每走1步要用10 min,搜索的节点数超过了107个;而搜索深度为4时,每走1步要用10个多小时,搜索节点数超过了2109个。如果能边生成节点边对节点估值,并根据一定的条件,

7、提前剪去一些没用的分枝,那么就可以有效提高搜索效率。在这种思想的基础上,人们提出了-剪枝技术。,-剪枝技术,采用有界深度优先策略,当生成规定深度的节点时,计算叶节点的静态估值,并倒推非端节点的估值。根据倒推结果,在非端节点的向下分枝中,剪掉那些目前未知,但无论如何都不会改变非端节点倒推值的未扩展分枝。用剪枝技术,搜索深度为3时,每走1步不到2 min,搜索的节点数小于1.5106个;而搜索深度为4时,每走1步要用160 min,搜索的节点数小于2108个。,-值为MAX节点(“或”节点)倒推值的下确界 当前子节点中的最小倒推值 值为MIN节点(“与”节点)倒推值的上确界 当前子节点中的最大倒推值,剪枝:若任一MIN节点(“与”节点)的值小于或等于其父节点(MAX节点(“或”节点)的值(即不能升高其父节点的值),则可中止该MIN节点以下的搜索过程。这个MIN节点最终的倒推值就设定为这个值剪枝:若任一MAX节点(“或”节点)的值大于或等于其父节点(MIN节点(“与”节点)的值(即不能降低其父节点的值),则可以中止该MAX节点以下的搜索过程。这个MAX节点最终的倒推值就设定为这个值。,S0,A,B,C,D,F,G,H,E,I,J,K,L,M,N,P,Q,R,T,4,8,6,1,5,8,0,-6,4,4,1,4,4,5,5,4,4,0,0,-6,=0,0,4,-剪枝例,S,1,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号