Мультиагентные_взаимодействия_Васильченко_4_курс

advertisement
Концепция решений; чистые и смешанные стратегии
равновесия Нэша; оптимальность по Парето; кооперация
против некооперации; антагонистический и другие виды
взаимодействия; как происходит кооперация — дилемма
заключенного и эксперименты Аксельрода.
 МАС – это система, образованная
несколькими
взаимодействующими интеллектуальными
агентами.
 Взаимодействие агентов – первое, что
выступает перед нами, когда мы говорим о
создании мультиагентной системы (МАС).
Постановка задачи состоит из следующего:
 В игре участвуют агенты.
 У игры есть различные исходы.
 У каждого агента есть некий набор действий, которые он может предпринимать.
 Введём тип агента θi
∈ Θ для i-го агента.
 У игры есть набор исходов Ω, и для каждого агента каждый исход означает какую-
то прибыль. Так появляется функция полезности (utility function) ui(ω, θi) для
типа θi и исхода ω.
 Агент i предпочитает исход ω1 исходу ω2, если ui(ω1 , θi) > ui(ω2 , θi).
 Стратегия агента – это план, который полностью описывает его поведение во всех
возможных состояниях окружающего мира.
 Через Σi будем обозначать множество стратегий агента i, через si(θi)
стратегию.
∈ Σi - его
 Стратегии бывают чистые (pure) и смешанные (mixed). Чистые стратегии жёстко
задают поведение в каждом состоянии окружающего мира, смешанные задают
распределения вероятностей на множестве возможных действий агента.
 Понятно, что функцию полезности можно с конкретных исходов продолжить на
стратегии. Если N агентов имеют фиксированные стратегии (s1, …, sN) то
функция полезности ui(s1, …, sN, θi) будет просто равна функции полезности на
исходе ω, который однозначно задаётся этими стратегиями.
 Каждый агент пытается максимизировать свою собственную прибыль.
 Он решает задачу оптимизации, добиваясь оптимальной стратегии.
 В результате система оказывается в каком-либо состоянии.
 Будем рассматривать возможные определения равновесного состояния системы, к
которому она может прийти после решения каждым агентом своей локальной
задачи.
Обозначения:
 s = (s1, …, sN) – профиль всех стратегий участников (агентов).
 s-i = (s1, …, si-1, si+1, …, sN) - стратегии всех агентов, кроме i-го.
 Введём также аналогичные обозначения θ и
θ-i для типов агентов.
Ключевое понятие всей теории игр – равновесие Нэша (Nash equilibrium)
Определение:
 То есть, профиль стратегий s находится в равновесии Нэша, если каждый агент
при данных стратегиях других агентов выбирает для себя оптимальную
стратегию.
 При этом: агенту невыгодно отклоняться от избранной стратегии
делать невыгодно только в конкретном профиле
.
, но ему это
 Равновесие Нэша - тип решений игры двух и более игроков, в котором
ни один участник не может увеличить выигрыш, изменив свою
стратегию, когда другие участники стратегий не меняют. Такая
совокупность стратегий, выбранных участниками, и их выигрыши
называются равновесием Нэша.
 Бывают игры с несколькими равновесиями Нэша.
 Бывают игры, где нет равновесий Нэша для чистых стратегий.
 Но равновесие Нэша всегда есть в смешанных стратегиях.
 Определение:
 Бывают игры, где нет равновесий Нэша для чистых стратегий. Но оно всегда (в
конечном случае) есть в смешанных стратегиях.
 Пример: где будет равновесие для игры “камень-ножницы-бумага”?
Камень
Ножницы
Бумага
Камень
0
1
-1
Ножницы
-1
0
1
Бумага
1
-1
0
 Предположим, что второй игрок выбирает камень, ножницы или бумагу с
вероятностью 1/3, а первый выбирает их с вероятностью p, q и 1-p-q.
 Тогда первый игрок выигрывает, проигрывает или делает ничью с вероятностью
1/3 (p + q + 1-p-q) = 1/3.
 То есть если противник выбирает стратегию равновероятно, для игрока все
стратегии эквиваленты.
 Поскольку игра симметрична, то получается, что профиль смешанных стратегий
[(1/3,1/3,1/3), (1/3,1/3,1/3)] находится в равновесии.
 Равновесие Нэша – фундаментальное понятие, но оно не всегда применимо.
 Например, оно много чего предполагает о доступной агентам информации.
 Нужно, чтобы каждый агент знал структуру игры полностью, знал, что другие
знают, знал, что все действуют рационально, и, более того, знал, что все выберут
одно и то же равновесие Нэша (их может быть несколько).
 Мы хотим построить механизм, при котором то или иное равновесное состояние
системы будет оптимальным относительно той или иной цели. Для этого нужно
определить, какая же у нас цель.
 Функция социального выбора:
 Функция социального выбора – это то, чего нам бы хотелось получить от
механизма, который мы разрабатываем.
 Но при этом каждый из агентов будет максимизировать собственную прибыль. Это
надо “примирить”.
 Определим, что же такое механизм:
 Тот или иной механизм можно проанализировать и понять, где у него точки
равновесия.
 При этом может оказаться, что механизм реализует ту или иную функцию
социального выбора.
 Под равновесием можно, например, понимать равновесие по Нэшу.
 Попробуем реализовать тривиальный механизм, который могу бы реализовывать
всевозможные функции социального выбора.
 Просто спросим у каждого агента, какой у него тип (ответы на этот вопрос будут
всевозможными стратегиями агентов), а потом в качестве функции исходов
возьмём функцию социального выбора:
.
 Казалось бы, всё работает…
 Но ведь агенты не обязаны говорить нам правду! Агенты будут максимизировать
свой доход, сообщая тот тип, который выгоднее.
 Нам нужно построить механизм таким образом, чтобы решение этой задачи для
агентов сошлось с желаемым. В данном случае нам нужно было бы реализовать
правдивый механизм, при котором агентам выгодно было бы говорить правду и
сообщать свои настоящие типы.
 Есть ряд свойств функций социального выбора, которые могут помочь при
дизайне механизмов, а также гарантировать много полезных свойств механизмов,
их реализующих. Сейчас мы их рассмотрим.
 Кроме этого, введём ограничения (естественные) на агентов. Определение:
 Оптимальность по Парето означает, что если кому-то стало лучше, чем в
предлагаемом функцией f варианте, то кому-то другому обязательно стало хуже.
 То есть нельзя монотонно улучшить дела сразу всех агентов.
 Равновесие по Парето — это ситуация равновесия, при которой улучшение
положения одного агента невозможно без ухудшения состояния другого.
 Принцип Парето применяется для сильно централизованных систем, подсистемы
которых имеют широкие возможности обмена информацией о принимаемых
решениях, а равновесие по Нэшу характеризует децентрализованные системы. Эти
типы оптимальности имеют разные “идейные основания”: основой оптимальности
по Нэшу является устойчивость МАС, обусловленная интересами и возможностями
отдельных агентов, тогда как принцип оптимальности по Парето опирается на
идею полезности, выгоды для МАС в целом, понимаемой как выгода сразу для всех
ее агентов.
 Методы теории полезности и теории игр, в частности, известные модели и условия
оптимальности, выраженные в виде принципов равновесия, являются
классическими методами исследования кооперации и переговорных процессов.
 Теперь можно ввести вполне естественное определение оптимального механизма:
 Понятие кооперации агентов играет центральную роль в МАС. . Кооперация между
агентами означает их коллективную работу в интересах получения совместных
результатов.
 По сути, это основная форма социального поведения и организации
взаимодействия между агентами, характеризуемая объединением их усилий для
достижения совместной цели при одновременном разделении между ними
функций и обязанностей.
Формирование совместной цели возможно в двух различных случаях:
 цели отдельных агентов близки или практически совпадают,
 цель, сформированная одним агентом, полностью принимается другими агентами.
В общем случае понятие кооперации можно определить формулой: кооперация =
сотрудничество + координация действий + разрешение конфликтов.
Главные преимущества от кооперации агентов таковы:
1. Возможность совместного решения задачи, которую нельзя решить в одиночку .
2. Повышение эффективности и производительности каждого агента.
3. Увеличение качества общего решения за счет роста числа и более детальной
проработки частных решений, обмена информацией между агентами.
4. Увеличение вероятности того, что решение будет найдено, благодаря
объединению различных точек зрения, и пр.
Основными критериями кооперации могут служить:
 время коллективного решения задачи (насколько оно меньше по сравнению со
временем индивидуального решения);
 эффективность распределения задач между агентами;
 успешность объединения различных точек зрения.
Более подробно об уровне кооперации агентов в МАС можно судить на основе
следующих показателей:
1. степень распределения обязанностей, ответственности и ресурсов (в том числе,
знаний);
2. уровень координации действий, включая согласование направления действий
агентов в пространстве и во времени;
3. степень запараллеливания (совмещения) задач, решаемых различными агентами;
4. неизбыточность действий, довольно малое число дублирующих, повторяющих
друг друга действий;
5. избегание (или малая длительность) конфликтов;
6. живучесть, понимаемая как способность МАС пережить отказ или потерю агента.
Три типичных способа централизованного распределения задач между
агентами и согласования их действий:
1. Командное управление или система “господин-раб” (master-slave), когда агентменеджер самостоятельно распределяет все задачи между заранее определенными
агентами-исполнителями и контролирует их выполнение;
2. Распределение по принципу торгов (или “объявление конкурса”), когда агентменеджер распространяет объявление об общем задании, а потенциальные агентыисполнители предлагают свои услуги, т.е. исполнители заранее не определены, а
отбираются в результате конкурса; однако и распределение отдельных задач, и
контроль остаются прерогативой менеджера;
3. Распределение путем соревнования, когда агенты-исполнители дают свои
предложения уже на уровне отдельных задач, т. е. происходит подбор исполнителя
под конкретную задачу, а роль менеджера сводится к контролю и координации их
действий.
Дилемма заключенного (prisoner’s dilemma) – классический пример из теории игр:
 Двоим заключенным предлагают признаться в преступлении и заложить своего
сообщника;
 Реальных доказательств у обвинения нет, поэтому, если оба промолчат, то оба
отсидят по полгода за другие грешки;
 Если оба признаются, обоим за примерное поведение дадут по два года;
 А если один признается, а другой нет, то признавшегося за сотрудничество
отпустят, а упорствующему впаяют по полной, лет десять;
 Держать связь заключенные не могут.
 Что делать каждому из них?
Получается такая матрица возможных стратегий:
Промолчать
Сознаться
Промолчать
(0.5, 0.5)
(10,0)
Сознаться
(0,10)
(2,2)
 Вне зависимости от выбора первого заключённого, второму всё равно выгоднее
признаться!
 Получается, что для каждого из них “сознаться” – доминантная стратегия, и в
результате они будут сидеть по 2 года, а не по 0.5.
 * В дилемме заключённого только профиль стратегий (Сознаться, Сознаться)
находится в равновесии Нэша: преступнику всегда выгоднее сознаться, чем
промолчать.
 Две фирмы производят один и тот же продукт (других производителей этого
продукта на рынке нет).
 Если рекламы не будет вообще, то у них будет одно распределение доходов.
 Если они обе будут активно рекламироваться, то реклама “взаимно сократится”, и
относительное потребление не изменится, а деньги на реклам будут потрачены.
 Но если одна фирма не будет рекламироваться, а вторая будет, то та, что будет,
получит большую прибыль от резко увеличившейся доли рынка.
 Таким образом, возникает дилемма заключённого.
 В книге «Эволюция кооперации» (1984) Роберт Аксельрод исследовал расширение
сценария дилеммы заключённого (ДЗ), которое он назвал повторяющаяся
дилемма заключённого (ПДЗ). В ней участники делают выбор снова раз за разом и
помнят предыдущие результаты.
 «Жадные» стратегии давали плохие результаты в долгосрочном периоде, тогда как
более «альтруистические» стратегии работали лучше, с точки зрения собственного
интереса.
 Лучшей детерминистской стратегией оказалась «Око за око» (Tit for Tat), которую
разработал и выставил на чемпионат Анатолий Рапопорт. Она была простейшей из
всех участвовавших программ, состояла всего из 4 строк кода на языке Бейсик.
Стратегия проста: сотрудничать на первой итерации игры, после этого игрок
делает то же самое, что делал оппонент на предыдущем шаге. Чуть лучше работает
стратегия «Око за око с прощением». Когда оппонент предаёт, на следующем
шаге игрок иногда, вне зависимости от предыдущего шага, сотрудничает с
небольшой вероятностью (1-5 %). Это позволяет случайным образом выйти из
цикла взаимного предательства. Она лучше всего работает, когда в игру
вводится недопонимание — когда решение одного игрока сообщается другому с
ошибкой.
Анализируя стратегии, набравшие лучшие результаты, Аксельрод назвал несколько
условий, необходимых, чтобы стратегия получила высокий результат:
 Добрая. Важнейшее условие — стратегия должна быть «доброй», то есть не
предавать, пока этого не сделает оппонент. Почти все стратегии-лидеры были
добрыми. Поэтому чисто эгоистичная стратегия по чисто эгоистическим причинам
не будет первой «бить» соперника.
 Мстительная. Успешная стратегия не должна быть слепым оптимистом. Она
должна всегда мстить. Пример прощающей стратегии — всегда сотрудничать. Это
очень плохой выбор, поскольку «подлые» стратегии воспользуются этим.
 Прощающая. Другое важное качество успешных стратегий — уметь прощать.
Отомстив, они должны вернуться к сотрудничеству, если оппонент не продолжает
предавать. Это предотвращает бесконечное мщение друг другу и максимизирует
выигрыш.
 Независтливая. Последнее качество — не быть завистливым, то есть не пытаться
набрать больше очков, чем оппонент.
Таким образом, Аксельрод пришёл к утопично звучащему выводу: эгоистичные
индивиды во имя их же эгоистического блага будут стремиться быть добрыми,
прощающими и не завистливыми.
Download