日前,柯洁做客央视访谈节目《朗读者》。在表明不惧与 AlphaGo 一战的决心之后,柯洁朗诵了《哈利波特与死亡圣器》的选段“百密一疏”。
(题图来源:朗读者 - 柯洁_弈味天然_新浪博客)
......
一道红光划破了他们头顶上被施了魔法的天空,就好像耀眼的阳光掠过窗台从离他们最近的窗户里射进来,同时照亮了他们两人的脸,伏地魔的脸看起来就像燃烧了一般,与此同时,哈利用德拉科的魔杖指着空中,他听到两声最高分贝的、注入了全部的期望的叫声同时响起:
“阿瓦达索命!”
“除你武器!”
随着犹如大炮一般的巨响,金色的火焰从他们两人的魔杖中喷发出来,就在两人刚才踩过的生死圈的中心,咒语冲撞在了一起。哈利看到了伏地魔的绿色魔咒碰到了他自己的魔咒,看到了长老魔杖高高地飞起,在日出的映衬下,划过施了魔法的天花板,就像纳吉尼的头。它从那个梦寐以求想要拥有它的人的方位划过。而后哈利,做为一个出色的找球手,在伏地魔倒地的同时用他空着的一只手抓住了那根魔杖——而伏地魔双臂张开,猩红的眼睛里的瞳孔张开翻了起来。汤姆·里德尔死了,以最平凡的样子死掉了,他的身体绵软地收缩在一起,双手空空,蛇一般的脸惨白空洞。伏地魔死了,被他自己的咒语弹回去杀死了,哈利握着两根魔杖站在那里,低头看着地上那敌人的空壳。
柯洁选读这一段,除了将自己代入哈利的角色之外,还另有用意。伏地魔被自己的咒语弹回去杀死,柯洁可能也在计划用同样的办法击败 AlphaGo.
早在今年初,AlphaGo 化名 Master 在网上大杀四方之后,柯洁就发微博说,“若不是住院,我将用上那准备了一个星期的最后一招。” 两天以后,柯洁在野狐网上对战国产围棋 AI 绝艺,祭出模仿棋。
本局棋谱图片来自(柯洁好调皮,又搞模仿棋 -------- 咦?为啥要说“又”? - 野狐围棋论坛 - 野狐围棋网 - Powered by Discuz!)
本局绝艺执黑。执白的柯洁在前十六个回合完全模仿黑方的招法,直至第 34 手才变招。
随后柯洁在混战中出动棋筋,一击绝杀。
之后绝艺拒绝再下模仿棋。开发团队可能清楚这一弱点,但暂时不准备修复。
前几天,柯洁自称用“非常手段”终结了对绝艺的十四连败。看下面这张棋谱,赫然又是模仿棋。
模仿棋究竟有何威力?柯洁用模仿棋能否打败 AlphaGo?DeepMind 团队又会以哪些手段反制?接下来本文将详细分析。
一、黑方模仿棋
本段落内容部分参考 Mirror Go at Sensei's Library。
模仿棋,一种围棋战术,以模仿对手的棋路为主,依照对手落子的位置,在对称的镜像位置落子。相传最早使用这种战术的人,是中国北宋时的苏东坡,因此古称东坡棋。日本丰臣秀吉也喜欢使用这种战术,因此在日本又称太阁棋。
说来你可能不相信,有完整棋谱记载的第一个下模仿棋的人,竟然是吴清源。1929 年,吴清源初到日本不久,与木谷实对局。这两位日后扬名立万的大棋士,初战却显得有点滑稽。局前,吴清源还特意四处询问“第一手下在天元是否符合日本围棋的礼节”。
然后,执黑的吴清源就开始了模仿之旅。需要说明的是,当时的日本围棋规则是不贴目的。也就是说,如果木谷实拿不出任何反制手段,那么吴清源通过模仿,至少也能逼和木谷实。木谷实也因此十分苦恼,在局中数次向裁判抱怨。裁判表示为难,因为模仿并不违反围棋规则,只能告知木谷实,看几回合再说吧。
这一看就到了第 65 手。吴清源终于结束了模仿,但棋盘上余下的空地也不多了。不过,年方 15 岁的吴清源棋艺尚不纯熟。在余下的棋局中,执黑的吴清源连连犯错,最终以 3 目负作结。
木谷实虽胜,并未有效破解模仿棋。一个简明破解黑模仿棋的办法如下图:
白方围绕天元制造了一个对杀,利用黑天元一子自紧一气,快一气杀死黑方。在《棋魂》中,塔矢亮的同学奥村请求受先与塔矢对局。奥村执黑走天元之后开始模仿,接着被塔矢亮以如图的方法击溃。
当然,这个破解法的问题大大的。白 1 以下的招法,按照一般的棋理,极不自然。黑方若有所洞察,则可以停止模仿、顺势反击,让白方得不偿失。因此,这种破解法仅限于白方棋力高出黑方很多的情况。
然而,自从围棋有了贴目,黑方模仿棋就不再可行,以致于渐渐绝迹。最近一次见到黑方模仿棋,是台湾“红面棋王”周俊勋对战 Master 的网棋。结果执黑的周俊勋在中盘终止模仿,形势已然不利,最终败北。
二、白方模仿棋
作为一个回合制游戏,围棋的先手方优势是很明显的。因此我们有了贴目。在贴目为 6.5 目 /7.5 目的当下,黑方模仿棋乃是快速取败之道——由于棋局的主导权完全归于白方,白方可以轻易将黑天元一子变成废棋,从而抵消黑方的先手优势。
但是,既然有贴目兜底,白方反其道而行之,模仿黑棋的招法,是否可行呢?
也许你马上就能想到破解的办法:在发现对方模仿时,走天元行了嘛。没错,这的确是简单可行的办法。网络上流行的单机版围棋 AI, 天顶的围棋 6(以下简称“Zen6”),就是这么下的。
Zen6 执黑时,如果检测到前 5 个回合(10 手),白方都在模仿,则在第 11 手会直接占据天元。
天元被占,白方无法继续模仿。但是,这未必是最好的策略。
如图,白棋立即侵入右下黑方势力范围,将局面打散。到 22 为止,黑方天元一子光芒消散,先手优势未充分发挥,白方满意。
如果 Zen 能够稍微调整一下,比如下面这一图,
黑方在右下模样初步成型以后再占据天元,是破解模仿棋的最理想形态。在此局面下,天元一手是双方势力消长点。占领了天王山的黑棋明显好下。不过,白方在第 12 手时也因而可以考虑变招。所以白方模仿棋不是“无脑”模仿,而是对局双方斗智斗勇的过程。
这里引用网友“内含子”帖子中的一段:
严格地说,白模仿棋是一种严重的“条件模仿棋”,因为黑方(在不考虑胜负的情况下)可以随时中止模仿棋--只要走天元即可。
如果黑棋不贴目,白棋不会选择模仿,总是慢半拍自然有败无胜。而贴目制下,压力就在黑棋的一方。天元不是什么时候都能走的。如果天元一步效率不高则会导致局面落后。另外还可以通过对角征子对付模仿--只适用于白模仿棋。但不论是走天元还是造征子,都要保证对方变招后自己不至于吃亏。这在实战中很难把握。白棋一方压力也不一定小,因为变招是迟早的事,掌握不好时机反而会亏损。总之,模仿棋中双方的风险都很大。模仿棋的胜率也不高。
关于造对角征子破模仿,请看下面这局棋
这局棋是 2005 年中国名人战八强赛,黑方俞斌对白方王雷。前 84 手,白方完全模仿黑方招法,形成了左下和右上完全对称的混战,包括两个征子。黑方走出 85 时,执白的王雷发现,白棋已经不能继续模仿了。
如果继续无脑模仿,黑方恰好可以快白棋一步,全歼白棋。
于是白棋 86 终止模仿。至 98 手,双方各自逃跑,棋局已不复对称。至此局面优劣不明,据说是白棋稍好。其后双方杀得天昏地暗,最终执黑的俞斌以 3/4 子的优势获胜。以此局的精彩程度,我认为是古今模仿棋第一名局。本局棋谱见http://www.go4go.net/go/games/sgfview/6283
三、针对 AI 的模仿棋
在 AlphaGo 实力恐怖、正常下难以获胜的情况下,柯洁执白时使用模仿棋是最佳的策略,甚至可以说是取胜的唯一机会。相比人与人对战的模仿棋,对战 AI 下模仿棋有以下几个额外的优势:
1、AI“不知道”人在下模仿棋。
到目前为止,AlphaGo 未曾根据对手的不同而调整战术。从 AlphaGo 的原理上看,策略网络和价值网络都只涉及 AlphaGo 自己对当前局面的判断。在人类的对局中,如果意识到对手在下模仿棋,棋手可以主动控制棋局流向。要么制造对角征子,要么围大模样、增大天元一子的价值。如果不加入像 Zen 一样判断模仿棋的代码,AlphaGo 就意识不到对手在复制自己的招法。在此情况下,AlphaGo 能否将棋局导入对自己有利的轨道,需要打一个问号。
2、用时
对于人机大战,AlphaGo 全无用时之忧,而人类棋手的时间总是不够用。在模仿局中,模仿者的用时远小于被模仿者。被模仿者考虑的总是要更多,而模仿者在很多时候只需一秒落子,只需在被模仿者疑似露出破绽的时候考虑是否停止模仿即可。柯洁在前半盘节约下的时间,可以用到后半盘,和 AlphaGo 斗官子。
3、撑到官子
说到斗官子,DeepZen 在日前的电圣战中,接连在官子阶段犯下低级错误,对人类棋手拱手送出两盘好局。绝艺的官子比 DeepZen 强很多,但也偶有送出好局的记录。AlphaGo 尚未因官子失误输过棋,只是会把大优的棋变成半目胜而已。总体上看,AlphaGo 的前半盘比人类强太多,而官子水平如何,还有待进一步检验。之前 Master 在网上的 60 盘棋,人类基本上都是在官子阶段前就大幅落后。如果能够通过模仿棋撑到官子,至少能检验 AlphaGo 的官子实力。如果时间充足,胜利未必没有可能。
四、工程师的反击
柯洁可能要用模仿棋已经不是秘密。黄士杰博士应该早就知道这事。DeepMind 方面估计对此有所准备。不过,让 AI 破解模仿棋并非易事。绝艺从 1 月首次被柯洁模仿棋击败,到前两天再败于柯洁,3 个月的时间尚未实现破解模仿棋的有效方案。因此以下的讨论,纯属本人乱开脑洞。
方案一:无脑走天元
即单机版 Zen 采用的方案:若对方前 10 手都在模仿,则第 11 手直接走天元。这个方案很简单,弱点也很明显。首先,这不能保证天元的一手是好棋。如果天元这招恰好成了废棋,棋局的天平就会倒向白方。另外,如此临时(ad hoc)的解决方案,与 DeepMind 开发通用智能的远期目标背道而驰。目测 DeepMind 不会用此方案。
方案二:设定布局
既然对战柯洁只有三番棋,而且知道柯洁要下模仿棋,那么索性就人工设定布局。开局走大模样,最大化天元一子价值。等到合适的时候,AlphaGo 自然会判断天元处最大,从而占领天元,确立优势。这个方案同样也是临时性的补丁,估计 DeepMind 也不可能采用。
方案三:黑科技
黄士杰博士曾说,他们曾按照 Nature 论文的那条路走下去,遇到了难以逾越的瓶颈。因此目前版本的 AlphaGo 应该在 v13 版本的基础上有大规模的改动。(应该并不是传说中的 AlphaGo2.0,即不用人类棋谱训练的 AlphaGo。该版本的 AlphaGo 是今年的开发内容。)天知道现版本的 AlphaGo 上有多少未公开的黑科技。或许 DeepMind 能够不打临时性补丁,也能在柯洁下模仿棋的情况下吊打之。若果真如此,请收下我一年份的膝盖。
五、小结
五月人机大战,柯洁对 AlphaGo 三番棋,总比分取胜的机会非常小。如果单纯比实力,柯洁甚至赢一盘的机会都不大。模仿棋,确实是柯洁能用的最后一招。有此招在手,胜负悬念犹存。是 AlphaGo 再封神,还是柯洁弹回 AlphaGo 的必杀咒语,还请各位期待五月。