1994年,在德国慕尼黑举行了一次5分钟快棋赛,包括卡斯帕罗夫在内的17名特级大师参加了赛。赛卡斯帕罗夫被电脑fritz3击败。该程序还战胜了阿南德、肖特、格尔凡德和克拉姆尼克。有趣的是,特级大师罗伯特.许伯纳拒绝与fritz3交手,因而以弃权作负。这也是历史第一次一位特级大师因弃权而负于电脑。
1996年2月10--17日“深思”的后代“深兰”(deep blue)在美国费城与卡斯帕罗夫交手。结果,卡斯帕罗夫以4-2取胜。
1997年5月4日--11日“深兰”的后代“更深的兰”(deeper blue)挑战卡斯帕罗夫,经过6局激战,这台重1.4吨,装在两只黑色铁柜的rs6000/sp超级计算机以3.5-2.5战胜卡斯帕罗夫,成为历史第一台在对抗赛战胜世界冠军的计算机。
计算机和象棋大师的对抗,显示了计算机弈棋的力量,但也暴露了它的一些弱点,象棋大师依靠直观感觉、思维判断以及记忆的局面和理论原则选择最佳决策,并善于从纷乱的局面找出主要矛盾;但计算机却是根据程序预定的局面估价函数选取最佳对策,计算时尽管采取简化选剔法,仍然需要面面俱到。它的水平受时间的限制,尤其是残局的水平仍较差。
加里·卡斯帕罗夫在费城和纽约面对的这台电脑包括一个装备大量专门用以进行高速运算芯片的ibmsp/2服务器,每个芯片每秒能处理2-3百万个局面。使用超过200个这种芯片,整个程序的速度达到了每秒处理2亿个局面。
棋弈机器每秒能处理2亿个局面意味着什么?肯·汤普森,“尤物”之父(也是unix和c语言之父),在80年代对搜索深度和棋力提高之间的关系做了非常有意义的试验。他让“尤物”自己跟自己下,但只有一方的搜索深度不断增加,平均每增加一个搜索深度可大约换算成200个国际象棋等级elo分。于是,“尤物”搜索四层其水平大约是1230分,搜索到九层它的水平达到了2328分。延伸这条曲线,到了顶端会变平缓,可以计算出搜索深度达到十四层时,达到了世界冠军的程度即2800分。(如下图,横坐标是搜索层数,纵坐标是国际等级分。部横线是卡斯帕罗夫的分数作参考,a线表示对电脑水平的乐观估计,b线表示悲观估计,c线表示现实估计)
专家的结论是:要与人类世界冠军争夺冠军,必须做一台每秒运算10亿次的电脑(搜索到十四层的深度)。深蓝接近了,但还达不到。
电脑棋力的一个重要方面是下棋时使用广阔的开局库。多少代人类大师的知识积累和经验可以轻易地储存在硬盘并且在开局阶段采用。即使是个人电脑程序也懂得几千万个开局局面,并且对这些局面的每一个都有完全的统计(如出现过那些着法、用哪些着法胜过、使用过的人有多少,等等)。程序经常是连走15到20步之后才第一次需要计算。如果没有从这些人类的开局知识精华受益,程序将实力大减。
当电脑从数目庞大的、从国际象棋历史积累下来的开局知识取得坚实优势之时,它们也从对局的另一端搜索受益。
残局数据库
这又是那位影响力到处有的肯·汤普森充当了研究先锋。他在80年代开始生成和储存棋盘剩四至五子的所有符合规则的残局。一个典型的五子残局,如王双象对王单马,包含总数121万个局面。加一只移动不连续的兵,这个数字增加到335万。汤普森编写程序产生所有符合规则的局面并计算出每个残局可能的强制变化。他还以一种方式把结果压缩,使得一张标准的cd-rom能存放大约20个残局。
好在,局面数量更大得不可思议的七子残局,离产生依然很遥远。更好在的是,对局的两端即开局和残局,永不可能接在一起。是啊,假如看到一台电脑走了 1.e4 然后宣布40步棋之内将死,这太难以让人接受了。但是电脑在赛稳定战胜人类世界冠军大概只是时间问题,若干年或若干十年之后……
电脑其实是不停的搜谱,然后判断局面的好坏。人脑如果纯从记忆力来说,是不过电脑的,所以人战胜电脑的方法是创新。
之所以这场深蓝大战被很多人质疑的原因,是因为卡斯帕罗夫在认为摸透了电脑对某些特定局面判定有问题(过分看重子力优势,而忽略局面优势,如能多吃个兵)之后,电脑下出了一反常态的不得子的招法,且事后不给卡斯帕罗夫拆解电脑谱着思索痕迹的时间,直接物理拆除了更深的蓝。使得当时关键招是否是人为修改的(当时有说法是,那招请教了卡尔波夫)成为谜案。
更深层次的说,其实深蓝是ibm挽救公司的一次成功的商业炒作,它战胜的应该是它的竞争对手!
本书来自
本书来自