计算机围棋博弈中模式的表示和提取Word文件下载.docx
- 文档编号:19424635
- 上传时间:2023-01-06
- 格式:DOCX
- 页数:16
- 大小:29.07KB
计算机围棋博弈中模式的表示和提取Word文件下载.docx
《计算机围棋博弈中模式的表示和提取Word文件下载.docx》由会员分享,可在线阅读,更多相关《计算机围棋博弈中模式的表示和提取Word文件下载.docx(16页珍藏版)》请在冰豆网上搜索。
围棋只黑白两个颜色,两种棋子,也正是这种’
简单造就了其近乎无穷的复杂。
既是这种简单也是这种复杂造就了围棋与国际象棋的不同。
在国
际象棋中各个棋子各司其职,具有很高的独立性,
既作为-.个独立的个体又和其它棋子相配合在整盘棋中发挥着重要作用;
而围棋则略有不同,尽管每个棋子各自也都发挥着一定的作用,可是每个
的手段就是,切断对方的联系并且保持自己的连
接,围棋的基本原理大体如此。
如果想瓦解对手的同盟,显然需要在不是很紧密的关系上着手比较容易,因为对于连接强度太高的关系,几乎是没
李文峰,等:
计算机围棋博弈中模式的表示和提取有可能切断的,而从另外一个角度来说i连接关系越弱,往往对目标的实现帮助也越大。
与象棋的线性推理相比,围棋这种交织的关系网络更加难以描述。
,
15
就需要把模式从棋盘上提取出来,在?
个模式中,黑白子是主体,有了主体还不够j还需要环境,如
果放在整盘棋止的时候,这个环境就是整个棋盘,
而提取出来时就需要把黑白子周围的空点也包括在内。
1.2.2原点
制作计算机围棋程序,不使用这些连接关系
来构造基本模型是不能长远发展的。
国外研究者
大多采用势力影响算法来模拟这个连接图,但是这种做法的效果是不稳固的,无法在此基础上架
人们看事物有一定的视角,也就是以人自身为中心,视线向目标方向发散,形成看事物的视角。
模式同样也需要一个视角;
也就是需要一个指定的点;
然后以这个点为中:
心向周围以某种规
构更为高级的模型。
在这个系统中,围棋的模型层次如下,棋子毒(通过连接关系)构造为棋块一
棋块具有的基本属性一包围和切断一局部棋块的
则看去,这样就形成了模式的视角。
而且;
在针对模式进行一系列操作的时候,也需要这样一个立足点,然后通过这个点来把模式钉在棋盘上,之后进行一些比较匹配的操作,对于这样韵点则称之为原点。
在一个具体的模式中‘,究竟以哪一个点
作为模式的原点为优,并没有一个绝对好的说法d
死活计算一全局局势判断一搜索最佳着手。
模型的每个层次,都可以采用多个模式的组合来实现的。
所谓的连接关系,就是文中所说的
模式,使用它就能把棋盘上零散的棋子连接在一
起,当输入足够多的模式就能够构成完整的棋块模型,那么这样的模式是否是无穷无尽的呢?
目前我们的研究发现,职业棋手90%的下法,使用的’连接关系模式不超过几十个。
更多的形状则由这、几十个基本形状组合而成,即使估算特定棋形的
这个要根据具体模式的种类,看哪类点最合适≯?
。
在这个系统中主要采用两类点作为原点j其一是当前这一手的落子位置,其二则是下一手的’落子位置。
其中以前者居多,。
囟为模式最重要的作用便是根据当前落子的l位置来生成卞一步的落子位置;
而在本文所讨论的模式冲突中,则主要采
数量有数十倍之多,围棋全部层次的模型也只需
要几万到几十万模式就可以构成,如同人类的语言,核心词汇也许不超过几千,加上各种变形也就是几十万,这也许表明了’自然语言与围棋有可能具有相同的结构。
1.2模式包含的元素在系统关于模式的描述中,一个模式包含如下几个必须的要素:
黑白子,模式所占据的空间,原点,锚点。
1.2.1黑白子
用第二种方法,这是因为在题目中,是由一个状态:
来得到下一步的落子点,所以就不存在满足第一种情况的条件,也就是不存在当前这一手,而采用第二种方法也是不得已而为之b1.2.3锚点
.;
“
在围棋中,很多具体的下法对边角依赖非常大,尤其是当处于二线或者三线的时候,如果能对
边角进行很好的利用:
时常能起到事’半功倍的效
果。
当进行模式匹配的时候,就不仅要考虑到形
黑白子作为围棋中最基本的元素,通过其不‘断的组合,描述了棋盘上发生的一切故事,因而要描述围棋,黑白子可以说是必不可少。
然后有了黑白子还远远不够。
为了表示一个模式,不可能把整个棋盘全部表示出来,因为这样的话则显得多余,而且也丧失了很多灵活性。
而模式本身又是一个有.一定抽象度的东西,如果把模式钉死在棋盘的某个位置上,也就使其丧失了抽象性。
因而,
状的匹配,还需要考虑到与边角的相对位置,这样就会使模式的准确性以及实、用性大大提高jj故而,就需要引入了锚点这个概念。
所谓锚点,就是像锚一样把这个模式绑在某条边或者某个角上,
这就需要把模式先投射到具体的某个棋盘位置
上,也就是把原点指定到棋盘上的某个位置上,而
锚点就被指定为某条边上的某个点或者某个角所
16
20cr7中国机器博弈学术研讨会论文集的识图能力,可是要想提取出视野合理的模式来,还必须要求对围棋有一定的理解。
而这两条都是
对应的点,通过这种方法就可以把这个模式绑在某条边或者某个角上了。
在表l“墙模式”中体现出来了前面介绍的各
种元素,其中被浅色阴影覆盖的为模式所占据的空间,下方的黑色棋子为原点,左侧的方块的位置则为锚点。
计算机很难做到的,所以若是选择由计算机来生
成模式的话便只好在很大程度上牺牲掉模式的视野边界的灵活性。
.
考虑到以上2个方面,在这个问题上我们采
用比较折衷的办法就是,对于一些比较重要的、具有很高普遍性、抽象程度很高的模式由人来输入,其他的模式则由计算机来产生。
至于由计算机产生的模式的视野,也是正在不断的探索中,圆形、正方形、或者根据与其它棋子间隔的距离来探测出适当的形状等等,都在考虑的范围内。
1.2.5模式闻的关系模式的视野有大小,在小的视野内看到的东西,当视野扩大的时候,其模式就不一定准确。
比如模式A,在很多情况下都适用,可是突然出现一种情况,此时按照模式A的解决方法,得出的答案
1.2.4模式的视野
模式的视野在具体表现上实际就是前面提到的空间,这里使用视野这个概念,是想侧重于强调
空间的是如何划分出来的,为什么在提取模式的
时候要把某个点划分到空间中而不把另一个点划进来。
模式本身也可以理解为一个棋块,其视野
也就是这个棋块所“看到”的范围,由具体的黑白子和空点组成,只要是在模式中提到的坐标都算在视野中i这个也就是前面提到的空点存在的必
要性。
为了保证模式的准确性,其视野的边缘应
该是越灵活越好,根据实际需要按照其影响力或
者其抽象程度的需要来形成某个形状。
但是,想要达到拥有足够自由程度的理想化的视野,、那么
就是错误的。
,因而此时就需要添加进新的模式,称作模式B,而这个模式B和模式A的关系就是
一个父子关系,在与模式A同样的视野范围的情
在实际操作上也存在着很大的难度。
、
、从模式的产生方式上讲,主要分为两种:
一类
况下,在模式B中能看到和模式A完全一样的东
西,但是模式B的视野范围要比模式A大,所大出的这部分视野,就是模式A所不能覆盖到的情况,或者说所不能解释的情况。
由于这些不同,也就造成了下一手落子点或者对弈策略的不同。
在处理中,通过在两个模式中分别添加一个父、子元素来表示,如上例,在模式A中添加一个子元素,其值指向模式B的id号,同时在模式B中
是由人手工摆也去,第二类就是由机器自动生成的。
由人手工产生的模式,其视野的合理性必然很高,但是其效率的低下也是超出人类的忍受范
围的。
尽管前面提到模式不会很多,可这个多少终究是相对于计算机来说的,成百上千万也不是很大的数目,在几百万个带索引的模式中找到所需要的,也就是瞬间的事情。
可是在这个之前,这些模式首先需要被输入,而且要是由人来完成这
添加一个父元素,其值指向模式A的id号,通过这
种方法来把模式A和B联系起来。
这种父子关.系,多为一对一或者一对多,而多对多的关系尽管
项输入工作的话,其时间开销恐怕是不可忍受的,、
而且再加上要把这些模式进行整理、归类,其工作量更是不可忍受的。
而且,也受限于人们对复杂问题的可以思考的深度和广度,过于复杂和庞大的问题也是很难被人类所控制和掌握的。
因而,就需要计算机的帮助来产生所需要的模式,而计算机的识图能力则是很差的;
另外,就算具有一定
也是可能的,不过在实际上碰到的可能也应该比较小。
如表2父子模式中,第一个模式就是第二
个和第三个模式的父模式。
其中,可以看到,在第
一个模式里有个child瑚元素,在后两个模式里分+
别有个paI蜘t元素。
表1墙模式<pttag=”砌脚id=”15矿>
<w丑llp恒=”ba∞daⅣ/>
<fhce>
<a眦h肼p协=”删/>
<o嘲pts=”舻/>
<bs蛔∞p协=”aae矿/><wl|to鹏p协=”/>
<sp啪P乜=”cal划adcdBcBbCb:
附吲曲蚪/>
</lj∞></pt>
表2父子模式
<pt
tag=”删id=”1酽>
<c>.176(/c>
<wa】l呻=”aB《a矽/>
<cIlildr∞>
<^妯№>
<1.黜>
<c>.177</c>
<咖p恼=”aDa矽/>
<o唧Pts2”d水/>
<bsⅫ七p协=”a矿/>
<枷蛐p协=舢/>
</lla∞></pt>
<掣啪pts=”ba溉缺删/>
.c耻t玛=”砌Irid=”176Ⅳ><wallp乜=”aBaQ矿/><defⅣ/,
<pa姗t>
</删>
<fioe>
<c>.16</b>
<妇呻=”出B矽/>
<o唧pts2”甜/>
<b|触蛤p协=”a∥/>
<懈唧ptB=”c矽/>
</1.凸ce>
<甲啪膨=。
babDaDbBacaB删’/>
</pt><ptt矗g=”啪Ⅱ,,id=”177Ⅳ><wallp【s=”aBaCa矿/>
<妇w/><pa瑚t>
(c>.16</c></par吼t><lh∞><鲫ch∞p协=”aDa矽/>
<o唧妒=”d一/>
<b吕t讲七p坞=”a,/>
<俩t0∞p随=”B矽/>
<sp田嘴p协=”bcbDm童QIBb矽/>
</1.a∞></pt>
18
2007中国机器博弈学术研讨会论文集的模式虽说必然也会用到,这个由人来直接告诉
2提取模式
2.1模式的提取与冲突
计算机,这个属于围棋的范畴,与计算机关系不
大,所以不在本文的讨论范畴。
下面将讲述由计
算机产生坏的模式的必要性。
前面提到的父子模式的关系,也可以理解为模式冲突的一种。
在父子关系中,尽管子模式也
在一定程度上否定父模式,不过这个否定只是部分否定,是作为对父模式的补充而出现的。
这种补充,多发生在由手工添加的模式中,比如一个模
尽管我们认为模式的数量在可以控制的范围
内,可是这个数量有多大,我们可能对这个数量接
近到什么程度都是个未知的问题。
如果是好的模
式,那么对模式应用的时候,在搜索树中,则需要通过好的模式来生成搜索树的分支,这就产生一
式可能在90%的情况下都是正确的,而对于剩下的10%的情况,则需要其它的解决方法。
而要在
其中把这10%挑出来,只需要扩大下视野范围即可,也就是把这10%设定为这种情况的子模式,在每次看到这个模式匹配的时候再往下多看一眼,看是否和那10%相匹配,如果匹配,则按子模式的解决方法,否则还是采用原来的解决方法。
.
个问题,如果现有的模式无法覆盖掉所有的正确
的情况,那么可能就搜索不到解决方法,最后只好
去采用别的解决方法。
在使用好的模式的搜索中,模式的效果受限于两个因素,一是模式的准确
性,另一个就是模式的数量。
而使用坏的模式就相当于对搜索树的剪枝作用,能在模式中看到的情况就把它剪掉,然后去搜索剩下的分支,当然这
从准确性的角度来讲,设置父子模式可以说
是现阶段所能想到的最理想的解决方法。
可是对
个也受到模式的准确性的限制,可是模式的数量
不会对是否能找到结果产生任何影响。
而且,尽
于计算机来说,让它完成这样的工作——也就是
发现两个有一定关系的模式,并且进而在它们之
间建立父子关系,在无法精确勾勒出模式视野范围的前提下几乎是不可能的。
而且就算找出来意义也不大。
这里所谈到的冲突,更多的是属于对前面已经发现的模式的纠正。
而不是补充。
这种
管坏的模式的数量要多子好的模式,可是从模式产生的角度讲,坏的模式与好的模式是同时生成
的,可以生成好的模式的题必然同时也生成了坏
的模式,而且每道题生成的好坏模式的比例也应
该基本与好坏模式的总比例相同,所以好坏模式
在数量上的差距不用顾虑。
其实人的思维方式也类似这样。
人在碰到某
个问题的时候,如果不知道正确的答案,那么就会对问题进行搜索,在搜索的过程中只是对几个可能的正确的答案进行搜索,那些不正确的答案直接忽略掉,不去考虑,实际上也就是把我们认为错
情况主要是由于现有模式的抽象程度不合理,可
以被其他更好的模式替代掉,或者是对视野的选择不合理等原因造成的。
而纠正,就是通过改变其视野来使两个模式不会同时发挥作用,进而出现让计算机“为难”的情况。
不仅在计算机提取模
式的过程中,可能会不断发现冲突的模式;
而且在人输入模式的时候,由于考虑的不周全,或者失
误,也很有可能出现冲突的模式。
对于计算机遇到的冲突,我们将会采取一些策略来解决,而人输入的模式时的冲突,则通过提醒进而由人自己来更正。
模式有2种,其一是指出解决方法的模式,称之为好的模式;
其二与之相对的,也就是坏的模式。
这里所需要计算机提取的就是坏的模式。
好
误的直接剪枝了。
所谓的更好的想法,其实就可以理解为在我们脑子里的模式的不准确,因而把
很多本来不是错误的模式给否定掉了,而有人头
脑中的模式可能准确性要高一些,进而可能就搜
索到了,这也就产生了所谓的更好的想法;
如果在’某种情况下,绝大多数人在对某个模式的认知上
存在普遍的不准确性,而由于某种原因某个人头
脑中关予这个模式的准确性可能略高些,这也就形成了奇思妙想。
计算机围棋博弈中模式的表示和提取如表3攻击模式中所示的模式,就是当出现这种局面的时候,如果需要攻击,那么黑方应该在那个浅黄的正方点上落子。
表3攻击模式
19
表3—2中的三个模式,如果不通过添加父子元素,则第一个元素与后两个模式的关系就是一种冲突的关系。
2.3模式冲突的解决现阶段提取模式的主要来源是通过解死活题来得到好点和坏点,然后经过比较和其它一些处理得到所需要的模式。
通过求解一道死活题。
可
tag=”besi拶id=”51”>
pts=”bb,,/>
<ke><凼y
<o唧p乜=”d∥/>
<bst衄epIs=”Bbb矽/>
以找到两类点,好点和坏点,如图l中,对黑方来说点a就是好点,而b和c就是坏点;
图2中也是如此。
对于好点,以好点为原点,整道题所覆盖的范围作为视野来看成一个模式;
而对于坏点,则以该点为原点,从最小的视野开始看起,也就是从以它本身作为全部视野开始,之后通过某种规则逐
<wst咖口ts=”aoy>
</‰>
</pt>
<sp∞e
p忸=”baabbbJ,/>
2.2模式冲突的产生由于模式的生成过程就相当于知识的积累过程,因而模式冲突的产生就有点类似于人们在对事物的认知过程中碰到了和自己固有的价值观相矛盾的新事物或新思想。
当这种情况产生时,理智的人就会开始反省,要么去查阅更多的资料,要么去通过实践去验证。
比如,很久以前,人们人为世界是平的。
可是随着人们活动范围的扩大以及对世界认知程度的不断加深,人们便发现了一些现象。
比如离岸的船只从船身到桅帆依次隐没;
另外,沿着经线方向行走时,有的星星会在身后消失而又有新的星星从眼前显现出来。
由于这些新的发现与以前固有的知识相矛盾,便使很多人产生了疑惑,用本文的话说也就是产生了知识冲突。
于是人们便开始寻求可靠的论据,直到麦哲伦环球航行,才使人们确信这个新的知识。
于是,“地球是圆的”这一新的知识被添加到人们的观念中。
在这个系统中,模式也是这样产生,处理,进而被添加到知识系统中去的。
在由计算机产生模式的过程中,先发现的模式可能由于其求解的具体问题的局限性而导致其在一定程度上的不准确性,故而当后面发现了新的模式的时候,系统便会发现如果这两个模式被按照同等地位加入到知识
步扩大视野,也就是降低抽象程度。
坏点所形成的模式每次扩大视野,再和好点形成的模式相比较,来判断是否能覆盖掉好的模式,如果能覆盖好的模式则进一步扩大视野,直到坏点所形成的模式不能覆盖掉好点所形成的模式为止。
图l模式提取中的好点与坏点(例一)
系统中,那么在解决问题的时候,就会让计算机“为难”,也就是当用知识库中的知识去解决问题
的时候对于同样的一个问题可能产生两个结果,这是我们不希望看到的。
对于这种情况,便称其为模式冲突。
这时便需要对其进行调整,否则当实际应用的时候,程序将不知如何去处理,当然可以掷色子,不过这种情况是应该极力避免的。
如在这个判断过程中,对于坏点所形成的模式可以覆盖掉好点所形成的模式这种情况,就称之为模式冲突。
当把所有的坏的模式全部都过滤之
图2模式提取中的好点与坏点(例二)
2007中国机器博弈学术研讨会论文集后,再把这些坏的模式本身做比较,保证这些模式间不存在覆盖关系。
如果存在覆盖关系,则保留抽象程度最高的那个,之后把这些模式和数据库该是比较常见的。
我们既可以每解一道题便把所提取出的模式加入到模式库中,另外也可以解一定数量的题目后再去添加,有点类似于人每隔一段时间就去做一下“反省”,当然对人来说,这个反省的时间是因人而定的,程序中这个题目的数量也是个需要探
中的模式做同样的比较,符合要求的模式则保存
到数据库中。
由于生成的模式还需要同数据库中原有的模式相比较,所以数据库中除了要保存所需要的坏的模式之外,还需要保存好的模式,用来判断模式的准确性。
因而数据库中已有的模式分两类来存储,一类是好的模式,一类是坏的模式,其中坏的
讨的问题,当然具体怎么操作比较恰当,还需要不
断的摸索。
另外,从优化角度讲,为了避免让机器做过多的重复性劳动,当模式积累到一定程度的时候,我
模式是我们所需要的,而好的模式则用来评判新加入坏的模式的。
而每次当检测到新加入的模式
可以覆盖掉原有的模式的时候,便需要做出调整,这时就需要把模式再次放入到当初得到这个模式的题中去评定,因而在这类模式中除了要具有基本模式的各个元素之外,还需要把求解出这个模式的题也保存进来。
所以,还需要一个题库,用来
们也会将已经生成的模式应用到解题过程中,以
此来提高解题的效率。
关于模式视野的扩展,也就是对抽象程度的降低过程,由于现在的工作主要是以构建程序的结构为主,因而只采用了几种简单的策略:
A.从原点开始,每扩大一次视野,便把最外沿的点向周围
扩张一个格子;
B.从原点开始,保证范围的边缘是
方形,每次把边长扩大2个格子,保证原点处于中心位置;
C.把B中的正方形旋转九十度的正方形,
保存所有求解过的题,并且给每道题编号用来索
引。
在这个系统中,需要保存3类数据,好的模式,坏的模式,题库。
对于一道题来说,通过不断地扩大模式的视野,肯定可以解决模式间的冲突,
因为当所生成的模式的视野扩大到整道题之后,无论是好的模式还是坏的模式之间必然都不存在覆盖关系。
可是,对于不同的题生成的模式,则有可能出
并且也按照B中的规则不断扩大;
D。
以原点为中心,向周围发出射线(射线的密度对准确性有很大
影响),碰到棋子便停下来,以此作为第一次扩大
视野的范围,之后每次扩大一个格子的视野。
上
面提到的这四种都是比较简单的方法,其效果自
然也不够理想。
如何扩大视野也是个需要不断探索的问题。
对于图l和图2中的两道题,如果只看图l中的题目,则得出如表l中的模式,可是如果再加上图2中的题,表4的模式与图2生成的好的模式相
现覆盖关系,最简单的情况就是某道题可以完全
覆盖掉另一道题,而这两道题的下一落子点又各不相同。
这时,如果把在这两道题中提取出的模
式直接存人到知识库中的话,那么在解决问题的时候,如果碰到两个模式都符合的情况,那么肯定会让计算机无所适从,实际上就是冲突了。
而这两种模式的关系就是上面提到的父子模式的关
系。
当然,这种两道题目相覆盖的情况非常少,我们这里考虑到这种情况主要是因为以后可能会有更好的划分模式视野的方法,如果模式的视野能够划分得非常合理,不会像现在这样冲突了就盲目地扩大视野的话,那么这种父子模式的情况应
冲突,所以会被表5中的模式替换掉。
表4
<pttag=”u吨曾id=”28矿>
<lk圯>
<o哪归=”dr/>
<b船I碍幽=”baI,/>
<ws№p协=栅/>
</lk沱>
<唧p协=”群/>
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 围棋 博弈 模式 表示 提取