Забавная отличная игра, иллюстрирующая известную дилемму заключенного: http://ncase.me/trust/ (на английском)
Игра наглядно показывает следующую штуку. В дилемме заключенного рационально “предавать” / “читить”, хоть это и ведет к общему недополучению выгоды всеми → в результате все читят, а честные/альтруистичные чуваки всегда проигрывают.
Но если игра становится повторяющейся (то есть вы по сути продолжаете играть/взаимодействовать с теми же людьми), то самой выигрышной стратегией становится быть честным/альтруистичным с другими честными и читить с читерами. В результате → все начинают рано или поздно вести себя честно/альтруистично.
То есть хочешь, чтобы все были честные/альтруисты — убедись, что правила игры сталкивает людей с собой снова и снова и вознаграждение за честное/альтруистичное поведение ВЫШЕ чем польза от читерства/обмана.
Вот про это интересно написано в wiki: “Повторяющаяся дилемма заключённого”
В книге «Эволюция кооперации» 1984 года Роберт Аксельрод исследовал расширение сценария дилеммы, которое он назвал повторяющаяся дилемма заключённого (ПДЗ). В ней участники делают выбор снова раз за разом и помнят предыдущие результаты. Аксельрод пригласил академических коллег со всего мира, чтобы разработать компьютерные стратегии, чтобы соревноваться в чемпионате по ПДЗ. Программы, вошедшие в него, различались по алгоритмической сложности, начальной враждебности, способности к прощению и так далее.
…
Аксельрод открыл, что если игра повторялась долго среди множества игроков, каждый с разными стратегиями, «жадные» стратегии давали плохие результаты в долгосрочном периоде, тогда как более «альтруистические» стратегии работали лучше, с точки зрения собственного интереса. Он использовал это, чтобы показать возможный механизм эволюции альтруистического поведения из механизмов, которые изначально чисто эгоистические, через естественный отбор.
…
Лучшей детерминистской стратегией оказалась «Око за око» (англ. Tit for Tat), которую разработал и выставил на чемпионат Анатолий Рапопорт. Она была простейшей из всех участвовавших программ, состояла всего из 4 строк кода на языке Бейсик. Стратегия проста: сотрудничать на первой итерации игры, после этого игрок делает то же самое, что делал оппонент на предыдущем шаге.
…
Чуть лучше работает стратегия «Око за око с прощением». Когда оппонент предаёт, на следующем шаге игрок иногда, вне зависимости от предыдущего шага, сотрудничает с небольшой вероятностью (1—5 %). Это позволяет случайным образом выйти из цикла взаимного предательства. Она лучше всего работает, когда в игру вводится недопонимание — когда решение одного игрока сообщается другому с ошибкой.