03.03 既然围棋的复杂度数量级远超宇宙原子数量,那么是否可以从理论上推出,永远无法用计算机得到围棋的所有解?

用户172304069


围棋的真正变化没有那么多,关键在于每一步棋都受规则和利益的牵制,每一步的选择实际很有限。

通俗的讲,假如围棋真的有10^758种变化,那么一盘棋下三百手不算少了吧?这样每一手的选择平均着法约有3^756种,几乎仍然是无限的。这个结果,围棋的“长考”从何而来?宇宙中找个原子是不是太困难了?

围棋必定是19路,不管怎样是有限的利益最大化又是唯一追求,所以结果更为有限,计算机应该可以穷尽其结果。


奇袭象棋习兵法克AI


关于围棋复杂度和宇宙原子数量,直接上数据。

围棋的变化情况

棋盘上一共361个点,黑白交替落子,第1子有361个位置可选,第2子有360个位置可选,第3子有359个位置可选……则在数学上可能出现的布局种类一共有:

361x360x359x………x3x2x1=1437923258884890654832362511499863354754907538644755876127282765299227795534389618856841908003141196071413794434890585968383968233304321607713808837056557879669192486182709780035899021100579450107333050792627771722750412268086775281368850575265418120435021506234663026434426736326270927646433025577722695595343233942204301825548143785112222186834487969871267194205609533306413935710635197200721473378733826980308535104317420365367377988721756551345004129106165050615449626558110282424142840662705458556231015637528928999248573883166476871652120015362189137337137682618614562954409007743375894907714439917299937133680728459000034496420337066440853337001284286412654394495050773954560000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.

是不是看得眼花了,用科学计数法大约是1.44x10^768.

以上计算,只是纯数学上的计算,并没有考虑实际规则下提子等变化,所以并不严格,只是估计一下它的数量级。

宇宙原子数

可以通过宇宙总质量/原子质量计算。

当然宇宙到底多大,人类还不清楚,只能估测一下目前观测到的宇宙质量:10^53kg

由于不同元素原子质量不相同,我们取最小的氢原子质量1.7x10^-27kg(只有一个质子)计算,这样可以计算得到宇宙最大原子数:6x10^79个

综合以上,围棋复杂度的数量级10^768确实是远超宇宙原子数的数量级10^79. 但我们能不能就此认为计算机无法解出围棋的所有解呢?

不能。因为二者并没有关系,我刚才用电脑算出了围棋的变化种类有1.44x10^768种,但我的电脑是宇宙的一部分,全宇宙都没那么多原子,我的电脑更没那么多原子。能不能算出来并不依赖于原子的多少。

欢迎点赞、评论,能关注一下右上角就更好啦


砖业科普稻壳张


看了前面的回答,似乎都没有解答所问的问题,我想试着回答看看。

首先,我们必须假设所预设的条件成立,即:围棋的下法数量大于宇宙原子的数量。其次,这是一个数学问题,也是一个有关计算机如何运行的问题,有人谈及很多下法明显属于错误而不可能,以此降低围棋的实际计算的复杂性,但这不是这个题目要讨论的内容。

讨论围棋的复杂性通常有两种计算方法:

1. “棋手面临的局面”:按照这个思路,棋盘总共361个点,每个点有三种有可能性:黑,白,空。因此棋手面临的局面为3∧361=10∧172。由于对称,不入,实际可能会少很多。

2. “棋手下一手棋的可能性”:既然棋子是一个一个下,全部下法的可能性就是361*360........=361!=10∧768(忽略打劫的情况)。

为什么第二种要远远多于第一种?道理很简单:同一个局面可能是用不同的次序下出来的,在第二种计算中,被看作是不一样的,因此其可能性要多得多。

假设宇宙的原子数少于10∧768,是不是计算机即使用宇宙的全部的物质做出,也不足于算尽围棋的可能下法呢?

答案是,计算机完全能够算清,根本不用那么多物质。

这样提问题的时候,是把宇宙的原子,当成了古人用的鹅卵石作为基数,去计算采集野果数量的思路,而这不是计算机的思维方式。

而实际上,计算机是用与非门进行逻辑运算的,每个与非门有0和1两种状态,因此,16∧768=(2∧4)∧768就已经大于围棋的全部变化,而(2∧4)∧768=2∧(4*768)=2∧3072,换言之,只要3072个与非门,就足以超过围棋的全部变化。

我们看国际象棋的情况,现在的顶级国际象棋软件已经穷尽了其全部变化,这也是一个天文数字,虽然远远小于围棋,不过,用于下国际象棋的整个硬件系统有多么庞大吗?

事实上,就我的理解,目前电脑还无法穷尽围棋的全部可能性,和物质数量没有任何关系,主要问题出在运算速度上。

总结一下题主的问题,是不了解计算机的计算方法,以为用一个个原子去记录围棋的一个个可能性,而实际上是每个计算单元(与非门)有两种状态,这样根本用不了多少物质就能构成计算机的全部硬件系统。


我是谁谁是我谁是谁o


围棋起源时间很早,大致起源于4000年前古代中国。棋盘上分布着纵横各19道平行线,故在棋盘上共有361个交点可供落子。

那么根据第一次落子有361种可能,第二次即360种可能,依次阶乘,最终的结果,走法的可能性包含了10^768种,这已经不能用天文数字来概括了。要知道,这还没有考虑到下棋顺序、输赢、提子的情况,只是简单的、粗略的算了一下而已,就已经达到了这种规模。

所以,理论上来说,围棋的走法千变万化,非有限时间、普通的计算机可以计算出所有走法。那阿尔法狗是如何战胜人类的呢?并不是阿尔法狗计算出了所有解,而是阿尔法狗依靠两个部分,一个是落子选择器,另一个是棋局评估,结合了人类围棋专家的棋谱,凭借其人工智能自我深化学习能力,自然可以轻松击败人类,并不是说它可以计算出所有解。

宇宙中的原子数量要比围棋走法少的多得多,数量级上的差距就显而易见。可观测宇宙原子数目:10^80;围棋走法:10^768。差距相当之大。

即便有再多的解,只要它是有限的,就可以被计算出,只是时间问题而已,并不是永远无法。而题主想问的可能是模拟各个原子的实时状态,要知道,原子内部也非常复杂,想要模拟每个原子的状态,这个比单纯的计算出围棋所有解可难得多得多喽。



科学船坞


围棋复杂度数量级远超宇宙原子数量???有些自认数学很好的人算出一个吓死人的数据,其实没啥意义。所有解不等于有效解,下棋没人考虑无效解。

围棋存在最优解,计算时放弃无效解。算法决定计算量,在没有最优解,以算法决定胜率来确定最优解。

按照游戏规则进行的竞赛游戏,双方轮流下子,包围与反包围,得有互动才是游戏,(围棋规则包含贴目、禁全同、禁循环)你占半幅棋盘他占半幅棋盘,这样的下子是无意义的,单子对攻也是无意义的。计算围棋到底有多少有效的布局,先得计算一个子两个子多个子组合的影响范围才是有意义的,立几拆几,超出一格没有多少意义,再远就是废子,围棋攻防是在竞赛规则下,运用多子组合进行包围与反包围,破坏多子组合和重新布置多子组合过程。电脑下棋,第一步应该是去掉无效落子和组合,像在重重包围中,不能组合出两个有效眼或尴尬阵型,强行下再多的子都是无效组合……我想狗狗自学下棋,第一步应该是在竞赛规则下,迅速排除无效落子和组合,我们学棋第一步应该也是排除无效落子选择有效落子,只不过人有各种各样的性格,形成了各种下棋风格。第二步在多子组合中选择影响范围大的组合,在一种组合模式破坏后,接替另一种组合模式,而不是计算单个棋子落子顺序,那是毫无意义的。为优化选择,每局棋都有一个最大值的组合数,而不是见敌子就攻击。棋局开始,一方放弃占地盘另一方也只能占四个地盘,这四个地盘以星位辐射,星三三小目高目为据点,棋盘是对称的,理论上下在任意一个星都是一种下法,不是四个星有四种下法,不是第一个子就有三百几十种落子方式,实际上第一个子就只有可怜的几种落子方式,第二个子落子除了抢占据点还有攻击第一个子,这种攻击也得有一个影响范围,超出影响范围就是废子,所以第二步也只有那么几种方式。双方轮流占地盘,形成开局四种基本组合攻击,由此衍生出其他组合攻击,这种组合攻击可能就几个十几个吧,当四个区域的组合攻击没发生相互影响时,只要考虑这个区域,只有当这种组合攻击发展时,子力影响范围达到其他区域,综合考虑其他组合的影响范围,或合成更大的组合。而不是你下一个子,搜索所有的落子棋局,那是毫无意义的。

高手下指导棋,一个人同时跟上十人战斗,不是去关心对手下棋顺序,只是快速的从各种组合攻击中选择有效攻击方式,不会一个子一个子的计算。当一个区域失去攻击价值时,高手会寻找新的攻击目标,不会去下无意义的废子。只有低手,才会干无意义的事,甚至把自己弄成愚形,自毁眼位,自毁城墙。

围棋的有效布局数在竞赛规则下是有限的,不是那种近乎无限大的天文数字。再大的棋盘也只是两个人玩,不是战场单兵捉队厮杀,可以理解为阵型对抗,而且是回合制的阵型对抗游戏。


邓伟定


我是一个围棋老师,这个问题我来答最合适不过了,人工智能和原子问题虽然我不是很懂,但是围棋的东西还是很熟的。

围棋的复杂程度就不说了,经过前两年的人机大战,大家都很熟悉了,但是围棋毕竟是一个竞技游戏,所有的目的都是为了获胜,所以其实AI并不需要计算出所有的分支和变化,只需要在其中选择出最优解就可以。



跟其他的棋类相比较,大多棋类都是棋子越下越少,围棋却是棋子越下越多,这也就意味着,越到后期变化越少,结果也越简单。通常职业棋手们在最后收官的阶段,官子还尚未收完,就已经可以准确计算出后面几十步之后的变化,从而得到胜还是败的结果,所以职业棋手门的棋很多都并没有下到最后一步,真的下完的棋那结果都是胜负只差0.5-1.5目之间!



真正难的其实是布局阶段,在人机大战的时候,布局初期和刚刚开始中盘战斗的时候,AI和人类都是无法算尽所有结果的,AI通过大致推算,会选择一个胜率最高的一个点(并不是100%) 也可以说,AI是通过有选择的在猜! 而人类处理的方法,大多都是依靠棋感,没错,就是感觉,这种长期通过下棋训练出来的直觉,甚至会比AI更有把握!

19*19的围棋盘共有361个交叉点,但是并不是一上来就要去计算361的后续结果,其中大概有超过300个点,在前期都是不能下的,或者说,下上去是不占优势的,所以无论人类还是AI都会排除掉这些选项,在最开始,基数最大的时候,每下一颗子,AI的计算量都会成倍的减少!



所以,如果是下棋的话,人类现在是永远也无法再超越AI了,AI没有情绪,不会失误,只会挑最胜率最高的着法,而有血有肉的人怎么能比呢,唯一赢的方法大概只能拔电了吧。。。。

虽然第一步棋并不需要完全计算361个交叉点的所有变化,但是把这个任务作为科研的话,还是有他的实际意义的,现在AI虽不能完成,但凭借AI的学习能力已经硬件方面的发展,以后,谁说的准呢?

喜欢的朋友,可以关注我,并在下方留言哦~


夜猫子说棋


是否可以从理论上推出,永远无法用计算机得到围棋的所有解呢?要解决这个问题,我们得先看它的大前提。在题目中,它的大前提是:围棋的复杂度数量级远超宇宙原子数量。宇宙何其广阔,这一结论又是从何而来呢?

如果把宇宙定义为“我们可观察到的宇宙”,将其看作一个有特定体积的球体,根据人类对其的观察估算它的密度,就可以得到这个“球体”的重量。用这个质量除以平均原子的重量得到的数值就是我们题目大前提中的“宇宙原子数量”,大概是10^80,即10的80次方。

按照围棋棋盘横竖各19条线,总361个交叉点,双方交替落子,可算出围棋的复杂度大概是10^173.28,即10的173.28次方,从数值上讲,比宇宙原子数量大很多,这是我们大前提的由来。

既然它的复杂度数量级比宇宙中的原子数量还要多这么多,看起来计算机似乎是永远也不能计算出其所有解。但是——我们是否忽略了一个问题:围棋是一种策略性棋类运动,它有它的规则有它的输赢。一位围棋老师曾经说过,361个交叉点,其中大概三百多个点,在前期是不能下的,因为将子落到此处是不占优势的。这样一来,其能下的点就只剩下几十个,它的复杂度一下子减少很多。同时,围棋棋盘上的棋子越下越多,也意味着棋局进行的越到最后,可供选择的落子点就越少,而不是可以随意落。从这个角度结合围棋的输赢来看,它的复杂度数量级是没有理想中那么大的,事实上是有可能用计算机得到所有解的。


镁客网


千古无同局这话说的就是围棋。这句话是时代的反映,我想也是一种自信的预言吧,围棋的变化比较其它棋类而言的确要多很多。

有人算过围棋的变化数量比原子的数量还多,的确有这样的说法,算法也是小学数学范畴,并没啥理论和难度。但以现有的围棋规则而言,这个变化显然被夸大了,在规则的限制下,变化数量并不是阶乘那么简单,虽然这个数量级依然很惊人。

围棋,原子,计算机,人工智能这些东西拼凑一起,这有点像一个无解问题,或者说一个愚蠢的问题。

就像你站在家门口要回家,“理论”上地球是个类球体,你几乎有无限的可能的回家路径,比如说你屁股向后转,捡起一根木棍,一路要饭绕地球一圈再踏进家门,我想只要脑子没进水,你最多的选择不会超过十个,对吧?

围棋不是一个数学问题,更不是一个数学理论,怎么会有什么所有解呢?围棋是一个胜败的游戏,是一个社会的沙盘,一个战场的模拟,经营的预想。。。。。你可以把围棋想成任何东西,但是很可惜,他不是一个纯数学问题,虽然下棋你起码的会数200以内的数。

围棋本质是游戏,里面有各种成功、失败的感官刺激,围棋是竞技,需要最快,最短最有效的那一剑, 围棋是文化,需要你耐着性子水滴石穿。

至于人工智能,他的噱头就是打败人类的超级选手,并开启新的时代。

对于这些问题,我觉得首先你讨论围棋,先学会围棋的一些基本常识比较好,最好有个业余段位,棋迷起码要简单会下点围棋,这和足球不一样,你腆着肥硕的大肚子,喝着啤酒就可以海阔天空,纵论天下大势。再者一般的人都爱讨论谁都搞不清楚的玄妙问题,比如头条就有很多达人一天道德经呀,老子呀什么什么的,真正懂的估计没几个,瞎掰掰而已。

有时间买两本书,学学围棋,比较有意义,也更有意思一些。


爱抽牡丹


我是围棋爱好者,其实围棋的走法可能性虽然是天文级的,但是有意义,有效的走法只占理论上的万分之一不到!


兔子哥57046237


其它答案里都在惊叹于围棋的复杂度,却忽视了一点,复杂度为啥要和原子数量比较呢?

看上去围棋的复杂度数量级虽高过原子数量,但围棋复杂度数量级比起原子复杂度数量级还相差很远吧。

设想361个原子,每个原子允许有两种状态,可能的状态数已经超过棋局可能的状态数了。

所以虽然目前无法解出,但未来应该可以吧。


分享到:


相關文章: