1997年5月,名为深蓝的IBM超级计算机打败了国际象棋世界冠军卡斯帕罗夫。这个事件在人工智能的历史上具有里程碑式的意义。
回顾那次对决,卡斯帕罗夫和其他国际象棋大师把失败归因于深蓝的某一招棋:在第一局的结尾或者第二局的结束,深蓝会下了一步带着牺牲意味的子,放长线钓大鱼。卡斯帕罗夫和其他人都认为这一步对于电脑来说太过复杂,在对战期间有人工的干预在其中。“这是非常惊人的一招,在防守的同时还消灭了可让对手报复的所有可能性,”国际象棋宗师Yasser Seirawan 在2001年的采访中表示,“它把卡斯帕罗夫逼疯了。”
(卡斯帕罗夫)
十五年过去了,纽约时报记者、数据学家Nate Silver的一本书 The Signal and the Noise中揭露:Big Blue的设计师之一承认那一招其实是深蓝软件中的一个bug。
(Nate Silver)
Silver为他的书采访了Murray Campbell(IBM公司的开发深蓝的三位科学家之一)。Murray表示,当时深蓝在没办法做出选择的情况下,就直接随机下了子。当时,深蓝与卡斯帕罗夫的对战被称为计算机科学历史上史诗性的一刻,卡斯帕罗夫的失败也成为对人类智力的羞辱。
许多国际象棋大师称卡斯帕罗夫在对战中处于劣势,深蓝的设计者有机会事先根据卡斯帕罗夫的战略和风格以及所有的公开对局对深蓝的程序进行针对性的改编。而卡斯帕罗夫就无法了解深蓝的历史记录,因为深蓝在每次对决之后就被会被微调,所以他完全就是在盲下。
IBM团队确实在赛间改进了算法,但是他们其实是在修复导致了那惊人一招的bug。深蓝犯了错,他们需要保证它不再犯。讽刺的是,这惊人的一步棋让卡斯帕罗夫心烦意乱,却没人能修复他脑袋里的bug。
“卡斯帕罗夫曾经总结说,那违反直觉的一步棋一定是一种更高级的智能”,Campbell告诉Silver。“他从没考虑过这仅仅是一个bug。”
很多人都会觉得这是关于人类本能的一课,毕竟,是软件内人为的错误才导致了电脑的胜利。如果这么想,那还会比较安抚人心。但如果没有那个bug,结果又是否会反转?不得而知。
在深蓝对决的多年之后,卡斯帕罗夫和他的继任者Vladimir Kramnik(同为国际象棋世界冠军)与Fritz(深蓝的继任者)的众多版本对战过。但是在这些比赛中,赛间没有代码的调整,Kramnik甚至有机会在赛前与软件对战,并有权利在56步之后推迟比赛。然而,结果并不理想。
2003年,卡斯帕罗夫与X3D Fritz最后打成了平局;在2002年,Kramnik第一次对战Fritz也是如此;2006年,Kramnik在对局中犯了大错,输给了Fritz。
( 卡斯帕罗夫 testing the X3D technology)
这些并非电脑的决定性胜利,但是人类始终没办法赢。即使人类可以想出抗衡电脑的编程优势的计策,我们会累,会犯错,会被焦虑折磨。而机器从来不会累,也不会慌。
但是,棋手和电脑实际上更像一种共生关系,而非敌对。而且,如今的国际象棋大师们也开始广泛地使用电脑作为学习辅助手段。
原文链接:https://www.wired.com/2012/09/deep-blue-computer-bug/
继续阅读
阅读原文