这样的故事将会在首尔的四季酒店上演,计算机和顶级人类选手将在中国的棋类游戏——围棋上一绝胜负。人类选手是韩国33岁的李世石,他已经称霸围棋界十多年了。他的对手则是2岁的AlphaGo,谷歌子公司DeepMind开发的一个基于神经网络的计算机程序。获胜者将获得100万美元的奖励,这么高的奖金是围棋历史上前所未有的。
然而,真实的故事并不会像这样你死活我。只要看看计算机下棋程序的成长过程,你就会明白。(见下方时间表)
虽然世界国际象棋冠军Garry Kasparov在1996年击败了IBM的计算机程序“深蓝(Deep Blue)”的早期版本,但是在1997年,他在六场比赛中还是输给了“深蓝”。尽管人类输了,媒体仍然将这次比赛报道成是人类的胜利,说“计算机还是不会写十四行诗,或抱抱婴儿”。“除此以外,其它事情也都是对的。”《纽约时报》的专栏作家Frank Rich写道。他认为,人与计算机之间真正的故事,在于计算机通过成千上万的方式改变人们的生活。人们面临的挑战不是打败它们,而是找到使用它们的正确方式。
在下棋这件事上,Rich说得是对的:“深蓝”从来就没玩过另外的游戏。几年之后,当人人都可以挑战比世界冠军都强大的计算机程序时,真正的革新就到来了。这项发展改变了棋类游戏。现在,每一个棋类比赛选手都使用计算机程序来学习下棋和准备比赛。有些玩家把它当作拐杖,忘记了独立思考;而另一些人则用它来激发自己的创意。就像其它工具一样,下棋程序是把双刃剑。
它不好的一面就是:2010年,法国国际象棋大师Sebastien Feller被FIDE(国际象棋联合会)停赛,因为他用自己的电脑获取计算机程序下棋的走法。在顶级赛事中,选手们要通过像机场安检一样严格的安检。另一方面,曾经使用明信片、现在用网络服务器的国际象棋通讯赛已经同意参赛选手们使用电脑或“象棋引擎”。使用“象棋引擎”就像是人在驾驶一辆高性能的汽车。
与国际象棋相比,人工智能更难掌握围棋的玩法。围棋的规则比象棋更简单:两位玩家轮流把黑子和白子放置在19乘19的棋盘上,要把对方的棋子都包围起来。但是,它有比象棋更大的棋盘,棋子的摆放位置组合也几乎是天文数字,所以穷举法不适用于围棋。“深蓝”能够用“蛮力”来算出可能的走法,但是围棋却不能用这种方法来玩。顶级职业选手是用对于棋子包围圈形状的感觉和棋盘各部分之间的关系来进行下棋的。“连我们自己都难以表达我们是如何下围棋的,更不用说要怎么教电脑来下围棋了。”第一个到达围棋高段为的西方选手Michael Redmond说。
2005年,围棋计算机程序跃进了一大步,程序员使用了“蒙特卡罗搜索树”方法。为了估计要不要在某一位置落子,计算机程序会用那个位置来随机下几千场棋,不管这一步下得好不好。这种使用“蛮力”来随机穷举的电脑程序可以比得上厉害的业余围棋选手。“但是,它仍然赢不了低段的专业围棋选手。”Redmond说。
新的一项突破是直到今年才被大多围棋玩家所了解。谷歌和Facebook的两支团队将深层神经网络运用到围棋电脑程序中。从本质上说,这使计算机会从大师们的棋局中学习下棋的方法。在去年十月的一场比赛中,谷歌的AlphaGo以 5–0击败了欧洲冠军樊麾。这次比赛时秘密进行的,这样谷歌公司就能把它的研究结果发表在《自然》上。
这次计算机的胜利震动了整个围棋界。“当我看到棋局时,我感到十分惊讶,因为电脑会像人类一样下棋。”东京的国际围棋联盟秘书长Hajin Lee说。“如果不告诉我的话,我也分辨不出来哪边是电脑,哪边是人。”
然后,人们就要接受这个比赛结果。“对我来说,这是一种解脱。”纽约市纽约大学游戏中心的主任、热情的业余围棋玩家Frank Lantz说,“围棋一直都是人们心中能够对抗计算机程序的游戏。有这么一句话:‘确实,电脑可以下象棋,但它们不会玩围棋’。我不认为这是对的。人们终将要放弃这样的想法:‘围棋有一种魔力,只有人类可以解读’。”
现在,在李世石比赛前,没有人知道会发生什么结果。专家们检查了AlphaGo与樊麾的比赛,发现了AlphaGo程序中的一些错误,尽管AlphaGo还是赢得了比赛。根据www.goratings.org的资料,樊麾排名370名,而李世石排名第4名,所以他们之间的水平有巨大的差距。李世石十分自信,他在记者会上说,他预计会以5–0或4–1获胜。“对我来说,最重要的是我一局都不能输。”
但是,在过去的5个月里,AlphaGo肯定已经也有提高;问题是它水平提高了多少。“我的感觉是,除非他们有很高的自信,否则制造AlphaGo的人不会同意参与这次比赛,”Lantz说。他和一位同事赌100美元AlphaGo会赢,他说:“我觉得我的胜率比较高。”
但是和国际象棋一样,在更广泛的意义上,比赛的结果并不重要。计算机程序迟早会超过人类,而且可能很快就会超过。在它们超过人类之后,如谷歌和Facebook这样的大公司可能会转移去挑战到其他的问题,如IBM那样。他们参加了一盘豪赌,而他们的赌注就在地球上每个人的口袋里。“他们想开发出像Siri一样有用的个人电脑助手。”神经网络专家、帕西非卡人口实验室(Ersatz Labs)的首席执行官Dave Sullivan说。“这就会改变世界的格局。”在这个过程中,让计算机程序学会下围棋是一个微小却胆大的开端,就像在走了300布棋的棋局中的第103步棋一样。
在游戏中,人类“例外论”也许在打扑克中有一点用。在一些版本的双手扑克游戏中,电脑已经能算出几乎完美的策略了。但是,优秀的人类扑克玩家还有一个技能:发现对方的弱点,扩大对方离“完美策略”的偏差。计算机程序还不能做到这一点,但本质上,这应该是一种深层神经网络在未来能够掌握的方法——另一个人们引以为傲的优势崩塌了。
在谷歌这家世界500强的公司完成他们的围棋计划后,围棋玩家们还是需要承认这个事实:计算机程序终究会慢慢超越人类。这必然会对这古典而优雅的围棋游戏带来一些改变。可能未来的围棋大师是跟着电脑学下棋的;可能有些围棋玩家会发明出更大的棋盘来击败电脑;可能有人会和计算机程序组队一起下棋;可能有些人下围棋不再是为了胜利,而是回归到它起源时的状态——艺术,就像书法或是音乐一样。
无论如何,计算机都是人类制造的。就像Hajin Lee所说的一样:“即使人类输掉了比赛,我们还是能够使用这个程序来帮助人类自身。”