人工智能围棋对局讲解人机大战(围棋人机对弈五十年)
AlphaGo2.0来到中国, “人机大战第二季”激战正酣。
但事实上,AlphaGo已经是围棋人工智能的第三代。在开发围棋人工智能的道路上,人类已经艰难地探索了将近五十年。
第一代围棋人工智能是中国教授发明
围棋的英译名Go是日语的发音译来的,围棋在日语里写成“碁”(即Go的发音),把围棋译成Go或者The game of go大概是最蹩脚的翻译了,尤其是在互联网时代,把围棋译成Go非常不利于围棋的推广,但AlphaGo的出现或能改变这个事实。
棋类游戏是对人类智能的挑战,自然也成了人工智能的标志之一。而围棋一直被认为是人工智能领域里的非常困难的挑战。二战还没结束,图灵就研究计算机下棋,他于1947年编了第一个国际象棋下棋程序,但直到1968年,最早的电脑围棋程序才被编写出来。它是由阿尔伯特·索伯特开发的,引入了一个评估函数对棋局进行分析,来估算双方占空的大小。然而,在相当长的一段时间里,业界的普遍观点是电脑围棋只能达到业余棋手的水准。
真正意义上的第一代围棋AI(人工智能)“手谈”,是由已故中山大学化学系教授陈志行研发的围棋程序,从1993年到2002年共10次获得电脑围棋世界冠军,而“手谈”这个名字也是围棋除“弈”之外的别称。
陈志行教授原本研究的是量子化学,但同时也是围棋业余高手。在1991年退休后,他才开始潜心研发电脑围棋软件,虽然当时的电脑软件技术水平还非常低,而围棋棋盘大(19 19,一共有361点),空间状态多,打劫、终局规则复杂,一般程序员至少需要设计一两年才可能让电脑学会下围棋。但量子化学专业出身的陈志行,使用速度快但不太常用的汇编程序语言搭建围棋框架和编写围棋对弈引擎,他潜心编写的“Alpha-Beta搜索引擎”速度非常快,在当时领先其他同行几个数量级,达到了13层搜索深度,也就是说“手谈”可以算清后面的13步棋,而其他程序通常只能算七八步。陈志行编写的“模式识别”专家系统在当时也是无人能及。
陈志行潜心研发“手谈”3年后,终于在世界比赛中斩获首个围棋人工智能世界冠军。当时的“手谈”以战斗力超强著称,智能水平遥遥领先国际同行。之后“手谈”对弈水平不断进步,在国际性的电脑围棋对弈比赛上连续夺冠,夺得了该时期大部分世界比赛的冠军。
当时个人电脑系统刚在世界范围内普及,许多围棋爱好者还专门购买电脑安装“手谈”软件,用作学习围棋和训练的工具,“手谈”软件在世界范围内销售量排名第一。可以说,“手谈”软件的成功在国内掀起了一波围棋人工智能研究的热潮。
“蒙特卡洛树”算法开启二代围棋人工智能
当如IBM深蓝那样的超级电脑,已经能够击败世界上最好的国际象棋棋手时,围棋软件却仍然无法击败业余围棋高手。
但是,从2006年开始,随着应用蒙特卡洛方法的树搜索即蒙特卡洛树搜索和机器学习在围棋上的应用,电脑围棋水平有了突飞猛进的增长,棋力普遍提升到业余高段的水准。
围棋的棋子多,组合可能性也多。蒙特卡洛算法是一种基于“随机数”的计算方法,这一方法源于美国在二战中研制原子弹的“曼哈顿计划”。频率决定概率,围棋对弈软件将最常见的对弈定式及棋形输入其中,从而达到较短时间提高棋力的功效。用通俗的语言解释这种算法:“简单来说,人脑下围棋靠的是逻辑思维,而蒙特卡洛算法就是一个抽样调查的方法。其实就是一个赌博概率式的方法,如果电脑下100盘棋,用这种下法赢了60盘,用另一种下法只赢了50盘,那么,它就会认定第一种下法,而淘汰另一种下法。”
蒙特卡洛树搜索算法的出现,可以看作是人工智能取得突破性进展的标志:计算机的思考方式,已经有点接近人类的思维方式了。目前使用蒙特卡洛树搜索的围棋对弈软件有疯石围棋(CrazyStone)、银星围棋(SilverStar)、天顶围棋(ZEN)等,都取得了不错的成绩。
2011年8月欧洲围棋大会,电脑围棋软件ZEN在19路盘上被让五子击败日本职业棋手林耕三六段。2012年3月,ZEN被让四子击败了日本超一流棋手武宫正树九段,这是围棋程序首次在被让四子的情况下战胜第一流职业选手。2013年,CrazyStone被让四子击败日本石田芳夫九段,2014年,CrazyStone被让四子击败日本依田纪基九段。可见围棋软件进步迅速,至少比起十年前对弈水平已经提高一大截,受让四子优势明显。
2015年10月,同样基于蒙特卡洛树搜索的Google旗下人工智能公司DeepMind开发的AlphaGo,在没有任何让子的情况下,以五战全胜的成绩击败了欧洲围棋冠军、职业围棋二段樊麾,这也是电脑围棋程序首次击败围棋职业棋手,当然也意味着围棋AI新时代的来临。
AlphaGo、绝艺以及人机协作
围棋AI之难,难在这项运动本身的多重复杂性“最简单的规则,最复杂的变化”。在AlphaGo及其开发团队DeepMind出现之前,几乎所有研究者都认为在十年内人工智能战胜围棋大师的机会是渺茫的。而在它出现以后,几乎所有人都在惊呼人工智能已破解了围棋这一历史难题,甚至在极短的时间内两次让研究成果上了《自然》杂志的封面。
据AlphaGo官方介绍,AlphaGo采用了一种更加“通用”的人工智能方法,即采用将改进的蒙特卡洛决策树算法与深度神经网络算法相结合的方法构建最终的学习系统。其包括两个部分:策略网络与价值网络。策略网络在当前给定的棋局中,负责预测下一步的走棋,并对下一步走棋的好坏进行打分,策略网络的作用好比“模仿”人类棋手的各种走法,以达到预测的效果。然而仅凭模仿无法击败最顶级的人类高手,AlphaGo又增加了价值网络来判断当前的局面到底对哪一方有利,但围棋程序的局势评估相当困难,只能通过深度学习网络之间自我训练的方法来达到良好的效果。
2016年3月,AlphaGo以4:1战胜世界围棋名将李世石,AlphaGo的实力首次被世人真正认可。AlphaGo 2.0版本的升级亮点是摒弃人类棋谱,即仅通过监督学习和强化学习,再度进化出新的“围棋机器人”。
事实上,除了AlphaGo,现在还有其他围棋AI程序也已被证明达到甚至超过了人类棋手的一流水平,比如腾讯AI Lab(腾讯人工智能实验室)研发的围棋人工智能程序“绝艺”(Fine Art),它在今年首次参加UEC杯计算机围棋大赛,就以11连胜夺得了本届UEC杯冠军,在随后的人机大战中完胜日本先锋棋手一力辽。
AI作为工具,被人类棋手“喂招”不断进化后,它也能“反哺”人类,棋手使用围棋AI开展人机协同,AI为人类棋手“蓄力”,1 1>2的进化成为了新看点。随着数据量的高速增长,AI可以分析总结、自我学习,人则可以通过善用AI、人机协作,开启智慧时代,改变现在以及未来的一切。(作者为《机器人产业》杂志副总编)
(原标题:围棋人机对弈五十年)
(北京日报)
,免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com