德州扑克人工智能打败人类

  • A+

德州扑克人工智能打败人类



Q:人工智能研究者为何选择扑克?


A:人工智能已经精通了多种棋类游戏,包括国际象棋和围棋等复杂的策略类游戏。而扑克比棋类游戏更为复杂,这是因为它有一处显著不同——选手必须在无法得知赛局所有信息的情况下,制定自己的策略。他们必须根据对下注等过程的观察,猜测对手有什么手牌,并考虑对手对于他们自己的手牌又有怎样的猜测。


这样的“不完全信息”博弈更贴近现实生活中解决问题的场景。例如,在拍卖和金融谈判中,就会出现类似情况。而扑克则成为了测试人工智能是否能应对这种情景的平台。


人工智能已经掌握了较简单的扑克玩法:阿尔伯塔团队已经于2015年基本掌握了双人有限注德州扑克。DeepStack和Libratus挑战的仍然是双人德州扑克,但下注、跟注的筹码没有上限——正因如此,无限注玩法对于人工智能程序来说更为复杂,也更难掌握。


1661132235877748.


Q:人机比赛过程如何?


A:去年11月开始为期四周多的比赛中,DeepStack与11位职业选手各比赛3000手牌,并以统计上显著的优势击败10名选手。


今年1月,Libratus则在约12万手牌的比赛中,击败4名更为优秀的专家级职业选手。比赛最终结束时,Libratus共有约180万美元的虚拟筹码。


Q:这些人工智能背后有什么数学原理?


A:博弈论。两个人工智能都需要摸索出在任何情况下,无论对手如何应对,都能必赢的策略。根据博弈论理论,在一对一扑克这样的零和博弈(即一方有所得,另一方必有所失)里面,这样必赢的策略必然存在。人类选手可能会利用较弱对手的失误而赢得很多筹码,而使用上述策略的人工智能则不在乎赢取筹码的多寡——对于它而言,只要赢得牌局就好。这意味着它不会因为对手的意外之举而不知所措、自乱阵脚。


此前挑战扑克的人工智能都是尽可能提前制定策略,计算大量“博弈树”,列出赛局各种可能性的应对办法。但是存在太多的可能性——共有10^160个——不可能全部映射。因此,研究人员最终只处理部分可能情形。赛局中,人工智能会将当前情形与曾经进行计算过的情形相比较,找出最接近的情形,将对应的解决方案进行“转化”,再运用到当前赛局中。


与之不同的是,DeepStack和Libratus已经可以实时计算解决方案——就与下国际象棋和围棋的计算机一样。


1589864004919376


Q:两个人工智能使用的具体方法有何不同?


A:DeepStack并非提前列出完整博弈树,而是在牌局中的各个决策点仅重新计算少部分的博弈树,预测可能出现的一些情形。


这一办法利用了深度学习,这是借鉴人类大脑的神经网络构造而发明的一种技术(有赖于此,计算机得以打败全世界最优秀的围棋选手)。


DeepStack经历逾一千一百万种不同的赛局情形,不断学习,形成了“直觉”,已经能够在赛局的某一节点预判赢率。因此,它只需要较短的时间(仅约5秒)来计算较少的可能性,并实时做出决策。


Libratus团队还没有将具体方法发表出来,因此目前还不清楚Libratus具体工作原理。不过已经清楚的是,在牌局早期,Libratus借鉴曾经进行计算过的情形,使用“转化”法,然后做出决策;而当牌局进行到后期,人工智能可以获悉更多信息时,再将策略进行优化。至于其他时候,随着牌局的进行,可能性越来越少,Libratus也会对解决方案进行实时计算。


Libratus同样加入了一种特殊的学习元素。它的开发者为它增加了自我优化的模块,可以自动分析它的玩牌策略,了解对手如何利用其弱点。在此基础上,他们再对Libratus方法上的漏洞进行修复。


这两种方法需要拥有明显不同的计算能力:DeepStack受训175核年——相当于一个处理器运行175年、或几百台计算机运行数月的工作量。而在牌局中,它仅需要一部笔记本电脑即可进行操作。Libratus则不同,它在赛前和比赛中均使用超级电脑,大约相当于2900核年的工作量。


1587436349251277.jpeg


Q:人工智能是否也会虚张声势?


A:会。通常人们认为虚张声势是人类才会做的行为,至于计算机,它们不会去了解、预测对手行为,而是完全基于牌局中隐含的数学原理而进行决策。虚张声势通常只是为防止对手通过自己的下注规律猜到自己手牌而采取的一种策略。


Q:那么,哪个成果更为突出呢?


A:见仁见智。有关专家对于两个方法的复杂性有些争议,但总体来说,两个人工智能都玩了足够多手牌,均已取得统计上显著的胜利——并且都是与职业选手进行比赛。


Libratus玩了更多手,但DeepStack则不需要这么做,因为其团队使用了一种复杂的统计方法,可以通过较少的牌局就能取得显著结果。Libratus击败的专业选手要更为优秀,但平均来说,DeepStack获胜的优势更大些。


Q:两个人工智能会进行对决吗?


A:也许会。不过,两者计算能力存在巨大差距,因此在牌局中的玩牌速度有所不同,这可能是比赛所面临的一个症结。因此,如何制定让双方都会同意的比赛规则就成了难题。


阿尔伯塔大学计算机科学家、同时也是DeepStack开发者之一的Michael Bowling表示,他们的团队愿意与Libratus进行比赛。可是Libratus的开发者、卡内基梅隆大学的Tuomas Sandholm则表示,他希望DeepStack能够先打败Baby Tartanian8,这是他们团队之前设计的人工智能,功能没有Libratus强大。


Bowling强调,比赛将存在一个重要的局限:赢得赛局也不一定意味着人工智能性能更好。两者都尽力打出完美比赛,但能够实现这一目标的策略在正面交锋中未必总是存在。一方人工智能有可能无意中发现另一方策略上的漏洞,但这并不能说明另一方的整体策略上存在更多或者更严重的漏洞。Bowling说,除非一方以较大优势获胜,“否则我觉得,这样的比赛不会如人们期待那样,提供很多有用的信息”。


fcc761bd621a4544e4c887539df7a46e.jpeg


Q:人工智能掌握扑克玩法,是否意味着网上扑克游戏的终结?


A:不是。虽然顶级选手已经开始进行人机对战训练,但许多网上娱乐场禁止玩家在赛局中使用计算机。


Q:现在,计算机已经达成了人工智能历史上的又一座里程碑,那么还有哪些领域没有被攻克呢?


A:至今仍存在着几座高峰等待人工智能去攀登。从某种程度上来说,这是由于许多尚未被人工智能掌握的游戏,比如桥牌,其规则更为复杂,目标也就不那么明显。


两个团队接下来的研究主题自然是掌握多人扑克。这几乎意味着一切从头开始,因为零和博弈理论不再适用于这一领域。例如,在三人扑克中,某个选手的失误,有可能会间接妨碍对手,而不是让对手获益。


不过Bowling也提到,哪怕理论不再适用,深度学习所形成的直觉,仍有望帮助人工智能找到解决方案。他说,他们的团队最初在有限注三人德州扑克中尝试类似办法时,结果就出人意料的好。


另外一个挑战则是训练人工智能在不知晓游戏规则的情况下进行游戏,并且在游戏中逐渐自己发现游戏规则。这样的场景更真实地反映了人类在现实世界处理问题时的情形。


德州扑克







德州扑克