第三章 人机大战:AI真的会挑战人类?(第4/18页)

如前所述,在围棋、象棋等游戏中,人工智能可以和人类选手一样,在每一步决策前获得棋盘上的全部信息。这种限定规则,随时可以获取全部信息的游戏,我们可以称之为“完整信息的博弈游戏”。而在《星际争霸》或德州扑克中,人工智能和人类选手通常无法在特定时刻获得有关游戏的全部信息,比如,在德州扑克中,你无法知道对手的底牌是什么,你也不知道发牌员发出的下一张牌是什么,在这类“不完整信息的博弈游戏”里,人工智能必须像人一样,根据经验或概率统计知识,猜测对手底牌和下一张牌的可能性,然后再制定自己的应对策略。

显然,对于实现人工智能算法而言,不完整信息的博弈游戏在技术难度上要大得多。就在哈萨比斯的团队借助《星际争霸》磨炼下一代人工智能算法的同时,卡内基-梅隆大学的研究者选择了德州扑克作为他们攻克此类问题的出发点。

来自卡内基-梅隆大学的托马斯·桑德霍姆(Tuomas Sandholm)教授与他的博士生诺姆·布朗(Noam Brown)最早开发了一款名为Claudico的德州扑克程序。Claudico是一个拉丁文单词,对应于德州扑克中的一种特别的策略——平跟(limping),指的是翻牌之前,选择跟大盲注而不加注的策略。平跟这种策略,在人类德州扑克比赛中,使用的频率并不是很高,但据托马斯·桑德霍姆介绍,计算机通过学习发现,使用这种策略有许多好处。值得注意的是,托马斯·桑德霍姆的团队在研发德州扑克程序时,主要不是向人类职业选手学习打牌技巧,而是让计算机通过自我训练,自己寻找最好的方法。

Claudico从2015年4月到5月,在匹兹堡的河流赌场与人类选手同台竞技,在无限制投注的一对一比赛中,轮流与包括当时世界排名第一的道格·波尔克(Doug Polk)在内的四名人类顶尖高手过招。那次比赛历时13天,共计2万局牌。为降低运气成分,比赛使用的是重复牌局的玩法,即在不同房间的两张牌桌上使用完全相同但人机对调的两副牌。这次比赛,AI似乎还很稚嫩。比赛进行过半,人类就领先Claudico大约46万个筹码。最终,人类选手以大约73万个筹码的优势赢得了比赛。

Claudico在2015年初出茅庐的这次比赛以失利告终。这个剧情,有些像1996年IBM深蓝输给卡斯帕罗夫的那一次。与Claudico交过手的道格·波尔克说,Claudico与人类的打牌方式非常不同,“人类选手的下注数量可能是彩池的一半或四分之三,而Claudico有时只吝啬地以彩池的十分之一来下注,有时则以彩池的十余倍来下注。人类可不会用19000美元的下注去博取区区700美元的彩池”60。

2015年的失利并没有让托马斯·桑德霍姆教授灰心。2017年1月,教授带着一个名为Libratus的新版本德州扑克程序卷土重来,再战匹兹堡的河流赌场。像上次一样,新版本程序的名字Libratus也是一个拉丁文单词,对应于程序使用的均衡(balanced)策略——这一策略源自数学家纳什定义的一种完美博弈的模型。

托马斯·桑德霍姆教授解释说:“在有两名玩家的零和游戏中,如果有一人不遵从纳什均衡的策略,那么两名玩家获得的收益都将受损,但我们的系统不会这样。在此类游戏中,以纳什均衡的方式思考是最安全的。遵从规律的玩家将合理地获得收益,同时在任何地方都不会被对手利用。”61

这一次,比赛规则和2015年那次基本一致,比赛时间从13天延长到20天,仍基于无限制投注的规则,Libratus轮流与人类高手一对一比赛。人类团队计算总分,与Libratus的总得分比较胜负关系。不同的是,升级后的Libratus程序就像围棋棋盘上威风八面的Alpha Go一样,一上来就对四名人类高手形成了全面压制。AI从比赛第一天就一路领先,第6天领先优势虽一度缩小,但从第7天后,人类就再也没有机会缩小巨大的差距了。最终,Libratus领先的筹码数量达到惊人的176.6万美元!在德州扑克领域的人机大战中,人工智能完美胜出!