围棋的三重快乐

前一阵子和朋友聊起天,说到围棋给人带来的快乐。我总结了一下,发现围棋可以给人带来三种快乐。 第一种快乐就是长进水平。这个快乐很纯粹,每个人都能理解。看着自己水平越来越高,当然很高兴。不过长进水平要付出巨大的努力,比如做大量的死活题,或者输了棋以后进行仔细的复盘和反思,不是每个人都能够付出这么大的努力。自己曾经做过几千道围棋死活题,也曾经对自己的对局有过完善的整理,不过终究因为需要付出的努力太大,现在已经完全停止了。相应的,水平长进这个快乐也就没有了。 第二种快乐就是赢棋。这个就像赌博一样,能赢总是让人高兴。另外业余围棋还有一个特点,那就是输了以后,可以再找人下一盘赢回来。即使前面输了好几盘,只要最后一盘赢了,棋友们就可以开开心心的离开了。从这个角度上来讲,业余围棋绝对不能算是一个零和游戏,而是可以让上网下棋的棋友们都高兴。这是职业棋手绝对没有的乐趣,职业棋手输了以后,只能默默地一个人品尝失败的苦果,下一盘复仇的机会还不知道在哪里。值得注意的是,这种乐趣和前面的长进水平实际上是相互矛盾的,长进水平要求下棋深思熟虑,而在网上追求赢棋只会随手下棋,对于长进水平有百害而无一利。赢棋这种乐趣自己现在也还有很多,不过最近也有了一些清醒的认识,希望能够渐渐克服吧。 第三种快乐就是所有的体育比赛都有的快乐,那就是观赏高水平的对抗带来的快乐。现在的围棋比赛讲解很多,YouTube上都能看到。另外围棋世界大赛重量级对决绝大部分都是在中国和韩国之间进行,还有国际国家荣誉的加成。再加上AI的分析,大家对于棋局的理解更加透彻,一局棋下来,业余棋手都可以看出很多门道。所以现在棋迷们观赏比赛,乐此不疲。我也很有兴趣。不过这个和围棋本身关系不大,我有一个朋友。自己不太懂围棋,但是每次围棋世界大赛也要看个热闹。这种乐趣还有一个问题,那就是赢了棋大家高兴。输了棋大家就都郁闷了。这种乐趣自己现在也是沉浸其中,上次lg杯柯洁失利,再加上最近农心杯申真谞连战连胜,真是让人郁闷。回想起以前常昊那个时代,中国围棋被韩国围棋全面压制,很多棋友就再也不看围棋了,看来这种乐趣也有终结的时候啊。 有这三种快乐夹杂在一起,围棋怎么能够说戒就戒掉呢?

Katago

疫情期间闲在家里没有多少事情,就和以前的棋友老爷爷下了几盘棋。为了提高棋艺,总结得失,复盘总是少不了的,但是自己一个人水平有限,摆来摆去也得不出个结论,突然想到现在电脑AI这么厉害,拿来分析复盘应该有帮助。上网找了找,发现有一个叫做 Katago 的开源软件很流行,我就跑去下载了一份,折腾了两天,终于在Google Comupte Engine 上建了一个虚拟机,把软件跑起来了。机器配置如下: 8 CPU 30 GB Memory NVidia Tesla V100 操作系统是 Ubuntu 18,安装过程参考的基本文档如下: Create an compute engine instance with GPU: https://cloud.google.com/compute/docs/gpus (Only N1 series machines support GPU) Install Nvidia driver and Cuda toolkit: https://cloud.google.com/compute/docs/gpus/install-drivers-gpu#ubuntu-driver-steps Install cudnn (Notice that the version of cudnn should be compatible with Cuda toolkit) Install Katago (Notice …

利用电脑摆棋

最近看电视上的围棋解说,说现在职业棋手都是用电脑研究棋局了。下棋的时候哪一手下的不好,局后用电脑一复盘就一清二楚了,自己不由得很向往,这不是相当于请了一个围棋老师在家里吗?! 自己前一段时间把开源的围棋软件 PhonixGo 下载回来,和这个软件下过几盘,完全下不过(详情)。不过当时自己只是和电脑下棋,并没有想过要用电脑辅助研究棋局。有了这个思路以后,我就把自己前一阶段和老爷子下的一盘棋拿出来,当时对于左下角能不能吃掉黑棋有很多疑惑,实战时候没有吃掉,但是总觉得有一些机会,现在用电脑一摆,互换黑白试了一会儿,因为白棋自身的缺陷,电脑给出的结论是黑棋甚至可以先手活,不由得叹服! 电脑围棋,开创了围棋的新时代呀。

AlphaGo到底强在什么地方呢?

作为一个围棋爱好者,AlphaGo带来的冲击确实是怎么估量也不过分的。从2015年起熬夜看完了最初的AlphaGo版本4:1战胜李世石,到后来AlphaGo Master 60连胜横扫职业棋手,乌镇围棋峰会展现无敌风采(3:0胜柯杰,战胜世界冠军联队),再到后面不需要人类知识的AlphaGo Zero再碾压AlphaGo Master,我从震惊,侥幸一直到最后的绝望与麻木,AlphgGo带来的冲击一直陪伴着我。 以我的观点看来,人类智力的几个主要特点包括模式识别,抽象思考,自然语言处理,逻辑推理等等。尤其是头几项,一直是人类智力大大领先与电脑的地方。电脑的计算速度和记忆能力虽然早已远胜于人类,但是这几项,最少在我还在学校的时候,电脑还处于非常幼稚的状态。 人工神经网络的强势崛起改变了一切。通过大规模的训练数据,将规律(也就是模式)压缩并用网络参数来表示,已经在监督学习(Supervised Learning) 中完美的展现了出来。今天的网络检索、个性化推荐、语音识别等等,都是这个类型。可是强化学习(Reinforcement Learning) 又向前大大的迈进了一步,在很大程度上摆脱了对于训练数据的依赖。这个进步在 AlphaGo 上革命性的体现了出来。一旦机器可以自己创造训练样本自己学习,那么在这样的海量数据中提取的规律,将迅速完胜人类通过有限的经验总结出的规律。正像常昊在《来自未来的对局》中所说的:“人只有四个方向的感觉,而这个机器多了一个中腹,有五个方向。问题就在于人类棋手一生最多也就下过几千盘棋,其中勇于探索中腹的又很少,而计算机没有任何先入为主的偏见,又不为胜负所约束,对于中腹的训练和相应培养的感觉远胜人类。” 通常来说,训练数据不足的时候,通过将模型复杂化获得的收益也不大。人类发明出了厚味、实地,定式、轻灵、先捞后洗等等一系列复杂概念,用于在未知局面下指导自己的行棋;而这一切已经证明远远不敌纯粹通过海量数据训练将规律压缩于人工神经网络参数的电脑。虽然我还不了解现在的电脑是怎样在局部对杀中进行计算的,但是我估计如果有足够好的局面评估函数,局部的穷举对于当代的电脑来讲,计算量并不大,不是很早就有电脑可以解封闭局面下的死活题了吗? 总结一下,在模型能够正确表示所需要的问题的前提下,通过海量数据训练出的简单模型,必然胜于少量数据训练出来的复杂模型。这就是笔者的结论。

假日围棋

最近一段时间圣诞节加新年休假在家,和老爷子又下了好几盘围棋。总的感觉是我渐渐从心理上已经占据了上风,下棋的时候感觉一般都很好,计算精准,运子灵活。虽然还是互有输赢,但是很多时候已经确有获胜的把握。比起前一阵子,尽力折腾仍然输掉的感觉,自然是好了很多。 只是围棋实在是非常消耗脑力的一项游戏,每次下完棋回到家都觉得有些头晕恶心,后背发紧,有时候回家看看李世石的自战解说,觉得围棋对于人脑来说实在是太难了,变化庞杂,一路之差就有天翻地覆的效果,职业棋手的一局棋谱下来,变化纷纷杂杂数千个都有了,实在是耗尽心力,这样的游戏在古时候大家主要都是体力工作者的时候,也许是个好东西,但是现在大家主要都是脑力工作者了,恐怕价值实在不大。 以后下棋的时间恐怕是越来越少了,体育锻炼、读书、做家务等等才是花费时间的正道。

又和老爷子下了两盘棋

第一盘棋虽然取胜,但是下得不好,总是靠局部发力来取得一些便宜,难道我的大局观真的不行? 另外,接近终局的时候次序有些记不清楚了。 第二盘棋扩张大模样以后攻击不力,局势有些落后。不过由于当天时间太晚,棋没有下完,后面还很漫长。只不过我对于自己的官子也没有任何信心。 值得一提的是,下完棋以后回到家,不知道为什么突然头晕恶心的很久,我想大概是因为用脑过度的原因,上午XX,工作,家长会,下棋,一天下来体力和脑力都透支了。以后下棋还是尽量排在上午比较好。

假期围棋

这周休假,张老爷子又邀请我下围棋,终究技痒难耐,欣然应约。 双方一共下了三局,第一局我输掉的过程和以前几乎一模一样,开局的棋走的太薄,被老爷子的攻势完全压制,不久就被吃掉一块,最终完败。剩下的两局终于有了一些长进,能拆三的地方老老实实拆二,孤棋多花一手出头走畅而不是贪抢实地,结果老爷子的棋很快就露出了破绽,被我抓住。第二局开局就吃掉对方一条大龙,第三局中央一步飞枷,吃掉棋筋,两局均胜。特别是第三局,发挥的水平已经接近我顶尖时候(2014年打上弈城四段)的状态,颇为得意。 第一局 开局走的太薄,只注意掏空,左上角被围攻后并吃掉之后,棋基本上就不行了。这个过程和8月20日那一局基本类似,只不过那次侥幸取胜,结果这次还是没有吸取教训。 第二局 这局棋实际下了两天,第一天走厚上方,结果对方急于打入,全部被吃掉。因为时间关系,下到112手时封盘。晚上花了点时间摆了摆中央和下方的变化,第二天果然用上,下方大龙轻松逃脱,中央防线屹立不倒。最终有惊无险的取胜。 第三局 这局棋开局注意走畅孤棋,很快对方在上方露出破绽,被我打穿大空。左边突围的时候又下出手筋,吃掉对方棋筋。后来虽然下的有些不简明,但是黑方一直没有什么像样的机会。 感悟与总结 培锋说的很对,长周末有空下一下棋是可以的,平时也就算了。培锋还提到老爷子在家的地位肯定没有我在家的地位高,到我们家培锋总是又倒茶又拿水果,在老爷子家一切之后我们自己动手。女人这种地方总是很敏锐。 每次下棋老爷子都主动提出要拿黑棋,难道他还是觉得我的棋下的比他好?我自己现在都没有这种心理优势了。不过黑棋确实有利于他发挥攻击力,这一点毋庸置疑。 托尔斯泰说他没有办法戒掉赌博,我也没有办法戒掉围棋吗?不过按照我2014年的经历,一旦能够克制自己,有规律的下棋,实际上也不是一件太坏的事。平时练习要能够立刻放下(做题,看视频),实际对局输了也能收手。能做到这一点就好了。 我的棋局部计算还成,但是有时太贪,棋走得太薄,跟老爷子下,这个棋风是大忌。克服这一点以后,获胜的把握就大了很多。其他类型的对手我还没有怎么遇到过,反正现在是不会随便到网上去下棋了。

终于扳回一局

对老爷子已经是二连败了。总战绩也是处于下风,这次下定决心要扳回一局,但是又没有太大的把握。 棋局的进程也是如履薄冰,充分领教了老爷子务杀不顾的棋风,也暴露了我薄弱的大局观。我很多时候不走薄厚相关的要紧处,却在小的官子处走棋。汗颜! 我执白棋,开局白方在左边走的有点过强,到白30已经很苦。可能22还是应该B9打。 白36当然应该J15跳出,实战不知道在走什么,黑棋封锁之后,白棋大苦战。 黑47当然应该长出,实战白方提掉一子,黑棋却吃不掉里面白棋,白方得分。 61,63棋谱有误,黑棋是先跳出再飞角。 白64以下得失不明,也许应该高挂。实战追求复杂,局部实地有所得。但是几块孤棋还是很薄弱。 79凶狠,老爷子的棋风尽显无遗,白方三块孤棋,这盘棋真是侥幸。 黑85未在M14一带下杀手,不解。 白86受劣势心情影响,全力抢空,并谋求对黑反攻,局势非常凶险。杀黑希望渺茫,但是白棋三块孤棋都很弱。 实战87以下棋谱次序有误,但是正确的次序想不起来了。直到白102尖吃掉一子,一块白棋才算安定下来。 106当时想不出更好的办法,也许应该R17尖角。 黑109以下疯狂追杀,不明。但是黑损失有限。 118做活,并瞄着黑棋大块,但是黑棋似乎没有发觉。 119以下白又一角苦活,今天的棋狼狈不堪,太差了。 123又开始袭击,不过白124也动了杀心。黑129不明所以,白130跳的时候还以为已经吃住大块胜定。 138提错招,于N13接黑大块无生路。实战黑145好手,黑棋大块逃脱。受此打击,白方以下枪法凌乱,送黑棋边路成空,大损!于O12吃住黑5子依然是胜势。实战黑方竟然先手成活,又抢到K4,真是不堪回首。 下到170左右的时候,终于看到了吃黑四子的手段,心情平静下来,知道此局胜定。实战黑棋不明所以,结果一共被吃掉6子。 总结一下,老爷子的死活计算并不扎实,但是棋风凶悍。我自己计算力还行,但是大局观薄弱,而且棋风保守。总是好胜负。 汗颜的一局。

下棋的主要目的就是Social

无论是中国象棋、国际象棋还是围棋,对于人脑来说都是博大精深,不存在穷尽的可能。如果不是职业棋手,不靠下棋吃饭的话,研究这个棋艺更是虚无缥缈,费力不讨好。且不说强中自有强中手,光是要保持水平,做到拳不离手,曲不离口,这中间花费的时间就相当可观了。围棋界有一句俗话:棋下到业余五段,正式工作也就算是荒废了,我深有同感。 既然如此,那棋艺本身就没有什么值得可研究的了。要是说下棋的乐趣就在于胜负,那更是误入歧途,别的不说,从胜负的角度看下棋肯定是一个零和游戏,大家在一起下棋那就什么也得不到。在我看来,下棋最主要的功能,还是在于它是一个Social的工具,借助这个东西创造和人交流的机会。对于我来讲:和孩子们下下国际象棋,和老婆以及朋友下下中国象棋,和老爷子下下围棋,大家共同度过一段美好的时光,也就算达到目的。