[互联网]高级搜索技术.pptVIP

  1. 1、本文档共69页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
[互联网]高级搜索技术

局面? Hash key ? Table address 其它 地址冲突? 非常好? ?错误 冲突处理 其它 1)实践中,采用简单的覆盖策略,不采用“再hash”等冲突处理。 2)采用该策略的依据。 1)局部性原理。 2)有助于使hash表的访问、存储速度达到最佳。 固定深度搜索 其它 水平效应 其它 估值的补充——平静搜索 其它 估值的补充——延伸搜索 其它 谢谢聆听! ? 封面 123334 * 当分枝因子为R,当前迭代的最大深度为d时,DFID总的是一种猜测初始窗口的搜索。基于事前猜测的返回值val,预设初始窗口为(val-?,val+?)。 基于fail-soft alpha-beta搜索。执行该搜索可有三种情况: a)返回值v落在窗口(val-?,val+?),v即为所求的值 b)返回值vval-?时,用窗口(-?, val-?)重搜 c)返回值v=val + ?时,用窗口(val + ?, +? )重搜 若能正确猜测真值所在的窗口,搜索效率便有所提高。 算法简介 渴望搜索 伪代码描述 渴望搜索 Val和?对搜索效率的影响。 提升算法效率的最大障碍在于重搜的风险。涉及: a)Val如何取值? b)?如何取值? 效率分析 渴望搜索 三 主要变异(极小窗口)搜索 极小窗口(或空窗口): a)设估值均为整数,称(v, v+1)为极小窗口; b)搜索的结果(设返回值为val)要么Fail-low(val=v),要么Fail-high(val v, 即val = v+1) c)既然窗口越小发生剪枝的概率就越高,那么,极小窗口可使得剪枝效率发挥到极致。 极小窗口(或空窗口) 极小窗口搜索 极小窗口的用法: a)某节点A的窗口为(alpha, beta),想验证“A的所有兄弟节点都不比A强”,只需构造极小窗口(alpha, alpha+1)来搜索A的兄弟们; b)某节点B的窗口为(alpha, beta),想验证其某个儿子是否“可以引发剪枝”,只需构造极小窗口(beta-1, beta)来搜索该儿子。 极小窗口的用法 极小窗口搜索 主要变异搜索(PVS,Principal Variation Search)/极小窗口搜索(Minimal Window Search)的基本思想: 对于任何一个节点,PVS总是假设其第一个儿子s0是最好的,直到证明某个儿子sn比s0还好。然后,再假设sn比其它儿子都好…… 注意:在博弈程序中,由于采用迭代加深、启发式算法等优化方法,着法生成、选择和排序机制能够让第一个儿子以很大的概率可成为最佳着法。 算法思想 极小窗口搜索 具体地,总是以全窗口(alpha, Beta)搜索第一个儿子s0 ,设得到的值为v,以窗口(v, v+1)去搜索其余的儿子。对于任意一个儿子si,若结果为Fail-low,则证明它不如s好,接着以窗口(v, v+1)去搜si +1;否则,必定是Fail-high,这说明si好于s0,这时,需要以构造新的全窗口(v, Beta),并用该窗口重搜si ,设得到的值为v′,再用( v′, v′ +1)去搜后面的儿子…直到所有的儿子都得到搜索,算法结束。 算法的自然语言描述 极小窗口搜索 举例 极小窗口搜索 总结 极小窗口搜索 1)极小窗口搜索是非常优秀的alpha-beta搜索算法,是复杂棋类中应当优先考虑的算法。 2)极小窗口、渴望窗口、迭代加深搜索经常组合到一起使用。 3)有一个类似的算法,称为NegaScout。 4)另外,MTD(f)也是一个优秀的应用极小窗口搜索的算法。它的主要思想属于典型的分治,类似于折半查找。该算法应用的时候有一定的限制;其优点是易于并行计算。 四 Null Move搜索 剪枝 Null Move搜索 1)验前剪枝(Forward Pruning)。 如:Null Move剪枝 2)验后剪枝(Backward Pruning) 如:alpha-beta剪枝 思想 Null Move搜索 1)一般而言,走棋总比不走棋要好,不走棋就是一步null move。 2)将null move视为当前局面的一个着法(即使不走棋是非法的),且若该着法所导致的子树的值为v,应该有v??。 3)若?? v,则说明???,故应立刻剪枝。 Null move的使用 Null Move搜索 1)Null-move的条件 被将军时不能用null move;不能连续null move;距离horizon太近(如3ply)不宜用null move;本

文档评论(0)

qiwqpu54 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档