终于轮到围棋 人工智能又赢了

实际早在人机大战刚刚兴起的90年代,中山大学的陈志行教授就已开发出“手谈”软件进行人机对弈,在计算机围棋界也屡获佳奖。早期的围棋软件延续了其他棋类程序的思路, 通过棋盘的运算和数据库里的棋谱数据输入积累来提高机器程序的运算能力。直到蒙特卡洛算法(Monte Carlo Method)的普及,大大优化了整个树方法的运算效率。这个统计学方法广泛应用于各个领域,通过随机重复的模拟动作,来获得该动作产生的效果概率分布。应用在游戏上就可以训练机器对树上的各节点进行筛选和调整。

尤其在2005年,通用棋类游戏(General Game Playing,GGP)项目由斯坦福大学发起,其目的是建立一个人工智能平台,让游戏AI具有通用性,而不只针对单一项目。之后这个项目的成果被美国计算机协会(AAAI)纳入,成为一年一度的计算机大赛。比赛会使用一个统一的服务器,其上用游戏描述语言来制定规则(GDL),参赛AI之间相互比拼。自举办以来,蒙特卡洛算法和其他各类算法的配合几乎是获得冠军的秘诀。

到近几年,一度沉寂的神经网络算法开始复兴。这个算法在一定程度上模拟了生物神经分层的构架,不仅能够不断调整优化各项行动的逻辑权重,还能够进行结果的反馈,把结果重新作为输入进行训练。谷歌的DeepMind团队把这项算法附加在博弈树上,就有点像棋手进行复盘一样,反复加强之后可以对落子的位置形成一定的优先级筛眩应用性质上是和蒙特卡洛一样的搜索和剪枝策略。经过了3千万局的训练,最终达到了极高的职业水准。

也许有人会问:这不还是硬算吗?问题并非如此,看似依然需要大量运算,却和先前有着极大的区别。当机器进行反复的训练后,它们对某些情况下的落子位置概率会变得很低。换句话说,它们可以跳过这些位置的运算,而非全部再计算一通。这些算法的进步实际更加符合人类的思考和学习方式。我们人类并不是掌握了全部的信息和预测之后才能做出决策的,我们只能尽力追求在自己的能力范围内“满意”的答案,而不是非要找到那个最优的答案。这便是Herbent Simon提出的有限理性理论(Bounded Rationality)。对于一位棋手而言也是如此,无论他的棋力多么高超也不够算计到所有的局面,所以一定是做出他最满意的那个决策。既然如此,如果机器真的能模拟人类智能,那么它也不需要做到所有的运算,只需要模仿人类尽可能的优化自身。而相比人类,计算机的学习却可以“不知疲倦”的反复训练。

所以,即便借助计算机,我们也可能无法穷尽围棋的答案,但借助人工智能,我们永远可以挑战自己。

3Game over?

或许某天,天才棋手也敌不过人工智能的棋局。但我们应该想到,他并非输给机器,而是依然输给了人,输给了那些机器背后的智慧结晶。有人会觉得这个说法略显悲壮,那么,更好的建议是“不用担心”。

当1997年深蓝多次击败顶级象棋棋手之后,人们都以为这个游戏终结了。但他们错了。在那场比赛之后,卡斯帕罗夫率先提出了“人加机器”(Man-plus-Machine)的概念,即在比赛中使用人工智能增强国际象棋手的水平,而不是让双方相互对抗。这种比赛在之后被称为自由式国际象棋赛,它们和混合武术比赛相似,选手们可以使用任何技巧对弈。你可以独自参赛;或者带一台人工智能照着它的路子下棋;亦或偶尔否决人工智能的选择,就像我们开车时用GPS的感觉。在2014年的自由式国际象棋对抗锦标赛上,纯粹使用人工智能的选手赢得了42场比赛,而人机一起参加的选手赢得了53常当今世界上最优秀的国际象棋选手队伍Intagrand就是由人类和象棋程序一起组成的。

更让人意外的是,国际象棋的人工智能并未削弱这项游戏的魅力,与卡斯帕罗夫时期相比,拥有国际象棋大师排名的人数至少翻了一倍,而曾经通过机器训练,目前位列第一的Magnus Carlsen还是有史以来评分最高的象棋大师。我们不妨更进一步思考,既然人工智能可以帮助人类成为更优秀的选手,那么它也能帮助我们成为更优秀的其他职业人士。

比赛自会有输赢,有胜败。最重要的是,人类通过比赛挑战强者,而挑战永无止境。