stringtranslate.com

Минимакс

Минмакс (иногда Минимакс , ММ [1] или седловая точка [2] ) — правило принятия решения, используемое в искусственном интеллекте , теории принятия решений , теории игр , статистике и философии для минимизации возможных потерь для наихудшего сценария ( максимальные потери). . Когда речь идет о выигрыше, его называют «максимином» — максимизировать минимальный выигрыш. Первоначально сформулированная для теории игр с нулевой суммой для нескольких игроков , охватывающая как случаи, когда игроки делают попеременные ходы, так и случаи, когда они делают одновременные ходы, она также была распространена на более сложные игры и на общее принятие решений в присутствии неопределенности.

Теория игры

В общих играх

Максиминное значение — это наивысшее значение, которое игрок может быть уверен получить, не зная действий других игроков; эквивалентно, это наименьшее значение, которое другие игроки могут заставить игрока получить, когда они знают действие игрока. Его формальное определение: [3]

Где:

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

Например, рассмотрим следующую игру для двух игроков, где первый игрок («игрок в ряд») может выбрать любой из трех ходов, обозначенных T , M или B , а второй игрок («игрок в столбец») может выбрать любой из два хода, L или R. Результат комбинации обоих ходов выражается в таблице выигрышей:

(где первое число в каждой ячейке — это выплата игрока по строке, а второе число — это выплата игрока по столбцу).

Для примера мы рассматриваем только чистые стратегии . Проверьте каждого игрока по очереди:

Если оба игрока используют свои максиминные стратегии , вектор выигрыша равен .

Минимаксная ценность игрока — это наименьшее значение, которое другие игроки могут заставить игрока получить, не зная о действиях игрока; эквивалентно, это наибольшая ценность, которую игрок может быть уверен получить, зная действия других игроков. Его формальное определение: [3]

Определение очень похоже на определение значения максимина – только порядок операторов максимума и минимума обратный. В приведенном выше примере:

Для каждого игрока i максимин не более чем минимакс:

Интуитивно понятно, что в максимине максимизация следует за минимизацией, поэтому игрок i пытается максимизировать свою ценность, прежде чем узнает, что сделают остальные; в минимаксе максимизация предшествует минимизации, поэтому игрок i находится в гораздо лучшем положении — он максимизирует свою ценность, зная, что сделали другие.

Другой способ понять обозначения — читать справа налево: Когда мы пишем

начальный набор результатов зависит от обоих, и мы сначала отходим от , максимизируя более (для каждого возможного значения ), чтобы получить набор предельных результатов , который зависит только от Мы, затем минимизируем по этим результатам. (Обратно для максимина.)

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

В играх с нулевой суммой

В играх с нулевой суммой для двух игроков минимаксное решение совпадает с равновесием Нэша .

В контексте игр с нулевой суммой теорема о минимаксе эквивалентна: [4] [ не удалось проверить ]

Для каждой игры двух лиц с нулевой суммой и конечным числом стратегий существует значение V и смешанная стратегия для каждого игрока, такие что

(a) Учитывая стратегию Игрока 2, наилучший возможный выигрыш для Игрока 1 равен V , и
(b) Учитывая стратегию Игрока 1, наилучший возможный выигрыш для Игрока 2 равен − V .

Аналогично, стратегия Игрока 1 гарантирует ему выигрыш V независимо от стратегии Игрока 2, и аналогичным образом Игрок 2 может гарантировать себе выигрыш в размере − V. Название «минимакс» возникло потому, что каждый игрок минимизирует максимально возможный выигрыш для другого – поскольку игра ведется с нулевой суммой, они также минимизируют свои собственные максимальные потери (т. е. максимизируют свой минимальный выигрыш). См. также пример игры без значения .

Пример

Следующий пример игры с нулевой суммой, в которой A и B делают одновременные ходы, иллюстрирует максиминные решения. Предположим, что у каждого игрока есть три варианта выбора, и рассмотрим матрицу выигрышей для игрока А , отображаемую в таблице («Матрица выигрышей для игрока А»). Предположим, что матрица выигрышей для B — это та же самая матрица с обратными знаками (т. е. если выбор — A1 и B1, то B платит 3 в пользу A ). Тогда максиминный выбор для A — это A2, поскольку наихудший возможный результат — это необходимость заплатить 1, тогда как простой максиминный выбор для B — это B2, поскольку худшим возможным результатом будет отсутствие выплаты. Однако это решение нестабильно, поскольку если B считает , что A выберет A2, то B выберет B1, чтобы получить 1; тогда, если A считает, что B выберет B1, тогда A выберет A1, чтобы получить 3; и тогда B выберет B2; и в конце концов оба игрока осознают сложность выбора. Поэтому необходима более стабильная стратегия.

Некоторые варианты выбора доминируют над другими и могут быть исключены: А не выберет А3, поскольку либо А1, либо А2 дадут лучший результат, независимо от того, что выберет Б ; B не выберет B3, поскольку некоторые смеси B1 и B2 дадут лучший результат, независимо от того, что выберет A.

Игрок А может избежать необходимости уплачивать ожидаемый платеж на сумму более1/ 3 выбрав A1 с вероятностью1/ 6 и A2 с вероятностью 5/ 6 : Ожидаемый выигрыш для игрока А составит   3 ×1/ 6 − 1 ×5/ 6 = +1/ 3 в случае, если B выбрал B1 и   −2 ×1/6 + 0 ×5/ 6 = +1/ 3 в случае, если B выбрал B2. Аналогичным образом, B может обеспечить ожидаемый выигрыш в размере, по крайней мере,1/ 3 , независимо от того, что выберет A , используя рандомизированную стратегию выбора B1 с вероятностью1/ 3 и B2 с вероятностью2/ 3 . Эти смешанные минимаксные стратегии не могут быть улучшены и теперь стабильны.

Максимин

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

«Максимин» — это термин, обычно используемый для игр с ненулевой суммой для описания стратегии, которая максимизирует собственный минимальный выигрыш. В играх с ненулевой суммой это обычно не то же самое, что минимизация максимального выигрыша противника или стратегия равновесия Нэша .

В повторяющихся играх

Минимаксные значения очень важны в теории повторяющихся игр . Одна из центральных теорем этой теории, народная теорема , опирается на минимаксные значения.

Комбинаторная теория игр

В комбинаторной теории игр существует минимаксный алгоритм решения игр.

Простая версия минимаксного алгоритма , изложенная ниже, касается таких игр, как крестики-нолики , где каждый игрок может выиграть, проиграть или сыграть вничью. Если игрок А может выиграть за один ход, его лучший ход — это выигрышный ход. Если игрок Б знает, что один ход приведет к ситуации, когда игрок А сможет выиграть за один ход, а другой ход приведет к ситуации, когда игрок А может в лучшем случае сыграть вничью, то лучшим ходом игрока Б будет тот, который приведет к рисовать. В конце игры легко увидеть, какой ход является «лучшим». Алгоритм минимакса помогает найти лучший ход, действуя в обратном направлении от конца игры. На каждом этапе предполагается, что игрок А пытается максимизировать шансы на победу А, в то время как на следующем ходу игрок Б пытается минимизировать шансы на победу А (т. е. максимизировать собственные шансы на победу Б).

Минимаксный алгоритм с поочередными ходами

Минимаксный алгоритм [5] — это рекурсивный алгоритм выбора следующего хода в игре с участием n игроков , обычно в игре с двумя игроками. Значение связано с каждой позицией или состоянием игры. Это значение вычисляется с помощью функции оценки позиции и указывает, насколько хорошо для игрока было бы достичь этой позиции. Затем игрок делает ход, который максимизирует минимальное значение позиции, возникающей в результате возможных последующих ходов противника. Если настала очередь хода игрока A , игрок A присваивает значение каждому из своих допустимых ходов.

Возможный метод распределения состоит в присвоении определенного выигрыша для A как +1, а для B как -1. Это приводит к комбинаторной теории игр , разработанной Джоном Х. Конвеем . Альтернативой является использование правила, согласно которому, если результатом хода является немедленный выигрыш для A , ему присваивается положительная бесконечность, а если это немедленный выигрыш для B , — отрицательная бесконечность. Ценность любого другого хода для A — это максимум значений, полученных в результате каждого из возможных ответов B. По этой причине A называется максимизирующим игроком , а Bминимаксным игроком , отсюда и название минимаксного алгоритма . Приведенный выше алгоритм присвоит значение положительной или отрицательной бесконечности любой позиции, поскольку значение каждой позиции будет значением некоторой окончательной выигрышной или проигрышной позиции. Часто это вообще возможно только в самом конце сложных игр, таких как шахматы или го , поскольку с вычислительной точки зрения невозможно заглянуть вперед до завершения игры, кроме как ближе к концу, и вместо этого позициям присваиваются конечные значения. как оценки степени уверенности в том, что они приведут к победе того или иного игрока.

Это можно расширить, если мы сможем предоставить эвристическую функцию оценки, которая присваивает значения нефинальным состояниям игры, не рассматривая все возможные последующие полные последовательности. Затем мы можем ограничить минимаксный алгоритм просмотром только определенного количества ходов вперед. Это число называется «прогнозированием» и измеряется в « слоях ». Например, шахматный компьютер Deep Blue (первый, кто обыграл на тот момент действующего чемпиона мира Гарри Каспарова ) просматривал вперед как минимум 12 ходов, а затем применил эвристическую функцию оценки. [6]

Алгоритм можно рассматривать как исследование узлов дерева игры . Эффективный коэффициент ветвления дерева — это среднее количество дочерних элементов каждого узла (т. е . среднее количество допустимых ходов в позиции). Количество исследуемых узлов обычно увеличивается экспоненциально с увеличением количества слоев (оно меньше экспоненциального, если оценивать вынужденные перемещения или повторяющиеся позиции). Таким образом, количество узлов, которые необходимо исследовать для анализа игры, примерно равно коэффициенту ветвления, возведенному в степень числа ходов. Поэтому нецелесообразно полностью анализировать такие игры, как шахматы, с использованием минимаксного алгоритма.

Производительность наивного минимаксного алгоритма можно значительно улучшить, не влияя на результат, за счет использования альфа-бета-отсечения . Можно использовать и другие эвристические методы сокращения, но не все из них гарантированно дадут тот же результат, что и необрезанный поиск.

Наивный минимаксный алгоритм можно тривиально модифицировать, чтобы он дополнительно возвращал всю основную вариацию вместе с минимаксной оценкой.

Псевдокод

Псевдокод минимаксного алгоритма с ограниченной глубиной приведен ниже .

функция minimax(node, deep, maximizingPlayer) -  если глубина = 0 или узел является конечным узлом, то  возвращает эвристическое значение узла, если maximizingPlayer , то значение := −∞ для каждого дочернего элемента узла выполните значение := max(значение, minimax(дочерний элемент, глубина - 1, ЛОЖЬ)) возвращаемое значение else  (* минимизация игрока *) значение := +∞ для каждого дочернего элемента узла выполните значение := min(значение, minimax(дочерний элемент, глубина − 1, ИСТИНА)) возвращаемое значение
(*Первоначальный звонок*)минимакс(происхождение, глубина, ИСТИНА)

Функция минимакс возвращает эвристическое значение для конечных узлов (терминальных узлов и узлов на максимальной глубине поиска). Нелистовые узлы наследуют свое значение от дочернего листового узла. Эвристическая ценность — это оценка, измеряющая благосклонность узла для максимизирующего игрока. Следовательно, узлы, приводящие к благоприятному результату, например выигрышу, для максимизирующего игрока, имеют более высокие баллы, чем узлы, более благоприятные для минимизирующего игрока. Эвристическое значение для конечных узлов (окончания игры) — это очки, соответствующие победе, проигрышу или ничьей для максимизирующего игрока. Для нетерминальных конечных узлов при максимальной глубине поиска функция оценки оценивает эвристическое значение узла. Качество этой оценки и глубина поиска определяют качество и точность конечного минимаксного результата.

Minimax рассматривает в своем коде двух игроков (максимизирующего игрока и минимизирующего игрока) отдельно. Основываясь на наблюдении, что минимакс часто можно упростить до алгоритма негамакса .

Пример

Пример минимаксного дерева
Анимированный педагогический пример, который пытается быть дружественным к человеку, заменяя пустоты начальными бесконечными (или произвольно большими) значениями и избегая использования упрощений кодирования negamax .

Предположим, что в игре имеется максимум два возможных хода на игрока за ход. Алгоритм генерирует дерево справа, где кружки представляют ходы игрока, запускающего алгоритм ( максимизация игрока ), а квадраты представляют ходы противника ( минимизация игрока ). Из-за ограничения вычислительных ресурсов, как объяснялось выше, дерево ограничено просмотром вперед на 4 хода.

Алгоритм оценивает каждый листовой узел с помощью эвристической функции оценки и получает показанные значения. Ходам, при которых выигрывает максимизирующий игрок, присваивается положительная бесконечность, а ходам, приводящим к победе минимизирующего игрока, присваивается отрицательная бесконечность. На уровне 3 алгоритм выберет для каждого узла наименьшее из значений дочернего узла и назначит его тому же узлу (например, узел слева выберет минимум между «10» и «+∞», поэтому присвоив себе значение «10»). Следующий шаг на уровне 2 состоит в выборе для каждого узла наибольшего из значений дочернего узла . И снова значения присваиваются каждому родительскому узлу . Алгоритм продолжает поочередно оценивать максимальные и минимальные значения дочерних узлов, пока не достигнет корневого узла , где он выбирает ход с наибольшим значением (представленным на рисунке синей стрелкой). Это ход , который должен сделать игрок, чтобы минимизировать максимально возможные потери .

Минимакс для индивидуальных решений

Минимакс перед лицом неопределенности

Теория минимакса была распространена на решения, в которых нет другого игрока, но последствия которых зависят от неизвестных фактов. Например, решение о разведке полезных ископаемых влечет за собой затраты, которые будут потрачены впустую, если полезных ископаемых нет, но принесут значительную выгоду, если они есть. Один из подходов состоит в том, чтобы относиться к этому как к игре против природы (см. « Ход по природе ») и, используя образ мышления, аналогичный закону Мерфи или сопротивлению , принять подход, который минимизирует максимальную ожидаемую потерю, используя те же методы, что и в нуле для двух человек. -игры с суммой.

Кроме того, были разработаны ожидания-минимаксные деревья для игр с двумя игроками, в которых фактором является случайность (например, игра в кости).

Минимаксный критерий в статистической теории принятия решений

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

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

Невероятностная теория принятия решений

Ключевой особенностью минимаксного принятия решений является его невероятностный характер: в отличие от решений, использующих ожидаемую ценность или ожидаемую полезность , он не делает никаких предположений о вероятностях различных результатов, а только анализ сценариев возможных результатов. Таким образом, он устойчив к изменениям в предположениях, в отличие от других методов принятия решений. Существуют различные расширения этого невероятностного подхода, в частности теория минимаксного сожаления и теория принятия решений по информационному пробелу .

Кроме того, минимакс требует только порядкового измерения (чтобы результаты сравнивались и ранжировались), а не интервальных измерений (чтобы результаты включали «насколько лучше или хуже») и возвращает порядковые данные, используя только смоделированные результаты: вывод минимаксного анализа : «Эта стратегия является минимаксной, поскольку наихудший случай (результат) менее плох, чем любая другая стратегия». Сравните с анализом ожидаемой стоимости, вывод которого имеет вид: «Эта стратегия дает ( X ) = n ». Таким образом, Minimax можно использовать с порядковыми данными и он может быть более прозрачным.

Минимакс в политике

Концепцию голосования « меньшего зла » (LEV) можно рассматривать как форму минимаксной стратегии, при которой избиратели, столкнувшись с двумя или более кандидатами, выбирают того, кого они считают наименее вредным или «наименьшим злом». Для этого «голосование не следует рассматривать как форму личного самовыражения или морального суждения, направленную в отместку кандидатам от крупных партий, которые не отражают наши ценности, или как коррумпированную систему, предназначенную для ограничения выбора теми, которые приемлемы для корпоративной элиты». », а скорее как возможность уменьшить ущерб или потери. [7]

Максимин в философии

В философии термин «максимин» часто используется в контексте « Теории справедливости » Джона Ролза , где он ссылается на него в контексте « Принципа различия» . [8] Ролз определил этот принцип как правило, которое гласит, что социальное и экономическое неравенство должно быть организовано так, чтобы «оно приносило наибольшую пользу наименее обеспеченным членам общества». [9] [10]

Смотрите также

Рекомендации

  1. ^ Бахус, Баруа (январь 2013 г.). Провинциальный индекс здравоохранения за 2013 г. (PDF) (Отчет). Институт Фрейзера. п. 25.
  2. ^ Профессор Рэймонд Флуд. Тьюринг и фон Нейман (видео). Грешем-Колледж – через YouTube .
  3. ^ аб Машлер, Майкл; Солан, Эйлон ; Замир, Шмуэль (2013). Теория игры . Издательство Кембриджского университета . стр. 176–180. ISBN 9781107005488.
  4. ^ Осборн, Мартин Дж.; Рубинштейн, А. (1994). Курс теории игр (печатная ред.). Кембридж, Массачусетс: MIT Press. ISBN 9780262150415.
  5. ^ Рассел, Стюарт Дж .; Норвиг, Питер. (2021). Искусственный интеллект: современный подход (4-е изд.). Хобокен: Пирсон. стр. 149–150. ISBN 9780134610993. LCCN  20190474.
  6. ^ Сюй, Фэн-Сюн (1999). «Шахматные гроссмейстерские фишки IBM Deep Blue» . IEEE микро . Лос Аламитос, Калифорния, США: Компьютерное общество IEEE. 19 (2): 70–81. дои : 10.1109/40.755469. Во время матча 1997 года программный поиск расширил поиск примерно до 40 слоев вдоль силовых линий, хотя нерасширенный поиск достиг всего около 12 слоев.
  7. ^ Ноам Хомский и Джон Халле, «Краткий обзор из восьми пунктов для LEV (меньшее злое голосование)», New Politics, 15 июня 2016 г.
  8. ^ Ролз, Дж. (1971). Теория справедливости . п. 152.
  9. ^ Эрроу, К. (май 1973 г.). «Некоторые ординалистско-утилитаристские заметки о теории справедливости Ролза». Журнал философии . 70 (9): 245–263. дои : 10.2307/2025006. JSTOR  2025006.
  10. ^ Харсаньи, Дж. (июнь 1975 г.). «Может ли принцип максимина служить основой морали? Критика теории Джона Ролза» (PDF) . Американский обзор политической науки . 69 (2): 594–606. дои : 10.2307/1959090. JSTOR  1959090. S2CID  118261543.

Внешние ссылки