德扑AI之父:赢不赢柯洁,阿尔法狗都缺乏实际用处
人机对战无疑是4月10日的新闻焦点之一。一边在海南澄迈,德州扑克人工智能“冷扑大师”(Libratus)经过5日激战,在33000手一对一无限注德扑比赛中完胜中国“龙之队”的6名高手,斩获200万人民币奖金;另一边在北京的中国棋院,谷歌宣布被中国网民称为“阿尔法狗”的围棋人工智能AlphaGo将在5月下旬的乌镇对阵柯洁领衔的中国顶尖棋手,上演终极一战。
一南一北,一牌一棋,两则人机对战重磅消息在同一天出炉,虽然未必是有意针锋相对,但也足够令无心的观众相互比较。有些读者认为,连围棋这样高深的智力运动都早已被阿尔法狗拿下,扑克这样门槛低、上手简单的大众娱乐又何足挂齿呢?但反方则指出,扑克不是单纯靠计算的游戏,牵扯到很多心理上的博弈,有时甚至需要“飙演技”,AI能掌握这类游戏有些匪夷所思。
那么,德扑和围棋这两种智力游戏,对AI来说到底有什么区别?哪个难度更大一些?针对这些问题,澎湃新闻(www.thepaper.cn)就冷扑大师和阿尔法狗的相关资料进行了梳理与比较。
托马斯桑德霍姆(Tuomas Sandholm) 资料图
不过,冷扑大师的开发者、美国卡内基梅隆大学(CMU)计算机系教授托马斯桑德霍姆(Tuomas Sandholm)在听到阿尔法狗将来华挑战的消息后,评价非常的简单:问题的关键并不在于中国顶尖棋手能不能赢,而在于生活中几乎不存在像围棋这样的“完美信息游戏”,因而阿尔法狗也缺乏实用场景。
围棋和德扑对于AI来说,性质是不是一样的?
自1988年CMU开发的“奥赛罗”程序击败世界黑白棋冠军以来,人类就在棋类游戏上节节败退。1997年,IBM的计算机“深蓝”击败了国际象棋棋坛神话卡斯帕罗夫,使人机对战在当时达到了舆论高峰,其影响力绝不亚于去年阿尔法狗击败韩国棋手李世石。
计算机程序攻克这些棋类游戏的方法在本质上是一样的:搜索。下每一步棋都是一个决策点,在决策点上分化出不同的可能性,而整盘棋也就形成了一棵不停分叉的决策树。而计算机所做的,就是在每一个决策点上搜索胜率最大的那条路径。
因而难度主要取决于决策点的数量。决策点越多,搜索难度自然越大。黑白棋的搜索量只有10的十几次方,国际象棋是10的四十几次方,而围棋的搜索量达到了惊人的10的170次方。
不过,也正因为围棋的搜索量太大,完全精确的结果是不可能得到的。因而,阿尔法狗在蒙特卡洛树搜索算法(Monte Carlo Tree Search)的基础上,结合走棋网络(Policy Network)、快速走子(Fast rollout)和价值网络(Value Network)进行预测和评估,得到尽可能接近最优的解。虽然阿尔法狗这个过程中做出了巨大突破,但它本质上还是在搜索。
德州扑克与棋类完全不同。围棋是一种“完美信息游戏”,场面上所有的情况都黑白分明地摆在棋面上,双方掌握对等的信息。然而,德扑中隐藏了很多信息,是一种“非完美信息游戏”。玩家不知道对手手中是什么牌,不知道五张公共牌会开出怎样的结果,也不知道对手猜测自己握有怎样的手牌。
因此,虽然一盘德扑的决策点数量是10的160次方,要少于围棋,但光靠搜索是打不了德扑的。德扑由此跳出了在搜索量上的较量,对AI提出了另一个方向上的考验:应对隐藏的信息。
阿尔法狗和冷扑大师的原理有何不同?
谷歌曾在《自然》杂志上发表文章,公布阿尔法狗的几个基本原理,分别为:走棋网络(Policy Network),给定当前局面,预测和采样下一步的走棋;快速走子(Fast rollout),在适当牺牲走棋质量的条件下提高速度;价值网络(Value Network),给定当前局面,估计双方胜率;蒙特卡罗树搜索(Monte Carlo Tree Search,MCTS),把以上三个部分串联成一个完整的系统。
冷扑大师的算法则主要基于以下三个模块产生:
首先,纳什均衡是德扑算法的核心,即AI的目标是找到一个无论对方怎么做,自己都不会产生损失的策略。根据博弈论,像一对一扑克这种零和游戏永远存在这样的最优解,就像在经典的博弈论模型“囚徒困境”中,招认罪行就是一个无论对方招认不招认都最优的策略。因此,冷扑大师的开发团队提前在庞大的决策树上利用虚拟遗憾最小化算法(Counterfactual Regret Minimization,CFR)推算出了均衡,即通过多次迭代计算博弈树中每个信息集的动作遗憾值和平均策略值,预测下一时刻的决策动作,使其是当前最小遗憾动作。
此外,冷扑大师还有残局解算器(end-game solver)和自我强化学习这两个模块来辅助第一个模块。残局解算器会在残局时实时评估场上的情况,以判断第一模块中算出的纳什均衡是否符合实时情况。而自我强化学习会反思AI在比赛中的表现,找出曾被人类利用过的“套路”,清除这些可循的痕迹。
总体来说,阿尔法狗和冷扑大师的算法有三大明显不同。
第一,阿尔法狗的训练过程中用到了大量数据的深度学习,即通过大量给定的输入和输出形成稳定的处理。但计算机的处理过程本身是一个黑匣子。而冷扑大师没有用到时髦的深度学习,而是通过传统的线性规划提前算出纳什均衡,是一个“老式但好用的人工智能”(Good Old-Fashioned Artificial Intelligence)。
第二,阿尔法狗在深度学习过程中参考了数千万张人类棋谱,可以说是靠模仿人类高手起步的。虽然阿尔法狗也运用到了一些自我强化学习,但比重并不大。而冷扑大师完全是通过自我强化学习进行训练的。开发者从未教给它人类打牌的方法,只是向它描述了德扑的规则,由它“左右互搏”,摸索出德扑应该怎么玩。因而,冷扑大师的打法完全脱离了人类经验。值得注意的是,即将与柯洁在乌镇对战的阿尔法狗2.0将摈弃人类棋谱,完全采用一套自我摸索出来的下法。
第三,虽然阿尔法狗和冷扑大师都特别喜欢残局阶段下杀招,但它们的难度不一样。围棋下到残局,可走的招数越来越少,计算量也越来越简单;而德扑开到转牌和河牌时,可能性更多,局面变得更为复杂。因此,冷扑大师经常在转牌阶段做出长时间的停顿。
阿尔法狗和冷扑大师哪个更有用?
在冷扑大师的开发者、美国卡内基梅隆大学(CMU)计算机系教授托马斯桑德霍姆(Tuomas Sandholm)和其博士生诺姆布朗(Noam Brown)看来,这个问题的答案十分明显。在现实生活中,几乎不存在像围棋这样给出所有信息的完美情境,因而像阿尔法狗这样的算法也很难直接派上用场。
在现实生活中,我们遇到的事情会更像玩德扑:商业谈判时对方未知的底牌、房屋拍卖时竞争对手难测的举动、股票交易中一些隐藏的内部消息。桑德霍姆认为,德扑AI打开了靠人工智能解决随机事件和隐藏信息的大门。这样的AI,才有望离开虚拟的棋牌世界,成为人类在现实生活中谈判、博弈和投资的好帮手。
桑德霍姆自己就成立了一家战略计算公司,希望利用人工智能解决金融上的一些战略计算问题。首先,金融交易拼的是速度,AI在量化交易上具有巨大优势。其次,像股票交易中经常会存在一些隐藏的信息,AI能在交易者较少的情况下,帮助人类在隐藏的信息面前做出决策。
阿尔法狗和冷扑大师哪个更厉害?
诺姆布朗说道,每一种游戏从计算机科学的角度来说,都存在一些核心问题,而掌握这个游戏的AI相当于解决了这个核心的问题。围棋和德扑代表了两类完全不同的游戏,阿尔法狗和冷扑大师也在朝完全不同的两个方向探索。
只不过,围棋在“完美信息游戏”中属于高难度水平,因而阿尔法狗也在搜索这个核心问题上取得了巅峰成就。而冷扑大师刚刚打开了“非完美信息游戏”的大门,对于解决隐藏信息这个问题来说,德扑AI只是个开始。光就游戏而言,与德扑类似的奥马哈,就比德扑更为复杂一些。布朗说,他们对中国的麻将略知一二,麻将也是一种充满了隐藏信息的游戏。