内容导航 第1页:人类 VS 电脑,谁将是未来的主宰者? 第2页:新的竞赛:国际象棋 第3页:象棋程序的思考 总结
如果今天没有了电脑,我真的是无法想象我们的人类文明将会变成什么样子,因为电脑已经渗入了我们生活的每个角落。而国际象棋(Chess)也是电脑做得相当不错的领域之一。随着国际象棋程序的出现和电脑计算能力的增强,人工智能的应用也变得明朗了起来;而这也是我们今天所要讨论的:究竟是"电脑在国际象棋领域的应用"还是"电脑的国际象棋"?
克隆的袭击
在过去的10年时间里,计算机已经成了象棋技师训练所不可缺少的工具。如果没有PC,真的无法想象技师们该如何操作庞大而且变化纷繁复杂的开放式数据库,更不要说运行象棋游戏了。在今天,似乎使用带有开放库的PC来训练棋艺已经是象棋大师们的特征了,电脑也成了大师们撕杀的又一战场。 克拉姆尼克( Kramnik )是最后使用电脑进行特训的超级大师。在他的许多"高级"同僚都已经使用象棋软件增进自己棋艺的时候,克拉姆尼克还在旧的习字簿上比画着,但最终他还是没有办法抵挡住科技进步的诱惑力...。
象棋软件和强大PC的出现,使得象棋技师们的训练更加有效率。你可以使用电脑分析棋局形势,然后自己可以在后面使用分析的结果作出相应的判断。 很多知名的参赛者曾被指责在家里使用了电脑进行训练,从而练就了许多古怪的开局办法,赢得棋盘的商机,最后获得了整盘棋的胜利。参赛者因为与电脑进行游戏,所以他们在游戏中可以尝试使用多种非典型的开局办法。 卡斯帕罗夫( Kasparov)就是这类型的选手,一方面,他自己因为使用了独特的开场风格而获益良多;另方面,他又因为首次使用了电脑陪练而备受指责。
象棋Fans对大师们普通的开场方式和分析理念并不太感冒。他们感兴趣并为之疯狂的是象棋软件和人类的对战,而这也是我们今天所要谈论的。
在过去的几个月时间里,人类已经和AI(人工智能)进行了两次激烈的交战:在公众和大量的金钱面前,两个男人 VS 电脑。首次战役是国际象棋的世界冠军 克拉姆尼克( Kramnik ) vs Deep Fritz(象棋程序的名称),他们之间进行了八次比赛。接着轮到在 FIDE有最高排名的 卡斯帕罗夫( Kasparov)vs Junior 程序(Junior 是不同年代的世界冠军,现在开发出以他命名的软件)。这两个象棋程序之间并没有进行过相互的比较,因此在下次电脑世界比赛之前我们很难说出它们孰优孰劣。我们只知道这两个程序运行的是不同的下棋方法。 Fritz倾向于防守,而Junior则更加喜欢进攻。曾轻有这样的评论,Fritz类似克拉姆尼克的风格,而Junior则模仿了卡斯帕罗夫。因此可以说,大师们正在和他电子化了的对手在对抗。
因为我们的网站主要是讲计算机,所以我们会将内容的重点放在人工智能所取得的成就;至于克拉姆尼克和卡斯帕罗夫大家应该熟识吧,否则的话,建议参考相关的资料。
人类 vs 电脑:竞赛的历史
现在让我们看看自诩才智过人的象棋大师们对抗人工智能的历史。我们首先从 卡斯帕罗夫与深蓝(Deep Blue)之间的比赛开始吧,深蓝是IBM公司专门制造用于下象棋的超级电脑。
事件发生在1997年,那时候PC还没有与人类大师相抗衡的能力,因此IBM斥巨资制造了一部多处理器的超级电脑:深蓝。首个版本的深蓝并没有预期的强大,它完全被卡斯帕罗夫的气势给压住了,被杀得手无招架之力。但增强版本就要令人刮目相看了,显得气宇不凡,比赛状况异常的惨烈,它在最终击败了人类的世界冠军。这也在共众之间掀起了轩然大波,这究竟意味着什么呢?....
他们之间进行了6场比赛。首场比赛里,卡斯帕罗夫执白先行,他选择了使用电脑通路库里没有的"queer"开场。另外,他下了奇怪的3步:你肯定没有见过人类有过这样走法,因为这是自损的着数(难道卡斯帕罗夫看过金庸先生写的《天龙八步》,尽得里面珍珑精髓,并可以应用到国际象棋?:))。奇怪的是,可能卡斯帕罗夫错有错着吧,怪异的下子方法弄乱了电脑程序,竟然获得了有利的地位,并最终取得了胜利。
第二场比赛卡斯帕罗夫执黑。奇怪的是,电脑这次的表现出奇的好,它组织了几次非常强有力的攻势,并且威胁到黑子的防御公事。我们将在文章的后面介绍象棋程序的运行原则,但在这里要声明这些程序在局面棋的表现并不佳。电脑的走子相当分散,没有考虑到整体的影响或者作出详尽的计划。卡斯帕罗夫设法扭转败局,他和电脑兑了两子,并因此而获得攻击白王的机会。这时候奇迹出现了:电脑用了整整15分钟考虑下步该怎么走,之前它走的每步都不超过3分钟。最后,电脑完全处于下风;象棋程序是死物,虽然它能够计算出可以和对手兑子的数量,却不能估算到整体的威胁。这也是为什么使用普通的办法,也能够在需要考虑到整体的游戏中获得胜利,因为程序并不能够从大局来做出估计。令人困惑的是,这时候卡斯帕罗夫却犹豫了,并走出了令自己致命的一步;电脑重新加强了己方阵地的防御工事,并开始创造威胁,其中卡有机会从周边进攻并结束比赛。但卡却放弃了,事后他从评论员得知,自己的确放弃了进攻的好机会。
接下来的3场比赛里,卡受到了来自电脑程序的重重压迫,但经过他战术上的策略,最终取得了平局的成绩。
最后一局,卡执黑,并展开了变化多样的攻势,而白方为为了消除威胁,牺牲了一个骑士( knight )。白方在牺牲了骑士之后,接着轻易就获得了胜利。
IBM随之宣布,人工智能以3.2-2.5的比分获得了胜利。公司的股票也大幅度提升。
电脑在第二场比赛的奇怪表现,使得卡斯帕罗夫团队对IBM的公正有所怀疑。他们说IBM改进了程序的算法;即是,在人类的帮助下,叫电脑不要去兑那两个子;这样电脑就能够避免攻击,并能够获得更深度的计算效果。
IBM公司对比赛的结果相当满意。在失去了首场比赛之后,IBM再次投入了大量的金钱改进开发的计划;他们不能够容许再次的失败。事实上,在比赛结束之后,这台超级电脑便被立刻拆卸了。
另方面,我们怀疑卡斯帕罗夫是在协议之下才落败的。为什么他在第二场比赛不再作进一步的检查就放弃了呢?为什么他在最后的比赛铤而走险呢?这些问题都有待回答。
曾有谣传说,深蓝在比赛中试过几次当机,因此不得不重启。我敢斗胆推断深蓝是在想出了几步好棋之后便当机的。计算机当机后便接着重启,之后要等一系列程序都打开,接着便会打开象棋程序。每次计算机重起后的极佳表现都会令卡斯帕罗夫感到异常惊异。我将在谈论象棋程序的时候仔细分析游戏的细节。
当然IBM会尽快拆除这个有当机隐患的计算机;也许在首场比赛结束后便拆除了。显然,制造会下棋的计算机是非常困难的,但如果能够造成影响他们又是那么的兴奋。
如果净是就下棋的能力来说,AI并没有任何比世界冠军有更好的优点;卡在比赛的最后之所以会出错着是因为太过疲累的结果,第二场比赛应该可以认为是平局,最后的比赛也是平局。而其它平局来说,也没有表明电脑的优点,它净是在逃避到安全的地方而已。特地设计的象棋程序的能力竟然这么差...