AlphaGo

AlphaGo（“Go”为日文“碁”字发音转写，是围棋的西方名称），直译为阿尔法围棋，在英语不流通的华语社会亦被音译为阿尔法狗、阿法狗、阿发狗等，是于2014年开始由英国伦敦Google DeepMind开发的人工智能围棋软件。2017年，关于AlphaGo的电影纪录片《AlphaGo世纪对决》正式上映。

专业术语上来说，AlphaGo的做法是使用了蒙特卡洛树搜索与两个深度神经网络相结合的方法，一个是以借助估值网络（value network）来评估大量的选点，一个是借助走棋网络（policy network）来选择落子，并使用强化学习进一步改善它。在这种设计下，电脑可以结合树状图的长远推断，又可像人类的大脑一样自发学习进行直觉训练，以提高下棋实力。

## 历史

一般认为，电脑要在围棋中取胜比在国际象棋等游戏中取胜要困难得多，因为围棋的下棋点极多，分支因子远多于其他游戏，而且每次落子对情势的好坏飘忽不定，诸如暴力搜寻法、Alpha-beta剪枝、启发式搜索的传统人工智能方法在围棋中很难奏效。在1997年IBM的电脑“深蓝”击败俄籍世界国际象棋冠军加里·卡斯帕罗夫之后，经过18年的发展，棋力最高的人工智能围棋程序才大约达到业余5段围棋棋手的水准，且在不让子的情况下，仍无法击败职业棋手。2012年，在4台PC上运行的Zen程序在让5子和让4子的情况下两次击败日籍九段棋士武宫正树。2013年，Crazy Stone在让4子的情况下击败日籍九段棋士石田芳夫，这样偶尔出现的战果就已经是难得的结果了。

AlphaGo的研究计划于2014年启动，此后和之前的围棋程序相比表现出显著提升。在和Crazy Stone和Zen等其他围棋程序的500局比赛中，单机版AlphaGo（运行于一台电脑上）仅输一局。而在其后的对局中，分布式版AlphaGo（以分散式运算运行于多台电脑上）在500局比赛中全部获胜，且对抗运行在单机上的AlphaGo约有77%的胜率。2015年10月的分散式运算版本AlphaGo使用了1,202块CPU及176块GPU。

- 2015年10月，AlphaGo击败樊麾，成为第一个无需让子即可在19路棋盘上击败围棋职业棋士的电脑围棋程序，写下了历史，并于2016年1月发表在知名期刊《自然》。
- 2016年3月，透过自我对弈数以万计盘进行练习强化，AlphaGo在一场五番棋比赛中4:1击败顶尖职业棋手李世石，成为第一个不借助让子而击败围棋职业九段棋士的电脑围棋程序，立下了里程碑。五局赛后韩国棋院授予AlphaGo有史以来第一位名誉职业九段。
- 2016年7月18日，因柯洁那段时间状态不佳，其在Go Ratings网站上的WHR等级分下滑，AlphaGo得以在Go Ratings网站的排名中位列世界第一，但几天之后，柯洁便又反超了AlphaGo。2017年2月初，Go Ratings网站删除了AlphaGo、DeepZenGo等围棋人工智能在该网站上的所有信息。
- 2016年12月29日至2017年1月4日，再度强化的AlphaGo以“Master”为账号名称，在未公开其真实身份的情况下，借非正式的网络快棋对战进行测试，挑战中韩日台的一流高手，测试结束时60战全胜。
- 2017年5月23至27日在乌镇围棋峰会上，最新的强化版AlphaGo和当时世界第一的棋士柯洁比试、并配合八段棋士协同作战与对决五位顶尖九段棋士等五场比赛，取得三比零全胜的战绩，团队战与组队战也全胜，此次AlphaGo利用谷歌TPU执行，加上快速进化的机器学习法，运算资源消耗仅李世石版本的十分之一。在与柯洁的比赛结束后，中国围棋协会授予AlphaGo职业围棋九段的称号。

AlphaGo在没有人类对手后，AlphaGo之父杰米斯·哈萨比斯宣布AlphaGo退役。而从业余棋士的水平到世界第一，AlphaGo的棋力取得这样的进步，仅仅花了两年左右。

最终版本AlphaZero拥有更加强大的学习能力，可自我学习，在21天达到胜过中国顶尖棋手柯洁的Alpha Go Master的水平。

## 对战

### deepmind名义

2014年起，AlphaGo以英国棋友deepmind的名义开始在弈城围棋网上对弈。deepmind在2014年4月到2015年9月长达1年半的时间里，维持在7D到8D之间，总共下了300多盘棋。2015年9月16日首次升上9D，之后在AlphaGo与樊麾对弈前后的三个月内未进行网络对弈。2015年12月到2016年2月，deepmind一共下了136盘，基本在9D水平。其中和职业棋手的多次对局互有胜负。

黄士杰在AlphaGo与李世乭九段比赛前曾否认deepmind是AlphaGo的测试账号，但是在AlphaGo与李世石比赛之后，DeepMind创始人哈萨比斯承认AlphaGo曾经使用deepmind账号进行过测试。

2016年12月16日，在AlphaGo以Master身份登录弈城围棋网之前，黄士杰要求删除deepmind账号。现在deepmind的战绩和棋谱已经无法查阅。

### 樊麾

2015年10月，分布式版AlphaGo分先以5:0击败了欧洲围棋冠军华裔法籍职业棋士樊麾二段。这是电脑围棋程序第一次在十九路棋盘且分先的情况下击败职业围棋棋手。新闻发布被推迟到2016年1月27日，和描述算法的论文一起发布，而论文发表在《自然》上。

### 李世乭

2016年3月，AlphaGo挑战世界冠军韩国职业棋士李世乭（이세돌）九段。AlphaGo使用谷歌位于美国的云计算服务器，并通过光缆网络连接到韩国。比赛的地点为韩国首尔四季酒店；赛制为五番棋，分别于2016年3月9日、10日、12日、13日和15日进行；规则为中国围棋规则，黑棋贴3又3/4子；用时为每方2小时，3次1分钟读秒。DeepMind团队在YouTube上全球直播并由美籍职业棋士迈克·雷蒙（Michael Redmond）九段担任英语解说，而中国大陆很多视频网站也采用YouTube的直播信号进行直播，并加上自己的解说。DeepMind团队成员台湾业余6段围棋棋士黄士杰博士代表AlphaGo在棋盘上落子。

比赛获胜者将获得100万美元的奖金。如果AlphaGo获胜，奖金将捐赠给围棋组织和慈善机构，包括联合国儿童基金会。李世乭有15万美元的出场费，且每赢一盘棋会再得2万美元的奖金。

2016年3月9日、10日和12日的三局对战均为AlphaGo获胜，而13日的对战则为李世乭获胜，15日的最终局则又是AlphaGo获胜。因此对弈结果为AlphaGo 4:1战胜了李世乭。这次比赛在网络上引发了人们对此次比赛和人工智能的广泛讨论。

### Master名义

2016年11月7日，樊麾在微博上表示AlphaGo的实力大增，将在2017年初进行更多比赛。DeepMind创办人杰米斯·哈萨比斯随后证实此消息。然而并未公布细节。

2016年12月29日晚上七点起，中国的弈城围棋网出现疑似人工智能围棋软件的围棋高手，账号名为“Magister”（中国大陆客户端显示为“Magist”），后又改名为“Master”。2017年1月1日晚上十一点Master转战至腾讯旗下的野狐围棋网。Master以其空前的实力轰动了围棋界。它以每天十盘的速度在弈城、野狐等网络围棋对战平台挑战中韩日台的顶尖高手，到2017年1月4日公测结束为止60战全胜，其中弈城30战野狐30战，战胜了柯洁、朴廷桓、井山裕太、柁嘉熹、芈昱廷、时越、陈耀烨、李钦诚、古力、常昊、唐韦星、范廷钰、周睿羊、江维杰、党毅飞、周俊勋、金志锡、姜东润、朴永训、元晟溱等世界冠军棋手，连笑、檀啸、孟泰龄、黄云嵩、杨鼎新、辜梓豪、申真谞、赵汉乘、安成浚等中国或韩国国内冠军或者世界亚军棋手，以及世界女子第一人於之莹。期间古力曾悬赏人民币10万元给第1位战胜Master者。

Master所进行的60战基本都是3次20秒或30秒读秒的快棋，仅在与聂卫平交战时考虑到聂老年纪大而延长为1分钟，并且赛后还以繁体中文打上“谢谢聂老师”5字。该账号于59连胜后称“我是 AlphaGo的黄博士”，表明Master就是AlphaGo，代为落子的是AlphaGo团队成员来自台湾的黄士杰博士；DeepMind创始人之一杰米斯·哈萨比斯于比赛结束后在其推特上表示“我们很期待在今后（2017年）与围棋组织和专家合作，在官方比赛中下几盘慢棋”，黄士杰与樊麾也分别在Facebook与微博上发表官方中文译文，表示对各国顶尖棋手参与AlphaGo的网络公测的感谢。2017年1月5日晚，中国中央电视台《新闻联播》以“人工智能‘阿尔法狗’横扫围棋高手”为题报道了最近火爆的Master网络快棋60连胜人类高手的事件，新闻还提到，“这次事件为接下来的人机对决做出了很好的预热”。

因为人类棋手在慢棋中有更久的思考时间，所以虽然AlphaGo在网络快棋中大获全胜，但仍不能断言其在官方慢棋比赛中是否也会有如此出色的表现。不过职业棋手们对AlphaGo不同于人类的独特棋风以及它高超的棋力印象深刻，柯洁在其微博中表示“感谢Alphago最新版给我们棋界带来的震撼”，并“略有遗憾”地称“若不是住院，我将用上那准备了一个星期的最后一招”。

### 中国乌镇围棋峰会

2016年6月4日，在第37届世界业余围棋锦标赛新闻发布会上，国际围棋联盟事务总长杨俊安透露今年内AlphaGo或将挑战中国职业棋士柯洁九段。不过DeepMind创办人杰米斯·哈萨比斯表示目前还没有确定AlphaGo的下一步计划，一旦有明确的安排，会有官方声明。

2016年12月8日，第21届三星车险杯世界围棋大师赛决赛过后，柯洁九段表示：“目前棋手之间的比赛众多，我放弃了与DeepZenGo的对局。我觉得，我现在的状态还不能打败‘阿尔法狗’（AlphaGo），今后需要更加努力。”

2017年4月10日，中国围棋协会、Google和浙江省体育局联合在中国棋院召开新闻发布会，宣布以柯洁为首的中国棋手将和AlphaGo在5月23至27日的中国乌镇围棋峰会上对弈。此次对弈分为三场比赛，首先在5月23、25和27日这三天，柯洁将与AlphaGo下三番棋，用时为每方3小时，5次1分钟读秒。Google DeepMind为本次柯洁与AlphaGo的三局比赛提供了150万美元的胜者奖金，同时柯洁有30万美元的出场费。此外在5月26日，时越、芈昱廷、唐韦星、陈耀烨和周睿羊5人将进行团队赛，他们将联合与AlphaGo对弈，用时为每方2小时30分钟，3次1分钟读秒。同日，古力、连笑还将和AlphaGo合作进行人机配对赛，比赛将以棋手与AlphaGo合作的形式进行，用时为每方1小时，1次1分钟读秒。最终，AlphaGo以3：0战胜柯洁，并被中国围棋协会授予职业围棋九段称号，不过聂卫平九段称它的水平“至少20段”。在结束与柯洁的比赛后，Deepmind宣布AlphaGo将“退役”，不再参加任何围棋比赛，但将公开AlphaGo自己与自己互弈的棋谱；而在未来Deepmind将会把AlphaGo的技术运用到医疗等更广泛的领域。

### AlphaGo Zero

AlphaGo的团队于2017年10月19日在《自然》杂志上发表了一篇文章，介绍了AlphaGo Zero，这是一个没有用到人类数据的版本，比以前任何击败人类的版本都要强大。通过跟自己对战，AlphaGo Zero经过3天的学习，以100:0的成绩超越了AlphaGo Lee的实力，21天后达到了AlphaGo Master的水平，并在40天内超过了所有之前的版本。

## 版本

### 配置与性能

2015年10月前后的测试中，AlphaGo多次使用不同数目的CPU和GPU，以单机或分布式模式运行。每一步棋有两秒的思考时间。最终Elo等级分如下表：

配置｜搜索线程数｜CPU核心数｜GPU数｜Elo等级分的理论峰值

单机｜40｜48｜1｜2,151

2｜2,738

4｜2,850

8｜2,890

分布式｜12｜428｜64｜2,937

24｜764｜112｜3,079

40｜1,202｜176｜3,140

64｜1,920｜280｜3,168

然而AlphaGo的棋力不断且显著地增长。因此上表并不能代表AlphaGo其他版本的棋力。

而在AlphaGo Zero发布之后，Deepmind表示新的算法令新版的AlphaGo比旧版的耗能量大幅下降10000至40000TDP，效能大幅提升。

### 配置与棋力

在2016年1月27日，Research at Google发布了有关新版AlphaGo跟其他围棋软件，以及樊麾二段的对比如下：

比对对象｜Elo等级分｜相对水平

理论峰值｜平均｜上下区间

AlphaGo分布式｜3,275｜3,250｜50｜职业五段

AlphaGo｜2,787｜2,775｜25｜职业二段

樊麾二段｜3,250｜2,750｜1,000｜职业二段

石子旋风（让四子）｜2,525｜2,500｜50｜约业余9段

石子旋风｜1,965｜1,940｜50｜业余6段

Zen（让四子）｜2,300｜2,250｜100｜约业余9段

Zen｜1,925｜1,900｜50｜比业余6段低

Pachi（让四子）｜1787｜1,750｜75｜业余5段

Pachi｜1,350｜1,345｜10｜比业余3段低

Fuego｜1,050｜1,045｜10｜比业余1段高

GnuGo｜450｜450｜0｜比入门5级高

在2017年5月24日，DeepMind团队证实了在乌镇围棋峰会上，所使用的AlphaGo版本是Master，并公布了AlphaGo曾经公开对弈过的版本以及和其他围棋软件比较的图表。其中，新版的AlphaGo Master能让AlphaGo Lee（跟李世乭对战的版本）三子。两个版本的AlphaGo自我生成的Elo等级分分别在4750和3750分附近，与柯洁九段在5月23日的3620分（非官方排名系统所统计的）相差约130到1130分之多。然而，职业棋士樊麾二段替AlphaGo团队的首席研究员戴维·西尔弗澄清：“当AlphaGo与从未对弈过的人类棋手对局时，这样的优势就不复存在了，尤其是柯洁这样的围棋大师，他可能帮助我们发现AlphaGo未曾展露的新弱点”。

版本｜使用规则｜硬件｜Elo等级分的理论峰值｜战绩

AlphaGo樊 (v13)｜中国规则｜176个GPU，分布式｜3,144｜5比0战胜樊麾

AlphaGo李 (v18)｜48个TPU，分布式｜3,739｜4比1战胜李世乭

AlphaGo Master｜4个TPU v2，单机｜4,858｜网棋60比0战胜职业棋手；3比0战胜柯洁；1比0战胜人类团队

AlphaGo Zero｜川普-泰勒规则｜4个TPU v2，单机｜5185｜100:0 战胜AlphaGo李; 与AlphaGo Master 对战胜率达90%

AlphaZero｜4个TPU v2，单机｜N/A｜60:40 战胜AlphaGo Zero（3天版本）

## 算法

AlphaGo使用蒙特卡洛树搜索（Monte Carlo tree search），借助估值网络（value network）与走棋网络（policy network）这两种深度神经网络，通过估值网络来评估大量选点，并通过走棋网络选择落点。AlphaGo最初通过模仿人类玩家，尝试匹配职业棋手的过往棋局，其数据库中约含3000万步棋着。后来它达到了一定的熟练程度，它开始和自己对弈大量棋局，使用强化学习进一步改善它。围棋无法仅通过寻找最佳棋步来解决；游戏一盘平均约有150步，每一步平均约有200种可选的下法，这意味着有太多需要解决的可能性。

## 表现评价

围棋职业九段棋手金明完称AlphaGo在与樊麾的对战中，表现得“像人类一样”。棋局裁判托比·曼宁则认为AlphaGo的棋风“保守”。

而李世乭在中国乌镇围棋峰会后表示，AlphaGo的发挥非常稳定，表现完美，要想找到战胜它的机会不能过于稳妥，“必须越乱越好，难点越多越好”。另外，柯洁在赛后复盘表示，AlphaGo能够非常有效率地利用场上的棋子，所走的棋子都与场上的棋子有连贯及配合，并对棋子的厚薄有独到的理解，能把一些人类认为厚的棋子予以打击和歼灭。

## 反应

AlphaGo被誉为人工智能研究的一项标志性进展，在此之前，围棋一直是机器学习领域的难题，甚至被认为是当代技术力所不及的范畴。樊麾战的棋局裁判托比·曼宁和国际围棋联盟的秘书长李夏辰都认为将来围棋棋手会借助电脑来提升棋艺，从错误中学习。

台湾大学电机系教授于天立认为，Google能够成功结合深度神经网络、加强式学习和蒙地卡罗树状搜寻三种算法，其成果值得喝采。他认为这种技术应该适用于一般连续性决策问题。因为AlphaGo可以在众多可行的决策中，适当分配运算资源来探索此一决策所带来的好处及坏处，并且可从探索中回馈修正错误。不过于也提到，即使AlphaGo所使用的学习模型比较具有一般性，它离真正完全通用的学习模型仍有一段距离。

## 类似成果

- Facebook也在开发一套围棋程序，名为Darkforest。这套程序也是基于机器学习和树搜索。在2016年3月举办的第9届UEC杯世界电脑围棋大会中获得亚军。尽管该程序在其他围棋程序面前表现强劲，但截至2016年年初，它尚未击败任何职业棋手。
- DeepZenGo是日本程序员尾岛阳儿、加藤英树等开发的围棋程序，是在旧版本的Zen围棋软件基础上加入了深度学习技术后开发的新版本，由日本DWANGO公司、东京大学、日本棋院提供支持，其基本原理和AlphaGo类似。在第二届围棋电王战中分先以1:2不敌赵治勋九段。在2017年3月18-19日在日本举办的第10届UEC杯世界电脑围棋大会上获得亚军。在2017年3月21-23日的世界围棋冠军锦标赛上以一胜二负的成绩名列第三名。在2017年3月26日的第5届电圣战上分先战胜了日本的一力辽七段。目前在KGS、弈城、腾讯野狐等网络围棋对弈平台上公测。
- 绝艺（英文名Fine Art）是中国腾讯公司的AI Lab（腾讯人工智能实验室）开发的围棋人工智能。在2017年3月18-19日的第10届UEC杯世界电脑围棋大会上夺得冠军，并在2017年3月26日的第5届电圣战上分先战胜了日本的一力辽七段。目前在腾讯野狐围棋网络对弈平台上公测。
- CGI 是由国立交通大学CGI（Computer Games and Intelligence）实验室所开发的围棋人工智能。在2017首届世界智能围棋公开赛8月16日于内蒙古鄂尔多斯开战，击败绝艺与DeepZenGo，初赛全胜；17日总决赛中夺得亚军。

## 外部链接

- https://deepmind.google/research/alphago/
- AlphaGo wiki at Sensei's Library, including links to AlphaGo games
- AlphaGo page, with archive and games
- Estimated 2017 rating of Alpha Go

## 基本资料

- 日语原文：Alphago
- 说明：AlphaGo标志
- 发行日期：2014年