APP下载

“阿尔法狗”为什么厉害

2016-09-18

党政论坛 2016年5期
关键词:落子蒙特卡洛搜索算法

益 智 ·科技前沿·

“阿尔法狗”为什么厉害

从3月9日开始,一场人与机器的围棋大战吸引了全世界的目光。这场大战在韩国首尔上演,一直持续到15日,共5轮。大战之所以举世瞩目,是因为对战的双方是世界围棋冠军李世石与围棋人工智能程序AlphaGo。令人惊叹的是,整个比赛过程中,AlphaGo的表现都堪称完美,最终以4∶1击败李世石。

这个战胜人类世界围棋冠军的AlphaGo程序到底是何方神圣?它为什么如此厉害?

“阿尔法狗”是什么?

AlphaGo程序是美国谷歌公司旗下DeepMind团队开发的一款人机对弈的围棋程序,被中国棋迷们戏称为“阿尔法狗”。游戏是人工智能最初开发的主要阵地之一,比如博弈游戏就要求人工智能更聪明、更灵活,用更接近人类的思考方式解决问题。

1997年,IBM的“深蓝”计算机首次击败国际象棋世界冠军卡斯帕罗夫,成为人工智能战胜人类棋手的第一个标志性事件。此后近20年间,计算机在诸多领域的智力游戏中都击败过人类。但在围棋领域,人工智能却始终难以逾越人类棋手。直到2015年,由谷歌开发的这款“阿尔法狗”程序才首次战胜欧洲围棋冠军樊麾。

为什么对于人工智能而言,围棋的难度这么大?中国自动化协会副理事长、秘书长王飞跃说:“首先,围棋的可能性太多。围棋每一步的可能下法非常多,棋手起手时就有19×19=361种落子选择。一局150回合的围棋可能出现的局面多达10170种。其次,是规律太微妙,在某种程度上落子选择依靠的是经验积累而形成的直觉。此外,在围棋的棋局中,计算机很难分辨当下棋局的优势方和弱势方。因此,围棋挑战被称作人工智能的‘阿波罗计划’。”

既然围棋对于人工智能来说这么难攻克,那么对于AlphaGo程序的设计者来说,是否也需要具备很高的围棋水平?“这个不需要,设计者们只需要懂得围棋的基本规则即可。AlphaGo背后是一群杰出的计算机科学家,确切地说,是机器学习领域的专家。科学家利用神经网络算法,将棋类专家的比赛记录输入给计算机,并让计算机自己与自己进行比赛,在这个过程中不断学习训练。某种程度上可以这么说,AlphaGo的棋艺不是开发者教给它的,而是‘自学成才’的。”王飞跃说。

“阿尔法狗”怎样下棋?

AlphaGo通过蒙特卡洛树搜索算法和两个深度神经网络合作来完成下棋。什么是蒙特卡洛搜索树算法?有专家曾通俗地解释:假如篮子里有1000个苹果,让你每次闭着眼睛找一个最大的,可以不限制挑选次数。于是,你可以闭着眼随机拿了一个,然后再随机拿一个与第一个比,留下大的,再随机拿一个,与前次留下的比较,又可以留下大的。循环往复这样,拿的次数越多,挑出最大苹果的可能性也就越大,但除非你把1000个苹果都挑一遍,否则你无法肯定最终挑出来的就是最大的一个。这就是蒙特卡洛搜索,它被广泛用于科学和工程研究的算法仿真中。

“这种方法在象棋、跳棋等方面还具有一定可实现性,但对于围棋就无法实现,因为围棋横竖各19条线,落子的可能性大到计算机无法构建这棵树(果子太多了)来实现遍历搜索。”中国科学院自动化研究所研究员易建强说,“而AlphaGo采用了很聪明的方法,完美解决了这个问题。它利用深度学习的方法降低了搜索树的复杂性,搜索空间得到有效降低。比如,策略网络负责指挥计算机搜索出更像人类高手该落子的位置,而估值网络负责指挥计算机搜索出后续更有可能获胜的一个落子位置。”中国科学院自动化研究所博士研究生刘加奇进一步解释,“策略网络主要是用来生成落子策略的。在下棋的过程中,它不是考虑自己应该怎么下,而是想人类的高手会怎么下。也就是说,它会根据输入棋盘当前的一个状态,预测人类下一步棋会下在哪儿,提出最符合人类思维的几种可行的下法。”然而,策略网络并不知道自己要下出的这步棋到底下得好还是不好,它只知道这步棋是否跟人类下的是一样的,这时候就需要估值网络来发挥作用了。“估值网络会为各个可行的下法评估整个盘面的情况,然后给出一个‘胜率’。这些值会反馈到蒙特卡洛树搜索算法中,通过反复如上过程推演出‘胜率’最高的走法。蒙特卡洛树搜索算法决定了策略网络仅会在‘胜率’较高的地方继续推演,这样就可以抛弃某些路线,不用一条道算到黑。”

AlphaGo利用这两个工具来分析局面,判断每种下子策略的优劣,就像人类棋手会判断当前局面以及推断未来的局面一样。在利用蒙特卡洛树搜索算法分析了比如未来20步的情况下,就能判断在哪里下子赢的概率会高。

人工智能会对人类造成威胁吗?

专家们表示,AlphaGo成功的秘诀就是让计算机知道如何完成目标并通过经验来提高,而不是每项任务都通过手写指令来完成。

此次AlphaGo的胜利被业界认为是人工智能发展当中的一个重要里程碑。“它的一些算法的机理可以运用到其它领域,去解决一些对抗性的问题,甚至还可以应用到以后的商业和金融交易当中,或者是城市的交通管理等方面。”刘加奇说。

很多人都担心人工智能的发展会威胁到人类的生存,这次AlphaGo能在典型的反映人类智慧的比赛中打败人类,则更加重了人们的担忧。对此,记者采访的几位专家都表示人工智能并不会对人类造成威胁。他们认为,人工智能技术为我们提供了强大工具,有助于专家更快做出突破,提高我们应对那些亟待解决的全球性难题的能力。“我们需要机器学习来帮助处理复杂问题,预测未知,支持我们实现以往不可能的目标。”王飞跃说。

(摘自《人民日报》2016年3月21日)

猜你喜欢

落子蒙特卡洛搜索算法
改进的非结构化对等网络动态搜索算法
改进的和声搜索算法求解凸二次规划及线性规划
征服蒙特卡洛赛道
琴(外一首)
银行理财子公司“落子”布局
基于蒙特卡洛法的车用蓄电池20h率实际容量测量不确定度评定
落子山东,意在全局
利用控制变量方法缩减蒙特卡洛方差
蒙特卡洛模拟法计算电动汽车充电负荷
90后唐丹:人生如棋,落子不悔