Теория ИгрНобелевская премия

Дизайн механизмов: Как заставить людей говорить правду

14 мин чтения Н. Саперов

Представьте, что вы хотите разделить один ценный приз между группой людей, отдав его тому, кому он нужнее всего. Проблема в том, что все будут лгать, завышая свою заинтересованность. Как математически спроектировать правила, при которых говорить правду станет единственной выгодной стратегией?

Теория игр «наоборот»

Традиционная теория игр задает правила игры и пытается предсказать, как поведут себя рациональные игроки. Мы ищем равновесие Нэша в уже существующих условиях.

Но в 1960-х годах выдающийся экономист Леонид Гурвич (Leonid Hurwicz) задал обратный вопрос: что если мы знаем желаемый результат (например, эффективное распределение ресурсов), но не знаем истинных предпочтений людей? Можем ли мы спроектировать такие правила игры (механизм), при которых эгоистичные агенты сами придут к нашему желаемому результату?

Так родилась теория Дизайна механизмов (Mechanism Design) — инженерный подход к экономике, за который в 2007 году Гурвич, Маскин и Майерсон получили Нобелевскую премию.

Проблема асимметрии информации

Главный враг любого планировщика — скрытая информация. Люди знают свою истинную готовность платить (свою ценность viv_i), но не хотят её раскрывать, если могут на этом заработать. Механизм должен быть Incentive Compatible (совместимым со стимулами).

Задача: 4 мальчика и один велосипед

Давайте рассмотрим интуитивный пример. У нас есть 4 мальчика и один коллекционный велосипед. Мы хотим отдать велосипед тому, кто ценит его больше всех. У каждого мальчика есть своя истинная, скрытая в голове ценность этого велосипеда (в рублях):

  • Мальчик А: истинная ценность vA=100v_A = 100
  • Мальчик Б: истинная ценность vB=80v_B = 80
  • Мальчик В: истинная ценность vC=50v_C = 50
  • Мальчик Г: истинная ценность vD=20v_D = 20

Если мы просто спросим их: «Кто хочет велосипед сильнее всего?», — каждый крикнет «Я! Моя ценность миллион!». Это классический провал механизма прямого опроса: говорить правду невыгодно.

Решение: Аукцион Викри (Второй цены)

Чтобы извлечь из них правду, мы спроектируем специальный механизм — закрытый аукцион второй цены (Vickrey Auction).

Правила игры: Каждый мальчик тайно пишет свою ставку bib_i на бумажке. Тот, кто напишет самую высокую сумму — забирает велосипед. Но! Заплатить он должен не свою ставку, а сумму, которую написал второй по величине участник.

Доказательство доминантной стратегии

Математика этого механизма элегантна. Полезность участника ii равна Ui=vipU_i = v_i - p (где pp — цена второго места), если он выигрывает, и Ui=0U_i = 0, если проигрывает.

Рассмотрим Мальчика А (vA=100v_A = 100). Почему ему невыгодно лгать?

  1. Что если он занизит ставку (напишет bA=70b_A = 70)?
    Если высшая ставка оппонентов равна 80 (Мальчик Б), то написав 70, Мальчик А проиграет. Его выигрыш 0. Но если бы он честно написал 100, он бы выиграл велосипед, заплатил бы 80 и получил бы полезность 10080=+20100 - 80 = +20. Занижать невыгодно — упускаешь победу.
  2. Что если он завысит ставку (напишет bA=150b_A = 150)?
    Если оппоненты ставят меньше 100, он и так выигрывает, говоря правду. Но представьте, что кто-то из оппонентов поставит 120. Если Мальчик А завышает ставку до 150, он выигрывает аукцион. Но теперь он обязан заплатить вторую цену — 120! Его полезность: 100120=20100 - 120 = -20. Он ушел в минус. Завышать невыгодно — риск купить слишком дорого.
bi=vib_i^* = v_i

Следовательно, стратегия честности (bi=vib_i = v_i) является слабо доминантной для каждого игрока.

Интерактив: Аукцион Викри (Вторая цена)

Проверьте математику на практике. Ваша истинная ценность предмета скрыта от других. Выберите свою ценность и попытайтесь обмануть систему, сделав ставку, отличную от правды. Посмотрите, сможете ли вы заработать больше, чем когда говорите правду.

Оптимальная стратегия (Говорить правду)Вы выиграли! Ваша полезность: 100 (ценность) - 85 (цена) = +15. Это максимально возможный выигрыш.

Распределение заявок

Победитель платит85
Ваша чистая выгода+15
Симулятор: Интерактивная модель Mechanism.

Применение в реальном мире

Дизайн механизмов — это не просто абстрактная математика. Именно эти алгоритмы сегодня работают «под капотом» крупнейших мировых рынков:

  • Аукционы Google AdWords: когда рекламодатели борются за клики, Google использует обобщенный аукцион второй цены (GSP-аукцион), чтобы заставить компании раскрыть истинную ценность клиента.
  • Распределение радиочастот: государства продают 5G частоты телекомам с помощью сложных аукционов (FCC auctions), спроектированных Полом Милгромом (Нобелевская премия 2020), чтобы максимизировать эффективность использования спектра.
  • Алгоритм Гейла-Шепли: механизм мэтчинга, который помогает распределять студентов по университетам и врачей по больницам без использования денег, но так, что никому не выгодно обманывать систему.

🧠 Олимпиадная задача: Механизм Кларка-Гровса (VCG)

Город решает, строить ли новый парк стоимостью C=100C = 100. В городе 3 жителя. Истинные полезности от парка для них равны: v1=60v_1 = 60, v2=50v_2 = 50, v3=10v_3 = 10. Суммарная полезность vi=120>100\sum v_i = 120 > 100, значит, парк строить эффективно.

Однако жители скрывают свои ценности, опасаясь налогов. Мэр решает использовать механизм VCG (Викри-Кларка-Гровса). Каждый житель сообщает свою ценность bib_i. Парк строится, если bi100\sum b_i \ge 100.

Если парк строится, каждый платит налог Кларка: налог жителя ii равен ущербу, который его присутствие наносит остальным. Формула налога: Ti=CjibjT_i = C - \sum_{j \neq i} b_j (если эта разница положительна, иначе 0).

Задание: Рассчитайте налоги Кларка для каждого из трех жителей при условии, что они говорят правду. Покажите, покрывают ли собранные налоги стоимость парка.

Математический разбор:

Проверим сумму заявок (при условии честности): 60+50+10=12010060 + 50 + 10 = 120 \ge 100. Парк строится.

Рассчитаем налог для Жителя 1: T1=100(b2+b3)=100(50+10)=40T_1 = 100 - (b_2 + b_3) = 100 - (50 + 10) = 40.

Рассчитаем налог для Жителя 2: T2=100(b1+b3)=100(60+10)=30T_2 = 100 - (b_1 + b_3) = 100 - (60 + 10) = 30.

Рассчитаем налог для Жителя 3: T3=100(b1+b2)=100(60+50)=100110=10T_3 = 100 - (b_1 + b_2) = 100 - (60 + 50) = 100 - 110 = -10. Так как налог не может быть отрицательным (государство не субсидирует в базовой модели VCG), T3=0T_3 = 0.

Итого сборы: T1+T2+T3=40+30+0=70T_1 + T_2 + T_3 = 40 + 30 + 0 = 70.

Вывод для олимпиады: Суммарные налоги (70) не покрывают стоимость парка (100). Это фундаментальная проблема механизма VCG: он гарантирует честность (Incentive Compatibility) и эффективность (выбор лучшего проекта), но не гарантирует сбалансированность бюджета (Budget Balance). Государству придется доплачивать 30 из внешних источников.

Научитесь конструировать механизмы

Задачи на аукционы и выявление предпочтений регулярно встречаются на заключительном этапе Всероса и Высшей Пробы. Мы научим вас видеть скрытую математику в правилах игры.

Глубинная теория

Изучаем VCG механизмы, теорему Мейерсона и дизайн рынков.

Поступление БВИ

Готовим к дипломам перечневых олимпиад I уровня.

Начать подготовку