人和计算机的对弈
人和计算机的对弈,历史很久了,如果从红白机时代算起,也许比那还早。下面小编给你介绍人和计算机的对弈,欢迎阅读。
人和计算机的对弈
你和电脑下过棋吗?不要以为能和电脑下棋的都是世界冠军,像卡斯帕罗夫那样的人物,其实我们很多人都曾和电脑下过棋。不信吗?那我问问你,你在你的PC机上玩过围棋、象棋、国际象棋的游戏吗(注意这里说的可不是网络游戏)?玩过,那其实就是在和电脑下棋。如果还没有,那你当年在任天堂的红白机上下过五子棋吧?那其实也是在和电脑下棋。
和电脑下棋其实真没什么了不起的,只不过和卡斯帕罗夫下棋的是一个更高级的软件,而和我们下棋的是一些简单软件而已,所以想和电脑下棋吗,去市场上买张盘回来,简单。
可是就这么简单的一件事,回回都动静不小。从上个世纪到现在,“深蓝”、“更深的蓝”、“弗里茨”、“更弗里茨”等等,一时都成为明星。
人和计算机的对弈,历史很久了,如果从红白机时代算起,也许比那还早。人们最早开始编写下棋软件的目的就是检验计算机的运算速度,拿出来和真人下棋,只是副产品。现在的下棋软件已经不是副产品了,而是由专家研究出来的,专门拿出来难为世界冠军的。到这里,与人为难似乎成为了让电脑下棋的惟一目标,下棋成为一场在人与电脑之间的竞赛。真的是这样吗?
实际上这并不是什么人与电脑的竞赛,确实地说应该是人与自己的创造力的竞赛。不是嘛,电脑是人制造的,软件是人编写出来的,离开了人,这一切都不会存在。而比赛的输赢更不会说明什么问题,电脑有一天统治人脑的担忧至少在现在还找不到什么确实的依据。人赢了,则编写程序的人要开拓自己的创造力;电脑赢了,则棋手要开拓自己的思路,终归进步的都是人脑。
所以说白了,现在和卡斯帕罗夫下棋的电脑并没有什么,也就是当年红白机的后代而已,没什么了不起的。至于输赢,当年任天堂的红白机赢了你,你会耽心它要统治你了吗?
一、电脑挑选了国际象棋作为对手
1946年,冯?诺伊曼博士授命制造一台电脑,为美国军方研究制造原子弹服务。1950年,当电脑MANIAC I完工之后,工作人员用“没有象的国际象棋”对它进行了测试,他们画了一个6格乘6格的小棋盘(正常的国际象棋棋盘为8格乘8格),当时电脑需要12分钟来计算2个回合,而在有象的情况下,电脑需要计算3小时。第一局,电脑自己战胜了自己;第二局,电脑输给了一位大师;第三局,电脑战胜了一位女士。从此,国际象棋就成为电脑挑战的目标,这场“人类vs人工智慧”的较量一直持续到今天,成为全世界关注的热点。
对电脑来说,下棋的最大困难是计算。有人可能以为擅长高速计算的电脑可以毫不费力地算出双方所有可能的棋步,从中选择最优的方案,一直算到能把人类棋手的“王”将死,但事实上这是一个误区。假如一个局面有40步棋可以走,那么每一个回合就存在1600种可能性,因此当一局棋进行到40回合时,就有10的128次方那么多的选择,超过了宇宙中已知的原子数量(约10的80次方)。迄今为止宇宙大约存在了10的18次方秒钟,以上估算出的数字表明,即使启用最高速的电脑计算,恐怕算到宇宙毁灭的那一刻,还是算不出如何走第一步!显然,要电脑来计算如此庞大的数据是不可能的,所以科学家试图让电脑变得可以像人类一样“思考”、“选择”。人类在对弈时,每步棋基本上只会计算10种以内可能性,他可以经验和知识来判断那一种方案对他最有利。依靠这种“搜索最优”的方式,人类特级大师大概计算到可以15个回合以后的局面。于是,电脑必须解决这样一个问题:它如何像人类一样思考?能够思考的关键是学会评价各种各样的局面。所以,科学家必须建立一套严密的运算体系,使电脑具备“分析”的能力。
1958年,卡耐基—梅隆大學的三位学者发明了一种运算规则“Alpha-Beta”,使得电脑有具备了选择功能,计算能力有了第一次的突破。值得一提的是,“Alpha-Beta”运算规则纯粹由数学公式推导,不包含任何国际象棋理论。那时候电脑可以计算到3个回合之后的局面。1979年美国底特律市举行国际象棋锦标赛,有几台电脑棋手参加比赛,电脑的棋力等级分约为2000分,约为人类初级棋手的水平。1980年代,卡耐基梅隆大學的博林纳制造了一台64个并行芯片的电脑。后来,博林纳的学生许峰雄加盟了IBM,研制了“深思”和“深蓝”,这才真正达到了人类高手的水平。
“深蓝”的诞生是电脑发展历史上具有里程碑意义的一件大事。它使用200块特制芯片,每秒能够计算2亿个局面,为此IBM公司投资超过2000万美金,耗时六年时间。“深蓝”下棋的原理如下:把所有的可能性化成树形图,计算每种可能的走法,把分数付给树形图的每个端点,分数越高局面越好。然后把分类回送到起始局面。得分最高的树杈对应着计算机的走法,而得分最低的树杈则对应对手的走法,程序确定了一步“好”棋后,一旦算出其他着法会导致较差的局面,就终止考虑这一着法。
有些人会疑惑,为什么IBM公司会不惜重金来让电脑挑战国际象棋?即使电脑打败了人脑,那又能证明什么呢?其实,“蓝色巨人”IBM的本意并不在于打败人类世界冠军,而是希望通过研发芯片来革新技术,制造无所不能的超级电脑。现在“深蓝”的技术正被用于石油勘探、数字动画、生命科学、太空探险等领域,并发挥重要的作用。所以,人机大战只不过是IBM进行的一场大型实验而已。
二、战斗的序幕
1996年:深蓝vs卡斯帕罗夫
说到“深蓝”,有一个人不得不提。他就是华裔科学家许峰雄。他完成了博士学位后,加入了IBM,他和他的团队日以继夜地为工作,并且为特别设计的芯片编写程序。此时这个程序已经命名为深蓝。
1996年,为纪念电脑诞生五十周年,世界上最伟大的棋手卡斯帕罗夫应邀和“深蓝”进行六局的比赛,总奖金额为40万美元,比赛地点在美国费城。
首局电脑执白,以稳健的下法应对卡斯帕罗夫最拿手的西西里防御。局中,“深蓝”弈得非常出色,而卡斯帕罗夫似乎非常比较紧张,出现了失误,把胜利拱手让给了电脑。卡斯帕罗夫的失利让全世界都震惊了,人们开始极度关注在人机大战。幸好,卡斯帕罗夫没有让大家失望,他在第二局正常发挥,在残局中击败了电脑,本局激战73回合。接下来两局是和棋。
四局的比赛让卡斯帕罗夫对“深蓝”有了足够的了解。此时,他想到了一个高明的主意,他知道“深蓝”程序中带有一个收集了20世纪各位著名国际象棋大师所下的数千个棋局的数据库,电脑所有的分析数据都来自这些对局。如果他能够出新出奇的话,那么电脑就可能会找不到判断局面的依据,而出现错误。胸有成竹的卡斯帕罗夫采取了聪明的策略,他在后两局的较量中尽量走一些“模糊”的着法,让电脑无从计算。此招果然奏效,他最后连胜两局,赢得了人机大战的第一场胜利。
赛后的新闻发布会上,卡斯帕罗夫得意洋洋地宣布:“我在电脑身上看到了一些智慧,但这种智慧却是怪异、低效和不稳定的。我相信自己还有几年的安稳日子。”遗憾的是,仅仅过一年之后他就乐不起来了。
三、电脑的胜利
1997年:深蓝vs卡斯帕罗夫(回敬赛)
IBM很快卷土重来,他们组织了第二场比赛,这次地点移到了纽约。IBM的CEO葛士纳在赛前信心十足:“我们世界最强棋手对战卡斯帕罗夫。”
这次,许峰雄的团队有了新人的加入,他就是美国著名特级大师本杰明,此人多次获得全美冠军,棋力高超。
首局,卡斯帕罗夫取胜。人们并不感到惊讶。但第二局电脑立即还以颜色,报了一箭之仇。这局棋的过程十分耐心寻味,IBM团队临时在赛前更换了程序,使电脑弈棋的风格与之前大相径庭。卡斯帕罗夫向深蓝连续送上两个兵,以换取主动权。通常情况下,电脑有99%的可能会吃兵,因为任何程序都会将两个兵视为巨大的优势。然而出人意料的事情发生了!电脑在思考了15分钟之后,拒绝了卡斯帕罗夫的“礼物”!这个事情非常反常,因为电脑基本都是匀速行棋,每三分钟走一步,但这次居然花费了5倍的时间。于是,有人猜测这是本杰明在暗中指点电脑,虽然这样的猜测有点牵强,因即使3个本杰明也不会是1个卡斯帕罗夫的对手。无论如何,电脑的反常行为还是给了卡斯帕罗夫造成很大的心理影响,以致于棋王在判断上犯了重大失误,在本应和棋的局面中过早认输。
这场戏剧性的失利对棋王来说是一场灾难,他开始担心电脑是不是真的“进化”到让人生畏的地步。接着的3局双方下和。关键的第6局,神经紧张的卡斯帕罗夫执黑棋时搞错了走棋顺序,仅仅17个回合就溃败,令世界哗然。
这是历史上第一次电脑在对抗赛上打败人类棋王。对计算机领域来说,这是十分振奋人心的。然而对国际象棋界来说,个中滋味就很难说了。诚然,卡斯帕罗夫是输在心理上,可以说他其实是败给了自己,但电脑在比赛中的确表现出卓越的智慧。它的胜利预示着总有一天电脑将战胜人类,也许人民不再需要下国际象棋了。对关心人类未来命运的人而言,这种趋势是叫人悲哀的。
当然也有些人持乐观态度,比如前女子世界冠军苏珊?波尔加。她的见解十分有趣:“如果以为电脑战胜人类,我们就不下棋的话,那么就错了。汽车比人的速度快,但我们还在坚持跑步,人在下棋中能获得乐趣,而电脑却不能。”
四、战斗仍然继续
2002年: Fritz vs克拉姆尼克
2003年:Deep Junior vs卡斯帕罗夫
2003年:Fritz vs卡斯帕罗夫
和“深蓝”不同的是,Fritz来自德国。它于1991年问世,取名与德国二战中的一种炸弹相同,俚语中意为“德国人”。Fritz作为国际象棋软件公司chessbase的经典产品,是目前最成功的用于商业的国际象棋软件,大约能够每秒计算500万个局面。这个数字虽然不能与“深蓝”的2亿个相比,但它因为较精确的运算规则而获得了比“深蓝”更强大的实力。据测算其等级分在2760左右,是仅次于卡斯帕罗夫、克拉姆尼克两位世界冠军的“超级棋手”,许多一流棋手如小波尔加等等都不是它的对手。如果下5分钟快棋的话,那么它可能比任何人都更厉害——因为人类的反应永远及不上它。
在吸取1997年卡斯帕罗夫第二局输给“深蓝”的经验之后,克拉姆尼克要求fritz不得临时变更程序。这使他在较量中占得了先机。而fritz方面表现得甚至更配合——比赛前半年,fritz程序的副本就预先交给了克拉姆尼克,让他可以作针对性的研究。当然,克拉姆尼克的所有对局,fritz也全部研究过了。
比赛选在了巴林,当地出资200万美金作总奖金。前三局克拉姆尼克十分顺利,两胜一平,第四局下和,这样克拉姆尼克以3比1领先。此时,Fritz发威了。
第五局克拉姆尼克败北,他输得心服口服:“Fritz下得比任何人都好。局面似乎均等,但它就是能时刻保持压力,并始终寻找最精确的着法,不让我溜走。我必须承认它实在出色。”
第六局是激动人心的大战。Fritz执黑棋果断反击,获得良好的局面。当时形势很复杂,克拉姆尼克为他关键的第19步足足长考了四十二分钟,然后决定孤注一掷地进攻,事实证明,电脑有精妙绝伦的手段打退克拉姆尼克,于是电脑成功扮平了比分。让人难以置信的事情发生了,在与人对阵中从来不连输的克拉姆尼克居然在电脑手中连败两次!后面的2局比赛以和气告终,于是双方下成了4比4平。
2003年,迎来了人机大战的高潮。一年之内,卡斯帕罗夫两次接受电脑的挑战。2月份,他与拥有IBM技术背景的电脑Deep Junior下成3比3平,卡斯帕罗夫赢了第一局,但输了第三局,其余都是和棋。11月,卡斯帕罗夫对垒Fritz,双方以2比2握手言和,卡斯帕罗夫输了第二局,但成功赢了第三局。这已经是人类世界冠军连续三次与电脑战平,看来“人和电脑究竟谁更强”的悬念仍然难以解开。
2003年11月,又一场人机大战牵动了全世界亿万人的心。对阵的双方是有史以来最伟大的棋手卡斯帕罗夫和超级电脑fritz。巧合的是,本次比赛再度选择了纽约,1997年卡斯帕罗夫负于“深蓝”的比赛就是这里举行。纽约一向崇尚国际象棋,此次该市体育部长波兹巴更是说动了ESPN对比赛进行全程直播。
预测比赛结果是件非常困难的事情,卡斯帕罗夫的技术无可挑剔,开局和残局都比电脑强。然而电脑的计算能力则大大胜出,能够每秒计算500万次,而且表现稳定,不像人类受情绪左右。据研究表明,比赛盘数越长,电脑就越有利,因为技术小组可以根据卡斯帕罗夫的风格对软件做更细微的改进,电脑会在比赛中越来越强大。
比赛另一个引人注目的焦点在于:这是有史以来第一场在虚拟环境中进行的比赛。卡斯帕罗夫必须依靠三维眼镜来比赛,而不是通常的棋盘、棋子,他甚至必须用声音来移动棋子。从这一点看来,比赛似乎更像是一场赞助商X3D公司的技术展示会。X3D称,比赛现场人们可以看到真正的虚拟三维效果,而无须借助特殊的眼镜。他们采用了最先进的硬件和软件,通过每秒钟计算9000万次来把二维转换成三维,这样棋子不仅在屏幕里、甚至在屏幕外都是三维的,堪称效果惊人。制作方因为这项技术赢得了许多大奖,他们称“如果你喜欢《黑客帝国》,那么你一定会喜欢看这场比赛。”
11日首局较量,卡斯帕罗夫经过37回合鏖战与电脑Fritz弈和。赛后,卡斯帕罗夫对结果表示可惜,因为他一直以为自己可以先拔头筹。他说:“对局的过程十分激烈。我在中局努力获得优势,但却难以转化成胜势,因为Fritz的防守非常顽强。电脑程序再次证明了它的局面计算能力非常高超。”
事实上,这次Fritz的确有备而来,技术小组研究了今年早些时候卡斯帕罗夫对电脑junior的所有开局,并改进了Fritz的风格。一般来说,电脑只喜欢接受人类的弃兵弃子,而很少主动向人类弃子。这次,Fritz就打破常规,在第17回合决定弃车换象,这样的“下法”着实让人震惊。虽然执白的卡斯帕罗夫临危不乱,牢牢地把握着先行之利,但Fritz不时展开反击,使得卡斯帕罗夫无暇进攻,最后只能接受和棋。
从这一局的情况来看,电脑的发挥相当出色,这可能与工程师临时调整了程序有关。在抵达纽约之前,Fritz工程师工作的大楼遭到一伙持械匪徒偷窃,损失相当严重,其中一台装载关键资料的笔记本电脑不翼而飞。此事在德国惊动很大,官方甚至调动了特种部队来对抗匪徒。然而对Fritz技术小组来说,这场意外未必全是坏事,因为临时修改的程序似乎对卡斯帕罗夫的适应性更强,变得更加“人性化”。
反观卡斯帕罗夫,他的表现不尽如人意。他擅长的开局新招没有起到作用,而且在几个关键局面的处理上都有消极之嫌。首局成和的另一个原因大概是卡斯帕罗夫对在虚拟环境中作战不适应。由于现场没有棋盘和棋子,卡斯帕罗夫必须头戴眼镜来看三维的虚拟棋盘,由电脑通过识别声音而走棋,这让他觉得别扭。他说:“我依然不习惯没有棋盘,这好象指挥家手里没有指挥棒一样。”
第二局是卡斯帕罗夫的滑铁卢,他在前三个小时兢兢业业,基本掌握了局面节奏,执黑棋取得不错的形势,有望在斗争中赢取优势。但就在第32回合,卡斯帕罗夫走出一步惨不忍睹的臭棋,形势面临分崩离析。当时他马上意识到这一悲剧性的错误,为掩饰不安,他一阵风似的冲进了休息室,边走边摇头。而此时电脑果断抓住机会,撕裂了卡斯帕罗夫的防线,迫使棋王认输。
赛后,卡斯帕罗夫对输棋十分懊恼,他抱怨道:“和电脑下棋就是这样,它并不十全十美,甚至错过了一些机会,但它从来不出大漏洞。而人类则总会在某个时刻疏忽,于是电脑就立即乘虚而入。”有趣的是,fritz的制造者莫什也表示了失望,“我们并不希望依靠对手的失误而取胜。”
比赛的转折点发生在16日进行的第三局。卡斯帕罗夫出人意料地采用了一个罕见的布局,很快让电脑fritz迷失了方向。仅仅12个回合,卡斯帕罗夫就建立了一道兵的铜墙铁壁,完全遏止了电脑的发展,占据绝对的优势。此时,任何人类对手都会孤注一掷谋求反击,但电脑似乎仍然以为形势不错,慢吞吞地调兵遣将,期待卡斯帕罗夫会像第二局那样犯错。然而,卡斯帕罗夫这次表现得十分聪明,他在进攻的同时堵死了电脑的反击路线,终于在45回合时完胜对手。从过程上看,使用Intel最新处理器Xeon的电脑fritz在本局中明显判断失误,水平大打折扣,可见它的程序中存在漏洞,不善于应付封闭局面。Fritz的工程师承认,这种漏洞是几乎所有电脑程序的通病,而且目前的技术还无法克服这个缺陷。但工程师同时表示,由于第四局由电脑执白先行,因此卡斯帕罗夫很难通过封闭局面来打败电脑。
随后进行的第四局比赛对双方来说至关紧要,因为这一局棋的胜负就决定了整个对抗赛的结果。卡斯帕罗夫因为执黑,似乎对取胜信心不足,他在开赛前比较低调:“我会尽力争胜,但过于冒险是不明智的。”是役,电脑选择了一个激烈的对攻开局,但卡斯帕罗夫防守得非常谨慎,逐渐化解了电脑的攻势。弈至第27回合,双方的棋子几乎全部兑光,形成了和棋。这样,对抗赛最后的比分锁定在2:2,同时双方也平分了35万美元的总奖金。赛后,扳平比分的卡斯帕罗夫对结果表示满意。他不无得意地说:“有些时候,电脑下的就像神一样完美。但有些时候,它还得向人类多多学习。”当然他也有一丝失望,如果不是第二局的昏招葬送全局,他满可以赢得比赛的胜利。
其实卡斯帕罗夫之所以能够力挽狂澜,最大的功臣也许是纽约小姐。这位美女在关键的第三局亲临现场为卡斯帕罗夫加油助威,使棋王终于击败电脑。从这个角度来说,电脑技术再先进也赶不上人类,因为它永远无法“学会”欣赏美女。