APP下载

“冷扑大师”是如何打败人类的

2017-05-17袁斯来

第一财经 2017年15期
关键词:底牌残局扑克

袁斯来

在牌桌上,德州扑克老手许朝军很少遇到像“冷扑大师”这样的对手:保守地打了很多手牌后,没有任何预兆地,“他”忽然“原地起跳”,开始超额下注,或者干脆all-in(押上全部赌注)—没有情绪、没有动作、没有语言,出牌没有任何规律可循。

“冷扑大师”英文名为Libratus,在拉丁语中,这是“平衡及有力”的意思。这个德州扑克的人工智能(AI)程序由卡内基-梅隆大学的托马斯·桑德霍姆教授和博士生诺姆·布朗开发。

而曾经创立了轻博客网站点点网的许朝军,在中国的德州扑克圈里被称为“校长”,这一称呼可看作对其牌技的一种肯定。在4月10日结束的“冷扑大师vs.中国龙之队”德州扑克人机大战表演赛中,他也是6名“龙之队”成员之一,比赛第一天就和“冷扑大师”交过手了。

然而最终,在为期5天的比赛中,人类一共输了79.2327万分。9个单场比赛,人类牌手皆未取胜。

德州扑克的规则并不复杂,每个人2张底牌,5张公共牌,最后玩家用手中底牌加上3张公共牌比大小,最大的是皇家同花顺,即花色相同的10、J、Q、K、A,最小的是没有对子、同花和顺子的“高牌”。紧挨着发牌者顺时针的第一二个玩家会被强制下注,分别为小盲注和大盲注,大盲注金额是小盲注的两倍,后者也是牌桌上的最小赌注。这次“冷扑大师”对战“龙之队”的大盲注为100分,小盲注为50分,每个选手初始分为2万分。

“冷扑大师”和“龙之队”参与的是“一对一无限注德州扑克”,即两人对战且不限下注筹码。这种玩法由于人数少,每个人即使底牌并不理想也能采取激进的措施,因为对方手中有好牌的机会同样很小。相比多人对战,一对一的复杂度虽然有所降低,但对牌手的心理素质要求更高,同时打法会更加难以捉摸。

“一对一无限注德州扑克”的规则似乎能同时检验人和机器优劣势。德州扑克之所以精彩,原因就在于除了算牌的技巧,牌手的心理素质和性格也对比赛影响巨大。一个性格毛躁的人即使手中底牌并不理想,也可能選择“all-in”,把筹码全押进去“诈唬”,对手如果是个保守的人可能会选择弃牌认输。但一旦被识破,“诈唬”的人也可能会直接被“爆仓”出局。

因此德州扑克高手往往是“面瘫杀手”,ta的表情或动作很难让人猜到底牌状况。一个未经证实的说法是,有些牌手甚至会戴上大口罩上场。从这点上看,“冷扑大师”就像人类面对着的一个完全的“黑箱”。

许朝军说,自己虽然打了多年的德州扑克,但仍然会受情绪影响。尤其是当“冷扑大师”的“教练”桑德霍姆在选手身后观战时,许朝军的打法就会变得激进,他会跟着“冷扑大师”一轮轮加注,最终往往输掉牌局。“人类在打牌时会有马脚,而且随着时间推移,体力和脑力都会跟不上,但‘冷扑大师完全不会。它的确是一个非常强悍的对手。”许朝军对《第一财经周刊》说。

德州扑克对AI也提出了新的挑战。相比围棋,德州扑克更加难以掌握,原因就在于“非完整信息博弈”。

在围棋中,双方都能够看到彼此的走法,棋手只需要分析摆在明面上的信息,再想出策略就可以应对。但在不了解对方底牌的“非完整信息博弈”中,德州扑克的选手唯一知道的是自己的底牌,而对方的底牌、每一次公共牌开牌情况、对手的反应都是未知的,不同要素组合会引发天量的计算结果。虽然每一局德州扑克的决策点是10的160次方,少于围棋的10的170次方,但由于信息不透明,人工智能系统必须应对隐藏的信息,实际上增加了计算的数量和难度。

应对这种比赛,目前比较成功的德州扑克AI系统有两个,除了“冷扑大师”,另一个是阿尔伯塔大学、捷克理工大学和布拉格查理大学研究者开发的Deep Stack,主要采用深度学习技术。Google的围棋AI AlphaGo也是基于深度算法。Deep Stack曾在去年12月和33个人类选手4.4万手牌的比赛中获胜。

“冷扑大师”自我学习的核心理论却是基于古老的博弈论,它的英文是Game Theory,本来就来源于扑克牌等游戏。“深度算法在这样的比赛中最大的问题是,它缺少确定性。”桑德霍姆对《第一财经周刊》说。

所谓博弈行为,是指人每次决策都需要评估对方下一步的策略,从而思考自己的应对,并力图选取对自己最为有利或最为合理的方案。

而“冷扑大师”采用的算法更多是一种增强学习—它同样是机器学习技术的一种。这种算法的灵感来自于人类学习过程:在学习新事物时,人类会经历一个不断试错的过程,即人类在学习过程中会根据环境给予的奖励或惩罚,逐步形成对刺激的预期,最终形成最大利益的习惯性行为—就像孩子通过被灼痛来认识火苗,从而懂得回避,但一只飞蛾却会永远“不长记性”地扑向火苗。

类似于人类面对未知环境不断“试错”的过程,桑德霍姆和布朗训练“冷扑大师”了解游戏的规则,但并没有指导它如何玩游戏。“冷扑大师”会自己与自己“左右互搏”,在多次循环练习中,它最终形成了自己的策略。整个过程完全没有人为参与,所以,它的玩法跟人的玩法会非常不同。

扑克牌最终需要达到的是“纳什均衡”状态,又称为“非合作博弈均衡”。在德州扑克中,牌手能够知道的只有底牌和已经放在桌上的公共牌,但要猜测对手可能做出的决策,再选择自己的最优策略,使自己利益最大化。在某种情况下,无论是牌手还是对手都不能通过单方面改变决定而增加自己的收益,就达到了纳什均衡的状态。

根据博弈论,一对一的德州扑克比赛一定存在纳什均衡点,每一局比赛,“冷扑大师”要做的,就是尽可能接近这个均衡点,即“对手即使知道‘冷扑大师下一步打法,也无法让自己的利益最大化”。

为此桑德霍姆的团队首先开发了一种名为“虚拟遗憾最小化”(简称CFR)的算法,这是“冷扑大师”算法中的第一个模块。

遗憾值即事后最优选择的收益减去当时选择的收益,遗憾值最小化即采用随机策略,每局赛后分析出哪一步悔恨值最高,以后就少走这一步。再经过多次迭代计算后,“冷扑大师”就能掌握博弈树中每个信息集的遗憾值,保证下一刻能走出最不会后悔的一步。

在比赛前,“冷扑大师”已多次接受如何接近纳什均衡点的训练。在实际操作中,它还会根据比赛的具体情况,并通过学习对手的错误,不断修正自己的策略。这项技能则源于“冷扑大师”算法中的第二个模块—“安全嵌套式残局解算器”。残局解算器会在残局时实时评估场上的情况,以判断CRM算法运行时,纳什均衡是否符合情况。

这个残局解算器能辅助第一个模块的算法。由于只用实时分析残局情况,不需要分析所有的可能性,所以能提高计算效率。它能让“冷扑大师”在残局中利用对方的错误来完善自己的战略,最终找到平衡点。

实际上,Deep Stack的深度学习也包含了这种算法。不过与Deep Stack不同,“冷扑大师”没有选择以评估函数作为中介分析残局,而是直接从对手处获取信息,通过对方的失败来完善自己的战略,这是一个实时动态的过程。

和中国龙之队比赛之前,“冷扑大师”曾与美国队对战,当时参赛的一位选手Dong Kim就表示,冷扑大师好像知道他的底牌。在今年1月于美国匹兹堡举行的这场比赛中,“冷扑大师”与4个职业玩家打了12万手牌,最后赢走了接近总数的筹码。

“它会根据对手或强悍或保守的牌风调整策略,如果对手强势,‘冷扑大师没有好牌的时候往往会fold(弃牌),但一旦对手弱势,‘冷扑大师往往会在河牌阶段(最后一张公共牌被称为“河牌”;河牌圈即是摊牌前最后一次下注圈加注),甚至all-in。”许朝军说。

“冷扑大师”甚至还学会了似乎人类才比较擅长的“诈唬”(bluff)技巧。德州扑克比赛中,这是最常用的一种战术,即使没有好牌,也能虚张声势,通过加大押注甚至all-in的方法让对手弃牌。

人类牌手在诈唬时,除了分析对手的牌力,还会察言观色,如果对手是个保守的人,或流露出紧张的情绪,诈唬一般能收到成效。但“冷扑大师”的诈唬纯粹基于计算—只要达到纳什均衡的状态,冷扑大师就会加注。“这是算法自然而然的结果,并非事前程序的设定。”桑德海姆说。

这也是“冷扑大师”风格有时显得不合常理的原因。“‘冷扑大师有20%的时候表现非常激进,它常常会在河牌圈无缘无故超池下注,通过诈唬引起对手情绪的波动。在这个时候,人類绝对不能比它更激进,不然通常会输。”许朝军说。

桑德海姆对《第一财经周刊》透露,“冷扑大师”其实还留有“后手”。这次与“龙之队”的比赛,由于默认程序“已经表现够好了”,“冷扑大师”并没有使用第三个“自我强化”模块。这个模块让“冷扑大师”进一步升级,剔除掉比赛中被人类识破的套路,重新采用新的策略。在美国匹兹堡的比赛中,桑德海姆的助手布朗每天晚上会利用这个模块弥补“冷扑大师”的漏洞,让它更加难以对付。

如此看来,“冷扑大师”打败人类并不出乎意料—赛前的普遍预测也是“冷扑大师”会大概率获胜。但这场“并无悬念”的比赛的更大意义并不仅仅在于再次证明了人工智能的强大,或是普及德州扑克这种颇受商业人士喜爱的游戏。

在桑德海姆看来,诸如“冷扑大师”这类AI系统的开发,为人类借助机器处理非完美信息提供了一种新的方法及可能—除了德州扑克,在金融、安防、商业谈判这类充斥着不完整信息的领域,人工智能也能帮助人类做出更好的决策。

猜你喜欢

底牌残局扑克
残局不是结局
小扑克打出大品牌
无天于上2035 第9话 底牌
掀开命运的底牌
主题教育实践应发挥好“底牌”效应正能量
实战残局
实战残局
最环保的扑克版空气加湿器
巧摆扑克等