人工智能系统战胜德州扑克职业选手

  • A+

人工智能系统战胜德州扑克职业选手

据《科学》网站 2017年3月3日报道,人工智能早已能在国际象棋比赛等游戏中战胜人类顶级选手,2016年,又在围棋对弈中战胜了人类专业选手。最近,又有两种人工智能(AI)系统在德州扑克比赛中打败了人类职业扑克选手,它们分别是DeepStack和Libratus。近期,DeepStack研发团队对该系统利用新算法与深度机器学习技术打败人类扑克选手的技术因素进行了深度解读。


1660531315928280.

最近有两种人工智能(AI)系统在德州扑克比赛中打败了人类职业扑克选手,它们分别是DeepStack和Libratus


背 景

国际象棋与围棋都是完全信息游戏,意味着游戏双方都完全清楚对方所处的局面,这对于设计相应的人工智能系统来说,是一个很大的帮助。但德州扑克与此不同:其玩家需随机面对2张不公开的底牌;每一张公共牌发牌后,玩家都需要决定是否下注、过牌(Hold)或弃牌。鉴于游戏本身的随机性以及2张底牌的私隐性,玩家下注要基于对对手可能举措的猜测。因此,不同于可以从棋盘状态及对手所有潜在走法中推断出一种取胜策略的国际象棋,德州扑克需要人工智能系统具有人类所谓的直觉。



DeepStack

加拿大阿尔伯塔大学计算机科学家、DeepStack研究团队的迈克尔·保林表示,传统人工智能游戏系统的目标是尽可能计算出一个游戏的可能结果,然后利用从其他获胜游戏中搜寻数据的公式,排列出策略选项。这种方法的不利之处在于,为精简可用数据,算法有时会将并不真正可行的策略组合在一起。DeepStack则通过计算仅仅未来几步而非全盘游戏来规避令人分心的数据,然后再随着新信息的出现不断更新算法。当DeepStack需在对手下注(Bet)或过牌前以及没有接收到新信息的情况下做出决定时,深度学习就会发挥作用:通过机器学习获取知识的DeepStack神经网络可以缩小算法所生成潜在局面的范围,从而使DeepStack的反应更快、更精确,原因在于其已通过训练学习了这一行为。为训练DeepStack的神经网络,研究人员要求该程序解决1000万个随机生成的扑克游戏局面。而为了测试DeepStack,研究人员让其与国际扑克联合会选出的33位职业扑克选手、在为期4周的时间内、通过44852场一对一无限注德州扑克比赛进行对决。在排除运气而非策略导致的获胜之后,研究人员发现,DeepStack的最终赢率是486mbb/g(Milli-big-blinds per Game),几乎是人类职业扑克选手所认为可观利润的10倍。



与 Libratus 对比

美国卡内基·梅隆大学研究人员设计的扑克人工智能系统Libratus也在为期20天的时间内,通过12万手的对决,打败了4名世界顶级德州扑克选手。Libratus与DeepStack研究团队均表示,各自的人工智能系统能战胜人类,是因为得到统计学上重要发现的支持。不过,二者的主要区别在于,Libratus没有使用机器学习,需要更强大的运算能力支持其算法,并需要对每次结果都进行解算,才能生成一种策略。DeepStack不需要如此强大的运算能力,在便携式电脑上即可运行。


德州扑克







德州扑克