Кооперативные игры (1)

advertisement
Мультиагентное принятие решений
Образование коалиций: ядро; вектор Шепли;
представление о кооперативных играх;
формирование структуры коалиции.
Подготовила:
Студентка 4 курса
Михайлова Татьяна Николаевна
Специальность:
Прикладная информатика
Кооперативная игра
игра, в которой группы игроков —
коалиции — могут объединять свои усилия для
достижения оптимального решения.
2
Кооперативные
игры
повсюду в реальной жизни:
встречаются
•
Экспедиция из n человек нашла в лесу
сокровище. Два человека смогут вдвоем унести одну
часть сокровища, но не более. Как разделятся
участники экспедиции для того чтобы нести
сокровище и как будет поделена находка между
ними?
•
Совет учителей долен выбрать лучшего ученика в
школе, чтобы наградить его призом. Выбор
происходит путем голосования и награждается тот
ученик, который набрал максимальное количество
голосов. Причем, один из учителей – директор школы.
Если ему не нравится предложение, он может
аннулировать результаты голосования и тогда
голосование происходит еще раз. Какие возможны
коалиции внутри совета?
•
Трое друзей покупают пирог. Сколько заплатит
каждый и какую долю пирога получит?
3
Коалиция - основная единица анализа
в теории кооперативных игр.
4
Основные проблемы в
кооперативных играх:
• Формирование структуры коалиции
• Командная работы
• Разделения выигрыша между игроками
5
Математическое представление
Пусть N - множество всех игроков, N ={1, 2, ..., n}
K- любое его подмножество
Если игроки из K договариваются между собой о совместных действиях
и, таким образом, образуют одну коалицию, то число таких коалиций:
𝐶𝑛𝑟 = 2𝑛 − 1
Число всевозможных коалиций значительно растёт в зависимости от
числа всех игроков в данной игре.
Для исследования этих игр необходимо учитывать все возможные
коалиции, и поэтому трудности исследований возрастают с ростом n.
Образовав коалицию, множество игроков K действует как один игрок
против остальных игроков, и выигрыш этой коалиции зависит от применяемых
стратегий каждым из n игроков.
6
Формирование коалиции
• Принимается решение, какие агенты
участвуют в коалиции. После создания
коалиций у любого агента возникает вопрос:
к
какой
именно
коалиции
лучше
присоединиться? К той, которая принесёт
наибольший выигрыш.
• Для
определения
выигрыша
каждой
коалиции
используется
характеристическая функция.
7
• Вариантов возможных коалиций много (а именно 2Ag, где Ag—
количество всех агентов), а выигрыш для какой-то коалиции C будет
некоторой характеристической величиной, зависящей от состава
коалиции
• Тогда кооперативная игра представляется парой:
(Ag, v),
где Ag— множество всех агентов, а v : 2Ag → R — это
характеристическая функция игры
• Подобная форма представления может быть применена для всех
игр. В настоящее время существуют способы перевести любую
игру из нормальной формы в характеристическую, но
преобразование в обратную сторону возможно не во всех случаях.
8
Характеристическая функция
Функция v, ставящая в соответствие каждой коалиции С
наибольший получаемый ею выигрыш v(С), называется
характеристической функцией игры .
Примеры
•
«Ботинки». Пара ботинок (левый плюс правый) стоит 600 рублей. Один ботинок
без пары не стоит ничего. У Лени есть левый ботинок, у Левы — еще один такой
же левый, а у Паши — правый. Здесь N ={Леня,Лева,Паша}, v(Леня) = v(Лева) =
v(Паша) = 0 (в одиночку никто не может получить 600 рублей); v(Леня,Лева) =
0 (у них нет правого); для любой другой коалиции S, v(S) = 600, т.к. есть и правый
и левый ботинки.
•
«Носки». Левые и правые носки ничем не отличаются. Пара носков стоит 60
рублей. Один носок ничего не стоит. У Андрея — три носка, у Бориса — пять
носков. Здесь N = {Андрей, Борис},v(Андрей) = 60, v(Борис) = 120, v(Андрей,
Борис) = 240.
9
Характеристическая функция
Свойство супераддитивности:
Возможности объединенной коалиции не меньше,
чем
возможности
нескольких
непересекающихся
коалиций, действующих независимо.
Где T, S – любые непересекающиеся коалиции.
10
Представление
характеристической функции
1. Графы
Представление v в
виде неорентированного
графа на Ag, у которого
роль весов выполняют
𝑤𝑖,𝑗 между узлами i, 𝑗 ∈
𝐴𝑔.
Тогда размер коалиции:
v 𝐶 =
𝑤𝑖,𝑗
11
2. «Голосование» Weighted Voting Games
Для каждого агента i ∈ 𝐴𝑔 задаются веса
𝑤𝑖 и определяется общая квота q.
1, если 𝑤𝑖 ≥ 𝑞
v 𝐶 =
0 во всех других случаях
12
3. Marginal Contribution Nets
Характеристическая функция представляется в
виде правил:
Шаблон -> выгода
Шаблоном называется группа агентов, правило
же применяется к коалиции агентов С, если С является
надмножеством агентов в шаблоне.
Выгода коалиции: суммируются значения всех
правил, которые были к ней применены.
13
14
Основным вопросом кооперативных
игр является вопрос договоренности между
агентами.
Каким
образом
будет
происходить сговор и как, в результате,
будет
разделен
выигрыш
между
участниками?
15
Делёж
Если обозначить через xi выигрыш i-го игрока, то должны удовлетворяться
следующие условия:
• условие индивидуальной рациональности
xi  ( i ), для i N
т.е. любой игрок должен получить выигрыш в коалиции не меньше, чем он
получил бы, не участвуя в ней (в противном случае он не будет участвовать в
коалиции);
•
условие коллективной рациональности
𝒙𝒊 = 𝒗(𝑵)
т.е. сумма выигрышей игроков должна соответствовать возможностям (если
сумма выигрышей всех игроков меньше, чем (N), то игрокам незачем вступать в
коалицию; если же потребовать, чтобы сумма выигрышей была больше, чем (N), то
это значит, что игроки должны делить между собой сумму большую, чем у них есть).
Вектор, удовлетворяющий условиям индивидуальной и
коллективной рациональности, называется дележом.
16
Доминирование дележей
Делёж x доминирует делёж y, если
выполняются следующие условия:
– 𝑥𝑖 > 𝑦𝑖 (условие единогласия)
– 𝑥𝑖 ≤ 𝑣 𝐾 (условие реализуемости)
17
C-ядро
• множество недоминируемых дележей в
кооперативной игре
• Г = <N, v>
Теорема
Для того, чтобы дележ 𝛼𝑖 принадлежал Сядру, необходимо и достаточно выполнения для
всех S, принадлежащих N, следующего
неравенства:
𝑣(𝑆) ≤
𝑖∈𝑆 𝛼𝑖 ,
где S-коалиция, N-множество игроков
18
«Ботинки»
Пара ботинок (левый плюс правый) стоит 600
рублей. Один ботинок без пары не стоит ничего. У Лени
есть левый ботинок, у Левы — еще один такой же
левый,
а
у
Паши
—
правый.
Здесь
N
={Леня,Лева,Паша}, v(Леня) = v(Лева) = v(Паша) = 0 (в
одиночку
никто
не
может
получить
600
рублей); v(Леня,Лева) = 0 (у них нет правого); для любой
другой коалиции S, v(S) = 600, т.к. есть и правый и левый
ботинки.
Решение
𝑥𝑙1 + 𝑥𝑙2 + 𝑥𝑟 = 1,
𝑥𝑙1 + 𝑥𝑟 ≥ 1,
𝑥𝑙2 + 𝑥𝑟 ≥ 1.
Единственное решение – это 𝑥𝑙1 = 𝑥𝑙2 = 0, 𝑥𝑟 = 1.
19
«Носки»
Левые и правые носки ничем не отличаются.
Пара носков стоит 60 рублей. Один носок ничего не
стоит. У Андрея — три носка, у Бориса — пять
носков. Здесь N = {Андрей, Борис},v(Андрей) =
60, v(Борис) = 120, v(Андрей, Борис) = 240.
Решение
𝑥1 + 𝑥2 = 240,
𝑥1 ≥ 60, 𝑥2 ≥ 120
Решение: любой дележ вида: (𝑥1 , 240 − 𝑥1 ).
Обладатель редкого ресурса получает всё 
20
Недостатки С-ядра:
• может быть пустым
• может быть не единственным.
Эти две проблемы решает другая
концепция - вектор Шепли.
21
Вектор Шепли
математическое
ожидание
вклада
каждого игрока, если большая коалиция
формируется в случайном порядке.
• вектор Шепли всегда (по крайней мере, при
конечном числе игроков) существует
• Вектор Шепли всегда единственный.
22
Вектор
Шепли
—
это
вектор
(𝜑1 , 𝜑2 , … , 𝜑𝑛 ) , где выигрыш i-го
игрока определяется по принципу:
𝜑𝑖 = 𝐸(𝐴𝑑𝑑(𝑖)),
где Add(i) –прибавка, которую вносит
игрок, при добавлении к коалиции.
23
Пример
«Ботинки».
Пара ботинок (левый плюс правый) стоит 600 рублей. Один ботинок
без пары не стоит ничего. У Лени есть левый ботинок, у Левы — еще один
такой же левый, а у Паши — правый. Здесь N ={Леня, Лева, Паша}, v(Леня) =
v(Лева) = v(Паша) = 0 (в одиночку никто не может получить 600
рублей); v(Леня, Лева) = 0 (у них нет правого); для любой другой коалиции S, v(S)
= 600, т.к. есть и правый и левый ботинки.
Решение
Найдем 𝐸(𝐴𝑑𝑑(𝑟)). Если Паша входит первым, то его вклад равен нулю,
иначе его вклад равен 600.
2
Значит 𝐸 𝐴𝑑𝑑 𝑖 = 3 600 = 400.
Вклад Лени равен 600 только если первым вошел Паша, а вторым — Леня.
1
Значит 𝐸 𝐴𝑑𝑑 𝑙1 = 6 600 = 100.
Аналогично для Левы.
Вектор Шепли равен: (100, 100, 400).
24
Выводы
• Игры, в которых допускаются совместные действия игроков и
перераспределение выигрыша, можно формализовать как игры
в форме характеристической функции
• Основным понятием для корпоративной игры в форме
характеристической функции является понятие дележа
• Одним из принципов оптимального распределения
максимального суммарного выигрыша между игроками в
кооперативной игре является С-ядро, которое обладают рядом
недостатков (множественность и возможная пустота)
• Вектор Шепли предлагает единственный дележ в качестве
решения любой кооперативной игры
• Основным недостатком вектора Шепли является тот факт, что
он не обязательно принадлежит С-ядру. Поэтому лучше строить
такой делёж, который сохранял бы положительные свойства
вектора Шепли и принадлежал бы С-ядру.
25
Спасибо за внимание!
26
Список дополнительно используемой
литературы
• Н. А. Зенкевич, Л. А. Петросян, Д. В. К. Янг
«Динамические игры и их приложения в
менеджменте»
• Лекции «Теория игр», Коновалов А.П.
• Лекции «Кооперативная теория игр» ,
Б. Демешев
27
Пример 1
• Игра
3-х
лиц
характеристической
функцией вида:
с
• Находится С-ядро игры.
Дележом будет вектор x
=
(x1,
x2,
x3),
удовлетворяющий
условиям:
• 𝑥1 + 𝑥2 + 𝑥3 = 8
• 𝑥1 ≥ 1, 𝑥2 ≥ 0, 𝑥3 ≥ 1
28
Пример 1
Вершины многоугольника
- дележи, в которых поочередно
две компоненты принимают свои
наименьшие
возможные
значения.
29
Пример 1
30
Пример 1
𝐾 = 1,2 ∶ 𝑥1 + 𝑥2 ≥ 4 => 𝑥3
≤ 8 − 𝑥1 + 𝑥2 = 4
𝐾 = 1,3 ∶ 𝑥1 + 𝑥3 ≥ 3 => 𝑥2
≤ 8 − 𝑥1 + 𝑥3 = 5
𝐾 = 2,3 ∶ 𝑥2 + 𝑥3 ≥ 5 => 𝑥1
≤ 8 − 𝑥2 + 𝑥3 = 3
31
Пример 1
32
Пример 2
Торговцу картинами в руки попало редкое полотно,
которое он оценивает самое меньшее в а1 долларов.
Он хотел бы продать картину одному из двух своих знакомым
галеристов, которые оценивают картину в а2 и а3 долларов
соответственно, причём а1 < а2 < а3 .
Если торговец ни с кем не договорится, то он останется при своих,
то есть 𝑣 1 = 𝑎1 .
Галеристы же ни по одному, ни даже вместе, никак картиной не
завладеют. Поэтому 𝑣 2 = 𝑣 3 = 𝑣 2,3 = 0.
Если же торговец договорится о продаже со вторым галеристом, то
картина уйдет не меньше, чем за а3 долларов, аналогично при
сделке с первым галеристом.
Характеристическая функция игры:
33
Пример 2
• 𝐾 = 1,2 ∶ 𝑥1 + 𝑥2 ≥ 𝑎3 => 𝑥3 ≤ 𝑎3 − 𝑥1 + 𝑥2 = 𝑎3 − 𝑎2
• 𝐾 = 1,3 ∶ 𝑥1 + 𝑥3 ≥ 𝑎3 => 𝑥2 ≤ 𝑎3 − 𝑥1 + 𝑥3 = 0
• 𝐾 = 2,3 ∶ 𝑥2 + 𝑥3 ≥ 0 => 𝑥1 ≤ 𝑎3 − 𝑥2 + 𝑥3 = 𝑎3
34
Пример 2
Таким образом, второй галерист
может купить картину за любую сумму 𝛼
при условии , что 𝛼1 ≤ 𝛼2 ≤ 𝛼3 . Торговец
получает выигрыш 𝛼 , второй галерист –
картину, а первый вообще не учавствует в
дележе.
Интересно, что если бы не было
первого галериста, то второй мог бы
рассчитывать купить картину и меньше, чем
за а2 долларов, однако наличие соперника
заставляет тратить больше 
35
Download