越城区围棋协会  柯桥区围棋协会  上虞区围棋协会  诸暨市围棋协会  嵊州市围棋协会  新昌县围棋协会  店口镇围棋协会
首 页 协会概况 新闻动态 通知公告 赛事活动 赛事报名 行业管理 围棋文化 越人棋事 查询系统 资料汇编 荣誉墙
 
围棋逻辑规则及中国规则简介
 时 间:2018-1-8  人 气:756  发布单位:绍兴围棋协会  信息来源:网络  [打印本页] [关闭窗口]
 

围棋逻辑规则及中国规则简介

不会功夫的潘达 01-08
2016 年,AlphaGo 与人类最受瞩目的一战,对抗韩国棋手李世乭,对弈于韩国首尔,却采用了中国围棋规则。为何 AlphaGo 采用中国规则?AlphaGo 如何实现中国规则?类中国规则相比于类日本规则有何优势?我们将在本文讨论。

本文暂时禁止一切转载(包括弈客)。

——————

围棋逻辑规则(Tromp-Taylor 规则)

围棋由两位名为 " 黑 " 与 " 白 " 的玩家,在 19 乘 19 的正方形格点上进行。

每个格点可以被染色为黑、白或无色。

给定格点 P,如果没有被染色为 C,且存在一条(水平或垂直)起始于 P 点、由相连的 P 的同色点组成、终止于某 C 色点的路径,那么我们说点 P 能到达C 色。

清除一种颜色是指清空一切那种颜色、且不能到达无色的点。

从全盘无色的格点开始,两位玩家轮流操作,由 " 黑 " 玩家先行。

每个回合,玩家只能从以下两种操作中选择其一:a ) 弃权;b)行动,且此行动的结果不得重复已有的格点染色。

一次行动由以下步骤组成:a ) 将一个无色点染成己方的颜色 ; b ) 然后清除对方的颜色;c)清除己方的颜色。

游戏在两次连续的弃权后结束。

黑(白)方的总分,是黑(白)色格点颜色的总数,与仅与黑(白)色相连的无色点的总数之和。

得分高者为胜,平分则为平局。

逻辑规则的发明者之一 Bill Taylor 称,逻辑规则实质上是新西兰围棋规则的简洁转述。新西兰规则是类中国规则中最简明的一种,它递归地给出基本概念的定义。新西兰规则对于计算机科学家、数学家和逻辑学家来说或许是一种享受,但对于其它人来说或许并非如此。

逻辑规则很容易被转化为代码(注 1:John Tromp 给出的一个代码实现http://tromp.github.io/go/SimpleGo.hs.txt)。自 1996 年问世起,逻辑规则被应用于大部分围棋 AI,包括 AlphaGo。Bill Taylor 强调,他们采用类中国规则的动机是,类中国规则相比于类日本规则,更简洁、优雅、易描述、易于判决。这一类规则给人以 " 缺省之美 " 的感觉。

下文将简述围棋规则演变史,对比中、日两类围棋规则的核心差别,并用自然语言(人话)解释逻辑规则。希望读者能在本文结束之后,与 Bill Taylor 以及笔者有所共鸣。

引言

围棋的发明可上溯至传说时代。自汉代以来,围棋的核心规则——气尽提子、地多者胜,未曾改变。这两条规则简洁精炼、高度抽象,寥寥数语就将十九道纹枰辟作一方战场。尽管围棋主要流行于东亚,其内核被认为能够超越不同文化的边界。

二十世纪初,国际象棋大师爱德华 · 拉斯科 ( Edward Lasker ) 在当年的围棋荒漠美国,偶然接触到围棋。在咖啡馆里,一份日本旧报纸上刊载的围棋棋谱引起了拉斯科的兴趣。报纸上的日文,拉斯科完全不懂,他却兴致勃勃地和朋友研究起了棋局。一番争论后,两人一致同意此局是黑胜。他们为此请教了一位日本人,却得知报纸上的局面,是黑方已经认输,白方获胜。事后,拉斯科与友人认真研究此局三周,方初窥围棋门径。之后,拉斯科不厌其烦地像朋友推荐这个 " 堪与国际象棋相比 " 的游戏,是围棋在美国的首倡者之一。

拉斯科曾说," 国际象棋规则华丽繁复,它只能是人类发明的;相形之下,围棋规则是如此简明、和谐、逻辑严谨。如果宇宙中还有其他的智慧生命,他们几乎一定玩围棋 "。拉斯科对围棋不吝赞美,唯独弄错了一件事:在他的年代,围棋规则还远远称不上 " 逻辑严谨 "。

有关围棋规则的争议,多是围绕一个核心概念——终局条件。大部分棋类游戏都有明确的终局条件。例如中国象棋的 " 欠行(困毙)";再比如五子棋,五子连线即胜。而围棋,并无类似的终局条件。在 20 世纪以前的日本,棋手通常用简单对话示意对局结束:" 没棋了吗?"" 嗯,没棋了。"" 是黑胜 3 目吧。"" 没错。" 以对局双方的默契确认终局,颇有君子之风。其中,诸如 " 没棋了 " 的说法隐含的意思是,继续进行对局无利可图,方选择终局。然而,就像宋襄公在战场上的仁义被兵者诡道利用一样,这不成文的君子协定终究会被小人钻了空子。

万年劫事件

(棋谱来自弘通围棋网)

1928 年,日本秋季大手合,高桥重行三段(受让二子)对濑越宪作七段。棋局行至如图,310 手,理应终局。黑棋局面大差,但执黑的高桥重行不肯认输。他的理由是,棋盘右边的万年劫悬而未决,尚有棋可下。

我们来分析一下此局中的万年劫。

像这样的棋形,谁先动手谁吃亏,通常留到棋局最后双方妥协了事,因此得名 " 万年 " 劫。在左图的初始局面下,白棋貌似掌握着劫争主动权,却不能在 A 位消劫,否则整块白棋变成 " 拳头六 " 无条件死亡。黑棋可以在 A 位提劫,并且有权进一步挑起劫争,如右图的黑 1 和黑 2。为了防止黑棋的手段,执白的濑越宪作早已将所有劫材补净。因此,执黑的高桥重行也不敢飞蛾扑火。按照传统,此时黑棋应该主动消劫,然后终局。

在场的裁判岩佐圭敦促高桥消劫,但高桥不乐意。濑越宪作见对手赖皮,愤怒之下收了几个单官,而高桥索性也跟着收单官。双方的争执引来了在场的其它棋手。围观的棋手分成两派意见,僵持不下。岩佐圭不能服众,只能宣布将棋局交给秀哉名人仲裁。当年,名人是棋界唯一的九段,拥有极大的权利。若濑越宪作若赢下此局,即可升八段,成为唯一的 " 准名人 ",可能威胁到秀哉名人的地位。高桥作为名人的弟子,为了阻止濑越升段,因而坚持不认输。秀哉则宣称,执白的濑越宪作收单官不合弈理,此局判无胜负。此判决招致濑越一派棋士的强烈不满。日本棋院副总裁大仓喜七郎只好出来打圆场,判定 " 白胜,黑不输 ",濑越宪作升段一事也就不了了之。

日本规则

1949 年,日本棋院颁布现代围棋第一部成文规则《日本围棋规约》。" 唯空是地 ",或云 " 数目法 ",是日本规则计算胜负的核心。所谓 " 唯空是地 ",就是只有被黑方(白方)活子包围的空点才算目数,而活子本身不算目数。这与中国规则的 " 子空皆地 " 对立。然而,《规约》篇首有言,要求 " 以对局者的良知和互相信任 " 对待规则,仿佛旧时君子之风的延续。在胜负的残酷面前,《规约》在面世十年之后遭遇了首次重大争议。

1959 年 2 月,吴清源 - 本因坊三番棋第二局,高川格(黑)—— 吴清源(白)。

(棋谱来自陈祖源《围棋规则世界统一——研究与推进》)

棋局走到单官阶段,黑棋盘面 4 目,而按比赛规则黑贴 4 目半,当为黑半目负。然而,执黑的高川格指出,白棋应在 A 位补一手,否则黑棋在局部有手段,如下图。

黑 1 以下可造出紧气劫,不仅有望救出黑棋残子,还能反杀白棋大块。如果白棋在 A 位补棋,则少了 A 位的一目。棋局最终应为盘面 5 目,胜负颠倒。吴清源反驳道,这个劫是白棋先手提劫,而黑棋在盘面上并无劫材可寻,因此白棋不用补棋。

此案猛一看和前文所述的万年劫非常相似,黑棋的手段其实并不成立。其中区别在于,万年劫一局,白棋想补棋而不能补,无奈去走单官还被批判 " 超出弈理之外 "。而高川格和吴清源局中的最后一劫,白棋可以补棋,却会因补棋丢掉 1 目,输掉整局。

最终,日本棋院援引《规约》,因此处黑棋可以造出紧气劫,判白棋须补棋,黑胜。《规约》规定,诸如此类最后一劫的情形,紧气劫必须补,而宽气劫不必补。笔者不知为何此条款区别对待 " 紧气劫 "、" 宽气劫 ",只知此事本可避免。最后一劫争议的根源在于,日本规则 " 唯空是地 " 的哲学,使得像白棋在己方空内 A 位补棋的一手会损失一目棋。如果补棋不损目,执白的吴清源自然可以大大方方地补一手。

后来,吴清源在自传《天外有天》中批评日本规则不如中国规则完善。那么,中国规则又如何能解决上述的问题呢?

中国规则

中国围棋规则的第一版诞生于 1957 年。当时,中国棋界百废待兴,一切向日本围棋看齐。初版中国规则在明清旧规则的基础上,仿效日本围棋,删去了座子和还棋头这两项基本设定,但仍保留数子法。没有还棋头的数子法遵照 " 子空皆地 " 原则,表述为 " 将双方死子清理出盘外后,对任意一方的活棋和活棋围住的点以子为单位进行计数。"

在子空皆地的原则下,吴清源可以随意补棋而不必担心损失目数;收单官不仅不会像濑越宪作那样被批评,反而是争胜负的必要组成部分。更重要的是,一条解决争议棋形的万能方案," 实战解决 ",得以在中国规则框架下实施

" 对死棋和活棋的确认,对局双方意见必须一致。如有争议,重新开始对局,由认为是死的一方先下,以实战解决。" ——中国围棋竞赛规则(2002 版)第 21 条 " 终局 " 第 4 款

举一个很多棋友熟悉的例子,盘角曲四。盘角曲四的基本形如下图。

局部貌似双活,但黑方可以利用角部的特殊性强杀白棋,如下图。
黑棋可以先 " 自杀 " 送死四子,然后点入。白棋只能扑劫求活,此劫黑棋先动手。在多数棋局中,黑棋可以选择补净劫材之后,图穷匕见,白方因没有劫材而无力抵抗,此所谓 " 劫尽棋亡 "。问题来了,日本规则下,补劫材要亏目,因而整个杀棋的流程无法进行。旧版日本规则只好钦定盘角曲四是净死。但问题并没有完全解决。不是所有劫材都能补净的,例如下图:
左上角黑棋是盘角曲四,被采用日本规则的弈城平台判为死棋。右上角是双活,这里隐藏着黑棋的翻盘手段:黑棋可以用双活棋形的自杀作为劫材,这个劫材是白棋补不掉的。因此,按照旧式日本规则判定左上角盘角曲四净死,并不合理。

如果是中国规则,事情就好办了——直接实战解决。如图所示的局面,白棋若左上开劫,黑棋找右上自杀的劫材;之后无论白棋应劫还是消劫,均得不偿失,不如不开劫。因此最终结果应视作左上的盘角曲四和右上均为双活,黑胜。

诠释逻辑规则

介绍完中日规则的核心差异,我们再回过头来看逻辑规则的细节。下文将给出逻辑规则的逐条诠释。

围棋由两位名为 " 黑 " 与 " 白 " 的玩家,在 19 乘 19 的正方形格点上进行。

格点 ( grid points ) 是图论 ( graph theory ) 中的一个基本概念。19 乘 19 的正方形格点,画到一块木板上,就是我们熟悉的围棋盘了。当然,围棋盘也可以有其它的规格,比如 13 路、9 路、或者长方形棋盘。

每个格点可以被染色为黑、白或无色。

将某个格点染成黑(白)色,等价于在这个点上落黑(白)子。将格点染为无色,等价于将格点上原有的棋子提走。

给定格点 P,如果没有被染色为 C,且存在一条(水平或垂直)起始于 P 点、由相连的 P 的同色点组成、终止于某 C 色点的路径,那么我们说点 P 能到达C 色。

一串棋子(string)即同色相连棋子的集合。注意它与 " 一块(group)" 棋子的区别。一串棋子共享气(liberty);一串棋子能到达多少个无色点,它就有多少口气。

清除一种颜色是指清空一切那种颜色、且不能到达无色的点。

这等价于说将一串没有气的棋子提走。

从全盘无色的格点开始,两位玩家轮流操作,由 " 黑 " 玩家先行。

空枰开局,黑先白后。

每个回合,玩家只能从以下两种操作中选择其一:a ) 弃权;b)行动,且此行动的结果不得重复已有的格点染色。

这里定义了两个概念:一是允许弃权;二是禁循环(禁全同),即禁止使对手面对已出现过的局面。特别地,此处的禁循环是 PSK 规则,与新西兰规则中的 SSK 有微妙区别。

一次行动由以下步骤组成:a ) 将一个无色点染成己方的颜色 ; b ) 然后清除对方的颜色;c)清除己方的颜色。

这里规定了,如果落子以后两方各有棋子气尽,则先提取对方的棋子。另外 c)款意味着允许块子自尽,与应氏规则一致。

游戏在两次连续的弃权后结束。

两弃终局。方便起见,也可采用以下的修正方案:两弃之后进入死子结算流程。若对局双方对棋盘上哪些点应无色化(清楚死子)达成共识,则正式终局;。否则棋局继续。

黑(白)方的总分,是黑(白)色格点颜色的总数,与仅与黑(白)色相连的无色点的总数之和。

子空皆地,或曰数子法(area scoring)的逻辑化描述。

得分高者为胜,平分则为平局。

地多者胜。一般会给白方加上一个非整数的贴目(比如 7.5),以避免平局。

总体而言,逻辑规则除允许块子自尽外,和中国规则保持一致。

实战解决对 AlphaGo 的意义

最新版本的 AlphaGo Zero,从一张白纸开始训练,除了逻辑规则以外没有输入任何的围棋知识。因此,在训练的初期,AlphaGo Zero 判断一块棋死活的唯一方式就是想尽办法把棋子从棋盘上提走。例如下图,AlphaGo Zero 自战训练头几个小时的一盘对局。

棋局进行到这里,各处势力范围已大致划定。若是两位人类棋手来下,棋局将很快结束。然而,此时的 AlphaGo Zero 还是个宝宝,她对各个局部的死活尚无法明确判断。因此棋盘四个角落黑白大队人马的死活几度反复,终结于下图。
双方把能填的空点都填上,才满意地两弃终局。如果是日本规则,黑白双方怕是不肯把自己的空都填满,达不到训练的效果。

幼儿版的 AlphaGo Zero 下了一盘令人着急的棋,却向我们展示了人类忽略的一点:人类平时认为 " 下完 " 的棋,严格地说,其实并没有下完。只不过,大多数情况下,对局双方可以对被包围残子的死活简单达成共识,且确认在对手的地盘中无法获取利益,故协议终局,以简化胜负结算流程。

凡事总有例外,简化了流程自然也增大了出错的概率。1999 年中日天元对抗赛,中国棋手常昊执黑对阵日本棋手小林光一。棋至终局,白棋即将小胜。执白的小林光一例行公事收单官,却忽视了自身气紧的问题。黑 1 白 2 之后,常昊在 A 位暴动,黑棋救出残子,并将白地洗劫一空,逆转胜负。

黑 A 处的手段不算简单,常昊第一时间发现了问题,而对手没有发现,证明常昊在此局部技高一筹。而如果是旧式日本规则,不收单官,常昊就无法施展此处的精彩手段。中国规则实战解决的优势再次得以体现。

对于残子的死活,人类尚且偶尔无法达成共识,围棋 AI 之间更是如此。两个用不同方式训练出的 AI,互相之间不了解对手,比如不确定对手知不知道刀把五是死棋,那么最保险的办法当然是把对手的 " 死棋 " 一个一个吃掉。吃死棋,就是在自己地盘里落子,日本规则下亏目,那么只能采用中国规则。因此,很多围棋 AI 养成了终局前吃死子的习惯。当这个习惯与日本规则碰撞时,悲剧又发生了。2017 年首届 AI 龙星战在日本举行,采用日本围棋规则。初赛中,多次出现优势一方在己方地盘内反复填子,同时对手一直弃权,导致胜负逆转的棋局。最终夺冠的中国 AI 绝艺也因此在初赛中输掉了一局。这一类无厘头的意外本没必要发生,只需采用类中国规则。

总结

围棋逻辑规则将类似中国围棋规则的新西兰规则用数学语言(图论)重新描述,与人类棋手习惯的中国规则基本等效。逻辑规则容易被直接写成代码,在围棋 AI 中实现,因此大部分围棋 AI 均采用逻辑规则,或做少量调整。" 实战解决 " 精神使得中国规则在逻辑上明显优于日本规则。对于围棋 AI 来说,实战解决尤为重要。用提子确定死活,使得 AlphaGo 从训练初期开始,能够逐步建立对棋块死活的基本认知,并最终达到准确判断一切死活问题的境界。另外,实战解决也能够尽可能避免 AI 之间对局的胜负争议。

参考文献:

1、陈祖源,《围棋规则新论》

2、陈祖源,《围棋规则演变史》

3、陈祖源,《围棋规则世界统一——研究与推进》

4、美国围棋协会(AGA)官方网站

5、丁凡,《万年劫事件》

6、asmobia,http://dq.tieba.com/p/1553178988

7、John Tromp, http://tromp.github.io/go.html

8、D. Silver et al., Mastering the game of Go with deep neural networks and tree search.

9、陈祖源,《单官官司——日本围棋规则的困惑》。

来源:知乎 www.zhihu.com

作者:不会功夫的潘达

【知乎日报】千万用户的选择,做朋友圈里的新鲜事分享大牛。 点击下载

 
中国围棋协会 | 浙江省围棋协会 | 搜狐棋牌 | 新浪棋牌 | 人民网棋牌 | 围棋学研网 | TOM棋圣道场 | 弈城围棋网
 
浙ICP备17008835号-1  版权所有:365bet亚洲娱乐_365bet 来4799点c0m_365bet国际