本文创意萱博是自动化控制专业博士,现任职于新加坡某高校。「完美棋盘」是她多年前就曾开过的脑洞。有幸,能在此与各位读者分享萱博非凡的想象。
从AIphaGo到超现实数,围棋始终是工程师们的沙盘,数学宝宝们的游乐场,不过这些科学家研究的对象都是下棋的策略。
今天就让我们来返璞归真一下,站在巨人的肩上, 从数学的角度来解读一下承载这种美丽游戏的背景——棋盘吧 。
围棋的棋盘是一个19x19的正方形,我们叫它十九路棋盘,古代的时候也有用十七路棋盘的,小朋友在刚学棋的时候也会用到十三路和九路的棋盘。
我们日常用到的围棋盘都是这些正方形的。而有些人创造性地使用地图形状的棋盘。但是在我看来,这些都不是最完美的棋盘。
非洲地图棋盘(原作者:百度贴吧@漫游的大卫)
完美的棋盘,首先应该没有「特殊」的交叉点 ——每个交叉点都应该恰好与另外四个交叉点相邻,不多不少。下面这张同心圆的棋盘就可以满足此要求:
平面同心圆棋盘
那么,可以更给力一点吗?当然是可以的。
上面那张同心圆的棋盘,虽然每个点确实只有四个邻点,而且没有了「角」,但还有里、外两条「边」,仍不够「均匀」。
更完美的棋盘,在没有棋子的时候,应该是混沌一片,处处都是对称的。
无论第一手下在哪里,都是一样的。
第一手过后才有了两极,有了策略,有了胜负。
想要这样的棋盘其实很容易,只需要把这个正方形的棋盘卷一卷,卷成一个圆柱型,然后再折一折,折成一个甜甜圈就可以了。
这里我们定义1=19, A=T,这样一个19路的普通棋盘就变成了18路的甜甜圈棋盘。
当然,已经有会玩的棋友想在我前面了,在【 LittleGolem】 这个网站上,就有一场正在进行的甜甜圈围棋锦标赛,有几十位棋友参加。
甜甜圈棋盘的平面实现,网络实战示意图
上图的这张棋谱是两位高水平的爱好者在甜甜圈棋谱上的实战。
请读者注意,这张棋盘实际上只有中间橙色的11路,周边灰色的部分只是辅助对弈者直观理解甜甜圈棋盘的。
可以看到,如果棋子下在了某一个角上,棋盘的灰色部分也对应地放上三枚棋子。
假设棋子下在了边上,我们要同时在对面的边上也放上一样颜色的棋子。
当然还有计算边上和角上的棋子的气的时候,要把对面的那一气也算进去。
在网络围棋的时代,要实现这样一个棋盘太容易了,只需要用上面的定义,就可以把一个看上去方方正正的棋盘卷成一个甜甜圈棋盘。
当然,这样还有很多不足,比如很多人会习惯性的忽略对手从棋盘的另一面搞突袭。这都是棋子间的距离不够直观导致的。
也许正是因为这样的不足,所以这种理论上完美的棋盘只有少数人在玩。
那么,可以更更给力一点吗?当然是可以的。
有没有可能把甜甜圈围棋盘搬到现实中来呢?
有一位不愿意透露姓名的西方围棋爱好者,兼能工巧匠,就做出了一个真正的甜甜圈棋盘。
三维甜甜圈棋盘
三十八条交叉的圆形铁丝,组成了纵横十九道的甜甜圈棋盘。 这里的棋子也是特制的,在棋子中心划出十字槽,可以嵌在交叉点上。
可惜,如此漂亮的实物甜甜圈棋盘,仍有几处瑕疵。
在这个甜甜圈棋盘上,里圈的格子特别小,而棋盘的纵线也会比横线短很多,因此每个格子都不再是正方形的了。
棋盘格子大小不相等,给棋手直观理解棋局带来了困难。
比如离某颗棋子最远的地方在哪里,这种简单的策略也需要额外的思考时间。
那么,可以更更更给力一点吗?当然还是可以的。
数学上已经有前辈把我们所遇到的这些难题通通解决了, 这个人就是约翰·纳什(John Nash)。
你可能在经济学领域或者是在他对博弈论的贡献里听说过他的名字。
你也可能看过以他的传记拍成的电影【美丽心灵】。电影里有他和好基友在校园里下围棋的场景:
电影【美丽心灵】
纳什就是这样,润物细无声地帮我们解决了上文提到的所有问题,但是却没有向大家透露,他解决的这些问题与围棋有什么关系。
不过我想, 懂一点围棋和数学的人看到他的嵌入理论(Nash Embedding Theorems)的时候,不难联想到围棋的棋盘。
纳什照片
纳什的嵌入理论就是做了两件事(为了不引入更多术语,我们只讨论甜甜圈棋盘这一种情况。无需赘言,嵌入理论可以应用在更广泛的领域上)。
第一件事,嵌入理论可以把平面的正方形棋盘‘折’成一个类似甜甜圈的形状,使得棋盘上的每一个格子仍然保持相等的大小。像这样保持原有图形距离关系的折叠,数学术语叫做等距映射(isometry)。
这一步用到的具体定理又叫Nash-Kuiper定理,它保证了这种折叠的存在。
而近年,一个名为Heava的法国数学家团队完成了这种折叠的具体构造,像是一个带有螺纹装饰的甜甜圈,见下图。
精细折叠过的「螺纹甜甜圈」棋盘
实现螺纹甜甜圈的技术挺难的,需要在普通甜甜圈的基础上做数次名为「起皱」的迭代,相当于一层层地给甜甜圈刻上螺纹。
甜甜圈上螺纹的作用是,使得甜甜圈棋盘上每一格的长宽都相等。下图给出了折叠前的正方形棋盘,与折叠后螺纹甜甜圈棋盘上曲线的对应关系。
正方形棋盘上原本的纵线(下图左方黑色纵线),在折叠后变成了螺纹甜甜圈上的一个截面的边缘(下图右方黑色的「雪花形」曲线)。
熟悉数学的读者可能已经看出来,这条雪花形曲线是一种分形(fractal)。
左图为原正方形棋盘上的三条横、纵、斜线
右图为三条线,折叠后在甜甜圈上的形状与位置
那么,可以更更更更给力一点吗?当然仍然是可以的。
我们历经艰险做出了螺纹甜甜圈形棋盘,但它仍有一个明显的缺陷: 不够光滑。
光滑在数学上的含义是,这个曲面上每个点的切面都是可以算出来的。
但是螺纹甜甜圈棋盘,首先它视觉上皱皱巴巴的我们人类不太可能用它下棋。
其次,它数学上也不完美,虽然它每个点的切面都能算出来,但是某些局部的弯曲程度却是不连续的。
用数学语言说,这些局部的二阶导数是无法定义的。
综上所述,我们必须通过第二步来完善这个棋盘。
当然,得到之前的结果已经很厉害了,手残党如我折出的棋盘有棱有角,切面都不能保证存在的呀。
手残折的有棱有角的棋盘
第二步,把甜甜圈上任意多的点放到一个高维度的欧几里得空间,并且保留了原有的甜甜圈上每个点之间的距离关系。
在这个新的高维的棋盘上,棋盘的面确实是平滑的,你可以对每个点算导数算到地老天荒。
而且视觉上,我们上一步被折的皱皱巴巴的棋盘,在这一步重新得以平展开了。
纳什证明了对于甜甜圈这样的m=2曲面来说,寻找嵌入所需要的维度数不会超过 m^2+5m+3=17维。
不要被这么高的维度吓到,这只是一个上限。可以作用于任何形状的甜甜圈上任意的点。而我们的棋盘可能更特殊,所以幸运的话可能不需要那么多维度就可以解决问题了。
光说不练假把式。下面就让我们从4路开始,来体验一下这个高(维度)大(脑洞)上(档次)的甜甜圈棋盘吧。
那我们先从5x5的正方形棋盘开始,给每个点都标上坐标。注意边和角的坐标都是重复的。一共有16个坐标。
4路平面呈现
然后,我们算一下每两个点之间的距离,从白色方块开始我们有可能走出并,尖,单关跳,小飞和象步。但是大飞和拆二就不行了。
然后,我们拿出一个四维的立方体。把立方体的 16个顶点依次标上原来的坐标。一个闪闪发光的四维甜甜圈棋盘就做好了。
四维上的4路棋盘
验证一下,在四维立方体上,同样任意两点之间的距离,同样起于白色方块我们可以得到和平面上一样的结果。
那么,能不能更更更更更给力一点呢?
额…… 这个问题,我也遇到困难了。 刚才我示范的是四路棋盘,但更高路数的棋盘,我也不知道答案。
3路棋盘在三维里的光滑嵌入我猜测是行不通的。
如果4路棋盘需要4维空间实现嵌入,那么5路棋盘需要几维空间呢?
17路,19路棋盘,是不是就需要用到最高的17维才能嵌入了呢?
我在这里抛砖引玉,希望读者中有大牛能完美地解答这个开放性问题。
不过,无论是这个完美的棋盘是需要嵌入四维空间,还是十七维空间,想在这个棋盘上下棋,首先我们得进入高维空间呢。
读者朋友们,如果做出了这张完美棋盘,那我们就在高维空间见面下棋吧!
- 畅想和实践 -
如果智能化呢?
毕竟这是AI的时代
棋盘自己可以可以跟你下棋,还可以教你下棋,是不是更完美一些?
这个想法在科大讯飞 淘云科技 ,也在我们心中久久萦绕,历经多年,前前后后300人参与,终于诞生出一台:
看看实际表现:
是什么让四岁孩子连呼围棋真好玩 https://www.zhihu.com/video/1859573889149050880能让用户开心喜欢的棋盘,是不是也是一种完美的棋盘?
本文是【 奇略研究所 】原创内容