Теория игр. Матричные игры. Онлайн калькулятор

С помощю этого онлайн калькулятора можно решить задачу теории игр. Для решения задачи теории игр задайте количество строк и количество столбцов матрицы. Затем введите данные в ячейки и нажимайте на кнопку "Вычислить". Теоретическую часть смотрите ниже.

Теория игр − теоретическая часть

Бывают ситуации, в которых сталкиваются интересы двух и более сторон. При этом эффективность принимаемого решения одной стороны зависит от действий другой стороны. Такие ситуации называются конфликтными. Конфликтная ситуация называется антагонистической, если увеличение выигрыша одной стороны на определенную величину приводит к уменьшению выигрыша другой стороны на такую же величину. Математическая модель таких ситуаций описывается матричной игрой. Участники игры (т.е. лица, принимающие решение) называются игроками. Принятие игроком того или иного решения в процессе игры и его реализация называется ходом. Ходы могут быть личными (т.е. сознательными) и случайными. Стратегия игрока − осознанный выбор одного из множества вариантов его действий. Стратегия называется чистой, если выбор игрока неизменен от партии к партии. У первого игрока есть m чистых стратегий, а у второго игрока n чистых стратегий. Если множество стратегий игроков конечный, то игра называется конечной, а если хотя бы у одного игрока множество стратегий бесконечно, то игра называется бесконечной. Стратегия игрока называется оптимальной, если она обеспечивает данному игроку (при многократном повторении) максимально возможный средний выигрыш или минимально возможный средний проигрыш.

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

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

Рассмотрим матричную игру двух участников с нулевой суммой и конечным числом возможных ходов.

Решение матричной игры в чистых стратегиях

Пусть игроки A и B распологают конечным числом возможных действий (чистых стратегий). Обозначим их через и , соответственно. Игрок A может выбрать чистую стратегию . В ответ на этот выбор, игрок B может выбрать чистую стратегию . Выбор стратегии первого игрока и ответный выбор стратегии игрока B единственным образом определяет результат aij выигрыш игрока A или проигрыш игрока B.

Таким образом игра с нулевой суммой однозначно определяется матрицей

(1)

которая называется платежной матрицей или матрицей выигрышей. Строки матрицы (1) определяют стратегии первого игрока (), а столбцы соответствуют стратегиям второго игрока ().

Игра проходит партиями. Партия начинается с первого игрока. Он выбирает некоторую строку i матрицы. В ответ на это второй игрок выбирает некоторый столбец j. На этом заканчивается партия и второй игрок платит первому сумму aij, если aij>0 или первый игрок платит сумму aij второму игроку, если aij<0. Цель каждого игрока − выиграть как можно большую (или проиграть как можно меньшую) сумму в результате большого числа партий.

Чтобы определить наилучшие стратегии игроков, мы предполагаем, что участники разумны, т.е. делают все, чтобы добится наилучшего результата для себя. Методом логических рассуждений найдем наилучшую стратегию игрока A. Для этого проанализируем по шагам все его стратегии. Выбирая стратегию Ai (строка i) игрок A должен рассчитывать, что игрок B должен ответить такой стратегией Bj (столбец j), чтобы выигрыш первого игрока был бы минимальным. Поэтому найдем для каждой строки минимальное число:

Зная для каждой строки число αi (i=1,2,...m) игрок A должен выбрать ту стратегию, при котором его выигрыш будет максимальным:

.

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

Рассмотрим, теперь, игру со стороны игрока B. Игрок B заинтересован уменьшить свой проигрыш (или минимизировать выигрыш игрока A. Поэтому для каждого столбца он оценивает свой максимальный проигрыш в связи с тем, какую стратегию i выберет игрок A:

.

Зная для каждого столбца число βj (j=1,2,...n), игрок B должен выбирать ту стратегию, при котором его проигрыш будет минимальным:

.

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

Теорема 1. В матричной игре нижняя цена игры не превосходит верхней цены, т.е. α ≤ β.

Действительно:

. (2)

Если для чистых стратегий Ak и Bl игроков A и B имеет место равенство α = β, то пару чистых стратегий (Ak,Bl) называют седловой точкой матричной игры а γ=α = β чистой ценой игры. Элемент akl называют седловым элементом платежной матрицы.

Заметим, что отклонение игрока A от максимальной стратегии Ak ведет к уменьшению его выигрыша, а отклонение игрока B от минимальной стратегии Bl ведет к увеличению его проигрыша. Поэтому Ak и Bl являются оптимальными чистыми стратегиями игроков A и B, соответственно.

Тройку (Ak, Bl, γ) называют решением матричной игры. Если игра имеет седловую точку, то говорят, что она решается в чистых стратегиях.

Решение матричной игры в смешанных стратегиях

Если матричная игра не имеет седловой точки, то α ≠ β, и, Теорему 1, получим: α < β. Получается, что применение минимаксных стратегий приводит к тому, что выигрыш игрока A не больше α, а проигрыш игрока B не больше β. В этом случае решение матричных игр находят в смешанных стратегиях.

Смешанной стратегией игрока A называется вектор , где

, ,

pi− вероятность, с которой игрок A выбирает свою чистую стратегию Ai.

Смешанной стратегией игрока B называется вектор , где

, ,

qj− вероятность, с которой игрок B выбирает свою чистую стратегию Bj.

Замемим, что чистые стратегии являются частным случаем смешанных стратегий. Если, например игрок A выбрал чистую стратегию A3, то это означает, что вероятность ее выбора равна 1, т.е. . Средняя величина выигрыша игрока A (или проигрыша игрока B) определяется по формуле математического ожидания:

.

Функция M(p,q) называется платежной функцией матричной игры с матрицей. Смешанные стратегии p* и q* называются оптимальными, если они образуют седловую точку для платежной функции M(p,q), т.е.

.

Значение платежной функции при оптимальных смешанных стратегиях p* и q* называют ценой игры:

.

Теорема 2 (Основная теорема теории матричных игр). В любой матричной игре у игроков есть оптимальные смешанные стратегии.

Доказательство. Пусть игра имеет платежную матрицу

,

где все элементы положительны.

Пусть и − смешанные стратегии игроков A и B , соотвестстенно.

Математическое ожидание выигрыша игрока A равна:

.

При любом выборе игроками своих смешанных стратегий p и q, математическое ожидание будет положительным, так как все элементы aij платежной матрицы положительны, pi неотрицательные числа и среди них есть хотя бы одно положительное число, qj неотрицательные числа и среди них есть хотя бы одно положительное число.

Нижняя цена игры

,

так как aij >0, i=1,2,...m, j=1,2,...n. Поскольку α>0 и γ не может быть меньше нижней цены игры, то γ ≥ α, а так как α>0, то γ >0.

Пусть игрок A выбирает такую стратегию p, что математическое ожидание его выигрыша независимо от того, какую стратегию выбирает игрок B было не меньше некоторой величины γ:

, (3)

где pi >0, i=1,2,...m, . Каждая строка в системе линейных неравенств (3) соотвесттвует определенной стратегии игрока B.

Преобразуем систему нерравенств (3), введя новые обозначения:

,

Разделим все неравенства системы (3) на положительное число γ. Тогда имеем:

,

yi >0, i=1,2,...m.

При этом

,

Цель игрока A − максимизировать свой гарантированный выигрыш γ или минимизировать величину

.

Таким образом, приходим к следующей задаче линейного программирования:

, (4a)
, (4b)
. (4c)

Сделав аналогичные рассуждения с позиции игрока B, получим следующую задачу линейного программирования:

, (5a)
, (5b)
. (5c)

Покажем, что задачи линейного программирования (4) и (5) имеют допустимые решения. Так как aij >0, то можно подобрать достаточно большие положительные числа yi, i=1,2,...m так, чтобы выполнялись неравенства (4b). Значит задача линейного программирования (4) имеет допустимое решение.

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

.

Цена игры равна:

.

Найдем оптимальные смешанные стратегии игроков:

,
.

Тогда

,
.

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

Если в матрице есть отрицательные элементы или нули, то можно сделать матрицу положительным, добавив к каждому элементу матрицы достаточно большое положительное число r. Тогда получим следующую матрицу A'(aij+r).

Математическое ожидание выигрыша игрока A с платежной матрицей A(aij):

Математическое ожидание игрока A с платежной матрицей A'(aij+r):

Тогда

Игра с платежной матрицей A' имеет седловую точку в смешанных стратегиях:

Следовательно, игра с платежной матрицей A также имеет седловую точку в смешанных стратегиях а цена игры с платежной матрицей A равна:

.

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