В конце 1970-х Роберт Аксельрод (Robert Axelrod), американский ученый-политолог, придумал такой компьютерный мир и затем приступил к его заселению. Без упоминаний о естественном отборе, изначально не интересовавшем его, он предложил специалистам по теории игр представить компьютерную программу, воплощающую стратегию решения повторной дилеммы узника, т.е., сформулировать правило, при помощи которого программа решает при каждой встрече с другой программой, кооперироваться ли с ней. Затем он щелкнул выключателем и предоставил возможность программам смешаться в единой толпе. Контекст этого соревнования отлично отражал социальный контекст человеческой и до-человеческой эволюции. Это было довольно небольшое общество - несколько десятков регулярно взаимодействующих индивидов. Каждая программа могла "помнить", кооперировалась ли с ней каждая другая программа при предыдущих встречах и соответственно этому подгонять свое собственное поведение.
После того, как каждая программа встретилась 200 раз с каждой другой, Аксельрод суммировал баллы и объявил победителя. Затем он провел соревнование во втором поколении после систематизированной выбраковки: каждая программа была представлена пропорционально ее успеху в первом поколении - выживал сильнейший. И так игра продолжалась, поколение за поколением. Если теория реципрокного альтруизма верна, можно было бы ожидать его "эволюции" внутри компьютера Аксельрода и постепенного возобладания в популяции.
Так и случилось. Программа-победитель, созданная канадским теоретиком игр Анатолем Рапопортом (Anatol Rapoport), когда-то написавшим книгу "Дилемма узника", называлась "TIT FOR TAT", т.е. "ТО ЗА ТО". (Близкие по смыслу русские эквиваленты - "око за око, зуб за зуб", "что посеешь, то пожнешь", "ты - мне, я - тебе" - М.П.). ТО ЗА ТО управлялась простейшим из правил, и программа была самой короткой из представленных - без преувеличения, длиной всего в 5 строчек. (Поэтому, если бы стратегии не были разработаны, а появлялись в результате случайных компьютерных мутаций, она бы, вероятно, возникла одной из первых). ТО ЗА ТО воплощала именно то, что означает ее имя. При первой встрече с любой программой она начинала сотрудничать. Затем она воспроизводила все то, что сделала другая программа при предыдущей встрече. Один хороший ход заслуживал подобного ответного, равно как и плохой.
Свойства этой стратегии почти так же просты, как и сама стратегия.
Если какая-либо программа демонстрирует тенденцию к сотрудничеству, ТО ЗА ТО немедленно завязывает дружбу, и оба пожинают плоды кооперации. Если же программа проявляет склонность к обману, ТО ЗА ТО сокращает потери благодаря тому, что воздерживается от кооперации до тех пор, пока программа не исправится, и тем избегает дорогой платы за наивность. Таким образом, ТО ЗА ТО никогда не становится жертвой повторно, в отличие от неразборчивых в стремлении к кооперации программ. В то же время, ТО ЗА ТО избегает судьбы неразборчивых антикооперационных программ, пытающихся эксплуатировать дружественные к ним программы и оказывающихся в итоге связанными дорогостоящими цепями взаимного предательства с программами, которые желают кооперации лишь на основе взаимности. ТО ЗА ТО обычно без сомнений отказывается от больших одномоментных выгод, которые могут быть получены путем эксплуатации. Стратегии же, нацеленные на эксплуатацию посредством постоянного или периодического "неожиданного" мошенничества, по мере того, как тянется игра, постепенно пролетают. Программы избавляются от добрых по отношению к ним, поэтому лишаются как больших выгод эксплуатации, так и более скромных выгод взаимного сотрудничества. Откровенно действующая по обстоятельства ТО ЗА ТО оказалась, в конце концов, вполне самодостаточной, обойдя настойчиво подлые, настойчиво милые, равно как и разнообразные "умные" программы, чьи изощренные правила сделали их труднопонимаемыми для других.
[/b]