当前位置:飞扬围棋网-->棋人棋事-->有限和无穷 |
有限和无穷 数学和下棋有什么关系? 很多人都认为是有关系的,在一些小学中,听说是要挑选会下棋的孩子, 老师就会挑选那些在算术考试中得了 100分的孩子,以为那样的孩子是能下棋 的。这些孩子中的一些成了有名的棋手,大家就会误解,数学和下棋是有必然 联系的。 在1997年 8月末,世界棋王卡尔波夫来到中国,中央电视台的《体育漫谈 》节目,还让这位国际象棋的超级大师谈谈下棋和数学的关系。 问:你小时候是不是数学特别好?下棋和数学有什么关系没有? 答:数学和象棋,在逻辑上是有联系的,但是要从具体上来说又是很难的。 棋手中很多是毕业于高等学校,但是学数学很高深的还不多。我本人在学习上, 是经过了一个过程的。我是从数学进入到机械,又从机械进入到经济,最后, 我是从圣彼得堡大学获得了经济学博士的学位。 类似卡尔波夫这样的回答,我已在围棋手中间听到过多次。特别是对电脑 有研究的俞斌九段,就一直被问到这样的问题。中国围棋手的回答,和这位国 际象棋超一流棋手的回答不会有什么两样。俞斌的说法是,“围棋的计算和数 学的计算是不同的。”想要在一局围棋比赛中,下出什么“勾股定理”或者“ 三元两次方程”或者“歌德巴赫猜想”,这都是很可笑的事情。一个小学生的 数学成绩好,其综合素质,可能要比成绩不好的孩子要好一些,这是素质中的 一部分,就可能是适宜下棋的。但是,我们不能说,数学不好的孩子,是下不 好棋的。至少,在中国古代,还没有数学这样的一门学科,科学技术在中国, 是士大夫们看不起的。那些棋手在少年时代,是不能从数学上去发现才能的。 围棋的“计算”这一个概念是比较抽象的。就和象棋的计算一样,大多数 是在看我走什么,对手会应什么。无论是卡尔波夫还是胡荣华,在下棋的时候 的一个习惯的动作,都是有一个不断微微的点头动作,这个动作是很有节奏的, 这是大师在计算他们的一步步的棋。然后,他们有一个较长时间的停顿,他们 依然在思考。在思考这样走了之后,会形成什么样的局面,对谁有利。然后, 又开始了一个微微点头的动作,这是又开始了一种新的思路。 围棋或者只需要最简单的数学的计算,那就是加减乘除。这是为了点“目 ”的,但是在更多的前半盘的比赛中,计算是有一点抽象的,虽然是仍然用目 来做单位,但是,这种计算,是有很多的不确定的因素的。一手棋的价值有多 少,这还是一个没有定论的事,这也是电脑围棋还没有获得很大进展的原因。 要说清这个问题,是要有数学家来发言的。好在从古到今,有不少数学家 或科学家是棋迷。 第一位数学家的话,让我们大吃一惊。 他是唐朝的一行和尚,他也是一位天文学家。在中国的历史上,有“畴人 ”这一个名称,可以统称天文学家和数学家。一行就是最有成就的“畴人”之 一。他精通历法,重新测定了 150多颗恒星的位置,发起在全国12个地点进行 天文观测;并且归算出相当子午纬线的长度。这是现代人对他的评价。中国以 前的数学总是和天文联系在一起的,迎合封建制度,数学是不需要的,而天文 是需要的。中国是以农业立国的,天文就非常重要。而数学只不过是为了天文 而存在的副产品。天文在过去的年代,又经常和迷信在一起,每一颗星都有象 征的意义。数学就有一点神秘了。数学家也会成为无所不知的能人了。 他对围棋的评论是有一点贬义的: 一行本不解弈,因会燕公宅,观王积薪一局,遂与之敌。笑谓燕公曰:此 但争先耳,若念贫道四句乘除语,则人人可为国手。 看来,一行确实是个不简单的人。他就看了一局棋,就能学会下棋,而且, 立刻就能够和当时棋下的最好的王积薪成为敌手。但是,这样的描写是站不住 脚的。破绽就在后面,一行在评论围棋的时候,出现了一点问题。他的话前一 句非常正确,围棋就是争先。就是在比赛中永远不失去主动。这是常识性的判 断,知道的人太多了,也就会成为一句没有意义的话。在后半句中,围棋就变 成一种太简单的游戏了。一种游戏能用四句口诀就能解决,那么,比赛就会像 解一道代数式,棋局就不会有很多的变化,这是和围棋的实情不同的。和历史 上知识分子推崇围棋的潮流不同,一行是在贬低围棋。 一行在自己的专业上无疑是有权威的,但是,他不会在任何的地方都是权 威。在夜空中找到一颗星星,并且确定它的位置,对一行并不很难。而在棋盘 上和王积薪对抗,对一行来说,却不会是一件容易的事。如果要拿出怀疑的证 据,那么,除了《酋阳杂记》之外,没有对此事的记载。另外,这样有效的棋 诀,只短短的四句,竟然没有流传下来。因而在世界上直到今天,“国手”还 是凤毛麟角。 无独有偶,南宋的哲学家陆九渊躺在床上,将一个棋盘挂在墙上,一连看 了两天,突然跳起来说,这不是河图吗?于是他的下棋水平,立刻可以让林安 的高手一先。“河图”实际上是一种数字的排列方式,在现代,是没有一个专 业棋手会认为河图中会有围棋的秘密的。 或许,这都不是真的,而是有人用围棋和一行和陆九渊开了个玩笑。这样 发表出来的观点,是有一点离谱,很难叫人感到有研究的价值。 顺便说一句,古代的人们可能以为棋下得好,不是长期努力的结果。就连 唐朝的第一高手王积薪的高超棋艺,也是在很短的时候获得的。 《云仙杂记》:王积薪梦青龙吐棋经九卷授己,其艺顿精。 《集异记》:王积薪从明皇幸蜀,夜宿深山,闻妇姑对谈。天明,积薪具 礼以问,妇姑教以攻守、杀夺、救应、防守之法,从此天下无敌。 这是对围棋的拔高,以为围棋手之上,还有神,世上最好的棋手,是不能 战胜神仙中的妇女的。这从科学的角度,也是很难有研究的价值的。在另一种 传说中,还有她们在晚上用“口谈”的方法下棋的描写。有人将当夜这婆媳俩 的对局头几手,放到了棋盘上,一看大吃一惊。这样的布局,是当代的高手也 难理解的,看来确实是“仙人”所为。 贬低和拔高都是离开了生活的真实,离开了围棋的真实。 明朝才子王世贞写了一篇《弈问》,专门回答关于围棋的种种疑而未决的 问题。上面的问题恰巧都在他的“研究范围”之中。 在回答一行和尚的这几句话时,王说,这种情况是有的,一行是“神于数 ”的人,神于数,是可以触类旁通的。但是“四语乘除人人国手”,是不可能 的。对于陆九渊的事,只不过是他的门徒借类似一行和尚的情节,来抬高老师 罢了。况且,陆九渊的棋实在是不够上品的。 在回答王积薪是否在山中学得了棋时,王说,可能是有的,但是,这不是 王积薪自己编出来抬高自己,而是别人在借神而贬低王积薪。你看,对王积薪 就教给攻守劫杀这样简单的东西,还说这人可以教给他“平常的形势”。这样 的说法,贬低王积薪是可以看出来的。 王世贞的观点,有一点客观性,可以参考。至少,对一行和尚和陆九渊的 评价中,对数学和围棋之间的“硬性的”联系做了否定。 北宋科学家沈括对围棋做了一番研究。沈括是科学上的一个杂家,他的建 树很多。他在数学上的成就,是创立了“隙积术”(二阶等差级数求和法)、 “会圆术”(已知圆的直径和弓形的高,求弓形的弦和弧长的方法)。 他在《梦溪笔谈》中,对围棋做了数学式表述。这在宋朝这一围棋十分兴 盛的时代,在众多的围棋评论中是独树一帜的。钱宝琮在《宋元数学史论文集 》中,认为沈括讨论围棋棋局的计算方法,是在古代的数学史上不可多得的宝 贵文献。钱先生看到了原文中的错误,一一加以校订。沈括的计算方法,用现 代的语言和算式说出来,就是: 每一个棋局,到终局时,每一个交叉点总是不外乎三种情况。黑、白、空。 所以,在计算全局的可能的变化时,是很容易的。不过,由于数字特别大,在 当时是没有办法将它说出来。 如果是方2路用4子,那么: 3^4=81 如果是方3路用9子,那么: 3^9=19683 方4路,那么: 3^16=43046721 方5路,那么: 3^25=847288609443 方6路,那么: 3^36=150094635296999121 下完一盘正常的棋,其可能的变化,是3^361,结果是“连书万字52个”。 这就是所有的变化了。 用现代的算法,是这样的: logN = 361log3 = 361X0.47712 = 172.24075 N ≈ 1.74 X 10172 每 4位数可以写一个“万”,172÷4 = 43。 沈括在这里计算有错误,应当是“连书万字43个”。 后来,中科院的专家,用电脑算出总局数为: 1740896506590319279071882380705643679466027249502635411948281187 06801051676184649841162792889887149386120969888163207806137549871813 55093129514803369660572893075468180597603 这是一个天文数字。即使每一秒钟下一局棋,要下完这样多的局数,粗略的 计算,要5.52X10164年,这是一个 164位数,照沈括的写法,是要写41个万字。 能活这样长久的,大概只有太阳和地球了。 数学的计算,总是将最规矩的条件来作为计算的前提。这样的计算,就还有 不够周全的地方。这样大的数字,是没有办法用实践来验证是否能够穷尽围棋的。 一种意见是围棋是没有办法穷尽的。围棋还有打劫,还有大眼填满提空,整 盘棋黑白都摆满了之后,还可以用一枚棋将对方所有的棋全提起来,然后重新开 始。中国棋手马晓春比较倾向于这种意见。 另一种意见是,实际上的棋局,远远地少于这些数字。理由不外乎是,围棋 是两人在轮流对下,所以,在一般的情况下,是一半黑棋,一半白棋,或者是由 于提子而相差不多。又由于围棋要有眼才能生存,黑棋、白棋都不能占尽空格。 而一盘棋要能够分出胜负,一般来说,又要使黑白子各在 100手以上,这有使全 空格或大多数的空格是不可能的。更从棋型的角度来看,有很多是根本不可能出 现的。韩国的棋手刘昌赫认为,实际上的棋局是有穷尽的。有人认为,这一数字 在3120左右。 在这两种观点面前,静静想一想,是一点也不矛盾的。马晓春说的是一种数 学的模式,而刘昌赫说的是一种实战的情况。 但是,这种计算是一种凝固的计算,没有先后的次序,而在比赛中,先后的 次序是不能不看的。所以,同样的结果,可能会有不同的过程。 这样,另一种计算方式就会出来了。在第一步棋落下的时候,有 361种选择, 在第二步棋落下的时候,有 360种选择,…… 这样的算式是: 361X360X359X358X357……X2X1 这样的算式称作是361的阶乘,写为“361!”。 说出来叫人惊讶,在头三步棋中,就有46655640种选择。 在我女儿升入大学的那一年,有一点空闲,她为我用对数计算了这一个“361!”, 用了整整两天。她在这 361个数中,分解出 71个质数,大致算出“361!”是一个 756位的大数,比 3^361要大得多!(日本曾计算出结果为 768位数) 不过,在专业棋手看来,这样的数字更是一个很虚的数。例如,开局的选择 是10多种,至多不会超过50种,没有一个人会将第一手放在“ 1.1”这样的位置 上的。而在对手和你的棋子纠缠在一起的时候,你能选择的点是不多的,你不会 离开这一战场,去空旷的地方下棋。 但是,这也是一种数学的模式。正像国际象棋的电脑,在比赛中,选择每一 步棋的时候,总是要扫描一遍所有的棋子,来做一比较。“深蓝”每秒有两亿次 的计算,但是,卡斯帕罗夫认为,他虽然只有每秒三步的计算速度,但每一步都 是有意义的。他的选择,只有十来种。而电脑的大多数的计算是浪费在那些“臭 棋和昏着”中的,而电脑是不得不作这样的全覆盖性的扫描的。 在采访《黑白之道》的时候,我曾到过中关村,见到了著名的数学家吴文俊。 记得那一天,北京正在下雪,就在这样的北方典型的环境中,听到了上海的本地 话。这使我这样一个常年在外奔波的人,感到一种特别的亲切。 他是国际公认的数学大家,他的“拓扑学”的研究成果,被冠于他的姓氏。 但是,他是一个棋迷。他说,在研究之余,是会去看围棋的电视的。他喜欢 听华以刚、程晓流和王元的讲棋。在家中,也有围棋和棋子。顺便说,在中国科 学院中,有不少的棋迷。当然,像吴先生这样的院士科学家兼棋迷,还是不多的。 问吴文俊对数学和围棋的关系,是干脆的一句话回答:围棋和数学无关。 他后来寄来了不少的资料,我已经将这些资料写入到上面的文章中去了。 在采访中,在电话中,在书信中,这位数学大家对围棋的一往情深是能够感 受到的。但是,他是现代的科学家,是崇尚科学的,他不愿意因为喜欢围棋而说 假话。在以下的“语录”中,你是能够了解他的观点的。恰巧,这就成为这一篇 文章的科学的总结。 对于沈括,我十分佩服,尤其是他不仅提倡而且亲身实践作科学试验,如果 这一点早能为人认识而跟上,中国早就成为科技大国了。但对《梦溪笔谈》中的 数学部分,则我不敢恭维,棋局的总局数更不值一提,对棋局的过分简单化,固 然不值一笑,计算也有错误,宋时笔算尚未传入(唐时虽传入而未受重视),沈 括想来只能用筹算,因而对 3^361这样的大数就很难计算,并且出错。对现在的 计算机则是轻而易举的。 关于棋理,有一个有趣的数学定理,计算机的创始人之一 Von Neumaun,也 是所谓博弈论或对策论的创立者,1994年的诺贝尔奖金得主,都是因应用博弈论 于经济学有贡献而得奖。Von Neumaun 的定理大意是说,两人博弈,胜负已定。 自然这要做数学上的说明,而且只是一个抽象的定理,与真正的棋局无关。 桥牌有深奥的数学理论,且有法国科学院士的专著,围棋我相信没有,以后 也很难会有,我个人的意见是:数学家不要在这上面浪费时间和精力。 但我对于计算机下棋还是有兴趣的,最近看报纸,计算机已有国际象棋的新 程序,打败了卡斯帕罗夫,还计划由计算机和卡斯帕罗夫作一系列比赛。但这主 要是程序编得好,计算机速度大大提高之故,与数学完全无关。 我家里的计算机有一个围棋的程序,我与计算机下过一次,计算机下起来很 有架势,但还是输给了我这个臭棋手,但从国际象棋的情况来看,编出一个较好 的围棋程序,用超高速度的计算机,要打败一个中低段位的围棋手,在近期内还 是可能的,但这仍与数学无关。 数学是要算的,围棋恰恰是不能算。数学的算和围棋的“算”是不一样的。 围棋要做到真正能够进行数学处理,首先要考虑建立数量的关系,说得简单一点, 就是要“定量”。没有这一步,就是难的。比如说围棋的子力,这枚子放在棋盘 上,位置高低,光说子的力量大或者小不成功,一定要讲子力的多少。 这样的表达方式,从现在看还非常遥远。 要实现围棋电脑与人的对弈,得等“定量”的问题解决。创造性的东西是无 法估计它的进程的。或许在几年中有人想出来,或许几百年也没有人想出来,这 东西很难说。但我相信,这东西十分难。 已故老作家竹可羽先生写了一篇文章,将三线作为边角线,四线为中腹线, 三线围住边角 136个交叉点(目),用去48枚子。由此可计算出每枚子的价值。 136目÷56=2.4286(边角线每个子的平均值) 121目÷48=2.5208(中腹线每个子的平均值) 中腹每一枚子的平均值大于边角线每个子的平均值0.09目,而棋盘的大小离 开19道,不论是往大还是往小,差数都会变大。这就是17道发展到19道的原因, 也正是19道不能发展到21道的原因。中腹与边角正好成为对抗的力量。 这才是真的数学。这里有几个原则先定下来,既要取势又要取地。这篇文章 论证的是边角占地多还是中间占地多,这里就有定量的问题。 今后谁在围棋上要突破,先得将问题简化,把不必要的东西删去,重要的保 留下来。简化之后再考虑。竹可羽先生就是把问题简化了,才使他的研究十分精 彩。 围棋对我的工作没有帮助,而且我的数学对围棋也没有帮助。 围棋和数学相像的是,数学经常假设一些什么,推测一些什么。如果假设很 多,结果很少,就没有什么意思。如果假设很少,推出的东西很多,这就有意思, 有价值了。围棋正是这样,它的规则十分简单,四面包围你就吃掉。而且有两个 眼就吃不掉,这在实际上是很深刻的,容易得到数学家的爱好。 数学和围棋是在各自的轨道中运转着。 数学和围棋都是对世界的理解和表述,不过用的不是相同的语言。 围棋中的数学问题,和下棋本身无关,这和国际象棋一样,可以说是“物以 类聚”。 难怪,数学家吴文俊,和国际象棋世界冠军卡尔波夫表述的,没有什么两样, 这真是“英雄所见略同”。 (全文完)
Copyright 2001版权所有, flygo.net 飞扬围棋网