Дилемма заключённого
Материал из MachineLearning.
| | Статья написана с использованием LLM и проверена участником Kirill Bazhutov 18:12, 25 июля 2026 (MSD) |
Дилемма заключённого (англ. Prisoner's dilemma) — симметричная некооперативная игра двух лиц, в которой у каждого игрока имеется строго доминирующая стратегия отказа от сотрудничества, однако возникающее при её выборе обоими игроками равновесие Нэша Парето-доминируется исходом взаимного сотрудничества.
Матричная игра была исследована Мериллом Фладом (Merrill Flood) и Мелвином Дрешером (Melvin Dresher) в RAND Corporation в 1950 году.[1] Альберт Такер предложил интерпретацию игры в виде истории о двух арестованных преступниках и ввёл закрепившееся за ней название.
В машинном обучении дилемма заключённого используется прежде всего как простейшая матричная среда для исследования обучения в играх. Её последовательные и пространственные варианты применяются для изучения возникновения сотрудничества, нестационарности многоагентного обучения и зависимости выученных политик от структуры вознаграждений.
Содержание |
Формальная математическая модель
Платежная матрица
В классической постановке каждый из двух агентов имеет два возможных действия: Сотрудничать (Cooperate, ) или Предать (Defect,
). Возможные исходы игры описываются платежной матрицей, где выигрыши обозначаются следующим образом:
-
(Temptation) — искушение, выигрыш при предательстве сотрудничающего оппонента;
-
(Reward) — вознаграждение при взаимном сотрудничестве;
-
(Punishment) — наказание за взаимное предательство;
-
(Sucker's payoff) — участь простака, выигрыш сотрудничающего при предательстве оппонента.
| Агент 2: Сотрудничает (C) | Агент 2: Предаёт (D) | |
|---|---|---|
| Агент 1: Сотрудничает (C) | | |
| Агент 1: Предаёт (D) | | |
Математические условия и равновесие Нэша
Игра классифицируется как дилемма заключённого, если её параметры строго удовлетворяют неравенству:
Анализ показывает, что предательство () является строго доминирующей стратегией для обоих агентов: вне зависимости от выбора оппонента, действие
приносит строго больший выигрыш (
и
). В результате рационального выбора агентов игра приходит к исходу
с выигрышами
, который является единственным равновесием Нэша.
Исход Парето-доминирует равновесие
, поскольку оба игрока получают
. При этом
не обязательно является единственным Парето-эффективным исходом: в исходах
и
один из игроков получает максимальный выигрыш
. Если дополнительно выполнено условие
, взаимное сотрудничество максимизирует суммарный выигрыш в одной партии. Этот конфликт между индивидуальной рациональностью и коллективной эффективностью составляет содержание дилеммы.[1]
Повторная игра и турниры стратегий
Динамика игры кардинально меняется при многократном повторении партий. Теоретический анализ требует строгого разделения игр с конечным и бесконечным горизонтом.
Конечный и бесконечный горизонт
Если число партий конечно и заранее известно, обратная индукция приводит к предательству в последней партии, а затем последовательно во всех предшествующих партиях. Поэтому единственным совершенным по подыграм равновесием при стандартных предположениях остаётся постоянное предательство.[1]
При бесконечном или случайно завершающемся взаимодействии будущие последствия текущего действия могут поддерживать сотрудничество. Ожидаемый выигрыш вычисляется с учётом фактора дисконтирования . Профиль, при котором оба игрока используют триггерную стратегию (Grim Trigger, сотрудничество до первого предательства оппонента с последующим вечным
), является совершенным по подыграм равновесием при условии:
что математически сводится к:
Турниры Аксельрода и алгоритмические стратегии
В начале 1980-х годов Роберт Аксельрод провел серию компьютерных турниров среди алгоритмических стратегий для итеративной дилеммы.[1] Стратегия Tit-for-Tat («Око за око»), предложенная Анатолем Рапопортом, получила наибольший суммарный результат в обоих турнирах.
Этот результат не означает существования универсально оптимальной стратегии: итог зависит от набора соперников, продолжительности взаимодействия, функции оценки и вероятности ошибок. В среде с шумом (когда исполняемое действие может случайно измениться) Tit-for-Tat уязвима, так как единичная ошибка запускает бесконечную цепочку взаимных наказаний. Для уменьшения последствий случайных ошибок исследовались прощающие варианты Generous Tit-for-Tat и стратегия Win-Stay, Lose-Shift (или Pavlov), которая способна восстанавливать сотрудничество после обоюдного предательства.[1]
Отдельное направление образуют стратегии с нулевым детерминантом (Zero-Determinant strategies), позволяющие одному игроку алгоритмически задавать строгие линейные соотношения между долговременными выигрышами участников, фактически форсируя долю выигрыша оппонента.[1]
Дилемма заключённого в машинном обучении
Последовательные социальные дилеммы
Для применения в машинном обучении классическая матричная игра обобщается до частично наблюдаемой марковской игры (Partially Observable Markov Game). Такая среда описывается кортежем:
где — множество состояний,
— действия агента
,
— пространства наблюдений,
— ядро вероятностей переходов,
— индивидуальные функции вознаграждения,
— функции наблюдения. В таких последовательных социальных дилеммах (Sequential Social Dilemmas) сотрудничество и предательство — не одиночные действия, а комплексные свойства выученных политик на протяжении эпизода.[1]
Проблема нестационарности в MARL
При использовании независимого Q-обучения (Independent Q-learning) в MARL каждый агент максимизирует собственную функцию полезности. Однако изменение политик других агентов в процессе обучения делает наблюдаемую среду нестационарной. В социальных дилеммах независимое обучение может приводить к субоптимальным равновесиям или нестационарной динамике. Результат критически зависит от механизма исследования (exploration), инициализации, представления состояния, продолжительности взаимодействия и структуры вознаграждений.[1]
Централизованное обучение (CTDE)
Для смягчения проблемы нестационарности и облегчения координации агентов широко применяется принцип CTDE (Centralized Training with Decentralized Execution). В рамках этого подхода модель на этапе обучения имеет доступ к глобальному состоянию и совместным действиям всех агентов, а во время исполнения агенты действуют децентрализованно, опираясь только на локальные наблюдения
.
- MADDPG используется для смешанных кооперативно-конкурентных сред, где критик обучается централизованно;[1]
- QMIX предназначен для полностью кооперативных задач с общей командной наградой, используя монотонную сеть смешивания.[1]
Важно отметить, что CTDE является принципом организации обучения, а не гарантией сходимости к Парето-оптимальной политике. Для QMIX гарантируется лишь согласованность централизованной и децентрализованной максимизации при условии монотонного разложения общей функции ценности.
Обобщения
Матричная формулировка допускает ряд концептуальных расширений:
- Эволюционная теория игр: изучает популяционную динамику дилеммы с помощью уравнений репликатора, где успешные стратегии (аллели) пропорционально увеличивают свою долю в популяции.
- Пространственные игры на графах: агенты взаимодействуют только с соседями по топологической решетке, что порождает сетевую реципрокность — механизм выживания кооператоров через образование локальных кластеров.
- Игры общественных благ (Public Goods Games): многопользовательское обобщение проблемы, формализующее «трагедию общин», где индивидуальный вклад в общий ресурс масштабируется фактором синергии, но распределяется поровну среди всех, включая безбилетников (free-riders).
- Смежные классы игр: при изменении порядка выигрышей возникают другие известные паттерны взаимодействия, такие как «Охота на оленя» (Stag Hunt, координационная игра) или «Цыплёнок» (Chicken / Snowdrift, антикоординационная игра).
Вычислительный эксперимент на Python
Для демонстрации зависимости успешности политики от состава участников и наличия шума ниже реализован круговой турнир пяти базовых детерминированных алгоритмов. Код строит матрицу попарных выигрышей с использованием фиксированного генератора псевдослучайных чисел для обеспечения воспроизводимости.
import numpy as np # Базовые алгоритмические стратегии # 0 - Cooperate (C), 1 - Defect (D) def all_c(my_hist, opp_hist): return 0 def all_d(my_hist, opp_hist): return 1 def tft(my_hist, opp_hist): return opp_hist[-1] if opp_hist else 0 def grim(my_hist, opp_hist): return 1 if 1 in opp_hist else 0 def pavlov(my_hist, opp_hist): if not my_hist: return 0 # Pavlov: сотрудничает после (C,C) и (D,D), предает после (C,D) и (D,C) return 0 if my_hist[-1] == opp_hist[-1] else 1 strategies = [all_c, all_d, tft, grim, pavlov] names = ["AllC", "AllD", "TFT", "Grim", "Pavl"] def run_pairwise_tournament(noise=0.0, steps=200, runs=10, seed=42): rng = np.random.default_rng(seed) # Выигрыши: (0,0)->(3,3), (0,1)->(0,5), (1,0)->(5,0), (1,1)->(1,1) payoffs = {(0,0): (3,3), (0,1): (0,5), (1,0): (5,0), (1,1): (1,1)} n = len(strategies) matrix = np.zeros((n, n)) for i, s1 in enumerate(strategies): for j, s2 in enumerate(strategies): total_score = 0 for _ in range(runs): h1, h2 = [], [] for _ in range(steps): a1, a2 = s1(h1, h2), s2(h2, h1) # Внесение стохастического шума в наблюдения/исполнение if rng.random() < noise: a1 = 1 - a1 if rng.random() < noise: a2 = 1 - a2 h1.append(a1) h2.append(a2) total_score += payoffs[(a1, a2)][0] # Средний выигрыш стратегии i против стратегии j matrix[i, j] = total_score / (steps * runs) return matrix def print_matrix(title, M): print(title) print(" " * 6 + "".join([f"{n:>7}" for n in names]) + " | Mean") print("-" * 49) for i, row in enumerate(M): row_str = "".join([f"{val:7.2f}" for val in row]) print(f"{names[i]:<5} {row_str} | {row.mean():7.2f}") print() M_clean = run_pairwise_tournament(noise=0.0) M_noisy = run_pairwise_tournament(noise=0.05) print_matrix("Матрица попарных выигрышей M_{ij} (без шума):", M_clean) print_matrix("Матрица попарных выигрышей M_{ij} (шум 5%):", M_noisy)
Запуск кода демонстрирует хрупкость реактивных стратегий и то, как итоговое место зависит от состава турнира:
Матрица попарных выигрышей M_{ij} (без шума):
AllC AllD TFT Grim Pavl | Mean
-------------------------------------------------
AllC 3.00 0.00 3.00 3.00 3.00 | 2.40
AllD 5.00 1.00 1.02 1.02 3.00 | 2.21
TFT 3.00 0.99 3.00 3.00 3.00 | 2.60
Grim 3.00 0.99 3.00 3.00 3.00 | 2.60
Pavl 3.00 0.50 3.00 3.00 3.00 | 2.50
Матрица попарных выигрышей M_{ij} (шум 5%):
AllC AllD TFT Grim Pavl | Mean
-------------------------------------------------
AllC 3.00 0.24 2.82 0.62 2.77 | 1.89
AllD 4.75 1.00 1.21 1.21 3.81 | 2.39
TFT 2.88 0.97 2.24 1.23 2.22 | 1.91
Grim 0.68 0.96 1.25 1.14 1.28 | 1.06
Pavl 2.78 0.88 2.26 1.29 2.79 | 2.00В детерминированной среде AllD успешно эксплуатирует безусловных кооператоров, но показывает низкий средний результат из-за неспособности договориться с остальными. В зашумлённой среде (где случайное искажение запускает у TFT цепь взаимных предательств, а Grim Trigger навсегда уходит в глухую оборону) средние выигрыши резко падают. Pavlov, напротив, демонстрирует лучшую выживаемость среди кооперативных алгоритмов благодаря способности восстанавливать сотрудничество после взаимных ошибок.
См. также
- Теория игр
- Равновесие Нэша
- Многоагентное обучение с подкреплением
- Self-Play и порождение знаний без внешних данных (на примере AlphaZero)
Примечания
Литература
- Flood M. M. Management Science. — 1958. — Т. 5. — № 1. — С. 5–26.
- Luce R. D., Raiffa H. Games and Decisions: Introduction and Critical Survey. — Wiley, 1957. — ISBN 978-0486659435
- Axelrod R. Journal of Conflict Resolution. — 1980. — Т. 24. — № 1. — С. 3–25.
- Axelrod R. Journal of Conflict Resolution. — 1980. — Т. 24. — № 3. — С. 379–403.
- Axelrod R. The Evolution of Cooperation. — Basic Books, 1984. — ISBN 978-0465021215
- Fudenberg D., Tirole J. Game Theory. — MIT Press, 1991. — ISBN 978-0262061414
- Nowak M., Sigmund K. Nature. — 1993. — Т. 364. — С. 56–58.
- Press W. H., Dyson F. J. Proceedings of the National Academy of Sciences (PNAS). — 2012. — Т. 109. — № 26. — С. 10409–10413.
- Busoniu L., Babuska R., De Schutter B. IEEE Transactions on Systems, Man, and Cybernetics, Part C. — 2008. — Т. 38. — № 2. — С. 156–172.
- Leibo J. Z., Zambaldi V., Lanctot M., Marecki J., Graepel T. Proceedings of the 16th International Conference on Autonomous Agents and Multiagent Systems (AAMAS). — 2017. — С. 464–473.
- Lowe R., Wu Y., Tamar A., Harb J., Abbeel O., Mordatch I. Advances in Neural Information Processing Systems (NeurIPS). — 2017. — Т. 30.
- Rashid T., Samvelyan M., Schroeder de Witt C., Farquhar G., Foerster J., Whiteson S. Proceedings of the 35th International Conference on Machine Learning (ICML). — 2018. — С. 4295–4304.

