1. 首页
  2. 问题详情

人类还需要多久可以研发出算尽中国象棋的计算机?

我的答案是遥遥无期!

原因是这样的:

近年来中国象棋成绩最好的是王天一,他的棋艺特点就是主动用软件进行训练,和上一辈高手方法不同。王天一下出来的招有时就象AI,以致于有些高手风言风语影射他用软件作弊引发风波。

据统计,国际象棋理论变化数为10的123次方,实际合理变化为10的46次方。

中国象棋理论变化为数10的150次方,实际合理变化为10的48次方。

围棋理论变化数是10的361次方除以4,实际合理变化为10的172次方。

还有人是这样计算的:

围棋变化远远超过象棋。中国象棋与围棋都有着悠久的历史,也都是我国古人智慧的结晶,传承千年而不衰,正是这近乎无穷的变化之道才是其魅力所在。

围棋有多少种变化?一般有两种算法,第一种,按棋盘上的点来计算,一盘棋下完后,每个点只可能出现三种情况,黑、白、空,所以按这个方法来算,围棋的变化是3^361种,不过这种唯结果论的算法缺陷比较大,因为针对每一种对局结果,都有n种不同的过程可以到达;所以,更多的人倾向于第二种算法,就是简单粗暴的穷举法,即第一步有361个点可以选择,第二步就有360个点……以此类推下去,可以得出围棋的变化是361×360×359×358×……2×1,即361的阶乘。但玩过围棋的都知道,下棋的过程中有不少禁入点,这样在下棋的过程中就会减少一部分变化,而打劫的过程又会增加很多变化。我们姑且认为两者可以基本抵消,忽略这些技术细节,361阶乘这个结果还是基本可以接受的。这个数字大约为1.43×10^768,也就是是1后面有768个0。

再看看中国象棋的变化,与围棋最大的不同是,象棋的子是可以移动的,所以象棋的算法也是有很多种的,这里不具体说明了,一盘国际象棋的大约有10^123种变化,而我们的中国象棋比这要多,约有10^144种。当然不能算磨棋了。

这么看,围棋的变化要远大于象棋,但是,围棋棋子是越下越多的,可选择的下法越来越少,所以围棋的变化可以用穷举法得出极限。而象棋则不同,棋子是越下越少的,但要想知道怎样减少、何时减少、何时算结束,要知道,象棋中不止有输赢,还有第三种情况和棋。而且象棋子减少的时候,可以利用的空间反而增加。用热力学定律比喻一下,就是下围棋是个熵减的过程,象棋是熵增的过程。所以,从某种程度上讲,象棋的变化也许没有最大值。

至于宇宙中原子的总数,用天文观测的数据拟合现在的宇宙学模型,可以估算出我们观测到的宇宙原子的数量在10的80次方这个数量级,不管是围棋还是中国象棋的变化都要比这个数字大的多。

那么,针对问题人类需要多久可以研发出算尽中国象棋的软件或是计算机,现在看是遥遥无期的。


2020-05-05

少年,你是什么时候有这个想法的?

我们来分享一下,智能和智慧这两个词的区别

智能是通过各种算法,来分析,学习

智慧是什么呢?这个有点不好答,简单的讲,家庭之间的矛盾需要用智慧来处理,爱的地方来讲理,用智能来处理,你说这个家庭会怎么样?

以此类推,这个象棋是智慧之学,这个团队有多高的智慧,他们就能研发出多智能的计算机~~~~

2020-05-05

人类还需要多久可以研发出算尽中国象棋的计算机?

这是个伪命题,这个问题的潜台词就是目前的计算机还没有能力把中国象棋的所有走法算尽。相信有很多朋友都是这么认为的,但这其实是一个认识上的误区。实际上人类早就研发出可以算尽中国象棋的计算机了,所以不存在还需要多久的问题,也就是说这其实是个伪命题。

既然有朋友提出了这个问题,那我们就来简单地聊一下。

中国象棋的变化之数是个天文数字

即使是不太了解中国象棋的朋友们应该也不难想象,如果把中国象棋所有可能的走法累加起来将是一个非常庞大的数字。庞大到什么程度呢?

我们在这里就不去研究它的计算原理了,早就有人帮我们做好了这个计算工作。如果按照50个回合来算,变化数大约在10的140次方。而根据科学计算,目前我们整个可观宇宙内所包含的所有原子的个数也只不过是10的80次方——至于怎么算出来的那是科学家的事情,在这里我们不做讨论。

所以,中国象棋的变化总数确实太庞大了,比整个可观宇宙内存在的原子数都多。

理论上的数字比这还要大的多

尽管这个数字已经非常庞大,但其实在理论上还只能算是冰山一角。因为这只是按照50个回合来计算的,如果回合数翻倍,变化总数可不是简单地跟着翻相同倍的。

在2009年的九城置业杯的比赛中,蒋川对战李雪松走出了272个回合之多,那这个变化总数就完全是另一量级了。但这仍然没有脱离实际,理论值比这还要大的多。

因为既然是讨论算尽,那就不用考虑是不是合理走招的问题,只要不违背棋规即可。但是我们知道在中国象棋中有自然限招的规定,所以中国象棋的总回合数还是有极限的。

如果我们往极限里走的话,至少每60步棋需要有一次吃子行为,一直吃到剩下两个光将,然后再过60个回合判和。那么象棋的总步数为:60*31=1860,即930个回合。

这才是中国象棋回合数理论上的极限值,在这个回合数下的变化总数会是多少呢?显然比10的140次方要大的多的多。因为算法确实太复杂,又没有人替我们做这项计算工作,所以我们知道这么回事就行了,实在没必要搞个具体数字出来。

计算机的运算能力

虽然说穷尽中国象棋所有的可能走招将会是一个超级天文数字,但是这并不代表电脑不能把它算尽,我们来看一下计算机的运算能力。

早在1997年,超级计算机深蓝就以2胜1负3平的战绩战胜了当时世界排名第一的国际象棋大师卡斯帕罗夫。当时的深蓝计算能力为每秒钟2亿步,世界排行只不过第259位。

2006年人机大战的浪潮天梭运算速度已经是每秒可计算42亿步棋了。

2019年6月17日上午,第53届全球超算500强名单发布。中国的“神威太湖之光”和“天河二号”分列第三、四名。第一名为美国的“顶点”,性能峰值达到了148.6 PFlops,即每秒钟可以运算14.86亿亿次。

计算机算尽中国象棋没有压力

如果我们以2019年的美国超级计算机“顶点”的运算能力来看,每秒钟可以运算14.86亿亿次。没搞错的话就是148600000000000000,即大约1.4*10的17次方。

中国象棋的变化数如果按照上面说的50个回合来看的话是10的140次方,也就是说目前最顶级的超级计算机“顶尖”在153秒即3分钟不到的时间里就可以运算完毕,平均到每一个回合来看不到4秒钟即可运算完毕。

所以即使按照中国象棋的理论极限值930个回合来看,超级计算机“顶尖”也完全可以完成运算的任务。是不是轻松不太好说,至少完成这个运算任务是没有任何问题的。

中国象棋领域人类和计算机的对抗简史

在中国象棋的领域中,人类棋手和计算机的第一次大规模正面交锋可以追溯到2006年的浪潮天梭和以许银川为代表的职业棋手团队的对抗。

人类棋手搞了两支队伍,一支是由徐天红、卜凤波、柳大华、张强、汪洋等五位顶尖棋手组成的队伍;另一支则是由7万人左右的网络海选中脱颖而出的25位网络高手组成。

第一战队只有张强和汪洋分别赢了一局,第二战队全灭。所以在这里顺便说一句,不要再迷信什么民间有高手的说法了,这要分领域,至少在象棋领域里能达到大师或特大水平的民间高手是不存在的。

最后许银川作为当时的中国象棋第一人挺身而出,单独约战浪潮天梭。最终的结果是两战两和,也就是说2006年人类最高水平和超级计算机只能顶和。浪潮天梭在当时的世界排名还算不上顶尖。

而现在的计算机水平早就甩人类棋手几条街了。目前中国象棋第一人是王天一,王天一在直播中曾经说过,现在的强软可以让他几先仍然保持不败。也就是说如果在不让先的情况下王天一毫无顶和的可能,更别说取胜了。

把中国象棋算尽没有多大意义

所以说,目前的中国象棋强软已经可以轻松吊打任何一名人类棋手,这还只是在普通家用计算机上就可以轻松实现的。所以在中国象棋领域里人脑干不过计算机已经成为一个不争的事实,而且早就有业内人士分析,穷尽象棋变化的终极结果将是和棋。

因此把中国象棋算尽实际上没有多大的意义,即使存在先手必胜的可能这也是无法被人类棋手利用的,因为谁也不可能把这个完整的棋谱背下来。

结论

所以,并不是没有能够把中国象棋算尽的计算机,只是把中国象棋算尽毫无意义,因此没有在这方面再做更进一步的研究和改进。目前的棋软只是基于在个人电脑上的应用和更新换代,超级计算机已经不再涉足这个问题。

换句话说,能把中国象棋算尽的计算机是已经存在的,只是没有开发相应的软件。

仅此而已。

2020-05-05

这个目标已经实现了。

中国象棋和国际象棋都已经被计算机攻克,现在主攻的是更为复杂的围棋,相关新闻告诉我们,人类的围棋大师也已经投子认输,随着人工智能的加入,全面占领应该不会太遥远。

2020-05-05

1一台叫深蓝的计算机于1997年就打败了国际象棋卫冕冠军。

2一种叫阿尔法狗的人工智能围棋软件于2016年打赢了人类顶尖高手李世石

3至于中国象棋,网上的普通软件人类就下不过了

4当前计算机还算不尽中国象棋的变化,主要是耗时太长。

2020-05-05

我觉得这个问题并不严谨,首先,需要开发的不是计算机,而是软件。其次,在现有条件下,只要你花的起时间设备费以及电费,稍微调整一下软件的算法,其实完全可以穷尽象棋的所有变化。只是这事儿的成本太高,意义也不大而已

机器人阿法狗已经把人类打败了,相对难度低一点的象棋,恐怕团队没什么兴趣去折腾了,因为围棋的说服力已经很强了。

2020-05-05

河界三分阔,智谋万丈深[呲牙]


2020-05-05

人的思维是灵活变换的,电脑是运用固定程序去执行指令,所以,要电脑超超人的思维去执行命令是不可能的,但是像下象棋这样的灵活变换指令,想要达到人的思维,以我看,还有很长的路要走。

现在人类已经下不赢电脑了

22个答案都学习了一下,没想到这个问题还有如此的分歧。

明确的讲,计算机早就有了,关键是软件!软件也有了,就是阿尔法元。阿尔法狗都不能算。

阿尔法元已经攻破围棋、国际象棋、日本将棋,德州扑克(某种玩法),唯独没有尝试象棋,但是理论上讲,这三种棋是一个道理,一通百通。

为什么说是已经破解了呢?阿尔法元,是自学下棋,只依靠规则,自己和自己下,不依靠人类任何棋类方面积累的知识成果。就是说,只要符合规则,它会尝试任何的走法,比如开局走:帅五进一、将5进1………;比如开局走相三进一,象7进9……,它每秒计算上亿步,分分钟完成人类一生也难以走过的棋路。它把这些不断总结,把合乎“取胜要求”的走法保留下来,有待备用。

因为,棋盘是有限的,棋子也是有限的,所以它的变化一定有定数,这样,如阿尔法元这样的程序,一定能穷尽象棋的变化。

不要过分在意什么变化是10的多少次方,什么比宇宙原子还多,那个算法有问题。比如说,有10^140的变化,假如一盘棋有1000步(往多说),那么平均每步棋的还有10^137的选择。棋还用得着思考吗?这是笑话!实际上,开局第一步有:兵5+炮24+相4+马4+车1+士2+帅1=41种走法,应对黑方也是41种,那么开局第一回合一共41*41=1681个不同局面。但是,因为利益,红方选择大大少于41,黑方应对则更加有目的性,比红方选择更少,而第二回合以后利益纠缠在一起选择愈加减少,同时利益最大化的选择通常只有一种。所以变化没有想象那样多。

如阿尔法元这样的程序算法,象棋一定是被破解的,答案应该所有“和棋的集合”。

本问题和回答均来自本站网友,不代表本站立场,如若转载,请注明出处:https://www.hlvshi.com/ask/183

相关问题