文章搜索:
您现在的位置:首页 >> 象棋文章 >> 棋谈棋文 >> 浏览正文

人机大战趣谈:会下棋的电脑 像人一样聪明

时间:2006/8/8 12:02:00

人机大战趣谈:会下棋的电脑 像人一样聪明

  最近几天,媒体关于中国第一次“人机大战”的报道铺天盖地。8月9日,五位中国象棋大师将与超级计算机世界冠军浪潮天梭展开巅峰对决。

  那么,什么是人机大战?人和计算机怎么能比赛呢?

  简单的说,人机大战是人和计算机比赛下象棋。众所周知,象棋是古人根据战争发明出来的游戏,其战局千变万化,每一步细小变化都可能导致整个战局的扭转。要想下好一盘棋,需要战略与战书综合考量。就是人,要下好象棋,只有长期的艰苦训练都是不够的,必须要有极高的天赋。而平日里帮助我们处理办公文件、上网聊天的电脑,顶多也就是一个工具,怎么可能赢得过人呢?

  如果你这么认为,那么你就需要学习一下什么是人工智能了。简单的说,人工智能就是让计算机具备人类的思维模式和智慧水平。在人机大战中,与人对抗的,就是人工智能。我们不妨拿本次参加比赛的超级冠军浪潮天梭来体验一下。

  在象棋这类人机博弈中,人工智能的基本思考方法是穷举法,即通过对所有可能的招法的演化结果进行比较,最后选择出一个最好的招法。这种比较,一定是越深越好。我们知道,平日里象棋水平越高的人,能够对战局演化看得越远,比如看到五步棋。计算机也一样,走出一个棋子后,便生成一个“局面”;在这个新的局面下,又有38种可能的棋子走法,无论选择其中哪一种,都会再次生长一个更新的局面。每一次考虑一个棋子的走法时,如果将所有这些变化列起来,就会形成一棵“树”,主干上有38个分支,每个分支上再有38个分支,依次类推,共有120层(中国象棋一般可以走120步)。这就是“博弈树”。计算机要做的,就是比较最后一层的结果,选择其中一个最好的结果,然后逆推,找到本局面最好的一个走法。

  但是,号称“棋类不败算法”的博弈树是根本不可能完全建立的,因为它太过庞大了。“中国象棋从开局到结束所有可能的走棋方式,总数大约是10的150次方,这个数量比地球上存在的所有原子的总和还要多。这么多的可能性即使计算到地球毁灭也计算不出一步棋的走法。”中国人工智能学会理事徐心和教授如是说。

  所以,计算机必须具备一种策略判断能力,在“博弈树”的每一层中,都能够及时舍弃一些明显错误、不可行的招法,也就是砍去树的一个分支,以及这个分支之上所有的后续演化。怎么判断呢?这时,人的思维方法就发挥作用了,这也是人工智能最突出的表现。

  在人机大战中,浪潮天梭在面对一步棋的时候,模仿人的思考方法,有一种自己的择优算法,将尽可能的去简化搜索范围,忽略博弈树中错误的或不利于己的“树枝”,只考虑那些能使自己获胜或占有优势的“树枝”,然后对其进行横向比较并选择最优走法。

  浪潮天梭这种思考能力在中局搏杀阶段体现的十分明显。浪潮天梭会对所有有利于自己取胜的合理走法所产生的后续棋局,使用评估函数进行评估,搜索出最优的走法。评估函数一般包含固定子力值、棋子位置值、棋子灵活度值、威胁与保护、牵制、棋子配合作战、兵的状态、将的安全等方面,对超级计算机处理器的能力和带宽,以及多个处理器之间的通信和数据交换、协作能力有很高的要求。

  与此同时,电脑的一个优势时超强的记忆力。浪潮天梭可以存储海量的典型棋局,建立大量快速判断模型。当棋局发展到某一个局面时,天梭可以迅速与棋局库相比较,找到最相似的一个模型,从而判断出这个局面下最好招法是什么。

  而且,超级计算机还具有主动学习能力。可以通过与对手的比赛,学习对手的战略与战术。就是说,和你下了一盘棋,下一盘就知道你大概的走法。这样的对手多可怕啊。

  “浪潮杯”首届中国象棋人机大战开战在即,了解了计算机的智慧,你对于人机大战结果的预测是否有了重新的选择?

 编辑:好点子 手机版
  • Powered by laoy8! V3.0sp1