来源:转载
很久以前,我在一本书上看到过宋朝的沈括对围棋变化总数的计算,他计算的结果是3的361次方,因为盘上每个点都可能有黑,白,空三种情况。我当时想,这很有道理。
后来又在一本书上看到了另一种计算方法,因为下第一个子时可以有361个点可选,第二个子有360个点可选,以后依此类推,这样总变化数就是361的阶乘。我觉得这也很有道理。
但是这两种方法算出的数一个是奇数,一个是偶数,明显不相等啊!哪一个正呢?困惑了一段时间。后来想清楚了,沈括算出的不是总变化数,而是总局面数。
现在大家一般都公认围棋的总变化数是361!但我近日终于弄清楚了,不但这个数字不对,而且计算方法也是有问题的。
围棋的总变化数可以这样计算,先算出盘上只有一个子时的变化数,再算出盘上只有两个子时的变化数,接下来三个子的,四个子的......一直到361子。把所有这些变化数加起来就是围棋的总变化数。
那盘上只有一个子的变化数有多少?你若不假思索的说是361,那可就错了,这是个很容易犯的错误。黑方先走,他可以在盘上361个点上任意下一子,但也可以弃权,由白方在盘上任意下一子。这两种情况显然是不同的。所以盘上只有一个子的变化总数是361*2。
接下来计算盘上只有两个子时的变化总数。当盘上只有一个子时,再加上一子,可以有360种选择,而加上的子可以是黑子也可以是白子,所以还要乘以2。因此总变化数是361*360*2*2。
依此类推,盘上有n个子时的变化数是
361!/(361-n)!*(2的n次方)。
围棋的总变化数就是这样一个数列的和。这个和到底是多少?请哪位在数学上有才的网友计算一下。在下不才,只好用数列中最大的一个数作为它的近似数,估算一下它的数量级。
这个近似数是361!*(2的361次方),约等于6.8*(10的876次方)
按此方法计算出来的变化数是没有遗漏的,提子后再填等情况都已包括在内,连填满全盘自杀,盘上空无一子的变化数也全包括进了。
顺便说一下,中国象棋的变化总数也很可能被大大的低估了,据我的粗略估算,它的数量也接近361!。 |