卷 I · 在场CH 03深度 3/24

各自最优,一起变差

「囚徒困境」这个词已经被用滥了,滥到几乎所有让人不痛快的集体行为都会被扣上这顶帽子。这一章要做的事情是把帽子摘下来,把四张长得很像的表并排放好,让你看清楚:它们的结局差得很远,而解药也完全不同。认错了病,药就白吃。

四种困境帕累托桌上那笔钱

▷ 轮到你

下面四种场面,哪一种不是囚徒困境?

A 两家外卖平台都想停止补贴大战,可是谁先停谁掉份额 B 团队都同意要写单元测试,可是没人写 C 全组都想统一用一套代码风格,但用哪一套无所谓,只要一致就行 D 两国都不想扩军,可是谁不扩谁吃亏

如果你觉得四个都是,那正是这一章要处理的事。选一个再往下读。

一张表的性质,藏在四个数的大小顺序里

先把囚徒困境的骨架抽出来。两个人各有「合作」和「背叛」两手,四种结局各有一个名字:

T  背叛得手(我背叛,对方合作)
R  一起合作
P  一起背叛
S  被背叛(我合作,对方背叛)

# 囚徒困境的定义,就是这四个数的大小顺序:
   T > R > P > S

# 上一章那张表:T=5  R=3  P=1  S=0

只要满足这个顺序,划线法必然给出同一个结果:不管对方怎么做,背叛都更好(T > R 且 P > S),于是两道横杠全在「背叛」那一行,两道竖杠全在「背叛」那一列,均衡锁死在右下角,两人各得 P。

而左上角那个「一起合作」,两人各得 R,比 P 高。它就在那儿。这里我要给它起个名字,因为整本书都会用到。

▦ 桌上那笔钱

如果存在另一格,它让每个人都不更差、并且至少一个人更好,那么当前这一格就是有亏的。那笔差额一直摆在桌上,没有人捡。

上一章那张表:均衡处两人共得 1 + 1 = 2,而「都闭嘴」共得 3 + 3 = 6。桌上留下 4 分。

这本书用松绿色标记这笔钱。看见绿色,就是看见了「本来可以更好但没人能过去」的地方。

四张表,同一套划线法

现在把另外三张表放进来。它们和囚徒困境的差别只有几个数字。

第一张:囚徒困境(T > R > P > S)

背叛是占优策略——不用管对方,背叛就对了。均衡唯一,在最差的那格。桌上留下 4 分。

第二张:猎鹿(R > T ≥ P > S)

两个猎人一起才能猎到鹿,各得 5;谁单独去抓兔子,稳稳得 3;被同伴放鸽子的人,空手而归得 0。

这张表的关键是 R > T:一起合作比背叛得手还要好。所以背叛不再是占优策略。划线的结果是两个均衡:「都猎鹿」(各 5 分)和「都抓兔」(各 3 分)。

两个都稳。都猎鹿明显更好,可是都抓兔更安全——抓兔的收益跟对方做什么完全无关,而猎鹿则要赌对方也来。

请注意:这不是囚徒困境。在猎鹿里,如果你能让对方相信你会去猎鹿,他就真的会去猎鹿。信任在这里是有用的——而上一章我们证明过,信任对囚徒困境毫无用处。两种病,两种药。

第三张:斗鸡(T > R > S > P)

两辆车对着开。谁先打方向盘谁丢面子,两个都不打就撞车。这张表的关键是 S > P:被对方压一头,好过一起完蛋。

结果又是两个纯策略均衡,但这次它们不对称:一个是「我让你不让」,一个是「你让我不让」。让的人得 2,不让的人得 7。两个均衡都稳,可谁也不愿意当那个让的人。

还有第三个均衡,混合的:两人都以 2/3 的概率让。这个均衡的期望收益是每人 14/3 ≈ 4.667——比「让」的 2 高,比「不让」的 7 低。而它的代价写在那个 1/3 里:两人同时不让,也就是撞车,概率是 1/3 × 1/3 = 1/9,约 11.11%。

斗鸡是这本书里最重要的一张表之一,因为它的解药最有意思。第 22 章会给它装一个红绿灯,把每人的收益抬到 21/4 = 5.25,撞车概率降到 0——而且不需要任何承诺、任何信任。

第四张:和谐(R > T,S > P)

利益完全一致的时候。合作是双方的占优策略,唯一的均衡就是「都合作」,两人共得 8,而这也正是全表最高的总收益。桌上剩 0。

放这张表进来只有一个目的:提醒你不是所有集体行动都有困境。有时候大家不合作,真的只是因为没沟通、或者不知道彼此在做什么——那不是博弈问题,那是通信问题。

为什么必须分清这四张表

因为对策完全不同。

这张表症状有用的做法没用的做法
囚徒困境唯一均衡,且是最差的改收益表:罚款、押金、绑定、重复交易沟通、承诺、互信、动员
猎鹿两个均衡,好的那个不安全公开信号、共同知识、让人看见别人也在做惩罚(没人想背叛,只是不敢先动)
斗鸡两个均衡都不公平,混合会撞车协调装置:红绿灯、优先权规则、抛硬币比谁更硬(那正是撞车的原因)
和谐没有困境把信息传到位设计任何机制

这张表值得记住。这本书剩下的二十一章,很大一部分是在把最右边两列填得更细。

▸ 在现实里

回到开头那四个选项。

补贴大战是标准的囚徒困境:谁先停谁掉份额(T > R),两家一起烧钱谁也没多赚(P 低)。它的解药从来不是「行业自律倡议书」,而是改表——监管、成本约束,或者干脆熬到一方出局。

没人写测试也是:写测试的成本我一个人出,好处全组分。

统一代码风格不是。用哪一套真的无所谓,只要一致——这是协调问题,最接近猎鹿。所以它的解药便宜到荒谬:找个人拍板,把 formatter 配置提交进仓库,让 CI 强制执行。不需要任何惩罚设计,只需要一个所有人都看得见的焦点。这也是为什么关于代码风格的争论那么容易被一个配置文件终结——它本来就不是困境。

✗ 这个直觉是错的

「囚徒困境说明人是自私的。如果大家都善良一点,困境就没了。」

收益表里的数字不必是自私的。你完全可以把「对方少判两年」的价值折算进自己的收益里——这就是利他。但只要折算完之后四个数仍然满足 T > R > P > S,困境原封不动。

换句话说,善良能不能解决困境,取决于善良够不够多,而这是一个可以计算的量。上一章的 demo 里,把「背叛得手」从 5 调到 2 就够了——这相当于要求每个人给对方的福利赋予至少某个权重。低于这个权重,再真诚的善意也翻不了盘。

这正是这本书的立场:与其寄希望于人变好,不如去看那张表还剩几分要靠人变好来补。

◇ 摊牌

正确答案是 C:统一代码风格不是囚徒困境,它是协调问题(猎鹿那一族)。

判据很简单:如果对方已经在合作了,我还想不想背叛?在囚徒困境里,想(T > R);在协调问题里,不想(R > T)。A、B、D 都过不了这一关,C 能过。

A 补贴大战D 扩军——对方停了我不停,我就多赚,T > R,是困境。 B 写测试——别人都写了我不写,我省下时间还享受质量,T > R,也是困境。 如果你四个都选了,这个错误非常常见,而且代价不小:把协调问题当成困境来治,会白白引入一整套惩罚机制,制造对立,还解决不了本来一个公告就能解决的事。
◆ 换你定规则

猎鹿的问题不是有人想背叛,是没人敢先动。如果只准你加一句话(不加钱、不加罚),你加什么?

两个均衡都稳,抓兔更安全 ⇒ 大家倾向于停在各得 3 的那一格,桌上留下 4 分。 加一句:「明天早上八点,鹿谷。」——一个所有人都知道、并且知道别人也知道的约定点。均衡本身没变,但焦点变了,大家一起挪到各得 5 的那一格。

这一招叫谢林点,第 7 章会把「知道别人也知道」这件事拆开来看,你会发现它比想象中难造得多。

这一章的一句话

看见「大家都知道该合作却没人合作」时,先别急着谈人性——先把四个数的大小顺序排出来,那决定了你手里的是哪一种病。

下一章把困境从两个人放大到四千个人,放到一张真实的路网上。会发生一件很荒诞的事:市政修了一条完全免费、一秒钟都不耽误的新路,结果所有人的通勤时间从 65 分钟涨到了 80 分钟。没有人做错任何事,每个人都在走当下最快的那条路。而把这条新路拆掉,所有人立刻快 15 分钟。