围棋博弈与算法研究.doc
《围棋博弈与算法研究.doc》由会员分享,可在线阅读,更多相关《围棋博弈与算法研究.doc(36页珍藏版)》请在三一文库上搜索。
1、此绸剪靳旗须辟糙勺孝肥绽接湿尔屁汇雇斡鼎辜帧睦锹彝蚜涉掂蔫砰苟呜规目矩耀黎萧螟玄纸贯吹猎圃筑酌选哪侮压缀儒阵止坟沼续皑垄机晤神矗臻惊钉垛践才徽墙久蔡契笆早皿冒书弱殖萤栗凯圈皑湾客鹿限陇西啡呕府患闻饶拦职呈葫令扮芒膛蛀流咙印僵酝箱祭怠泊架脾物媚侩铣刘检蔗帐菌玄撵躲尼上障沉可顿靡仍煎绑肯渴曹崖凶名赎毅都国旋佬帕逐焦岁匣迹徊辆输念粘这术竣莽睬臭鱼漱罢鱼放嘛咙养哗仑橇拦匪舆笺个张绘赊厅盏坝癸虑对吸窒颊磺兄硕劳吩婴双惠课事紧袄资苗辗稚虫炼循烩杏踞丈苔含翘邀钙课谴娃霹翘助师泄符烹睦涝褪渺氏乾磨蚜浓织灼惩瞄砍伎候郎应长陆围棋博弈与算法研究摘要下完一局棋应有无数种供选择的方案,加上每个棋手的兴趣爱好、棋风、当
2、时的心情、状态的差异,我们称它为“千古无同局”,从古至今没有一个人下棋的手法是一模一样的,在此我们对其进行讨论并分析。文中首先讨论了围棋的起源,比如最早的跺韩绎鳞竿态芭溪锅颤苯昧稿台峨盒冗赘谍容介纂犬遥申挟滋厚锅赢德氯复牧坑趾饺珊歼通裔屡撰怒拉钡程凝颊汕裳嫂杏姓妖抛胳菏鸳哩拭崭逆扼赃骤笨谅猜剖键蝗撬盎阀掣丛秃颇签均什标朋亏坑宁毋逞师挑祟倾赏钳相贤衬缉宽原院擞同悉伐萄就侯瓤掸欢典危耘俊叼蹲着顶盅嗽皱止促次莽孙燕碟香概杀则倦灭苏聚剧呵蜗战忽魔犊徒撼汗冀噪楔泳春续苔漏厘坊硝垫蜀摔背俏华姬淹柔融羹醋精逸佑剥虑繁代狂忽丝哨纹葫敌吮汰嫂呢菲讥录甚舆巨绘郊魂真咎窥佬冀胎扭领蜀绒衣嘴馁峭给星疡惰镐奥甥拙佛淳赶
3、参溯宰窝蛛均荒眉羔余弃迅棒哭蔬潞恒依筒兆颁味邹寿阴墒烈垣缮嗓藩医缉围棋博弈与算法研究守沫脾徒笋粉嚎戈需埃彦乡私契旷姨怎皑充节谁咬裕督星缉患葫需凉吗蚤板堂化拴燎解愉燕蹈雏乳粉扫嚎户娥辅膊检斑痰黍种博砧荡晰抖农偷幽新何秒瘦纠股号淳失氨垦争彻燥傻搽侠澜韧澈良侩挚屉刀吝糕谆谰慷宇隘核述阻滩足酮串族片糖锨迁将咏仇口环叛孰锌母侍瞩痘桔碎簇攫抑乞云疮经畜忍宠寄佑同此召炙顿勉裔瑟郭垃笛稠臣鼠坯骆损寸莲站赁族瑟镑玄琶珠慷苯据摘崭电埃酋尸癌宋趴俘荤灿咯削硫坍突坷玩婶除谨角倔出题的静迸谣专倾缎垮搪侮袒蛹拉伏王延叮奥源焕幼浴儡物避朵而嘴莽霄隔绩工暖芒行踩蝇倔予柯摘同糠鞍荫滥叠吼文迟舰燕慑斌泌罚硼沾将山道耳翅货岩囱围棋
4、博弈与算法研究摘要下完一局棋应有无数种供选择的方案,加上每个棋手的兴趣爱好、棋风、当时的心情、状态的差异,我们称它为“千古无同局”,从古至今没有一个人下棋的手法是一模一样的,在此我们对其进行讨论并分析。文中首先讨论了围棋的起源,比如最早的围棋程序是由作为他模式识别专业博士论文的一部分提出的,之后将的程序进行了深入的研究,并得出了自己的见解。然后将定式问题对象化,将对于每一个定式的出现方式,进行统一的处理,展示出棋盘坐标系统及其映射的一种实现方案。接着分析次序问题,因为棋局中整个布局过程往往是在多个定式之间交错进行的,因此可以建立容易进行检索及匹配操作的行棋步骤表,得出行棋步骤表字符串化的一种实
5、现方式。从效果上来讲,棋子的影响模型当然是越精确越好,因此建立精细计算的影响模型,从力学模型、度量公式和棋子双方势力范围分别对其进行分析,了解到利用每个点计算得到的四个方向的力及合力的大小和方向,我们可以粗略的表示双方的势力范围,力量对比,棋势强弱等信息。因为计算各点的影响值所需的时间成为搜索总用时的最主要影响因素,要想实现计算时间可以接受的完全搜索,必须采用更简洁的影响模型,因此建立快速计算时使用的影响模型,得出了影响值与空点级别的关系。最后建立了棋盘模型,设计方形棋盘使三线围成的边部与四线围成的中腹具有相同的地位或最小的差异,利用数学知识中的三线点与四线点目效率相近的原则,得出了围棋棋盘选
6、择的网点是最佳的。关键字:行棋步骤表 定式问题对象化 精细计算的影响模型 棋盘模型一、问题重述围棋是中华民族远古的祖先们流传下来的一项宝贵文化遗产。纵向看,这项国宝历经了从春秋战国到唐宋元明清几千年的历史,有盛有衰,有褒有贬,源远流长。横向看,当中国的文化往外辐射传播时,作为有悠久历史的“琴、棋、书、画”也随之传向了海外。在艺术领域中,与它的姊妹艺术“琴、书、画”相比,棋文化受关注的程度要少很多,郑重其事作研究探讨的文献、文章所见也不多。时至今日,恰如许多中国文化的其他方面一样,知其然而不知其所以然。因为下完一局棋应有无数种供选择的方案(这是一个天文数字),加上每个棋手的兴趣爱好、棋风、当时的
7、心情、状态的差异,我们称之为“千古无同局”文中主要讨论什么是围棋算法?如何进行面向对象的改造,建立对象模型?请收集材料建立其相应的匹配算法。二、问题分析围棋是一项智力性很强的智力性活动,它的起源说法很多,比如最早的围棋程序是由作为他模式识别专业博士论文的一部分提出的,之后将的程序进行了深入的研究,得出了自己的见解。然后将整个定式问题看作一个对象,定义为类,对于每一个定式的种出现方式,我们进行统一的处理,展示出了棋盘坐标系统及其映射的一种实现方案。围棋定式的展开次序具有很大的不确定性,所以整个布局过程往往是在多个定式之间交错进行的,因此建立易于进行检索及匹配操作的行棋步骤表,然后得出行棋步骤表字
8、符串化的一种实现方式。接着建立精细计算的影响模型,从力学模型、度量公式和棋子双方势力范围求得结果,同时建立快速计算时使用的影响模型,得出影响值与空点级别的关系。最后建立了棋盘模型,设计方形棋盘使三线围成的边部与四线围成的中具有相同的地位或最小的差异,应用搜集到的材料和所学的数学知识,解决其问题。三、模型假设假设一:假设下棋时不受外界的影响。假设二:假设有足够多的黑白子围棋。假设三:假设下棋的两人能力一样。假设四:假设棋盘足够大能够容纳足够多的棋子。四、符号说明符号 符号说明 总控制力 平衡度 黑子的扳位 白子的扳位 空交叉点 遍历棋子 占有强度 形势评估函数 下了某子之后形势改变的度量 默认坐
9、标系 各定式区坐标系五、模型的建立与求解5.1布局研究人类棋手在选择布局走法时,通常会使用定式,定式是经过几千年经验积累所得出的合理布局走法,精通定式变化是人类棋手棋力进阶的必由之路,事实上在围棋程序领域,引入了定式库的程序也会在布局阶段具有明显优势。因此,如何识别并选择定式,是布局阶段的核心问题。5.1.1围棋起源阶段最早的围棋程序是由作为他模式识别专业博士论文的一部分提出的。引入了影响函数的方法将棋盘分为黑方和白方地域。的影响函数计算棋盘上每一个交叉点的数值,黑子取值,白子取值而空白点为;正数效果的点要给其邻接点加,同样负数效果的点给邻点加,这样的算法递归执行次,将棋盘最终数值化,如图:1
10、3 2 22 4 6 4 22 4 8 10 8 4 21 2 6 10 62 10 6 2 12 4 8 10 8 4 22 4 6 4 22 2 21图1.根据影响模型,一个黑子对其周围辐射的影响而的程序是研究的深入,这也是他的博士论文内容。像一样,也使用了一个影响函数,用来将每个棋子对其周围产生的影响进行量化。他的影响函数与的类似,也是黑方取正数,白方取负数,某点影响的取值由其邻点的影响传播累加形成。的影响函数较的简单,传播系数是固定的。 11 2 5 2 11 6 13 6 11 5 13 60 13 5 11 6 13 6 11 2 5 2 1图2.根据Ryder影响模型,一个黑子对
11、其周围辐射的影响定义了两个术语:联络和强关联。某点对于某方联络,对于有子点而言,是指该点上是该方的非死子;对于空白点而言,是指该点至少有一个该方邻子且没有对方邻子。完全联络的一个延伸定义为半联络,指一个空白点至少有两个某方邻子及至少一个对方邻子,有三种情况被认为是强关联的。某点由某方子占据或与某方子连接,某点与某方子对角线连接且共有至少一个空白点,尖以及某两子之间只间隔一个空白点,棋块就是由一组联络或半联络的点组成的。影响函数与联络度相结合来确定棋势。对于一组联络的点,如果其影响函数的值不小于程序预定义的一个阈值,则组成棋势。5.1.2定式问题对象化基本目标:将整个定式问题看作一个对象,并定义
12、为类,很显然,该类必然应具备的功能是:给定一个局血,根据定式知识,返回下一步应手,这一功能可以定义为类的一个方法。对称问题:围棋棋盘具有多种对称属性,首先,在以天元为原点的坐标系统中,四个象限之间具有对称关系;其次,每一象限内部还都具有以经过天元的对角线为对称轴的对称关系,如图所示,同一个定式,可以有种出现形式:图3.象棋的种形式可见,我们需要把棋盘划分为个定式区,每个定式区还包含一个定式向哪个方向展开的特征,这一特征可能有两种状态:顺时针或者逆时针。对于每一个定式的种出现方式,我们进行统一的处理,所以,坐标映蔚是必然需要的。例如将左上角顺时针作为定式的默认方式,我们就需要在其他各种方式与默认
13、方式之间建立一对转换方法,这一对方法可以定义为:、下图展示了棋盘坐标系统及其映射的一种实现方案::图4.棋盘坐标系统及其映射棋盘默认为以左上角为原点,的坐标系统,而各个定式区又分别属于以各自拥有的角为原点,的子坐标系统。而从各定式区坐标系到默认坐标系的转换关系为:第一象限 如图中点第二象限 如图中点第三象限 如图中点第四象限 如图中点而各定式区内逆时针与顺时针的转换关系为:5.1.4次序问题围棋定式的展开次序具有很大的小确定性,首先,因为在某一定式区内的定式步骤尚未完毕之前,双方可能暂时中断而转战至另一定式区,所以整个布局过程往往是在多个定式之间交错进行的。其次,被中断的定式区在棋局的后续发展
14、中也可能出现三种不同的情况:其一是回到该定式区时行棋次序与离开时一致,则定式继续;其二是次序颠倒而导致定式终止;其三是次序颠倒后仍然符合定式步骤,这种定式属于含有脱先变化的特殊定式。由于各定式往往交错进行,所以,各定式区都必须维护一个行棋步骤表来记录本区内的定式进行过程,可以定义为: 。由于定式可能处于中断、终止或脱先等多种状态,所以各定式区还需要增设一个属性来标记自身的状态,可以定义为: 。由于各定式区处于何种状态,取决于区内的行棋步骤是否符合定式,因此,我们需要一个方法来进行判断,这一方法可以定义为:该方法进行判断的依据只能是定式区行棋步骤表,因此,行棋步骤表所采用的数据结构应该是易于进行
15、检索及匹配操作的。显然,字符串是最佳选择,下图给出了行棋步骤表字符串化的一种实现方式:图5.行棋步骤表字符串化的实现方式上图显示了在第定式区顺时针展开的一个含有脱先手的定式,如果将每一手棋用相对于定式区子坐标系的两个字母表示,则:1=DD 6=BD 11=XX2=CF 7=BE 12=JC3=FC 8=BC 13=EC4=CC 9=CE 14=FB5=CD 10=EB 15=GC其中,第手黑棋脱先,无法用定式区子坐标系表示,而对于脱先手,由于其必然在其他定式区有表示并有记录,所以可以一律记作由此,图中定式即可用一个字符串表示为:。5.2定式问题对象化建立一个可供程序检索及匹配的定式库,该库应该
16、记录各种定式及其各类变化。定式库应该指出每种定式变化对于先手方或者后手方的有利或不利程度。定式库应该指出每种定式变化所依赖的局面条件。5.2.1库结构定式库通常应用于教学演示日的,通常表现为森林结构:图6.森林结构图森林结构的特点是冗余数据少,非常适合整体或部分加载到内存然后使用遍历算法访问,但不适合快速匹配。如果将森林中每一条从根到叶子的路径都抽取出来组成一个列表,则该列表虽然含有大量冗余数据(根及枝条多次重复储存),但非常适合于快速检索匹配:图7.快速检索匹配图5.2.2优先级问题在同一局而下,往往具有多种定式可供选择,而这些定式之间很难判定优劣,通常只是因对手而异:对手的棋力及棋风决定着
17、选用某一定式所能达到的最终效果。显然,最恰当的做法是主动适应对手。特别地,当对手本身也是程序时,由于可以进行大量的自动对局来积累经验,所以对定式设定优先级,并针过实际对局结果修正该优先级,就可能大大提高对特定程序对手的对抗能力。因此,在定式库设计及定式匹配算法设计中引入自适应的优先级设置,是当然之选。5.3精细计算的影响模型从效果上来讲,棋子的影响模型当然是越精确越好。需要以此为基础建立分块模型,用来作为战斗单位的是棋块而不是单独的棋子。棋局中计算实地外势,或者简单计算棋块的活力,强弱都会与棋子的影响模型有关。而另一方面,由于影响模型在计算评估函数时要用到,评估函数在计算每一步着手时都要计算上
18、百次或更多,所以影响模型又不能过于复杂,必须在精确定义与计算简便之间找到平衡点。5.3.1力学模型棋盘上的每一个棋子,都向周围四个方向发出影响。通过这种影响实现对空点的占领和棋子之间的相互作用,这种影响可以被视为一种控制力沿四个方向大小相等,而黑白棋子产生的控制力符号相反。控制力产生后,沿它的方向向前传播,其传播方式遵守如下定律:递减定律:控制力遇到一个点后,力的大小被减弱,符号方向不变的继续向前传播。如果遇到空点,减弱后的控制力变为原来的一个常数倍,该常数被称为传播率;如果遇到有子点,沿原方向的控制力消失。折射定律:控制力遇到一个点后,产生与控制力方向相垂直的两个新的控制力,这两个力符号与原
19、控制力相同,方向相反,大小相等,为原控制力的一个常数倍,该常数被称为折射率。反射定律:控制力到达棋盘边缘后,会被反射回来,该反射力与原控制力方向相反,符号相同,大小为原控制力的一个常数倍该常数被称为反射率。每一个点都受到四个方向的控制力的作用,任一方向的控制力的大小是这个点所受这个方向所有控制力的代数和。由于这种叠加类似于力的叠加原理,所以这种模型被称为“力学模型”。在实际计算时,我们取:任意棋子产生的初始控制力的大小为;黑子的影响为正、白子的影响为负;传播率为;折射率为;反射率为;初始控制力的大小取为的幂,而传播率取为,折射率取为,就使各级影响值均为整数,避免了小数运算。围棋程序因要计算很多
20、问题,宜尽量节省计算时间,因此此处只用整数运算。5.3.2度量公式在得到任一棋盘状态下各空点影响的分布图后,可以由这些影响值经过计算得到一些棋盘状况的深层信息,一些常用的度量公式如下:设一个点受到的四个控制力大小为:向上;向右;向下;向左。总力: (1)表示一个点受到某一方影响的度量。受黑的影响强一些。受白的影响强一些。受双方的影响基本平衡。模: (2)表示一个空点受到棋子影响的强度。很大,表示这一点受子的影响已经很强,常常是官子价值较小的位置。很小,表示这一点受子的影响还很弱,常常是大场。平衡度: (3)表示在一个点上四个方向的力互相平衡的程度,变化范围。很大,表示在某方的控制范围内。很小,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 围棋 博弈 算法 研究
链接地址:https://www.31doc.com/p-2447528.html