走出“华容道”再去“攀高峰”(上)_互动科普

使用社交账号登录

购买价格:
付款方式:

互动科普

主页 > 科普纵览 > 数学 • 其他

走出“华容道”再去“攀高峰”(上)

莫海亮 吴鹤龄  发表于 2018年06月15日

益智类滑块游戏种类很多,世界各地都有这类游戏的不同版本,玩起来都饶有兴趣。这里精选出几款,供爱好者闲时一试身手。

滑块游戏,国外称之为“sliding block puzzles”,是在形状规则的一定空间中,放置若干具有不同形状和大小的滑块,并留有适当的空位形成的。滑块可以在空间中上、下、左、右平移,以使其从初始布局到达所要求的终局。最著名的一个滑块类游戏就是家喻户晓的“华容道”,它以《三国演义》第50回“诸葛亮智算华容  关云长义释曹操”的内容为背景,因此引起了很多人的兴趣。

滑块类游戏的特点之一是其解通常可以通过“试探法”获得,有许许多多不同的途径,任凭游戏者发挥想象力。但要获得“最佳解”(以最少步数从初始布局到达终局),则绝非易事,对游戏者的智力是一个重大的挑战和考验。不少滑块类游戏至今没有找到最佳解,甚至连最佳解应该是多少步都没有定论。

滑块类游戏的另外一个重要特点是易于制作,因此易于普及。只要找一张废弃的硬纸板,按照所需形状和尺寸比例剪出所需滑块,就可以在比较光滑的桌面上玩起来了。老师们可以充分利用这个有利条件,通过滑块类游戏去锻炼和启发孩子们的智力。现在网上和手机游戏中也有“华容道”之类的滑块类游戏。

 

著名的“华容道”

为了简单方便,在介绍滑块游戏时,我们把不同的滑块分别用字母和数字代替。在华容道游戏中,用A代表曹操,12345代表刘备手下的五员虎将关羽、张飞、赵云、马超、黄忠,6789代表4个小卒。华容道游戏开始时可以有许多不同的布局(这叫“开局式”),只要把A团团围困起来就可以了。终局只要求A走到下方开口处,对其他滑块的位置没有要求。

20131256华容道-上_f1.jpg

华容道游戏的基本布局

 

我们前面说,滑块类游戏通常可以通过“试探法”获得解,而且往往有任意多的解法。华容道游戏当然也是这样。但为了减少步数,人们总结出了一些规律。数学家许莼舫先生在《数学漫谈》(开明书店,1952)中给出了玩华容道游戏的8条规则,很有参考价值。

 

20131256华容道-上_f2.jpg

许莼舫先生总结的8条规则

 

了这8条规则以外,许先生还给出了一条忠告:有计划、有准备,做任何一件事情之先,要深思熟虑。就华容道游戏而言,“你要是没有充分的准备和详密的计划,移来移去,必致到处碰壁。”

许先生自己运用这些规则和事先周密的计划解华容道的典型布局“横刀立马”,用了以下99步(每一步走哪个棋子便用该棋子的标号表示;对于小方块,有向左、向右、向上、向下以及拐弯、走一格或二格的区别,根据“上下文”不难判定,因此未加标注)。

 

41286 28619 72617 92468 19245 A2918 64597 16459 71 632 64832 64832 84682 3571A 68234 5791A 845A8 64523 A 8197 A8617 A861

 

许先生的这个结果已经很不错了,一般人初玩华容道都要大大超过100步。不过这个结果并非最佳。19643月,著名的智力游戏和数学谜题专家马丁·加德纳(Martin Gardner19142010)在《科学美国人》(Scientific American)杂志的专题文章中讨论华容道时,介绍了新奥尔良的一个律师托玛斯·莱曼(Thomas B. Lemann)所获得的一个81步解。为了和许先生的解做比较,我们做了一些调整,成为如下84步解(数字带下划线表示只走半程,不走全程:

 

41682 68219 72617 94268 19245 A3792 3A548 61328 A7 982 36A75 4A798 2367A 45892 3A985 49176 A8916 A891

 

81步的解已被证明是华容道“横刀立马”式的最佳解,不可能有更少的步数了。我们来分析一下莱曼解法比许先生的解法优越在什么地方。两个解法使曹操左移一格的前26步基本上是一样的。最大的区别在于:许先生为了让曹操下移一格,反复利用他的几条规则,用了39步才实现。而莱曼却采用“迂回战术”,先用6步让曹操回到原位,再用9步就使曹操下移了一格。这样,同为下移一格,二者所用步数却整整相差了24步!虽然这之后到终局,许先生用的步数比莱曼的要少一些,但由于在第一次使曹操下移时许先生的消耗太大,在总步数上仍以15步之差输给莱曼。

除了“死守计划”这一点以外,许先生过于强调规律(1),使4个小兵以68为一组,79为另一组,常在一起不分离,也是造成步数过多的一个原因。在莱曼解法中,我们看到,开始时,也是68为一组,79为另一组的;而在曹操第3次走步下移一格以后,莱曼果断地“破坏”了这一规则,让8号小兵进至右上角,6号小兵撤退至下方,将它们分离,从而赢得了使曹操又得以下移一格的局面。在接下去的棋步中,莱曼将4个小兵重新组合,仍按规则,让67在一起,89在一起,直至终局。可见在规则的应用上大有学问,不遵守规则是不行的,死守规则也要吃亏。世界战争史上有不少“出奇制胜”的例子,就是不按兵法常规出战,反而克敌制胜。很有意思的是,在滑块类游戏中也有这种情况。

“横刀立马”只是华容道游戏中的一种开局式。由于5个矩形块可以任意横放几个,另外竖放几个,或者全部横放(全部竖放是无解的),这就形成了各式各样的开局式,使华容道游戏变幻莫测,更加引人入胜。开局式通常以“有几个矩形块是横放的”而被划分为一横式、二横式、三横式、四横式、五横式5大类。除了五横式只有一种可能布局,即4个小兵分居曹操两侧,5个矩形块在下方这样一种开局式外,其他几式又有多种可能开局式。开局式之间原则上不应该是“互通的”,即从一种开局式经过移动若干棋子而变成另一种开局式。但目前流行的开局式之间,存在少数互通的现象,这多数是由于二者之间要经过较多步数的变换,因而被大家认可为两种不同的开局式了。

如同我们前面讨论的开局式被命名为“横刀立马”一样,大多数开局式也被游戏迷们赋予了生动、形象、直观的名称,从而大大增加了游戏的趣味性。我们只举几个例子:一横式7叫“兵临城下”,9叫“一路进军”;二横式1叫“插翅难飞”,5叫“横马当关”;三横式1叫“层层设防”,5叫“瓮中之鳖”;四横式1叫“水泄不通”;五横式那个叫“巧过五关”。

并不是任意开局式都是可解的。什么样的开局式可解?什么样的开局式不可解?有多少开局式可解?有多少开局式不可解?至今无人能够明确地回答这些问题。这也是使华容道被称为“不可思议的游戏”而引起国内外游戏迷广泛关注的原因之一。当然,我们前面给出的开局式都是可解的,但解的难易程度相差很大。比如五横的那个开局式就很容易解,只要34步就可以了(五个矩形块从左到右、从上到下依次为12345,四个小方块的左边两个从上到下为67,右边两个从上到下为89):

 

54298 A7132 89A76 13254 89A32 5498A 548A

 

而三横式中的第二个,就需要120步才能够解开了(三个横放的矩形块从上到下依次为123,竖的两个左454的上边是6,下边是75的上边是8,下边是9):

 

3746A 85164 73926 158A4 16293 76293 76237 59576 23671 63275 1364A 91567 24A98 16A98 16572 3498A 7 651A 48923 56748 A1674 53289 A1764 53289 A329A

 

 

(本文发表于《科学世界》2013年第12期)


全部评论

你的评论