运用新策略持续合作
我们能不能改进一下“一报还一报”策略,让合作能够持续不断?事实上,还真的可以!诺瓦克和西格蒙德找出了一种“赢就守,输就变”(Win-Stay,Lose-Shift)的策略,在阿克塞尔罗德的计算机程序对抗赛里,表现得甚至比“一报还一报”程序还好,而且也比较接近我们日常生活中的行为模式。
“一报还一报”不讲人情,也不让人有改过的机会,因此在虚拟世界里非常吃得开;诺瓦克和西格蒙德的程序叫作“巴甫洛夫”(PAVLOV,与那位研究动物制约反应的著名俄国科学家同名),采取的“赢就守,输就变”策略是模仿了人类特质,会宽恕,有期待。
只要另一方也采取合作,巴甫洛夫程序就会一直合作,但与“一报还一报”程序不同的地方在于,如果双方在上一步都背叛而造成双输,“巴甫洛夫”就会主动改变合作策略,而希望对方的程序设计也会有所反应,改变合作策略。诺瓦克和西格蒙德认为,严格来说,巴甫洛夫程序“几乎就是一种对于报酬的制约反应:如果得到报酬……
就重复上一步,如果受到惩罚……就改变行为”。
像是前面那位和我一起逛特价书展的仁兄,在他背叛而我也以背叛回应之后,就是采取了巴甫洛夫策略,再次开始合作。两位程序设计者对于这种策略会成功的理由,解释如下。
“一报还一报”策略能如此成功……部分原因在于,网络世界里有绝对的秩序。但在自然世界里,则会出现失误(和偶尔的干扰)……两个采取“一报还一报”策略的玩家如果不慎犯错,就可能会造成长期的互相报复。(这种情况在日常生活中随处可见,就算是人类,也常常把气发在无辜的旁观者身上。)
巴甫洛夫程序和“一报还一报”策略比较起来有两大优势:
(1)采取“赢就守,输就变”策略的双方,如果不慎犯错……只会造成一个回合的互相背叛,之后就会回到互相合作;
(2)“巴甫洛夫”对“软柿子”不会手下留情。
我们每天都会看到巴甫洛夫式的行为:虽然家人之间的误会可能引起争执,但之后很快就会恢复合作;此外,很多人碰到送上门的冤大头,也总是毫不手软。
现在有许多人都在研究“一报还一报”策略的各种变体,巴甫洛夫程序只是其中一种。原始的“一报还一报”策略,现在归类为“扣扳机策略”(trigger strategy),典故来自美国西部拓荒时期的枪战(至少是好莱坞拍的那种),只要一方扣了扳机,就会引来另一方回敬一发甚至一轮子弹。博弈论研究者已经找出许多种“扣扳机策略”,全都遵循“以牙还牙”的规则,只要不合作,后果就是对方至少也有一次不合作。
各种变体之中,话讲得最重的是“冷酷扣扳机策略”(Grim Trigger),威胁说:“只要你有一次不合作,我就再也不会和你合作!”例如夫妻吵架,警告对方下次再吵,就马上离婚,永不回头,就是属于这种“冷酷扣扳机策略”。令人遗憾的是,也正因如此,到现在我们还无法摆脱核报复的阴影。
另一种比较温和的“扣扳机策略”,是“宽厚的一报还一报策略”
:只要一方合作,另一方就会继续合作,而如果一方背叛,另一方有时候还是会继续合作,但并非绝对。举例来说,怨偶也有破镜重圆的可能,给对方第二次机会。(比较一下,如果一定要对方用确切的例证,证明自己已改过自新,才肯复合,就是采取一般的“一报还一报”策略。)
这些策略都可能成功,但也都可能失败。“宽厚的一报还一报”比起“以牙还牙”要来得温和,带有一点“推己及人”的宽恕色彩,能够打破互相报复的循环,看起来也最有可能解决日常生活中的各种问题。我和几位行为心理学家讨论过这件事,他们从心理学角度提出的策略是“态度要坚定,但也要保留宽恕的可能”,这与“宽厚的一报还一报”最为接近。然而,经过计算机模拟之后,发现这种策略还是比不上巴甫洛夫策略;如果双方上一次互相背叛而造成双输,“巴甫洛夫”就会主动改变合作策略。
我曾经在一场鸡尾酒会上测试了一下巴甫洛夫策略。我和朋友想到等一下还要开车,就同意两个人都别再喝了,但他很快就忍不住想再来一杯,而我心想:“他能喝,那我也要。”但等到我们两个看到对方端着那杯酒(两人都作弊了),就都采用了巴甫洛夫策略,只要对方不喝,我也不喝,于是,问题也就解决了。
“赢就守,输就变”是说,如果上一步都互相作弊或背叛而造成双输,就主动改用合作策略,就目前讨论过的所有“扣扳机策略”而言,这似乎是最有效的一种。这些“扣扳机策略”,都必须建构在双方会不断往来的前提下,才能产生并维持合作。但还有一种因素和过去的交手经验完全不相干。
本书评论