德扑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)推算出了均衡,即通过多次迭代计算博弈树中每个信息集的动作遗憾值和平均策略值,预测下一时刻的决策动作,使其是当前最小遗憾动作。