据国外媒体报道,人工智能技术越来越厉害,近日,一款名为“Pluribus”的人工智能扑克机器玩家在颇受欢迎的“德州扑克”游戏中击败了人类顶级职业扑克手。这是人工智能程软件首次在超过两名玩家的游戏中击败人类精英玩家。
这款扑克机器玩家的开发者,包括美国卡耐基梅隆大学团队以及社交网络公司Facebook旗下的人工智能研究团队。
据国外媒体报道,美国纽约大学研究游戏和人工智能的学者朱利安·滕力思(Julian Togelius)表示:“虽然从两名玩家增加到六名似乎是渐进的,但这实际上是一件大事。多人游戏是目前正在研究的其他人工智能游戏中一个空白的领域。”
据悉,扑克机器玩家Pluribus的开发团队过去已经开发了一款名为Libratus的人工智能软件,它在双人扑克比赛中击败了专业人士。随后,团队通过升级Libratus构建了Pluribus,并创建了一个只需要更少计算能力就能玩比赛的人工智能机器玩家。
在为期12天的训练中,这个机器玩家在一万多手扑克游戏中打败了15名顶尖的人类选手。
美国内基梅隆大学的诺姆·布朗(Noam Brown)和Facebook公司下属的纽约人工智能研究所表示:“许多人工智能研究人员曾经认为,用我们的技术不可能做到这一点。”
实际上,越来越多的人工智能软件已经涉足了人类游戏中,比如上述扑克机器玩家Libratus,以及谷歌机器学习公司DeepMind的围棋玩家。在两个玩家的零和游戏中,这些人工智能玩家被证明是难以战胜的。
在这些场景中,总是有一个赢家和一个输家,博弈论提供了一个明确的最佳策略。
但博弈论对于涉及多个利益冲突方、且没有明确的赢输条件的情形就没有那么有用了——这些情况反映了现实生活中的大多数挑战。
布朗表示,通过解决多人扑克游戏,Pluribus为未来人工智能解决这类复杂问题奠定了基础。他认为他们的成功是迈向自动化谈判、更好的欺诈检测和自动驾驶汽车等复杂应用的一步。
技术复杂性
为了解决六人扑克游戏的问题,布朗和一位同事从根本上改进了Libratus的搜索算法。大多数人工智能游戏玩家会通过决策树向前搜索,以在给定的情况下做出最佳的移动。比如,Libratus软件在选择动作之前会搜索到游戏的结束。
但额外玩家带来的复杂性使得这种策略不切实际。扑克需要使用隐藏的信息来进行推理,玩家必须制定出一个策略,考虑对手手中可能有什么牌,下一步会怎么出牌。
但是更多的玩家使得在任何特定时刻选择一个动作变得更加困难,因为这涉及到评估更多可能性。
关键的突破是开发出一种方法,让人工智能玩家Pluribus能够在只看后续几个牌不是比赛结束后做出正确的选择。
Pluribus使用一种类似DeepMind公司人工智能围棋玩家的的强化学习形式,从零开始自学。它从随机地玩扑克开始,计算出哪个动作赢得更多的钱而改进。每手牌结束后,它都会回顾自己的玩法,并检查如果采取不同的选项,看它是否能赚到更多的钱。如果替代方案能带来更好的结果,那么未来更有可能选择这一方案。
通过与自己对弈数万亿张牌,Pluribus创造了一种基本策略,可以在比赛中使用。在每个决策点,它都会将游戏的状态与自己的蓝图进行比较,并提前搜索一些步骤,然后决定是否可以改进它。由于它自学了在没有人类输入的情况下玩游戏,人工智能获得一些人类玩家通常不会使用的扑克策略。
AI效率
Pluribus的成功很大程度上归功于它的运行效率。当进行扑克游戏时,它只运行在两个中央处理器。相比之下,DeepMind最初的围棋玩家在首次击败顶级专业人士时,使用了近2000个处理器, Libratus使用了100个处理器。
当与自己对弈时,Pluribus在大约20秒内就能打出一只手——大约是专业玩家速度的两倍。
事实证明,游戏是衡量人工智能进步的一种很好的方式,因为机器人可以在与顶尖人类的比赛中得分,而且如果它们获胜,还能被客观上誉为超人。但是布朗认为人工智能的发展已经超出了他们的游戏范围。他说:“这一次是扑克比赛中最后的挑战。”
但是滕力思认为人工智能研究人员和游戏还有很长的路要走。他说:“还有很多未开发的领域。”很少有人工智能能够掌握一种以上的游戏,这需要综合能力而不是特定技能。
滕力思表示,不仅仅是玩现有的游戏,“设计游戏也是一个巨大的人工智能挑战领域。”