您当前的位置:首页 > 洋洋大观

卡斯帕罗夫:象棋大师与计算机

时间:2016-03-18 09:20:37  来源:豆瓣  作者:独孤力命

 译者按:AlphaGo在与人类围棋大师的对决中,已经取得了历史性的胜利。阴谋论、末日论和盲目乐观的希望一时蜂起。非常类似的事情,在1997年其实已经发生过了一遍。当年败给“深蓝”的卡斯帕罗夫,在2010年写了这篇书评,提到了计算机对职业象棋的影响,也描述了他在人机对弈后许多创造性的尝试。揆诸今日,或许同样的事情会在围棋上重演。

卡斯帕罗夫在本文中对单纯依靠蛮力的程序表达了不满,希望能有“更像人类”的象棋程序。今天的AlphaGo,从原理上说,可能正是充分借鉴了人类学习的过程,最终做到青出于蓝的。这是人类的伟大胜利,或许也足以说明,在我们这个时代,创新其实并未停止。

又及:译者对国际象棋一窍不通,译文如有错误,敬请读者指出。

______________________________

象棋大师与计算机

加里•卡斯帕罗夫

原文刊载于《纽约书评》2010年2月11日号,评论迭戈•拉斯金-古特曼(Diego Rasskin-Gutman)的著作《象棋的隐喻:人工智能与人类心智》(Chess Metaphors: Artificial Intelligence and the Human Mind, MIT Press)
http://www.nybooks.com/articles/2010/02/11/the-chess-master-and-the-computer/

1985年在德国汉堡,我和三十二台象棋电脑进行了一场车轮战。在那五个小时里,我依次走到每一台机器面前移动棋子。四家领先的象棋电脑制造商都送来了他们的顶级型号,其中来自电子公司Saitek的八台,还是以我的名字命名的。

那场比赛的结果颇能说明当时象棋电脑的水平。不出意料,我以32-0取得了全胜,只遇到一个略不顺利的小插曲。当时我在和一台“卡斯帕罗夫”电脑的对局中陷入了麻烦。如果这台电脑赢了,哪怕仅仅是和局也罢,人们都会说我是给公司做广告而放水,所以我必须下得更认真一些。最终,我用弃子的办法骗过了电脑。从象棋人机对战中人类的角度来说,至少在我而言,那是一去不返的好日子。

十一年之后,我在比赛中险胜超级电脑“深蓝”;此后IBM加倍投入,深蓝的处理能力随之成倍增长。1997年那场举世闻名的再次对决中,我输掉了比赛。这一结果,有些人觉得它象征了人类最终臣服于全能的电脑,为此震惊沮丧(《新闻周刊》的标题就是“大脑的最后阵地”);另一些人则不以为然,在他们看来,人类竟然还能和电脑强大的计算能力一较高下,才是奇怪的事。而在1997年,电脑已经是发达国家案头常备之物了。

象棋选手、程序员、人工智能爱好者这些专家们,对这结果的意义的理解则各有差别。象棋大师们开始看出端倪,神乎其技、无懈可击的象棋机器——哪怕暂时只限于几种布局情况下——的确是存在的。象棋程序的开发者们征服了计算机科学界最久远而神圣的目标,当然非常兴奋,主流媒体的夸张报道也就应声而起。芒蒂•纽伯恩(Monty Newborn)2003年的那本《深蓝》就是这么吹嘘的:“这是转折性的分水岭,百年难得一见,比莱特发明飞机、NASA登上月球还重要。”

而人工智能界,虽然乐见这一成果和它所带来的公众关注,却也有些失望。他们的先辈几十年前就梦想创造一台能打败象棋世界冠军的机器,但“深蓝”却和那个梦想相去甚远。他们想要的机器,是能像人一样弈棋,有人的直觉和创造性,而现在实现的机器,却是以每秒两亿次的速度系统评估棋盘上所有可能的落子,以蛮力计算取胜。人工智能和神经网络的先驱,英国科学家伊戈尔•亚利山大在他2000年出版的《筑造心智》(How to Build a Mind)中曾说:

“到了1990年代中期,用过电脑的人比1960年代多了好几个数量级。卡斯帕罗夫被电脑击败后,大家都意识到了这是程序员的胜利,但这并不是那种在实际有益的方面,也能比肩人类的智能。”

这当然是了不起的成就,这成就属于人类,属于IBM的团队。但“深蓝”之具有智能,和你的定时闹钟也没什么分别。就算这闹钟价值一千万美元,输给它我也不会觉得好过。

我想和“深蓝”再战一次,被IBM拒绝了。他们已经吸引了足够的注意力,于是迅速关闭了整个项目,世界上其他象棋程序项目也失去了赞助。虽说在1998年,我很希望有机会在准备充足的情况下再比一次,但显而易见,电脑在象棋上超越人类其实是迟早的事。在今天,你花上50美元就能买到的家用单机版象棋程序,能轻易打败大多数人类象棋大师。而在2003年的时候,我和在商用多核服务器上运行的两个程序进行了系列比赛——当然,我只能一盘一盘地下棋——那两次对战中,我和程序各赢一局,几次和棋,最后的比分都是平局。

象棋超级大师出现在每个人的案头,这可能是无法避免的趋势,而没有人能细究它复杂的后果,特别是对职业象棋来说这意味着什么。很多悲观的预言认为,随着机器的崛起,尤其在我输给“深蓝”之后,人们会丧失对象棋的兴趣。对此提出的反驳则大多是说,就算自行车和汽车能跑得更快,跑步比赛还是照常举行。这个类比其实似是而非。汽车并不能让人徒步跑得更快,但象棋程序却毫无疑问影响了人类弈棋的水平。

另有一些人设想象棋会作为一个数学问题被彻底解决,也就是说,电脑能从一开始就找到必胜的策略(另一种可能是证明以最优走法互弈,最后必然和棋)。也许,现实版HAL9000可以宣布,用王兵开局(1.e4),38,484步之后就能将杀。这些预测都没有成真,将来也不会。从我们今日能想象的技术而言,象棋太过复杂,无法得到确定解。不过,象棋的小兄弟跳棋,已经遭遇此等末日了。阿尔伯塔大学的乔纳森•谢弗(Jonathan Schaeffer)已经创造出了战无不胜的Chinook程序。

所有符合规则的象棋局面共有10^40种,而不同的棋局更有10^120个之多。为了体现这样的数量是何等巨大,人们总是借用天文学上的类比。在《象棋的隐喻》这本书里,迭戈•拉斯金-古特曼指出,一个棋手如果想预测未来的八步棋,他要面对的可能棋局和银河中的恒星一样多。拉斯金-古特曼在他的书里也化用了另一个说法:所有可能的象棋棋局数目比宇宙中所有原子的总数还多。通过这些对比,门外汉也能意识到,为什么电脑的暴力计算也无法彻底破解这个古老的棋盘游戏。同时,我刚才没有提到象棋的复杂性,而这些类比足以从数学的方面直观表现其程度。

对程序员们来说,这种天文数字级别的复杂度是非常重要的。他们从一开始就知道,依靠现有的计算能力,是做不到彻底解决象棋问题(也就是创造常胜程序)的,必须要寻找有效的捷径。第一个投入使用的象棋程序其实是传奇的英国数学家阿兰•图灵在1952年设计出来的,那时候他根本没有计算机可用!图灵的算法是在纸面上“运行”的,而这“纸面上的计算机”就下得了象棋。

这个领域向来不乏研究者,而拉斯金-古特曼的书只是最粗略的提要。第一章简述了大脑功能的研究历史,但这些内容读者可能很想跳过。你也许还记得高中生物课上学的树突和轴突,这一章里还提到了“胆碱能系统”(cholinergic system)、“胺能系统”(aminergic system)等等拼写检查这个人工智能都不认识的东西,随后的章节则概述了人工智能和象棋电脑,还有人类是如何下象棋的。这些内容虽然简洁,但结论却有点不明确。

强大的象棋程序层出不穷,带来了很多未曾预料的后果,有些是积极的,有些是消极的。孩子们喜欢电脑,对它着迷,当电脑和象棋结合了起来,自然也不例外。有了能力超强的软件之后,孩子在家里就能找到一个顶级的对手,不需要从小受职业教师的训练了。没有什么象棋传统也缺乏教练的国家,现在也能涌现高手。实际上,今年我就在辅导这样的一位选手:19岁的马格纳斯•卡森(Magnus Carlsen),他来自象棋并不流行的挪威。

电脑分析的广泛应用也把象棋运动本身推上了新方向。计算机根本不在乎什么风格、定式、几百年来的既成理论,它只是先把所有棋子的“数值”求和,分析几十亿种步骤,然后重新估算棋子的总数值(电脑先把每个棋子和局面翻译成数值,把棋局变成能够破解的数字问题)。它完全没有偏见和教条,而它所训练出的棋手,也像它一样不守成规。渐渐地,一步棋的好坏并不取决于它看上去怎么样,或者之前是否有人这样走过,而仅仅取决于它是否有效。尽管现在下好棋还是需要很强的逻辑和直觉能力,但人类的棋已经下得越来越像计算机了。

几百万局棋谱就在指顾之间,优秀的象棋选手于是越来越年轻。以前,吃透几千种基本定式和开局需要花上几年时间,正如马尔科姆•格拉德威尔(Malcolm Gladwell)在《异类》(outlier) 中提出的“一万小时理论”所说的那样(格拉德威尔早先的另一本书《眨眼之间》转述了很多认知心理学的知识,《象棋的隐喻》也有所提及)。现在,十多岁甚至是不到十岁的孩子就能利用数字化的象棋资料库,凭着年轻头脑的优势,加速学习过程。在没有电脑的年代,十多岁的象棋特级大师犹如凤毛麟角,几乎注定要角逐世界冠军。鲍比•费舍尔(Bobby Fischer)1958年以15岁的年龄得到象棋特级大师头衔,他的纪录直到1991年才被打破。但从那以后,纪录已经被打破了20次,目前的保持者,乌克兰人谢尔盖•卡尔亚金(Sergey Karjakin),2002年获得最高头衔时年仅12岁。他现年20岁,是世界顶级的棋手,但不像鲍比•费舍尔那样超然拔群。当年费舍尔在自己的同龄人中头角毕露,很快整个象棋世界中都无人能与他比肩;但卡尔亚金这一代神童们却并非如此。

一直以来,棋艺高超都被当作整体智力高超的象征。在我看来,这个假设虽然让人很受用,但却是错误的。不过,如果以研究和论证为目标,恰如拉斯金-古特曼所说,象棋是“一个无可比拟的实验室,为坚实技术分析的应用提供了极好的比较框架,因为无论是学习的过程,还是掌握技能的程度,都能客观地量化”。

对此我全心全意地赞成,不过理由却不太一样。我更感兴趣的,是运用象棋这个实验室来阐明人类心智,而不是人工智能的工作原理。我在2007年出版的《生命与象棋》(How Life Imitates Chess)里写过,“对于人类心智来说,象棋是一个非常独特的认知节点,不仅科学与艺术在此融汇,想要精益求精,经验也必不可少”。 完全偶然地,这段话所在小节的标题是“不仅仅是个隐喻”。唯其如此,把象棋的决策过程作为一个模型,可以帮助我们理解和改进其他的决策过程。

当然,这并不是说我就不关心智能机器的探索。我之所以和那么多象棋电脑比赛,就是因为想要参与这个伟大的实验。我身为象棋世界冠军的那些年,恰逢电脑挑战并超越人类选手的关键时代,这是我的运气(也许是噩运)。1994年以前和2004年之后,这种对决都引不起什么兴趣,因为电脑很快地由极弱变为超强。但就在这十年里,人机对弈是人类大师的直觉知识与机器的计算能力(我们不要忘记,还有程序员们的人类智慧)之间激动人心的碰撞。

拉斯金-古特曼解释了所谓的“莫拉维克悖论”(Moravec's paradox) :象棋等等计算机擅长的事情,恰是人类不擅长的,反之亦然。这让我想到一个实验:如果人类和机器不是下棋的对手,而是下棋的伙伴,会怎么样?我这个想法1998年的时候在西班牙莱昂付诸实施,我们称之为“进阶象棋”。比赛时,每个棋手各有一台PC,运行他自己所选的任何象棋软件。我们的目的是想综合人类和机器的长处,创造出前无古人的最高水平对弈。

尽管我对这种不寻常的比赛形式有所准备,但对弈时还是感觉颇为奇怪。我的对手是保加利亚人维塞林•托帕洛夫(Veselin Topalov),最近一段时间,他是世界排名第一的棋手。和电脑程序一起下棋,既让人兴奋,也让人倍感烦扰。随时查询数据库中的几百万局棋谱,意味着开局时我们不必绞尽脑汁搜索记忆,因为开局的可能走法早就被系统地记录分类了。不过,既然我们都能查询一样的数据库,最终还是要靠想出新点子,才能取得优势。

有个电脑当伙伴,也意味着我们不用担心战术性的昏招了。电脑能预演我们走法的后果,指出我们忽略了的可能结果与反制措施。既然后顾无忧,我们就能把精力集中在策略思考上,而不必花大量时间进行计算。在这样的条件下,人类的创造性就更加重要。不过,尽管撷取了“人机两界”的精华,我和托帕洛夫的对局却远非完美。我们时间紧迫,很少有机会咨询自己的机器助手。即使是这样,比赛结果还是很值得注意的。那之前一个月,我曾在一场“常规”快棋赛中以4-0击败了托帕洛夫,而我们的“进阶”比赛却以3-3平局告终。电脑完全消除了我在局部计算方面的优势。

拉斯金-古特曼没有提到我们这次实验,鉴于它与此书论题的相关性,这应该要算是很大的缺漏。但更值得注意的是“进阶象棋”实验的后续发展。2005年,象棋网站Playchess.com举行了一场“自由式”象棋大赛,参赛者可以任意和其他人或者电脑组队。通常情况下,象棋网站都会运用“反作弊”算法来防止参赛者用电脑程序作弊(些检测算法能分析走法,计算概率,我怀疑它们和那些下棋软件同样“智能”)。

重赏之下,好几位特级大师都携多台电脑参加了比赛。一开始,结果不出预料。人和电脑组队,要远远胜过最强的电脑。“九头蛇”(Hydra)和“深蓝”一样,是一台专业象棋超级电脑,而面对棋力较强的人类选手和一台较弱的笔记本电脑的组合,它却败下阵来。人类的战略引导加上电脑精确的战术计算,的确所向披靡。

但大赛的最终结果却出乎意料。最终的赢家并不是一位带着顶级配置笔记本电脑参赛的特级大师,而是两位美国业余选手和三台电脑的组合。他们的技巧是通过干预和“教导”,让电脑们更深入地搜索可能的局面。这一策略不仅胜过了特级大师们对象棋的精深理解,也胜过了其它参赛者的超强计算能力。“棋力较弱的人类+机器+优化的步骤”比强力的电脑本身技高一筹,也优于“棋力较强的人类+机器+较差的步骤”。

“自由式”象棋的比赛结果虽然令人吃惊,但却验证了我的信念:所谓“天才”,是一个被误用的术语,也是一个被误解了的概念。1985年,当我以22岁的年纪成为历史上最年轻的世界冠军时,无数人问我成功的秘诀是什么,我到底有什么样的天才。记者们不问我“西西里防御”是怎么回事,他们想知道的是我平时吃些什么,个人生活如何,我能预先计划几步棋,我到底能记得多少棋谱。

我很快就意识到,自己的回答很让人失望。我吃得没有什么特别;我努力工作因为妈妈就是这么教导我的;我的记忆力很好,但也不是过目不忘。至于说特级大师能预先看穿多少步棋,拉斯金-古特曼借用了一个据说是出自世界冠军何塞•劳尔•卡帕布兰卡(José Raúl Capablanca)的回答:“一步,最好的那一步”。这个回答虽然精辟,但其实无关痛痒,只不过用来应付外行人自作聪明的提问。问象棋大师能预料几步棋,就好像问兰斯•阿姆斯特朗在环法自行车赛上换过几次档一样。

唯一的真实回答是“要看具体的局面,以及我有多少时间”,但这种回答很难让人满意。1999年在荷兰举行的霍格温斯联赛(Hoogovens Tournament,译者按,即维克安泽大赛)上,我提前整整15步预见到了胜局。这是非同寻常的成就,这盘棋可能也是我在比赛中下得最好的一次。为了攻击我破釜沉舟地弃了很多子,如果算错的话,我就输定了。我的直觉是正确的,而我的对手(那次还是托帕洛夫)在压力之下也没能找出防御的办法。但赛后分析表明,我虽然拼尽全力,却错过了一条取胜的捷径。卡帕布兰卡的话固然是出于嘲讽,但人类下象棋,以及广泛意义上的人类的决策,最重要的确实是在少数几步中做出正确估计。而计算机才更依靠系统地深入搜索更好的走法,也就是“预见”更多步棋。

毫无疑问,棋手所需要的视觉空间能力、长程记忆等认知能力,不同人有不同的天赋。象棋之所以是“无可比拟的实验室”和“独特的节点”,正因为它需要大脑在许多功能上都有高超表现。很多对象棋所需能力的研究之所以在实践中失败,就是因为没有认识到学习和对弈的过程的重要性。能连续几天高强度工作而始终保持专注,这是一种禀赋;几个小时的学习之后还能持续吸收新信息,这也是一种禀赋。分析自己决策的过程和结果,通过自我“编程”而改进,也正如较好的象棋程序能用同样配置的电脑取胜。我们可能没办法改变自己的“硬件”,但完全能做到升级自己的“软件”。

现在象棋电脑的优势已经非常明显,“人机大战”业已成为过去,或许是时候转移目标了。象棋计算机之所以吸引了二十世纪众多优秀的头脑,是因为他们想要解决“下更好的棋”这个问题,而这个问题也已经被解决了。但吸引他们的还有其他目标:开发一款像人一样思维的象棋软件,或许还能让它像人一样学习下棋。我们已经做到了让硬件和算法都越来越快,而上述那种研究路径却肯定能带来更丰硕的成果。

这大概是终极的“象棋隐喻”了——我们为了给市场供应产品而放弃了发明创造。创造一个人工智能,让它能参与作为人类思维象征的古老游戏,这个梦想被抛弃了。取而代之的是,每年我们都有新的象棋程序,旧程序也不断推出新版本,但这些程序的基础概念都是搜索几百万种可能性挑选出最佳的落子。这个概念,早在1960-1970年代就已经提出了。

我们这个现代世界,技术多而创新少。象棋程序也沦为了市场需求和渐进主义的牺牲品。既然蛮力计算就能下好棋,何必管其它的呢?既然已经有了行之有效的办法,为什么为了实验新想法而浪费时间和金钱?任何有资格被称为“科学家”的人都会对这种思维感到震恐,但悲哀的是,看起来这是主流。我们最优秀的头脑放弃了真正的工程学,转而去搞金融工程,这对二者都是灾难性的。

也许象棋已经不属于这个时代了。扑克游戏流行起来,业余爱好者也梦想着上电视赢取几百万的奖金,而这纸牌游戏的所有变化,在一张纸上就能列出来。当然,象棋是一种完全信息博弈,双方都能同时看到所有的数据,所以可以通过纯计算解决。而在扑克中,牌是隐藏的,赌注也在变化,于是运气、虚张声势、风险控制就起到了关键的作用。

扑克游戏的这些特点,看起来完全建立在人类心理学的基础上,或许能免受计算机的侵袭。机器当然能算出每一手牌的胜率,但要是对手牌差却押大注该怎么办呢?就算如此,计算机也还是在进步。前面提到的跳棋程序的发明者乔纳森•谢弗,已经转战扑克领域了。他的数字牌手在和人类高手的对决中,正变得越来越强——这对赌博网站有显而易见的意义。

现在的趋势是,很多职业象棋选手都在业余时间玩起了获利更加丰厚的扑克游戏。这或许不完全是负面的。我们如今享受的生活方式,要靠不断创新才能保持;人类现在重新学习如何应对风险,也许还不算太晚。更何况,如果非要等到出现了会打牌的超级电脑,我们才能明白想赢钱就得冒险的道理,那就让它来吧。


来顶一下
返回首页
返回首页
发表评论 共有条评论
用户名: 验证码:
推荐资讯
饶毅,不做院士又怎样?
饶毅,不做院士又怎样?
嫁给梁山的女人——女烈士扈三娘事迹感动大宋
嫁给梁山的女人——女
司徒文:我所知道的北大武斗
司徒文:我所知道的北大
 NASA:依赖施舍的伟大
NASA:依赖施舍的伟大
相关文章
    无相关信息
栏目更新
栏目热门