沈浩:博弈论在人工智能中的应用
发布时间:2019-11-18 8:38:10 点击量:373
最近看到一篇不错的文章,让沈雨尘帮助整理一下,与同学们分享!
-
什么是博弈论?它是如何应用到人工智能(AI)中的?
-
人工智能中的博弈论是一个迷人的概念,每个人应该有一定了解。
-
我们希望通过使用案例说明对博弈论进行了深入研究,并将其关联到人工智能方面。
让我们从一个简短的问题开始 —— 你是否认识下图中的两人?
相信你一定认识其中的一个。对于大多数早期数学爱好者来说,电影《美丽心灵》一定会烙印在我们的记忆中,而诺贝尔经济学奖得主,罗素·克劳(上图左)就在电影中扮演主角之一的约翰·纳什。
在那个标志性的场景“不要追求金发女郎”中,约翰·纳什引用道:
“….the best outcome would come when everyonein the group is doing what’s best for himself and the group.”(当团队中的每一个人都在做对自己和团队有利的事情时,就会得到最好的结果。)
许多人认为,这标志着着名的“纳什均衡”的发现。这的确是标志性的,但并不完全正确。实际上,这个场景描绘的是“帕累托最优”的发现过程,但它仍有助于我们理解博弈论。
在本文,我们将鸟瞰博弈论,并将讨论如何将博弈论应用于人工智能领域的基本思想。我们将以即使是初学者和非技术人员也可以理解的方式进行解释。
-
什么是博弈论?
-
博弈论中的纳什均衡
-
博弈的种类
-
人工智能中的博弈论
-
博弈论小测验!
所以,什么是博弈论?相信你一定接触过这个概念,但可能从没有真正深入其中。不过,现在的人工智能领域中,这是个有趣且具有启发性的主题。
“博弈论可以被定义为 —— 对两个或两个以上的理性Agents或参与者之间可能的相互作用的建模。”
本文中,我们将Agent理解为一个主体(行为人)。
在博弈论中,我们必须强调“理性”这个关键词,因为它是博弈论的基础。但是“理性”究竟是什么意思?
我们可以简单的将“理性”理解为,每个主体(Agent)都知道其他主体也是理性的,并且拥有与该主体同等的理解与知识水平。
此外,“理性”也意味着,在考虑到其他主体行为前提下,该主体总倾向于得到更高的报酬或回报。
简而言之,每个主体都是自私的,并试图将回报最大化。
“我知道,你知道我知道你是理性的”(左),“是的,我知道”(右)
既然我们了解了“理性”的意义,让我们来处理一些与博弈论有关的关键词:
-
博弈:一般来说,博弈包括一系列的玩家、动作、策略和最终的报酬,例如拍卖、国际象棋、政治问题等等
-
-
报酬:报酬是所有玩家在达到某种结果时的得到的回报,它可以是积极的,也可以是消极的。正如我们之前所讨论的,每个主体都是自私的,希望得到最大化的报酬:
“选举中,党派得到的席位数”(左),“成功的手术台数”(中),“是否能成为族群领袖(右)”
纳什均衡是人工智能博弈论的“基石”。纳什均衡是一个由玩家选择的行为:“没有一个玩家愿意改变他们的行动,不使自己处于纳什均衡,意味着没有发挥到最佳状态。一旦玩家违背纳什均衡,就意味着,对方将有机会改变策略使你的收益变差。”
或可以如此理解“考虑到其他所有主体都是理性的,他们会为自己选择最佳的行动,那么达到纳什均衡的行为,对我来说就是最佳对策。”
为了了解行为中的纳什均衡,让我们来解决博弈论中最常见的问题:囚徒困境。这是一个经典的案例,它说明了在主体只关心自身利益的情况下,为了共同利益或互惠而合作行动是十分困难的。
在这个案例中,存在两个犯人,Alan和Ben,他们因同一罪行而被捕,并被关押在两个不同的审讯室。他们有两个选择:
-
-
假设他们都做出了选择,那么,就会产生4种不同的结果:
在这种表示中,收益以(Alan收益,Ben收益)的形式表示。我们以列表示Alan的选择,行表示Ben的选择。
他们的选择都将导致负收益,因为根据选择,他们将被监禁的时间是预先确定的(尽管不是他们所希望的)。
-
-
如果其中一人承认罪行,而另一人沉默,则坦白者将被释放,而另一人将被判处15年监禁
-
这个困境来源于两个囚犯都不清楚另一人的选择,那么在这个情况下,什么样的行动将达到纳什均衡?理想状况下,两个犯人将合作保持沉默。(红框中的选择)
但我们也知道,犯人一定希望自己被判处最少的监禁时间,以得到最大利益。因此,在即使保持沉默,也将被判处1年监禁的情况下,实际上会发生的将可能是:
如果Ben承认了罪行,那么坦白是更好的选择(10年监禁好于15年监禁);同时,如果Ben保持沉默,那么坦白同样是最好的选择(释放好于1年监禁)
我们可以看到,这个博弈矩阵与Alan所想的完美契合。那么,如果Ben如果也在进行博弈选择,他的博弈矩阵将是:
让我们假设Ben也像Alan一样经历了理性的思考过程。那么同样的,Ben将得到相似结论——无论Alan怎样选择,他总可以从坦白中受益。如果我们将两个囚犯的理性思考一起考虑,结果将是:
以结果来说,最好的对策是{承认,承认}。即使他们中的任何一个不采取这个行为,他们也只会得到比这个策略更糟糕的结果。因此,{承认,承认}是一个纳什均衡。
“因为都承认了罪行,我们要在监狱10年。如果我们没承认,就只需要1年”。
“是的!但如果我不承认,你一样会为了不去监狱而承认。那么我就要去监狱15年。我很庆幸我承认了。”
很有道理,对吧?对于纳什均衡来说,我们可以得到:对于任何博弈,它都是一个“无悔”的解决方案,但却并不一定是最理想的。
我们刚刚看到的是囚徒困境的一个例子,两个囚犯必须同时做出一个决定,用博弈矩阵的形式来表示。这些类型的博弈通常被称为“标准式博弈”。在博弈论中,根据不同的标准,博弈可以分为许多不同的种类。
直观上,我们可以根据博弈中的主体是以竞争还是合作为目标来区分博弈的种类。
政治竞选是竞争博弈的好例子,一个候选人的报酬就意味着另一个候选人的失败。另一方面,篮球比赛可以被看作是一场合作博弈,每个运动员彼此合作以赢得更多的回报。
为了理解这一点,我们可以以一个叫做“性别之战”的问题为例。假设Bob和Amy是两个十分要好的朋友。他们很清楚彼此的爱好,足球和舞会。他们可以一起商量这个周末的游玩计划,或者给对方一个惊喜。如果他们都计划给对方惊喜,那么他们就不会知道对方的周末计划。以下博弈矩阵描述了4中不同的情况。博弈矩阵清楚地表示,如果Bob和Amy没有成功碰面,那么他们都不会得到回报。这是一个同时性的博弈案例,在这个博弈中,两个玩家同时行动,并且事先不知道其他玩家的行动。
另一方面,如果他们告诉对方各自的计划来进行行动,博弈将成为以下形式:我做出最初的决定, 因此我的决定节点在树顶。我可以在足球(左枝)和舞会(右枝)之间选择”。 “我有两个选择节点。但是一旦Amy告诉了我她的选择,那么将只有一个节点与我相关。如果她选择了舞会,那么我就会在该选择节点进行选择。”这是一个扩展型博弈或“回合制博弈”的案例。在这种博弈中,每个玩家都可以看到对方的行动。另一个更直观的例子,石头剪刀布游戏就是同时型博弈。另一方面,井字游戏就是扩展型博弈。
在博弈论中,参与者往往不能得到完全的信息。他们可能不知道其他玩家的所有可能决策或潜在收益。玩家也可能不知道他们在和什么样的人打交道,或者他们的动机是什么。
井字游戏和国际象棋就是最好的例子。当涉及到现世界时,完美信息博弈是非常罕见的。此外,机器学习和深度学习方法在这种博弈中表现出色。
在这种情况下,主体知道其他主体的性质和动机,以及在所有可能结果中会得到的回报。但不知道其他主体正在进行的行为。这里,将军知道每一种可能情况下敌人的动机和回报。但是他无法知道敌人藏在哪里。因此,将军不知道他所在的确切决策节点(虚线框)。不完美信息博弈在现实世界中经常出现。
不完全信息是一种非常接近真实世界的模型。主体没有关于其他主体的“类型”信息。即使任意特定主体能够知道其他主体采取的行动,他也不知道其他主体的动机,或采取这种行动的回报。
扑克游戏是不完全信息博弈的一个典型案例,因为玩家不知道对手手中的牌是好是坏。
我们特别关注扑克游戏中的博弈,因为它不完全信息的性质很好地代表了真实世界。因此,不完全信息博弈问题一直被认为是人工智能领域的一个基准问题。
那么,以上的一切在人工智能的背景下意味着什么。这些不同类型的博弈和信息与人工智能有什么关系呢?就人工智能而言,博弈论的基本作用是帮助决策。考虑到“理性”是博弈论的基础这一事实,这并不是很难理解。实际上,博弈论已经开始在人工智能领域占据一席之地。
生成对抗网络(GANs)就是这样的一个重要应用。GANs被YannLeCun认为是:“过去20年中机器学习领域最酷的想法。”(Yann LeCun是人工智能和深度学习领域的领头人之一)。那么博弈论在GANs中是如何起作用的呢?为了回答这个问题,我们首先要了解GANs的基础知识。一个GAN就是两个神经网络的组合,即:
生成器是一个产生随机图像的神经网络。另一方面,鉴别器将试图对生成的随机图像进行分类——应属于给出的数据集?或只是一个生成的假图像。
如果鉴别器将生成的图像分类为假图像,那么生成器将调整其参数;另一方面,如果鉴别器将生成的图像分类为来自数据集,那么鉴别器将调整其参数。
这种竞争过程将一直进行,并持续到无法再改进的状态。这个状态就是“纳什均衡”。从本质上讲,这是两个神经网络之间的竞争博弈,但在竞争中,它们不断的优化自己以得到纳什均衡状态。博弈论的核心应用是不完美信息博弈。扑克游戏是一个经典的例子,也是人工智能应用在不完美信息状态下的基准问题。
在现实世界中,不完美信息是非常重要的。但至今为止,机器学习和深度学习在不完美信息博弈方面的成功十分有限。
德州扑克无限制版就是一个不完美信息博弈的案例,因为其他玩家隐藏了所持牌的信息。考虑到这个扑克游戏中,所持牌有10的161次方种可能,而可观测宇宙中的总原子数也只是10的82次方,可见这是一个非常具有挑战性的问题。
因此,使用暴力方法对这个游戏进行建模是完全不可能的。当然,也有人尝试过使用深度学习和深度强化学习,但到目前为止知识效果平平。
但是由卡内基梅隆大学的教授Tuomas Sandholm和人工智能研究员Noam Brown开发的,名为 Libratus的人工智能程序表现优于以前的任何方法。在超过20000手扑克牌中,Libratus战胜了世界冠军。Libratus的神奇之处在于它不使用任何机器学习的方法!
博弈论就是Libratus的核心思想。与深度学习和强化学习等相比,它并不需要极高的计算能力。为了更多地了解博弈论是如何应用到Libratus中的,以及博弈论在未来人工智能中的引用。
另一方面,人们经常争论机器学习和深度学习是否可以用于现实中的案例,因为现实世界中的案例往往是是不完全信息博弈,大多数机器学习和深度学习方法都会遇到很大困难。博弈论方法方法由于其在现实世界中的普遍性而逐渐得势。最好的例子就是“AI For SocialGood”项目的负责人Milind Tambe所做的工作——利用博弈论概念处理现实世界中的问题,比如:
本文详细讨论了博弈论。就让我们以一个快速的突击测验来结束吧!在0-100之间随机选择一个数字。如果你给出的数字是这次测验中所有玩家给出的数字平均值的三分之二,那么你就将获胜。(提示:你应该考虑其他玩家也和你一样理性)
你能回答这个问题吗?
在这篇文章中,我们讨论了博弈论的基本原理,并简要地涵盖了必要的主题。我们甚至谈到了博弈论是如何被应用到机器学习领域的,以及它在现实世界中的应用。但这只是一篇介绍性的文章——在以后的文章中,我们将更深入地探讨博弈论,以及如何将其应用到人工智能领域,并从技术角度进行阐述。