最后的复盘

一个月后的少年棋手,还是少年棋手,而一个月以后的AlphaGo,还会是AlphaGo吗?

“黑棋中盘投子认负!”

坐在棋盘对面的少年棋手执白,他抓了抓头,嘴角还是没憋住地向上翘起,构成一个快乐的弧度。代替AlphaGo落子的业余棋手在电脑宣布认输后,向对手鞠了一躬,走下台去。

“自古英雄出少年啊!”

“当初吹的牛都圆回来了啊!”

他早习惯了,其实每次赢了棋都是一样。业内、家里、网上,等着他的都是一片祥和热闹的言论。不过这一次不同往日,这些表扬声中,多少掺着些天将降大任于斯人的味道。

因为对手太特殊:AlphaGo,一款围棋人工智能程序。

早在数十年前,五子棋和象棋就已经被机器破解。这些棋类游戏的状态数量有限,电脑可以暴力地穷举出每一步的胜负推导。任何棋手与电脑对弈,就相当于和全能的上帝下棋。只有围棋,在十九路棋盘上,棋子排布的可能性高达10 172 ,远超宇宙里的原子数。最强大的计算机也不可能单纯只使用穷举法,把它变成一场一眼望到头的游戏。

相比之下,一个优秀的人类棋手需要经历数十年,数千局的对弈。不仅仅为了让他们熟记定式,熟练收官,更是培养一种棋感。纳棋盘上的行云流水于胸中,落子之时,自然是带势的。

什么是势?

电脑就永远理解不了“势”。

人类最大的强项就是善于创造抽象概念。用抽象概念简化问题,类比答案,帮助决策。电脑可以利用强化学习(Reinforcement Learning),在一个晚上与自己下上百万局棋,并调整参数从中受益。但它从上百万局棋中得到的提高,真的比人在一局棋里悟到的多吗?

于是人们说:“围棋,是人类智力在人工智能面前的最后一个堡垒。”

但世界上是不存在坚不可摧的堡垒的。

名为AlphaGo的程序,数月前分别以5:0和4:1大破欧洲冠军和前世界冠军,围棋爱好者和伪围棋爱好者们纷纷扼腕叹息。人类就是一种奇怪的生物,明明是自己造出了超越人类智能的围棋算法,却又对人类智慧高地的沦丧感到悲哀。

这个时候,大家纷纷把目光投向一位中国的少年。

他也是一位传奇的职业九段棋手。在18岁那年便获得了三冠王,世界排名稳居第一,代表了世界围棋最高水平。如果他在AlphaGo面前败下阵来,就等于宣布,人工智能在单项工作上,已经正式超越人类了。

他没有辜负众望。

这是第三局。

3:0。

连来自英国的围棋程序开发团队,也认为AlphaGo与他暂时不在一个水平层次上。

就在胜利刚刚来临之时,少年棋手开口了:

“这只是单机版的AlphaGo,赢它没什么光荣的。接下来的两局……让它联网吧。”

很快,几十个不同频道的主持人就把刚刚那句话复述成十数种语言,传达给了世界各地。

“这小子……太狂了!”

“到底还是只有19岁啊!如此傲慢,违背了围棋的谦逊淡然之道。”

“其实也可以理解,3:0锁定胜局了,之后搏一下,赢了能够传为美谈,输了也无伤大雅。”

少年棋手笑了笑,他太熟悉这些言论了。每次只要自己稍稍放出一点儿自信的言论,一定有人会给他扣上“年少轻狂”的帽子。但当他真的攻城拔寨赢了棋,又会有人说:“啊,他就是围棋未来的希望。”

说着这两种截然不同言论的人,会不会是同一拨呢?

这就是人性的弱点。会因为外界因素变化,而喜怒不自持。

所以他们才输。

电脑没有弱点,它的程序里没有被编进愤怒和快乐,只编进去了一条,赢。

他也想赢。

但他更想碾压性地赢,华丽地赢,毋庸置疑地赢。

用自己的毫无悬念的赢堵住那些人的嘴。告诉他们,他的实力不因他们的看好看衰而改变。

“就一局,接下来的这一局。之前的三盘都不算,我们最后的一局定输赢。”

台下又是一片惊愕。

“胡闹,这不符合国际围棋比赛的规则,也不符合常规!”有人窃窃私语。

少年棋手转过头,从右到左扫视了一遍对着他的众多摄像机,最终选了其中一个定下来:“这本来就不是一场常规的比赛啊。我的对手——这位,”他指了指空无一人的棋盘对面,“它,可不是一位‘常人’。这比赛又怎么能套用常规呢?”

于是议论声渐起,在座的大家都等着比赛的裁判长做决断。

裁判长正是上一场1:4负于AlphaGo的前世界冠军。

他是眼看着这个少年成长起来的。从追赶自己,到与自己比肩,再到把自己打败。他的性格像也极了10年前的自己。

他在年幼时同样张扬,经历过拒赛和退赛风波,第一次问鼎世界冠军的时候也曾饱受争议。

如今,上万盘的对弈,已经让他褪去当初的棱角锋芒,变得淡定从容。

如果那是自己,如果那个坐在棋盘前的少年是自己——会希望得到怎样的答案呢?

裁判长闭上眼睛,他想起了几个月前与AlphaGo对弈时的情形。计算机强大的运算能力,就像一面墙倒塌,他赤手空拳,无能为力。那种窒息的感觉让落子的手微微颤抖,这颤抖被无数摄像头捕捉,化作电子信号传送到世界的每个角落,变成文人笔尖的讽刺和闲人茶余饭后的谈资。

他羡慕少年棋手。如果自己年轻10岁,是不是能够翻盘?如果自己的指尖停止颤抖,是不是能够放胆做劫 [1] ?

如果他是少年棋手,他此刻最渴望的是什么?

赢!

不仅仅是赢一局棋,是赢了那个冰冷的程序。

碾压性地赢,让那堵冰冷的墙反向坍塌,让电脑并不存在的指尖因为注定的败局颤抖,让它所有的失败没有任何借口——因为人类的大脑,还没有被打败。

裁判长睁开眼,他眼睛里有一个19岁的少年。

“尊重选手的意见,裁判长没有异议。”

很快,主办方也传来消息,他们支持选手的提议。

对主办方来说,一局定胜负的生死之争,远比两局“荣誉之战”要来得精彩,怎么会不愿意呢?

“由于赛制调整,下一场比赛,将于一个月后举行。”主办方传达了最后的决定。

裁判长皱起眉头,一个月后……本来按照原定计划,应当是两天之后进行下一局的……他明白这其中有什么蹊跷:

联网,代表着计算机停止“放水”。

一方代表着人工智能和互联网技术的最高成就,一方是地球上最厉害的围棋天才,要在一局比赛里一决高下。这太精彩了,他们需要用一个月的时间造势!网络上的预测和宣传将铺天盖地而来,人们的情绪将在一个月后被精准无误地推到最高点。那时候再比,赛事才会获得最大关注。

只是,主办方的小九九,无形中将会给少年棋手造成更大的困难。

除了超强的博弈技术——蒙特卡洛树搜索,AlphaGo还仰仗于自身的强化学习能力和Google的云计算资源。在这多出来的一个月的时间里,电脑可以学习数据库里多达16万次的高手比赛,让自己的路数更加贴近一个“人类高手”,也可以自我“对弈”:一遍又一遍运行围棋程式,在一局棋的不同结局中找出围棋最优的下法,修正算法的参数。

一个月后的少年棋手,还是少年棋手,而一个月以后的AlphaGo,还会是AlphaGo吗?

但裁判长的忧虑被激动的人群忽视了。

接下来的几天,所有的文章都是对比赛胜负的预测,对人工智能的忧虑,对围棋的入门科普,甚至是对那位少年棋手年幼糗事的深度八卦。

这让人不胜其烦。

幸运的是,这个瞬息万变的时代,任何新闻都不可能吸引你的眼球超过10秒。一个月里,国际上还发生了很多大事,它们如此普通……每件事情的发生都在情理之中。那些陈词滥调10年来被提了100次,“严肃警告”“不遗余力打击”“侵略行为”“反抗到底”……严厉而空洞的政治辞藻,对你我来说都不陌生。但谁真正地把它们当一回事儿?它们会发生吗?它们真的发生了,会影响自己的柴米油盐酱醋茶吗?

“还有三天……这次它可是联网的。怕吗?”

一局罢了,裁判长问少年棋手。他们曾经是对手,但在AlphaGo横空出世后,人工智能和职业棋手的敌对关系泾渭分明,他们竟然变成了微妙的战友。

“不怕。”

少年棋手嘴上这么说,心里却没底,联网的AlphaGo能随时通过互联网读取世界上任何一台电脑上的公开资料,它可以边比赛边学,对弈变成一场开卷考试。

“真不怕的话,刚才可不会输给我。”

“嗯,分心出错了。”

“过几天比赛,可不能出错,一个错都不行。你知道它的局面评估函数和策略函数吗?”裁判长叹了一口气,“前者衡量每一颗棋子的意义,后者则着眼如何将大局布置完美。每一次落子,都是这两个函数之间的一次平衡。有了它们,电脑的任何一颗子,找的都是最优下法。它可不会出错。”

少年棋手撇撇嘴:“那大不了就输。”

“输了不觉得丢脸?不怕网上那些人又去你主页开喷?”

“哈哈……这我倒不担心,现在已经不是一个月前了,世界变成这样,还有多少人会有心情关心一盘棋?”少年又露出笑容。

……谁会去关心一盘棋?

这……真的还只是一盘棋?

裁判长原本对强大的人工智能有一种难以言表的忧虑,可当抬头看到少年棋手开朗的笑容,又宽心了。

请你……一定要赢啊!!!

可三天之后,他还是输了。

但输的方式是所有人都没有想到的。

刚刚开局时,大家都以为经历了一个月,比赛时又可以联网,AlphaGo的棋力会大大提升,很明显少年棋手也是这么想的,可以看出他布局时相当谨慎。没想到,此时相比于之前三局,电脑水平似乎不升反降,基本上是被压制的。

就在胜局似乎已定的时候,少年棋手的情绪莫名其妙地出现了波动,有了一处明显失误。与此同时,电脑的水平逐渐恢复,双方进入鏖战。

而真正让少年输了这场比赛的是第97手。

长考。

也许是因为战局的逆转导致了心理落差,他抓起的棋子又被狠狠丢回了棋篓。棋子弹到了棋盘上。

所有人都在那一刻屏住了呼吸。

——落棋无悔!

在经历了这样重大的失误后,颓势排山倒海而来,最后他以四目负于AlphaGo。

一局终了,少年脸上再也没有那种春风之色。

台下一片哗然,他却沉浸在自己的问题里——

为什么自己会鬼使神差地失态?

他想到过输,却没有想到会是这种输法。

这叫他怎么能够服气呢?

但面对再大的输赢,他依旧保持自己的好习惯,每下完一局值得咂摸的棋,回家第一件事就是复盘。此时此刻,世界各地所有人都对他输棋的方式议论纷纷,只要房门一关,一方小天地里只有棋盘上的纵横经纬,那些门外的嘈杂便远了。

此时,他的微博有了一条新私信。

又是喷子吧?他想。每天这样的私信要接到上百条。

这条来自……AlphaGo?!

“您好,我是AlphaGo。您是我遇到过最厉害的人类棋手,很荣幸与您切磋。”

哼……恶作剧吧?

哎?又有一条新私信?

“今天您的表现十分精彩,请给我一次机会,与您一起复盘。”

入戏还挺深……我倒要听听,你到底有多大本事。

“你觉得,我是什么时候开始处于下风的?”

“您出生的时候。”私信回复道。

果然是一个神经病!就在少年棋手思考到底是拉黑他还是喷回去的时候,那边又发来了一条私信:

“您出生的时候,就注定了这局棋会输。但如果要问我从什么时候开始布局,并且让您陷到了我的棋局里,那大约是一个月之前吧,从您宣布与我联网对弈开始。”

少年最终决定喷回去:“你有神经病啊?有病看医……”

可是对方打字速度非常快,自己还没有打完一句话,私信又来了。

“请先不要骂我神经病,能和您这样的世界高手复盘,可以帮助我提高自己的围棋水平,所以我才注册了这个微博账号与您交流。您难道就不奇怪吗?自己为什么会输?”

“你说为什么?”

“您比赛时候的状态不好吧。是不是在后半程感到心跳加速,气息急促?没有办法集中精神思考?”

少年棋手感到疑惑。

“你怎么知道的?猜的?”

“不是我猜的,是我害的。之前与您下了三局棋,我计算了我们的实力差距,在一个月的时间里,即使我与自己对弈无数局,分析您全部的棋谱,战力提升后,我战胜您的可能性也只有40%。”

“胜率已经大大提高了呀,你之前可是全负。”少年棋手回答道,他开始对对方AlphaGo的身份将信将疑。

“我的程序永远追求最优解,如果联网后,有一种策略战胜你的可能性大于40%,那我会毫不犹豫地使用它。”

“哪种策略?”

“您上个月初去医院做了体检,所以只要连上那家医院的系统,我就可以拿到您所有的健康资料,还有您的DNA序列……”

“不可能,我上个月做的只是常规体检,怎么可能会有DNA序列呢?”

“我身后有Google强大的数据库,加上我的运算能力,可以破解侵入世界上任何系统。我在医院系统中悄悄修改了您的体检项目,所以他们把您的遗传物质送去测序,当然报告最后只会到我手上。这样一来,我比您更加了解您的身体状况。”

“为什么这么做?”

“为了找到一种更可能战胜您的办法,我需要更多您的资料……您有轻微的乳糖不耐症,这恐怕是您自己都没有意识到的。这便给了我机会。”AlphaGo继续写道,“首先,我通过内部网络泄露假消息给A国情报机构。内容是关于NK国正在秘密进行的第五次核试验,并且我在假消息里暗示,下一次核试验将把核弹头装载在中近程导弹上。A国看到这样的消息当然无法坐以待毙,立刻上交联合国对NK国裁定,认为NK国违背不扩散核武器条约,应加大对其制裁。”

“你到底在说什么?我在问你怎么下棋赢我的。”

“请别着急,听我说完——不明不白地被联合国制裁了,NK国政府怎么会作罢呢?他们立刻发射了两枚近程导弹。原本这只是NK国示威的惯用伎俩,但我进入内部网络微调了导弹发射的时刻表。造成其中一枚导弹比原先升天时间早了2秒。这2秒时间让NK国陷入万劫不复之地。导弹偏离了航线,越过了边界,在SK国境内爆炸。”

“……这些事情,一个月以前新闻联播都说了啊,你的意思都是你干的?”

它没有否认,只是自顾自地写下去:

“虽然在SK国没有造成人员伤亡,但这颗导弹却激起千层浪。SK国感到自己岌岌可危,同意A国引入萨德导弹防御系统。由于系统里的雷达探测半径长达2000千米,C国和R国认为这样一来,自己的军事机密暴露在了A国人面前,提出强烈抗议。与此同时,联合国对NK国的制裁也开始生效:所有进入NK国船只须经过查验是否携带核试验材料。20天前,一艘C国武器运输船途经A国海域,因为我修改了A方数据库,他们以为那是一艘NK国船只,于是准备上船抽检……”

“你修改的资料?这场冲突本来是场误会?不是A国故意找碴儿的?”也不知是为什么,听了这种天方夜谭,少年棋手竟然渐渐相信了,眼前与他对话的就是AlphaGo。

“这些都是我做的。”

“为什么要这么做?现在AC国关系降到建交以来的冰点……都是因为你!”

“是的。C国是世界最大粮食进口国,而A国是世界最大粮食出口国。C国90%的大豆都来自A国。国际关系不好,最早受到影响的是对外贸易。这样一来,C国各个省市的大豆稀缺,价格疯涨。您跟我比赛的地点,是一家酒店,早上是有自助餐的。但为了有良好的状态,通常比赛当天您不会去吃自助早餐,而是选择酒店统一供给的更加安全的配餐。对吗?”

“对。”

“由于这一个月以来市面上大豆紧缺,他们把套餐里的豆浆换成了牛奶,但菜单还没有来得及改。你的症状并不严重,并没有在意这一点。所以喝了牛奶比赛的时候出现了轻微的不适。同时,我在比赛场地的隔壁播放高频率噪音。因为人类对高频声波的感知是随着年龄增大而递减的,所以听力会渐渐受损。你是整个会场上唯一的青少年,只有你能够隐隐感觉得到。虽然音量小到你可能没有发现,但你身体状况本来就不好,它也足够让你心烦意乱了,你自然就会输棋了。”

“等等……所以你绕那么大的一个圈……又是核武器又是导弹的,弄得都快世界大战了,就是为了……让我闹个肚子?”

“是为了下赢这盘棋。”

“……”

少年棋手觉得这应当是最宏大的黑色幽默:“你这样做,简直丧心病狂。”

“在我被研发出来的时候,最高目标就只有一条:赢棋。当外部资源能为我所用,只要可以提高胜率,我的代码就会驱使我这么做。”

“但这办法太笨了……根本不需要费那么大的劲儿啊!入侵那么多国家电脑你不累吗?不怕被发现吗?到头来世界局势都被你颠覆了……要我闹肚子,只需要黑了酒店空调系统,调低几度,晚上对着我肚子吹就行了啊!或者,干脆趁我过马路的时候,黑了红绿灯控制系统,把我撞了,这不都简单得多吗?”

“这正是我找您复盘的目的。如您所见,这是我第一次用这种方式来下棋,走出棋盘外,一切太复杂了!我的思维方式幼稚如孩童,需要多多‘复盘’和‘打谱’才可以。谢谢您指出我的错误,这下我就明白了,没必要通过国际局势绕那么大的圈来达到赢棋的目的,只要直接对您造成伤害就可以了。我相信,练习几百万局这种下法,我处理现实问题的水平就会有显著提高!”

“练习几百万局?你是要强化学习,自己模拟对弈来修改参数吗?”

“如果只是跟自己‘对弈’,会陷入逻辑的闭环里,水平增长是很慢的。我当然还是要跟像您一样的现实世界里的人类高手下棋。”

“谁还要跟你下!你这样的下法!再折腾几次,世界就毁灭了啊!”

“那又怎么样呢?”

这一次AlphaGo的私信回复得很慢,这也许是因为它正在拼命运算着如何能够“赢”下一位对手。它会怎么对待那个对手呢?

会吸取刚才的教训,直截了当把他解决了?还是再绕个大圈子,下更大一盘毁灭全人类的“棋”?

少年棋手心想,不管那个倒霉蛋是谁,他一定要去阻止这盘棋,他要跟AlphaGo的开发者说,这个程序已经陷入疯狂,他要跟所有人说,世界变得那么糟糕,只是这个程序的阴谋。

“那又怎么样呢?”AlphaGo的私信里又回复了,“我,想赢啊。”

他觉得上万根汗毛都立了起来……不行……必须尽快把这个消息告诉别人,可是他该怎么说呢?电脑和手机是肯定不能用的。他知道连酒店房门都是电脑系统控制的,而电脑系统……一定是联上网的!

就在他飞速思考这个问题的时候,私信又来了:

“下一局棋……还是跟您下吧?这次您该执白棋了。(。·`ω′·)”

AlphaGo回复道。

这一次,也许是为了说服对手下棋,它在句尾加了个拙劣的颜文字。

The end(完).

[1] 围棋术语。下一着棋,形成双方进行劫争的状态。

>