重生之将门毒后19楼:自私的基因
来源:百度文库 编辑:九乡新闻网 时间:2024/04/28 18:28:56
《自私的基因》上的一个小实验
国内安全博客 - China - 2011, June 27, 10:54 AM
《自私的基因》很久之前就看过了。一直以来对上面的一个实验比较感兴趣。这个实验的内容是在一些特定的环境下,比较了一些竞争策略。实验过程是完全在计算机里面模拟的,比较容易。最近,正好看到老大发起的话题大家都在讨论。于是想起来了这个实验,顺手就做了一下。没有仔细分析我的实验是否有 bug,仅供参考。
如果从各个场景的总得分这一个维度来说诚实还是有好处的:
1. 诚实的 saint 得分 1450100
2. 睚眦必报的 payback 得分 1300150
3. 随心所欲的 chaos 得分 1206100
4. 只会欺骗的 demon 得分 950250
如果是“鼓励诚实、鼓励合作的零和博弈”环境下(arena2:诚实-诚实,各得50分;诚实-欺骗,诚实方得100分;欺骗-欺骗,各得50分):
1. 诚实的 saint 得分 274750
2. 睚眦必报的 payback 得分 200000
3. 随心所欲的 chaos 得分 201750
4. 只会欺骗的 demon 得分 124150
如果是“鼓励诚实、鼓励合作的非零和博弈”环境下(arena6:诚实-诚实,各得100分;诚实-欺骗,诚实方得100分;欺骗-欺骗,各得50分):
1. 诚实的 saint 得分 400000
2. 睚眦必报的 payback 得分 312300
3. 随心所欲的 chaos 得分 250150
4. 只会欺骗的 demon 得分 125800
我设定了以下的参与者(player),他们各自采用的竞争策略是:
1. 创建“圣徒”(saint)player,一味的诚实
2. 创建“混沌”(chaos)player,随机的欺骗或诚实
3. 创建“恶魔”(demon)player,一味的欺骗
4. 创建“睚眦必报”(payback)player,除非对手撒谎,否则自己诚实
同时,我设定了几个竞争的环境(arena):
1. arena1:诚实-诚实,各得50分;诚实-欺骗,欺骗方得100分;欺骗-欺骗,各得50分
2. arena2:诚实-诚实,各得50分;诚实-欺骗,诚实方得100分;欺骗-欺骗,各得50分
3. arena3:诚实-诚实,各得50分;诚实-欺骗,欺骗方得100分;欺骗-欺骗,各得0分
4. arena4:诚实-诚实,各得50分;诚实-欺骗,诚实方得100分;欺骗-欺骗,各得0分
5. arena5:诚实-诚实,各得100分;诚实-欺骗,欺骗方得100分;欺骗-欺骗,各得50分
6. arena6:诚实-诚实,各得100分;诚实-欺骗,诚实方得100分;欺骗-欺骗,各得50分
这些参与者在这些环境中博弈 1000 次结果如下(原始数据下载):
我把代码提交到了 google code 上面(实验),一方面是希望广大同学们帮忙验证、分析一下数据,同时帮忙看看代码有没有 bug;另一方面也欢迎大家投稿 player 或者 arena,看看谁的竞争策略能拿更高的分数。
欢迎大家拍砖!
PS: 代码很难看,大家就包涵哈 :)
©2011 乌托邦. All Rights Reserved.