自动下棋机中隐藏的秘密

时间:2024-06-26 04:59:06

出现了能够自动下象棋的机器,你一定会觉得很神奇。棋子在棋盘上的不同组合非常多,甚至可以说有无限多个。如果告诉你,历史上曾出现过能够自动下棋的机器,你一定觉得不可思议,怎么可能制造出可以自动下棋的机器呢?

事实上,这只不过是人们的美好愿望罢了,并非真的出现过自动下棋机。匈牙利有一位名叫沃里弗兰克·冯·坎别林的机械师,因为发明了一种可以自动下棋的机器而声名远扬。据说,他在皇宫中展示过这一机器,继而又在巴黎和伦敦进行公开展览。甚至连拿破仑都想跟这台机器进行较量,并坚信自己可以取胜。后来,这台机器于19世纪中叶被带到了美国,不幸在费城的一次大火中化为灰烬。

据说当时还出现过一些别的自动下棋机,只不过,不像上面的这台那么有名。但是,人们并没有因此而灰心,一直致力于发明一种可以进行有效运算的机器。

事实上那时候发明的这类机器都无法真正实现自动运算。很多时候,在机器的内部有一位棋手隐藏在里面,他在不停地移动棋子。虽然这种机器看起来非常逼真,但事实上它们只不过是内部空间很大,且装着一些复杂机械零件的箱子而已。箱子里装着棋盘和棋子,棋子的移动是通过一个木偶的手来实现的。在下棋之前给我们展示的时候,箱子里面仅有一些机器零件。其实里面的空间是很大的,完全能够装下一个个子比较小的人。著名的棋手约翰·阿尔盖勒和威廉·刘易斯都曾扮演过这个角色。当展示箱子的其中一部分时,藏在里面的人就偷偷地向其他位置移动。所以,这个箱子里面的机械只是道具而已,在下棋的时候,它们并没有真正发挥作用。

综上所述,我们可以得出这样的结论:棋子间的组合不计其数,并不存在真正的自动下棋机,那些所谓的机器不过是某些机械师骗人的伎俩罢了。所以,根本没有必要对这种所谓的自动下棋机心存恐惧,或者感到神奇。

不过,随着科技的发展,现在已经造出了这种可以自动下棋的机器,这就是计算机,它可以在1秒的时间里运算几千次,甚至更多。在前面我们已经提到过这种机器,那么,它究竟是如何工作的呢?

自动下棋机中隐藏的秘密

其实,计算机所有的工作都基于运算,除此以外它什么都不会。但是,我们可以事先编一些程序,让计算机按照一定的步骤进行运算。

数学家就是根据下棋的一些战术来编写的程序。这些战术都是根据走棋的规则来制定的,根据这些规则,每个棋子对应的每个位置都有唯一的最佳路线。上页的表格就是一种下棋的战术,其中,对每个棋子都规定了一定的分值。

另外,在编写程序的时候,还按照一定的原则来衡量棋子所处位置的优劣,比方说,棋子是在中间还是在边上,棋子的灵活度如何,等等。位置的优劣也占有一定的分值,一般来说,这个分值不到1分。最后,把白方和黑方的总分相减,所得的差就代表了双方棋局上的优劣。如果是正的,就代表白方占优;如果是负的,则代表黑方占优。

计算机在计算的时候,一般只计算三步之内的差数,并且判断如何让这个差数的改变值最大,从而在这三步的所有组合中选择一个最优的方案,并在卡片上打印出来,这就算走完了一步计算机的运算速度非常快,根本不会出现时间不够用的现象。

话说回来,如果一个机器只能“想出”后面紧跟着的三步棋,它并不能算是一个好的“棋手”不过,随着计算机技术的发展,计算机“下”棋的技术肯定会越来越高超的。

不可能详细地描述这类下棋的程序。在下一章中,我们会介绍几个比较简单的运算程序。