少年,你是什么时候有这个想法的? 我们来分享一下,智能和智慧这两个词的区别 智能是通过各种算法,来分析,学习 智慧是什么呢?这个有点不好答,简单的讲,家庭之间的矛盾需要用智慧来处理,爱的地方来讲理,用智能来处理,你说这个家庭会怎么样? 以此类推,这个象棋是智慧之学,这个团队有多高的智慧,他们就能研发出多智能的计算机~~~~ 人类还需要多久可以研发出算尽中国象棋的计算机? 这个问题的潜台词就是目前的计算机还没有能力把中国象棋的所有走法算尽,但这其实是一个认识上的误区。实际上人类早就研发出可以算尽中国象棋的计算机了,所以不存在还需要多久的问题。 当然,首先得搞清楚一个概念,所谓的算尽其实有两种层面上的意义,一是纯理论的计算,二是实战中的计算。 既然有朋友提出了这个问题,那我们就来简单地聊一下。中国象棋的变化之数是个天文数字 即使是不太了解中国象棋的朋友们应该也不难想象,如果把中国象棋所有可能的走法累加起来将是一个非常庞大的数字。庞大到什么程度呢? 我们在这里就不去研究它的计算原理了,早就有人帮我们做好了这个计算工作。如果按照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次方,这和10的17次方完全不在一个量级,计算机是难以完成计算任务的。如果按照理论极限值930个回合来看,恐怕当今所有的计算机加在一起也无法把它计算玩。时间不允许,数据也装不下。 但这只是理论的层面,实际上象棋的变化之数并没有这么恐怖。如下图: 起始盘面中第一步走法仅限于红方的16个棋子,因为相、马、车分别有2种走法,而炮自己就有11种走法,所以红方第一步共有42种走法。接下来轮到黑方,在红方第一步的42种走法下面分别又有黑方的42种走法。如此下去,形成一个庞大的网状数据,也就是上面的理论值。 但事实上红方第一步最终只有一种走法可以确定,而第一步一旦确定之后,其它41种走法下面的庞大数据立马就不存在了。笔者没有能力计算出这丢掉的41种走法下面的数据是多少,但相信这已经远远达不到理论值了。 这还不说上面提到的比如只剩下两个光将之后实际上每一步最多只有4种选择,所以就算不考虑扣除掉不合理的走法,感觉这个数据也应该有了被计算完的可能。 第二步黑方也一样只能最终确定一种走法,那么也一样的其它41种走法下面的庞大数据立马就不存在了。循环下去,每一步都会丢失庞大的数据。 所以,仅仅是在原始盘面的状态下计算机直接去运算才有可能无法算尽,也就是说纯理论数字计算机是完不成计算任务的。但一旦开始走动,哪怕只是确定了第一步,数据的量级立马就直线下降,这是完全有可能算尽的。而随着局势的进行,被算尽就由可能变成了一定能。 所以从实战的角度来看,计算机算尽中国象棋是毫无压力可言的。 备注:原本这一轱辘里面有计算错误的地方,但一直懒得没改。为了不至于误导新阅读的朋友,特抽时间重新编辑修正了一下,感谢棋友们的指正。中国象棋领域人类和计算机的对抗简史 在中国象棋的领域中,人类棋手和计算机的第一次大规模正面交锋可以追溯到2006年的浪潮天梭和以许银川为代表的职业棋手团队的对抗。 人类棋手搞了两支队伍,一支是由徐天红、卜凤波、柳大华、张强、汪洋等五位顶尖棋手组成的队伍;另一支则是由7万人左右的网络海选中脱颖而出的25位网络高手组成。 第一战队只有张强和汪洋分别赢了一局,第二战队全灭。所以在这里顺便说一句,不要再迷信什么民间有高手的说法了,这要分领域,至少在象棋领域里能达到大师或特大水平的民间高手是基本不存在的。 最后许银川作为当时的中国象棋第一人挺身而出,单独约战浪潮天梭。最终的结果是两战两和,也就是说2006年人类最高水平和超级计算机只能顶和。浪潮天梭在当时的世界排名还算不上顶尖。 而现在的计算机水平早就甩人类棋手几条街了。目前中国象棋第一人是王天一,王天一在直播中曾经说过,现在的强软可以让他几先仍然保持不败。也就是说如果在不让先的情况下王天一毫无顶和的可能,更别说取胜了。把中国象棋算尽没有多大意义 所以说,目前的中国象棋强软已经可以轻松吊打任何一名人类棋手,这还只是在普通家用计算机上就可以轻松实现的。所以在中国象棋领域里人脑干不过计算机已经成为一个不争的事实,而且早就有业内人士分析,穷尽象棋变化的终极结果将是和棋。 因此把中国象棋算尽实际上没有多大的意义,即使存在先手必胜的可能这也是无法被人类棋手利用的,因为谁也不可能把这个完整的棋谱背下来。 所以,从实战的层面上来看,并不是没有能把中国象棋算尽的计算机,只是把中国象棋算尽毫无意义,因此没有在这方面再做更进一步的研究和改进。 目前的棋软只是基于在个人电脑上的应用和更新换代,超级计算机已经不再涉足这个问题。 1一台叫深蓝的计算机于1997年就打败了国际象棋卫冕冠军。 2一种叫阿尔法狗的人工智能围棋软件于2016年打赢了人类顶尖高手李世石 3至于中国象棋,网上的普通软件人类就下不过了 4当前计算机还算不尽中国象棋的变化,主要是耗时太长。 或许就在不久的将来。中国象棋 中国象棋是中国文化的智慧结晶,变化万千。中国象棋共32枚棋子,红黑双方各执16枚,棋盘为9条竖线和10条横线,共90个交叉点。据统计,中国象棋的理论变化总数为10的150次方,而实际合理的变化则为10的48次方。 我们对于10的48次方可能没有什么概念,那我们就来计算一下。假设我们的计算机在1秒之内可以计算1亿次中国象棋的变化,那么需要多久才能算完所有变化呢? 答案是10的40次方秒,约等于3.2乘10的32次方年。科学家推测的宇宙大爆炸为140亿年起,而尽中国象棋变化则需要320亿年再乘以10的22次方。这真的可能算到宇宙结束还没算完。 量子计算机 但希望并不是那么渺茫的。人们正在研发新的工具——量子计算机。与目前我们使用的以电子为基础的计算机所不同,量子计算机以量子力学规律为基础,可以实现高速的数学和逻辑运算。量子计算机对于计算机领域将会是颠覆性的存在。 传统计算机是通过集成电路中电路的通断来实现0和1之间的区分,基本单元为硅晶片。而量子计算机也有着自己的基本单位——量子比特,它通过量子的两态的量子力学体系来表示0或1。 硬件上,量子晶体管通过电子高速运动来突破物理的能量界限,从而实现晶体管的开关作用,控制开关的速度极快,比起普通的芯片运算能力强大很多,使得量子计算机的运算速度得到很大的提升。 同时,量子并行计算是使得量子计算机能够超越经典计算机的先进技术。量子计算机以指数形式储存数字,当量子位增至300个量子位时,量子计算机就能储存比宇宙中所有原子还多的数字,并能同时进行运算,大大地加快了计算的速度。 借助量子计算机,我们或许可以把原来看似不可能的计算在极短的时间内完成。或许在不久的将来,仅仅几秒之内,量子计算机就能以其超越想象的计算能力,把中国象棋那那天文数字的所有变化布局算尽,使我们回头感叹科技发展的飞速。 总结 总的来说,以目前现存的技术,要把中国象棋的所有变化算尽使不可能实现的。然而,在不久的将来量子计算机的出现,或许能够打破这种局面,以其强大的计算能力,在短时间内算尽中国象棋的变化。 未来还是未知数。目前,量子计算机发展迅速,量子计算领域捷报频传,研究者们去得到不少成果。我们希望量子计算机的到来,能够使天方夜谭成为现实。 22个答案都学习了一下,没想到这个问题还有如此的分歧。 明确的讲,计算机早就有了,关键是软件!软件也有了,就是阿尔法元。阿尔法狗都不能算。 阿尔法元已经攻破围棋、国际象棋、日本将棋,德州扑克(某种玩法),唯独没有尝试象棋,但是理论上讲,这三种棋是一个道理,一通百通。 为什么说是已经破解了呢?阿尔法元,是自学下棋,只依靠规则,自己和自己下,不依靠人类任何棋类方面积累的知识成果。就是说,只要符合规则,它会尝试任何的走法,比如开局走:帅五进一、将5进1………;比如开局走相三进一,象7进9……,它每秒计算上亿步,分分钟完成人类一生也难以走过的棋路。它把这些不断总结,把合乎"取胜要求"的走法保留下来,有待备用。 因为,棋盘是有限的,棋子也是有限的,所以它的变化一定有定数,这样,如阿尔法元这样的程序,一定能穷尽象棋的变化。 不要过分在意什么变化是10的多少次方,什么比宇宙原子还多,那个算法有问题。比如说,有10^140的变化,假如一盘棋有1000步(往多说),那么平均每步棋的还有10^137的选择。棋还用得着思考吗?这是笑话!实际上,开局第一步有:兵5+炮24+相4+马4+车1+士2+帅1=41种走法,应对黑方也是41种,那么开局第一回合一共41*41=1681个不同局面。但是,因为利益,红方选择大大少于41,黑方应对则更加有目的性,比红方选择更少,而第二回合以后利益纠缠在一起选择愈加减少,同时利益最大化的选择通常只有一种。所以变化没有想象那样多。 如阿尔法元这样的程序算法,象棋一定是被破解的,答案应该所有"和棋的集合"。 人的思维是灵活变换的,电脑是运用固定程序去执行指令,所以,要电脑超超人的思维去执行命令是不可能的,但是像下象棋这样的灵活变换指令,想要达到人的思维,以我看,还有很长的路要走。 看了这么多回答没一个靠谱的。难度你们不知道象棋的所有走法很有限?早就可以算出所有走法了。跟计算机下象棋,只要它先走,你绝对赢不了。对,就是家用电脑。 达到大师级的象棋相对围棋来讲更容易,估计不会有人在做这个领域的探索,因为已经有围棋的高点在了,很少有人会专注做一个差一点的尝试 两方面的问题:1.技术上可不可行。2.利益上值不值得。 围棋已经被人工智能攻克,顶尖人类围棋选手已经认输。象棋的变化没有围棋大,理论上说,人工智能攻克象棋也没问题。 从利益上说,做人工智能最终也是为了能够获得利益,通过围棋算法训练人工智能,观察效果,如果能够从这得到想要的答案,还有没有必要再次训练象棋,这就是科学家思考的事情了。 首先,这个问题已经有了答案,网上众多人机象棋游戏已经能够完成这个功能。中国象棋的步骤简单,3岁儿童都能对弈。中国象棋的格式是固定的,走法是有几万种步骤组合,只是次序不同,但是方案的总量是固定的。现在一个好的游戏程序最大限度的收集了这些方案。很多象棋高手平时已经在用游戏软件进行训练。 其次,估计这个问题想问的是计算机软件什么时候能够胜过人类棋手。答案是有输有赢,为什么呢?因为人类在下棋的时候,不只是靠积累的技艺,还有很多其他的因素影响胜率。比如所处的环境、自身的状态。人的水平发挥程度是个不稳定的因素。 最后,这个问题其实还是指向人工智能,到底人工智能将来能发展成什么样子?可以肯定的是它会比人聪明,IQ比人类高。不能肯定的是EQ未必能超过人类。因为情感是生命体的特质,人类是有情感的。而人工智能如果发展出了情感,是不是我们人类从碳基生命向硅基生命的转移。让人既向往,又感到恐惧。