飞扬围棋
标题: [原创] 电脑围棋的价值判断 [打印本页]
作者: 路南 时间: 2004-10-29 08:49
标题: [原创] 电脑围棋的价值判断
[原创] 电脑围棋的价值判断
(目录)
一、引言:围棋着法的价值
1、着点的价值和表示单位
2、着点价值的判断标准
3、围棋胜负标准的实质
二、电脑围棋的官子价值判断
1、官子的定义
2、官子的分类
3、官子的大小
a、价值的表示单位
b、价值计算的基准
c、价值计算的标准
4、官子的判断
a、单官的概念和判断
b、封闭的概念和分类
c、判断单官的必要条件
5、官子的次序
6、官子的识别(待论)
三、电脑围棋的非官子价值判断
1、价值判断的不确定因素
a、劫争因素
b、控制因素
2、影响棋局的其他因素
a、非正常因素
b、规则因素
c、智能因素(智能与非智能)
3、决定价值的围棋因素
四、结语:局面分析判断程序(暂定)
一、引言:围棋着法的价值
1、着点的价值和表示单位
人类棋手在进行围棋对局时,对每一手棋的着点选择,大概都会经过以下的思考:1、该着点是否是盘面上最大,最急,最要紧的一手棋?2、是否存在比该着点更好的一手棋?3、对该手棋对方可能的应手是什么?对方最有利,己方最不利的应手是什么?自己下一手的又如何选择?......等等。
以上的思考过程和思考结果是否正确,很多情况下,并没有一个明确的清晰的答案。从棋局的进程来看,越临近终局,我们越容易寻找到正确的答案;越溯源往前至开局,则答案越模糊。
造成这种状态的原因,在于棋局的变化,变化越少,答案越正确,越明确和清晰;变化越多,则越难以找到正确答案。棋局的变化,在于棋局盘面上的可选择点:可选择点越多,则变化越多;反之亦然。难以找到正确答案的原因,还在于作为棋手的人类思考能力和记忆能力的局限性,人类的思考能力和记忆能力,以及计算能力和计算速度,由于生理条件的局限,并不可能无限制的提高和加强,这是人脑和电脑在进化竞争中的先天性难以克服的弱点。
造成这种状态的另一原因,在于围棋棋局的胜负判断标准。围棋棋局的胜负判断标准包涵两个层面的标准:1、棋局局面标准,即是胜局还是败局或和局的局面;2、胜负的具体数值和单位标准,即胜几目几子还是几点。计算判断棋局局面胜负的具体单位和数值,反映了对局一方或双方在对局行棋过程中的着手价值总和。对局一方在棋局中所有着手的价值总和,可以用“目”“子”“点”等这些具体单位名称及数值来表示。比较双方所有着手的价值总和,再根据约定的棋规,就可以判断棋局双方局面的胜负状态。
由于围棋棋局胜负判断标准只反映终局状态,只反映着手价值总和,而着手价值总和是个渐进累积的过程,我们还是无法知道具体每手棋的具体价值,从而无法得知所有着手选择的正确答案。因此,确定围棋对局中每一着棋的价值及其价值表示单位,是电脑围棋研究中首先要解决的问题。
2、着点价值的判断标准
人类棋手对局时的着点选择,严格意义而言,并不是依靠计算,至少不是一般意义的计算,而是一连串联贯的有规律的必然的着法构思和着法预演,以及预演形成图的优劣判断。这种预演形成图优劣判断的标准,不是严格的系统的清晰的数学结果,而是依靠经验的模糊的判断。(题外话:如果这种经验的模糊的判断就是智能的话,那么所谓的“智能”大有探讨余地,而且因此可以对电脑围棋战胜人类高手充满信心!)
这种经验的模糊的判断,取决于棋手的棋力。棋手的棋力,由棋手对围棋的理解和认识所形成的价值观,由棋手的想象能力和计算能力,由棋手生理心理的竞赛素质,由棋手平时学习和研究的积累,由棋手对对手的了解和习惯及事先设计的战略战术等各种因素综合形成。决定棋手棋力最根本和最基础的条件是棋手的围棋价值观。
如同物质的价值可以用货币单位和数值来表示一样,围棋的着手价值也可以用单位名称和数值来表示。根据笔者研究,“目”比“子”更适宜作为围棋着手价值的计量单位,最简单的理由,就是职业棋手在形势判断时,都使用“目数”而非“子数”。再进一步的理由是:“目”比“子”的单位小,对局时需要计算的范围也小,因而更简单准确有效。更深层的理由:“目数”比“子数”更能反映围棋的本质,即目数是围棋对局着子权的不完全反映和表示。(详细论述请参见笔者“数子与计目”一文)
最适合电脑围棋的价值计量表示单位是“点”(D=dian或dot),需要特别说明的是此“点”非那“点”,即不是应氏棋规中仅作为计算判断棋局局面胜负具体单位的“点数”。
由于目数在棋局出现打劫等反复提子情况时,反映对局另一方丧失对局着子权的数量是不相等的,给电脑围棋的价值判断和程序编制增加了难度。点数则直接反映对局另一方丧失对局着子权的数量,即己方的空位点数加上对方已被提和未被提的死子数。是否直接反映对局另一方丧失对局着子权的数量,是点数和目数的重要区别。
确定围棋着点价值的判断标准,是着点价值判断的前提,对提高棋手棋力,对电脑围棋程序的编制,都具有重要意义。
(未完待续)[em07]
[此贴子已经被作者于2004-11-21 21:58:04编辑过]
作者: 路南 时间: 2004-10-30 08:23
3、围棋胜负标准的实质
围棋的胜负标准决定了围棋的着手价值标准,影响人类棋手围棋价值观的形成,也影响和决定电脑围棋的程序编制。电脑围棋程序的设计和编制,说到底就是人类围棋知识的程序化和人类围棋思维思想的电脑化。
围棋胜负标准的实质,是比较和计算对局双方在棋盘上存活棋子的数量和获取的空间。比较和计算的前提是相同对等的着子权,即公平原则。己方在棋盘上存活棋子的数量,反映了己方着子权在棋盘上的实现;己方获取的空间(包括对方已被提和未被提的死子数),反映了对方着子权在棋盘上的失去,对方着子权的失去,实际相等于己方着子权的获得。
换言之,围棋胜负标准的实质,就是比较和计算对局双方在棋盘上的着子权——从棋局开始前相同对等的着子权,到棋局终局时实际获取的着子权。
围棋着法的价值,在于围棋着手的本身价值和行棋价值,由于围棋着手的本身价值是个恒量,可以忽略不计,实际上围棋着法的价值,就是该着手行棋价值的体现,是着子权获得或失去的可能性判断,是该着手行棋效率的计算,是该着手与上一手之间的增加值或减少值(两手棋之差)比较。
人类棋手的官子技术和理论已经相当成熟,官子价值的计算和判断方法,是我们研究其他所有着手(点)价值及其计算和判断方法的基础和切入口。
二、电脑围棋的官子价值判断
1、官子的定义
官子的“官”字字义,含有“公共”的意思,因而顾名思义,官子的定义应该是:在围棋行棋过程中,对棋盘上双方已活棋块之间的公共地域进行最后划分的着手,称为官子。
一般而言,官子属于棋局进程的尾盘阶段,不牵涉对局双方棋块的死活问题,而只牵涉对局双方归属地域的大小问题,从而有别于棋局布局和中盘阶段其他类型的各种着法。除了为了交换等原因的主动放弃和应对失误,在官子阶段,不存在死活等其他问题,换言之,官子的目的,是为了己方已归属地域的最大化,这是和布局及中盘阶段的行棋目的与着法的主要区别。在着点的着法性质分类时,我们应把仅关系到双方归属地域大小的着点归入官子范围。
一般业余棋手,往往注重布局和中盘阶段的战斗,忽视官子技术的研究和提高,其实官子是决定棋局胜负的最终关键。现今世界的第一高手李昌镐,就是以长距离作战的无敌官子令群雄臣服而称霸天下,可见官子的重要性。
作者: 路南 时间: 2004-11-9 17:04
[题外话——请教网上高手]
这篇文章很长,而且附有很多说明图例。转贴时碰到一个问题,贴不下去,思而不得其解。
我制作的文章棋谱图例都是使用Word中插入符号中的制表符拼合而成的棋谱图案。如下图:
┠┼┼┼┼┼┼┼
┠┼○○○┼┼┼
┠┼● A○┼┼┼
┠┼● B○┼┼┼
┠┼● C○┼┼┼
┠┼┼●○┼○┼
┠┼●┼●○┼┼
┠┼┼┼●○┼┼
┗┷┷┷┷┷┷┷
这样做的理由很简单,图个方便,(也可以说是懒)由于这种图案是由一个个符号拼合而成,所以非常容易编辑复制修改,看图感觉也很直观,便于读者理解,制作时不用转换软件,影响码字时的思路。
Word的符号中也有带数码的黑白子,这是演示棋谱手数变化必不可少符号零件。但是问题来了,把带有数码黑白子的棋谱转贴到网页上,成了一堆乱码,惨不忍睹。
虽然可以用英文字母代替黑白手数,但直观性太差;当然也可用sgf格式制作棋谱,但制作转贴时麻烦多多,太不方便。
飞扬高手多多,特此求教,先行致谢!!!
作者: smarbear 时间: 2004-11-10 10:42
To 路南:
1、您的问题涉及文档与网页贴图。目前帖子仅支持文本格式。Word可以兼容文本格式,但反之却不一定。要解决文档中显示图形问题可能有以下途径:
(1)用Photoshop等制图软件把演示图形制成JPG图像文件实现贴图,这是坛子可以接受的。图像文件还可用于您的其他用途。
(2)把整个文档制成PDF文档是常用电子书籍采用的格式,网上可以见到此种文档,但多用于网页中,论坛是否支持还不清楚。
(3)可以试验一下把文档存为文本格式(.txt)以消除Word对文档的排版作用,涉及图形时每行文字或字符不超过帖子窗口所容许的单行字长,各行字符上下对齐,每行字符以回车符号结束。看看这样是否产生乱码。
(4)用造字程序作出您所需要的带数码棋子等单个符号并赋予区位码可能也是一种办法。但这样存在一些问题。即帖子大多支持6千多汉字的普通中文,对大字符集的偏僻汉字和普通字符集中的一些字符(如日文假名)论坛可能显示为方框符号,只有用选蓝复制到记事本才能正常显示隐藏的内容。造字编码如果是在普通中文没有占用的区位可能可以正常显示,可能为上述隐形显示,也可能不能正常显示。
(3)和(4)的结果如何我还没有试验过,仅供参考。
作者: 路南 时间: 2004-11-11 08:44
TO:smarbear
非常感谢,先收了试一下。
作者: smarbear 时间: 2004-11-11 09:26
To 路南:
有一个更加简单的办法,这是我发表论文时常用的。
如果你已经Word把棋形图做出并能在计算机上正常显示,可以采用抓屏软件,例如“超级屏捕SuperCapture”等把所需图形范围从屏幕上截取下来并存入计算机。
抓屏软件在许多网站都可以找到并免费使用。根据我的经验“超级屏捕SuperCapture”(试用版)就很好。所截取的图形质量完全够发帖用。
如果所存图像文件是BMP格式的,可以用ACDSee软件将它们转换成JPG文件,以减小文件大小。
以上操作都很简单。
这样,你将来无论是发表文章、发帖、还是作课件等都可以用了。
作者: 路南 时间: 2004-11-11 11:06
To:smarbear
再次谢谢!顺便再说一句,基于文本文件的字符拼图棋谱是最方便的,只要解决了和网页文件的兼容问题,或制作一整套用于拼图的字符元素(包括带数码的黑白子),来用于网上讨论有关围棋的理论和技术,便于复制和修改,善莫大焉。
作者: 路南 时间: 2004-11-15 16:55
2、官子的分类
官子以大小分类可分为大官子,小官子和单官。棋手实战中,大小官子间并没有明确的区分界线,只是按棋手认为的官子大小顺序依次收官。单官是官子中价值最小的官子,其价值(正值)仅等于一手棋(一次着子权)的本身价值,凡不能使己方实空增加,使对方实空减少的着点着手,就是单官,如图2-2-1中的×点。
┠┼┼┼┼┼┼┼
┠┼○○○┼┼┼
┠┼●×○┼┼┼
┠┼●×○┼┼┼
┠┼●×○┼┼┼
┠┼┼●○┼○┼
┠┼●┼●○┼┼
┠┼┼┼●○┼┼
┗┷┷┷┷┷┷┷
(图2-2-1)
单官除了不影响双方实空的增减,还有一个特点是:其所有着点可以变换着手次序和着手方,而不影响对局双方的最终局面结果。
关于单官,由于中日棋规价值计量单位的差异,还有一个有趣的现象:中国的棋规因为是规定数子,所以除了中盘胜负的棋局外,终局时应该收完全部单官,否则无法确定一方归属的子数以和归本数相比较,来决定胜负,但是实际上,使用中国棋规的比赛,也出现了不是中盘胜负也不收单官的棋局;而日本棋规按理也应收单官,特别是容易出现分歧的不确定地方,但实际上使用日本棋规的棋局,对没有“目数”的单官,在终局前是不收的,而是在终局后计目前“补办手续”。
官子以性质分类,可分为:
(a)双方先手官子;如图2-2-2中的×点。对局双方在×点或扳或立都是先手,对方如果脱先不应,都将蒙受更大损失。
┠┼┼┼┼┼┼┼
┠┼○○┼┼┼┼
┠┼●○┼┼┼┼
┠┼●○┼┼┼┼
┠┼●○┼○┼┼
┠┼┼●○┼┼┼
┠┼●┼●○┼┼
┠┼┼┼●○┼┼
┗┷┷┷××┷┷
(图2-2-2)
所谓先手,一般是指一方着子后,另一方必须跟着应手的着手。先手蕴含先手效益,保持了下一回合中着点的先行选择权,如同黑先贴子贴目的棋规,先手效益也应该可以用价值单位和数值来表示。
(b)单方先手官子;如图2-2-3中的×点,对白方而言是先手,黑方如果脱先,则白方下一手可小飞到◎点,或大飞到⊙点(又名仙鹤大伸腿)。
┠┼┼┼┼┼┼┼
┠×○○┼┼┼┼
┠┼●○┼┼┼┼
◎┼●○┼┼┼┼
⊙┼●○┼○┼┼
┠┼┼●○┼┼┼
┠┼●┼●○┼┼
┠┼┼┼●○┼┼
┗┷┷┷┷┷┷┷
(图2-2-3)
而×点对黑方而言则不是先手,如图2-2-4所示,白方①位应后,黑方还要⑶位补一手,否则白方可以在⑶位打吃得利。
┠①┼┼┼┼┼┼
┠⑴○○┼┼┼┼
┠⑶●○┼┼┼┼
┠┼●○┼┼┼┼
┠┼●○┼○┼┼
┠┼┼●○┼┼┼
┠┼●┼●○┼┼
┠┼┼┼●○┼┼
┗┷┷┷┷┷┷┷
(图2-2-4) ⑴ ⑶ = 黑1,黑3。后图同例。
(c)单方后手官子;如图2-2-3中的×点,对黑方而言就是单方后手官子。
当然,轮黑方收官的一般着法应如图2-2-5,黑⑴先立,白方如果脱先不应,黑方有⑥位跳④位飞等手段,白方②位应后,黑方再⑶⑸位先手扳粘。
④⑥┼┼┼┼┼┼
⑶②○○┼┼┼┼
⑸⑴●○┼┼┼┼
┠┼●○┼┼┼┼
┠┼●○┼○┼┼
┠┼┼●○┼┼┼
┠┼●┼●○┼┼
┠┼┼┼●○┼┼
┗┷┷┷┷┷┷┷
(图2-2-5)
单方后手官子又称逆收官子,逆收官子一般针对单方先手官子而言,是逆向预先防止对方的先手得利。
(d)双方后手官子;如图2-2-6中的×点,对黑白双方而言,无论是立还是扳粘都是后手,只不过价值大小不同,如图2-2-7和图2-2-8。图2-2-8中,黑⑴后,白棋可以不应,黑⑴就是后手,如在×位应一手,黑⑴就成了先手,如果不应,黑棋的后续手段最多还原成图2-2-7的后手扳粘,但黑⑴变成了先手。
┠┼┼┼┼┼┼┼
┠┼○○┼┼┼┼
┠┼●○┼┼┼┼
┠┼●○┼┼┼┼
┠┼●○┼○┼┼
┠┼┼●○┼┼┼
┠┼●┼●○┼┼
┠┼●┼●○┼○
┗┷┷┷××┷┷
(图2-2-6)
┠┼┼┼┼┼┼┼
┠┼○○┼┼┼┼
┠┼●○┼┼┼┼
┠┼●○┼┼┼┼
┠┼●○┼○┼┼
┠┼┼●○┼┼┼
┠┼●┼●○┼┼
┠┼●┼●○┼○
┗┷┷┷⑶⑴②┷
(图2-2-7)
┠┼┼┼┼┼┼┼
┠┼○○┼┼┼┼
┠┼●○┼┼┼┼
┠┼●○┼┼┼┼
┠┼●○┼○┼┼
┠┼┼●○┼┼┼
┠┼●┼●○┼┼
┠┼●┼●○┼○
┗┷┷┷⑴×┷┷
(图2-2-8)
3、官子的大小
计算比较判断官子价值的大小,牵涉3个方面的问题:a、价值的表示单位;b、价值计算的基准;c、价值计算的标准。
a、价值的表示单位;基于前述的理由(本文第一节第3小节),笔者认为电脑围棋的价值表示单位应该使用点(D)来表示,D为符号常量,表示对局双方的一次着子权,d(dian或dot)为字符变量,表示某棋盘位点的价值,由盘面双方棋形和位点位置等因素决定。
价值表示单位的确定,便于整个程序系统中分析子系统(模块)和判断子系统(模块)计算标准的统一。
b、价值计算的基准;基于前述的理由(本文第一节第3小节),笔者认为电脑围棋的价值计算基准应该采用相对计算基准,即该着点着手之后本方盘面的总价值(总点数),与该着点着手之前本方盘面的总价值(总点数)之差。基准点是着手之前本方盘面的总价值,该着点价值是基准点的增加值或减少值。
以图2-3-1为例:图中黑方是活形,不存在死活问题。
┠┼┼┼┼┼┼┼
┠┼○○┼┼┼┼
┠┼●○┼┼┼┼
┠┼●○┼┼┼┼
┠┼●○┼○┼┼
┠○●●○┼┼┼
┠┼●┼●○┼┼
┠┼●┼●○┼┼
┗┷┷┷┷○┷┷
(图2-3-1)
黑方棋块的价值点数如图2-3-2×和○所示,为12点(D),其中○为白方死子,价值应计为2点。
┠┼┼┼┼┼┼┼
┠③○○┼┼┼┼
⑦①●○┼┼┼┼
⑤⑵●○┼┼┼┼
⑹⑻●○┼○┼┼
×○●●○┼┼┼
××●×●○┼┼
××●×●○┼┼
×××⑽⑨○┷┷
(图2-3-2)⑷脱先他投
12点是该黑方棋块官子变化计算的基准,这个基准和分析模块的基准相同,便于数据的调用。通过图2-3-2我们可以知道,在棋块未最后定型前,棋块点数基准应该是以可能的最小值作为计算基准的,这和分析模块的理论原则相同,也和人类棋手收官的理论原则基本相同。
棋盘上的同一位点,由于着手方的不同,产生不同的价值。具备实际使用价值的电脑围棋程序,应该具有正反两方面立场的计算功能,才具有真正的判断意义。
c、价值计算的标准;一个着点的价值,实际上由两个层面的价值组成,即由本着手的本手价值(不包含本身恒量价值即1点的价值)和本着手后续手段所蕴含的价值组成。先手之所以为先手,实际上在于该着点着手的后续手段价值,因而先手也是有价值的。只有连同先手价值一齐计算在内的着点价值,才是准确的具有判断意义的着点价值。(笔者认为,李昌镐的官子无敌在于其价值判断的准确性。)
价值计算的标准是单官,只有充分认识了单官的定义和价值,我们才能准确地界定和计算其他非单官着点的价值。
需要明确指出的是:电脑围棋的价值计算标准和现行围棋理论的标准有所不同,现行围棋理论标准一般是以一连串的相关着法来计算价值的,这种计算方法和表述可能有利于读者的理解,但无法编程以供电脑执行。而电脑围棋理论则必须明细到每个着点的价值计算,也只有明细到每个着点的价值计算才能进行准确的着点排序,以供程序判断和选择执行。
4、官子的判断
无论是官子还是其他着法,着点价值的判断,都至少包含两层意义:着点的性质和着点的大小。判断的标准,只能来自棋局发展或发展预演的最终状态(即无棋可下,无必要再下之状态)。判断的目的,是为着法选择提供依据,是为了根据着点的性质和大小进行排序列表,以寻找和选择盘面可着点中的最佳着点。
如果以单官为标准和计算原点,我们可以把单官的值指定为0,把大于单官价值的着点值取为正值,把小于单官价值的着点值取为负值。这样,我们可以分别计算和确定每一非单官着点的官子价值。
需要强调的是:由于点以及点数是在“目”的基础上发展的全新概念,容易产生混淆和误解,在围棋的价值分析和价值判断中,把单官的值确定为0,并不表示单官没有价值,单官本身价值=1点并没有变化,而只是把单官作为单官本身价值以外价值计算的起点。因为“点数”作为围棋的价值表示,其所计算的对象,不是着子权在棋盘上的实现(即在棋盘上存活的子数),而是着子权的获取(己方实空和对方死子)和失去(对方实空和己方死子)。又由于对局双方的着子权应该是对等相同平衡的,而且无论黑白所有着子的本身价值又是不变的恒量,可以相互抵消,所以着子的本身价值可以省略不计,也无必要进行计算。
a、单官的概念和判断;上述对单官定义和价值的确定,有助于我们提高对单官的认识和识别,但对程序而言不具有可操作性。通过图2-2-1,我们可以基本确定×位点都是单官,而且如图2-4-1至图2-4-4所示,无论如何变换着手次序和着手方,都不会影响黑白双方实空的增减,即不影响对局双方已有点数(价值总和)的变化。
┠┼┼┼┼┼┼┼
○○○○○┼┼┼
○●●③○┼┼┼
●┼●⑵○┼┼┼
┠┼●①○┼┼┼
┠●┼●○┼○┼
┠┼●┼●○┼┼
┠┼●┼●○┼┼
┗┷┷●○○┷┷
(图2-4-1)
┠┼┼┼┼┼┼┼
○○○○○┼┼┼
○●●⑶○┼┼┼
●┼●⑴○┼┼┼
┠┼●②○┼┼┼
┠●┼●○┼○┼
┠┼●┼●○┼┼
┠┼●┼●○┼┼
┗┷┷●○○┷┷
(图2-4-2)
┠┼┼┼┼┼┼┼
○○○○○┼┼┼
○●●⑶○┼┼┼
●┼●⑸○┼┼┼
┠┼●⑴○┼┼┼
┠●┼●○┼○┼
┠┼●┼●○┼┼
┠┼●┼●○┼┼
┗┷┷●○○┷┷
(图2-4-3)白②④他投
┠┼┼┼┼┼┼┼
○○○○○┼┼┼
○●●③○┼┼┼
●┼●①○┼┼┼
┠┼●⑤○┼┼┼
┠●┼●○┼○┼
┠┼●┼●○┼┼
┠┼●┼●○┼┼
┗┷┷●○○┷┷
(图2-4-4)黑⑵⑷他投
进一步研究,我们可以发现,产生这种状态的原因,是在于如图2-4-5×位点所处的环境所决定。
┠┼┼┼┼┼┼┼
○○○○○┼┼┼
○●●×○┼┼┼
●┼●×○┼┼┼
┠┼●×○┼┼┼
┠●┼●○┼○┼
┠┼●┼●○┼┼
┠┼●┼●○┼┼
┗┷┷●○○┷┷
(图2-4-5)
首先,图2-4-5×位点所处的环境,是个全封闭的环境,在×位点周围,不是白子就是黑子,而且没有一点缝隙。其次,这个全封闭的环境,由黑棋和白棋两种棋子形成。这里,我们又碰到了在棋盘研究和死活研究中碰到的概念——封闭。
┠┼┼┼┼┼┼┼
○○○○○┼┼┼
○●●×○┼┼┼
●┼●×○┼┼┼
┠┼●×○┼┼┼
┠●┼●○┼○┼
┠┼●┼●○┼┼
┠┼●┼●○┼┼
┗┷┷●○○┷┷
(图2-4-5)
[此贴子已经被作者于2004-11-21 21:56:11编辑过]
作者: 路南 时间: 2004-11-15 16:58
b、封闭的概念和分类
在围棋网格系统理论中,我们把棋盘看作是一个由棋盘边界形成全封闭的有限空间。有限空间的大小,由格点数量和棋盘边界等因素决定。有限空间内位点(格点)的位值和影响关联值及其活力,由网格系统的网格形式和该位点所在位置及其空间大小决定。
狭义死活问题中的情况相类似,被封闭一方棋块(棋形)的死活,由封闭的另一方所形成封闭空间的封闭形式,封闭形状,以及封闭空间内的位点数(空间大小)所决定。
就棋形而言,封闭状态一般分以下两种形式:全封闭和半封闭。就全封闭状态的形式而言,如图2-4-5X位点所在空间是由黑棋和白棋双方共同形成的全封闭环境,我们称之为——双封闭;如图2-4-6X位点所在空间是由黑棋单方形成的全封闭环境,我们称之为——单封闭。
┠┼┼┼┼┼┼┼
○○○○○┼┼┼
○●●X○┼┼┼
●┼●X○┼┼┼
┠┼●X○┼┼┼
┠●┼●○┼○┼
┠┼●┼●○┼┼
┠┼●┼●○┼┼
┗┷┷●○○┷┷
(图2-4-5)
┠┼┼┼┼┼┼┼
○○○○┼┼┼┼
○●●○┼┼┼┼
●X●○┼┼┼┼
XX●○┼○┼┼
X●X●○┼┼┼
XX●X●○┼┼
XX●X●○┼┼
XXX●○○┷┷
(图2-4-6)
可以看出,判断一个可着点是否是单官,由该着点所在的周围环境决定,如在双封闭的环境内,则该着点有可能是单官。
c、判断单官的必要条件
双封闭环境,只是单官判断的必要条件之一,但不是唯一的条件,如图2-4-7所示,3个X位点也都处于双封闭环境,但如图2-4-8所示,黑⑴是有价值的,是后手2点(2点为打X处)。如图2-4-9所示,白①和黑⑵也都是有价值的,白①是先手1点,黑⑵是后手1点(1点为打X处)。
┠┼┼┼┼┼┼┼
○○○○○┼┼┼
○●●●○┼┼┼
●XXX○┼┼┼
┠●●●○┼┼┼
┠●┼●○┼○┼
┠┼●┼●○┼┼
┠┼●┼●○┼┼
┗┷┷●○○┷┷
(图2-4-7)
┠┼┼┼┼┼┼┼
○○○○○┼┼┼
○●●●○┼┼┼
●XX⑴○┼┼┼
┠●●●○┼┼┼
┠●┼●○┼○┼
┠┼●┼●○┼┼
┠┼●┼●○┼┼
┗┷┷●○○┷┷
(图2-4-8)
┠┼┼┼┼┼┼┼
○○○○○┼┼┼
○●●●○┼┼┼
●X⑵①○┼┼┼
┠●●●○┼┼┼
┠●⊙●○┼○┼
┠┼●┼●○┼┼
┠┼●┼●○┼┼
┗┷┷●◎○┷┷
(图2-4-9)
显然,图2-4-8所示的黑⑴,图2-4-9所示的白①和黑⑵,都不是单官,而是有实际价值,得到实际利益的着手。
由此可见,一个着点是否是单官,不仅与所处的环境有关,还和其相邻点有关。在围棋网格系统理论中我们知道,一个格点,通过网路与其他格点发生关联,格点的位值,不仅与在系统中所处的位置相关,而且与该格点的网路数及其相关联的格点数相关。
一个格点的网路,我们又称之为“向”。当一个格点的向数(网路数)为零时,我们称其为处于“零封闭”状态(即无气状态)。一个处于零封闭状态的位点,在围棋中,如果其相邻点都是异色棋子,是所有棋规的“禁着点”,即是该位点相邻的该色棋子的眼位和空(如图2-4-9中的⊙点);但如果其中至少有1向是同色棋子,而所有相邻的同色棋子又处于非“零封闭”状态(即有气状态或成活状态),则该位点是单官(如图2-4-9中的◎点)。
由此,我们可以得到单官判断的完整必要条件:当一个处于双封闭环境内着点的相邻点,至少各有1向为异色棋子,且如果相邻的空点为同样性质时,则该着点为单官着点。如图2-4-10所示的X点。而图2-4-10所示的◎点,虽然一般实战情况也会下成单官,但实际上还存在这样的可能性:黑白任何一方,只要有机会连下2手,都可能形成2点的实地,因而不是“纯粹”的单官,而是性质难以确定,必须根据双方行棋进程才能判断的系统难以识别的单官。
●●●○┼┼┼┼
○○○┼┼┼┼┼
◎◎○○┼┼┼┼
◎◎●○○○┼┼
●●●●X○┼┼
┠●┼●X○┼┼
┠┼●┼●○┼┼
┠┼●┼●○┼┼
┗┷┷●X○┷┷
(图2-4-10)
“向”的概念,有别于单纯的格点的网路数,和格点及其网路的拓展性有关。相关“向”的概念和作用,将在围棋网格系统理论中另文论述。当一个双封闭的环境,在什么样的状态时,其环境内的着点会产生非单官着点,由于不在本文讨论范围,这个课题也将另文予以展开。
5、官子的次序
从以上的讨论,我们可以得到官子的排序原则。在盘面上的单官着点确定以后,其他非单官着点,按性质分类向正值方向从小到大的基本次序依次为:
a、双方后手官子;
b、单方后手官子;
c、单方先手官子;
d、双方先手官子。
不同性质的官子着点,以性质依次排序;相同性质的官子着点,以价值大小依次排序。着点价值大小,由可能的最大价值的本方后续着手着点决定;不同性质官子着点的价值大小比较和换算,由可能的最大价值的双方后续着手着点决定,即由棋局发展或发展预演的最终状态推算决定。
官子价值的排序,参见《官子价值分析实例》;官子价值的具体比较和换算,参见《官子价值净值图表》。
6、官子的识别(待论)
包括官子识别在内的棋形识别技术,是电脑围棋中分析判断程序软件的基础和关键核心。高效准确的识别技术目前还有待于研究开发。
[此贴子已经被作者于2004-11-23 15:00:45编辑过]
作者: 路南 时间: 2004-11-16 11:25
三、电脑围棋的非官子价值判断
当具有361个可选择点的标准围棋盘在空无一子时,如何进行着点选择,是围棋的布局问题。由于围棋棋局变化的巨量性爆炸性,人类棋手在围棋布局的着点选择时,无法也不可能用具体的计算数据,来证明其着点选择的正确性。现有的围棋布局理论,是用行棋围空成活效率和外势成空作战的预期效率,来解释指导和评价布局问题以及布局中的定式问题。因而现行理论很大程度上是经验的模糊的,无法验证的,非可机械执行的,可程序化的理论。从而无法转换成电脑围棋程序编制所需的算法和数据结构及其编译可执行文件。
电脑围棋基础理论的滞后,是阻碍电脑围棋发展的主要瓶颈。有人试尝套用“深蓝”战胜卡斯帕罗夫的成功经验,利用由此而发展起来的搜索理论和技术来解决围棋问题,并期待电脑功能的进步和CPU运行速度的提高,来解决围棋棋局变化的巨量爆炸性。事实将证明这种观点的盲目性和局限性。
这种观点的盲目性和局限性根源,除了无视围棋和国际象棋之间棋局变化量的巨大差异,还在于对这两种棋类的博弈规则缺乏本质的认识,即对由博弈规则而产生形成的着法(棋步)价值体系的根本异同缺乏深刻了解。国际象棋的胜负规则是能否致对方的王于死地,因而行棋的目的和手段更象是一场战役或局部战争;而围棋的胜负规则是地域获取的多寡比较,局部的利益得失必须由最终的全局结果来评判,棋艺水平的高低和对局行棋过程,不一定通过你死我活的争斗厮杀来决定胜负,因而更象是一场国家利益的全面战争——虽然这两种棋类都是战争的模拟。
围棋的局部的利益得失必须由最终的全局结果来评判,而全局的最终结果又由局部的利益得失渐进累积形成,维系和评判全局和局部关系的纽带和标准,是行棋的着点价值,也只有和只能是行棋的着点价值。
从前面官子价值判断分析中和图2-4-5及图2-4-6我们还可以基本得知,由单方(白方)形成的单封闭区域内(黑方)的价值是确定的,由双方形成的双封闭区域内的着点价值有可能是单官(图2-4-5的X点),而非封闭的(白方的)开放区域的价值是不确定的。
1. 价值判断的不确定因素
a、劫争因素
实际上,并不是所有单方形成的单封闭区域内的价值都是可以最终确定的,既使如图2-4-6黑方这样的基本成活棋形棋块,在最终棋局结束前,也还存在着不确定因素,如图3-1-1中的◎点,都有可能在棋局出现劫争时成为劫材,只要劫争的价值大于图3-1-1中黑方棋块◎点劫材的价值,而白方棋形又没有相应的劫材,那么,这块黑方棋块的价值就会发生变化,可能形成图3-1-2的结果。
┠┼┼┼┼┼┼┼
○○○○┼┼┼┼
○●●○┼┼┼┼
●◎●○┼┼┼┼
◎X●○┼○┼┼
X●X●○┼┼┼
XX●◎●○┼┼
XX●◎●○┼┼
XX◎●○○┷┷
(图3-1-1)
┠┼┼┼┼┼┼┼
○○○○┼┼┼┼
○●●○┼┼┼┼
●●●○┼┼┼┼
XX●○┼○┼┼
●●X●○┼┼┼
XX●●●○┼┼
X●●○●○┼┼
X●○○○○┷┷
(图3-1-2)
因而,棋局行棋中,能否形成劫争以及形成劫争价值的大小,及其双方棋形劫材的多少和价值大小,也是影响棋局全局和局部行棋价值的因素,电脑围棋的程序设计和编制,必须考虑到劫争和劫材因素,并把劫材大小的计算和劫材多少的统计,作为一个相对独立的价值判断子系统,形成课题研究。
以上的讨论结果,实际上还支持否定把死活问题作为电脑围棋的基本和基础问题的推断,因为从表面看,有些劫争确实也包含了死活问题,但实际上,还有很多劫争不牵涉死活问题,而只牵涉价值和利益的大小(如图3-1-2,价值为9点,比图3-1-1减少5点)。因而仅用死活判断,就无法解释和解决类似劫争等在围棋对局中会碰到的其他问题。
b、控制因素
单方形成的单封闭区域内的价值是否可以最终确定,除了与单封闭区域内棋形的劫材,即棋形的厚薄程度有关,实际上还与该棋形对区域内空白位点的控制力度有关。控制力度是指棋盘上双方棋形对空白位点的影响度(即关联度)的大小程度(控制参数),如图3-1-3,我们就无法确定黑方所形成的单封闭区域内的空白位点都是黑方的地域,一旦白方在X点位一带着子,形成如图3-1-4的棋形,我们就根本难以肯定白方无法成活,虽然成活是有条件的。
┠┼┼┼┼┼┼┼┼┼
●●●●●●●●●●
┠┼┼┼┼┼┼┼┼●
┠┼┼┼┼┼┼◎┼●
┠┼┼┼┼┼┼┼┼●
┠┼┼┼┼┼┼┼┼●
┠┼X┼┼┼┼┼┼●
┠┼┼┼┼┼┼┼┼●
┗┷┷┷┷┷┷┷┷●
(图3-1-3)
┠┼┼┼┼┼┼┼┼┼
●●●●●●●●●●
┠┼┼┼┼┼┼┼┼●
┠┼┼┼┼┼┼┼┼●
┠┼┼┼┼┼┼┼┼●
┠┼┼┼┼┼┼┼┼●
┠┼○┼○┼┼┼┼●
┠┼┼┼┼┼┼┼┼●
┗┷┷┷┷┷┷┷┷●
(图3-1-4)
在笔者《再谈死活问题》一文中,讨论过棋形成活的最低条件,因而只要棋形成活的最低条件存在,那么,这块棋块就有成活的可能。很显然,成活的可能随着条件的变化而变化,而且与形成封闭区域的棋形形状和区域大小有关,即与棋形对空白位点的影响度有关,如图3-1-3所示,X点和◎点显然由于点位的不同,而受到黑棋的影响程度也不同。X点的受影响程度小,安全系数大,成活可能性也大,◎点则正好相反。
由此可见,单封闭区域内的价值,还由棋形对空白位点的影响度确定,而影响度由影响值表示(请参见《棋盘的位点关系》一文),并可根据能验证的能穷尽变化的最终结果,来设定价值判断参数,以确定单封闭区域棋形棋块的价值。
推而广之,我们对未最终成活和未最终明确地域的棋形棋块,不考虑死活因素,可以根据影响值及设定的价值判断参数,对棋形棋块作出基本的价值评估判断,从而进行对局双方的形势判断对比分析,为对局的着手着点选择提供决策依据。
作者: smarbear 时间: 2004-11-16 12:31
文章论述内容很有意义,鼓励继续!
作者: wsf1997 时间: 2004-11-17 13:33
灌水
作者: 路南 时间: 2004-11-17 16:06
楼上:灌水可以到灌水专区去。
作者: 路南 时间: 2004-11-17 16:10
2、影响棋局的其他因素
a、非正常因素
泛泛而言,棋手的对局是棋手实力水平的真实反映。然而,人类棋手的对局实际上还受到各种非围棋因素的影响,诸如对局环境因素(如对局地点、对局天气、对局季节和时间、噪音干扰、使用的棋具器具等),生理心理因素(如健康状态、疲劳程度、情绪波动、抗干扰能力等)及突发事件都是影响棋手水平正常发挥的制约条件,严重的甚至可使棋局中止或根本无法进行,在围棋的历史上,这样的实例不胜枚举。
所以,精妙绝伦的完美对局在围棋历史上凤毛麟角,既使是世界超一流顶尖高手,也只能称雄于一时,而不能独霸一世。以一敌万傲视群雄君临棋坛的盖世弈林至尊,恐怕只能期待荟集人类智慧结晶的电脑围棋,尽管其目前还是乍离襁褓仅蹒跚学步的懵懂孩童。
b、规则因素
由于目前世界上并没有统一的围棋国际组织,因而也没有统一的围棋规则,国际上的重大围棋赛事实际上是根据“谁出资谁定规则”的惯例举办执行。虽然实际上使用的中国规则、日韩规则、应氏规则三大棋规在本质上没有重大区别,但在基本规则中的一些具体棋形以及最终胜负的判定和计算上不尽相同,计量的单位也各异。这种状况不仅影响了围棋的推广,增加了学习围棋的难度,还制约了围棋的进步。
围棋规则的不统一,也给电脑围棋程序的编制增加了难度。显然,编制电脑围棋的最终目的和功用,是围棋的教学和训练。在规则不统一的状态下,实用的电脑围棋程序软件必须同时满足和适应流行通用的各种棋规,因而各种棋规间价值表示单位是否能等价切换,是电脑围棋理论必须要解决的课题。
在围棋历史上因规则问题引起的争议不少,现代国际围棋赛事,因参赛棋手不熟悉赛事指定规则而引发的争议纠纷也时有发生,从而使规则的统一问题摆上各国各地区棋协的议事日程。相信世界围棋规则的统一进程,不仅能使围棋规则更趋于科学合理,也将引发对围棋本质及其客观规律的理论研究,从而提高人们对围棋本质的理解和认识,提高围棋的整体技艺水平。
对围棋本质及其客观规律的理论研究,也必将带动和推进对电脑围棋的理论研究,并伴随编程理论技术的进步和突破,伴随电脑性能功能的提高,最终提高电脑围棋的程序软件水平。
c、智能因素(智能与非智能)
所谓的“人工智能”,是个年轻的新兴科研学科。何为“智能”?至今并没有公认的确切定义,智能与非智能的界定更是模糊不清。但是有一点似乎应该是明确的:即在面临解决相同或类同的问题时,具有分析识别能力,具有自我学习能力,具有改错纠偏能力,则肯定是属于智能范畴;而仅能根据设定程序作重复机械运行计算的程序软件,无论其运行计算过程再复杂多变非人力可及,也不能算作具有“智能”。
围棋以其复杂多变的着法,继国际象棋人机对弈程序软件“深蓝”战胜人类特级大师之后,成为智能研究领域的又一重要目标对象。在围棋的官子阶段,由于现行的围棋理论,已经使用相对准确的价值表示单位(目数),以及可比较可验证的计算方法,来计算判断官子着手的价值大小,高明的棋手可以据此来实施正确的行棋次序,从而克敌致胜。但在围棋的中盘和序盘阶段,无论再高明的棋手,也不敢声称自己的每手棋,都是“只此一手”的唯一正确着手!其原因正在于围棋的天文巨量变化,而这种变化远非人智可以穷尽,从而也无可验证着手的正确性。再优秀的棋手,永远在寻找利己的“新手”;再聪明的棋手,在围棋的序盘和中盘,也只能依靠“棋感”行棋。所谓“棋感”,实际上就是经验的模糊的判断,而这种“棋感”,可能是不具有感官反馈应激功能的电脑永远也无法拥有的。
这种模糊的判断能力,是否属于智能范畴,对电脑围棋而言并不重要,关键在于如果人脑是凭借模糊判断而傲视于电脑,我们不知道电脑如果拥有精确的分析判断能力后,二者较量的结果会孰优孰劣?
我们知道,不借助工具,一般人脑的数学计算能力远不如电脑,无论是计算速度、计算量还是复杂程度。人脑的记忆能力也是有限的,为了在有限的容量空间内存储有用的信息,大脑常常会删除被长期搁置不用的信息,也就是“忘却”。除此之外,我们的“意识”还屏蔽了感官大量传输给大脑的无用的重复的不需要记忆的信息,把很多应激反应转交由“无意识”处理。人类的思维活动,主要依靠大脑中现有记忆单元(块、堆)之间的关联活动,并主要记忆其关联过程形成新的记忆单元,而不是依靠新增的思维“素材”,据专家分析,非如此机制运作,我们人类的脑袋将硕大无比而身体根本无法负担承受。
大脑的这种运行机制,与围棋棋局有很大的相似性。更准确地表述,应该是围棋棋局的变化,与大脑的运行机制有很大的相似性。产生围棋巨量变化的根源是围棋的棋盘,标准棋盘的位点是有限的(361点),而通过位点之间的关联所产生的变化却是近乎无限的,而且,相同数量的位点,因为点位的不同,所属棋色的不同,产生的变化结果也截然不同。
大脑产生“感觉”这种模糊判断的原因,一是受先天条件的限制所致,二是这种判断已经能够满足我们的生存需求,从而缺乏持续进化的动力。毫无疑问,感觉常常是不准确的,不精确的,容易产生偏差错误的。也毋庸置疑,只要有足够的判断条件,有明确的判断标准,有清晰简明的判断方法,经过逻辑运算得到的结果,肯定要比“感觉”来得精准。
依靠电脑运行速度快,内存容量大,以及辅佐以各种应用软件后远胜于人脑的计算能力,电脑围棋棋手终将战胜人类棋手,这只是时间问题,而不是能否的问题。电脑功能及其应用软件的进化速度,由于商业利益的驱动,远胜于人脑的进化速度。正是这种进化,为电脑棋手战胜人类棋手提供了基本保证。
(未完待续)
作者: 人生无梦 时间: 2004-11-21 20:17
太高深了!
作者: 路南 时间: 2004-11-25 14:45
3、决定价值的围棋因素
我们当然可以理直气壮地宣布:只有人类才是决定围棋及其价值的唯一因素。——因为围棋本来就是我们人类创造的游戏,从棋具到游戏规则,其实都是根据人类意志决定的。就是所谓“价值”,也不过是我们人类为认识世界宇宙而建立的衡量标准而已。连同电脑战胜人脑的“人机大战”,其实都只是商家和媒体吸引眼球的炒作,实际上电脑和人脑的较量,只是人类集体智慧和个人智慧之间的游戏。
电脑围棋研究的目的是:当棋具和游戏规则确定后,到底是什么因素形成和影响了价值及其变化。笔者一直认为:围棋问题好比一棵大树,形成围棋问题树的根本,是棋盘以及依次轮流各方一手的对局形式;围棋规则好比是树干,是在棋盘和对局形式之上生成引伸,为保证棋局正常进行并能计算判别终局结果的必须措施;而围棋的各种下法、各种战略战术其实都是大树的分杈枝叶。任何围棋问题,寻本溯源,都可以从棋盘以及对局形式中找到答案、得到解释。
棋手:棋手是游戏的参与实施者,如果围棋的价值总量是块大蛋糕,对局的两个棋手就是大蛋糕的分食者,他们的每手棋更象分切蛋糕的餐刀,每一刀只能切下一部分,他们可以决定切在什么地方,怎样切,甚至不切。但是棋手只是现成蛋糕的分食者,他们并没有生产蛋糕——蛋糕早就放在了那里。
规则:规则规定了分食者的分食方法,并规定了最终分食数量多寡的计算方法,而且还制定了均衡先后手的补偿办法,以保证游戏的公平性和公正性。但是,规则同样不生产蛋糕。它只能保证分食者获得尽可能平等的分食机会,并告诉人们:蛋糕就在这里,就是这样大,分食多少完全由分食者的能力决定。
棋盘:棋手常常会认为自己是棋局的主宰,而事实上,他们只是在棋盘已经搭建好的舞台上进行表演。棋子是道具,是表意符号,传达演译着棋手内心世界的无声诉求。而棋盘太单调平凡,太呆板规整,以至被人们忽视了棋盘蕴含的重要意义:无等级差异的黑白两色棋子,只有在棋盘上,才具有了生命活力,展现出千姿百态的无穷变化。
笔者试尝从另一角度来重新审视一下我们早已烂熟的棋盘:
(A)棋盘的结构和元素
围棋的棋盘是网格系统结构:
网格由点和线段组成;
(有线无点是表格,有点无线叫点阵,有线有点谓网格);
网格的点叫作格点,网格的线段叫作网路;
由相邻格点和相邻网路形成的封闭区域叫作单元格;
由一定数量的单元格组成的网格叫作有限网格;反之,称为无限网格;
在二维空间展开的网格叫平面网格;
在三维空间展开的网格叫立体网格(亦称框架);
相邻格点间的网路都是等距的网格系统称为正网格;
单元格由4个格点和4条网路组成,且相邻网路等距并成90°夹角的网格为正方网格;
(单元格由3个格点和3条网路组成,且相邻网路等距并成60°夹角的网格为正三角网格;单元格由6个格
点和6条网路组成,且相邻网路等距并成120°夹角的网格为正六边网格;......)
网格系统的大小与网路的长度无关,与单元格的数量有关;
单元格的数量为某一数值的平方值或立方值,且保持单元格形状的网格系统叫作整网格;
构成网格形状的网路和格点叫作网格边界;
所以,
围棋的棋盘是有限的,平面的,由格点和网路及网格边界组成的,正方整网格系统结构。
我们把这种网格系统称为—围棋网格系统!
(B)棋盘的位点标示
棋盘的位点标示涉及电脑围棋程序的棋盘设置设计和棋局的存储格式,已知通常有两种方法:直角座标法(二元法)和一维座标法(一元法)。据说陈志行教授的“手谈”就采用一维座标法。
根据棋盘点位的位值研究表明,棋盘的天元位置是棋盘的中心,具有最大的位值且是唯一的位点。位值是棋盘点位的价值表示,由该位点的位置决定,不同的位点具有不同的位值,位值不同表明该点的位置不同,其中棋盘四角顶端位点的位值最小。位值同时还表明该位点的影响度。
位值研究还显示,在棋盘上存在以天元为中心且相交于天元的四条对称轴,即2条对角线和与棋盘边界垂直且通过天元的2条垂线,每条对称轴均将棋盘分割成全对称的两部分,这4条对称轴同时把棋盘分割成全等的8个区域。从而在棋盘上的任一棋形,通过以天元为中心的90°180°270°三次旋转后,可以得到这一棋形的4种表示形式,再通过以任一对称轴为翻转轴进行180°翻转后的三次旋转,又可以得到这一棋形的另4种表示形式,合计为8种表示形式。同理反之,棋盘上的任一棋形通过旋转和翻转后,与另一棋形重合,实际上为同一棋形。
根据以上原理(姑且称为旋翻原理)设计棋盘程序和存储格式,可以将棋局存储量减少7/8,实际上,我们还可以得出这样的结论:围棋棋局的变化总量至多也只有361!的1/8。而且,在4条对称轴把棋盘分割成的1/8区域中,我们还可以看到棋局第一手全部选点其实只有55点,而非361点,而正常棋局开局第一手选点其实只有6点,即天元,角星位,三三,小目,目外,高目6点。
综上所述,将棋盘设置为以天元为中心原点的直角坐标系统,似乎更符合棋盘的本来面目,而棋盘上古人九
星的设置似乎也隐含了旋翻原理。为了省却区域符号,我们可以仍然采用原来的直角座标法,即纵向的Y轴从上
至下用英文字母表示,横向的X轴从左至右用数码表示,先横后纵,以符合书写阅读习惯和保持点位搜索表达习
惯。如天元为(10J),右上星位为(16D)。但座标系的原点从角部迁移到了中心。
(以上A、B二篇原贴于焦点网电脑围棋小组。未完待续)
作者: bf523 时间: 2004-11-29 19:41
d
作者: 路南 时间: 2004-12-2 12:15
C、棋盘的位点关系
现有的围棋理论,关于棋盘的不多,可以说,人们对围棋棋盘的认识还处于相对肤浅和初始的阶段,棋盘的研究是围棋理论特别是电脑围棋理论有待开发和探索的处女地。
如果把所有的围棋问题作为问题树,大概占总量九成以上的问题都可以归结为着法问题,着法问题我们可以看成是问题树的枝叶;围棋规则大致分为基本规则对局规则和竞赛规则,基本规则是问题树的树干;而棋盘则是问题树的树根,围棋的绝大部分问题其实由围棋棋盘产生和决定,如果棋盘的大小(单元格的数量)改变,形状改变,围棋的一切问题都将随之而变。
(一).围棋网格系统的格点关系
把棋盘看成是网格系统,是基于以下想法和考虑:尽量避免现有围棋理论的影响;纯粹的网格系统研究不一定在围棋方面有用,但可能可用于其他方面。
棋盘网格系统的元素构成包括格点和网路及边界,棋盘的性质由构成元素及其相互关系决定。系统中的格点通过相邻网路和相邻格点与其他所由格点发生关联,因而格点与格点的关系由格点间的距离和路径决定。
格点间的关联可以分为两种关联形式:直线关联和非直线关联。直线关联的任意两格点间的距离,由经过的网路数量决定,为了理解和计算方便,我们把相邻格点间的距离值设定为1(当然也可以设定为其他任意数值),如此,标准围棋盘每边边界两端点间的距离值为18,围棋棋形术语中“关”的两格点的距离值即等于2。非直线关联任意两格点间的距离值,由以两格点为对角斜线形成的矩形直角边决定。两格点间的距离定义类同几何学中关于距离的定义:两格点间最短的路径。
网格系统中的距离只与由经的网路(相邻格点间的连线)数量有关,与网路的具体长度无关。格点与格点的关联程度(关联度)与距离值(关联值)有关,关联值与关联度互为倒数关系:即关联值越大,关联度越低。
格点间由经的路径称为路由。直线关联的路由只有1条,直线关联的路由如被“阻断”,格点间的关联可以通过其他路径,但关联值增加,关联度降低;非直线关联的路由至少有2条以上,等距的格点间有不同数量的路由,路由数量随距离值的增加及对角斜线形成的矩形趋向正方形而增加,呈爆炸性。(网路路由的数量计算是个数学难题,可能与数学的图论有关。简单的路由计算可由人工推算,复杂的目前尚无公式可以利用。)
阻断某一格点与其他格点的关联称为封闭,围棋棋盘边界就是将无限网格封闭成有限网格。封闭某一格点所需的格点数视该格点的位置和封闭程度而定。
将棋盘天元位置的格点与棋盘上其他所有格点的关联值进行标示,我们可以得到天元格点的关联全值图,并可以看到一个有趣现象:相同的关联值形成环状以天元为中心向外扩散,如同平静池塘扔进一块石子形成的波环。因而我们把这种现象称为波环效应。波环效应可以从物理学角度解释关联值与关联度的关系。
把关联全值予以相加后得到的数值称为位值。位值表明该格点在围棋网格系统中的相对位置,不同位置的格点(位点)具有不同的位值,以下是棋盘右下区域格点的位值:
3420
3439 3458
3496 3515 3572
3591 3610 3667 3762
3724 3743 3800 3895 4028
3895 3914 3971 4066 4199 4370
4104 4123 4180 4275 4408 4579 4788
4351 4370 4427 4522 4655 4826 5035 5282
4636 4655 4712 4807 4940 5111 5320 5567 5852
4959 4978 5035 5130 5263 5434 5643 5890 6175 6498
天元的位值是3420,棋盘右下角部顶端的位值是6498。将上图以天元中心进行翻转,可以得到棋盘所有位点的全部位值。(旋翻原理和对称原理即根据上图,参见“棋盘的位点标示”一文。)格点位值的差数均为19的倍数,位值仅在有限网格系统中具有意义。我们把位于对称轴上的格点称为轴点,把位于系统边界线上的格点称为界点。
格点相对围棋而言就是位点,位值是位点在棋局开局前棋盘上的静态初始值。在围棋对局过程中,每手棋着点选择后对其他位点产生影响和变化的应该是关联度,对棋局具有分析和判断价值意义的是随棋局进程变化而变化的全部空白位点的关联度。
(二).关联度在围棋中的应用
在围棋对局过程中,棋形的厚薄安危,定式能否成立的优劣判断,以及外势厚势的价值评估,一直是令人类棋手尤其是专业棋手头疼的问题。实战形成的实地和官子,都可以用目数来进行计算估算,而棋形和定式及外势则缺乏行之有效的可量化评估并可验证的手段。(参见围棋天地2004年5期,邵炜刚“有力的变招”一文)
电脑围棋的发展也对围棋理论提出了更高要求,人类棋手碰到问题往往可以根据经验和感觉来解决,电脑不惧计算,但就是缺少经验和感觉,电脑棋手需要的是计算的方法,因而围棋理论的量化是电脑围棋研究的重要课题。棋盘网格系统研究正是对电脑围棋基础理论的一种探索。
我们可以把棋局每一手棋着子后对某一空白点位的关联度视为绝对值,把黑棋白棋着子后对其他全部空白位点的关联度预先设定为正值或负值,根据同值相加异值相减的原则,我们可以得到该点位受到黑白棋影响的数值,并把这种数值称为影响值。依此类推,随着棋局进程,我们可以得到棋局盘面全部空白点位不断变化的影响值。
位值属于棋盘的初始静态值,影响值则属于棋局盘面的变化动态值。影响值用人工计算显然过于复杂,不可能用于人类棋手的实战,但我们可以利用计算机强大的计算功能,编制成分析软件,作为人类棋手的训练参考工具,并输入各种高手棋谱,制定各种相应的技术参数,用于电脑围棋程序中,作为程序的分析判断系统之一。
按上述距离值的数值设置,影响值计算将出现分数或小数,如何合理地设置数值进行运算,是围棋网格系统研究的又一课题。
根据影响值我们可以得到棋局盘面以下几种数据,以及这些数据所反映的意义:
1.盘面上空白点位的正值点位数量和负值的点位数量,相比较得到双方对盘面的控制面大小;
2.盘面上正值总量和负值总量,相比较得到双方对盘面的控制强度;
根据以上综合数据判断双方形势的优劣;
3.盘面上正值位点和负值位点所形成的交界线,交界线附近应为序盘中盘时的“大场”或“要点”。
4.根据可视为实空的点数设定参数,计算双方的实空;
5.根据棋形的设定参数,判断棋形厚薄安危程度,以决定是否补棋或脱先。
上述数据的利用和参数设定均应通过实践检验并不断予以修正。
作者: tang-xr 时间: 2004-12-27 12:49
如果说,围棋可以分解成361阶段乘的1/8的变化,那么,这8块的互相影响又是怎样解决.
作者: 路南 时间: 2004-12-28 11:23
To:tang-xr
可能是理解上的差异。棋盘可以分成全等的8个区域,和一个棋形(棋谱)通过翻转形成8种表现形式,是两回事。所以不存在区域间的联系影响问题。
作者: tang-xr 时间: 2004-12-28 14:24
对于这研究我对你的方法很感兴趣.
我去了电脑围棋小组,看了看你今年发的贴子.觉得都不错.也回了贴.在围棋-归纳-电脑围棋-推演-围棋这一篇.
你能介绍一下类似理论较多的论坛或网站吗.
还是这个问题.如果,围棋的变化是361的阶乘的1/8的结论是因为可以通过翻转在不同区域形成的8种相同的表现形式.这个结论是为了电脑围棋程序(棋谱)简化?
作者: 路南 时间: 2004-12-29 10:03
To:tang-xr
在详细回答你的问题之前,还是想请你看一下也是今年贴在电脑围棋小组的文章,不知看过没有?短文不长,就再献丑一次。
。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
原文(路南于2004/04/07 14:10粘贴于电脑围棋小组)
《谈谈棋局的变化》
承蒙午青之邀,被拖下水。不好意思,拿不出程序不敢谈,只好谈些基础问题,纯属瞎扯闲聊。
说起围棋的变化,就使人想起爆炸,说起爆炸,使人想起爆竹。制作爆竹的材料很简单:马粪纸+泥巴+火药。马粪纸的材料是稻草,稻草是马这类反刍动物的主要食物,马粪纸状似其排泄物故名;泥巴随处都是;火药是中国的四大发明之一,常被我们用来向西人炫耀祖先的聪明,以证明子孙的不笨。制作火药的材料也很简单,电影“地雷战”里有配方介绍—叫1硝2磺3木炭。在火药里再加上其他材料,还可以制成焰火,逢年过节晚上放起来很好看的。
爆竹利用火药燃烧爆炸产生的推力,可以飞上高空。那么,制作一个巨型爆竹,能否把卫星送上太空呢?答案显然是否定的,因为原理虽然相同,但量变产生了质变,其复杂程度和难度系数发生了本质性变化。
任何比喻总是跛脚的,但——希望能够说明一些道理。
对围棋棋局的变化,襄有“千古无同局”之说,这里推荐“围棋天地”2003年第2期中有陈祖源先生“也谈千古无同局”的一篇文章可以阅读,也许我们会对棋局的变化总量有个清醒的感性的基本的认识。这里不再赘言,只说一个大概结论:19路围棋棋局的变化总量,以每局平均250手计,每手以2种变化算,为2的250次方,约等于10的75次方。这个数字远比361!小。以全球50亿人计,每天每两人下30盘算,每年约可下25万亿盘棋,穷尽围棋棋局的变化总量,大约需全球人民辛勤工作400万亿亿亿。。。。亿(共7个亿字)年。(与原文略有修正,因为棋要两人才能下。)
这个数字既使与地球50万亿漫长的年龄相比,也犹如太阳和芝麻,似火箭和爆竹不可同日而语。除了复盘研究,同局的概率大概趋向于零。围棋二千多年的悠远历史,曾经的所有变化大概也只是其中的很小一部分。要用搜索的办法穷尽其变化找什么正解,就是有正解,找到的时间肯定也很长,可能没有谁有耐心和它下棋,那怕CPU运行速度再快。
之所以要谈这些,不是想打击大家的积极性,而是觉得要有心理和思想准备。围棋不简单,电脑围棋也很难,难就难在其近乎无穷的变化。所以要知其难,知其所以难,然后可以对症下药,好想办法。
围棋问题一大堆,盘根错节,变化复杂,我中有你,你中有他。因此怎样分类?怎样识别?怎样计算?都是问题。计算的手段和目的?从那里入手?怎样入手?又是一大堆问题。
喜欢电脑围棋的同好大致分两类:做起来碰到问题再想;想好了问题再做。路南属于后一种,所以提出问题想和大家一起讨论,听听各位的高见,这也是大家走到一起的目的吧。
。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
此文主要针对一些爱好者试图应用电脑的搜索理论和技术,来解决围棋中变化问题的倾向,发表个人的一点看法。对于围棋棋局的变化总量,本人更赞同陈祖源先生的说法,或者是北宋沈括的算法,而361!的算法,实际上是非围棋的,这是稍具围棋常识的人都明白的道理——因为361点中,绝大部分的点正常的棋局是不会下的,今后也是如此!
关于研究围棋棋局的变化总量的目的,或者说在电脑围棋中的应用,笔者一下子也说不明白,但至少可以提高一些大家对围棋的认识吧。在电脑围棋中,如果一些基本棋形的识别是必须的,那么,也至少可以减少很多存储量,实际上,有关旋翻原理,已经应用于一些棋谱软件。
另外再说一点,相关电脑围棋的理论研究和资料,其他网站很少,除了飞扬,目前较多还是集中于焦点网的电脑围棋小组和围棋程序小组,但日渐式微。这也是想建专业网站的原因。
作者: tang-xr 时间: 2004-12-29 11:27
问这个问题的目的是看了你的文章后猜测旋转原理可能是用数学中类似反函数的概念可以把棋型对称到各个象限来减少计算量.那么.变化是55的阶乘?而不是361阶乘的1/8?
对电脑围棋的原理你能简单说一下吗.
还是对围棋基本理论有兴趣.
作者: 路南 时间: 2004-12-29 16:25
哈哈!你这个问题问大了,恐怕非三言两语可以道明。要知道本人也只是个业余爱好者而已,对电脑围棋的研究也纯属对围棋的热爱和兴趣所致,很多东西也在学习摸索之中,希望能和棋友网友共同探讨。有些不便在论坛讨论的问题,欢迎发E-mail:lunanfeiou@163.com联系。
电脑围棋,即围棋人机对弈程序,实际上也就是人类想利用电脑技术编程技术和围棋知识,制造一个会思维会下围棋的电脑棋手。这里所说的电脑,不一定指我们通常使用的微机PC,如打败国象特师卡斯帕罗夫而名噪一时的“深蓝”,实际上是台配备了对弈程序,存储了专门针对卡斯帕罗夫的大量棋谱的大型高速计算机。
由于“深蓝” 实际上是针对要打败卡斯帕罗夫而专门设计的,这场所谓的“世纪人机大战”,其实只是一场商业广告炒作而已。“深蓝”并不具备普遍的科学价值,也不具备商业市场应用价值。
人机对弈程序研究,还牵涉一个人类世纪梦想,那就是实现人工智能。“深蓝”主要应用博弈理论以及棋谱搜索技术,在人工智能研究方面也并无成果发表,因而人工智能研究的目标从国象转向了围棋。
我们知道,程序 = 算法 + 数据结构 + 程序设计方法 + 语言工具和环境,虽然实际编程并非如此简单,其中算法的确定至关重要。我们还知道,现行的围棋理论很多是感性的模糊的。而算法的确定和实现,则必须理性的,清晰的,可量化计算的,可验证的。电脑围棋还有很长很多的路要走,可以说,围棋理论量化研究任重道远,也是基础的基础。
简单概括而言,还是那句老话:电脑围棋,就是人类围棋知识的电脑程序化。
作者: tang-xr 时间: 2004-12-30 12:32
谢谢.如果围棋能够量化,大家的学习要方便很多.而不再凭感觉.
为了这感觉.大家化了很多工夫.大多都达不到目标.
我个人认为.围棋无法精确量化.
希望看到你的基本理论多发表.
欢迎光临 飞扬围棋 (http://flygo.net/bbs/) |
Powered by Discuz! X3.2 |