罗伯特·艾克斯罗德在他的博弈论名著《合作的进化》中设计了一个有趣的实验:征集一大批采取不同博弈策略的计算机程序,让它们相互比赛,从中选出最优的策略。每局比赛由两个程序参加,持续数百回合。每一回合双方都可以选择背叛或者合作,两人都合作各得3分,两人都背叛各得1分,一人背叛一人合作的话,则背叛者得5分,合作者得0分。参赛选手们不知道对手本回合内的行动,但是可以参考之前所有回合的结果(典型的囚徒困境)。
从个人利益出发,最理想的结果是每回合得5分;从集体利益出发,最理想的结果是两人每回合各得3分。
参赛的程序种类繁多,有些程序甚至具备一定人工智能,可以通过有目的的试探来计算出对手的策略,从而获取最优的结果。简单起见,我们可以挑出其中比较有代表性的三个策略:
1:善良型,无论对手怎么背叛,永远选择合作
2:邪恶型,永远选择背叛;
3:报复型,第一回合合作,第二回合开始复制对手上一回合的行动,即只要对手背叛我也背叛,只要对手合作我也合作。
报复型策略看起来简单粗暴,写下来不过几行代码而已,但实际表现却超越了那些具备高度智能的程序(这些程序往往在相互试探上浪费太多的时间)。
这本书名为合作的“进化”,其有趣之处就在于模拟了生物进化的过程。每一轮游戏结束之后(即所有程序都两两对战过一遍之后),程序的数量会根据其得分进行调整。比方说,第一轮有A程序50个,B程序50个,C程序50个,一轮比赛后,A程序平均得400分,B程序平均得100分,C程序平均得0分,则下一轮游戏A程序的数量会相应上调,B程序受到A程序的“打压”,数量减少,而C程序则被彻底淘汰。如此反复,直到部分程序被淘汰,剩下所有的程序得分相同(博弈均衡)为止。这就相当于一个150人的小型社会,大家发现采用策略A的人活得更好,于是久而久之就会有更多的人采取策略A而放弃策略C。
假设一轮游戏持续一百回合,而且只有善良型和邪恶型程序存在。当两个善良型程序遭遇时,他们各得300分;当两个邪恶型程序遭遇时,他们各得100分;当善良型和邪恶型相遇时,善良型得0分,邪恶型得500分。虽然邪恶型之间同性相斥,最终谁也讨不到好,但是这些损失却可以从善良型程序身上给补回来。由于每个善良型程序对其它善良型程序的贡献小于对邪恶型程序的贡献,最终的结果是善良型程序被全部淘汰,世界变成恶棍的天下。而且请注意,哪怕是全部由善良型程序组成的理想社会,只要在其中植入一个邪恶型程序,这个理想社会就会土崩瓦解,变成效率低下的互害社会。
反观报复型程序。和善良型相同,两个报复型程序相遇时也可以各得300分。但是当报复型程序遭遇邪恶型程序之后,虽然第一回合邪恶型程序可以尝到5分的甜头,但之后就不得不面对每回合只得1分的悲剧,最终得分为104。也就是说,邪恶型程序无论从同类还是异类身上都讨不到好。报复型程序和邪恶型程序之间的胜负取决于初始时的数量比例,如果报复型程序数量极少的话,有可能因缺少合作得分的对象而被邪恶型程序完全消灭,但这个临界点大约在1:200,也就是说一个报复型程序就足以解决掉两百个邪恶型程序。
假如三种程序并存呢?在这种情况下,善良型程序完全就是帮倒忙的,因为每个善良型程序只给报复型程序提供300分,而给邪恶型程序提供500分,反而导致邪恶型程序的大量增殖!只有等到善良型程序被基本消灭之后,报复型才有出头之日,最终淘汰掉邪恶型,在这种情况下报复型的数量是个先下降再上升的曲线。而且报复型有可能因初始数量太少而被淘汰,三种程序并存的情况下,这个临界点会大于1:200,也就是说善良型的存在反而降低了报复型的战斗力。
为啥代码只有几句的报复型程序能够战胜那些具有高度智能的复杂程序?说白了,这些智能程序的目标就是把好欺负的程序识别出来,不停的拿5分。而报复型的程序(尤其是“一报还一报”)是不可侵犯的,无论你再怎么智能也讨不到什么便宜。如前文所述,好欺负的程序会在进化的过程中被逐渐淘汰,使得这个识别功能越来越无用武之地,反而在试探对手是不是好欺负的过程中白白浪费掉大量的分数。越简单的策略越容易建立合作。两个很简单的程序相互遭遇时,不存在试探过程,可以迅速建立合作关系;简单的程序和复杂的程序相遇时,复杂程序要先花一段时间识别对方,损失一定分数;复杂程序遭遇复杂程序时,识别时间大大加长,可能到游戏结束时合作关系都无法建立。
有一类程序会根据对方程序的反应进行相应的策略调整,一般都会在开局先背叛几次观察对方的反应,如果对方报复型背叛,他就赶紧合作示好(假如示好没有换来合作,那就背叛到底拼个你死我活),如果对方无论如何都不报复,那就拼命背叛获利,所以得分会很高。但当两个都很复杂多变的程序碰到一起时,由于相互之间很难揣测出对方的“性格”,双方都在根据对方的反应不断调整,就会导致无法设计出最优策略。
邪恶盛行的唯一条件,就是善良者的沉默。报复是促进合作和繁荣的终极手段,没有报复,剩下的啥都不用谈。假如对方背叛合作,报复是促进社会和谐的不二法门。过于善良(不会报复)的人反而导致了骗子的横行,善良的人之所以能有生存空间,是因为报复型的人牺牲自己绞杀了骗子。
也可以假设,邪恶型人格为了控制善良型人格、对付报复型人格,而制造了一种意识形态程序,暂且称他为“病毒”,悄悄植入了报复型人格和善良型人格的程序中,那么,那些防御薄弱的(意志不坚定的)报复型人格就会丧失报复本能,转变为善良型人格;而善良型人格,就转变为受虐型人格。这时,防御强大的报复型人格就会逐渐被孤立,邪恶型人格可能会利用病毒驱使善良人格和受感染的报复型人格与健全的报复型人格互相残杀,达到保存邪恶型人格最大利益的目的。