首页 理论教育 自动下棋的机器

自动下棋的机器

时间:2023-02-14 理论教育 版权反馈
【摘要】:不知你是否听说过一种自动下棋的机器,这的确是一种令人惊奇的东西。除此而外,其他的自动下棋机就没有这么大的名气了,但这丝毫不影响人们对这种有自动运算功能的机器的钟爱,并始终坚信不疑。但这个结论只能针对“以前”,因为近年来出现的一些事物足以让这个结论被推翻——会自动“下棋”的机器事实上已经出现了!这个过程所用的时间的长短,与所用的下棋程序的种类和计算机的速度都有关系。

不知你是否听说过一种自动下棋的机器,这的确是一种令人惊奇的东西。棋盘上可能出现的棋局不计其数,却居然有这种机器被发明出来!

不过真相其实并不复杂。

以前根本没有能够真正自动下棋的机器,但人们总是坚信并期待它的出现,所以那时候以自动下棋机器的形象被发明出来的机器并不少,其中匈牙利的机械师沃里弗兰克·冯·坎别林(1734—1804)发明的那一台名气最大——它曾进入奥地利和俄罗斯的宫廷里供国王消遣,也曾公开在巴黎和伦敦举办过展览,连拿破仑都曾与之一决高下。遗憾的是,19世纪中期,这位“大明星”来到了美国费城,在一场事故中葬身火海。

除此而外,其他的自动下棋机就没有这么大的名气了,但这丝毫不影响人们对这种有自动运算功能的机器的钟爱,并始终坚信不疑。

所有的这些号称能自动下棋的机器其实都是骗局,那时候的任何一台机器都不能自动运算。

就拿我们刚刚提到的名气最大的那台来说,它不过是一个大箱子,里面塞满了复杂的机械装置,箱子上有棋盘和棋子,棋子靠一个木偶的手移动。在正式开始下棋之前,它的发明者总会向别人展示一下箱子内部那些复杂的机器零件,但事实上在整个下棋的过程中,它们唯一的作用,就是在展示内部结构的环节,掩护藏在箱子里的人!是的,这些看似复杂的零件的下面有一个空间足够容纳一个身材瘦小的人!大名鼎鼎的棋手约翰·阿尔盖勒和威廉·刘易斯都曾藏身于此,在零件的掩护下悄悄操纵过木偶。

我们因此得出了一个结论,那就是棋盘上可能出现的棋局不计其数,自动选择最佳走法的机器不过是那些容易被骗的人的想象罢了,担心机器战胜人无异于杞人忧天。

但这个结论只能针对“以前”,因为近年来出现的一些事物足以让这个结论被推翻——会自动“下棋”的机器事实上已经出现了!我们提到的能用一秒钟的时间完成成千上万次运算的计算机就是这样的机器。那么计算机是如何“下棋”的呢?

我们必须承认,计算机只会进行数的运算,根本不会下棋,但它的运算是按照一定的步骤——也就是事先编好的程序来进行的。数学家依据特定的下棋战术为计算机编写了下棋的程序,这套程序能为棋盘上的每一个落子点在某个战术中选择最恰当的走棋方案。比如下面的战术中,每个棋子都被编写了特定的分值。

国王……+200分 卒……+1分

皇后……+9分 落后卒……-0.5分

车……+5分 被困卒……-0.5分

象……+3分 并卒……-0.5分

马……+3分

此外,为计算机编写的下棋程序还可以根据一定的方法来判定棋子位置的优劣,这一部分的分值不会高于1分。在某种程度上来讲,从白棋的总分值与黑棋的总分值之差可以明显看出双方阵容的优劣,如果差数为正,则白棋胜算更大,如果差数为负,则更有可能获胜的是黑棋。

计算机会利用自己所擅长的计算来判断怎样在三步之内使这个差数最大,它从所有可能的组合中选出一个最佳的方案,打印在专门的卡片上,生成“一步棋”[1]。这个过程所用的时间的长短,与所用的下棋程序的种类和计算机的速度都有关系。但显而易见,计算机所用的时间在我们看来都是极少的,根本不必担心时间是否够用。

必须强调的是,只能从三步之内择优的机器其实只相当于水平极低的棋手[2]。高手对弈时,甚至要提前预计出十步甚至更多步才可以应付。

但我们又必须承认这一切都不是问题,因为计算机的技术必将不断完善,其“下棋”的本领也必将不断提高。

为了使读者感觉到轻松阅读的乐趣,我觉得不必介绍太多关于计算机编程的复杂问题,因此下一章我们会简单介绍几个易懂的计算机程序。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈