成为象棋和围棋高手后,AI又开始打麻将了
2020-06-11邓舒夏
邓舒夏
看看近几年大众领域对棋牌界的关注,你就会发现,最火爆的话题并不是几位国际高手之间的对决,而是人类和人工智能(AI)的对决——2016年围棋高手李世石以1:4的比分负于人工智能选手AlphaGo,随后另一位高手柯洁又两次输给这个AI选手,这一系列的比赛引发了各行各业对AI能力的讨论,也使得AlphaGo成为围棋界“破圈”最成功的世界冠军。
不过AI在围棋上的建树并不足以展现其最高潜能。通常来讲,根据游戏中的信息暴露程度,棋牌类游戏可以分为“完美信息游戏”和“不完美信息游戏”两类。像国际跳棋、国际象棋、围棋等属于“完美信息游戏”,而德州扑克、桥牌、麻将等属于“不完美信息游戏”。在AlphaGo一战成名之后,越来越多的研究者投入到不完美博弈游戏的研究中,微软选择的是麻将——在2019年8月的世界人工智能大会上,微软亚洲研究院宣布其研发的麻将AI系统“Suphx”成为首个在国际知名麻将竞技平台“天凤”上升到十段的AI系统,今年4月,他们于在线数据库arXiv吐发表了关于Suphx的论文。
“从未知信息的数量、信息集的平均大小上来看,麻将是AI学习中难度最高的棋牌类游戏之一,它的玩法入门容易,想要精通却十分困难。比如在天凤平台上超过35万的活跃玩家中,只有不到1%的玩家达到了专业七段及以上的高手水平。”微软亚洲研究院副院长刘铁岩告诉《第一财经》杂志。2017年下半年,微软亚洲研究院成立了麻将AI研究团队,包括5名研究人员和4名实习生。有趣的是,这些人中并没有麻将高手,有的人甚至连麻将的规则都不甚了解。
首先摆在研究员面前的问题是,他们要教会Suphx麻将的规则。要知道,麻将虽然起源于中国,但民间的麻将更偏娱乐性,缺乏统一的规则和评价体系,仅在中国就有四川麻将、福建麻将、北京麻将等等不同打法,不同游戏平台也设立了不同的规则。调研之后,微软研究人员决定将日本“天凤”平台作为训练标准,这个“竞技”性质的平台具有完善的规则和段位体系。同时,平台上的海量比赛数据对训练AI有很高的价值。
“天凤公司的CEO角田先生对AI麻将的发展持非常开放的态度,因为他一直在努力推动麻将竞技运动,很想知道目前人类能打出的这些打法是不是最好的,未来还有哪些新技巧可以用。”刘铁岩说。在此之前,已有两位AI选手人驻天凤,它们分别是2015年由东京大学团队设计的“爆打”,和2018年日本Dwango公司推出的“NAGA25”。
纵观Suphx的“求学之路”,可以大至分为三个阶段。首先,微软研究员搭建了日本麻将的仿真环境,尝试了决策树、神经网络等多种AI模型,然后通过自我博弈的强化学习技术来训练模型。
那些还待在实验室,却可能影响未来的生物、太空、人工智能等前沿技术资料来源:微软亚洲研究院
从单局游戏来看,麻将的打法和计分规则比象棋、围棋更加复杂。以天凤的规则为例,桌面共有136张麻将牌,每位玩家只能看到自己的13张手牌和其他玩家打出过的牌,其他均为隐藏的未知信息。用博弈论的语言来讲,每个可观测状态平均对应着超过1048个隐藏状态。因此,仅基于这些已知信息无法解决策略上的问题,Suphx需要更强的直觉、预测、推理和模糊决策的能力。
此外,麻将牌型的组合也十分多样,有清一色、混一色、门清等等赢法,不同牌型的计分数额相差很大。而在打法上,麻将还存在吃牌、碰牌、杠牌、立直(指报告进入听牌,差一张牌即能赢牌的阶段)等动作,这些都会改变玩家的摸牌顺序。
从段位的判定角度看,天凤平台上一轮麻将游戏通常有8局甚至更多局的对决,每局结束后,4位玩家会被增加或扣除分数,最后累计得分排名——排在前两名的玩家会得到一定点数,第三名点数不变,垫底的玩家则会被扣去一定点数。这些点数直接决定玩家的“段位”,因此高手可能会有策略地输掉一些牌,以保证最后的排位成绩。“所以我们不能直接使用每局的得分作为强化学习的奖励反馈信号。”刘铁岩说道。“我们测试时基本上跑100万场游戏,才能明确地看出谁更厉害。这与围棋很不一样,围棋是五局三胜的。
最终,研究员们为Suphx设计了5个训练模型,皆基于网络层级数很深的深度残差卷积神经网络,它们分别是丢牌模型、立直模型、吃牌模型、碰牌模型以及杠牌模型。另外,Suphx還有一个基于规则的赢牌模型,用来决定在可以赢牌的时候是否执行赢牌。这样在对决时,Suphx会根据已知信息和预测信息,推断出还要摸几张牌才能赢牌、能够赢多少分、赢牌的概率等等。确定模型后,Suphx通过前期强化训练,达到了约等于天凤平台六段的段位水平。直到2019年2月,微软亚洲研究院与“天凤”达成合作后,Suphx才在平台上正式“出道”,参与到随机匹配的对决中。此外,天凤还向Suphx团队提供了千万量级的高段位玩家牌谱。
拿到真实的牌局数据后,Suphx的训练进入到第二个阶段——模仿学习。
首先,研究员们根据天凤上真实的牌局数据校验了Suphx的仿真模拟器,然后让Suphx模仿高手在牌局中的行为,通过监督学习来训练之前拟定的5个模型。需要说明的是,天凤对AI选手有很多限制。出于“公平”的考量,Suphx需要和人类选手的比赛行为一致,即一次只能参与到一场对决中,不能为了升级快而同时在多个房间打牌。另外,Suphx不能进入付费房间——“凤凰房”,只能在免费房间里对决。学习高手的牌谱后,Suphx的稳定段位很快提升到7.6段,已经高于平台上的其他两位AI选手。
模仿人类打法后,想要找到新策略,就需要Suphx回归到自我博弈的“强化学习”上,这便是第三个阶段。一场麻将对决中有太多的未知信息,因此,从当前牌面到最终策略之间的链路很不清晰,这就导致为Suphx设定强化学习的目标后,它很容易在训练过程中迷失方向,不知道怎样决策才能实现奖励的最大化。
麻将竞技平台“天凤”。
为此,微软的研究员采用了一种新型训练思路——让Suphx在自我博弈时,先从“上帝视角”掌握牌局的全部信息,以此引导AI模型的训练方向,使其更加接近完美信息意义下的最优路径,然后倒逼AI模型更加深入地理解可见信息,从中找到有效的决策依据,以便在实战时作出更准确的决策。这种从后向前推的方法被称为“先知教练”,类似的技术常被用于AI金融领域,最典型的案例是让AI利用未来真实的股票走势,构建最优投资组合,并由此倒逼AI学出更好的基于股票历史信息来决策的真实投资模型。
不过“强化学习”本身是一个AI延迟奖励、自我提高的过程,并不像监督学习一样可控,理论发展也不尽完善。在训练Suphx时,刘铁岩同样发现了其局限性——如果教练过于“先知先觉”,它就会将过于超前的信号给到Suphx,使得后者的AI模型并不能完全理解为什么要这么做。“虽然这个技术目前在Suphx的运行过程中还是很有效的,但我们也走了不少的弯路,才把Suphx从七点几的段位提升到八点几,这个过程很艰难。”刘铁岩说,当下的解决方法是,研究员为“教练”额外制定一些约束条件,使其不能过多脱离Suphx本身的AI模型。
在“先知教练”“全局奖励预测”等自适应训练下,2019年6月,Suphx在天凤平台上达到十段段位,也逐步形成了一些特有的“牌风”。比如Suphx喜欢在出牌时保留安全牌,这样未来其他玩家准备赢牌时可以降低自己“点炮”(即打出的牌促使对方赢牌)的风险。不过这些“防御性”打法只能让Suphx排名“垫底”的概率比其他人类和AI选手低仅仅几个百分点,这是因为“运气”在麻将比赛中很重要——即便是一个顶级高手,在手气极度不好的时候也无力回天。
现在,Suphx每天会在40块图形处理器(GPu)的训练环境下完成100万次以上的自我博弈训练,平均完成一次牌局训练的耗时是大约80微秒。“通常AI需要经过几千万次的自我博弈才会得到一个稳定的模型,这样算下来,如果我们换一种新的麻将规则生成新的模拟器,大概要用二十多天的训练时间得到一个比较稳定的AI模型。”刘铁岩说。
至于为什么Suphx的段位可以超过平台上的其他两位AI选手,刘铁岩给出的简单解释是,“爆打”的开发者本身是一位段位很高的天凤平台玩家,他将自己的知识编码到AI模型中,因此“爆打”更多使用传统机器学习和“启发式”的训练过程,而Suphx使用的是深度學习方式。另一位AI选手NAGA25虽然采用的是“神经网络”的深度学习方式,但没有使用强化学习。
从某种程度上来说,AI在麻将上的参悟能力,代表了其在棋牌类游戏中的最高潜能。“不管从状态空间复杂度还是游戏树复杂度上,麻将都远远领先其他棋牌类游戏,除非未来还会发明一些更加复杂的大众游戏,或者打个比方说,现在围棋的棋盘是19×19的,如果把它变成190×190的盘面,难度同样会上来几个数量级。”刘铁岩说。值得一提的是,游戏公司也推出过很多AI选手,比如《王者荣耀》《星际争霸》等等,这些战略性电子竞技,本质也是训练机器做“不完美信息博弈”,但其复杂度并不比麻将高。
“人类存在生理极限,因此在操控上,机器天生比人类玩家更准确,但人类在打麻将上没有这些局限性,操控键盘的技巧、出招快慢等不会对胜负产生影响,对决是智慧层面上的。”刘铁岩解释道。另外,策略类竞技游戏的角色、地图的随机性有限,机器通过学习可以分析出游戏本身的“套路”,而麻将几乎每一场牌局都是崭新的,其“随机性”远比这些游戏要高。
不过,打赢人类玩家并不是Suphx的最终目的。如今已经有很多麻将爱好者会专门学习Suphx的牌谱,研究员们也正在同天凤平台探讨,如何把Suphx改造成可以提供陪练服务的AI,比如让它为玩家复盘比赛,或者模拟不同段位的水平做定制化的陪练——AI界不乏这样的先例,比如腾讯人工智能围棋团队“绝艺”已经成为中国围棋国家队的训练伙伴。此外,研究员们也在推动让Suphx背后的AI技术外延,在金融、交通、游戏等需要复杂决策的领域落地,从而解决更多贴近人类真实生活的问题。
“其实现在回过头看Suphx的发展,人在里面更多扮演的是算法设计者的角色,而不是通过对弈来教会Suphx如何出招。”刘铁岩说。他认为,即便没有天凤平台的高手牌谱训练,Suphx依然可以达到现在的段位水平,只不过花费的时间会更长一些。“Suphx的能力更多是靠自我博弈获得的,这是一个很好的例子,它说明人工智能真的会改变很多事情,你不需要成为一个领域的顶级专家,只需要知道里面的基本规则和知识,然后利用好人工智能就能达到惊人的结果,这就是人工智能可以赋能很多垂直行业的原因。”