网站大量收购独家精品文档,联系QQ:2885784924

第五章对抗搜索.ppt

  1. 1、本文档共10页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第五章对抗搜索资料

截断搜索 用if CUTOFF-TEST(state, depth) then return EVAL(state)代替?–?算法中TERMINAL-TEST所在的两行,或 使用迭代搜索:当时间用完时,程序就返回目前完成最深的搜索所选择的招数。 由于评价函数的近似性,上述方法可能导致错误。 (a)黑棋有1个马、2个 兵的优势,能够取胜。 (b)黑棋会被白棋吃掉皇后,从而失败。 截断搜索(续) 需要更为复杂的截断测试,评价函数应该只用于那些静止的棋局(静态棋局)。 非静止的棋局可以进一步扩展直到静止的棋局,这种额外的搜索称为静态搜索。 截断搜索(续) 地平线效应:指对手招数导致我方严重损失并且从理论上基本无法避免。 单步延伸是避免地平线效应的一种策略 这样做可能超过深度限制,但由于单步延伸很少,不会增加太多开销。 对这两节所介绍的技术的总结 假设已经实现: 国际象棋的评价函数 使用静止搜索的合理截断测试 一个很大的调换表 那么在“最新的PC”上可每秒生成和评价约一百万个节点,允许我们在标准时间控制下对每步棋可搜索约2亿个节点,而 国际象棋的分支因子平均为35,355约为5亿。 第五章、对抗搜索 博弈中的优化决策 ?–?剪枝:允许我们忽略那些不影响最后决定的部分搜索树 不完整的实时决策 包含几率因素的游戏 部分可观察博弈 博弈程序的当前发展水平 计算机科学技术学院 MAX-VALUE(state)=maxaction aMIN-VALUE(RESULT(a,state)) * 正线性变换 * 第五章 对抗搜索 主讲:徐缙 第五章、对抗搜索 在有其它智能体计划与我们对抗的世界中如何预先计划 博弈的概念 数学中的博弈论把任何多智能体环境看成是一种博弈游戏,其中每个智能体对其它智能体的影响是“显著的”,与智能体是合作的还是竟争的无关。 AI中的博弈通常指有完整信息的、确定性的、轮流行动的、两个游戏者的零和游戏。 游戏因为难解而令人感兴趣! 第五章、对抗搜索 博弈中的优化决策 ?–?剪枝:允许我们忽略那些不影响最后决定的部分搜索树 不完整的实时决策 包含几率因素的游戏 部分可观察博弈 博弈程序的当前发展水平 例子:MAX和MIN 问题的表述:MAX先行,然后两人轮流出招,直到游戏结束。在游戏的最后,给优胜者加分,给失败者罚分。 初始状态,包括棋盘局面和确定该哪个游戏者出招。 ACTION(s)后继函数,返回(move, state)。 TERMINAL-TEST(s)终止测试 UTILITY(s,p)效用函数:对终止状态给出一个数值。 例子:井子棋游戏-博弈树 最优策略 最优解是导致取胜的终止状态的一系列招数 但,在游戏中MIN还有发言权 在对手不犯错误时,最优策略能够导致至少不比任何其它策略差的结果。 一颗两层的博弈树 最优策略的确定 通过检查每个节点的极小极大值来决定,记为MINMAX-VALUE(n)。 极小极大值的递归算法 多人游戏中的最优决策 第五章、对抗搜索 博弈中的优化决策 ?–?剪枝:允许我们忽略那些不影响最后决定的部分搜索树 不完整的实时决策 包含几率因素的游戏 部分可观察博弈 博弈程序的当前发展水平 ?–?剪枝 极小极大值搜索的时间复杂度是O(bm) 剪枝:剪裁掉那些不影响最后决策的分支。 一般原则:考虑在树中某处的节点n,如果游戏者在n的父节点或上层的任何节点有一个更好的选择m,那么在实际的游戏中就永远不会到达n,即n被剪裁掉。 例子 ?–?剪枝:如果m比n好,我们就不会走到n。 ?–?剪枝 ?=到目前为止我们在路径上的任意选择点发现的MAX的最佳选择 ?=到目前为止我们在路径上的任意选择点发现的MIN的最佳选择 ?–?剪枝的效率很大程度上取决于检查后继的顺序 如果能够先检查那些可能最好的后继,那么算法的时间复杂度为O(bd/2)。 ?–?剪枝算法 处理搜索树中的重复状态 在游戏中重复状态的频繁出现往往是因为调换—导致同样棋局的不同行棋序列的排列 例如,[a1, b1, a2, b2]和[a2, b2, a1, b1]都结束于同样的棋局。 解决办法:第一次遇见某棋局时将对它的评价存储在哈希表中(该哈希表称为调换表)。 第五章、对抗搜索 博弈中的优化决策 ?–?剪枝:允许我们忽略那些不影响最后决定的部分搜索树 不完整的实时决策 包含几率因素的游戏 部分可观察博弈 博弈程序的当前发展水平 不完整的实时决策:对MINIMAX或?–?算法的改进 ?–?算法依然要搜索至少一部分空间直到终止状态,这样的搜索不现实。 Shannon提出: 用估计棋局效用值的启发式评价函数EVAL代替效用函数 用可以决策什么时候运用EVAL的截断测试取代终止测试 不完整的实时决策 因此得到如下的启发式极小极大值,s为状态

文档评论(0)

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

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

1亿VIP精品文档

相关文档