浅谈囚徒困境与游戏设计

发表于2019-03-03
评论5 6.3k浏览


 前言

我们在制作游戏时,会用到一些开发工具,诸如unity3DUnreal4等游戏引擎,这些工具会大大提高我们的工作效率,进而提升我们工作的效益。然而实际上,设计游戏也是有很多辅助工具的,这些工具可以帮我们产生灵感或者辅助分析。

本文便是简单聊聊博弈论这个工具。博弈论有78个博弈模型,我们就不全部举例了,仅通过 “囚徒困境”以及其相关的博弈模型来讨论玩家行为及其带给设计者的一些意义。

//第一、二部分是基础概念解释,对囚徒困境有一定了解的童鞋请自行跳过。

第一部分纳什均衡

在聊囚徒困境这之前,我需要描述一下纳什均衡。

在《博弈论》所有博弈模型中的参与者,都被定义为不信任其他人的理性参与者。因为博弈的目的实际上是为了让自身所获价值最大化,因而会有趋向于纳什均衡的趋势。

纳什均衡是指博弈中这样的局面,对于每个参与者来说,只要其他人不改变策略,他就无法改善自己的状况。在这里我们不咬文嚼字,举个例子大家就会明白什么是纳什均衡。

假设鱼骨头要给两个小朋友小伟和小强分一块蛋糕,由于小伟和小强是为了让自己利益最大化的理性人,所以他们都想要一整块蛋糕。那么不管鱼骨头怎么分,总会有一方不满意自己的结果。于是鱼骨头为了公平起见,提出方案:小伟来切,小强来选。在这种方案下,小伟必定会切成尽可能的均等2份,因为他知道不管他如何切,小强都会选最大的那一块,而自己只能拿到最小的那一块。这便是著名的极小极大原理,而这种状态,也便是一个纳什均衡。

//请原谅我拙劣的鼠绘orz

纳什均衡在博弈中并不是让所有人都满意的一个状态,但是是对所有参与者而言最好的一个状态。并不是所有博弈都会有纳什均衡,不过纳什均衡会是博弈模型趋向于达到的一个结果。关于纳什均衡在此就不多加赘述了,因为只是为了更方便的描述囚徒困境。

 

第二部分囚徒困境

囚徒困境是一个非常著名的二难推论,我们可以用以下的情景来描述它:

有两个嫌疑犯作案后被警察抓住,分别关在不同的屋子里接受审讯。警察知道两人有罪,但缺乏足够的证据。警察告诉每个人:如果两人都抵赖,各判刑一年;如果两人都坦白,各判八年;如果两人中一个坦白而另一个抵赖,坦白的放出去,抵赖的判十年。

 

嫌疑犯B选择坦白

嫌疑犯B选择抵赖

嫌疑犯A选择坦白

A8年,B8

A被放出去,B10

嫌疑犯A选择抵赖

A10年,B被放出去

A1年,B1

这个二难推论描述了一个个人利益与集体利益相悖的情景。参与者在这里的抉择是难以界定的,关于什么样才是纳什均衡一直争论不休,因为其他条件对结果影响很大。比如参与人数条件如果变化,结果就可能非常不同。另外假设只有2个参与者的情况下,从数学角度来看双方都选择坦白还是都选择抵赖也因囚徒困境的重复次数变化而变化。更重要的是,真实社会中的人行为跟博弈论中定义的“理性人”的行为总是会存在偏差。以上种种,便使得囚徒困境的模型研究变得复杂起来。

如果不考虑那么复杂,而且整个博弈只会发生一次,那么结果是两者都会趋向于背叛。但如果整个博弈会发生无限多次,结果会是两者都趋向于合作。此部分只是为了介绍囚徒困境的概念,关于参数变化引起的纳什均衡的变化我们就不过多讨论了,因为过于复杂。

 

第三部分囚徒困境与《绝地求生》

接下来我们拿《绝地求生》这款游戏中玩家的行为来稍作阐述。游戏规则我就不赘述了,不了解的童鞋可以去自行搜索,关键词可以是“大逃杀”。了解游戏规则的童鞋应该知道,在《绝地求生》中,游戏规则并不鼓励不同队伍之间的玩家进行合作,因为游戏需要所有队伍之间都是敌对的,否则游戏无法良性循环的进行下去。可是游戏规则并没法直接禁止不同的队伍之间进行“组队”,而且不同队伍进行组队的话由于有多倍人数的优势,强度会呈梯级增长。与之相反的是,两个队伍如果选择交战,则较高概率会出现比较高的战损,是两败俱伤的行为。虽然在该游戏中,不同队伍在该游戏中,不同队伍之间进行合作(组队)会被称之为“非法组队”。不过系统很难界定玩家是否真的进行了“非法组队”,只能通过玩家举报来进行一定程度的惩罚,但是这个惩罚的必然性是很低的,不足以产生足够的威慑力,所以我们可以近似的看作游戏规则并没有阻止不同队伍进行组队。

我们不妨把游戏中每个小队都看成第二部分的囚徒,他们之间可以选择合作(组队),也可以选择背叛(交战)。那么为什么玩家实际游戏中很少跟不同队伍的人组队一起游戏呢?原因其实很简单,游戏中的不合作大多源于不信任。其实不仅不同队伍的人不容易信任,单个玩家其实也很难信任陌生的队友,这种不信任会使得玩家并不会轻易合作,这里可以直接套用第一、二部分内容,就不多赘述了。

那么玩家是不是就不会“非法组队”了呢?然而实际情况并不那么乐观。

我们经常可以看到一些大神主播在游戏中遇到其他队伍的水友,并且与水友一起合作,战至最后由系统决定谁是最后的胜者(一群人围着一颗即将爆炸的手雷,看系统判定谁最后被炸死谁就是获胜者)。水友通过有节奏的枪击声音,汽车的喇叭声,或者一些反常的举动,来博得主播的注意。在主播知道你并无恶意之后,就可以打开附近语音聊天愉快的交谈和合作了。鱼骨头在玩该游戏时,也跟其他队伍的人合作过,其实也都是从附近语音交谈开始的。

我们再回到第二部分对囚徒困境的描述,里面提到了一个条件,两个囚徒被关在了不同的屋子。这个目的很明显,就是为了让双方无法交流。既然无法交流,那么两个囚徒之间则很难相互信任,因而就很难选择合作。

因而我们便可以得出结论,那就是如果《绝地求生》这类大逃杀游戏不希望非法组队的发生,我们应该让他们交流的机会尽可能的少。比如取消附近语音。我们可以用另一款大逃杀游戏《堡垒之夜》与之对比,在该游戏中,玩家无法跟其他队伍的人直接进行有效的交流,因而该游戏中的非法组队则要少得多。抑或是我们来看最近热度比较高的《APEX英雄》,你也是无法同本队以外的人沟通的。虽说玩家仍然可以通过有节奏的枪声来跟对方发送某些暗示,但是除非两人都懂摩斯密码,否则这种沟通的难度明显过大,效率也比较低,不会是一个很好的选择。

不过值得一提的是,沟通是解除囚徒困境的有效途径,但这种沟通产生的合作并不具有稳定性。为了让这一切具有稳定性,很多时候我们会需要合同,甚至是法律。比如纳税就是一个典型的“囚徒困境”,纳税人个人纳税,对个人利益而言是损失的,但是不纳税对集体而言是一种损失。我们无法保证所有人都那么大公无私,因而我们需要税法。

 

第四部分胆小者博弈与全服第一

除了囚徒困境之外,鱼骨头还想阐述一下胆小者博弈模型,这个模型和囚徒困境的模型很类似,就是本文第二部分那个囚徒困境的表格中某些收益参数发生了变化,具体是什么变化可以留待大家去思考。

胆小者博弈设想了一个场景,在一条长长的笔直的大路的两头分别有一个玩家驾驶者一辆汽车,两个玩家会以飞快的速度向马路中间开去,如果他们都不避让的话,两车最后会直接相撞,驾驶者不死即残。但是如果有人在相撞前避让了,那么选择避让的那名玩家则会判负,被世人称之为胆小鬼。这个关于获胜和面子的博弈模型,便是经典的胆小者博弈模型了。

这个博弈模型最早由柏兰特·罗素(Bertrand Russell)在冷战时期提出,在当时一触即发的核战争的背景下,美苏的军备竞赛被描述成这样一个胆小者博弈模型。套用这个模型,我们很容易联想到玩家在游戏中争夺“全服第一”的行为。两名或者多名玩家在争夺全服第一时,都需要不断的往游戏里砸钱,这像极了另一个博弈模型,叫做一美元拍卖陷阱

一美元拍卖陷阱是由耶鲁大学的博弈论专家马丁·舒比克(M.Shubik)提出的。这个博弈模型的描述如下:在某个大型场合,一位拍卖人拿出11美元钞票,请大家给这张钞票开价。这个拍卖有两个规则:

    每次叫价的增幅以5美分为单位,出价最高者得到这张1美元;

    出价最高以及第二高的人都要向拍卖人支付出价数目的费用

这个博弈模型咋一看没什么特别的,当有人出价1美元时拍卖应该到此为止了。然而实际实验中,最终以2.05美元成交。这似乎有些不可思议,其实倒也不难分析。我们可以假设小伟出价了0.95美元,然后小强出价了1美元,那么小伟则不得不出价1.05美元,因为如果他不出这个价钱,则会损失0.95美元,如果出价并且竞拍到了,则只用亏损0.05美元。然而小强也会这么去想,因而小强会继续竞拍。以此循环,直至有一人(胆小鬼)无法接受更大的损失,选择不再跟进竞价。

玩家在争夺全服第一时,实际上也会有类似的心理活动。如果双方玩家无止境的砸钱来互相超越,除非游戏资源到达了极限,否则会耗光一方的资源为止。不过这倒不一定是设计者想要见到的局面,因为局面一旦恶化到难以挽回的程度,对第一名而言这场“硬仗”赢得太过艰难,对二名而言甚至意味着惨败。所以控制游戏资源规模在很多情况下是需要的(如果你还希望留住他们的话)。

不过在现实生活中,玩家私底下是可以沟通的,当第二名预见无法与对手抗衡时,则可以选择私底下找到对手并且认输来阻止局面进一步恶化。不过代价就是自己选择成为“胆小鬼”。

不难发现的是,上述内容藏着两个奥秘。

奥秘一:

为什么在一美元拍卖陷阱中会有规则①呢?假设玩家可以以任意增幅进行拍卖,那么这个拍卖会在一开始就有人竞价1美元而戛然而止,这个应该很容易理解。如果成为全服第一要达成的条件太过简单直接,将不会有其他玩家同这名玩家竞争。我们可以通过设定一些消费梯度来引导玩家“分期”投入来竞争全服第一,国内有不少团队深谙此道,鱼骨头就不班门弄斧贻笑大方了,而且也不是本文的主要内容。

奥秘二:

其实在第二名认输时,他并不是等自己资源耗尽时才会投降,而是在当他意识到他基本不可能赢过对手时,就会选择投降。比如你事先已经知道你的对手是某个大集团的公子,你应该就不会同他竞争了。

那么倒过来思考,玩家想要获得全服第一,让全服的人都以为你是“某个大集团的公子”就可以获得最终胜利了,因为你所有的对手都会知难而退。

其实想在胆小者博弈中获胜,最好的办法是想办法给对方营造一种“我是疯子”的假象。比如上车就当着对手的面直接拆掉方向盘,告诉对手你是不可能避让的。那么除非对手也是个疯子,不然你就很大概率赢得了这场博弈。

这个博弈模型最具特点的一点是理性的人无法赢得比赛。因而,这其实也是全服第一那名玩家想要的,如果他在游戏中通过做一些什么事情,能让其他玩家感知到自己是个“疯子”的话,为什么不去做呢。

然后我们将这两个奥秘结合一下,第一名花钱并不是想炫富,而是想告诉其他人自己“无所畏惧,死战到底”的决心的话。又由于梯度消费的存在,各玩家就存在一个试探的过程,因为所有玩家都想看看对方是不是虚张声势。在几轮试探之后,最后确信了一名玩家真的是“富可敌国”(虽然可能是假的)时,竞争就结束了。而这时,局面没有恶化到不可收拾的地步,而更重要的是大家钱都花了,岂不美哉。

 

第五部分志愿者困境

在此我们稍微衍生一下胆小者博弈模型。假设胆小者模型的参与者是多人的话,这就演变成了一个志愿者困境的博弈模型。志愿者困境如字面意思,就是一群人中,是否会有人为了集体变得更好而牺牲自己的利益。很明显,是否会有人充当志愿者主要看收益和成本之间的对比关系。

我们还是拿《绝地求生》中玩家行为来举例。我们已知玩家都想要AWM(基本算是游戏中碾压级别的强力武器),但是这把武器往往不在队伍中枪法最好的那名玩家的手上(假设队友们都是路人玩家,互相并不了解)。因为玩家很难评估其他玩家享有AWM会让整个游戏获胜概率提升多少,对于这种不直观的获胜可能,玩家会更乐于选择让自己享有更好的游戏体验。

相比之下,在《三国杀》中,反贼或者忠诚做出的牺牲对获胜带来的影响则要直观得多,在这种环境下,玩家可以直接的知道成本和收益的关系,因而在该游戏中,会涌现出很多的“志愿者”。注意,此处不包含那些贪图一时爽快不顾团队利益的黄盖,黄月英,孙尚香等玩家(因为顺起来体验还是很棒的)。

这些道理其实很简单,作为设计者的我们,如果需要玩家合作,则需要不断的审视游戏目标和游戏体验之间的平衡关系,因为玩家很容易因为一时爽快而不顾大局,那么我们得强化游戏目标带给玩家的感受,并且得想办法让玩家尽可能清晰的知道不同抉择对游戏目标的影响。

 

第六部分猎鹿博弈与僵局

囚徒困境除了可以变形为胆小者博弈外,其实还可以变形成僵局猎鹿博弈模型。这两种博弈模型都相对极端,在僵局模型下,参与者都会倾向于选择背叛,而猎鹿博弈中则都最好选择合作。

想必大家跟自己的情侣拌过嘴,然后进入冷战阶段(陷入僵局),最后总是由一(男)方先妥协。这也很容易理解,僵局会是当事人最倾向于做的事情,不然也不会发生这种僵局,只是僵局产生后会让情况一直恶化下去,直至有一方无法承受率先妥协。实际上在这里就跟胆小者博弈很类似了,大家可以用第四部分内容,这里就不多赘述了。

与之相反的猎鹿博弈,则描述的另一种所有玩家都必须合作的情形。该博弈模型讲述的是,一群原始人类齐心合力捕获一只需要多人合力才能捕获的野兽-大牡鹿,每个人都各司其职,有些人负责追有些人负责堵,最后齐心协力捕获猎物。但是在捕获过程中,由于个人与职位的差异,不同参与者会受到不同的客观诱惑,导致放弃合作使得猎鹿任务失败概率增加。比如有人在堵的过程中看到一只自己一人就能捕获的野兔,于是他就去捕获野兔而使得猎鹿变得更加困难。这个博弈模型就称之为猎鹿博弈模型。

不过通过这个博弈模型,我们为了让玩家合作是不是得减少突然出现的“野兔”这种设计呢,鱼骨头倒不这么认为。我们还是可以拿《绝地求生》来举例,在该游戏中冲突随处可见,因为游戏规则的关系,小分队中每个人在战斗中的意义都是重大的,任何一个人的疏忽都可能导致小分队的全灭。但是在战斗的过程中,玩家往往容易被“野兔”所干扰,比如“舔包”。“舔包”在游戏中是一件很容易产生爽点的事情,并且玩家并不容易清楚意识到自己在团队中的意义,所以经常打着打着发现有个“盒子”便上去“舔包”实属正常。一般只有较为训练有素的队伍成员才可能抵抗这种诱惑。不过我们不得不承认,这种纠结感其实挺有趣的,这会让玩家的情感变得丰富,同时(纪律性)也是玩家强弱区分的一个标准。

    因而我们可以得出结论,“野兔”的意义是用于考验玩家团队意识。如果我们想让玩家更难配合,我们可以加入更多的“野兔”,反之,则需要更少的“野兔”。关于这点,大家可以思考《英雄联盟》游戏中,玩家对“辅助”这个位置的态度。

    不过关于团队配合,除了硬性的规定各个职业以外,我们实际上还可以通过游戏进程引导玩家走向不同的方向。大家可以用“麻将”这个玩法来理解,参与“麻将”的牌手会根据各种情况综合考虑一个胡法,这样变化就很多了。有机会我们会分享到关于游戏中配合的内容,这里先挖个坑以后再填,笑~

 

第七部分囚徒困境与剧情、玩法设计

在此再另外补充一个更通用更直接的博弈论的应用,那就是写故事,或者做玩法。很多游戏需要故事,更多游戏需要玩法,其实博弈论各种模型就是一个海量的素材库。鱼骨头在此举一个简单的例子。大家回想一下《蝙蝠侠:黑暗骑士》这部影片,里面小丑设计了一个局,用以体现人性的黑暗,企图在精神上击垮蝙蝠侠。

那个局就是当时有两个满是乘客的轮渡,一条船上全是囚犯,一条船上全是普通人。这两船的人由于某些原因,都无法和外界联系(无法联系,划重点!),同时,这两条船都被事先安置了无法拆除的炸弹,而遥控器都在对方手中。如果规定时间内没有任何一艘船被引爆,则两艘船都会被小丑引爆。大家应该已经发现了,这不就是我们讲了半天的“囚徒困境”嘛。

实际上博弈论模型已经在电影剧本方面有着广泛的应用,同时也有一些人开始用博弈论模型做一些小玩法。比如那款《信任的进化》则是一个关于“囚徒困境”的小游戏,大家有兴趣的也可以去玩一下。所以,大家如果需要故事素材和游戏玩法的时候,不妨也参考参考博弈论的一些模型,汲取一些灵感。

 

结语

乱七八糟写了挺多,都挺粗略的,其实还是想更细致的写某一个方面,不过留作之后再详写。本篇的主要意义是介绍一个工具以及讨论一些具体应用。还是那句话,写此文目的也不是提出新的东西,而是探讨久已存在的事物的内在联系和内在要素。

之前就决定一直坚持写些东西,不过由于懒和忙,没能很好的坚持下来。不过9012年了,也要有新的气象,暂时也会继续多写些东西。之后还会再写几篇大方向上的内容,然后就准备写一些具体关于某款游戏的细致的分析了。留待大家小期待一下吧~!

如社区发表内容存在侵权行为,您可以点击这里查看侵权投诉指引

标签: