Решение матричных игр с помощью линейного программирования. Сведение матричной игры к задаче линейного программирования. Связь матричных игр и линейного программирования

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

где ν * - ожидаемая цена игры; Пij - элемент платежной ма­трицы, расположенный на пересечении ее i -й строки и j - гостолбца и равный выигрышу первого игрока, если он использу­ет стратегию , а его противник использует стратегию ; - вероятность выбора первым игроком стратегии . При этом величина

представляет собой ожидаемый выигрыш первого игрока при использовании им смешанной стратегии Таким образом,

и имеют место неравенства

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

Предположим, что ожидаемая цена игры ν* этой задачи положительна, т.е. ν* > 0. Введем новые переменные:

Так как значению max ν соответствует значение

то мы приходим к задаче линейного программирования для первого игрока

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

Таким образом,

тогда и только тогда, когда

Найдя оптимальное решение ( )T задачи линейного программирования для первого игрока, мы можем вычислить ожидаемую цену игры ν * и затем оптимальную смешанную стратегию первого игрока.

Для второго игрока оптимальная смешанная стратегия опре­деляется условиями:

где - вероятность выбора вторым игроком стратегии . В новых переменных

приходим к задаче линейного программирования для второго игрока

являющейся двойственной задачей по отношению к задаче линейного программирования для первого игрока.

Прежде чем переходить к рассмотрению иллюстративного примера, отметим следующее.

1. Если ν < 0, то ко всем элементам платежной матрицы (Пij ) можно прибавить настолько большое положительное число К > , что все элементы платежной матрицы станут положительными. В этом случае цена игры увеличится на К , а решение не изменится.

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

Пример 3.10. Вернемся к игре «три пальца», которую мы рассматривали в примерах 3.2, 3.4. Для нее

Прибавляя ко всем элементам матрицы (Пij ) число K = 5, приходим к матрице модифицированной игры

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

Пусть дана т х п- игра, заданная своей т х п- матрицей А для первого игрока, А = [а^], г Е I = {1,..., ?n}, j J = = {1,..., ?г}. Будем предполагать, что ау ^ О . В этом случае цена игры v > 0. Предположим также, что в матрице А нс имеется идентичных строк и столбцов (если они имеются, то надо исключить лишнее). Наконец, предполагаем, что в матрице нет лишних стратегий, т.е. уже исключены столбцы (строки), элементы которых ^ (^) соответствующих элементов других столбцов (строк) для первого игрока, который играет на максимум (соответственно для второго игрока, который играет на минимум).

Учитывая эти обозначения, перепишем ограничения:


Чтобы найти максимум v для v 9 надо найти минимум для

Если ввести функцию z = - = Х4, то оказывается, что


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

Аналогичным образом, чтобы найти оптимальные стратегии для второго игрока (М(Р. Q ) ^ ?;), надо решить задачу линейного программирования:



Замечаем, что элементы а! п ^ a" i2 , г = 1,3. Следовательно, можно исключить первый столбец.(стратегию В так как командир (В) играет на минимум. Замечаем также, что элементы а" 3 ^ а[ 4 , г = 1,3. Поэтому можно исключить четвертый столбец (стратегию В 4 ). Матрица игры становится

Наконец, замечаем, что элементы a”j ^ а 2 р j = 1,2. Поэтому можно исключить вторую строку (стратегию Л 2), так как командир (Л) играет на максимум. Матрица игры становится

Чтобы решить эту последнюю игру, применим линейное программирование. Имеются двойственные задачи (1.30) и


Решим эти задачи с помощью геометрического метода (рис. 1.5).

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



Рис. 1.5.

Программа {х = х 2 = 1/2} даст минимум экономической функции z, z - Z m i n = 1.

Координаты точки С дают также оптимальную программу для двойственной задачи. Программа = у 2 = 1/2} даст максимум экономической функции w, w = = 1.

Так как z = 1 = -, то Т/ = - = 1 => Цена v = v"-l = 0.

Получаем оптимальные стратегии для командира (Л):

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

Оптимальные стратегии для командира (В):

т.с. надо охранять один вход двумя солдатами, а другой - одним. ?

Замечание 6. Если нс уменьшить размеры матрицы А! до второго порядка, то для решения игры надо применить симплекс-метод к двойственной задаче (1.31), которую надо представить в стандартной форме:

Заполним три симплекс-таблицы.

Таблица 1

2 *

к = 2 Т

Разрешающий элемент - 2*.

к! = 3 Т

Таблица 2

Разрешающий элемент - 2*.

Таблица 3

Значения всех критериев Aj ^ 0, (У в ^ 0). Следовательно, программа {у 2 = 1/2; ?у 3 = 1/2; щ = 1; ?yi = = 2У5 = 2У7 =

  • 0} дает максимум экономической функции ги, zD = w max =

Так как тй = - = 1, то Т/ = 1 v = Т/ - 1 = 0 (потому

что у" = v+1). Получаем оптимальные стратегии командира ), который охраняет объект:


Чтобы найти оптимальную программу первичной задачи (1.30), применим теорему Неймана (с. 34), согласно которой

Min = Wmax- СлСДОВаТСЛЬНО, МИНИМуМ ЭКОНОМИЧССКОЙ фуНК- ции 2 первоначальной задачи равен z - z m n = 1.

Соответствие между переменными Х{ и yj определяется соотношением (1.24) (с. 34). Следовательно,

Из таблицы 3 находим оптимальную программу первоначальной задачи:

откуда получаем оптимальные стратегии командира (Л):

Этот результат ранее был получен при решении задачи геометрическим методом. ?

гозтземргим

Это пособие набрано с помощью пакета Scientific Workplace, состоящего из трех частей. Часть Scientific Word служит для набора и форматирования текстов. Вторая часть Maple V или MuPAD позволяет производить математические вычисления в символьном виде или с применением численных методов и строить графики в R 2 или R 3 . Третья часть Exam Builder служит для организации проверки уровня знаний.

В качестве примера решим с помощью Scientific Work- Place задачу линейного программирования:

Р е ш с н и е. С помощью клавиатуры, главного меню и панелей инструментов заполним 8 х 1 -матрицу:

и в главном меню применим команду Compute + Simplex + Maximize. Вместо заполнения пяти симплекс-таблиц получаем ответ: Maximum is at: {23 = 0, ?’1 = О.Х 2 = 40}.

  • Если существуют atj

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

Пусть задано матричную декабря m X n платежной матрицей (13.1).

Преобразуем систему (13.2), поделив все члены на v, v> 0 и введя обозначения

Преобразуем систему (13.6), поделив все члены на v, v> 0 и введя обозначения

Задача (13.8), (13.9) является задачей линейного программирования, решив которую получим оптимальное решение матричной игры.

Проанализировал полученные задачи линейного программирования (13.4), (13.5) и (13.8), (13.9) можно сделать вывод, что они составляют пару взаимно двойственных задач линейного программирования. Очевидно, что при нахождении оптимальных стратегий в конкретных задачах следует решать ту из взаимно двойственных задач, решение которой менее трудоемко, а решение второй найти с помощью теорем двойственности.

Последовательность действий при решении матричной игры размером m X n

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

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

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

Решение одной из пары двойственных задач симплексным методом.

Выписка решение матричной игры в смешанных стратегиях.

Пример 13.1. Фирма может выпускать три вида продукции А1, А2, А3, получая при этом прибыль, зависит от спроса, который может принимать один из четырех состояний В1, В2, В3, В4. Прибыль, которую получит фирма при выпуске и го вида продукции

Определить оптимальные пропорции выпуска продукции.

Решение. Сократить размерность платежной матрицы игры невозможно, так как она не содержит заранее невыгодных стратегий.

Определим верхнюю и нижнюю цены игры по алгоритму нахождения максимина (минимакса)

Поэтому эту игру можно решить в смешанных стратегиях путем сведения матричной игры пары к двойственных задач.

Задача линейного программирования, соответствует определению оптимальной стратегии игрока А, имеет вид:

Задача линейного программирования, соответствует определению оптимальной стратегии игрока В, имеет вид:

Из анализа пары взаемнодвоистих задач линейного программирования (13.10), (13.11) и (13.12), (13.13) следует, что решать симплексным методом целесообразно задачу (13.12), 13.13), поскольку она не требует введения искусственных переменных.

Симплекс-метод нахождения оптимальных значений целевой функции это универсальный метод решения задач линейного программирования (ЗЛП), разработанный Дж.Данцингом. В его основе лежит алгоритм симплексных преобразований системы линейных уравнений, дополнен правилом, которое обеспечивает переход не к любому, а к "лучшему" опорного плана.

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

Симплекс-метод основывается на свойствах ЗЛП:

1. Если есть экстремум, то он единственный.

2. Множество всех планов ЗЛП выпуклая.

3. Целевая функция достигает своего оптимального значения в вершине многоугольника решений. Если она принимает свое оптимальное значение больше чем в одной из вершин, то она достигает того же значения в каждой точке, которая является линейной комбинацией этих точек.

4. Каждой вершине многоугольника решений соответствует опорный план ЗЛП.

Если нужно максимизировать целевую функцию, то можно перейти к минимуму max Ly = min (-Ly).

Сведем задачу (13.12), (13.13) к каноническому виду путем введения дополнительных переменных - y5, y6, y7.

Если неравенство в системе ограничений ЗЛП имеет знак "≤", то дополнительную переменную вводят со знаком "+"; если неравенство имеет знак "≥", то дополнительную переменную вводят со знаком "-".

ЗЛП (13.12), (13.13) в канонической форме имеет следующий вид

Переменные x1, x2, х3, х4, являются основными, х5, х6, х7 - дополнительными. Векторы р5, р, р7 образуют единичный базис и называются базисными, причем р5 - первый базисный вектор.

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

если дополнительная переменная имеет знак минус, то в это уравнение вводят искусственную переменную со знаком плюс;

если дополнительная переменная имеет знак плюс, то в это уравнение искусственную переменную вводить не нужно.

Искусственные переменные одновременно вводят в целевую функцию с неизвестным положительным коэффициентом М.

В нашем случае искусственные переменные вводить не следует.

Заполним первую симплекс-таблицу. Начальная симплекс-таблица заполняется следующим образом. В первой строке записывают коэффициенты целевой функции. В столбец "Базис" записывают базовые векторы. В столбце "С" записывают коэффициенты целевой функции при базисных векторах. В столбцах "р0", "р1", "Р2", "р3", "р4", "р5", "р6", "р7" записывают компоненты соответствующих векторов.

Для заполнения клеток таблицы, которые находятся в двух последних строках нужно элементы столбца "С" умножить на соответствующие элементы столбца, рассчитываемого и вычесть число, стоит в первой строке (за исключением столбца "р0»). Например, для заполнения клеток столбца "р2" умножим элементы столбца "С" на соответствующие элементы столбца "р2" и вычтем число - 1: 0 * 3 + 0 * 4 + 0 * 5 - (- 1) = 1.

Таблица 13.1. Первая симплексная таблица

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

Оптимальность опорного плана проверяют по индексным строкой с помощью критерия оптимальности. Критерий оптимальности опорного плана:

Если в индексной строке среди оценок оптимальности есть хотя бы одна, положительная, то опорный план не является оптимальным.

Если в индексной строке все оценки оптимальности для небазисных переменных являются отрицательными числами, то опорный план является оптимальным и единственным.

Если в индексной строке небазисные переменным соответствуют нулевые оценки, а среди оценок оптимальности форуме положительных, то опорный план является оптимальным, но не единственным.

В нашем случае опорный план, отвечающий первой симплекс-таблицы, является не оптимальным.

Для перехода к следующей симплекс-таблицы в индексной строке выбирают самую положительную оценку, начиная с столбца

В нашем случае есть четыре крупнейших положительных оценок, которые совпадают, поэтому среди них выберем любую, например это число 1 в столбце "р3".

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

В нашем случае вектор "р3" следует ввести в базис.

Найдем симплексная отношение оптимальности вQo: элементы столбца "р0" поделим на положительные элементы решающих столбца. Строка, соответствует наименьшему отношению оптимальности вQo, называется решающих. Он показывает вектор следует вывести из базиса.

Генеральный элемент - это элемент, который расположен на пересечении решающих столбца и решающих строки. В нашем случае это число 6.

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

Решающих столбец дополнить нулями. Если в решающих строке есть нули, то соответствующие столбцы переписать без изменений.

Таким образом, вторая симплекс-таблица имеет вид:

Таблица 13.2. Вторая симплексная таблица

Он не является оптимальным, поскольку в индексной строке есть положительные оценки.

По правилам, которые описаны выше, перейдем к третьей симплексной таблице:

Таблица 13.3. Третья симплексная таблица

Он является не оптимальным, поскольку в индексной строке есть положительные оценки.

Перейдем к четвертой симплексной таблице:

Таблица 13.4. Четвертая симплексная таблица

Симплекс-таблицы 13.4 соответствует опорный план:

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

Таким образом, фирме (игроку А) следует выпускать 50% продукции А, 50% продукции А3, продукцию А1 не выпускать. Это позволит фирме получить гарантированную среднюю величину прибыли,

По состояний спроса можно сделать вывод, что оптимальный спрос в 75% находится в состоянии В1 и в 25% - в состоянии В4.

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

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

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

Теперь обо всём по порядку и подробно.

Платёжная матрица, чистые стратегии, цена игры

В матричной игре её правила определяет платёжная матрица .

Рассмотрим игру, в которой имеются два участника: первый игрок и второй игрок. Пусть в распоряжении первого игрока имеется m чистых стратегий, а в распоряжении второго игрока - n чистых стратегий. Поскольку рассматривается игра, естественно, что в этой игре есть выигрыши и есть проигрыши.

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

Составим платёжную матрицу:

Если первый игрок выбирает i чистую стратегию, а второй игрок - j -ю чистую стратегию, то выигрыш первого игрока составит a ij единиц, а проигрыш второго игрока - также a ij единиц.

Так как a ij + (- a ij ) = 0 , то описанная игра является матричной игрой с нулевой суммой.

Простейшим примером матричной игры может служить бросание монеты. Правила игры следующие. Первый и второй игроки бросают монету и в результате выпадает "орёл" или "решка". Если одновременно выпали "орёл" и "орёл" или "решка" или "решка", то первый игрок выиграет одну единицу, а в других случаях он же проиграет одну единицу (второй игрок выиграет одну единицу). Такие же две стратегии и в распоряжении второго игрока. Соответствующая платёжная матрица будет следующей:

Задача теории игр - определить выбор стратегии первого игрока, которая гарантировала бы ему максимальный средний выигрыш, а также выбор стратегии второго игрока, которая гарантировала бы ему максимальный средний проигрыш.

Как происходит выбор стратегии в матричной игре?

Вновь посмотрим на платёжную матрицу:

Сначала определим величину выигрыша первого игрока, если он использует i -ю чистую стратегию. Если первый игрок использует i -ю чистую стратегию, то логично предположить, что второй игрок будет использовать такую чистую стратегию, благодаря которой выигрыш первого игрока был бы минимальным. В свою очередь первый игрок будет использовать такую чистую стратегию, которая бы обеспечила ему максимальный выигрыш. Исходя из этих условий выигрыш первого игрока, который обозначим как v 1 , называется максиминным выигрышем или нижней ценой игры .

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

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

При решении задач на цену игры и определение стратегии для определения этих величин у второго игрока следует поступать следующим образом. Из каждого столбца выписать значение максимального элемента и уже из них выбрать минимальный. Таким образом, проигрыш второго игрока будет минимальным из максимальных. Отсюда и название - минимаксный выигрыш. Номер столбца этого элемента и будет номером чистой стратегии, которую выбирает второй игрок. Если второй игрок использует "минимакс", то независимо от выбора стратегии первым игроком, он проиграет не более v 2 единиц.

Пример 1.

.

Наибольший из наименьших элементов строк - 2, это нижняя цена игры, ей соответствует первая строка, следовательно, максиминная стратегия первого игрока первая. Наименьший из наибольших элементов столбцов - 5, это верхняя цена игры, ей соответствует второй столбец, следовательно, минимаксная стратегия второго игрока - вторая.

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

Итак, гарантированный выигрыш первого игрока:

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

.

Первый игрок использует такую свою чистую стратегию, чтобы проигрыш второго игрока был максимальным. Этот проигрыш обозначается так:

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

.

Ещё пример из этой же серии.

Пример 2. Дана матричная игра с платёжной матрицей

.

Определить максиминную стратегию первого игрока, минимаксную стратегию второго игрока, нижнюю и верхнюю цену игры.

Решение. Справа от платёжной матрицы выпишем наименьшие элементы в её строках и отметим максимальный из них, а снизу от матрицы - наибольшие элементы в столбцах и выберем минимальный из них:

Наибольший из наименьших элементов строк - 3, это нижняя цена игры, ей соответствует вторая строка, следовательно, максиминная стратегия первого игрока вторая. Наименьший из наибольших элементов столбцов - 5, это верхняя цена игры, ей соответствует первый столбец, следовательно, минимаксная стратегия второго игрока - первая.

Седловая точка в матричных играх

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

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

В этом случае матричная игра имеет решение в чистых стратегиях .

Пример 3. Дана матричная игра с платёжной матрицей

.

Решение. Справа от платёжной матрицы выпишем наименьшие элементы в её строках и отметим максимальный из них, а снизу от матрицы - наибольшие элементы в столбцах и выберем минимальный из них:

Нижняя цена игры совпадает с верхней ценой игры. Таким образом, цена игры равна 5. То есть . Цена игры равна значению седловой точки . Максиминная стратегия первого игрока - вторая чистая стратегия, а минимаксная стратегия второго игрока - третья чистая стратегия. Данная матричная игра имеет решение в чистых стратегиях.

Решить задачу на матричную игру самостоятельно, а затем посмотреть решение

Пример 4. Дана матричная игра с платёжной матрицей

.

Найти нижнюю и верхнюю цену игры. Имеет ли данная матричная игра седловую точку?

Матричные игры с оптимальной смешанной стратегией

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

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

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

Если первый игрок использует чистые стратегии с вероятностями , то вектор называется смешанной стратегией первого игрока. Иначе говоря, это "смесь" чистых стратегий. При этом сумма этих вероятностей равна единице:

.

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

.

Если первый игрок использует смешанную стратегию p , а второй игрок - смешанную стратегию q , то имеет смысл математическое ожидание выигрыша первого игрока (проигрыша второго игрока). Чтобы его найти, нужно перемножить вектор смешанной стратении первого игрока (который будет матрицей из одной строки), платёжную матрицу и вектор смешанной стратегии второго игрока (который будет матрицей из одного столбца):

.

Пример 5. Дана матричная игра с платёжной матрицей

.

Определить математическое ожидание выигрыша первого игрока (проигрыша второго игрока), если смешанная стратегия первого игрока , а смешанная стратегия второго игрока .

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

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

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

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

,

.

В таком случае для функции E существует седловая точка , что означает равенство .

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

Сведение матричной игры к задаче линейного программирования

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

Функция цели в прямой задаче линейного программирования:

.

Система ограничений в прямой задаче линейного программирования:

Функция цели в двойственной задаче:

.

Система ограничений в двойственной задаче:

Оптимальный план прямой задачи линейного программирования обозначим

,

а оптимальный план двойственной задачи обозначим

Линейные формы для соответствующих оптимальных планов обозначим и ,

а находить их нужно как суммы соответствующих координат оптимальных планов.

В соответствии определениям предыдущего параграфа и координатами оптимальных планов, в силе следующие смешанные стратегии первого и второго игроков:

.

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

,

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

Нам, практикам, остаётся лишь использовать эту формулу для решения матричных игр в смешанных стратегиях. Как и формулы для нахождения оптимальных смешанных стратегий соответственно первого и второго игроков:

в которых вторые сомножители - векторы. Оптимальные смешанные стратегии также, как мы уже определили в предыдущем параграфе, являются векторами. Поэтому, умножив число (цену игры) на вектор (с координатами оптимальных планов) получим также вектор.

Пример 6. Дана матричная игра с платёжной матрицей

.

Найти цену игры V и оптимальные смешанные стратегии и .

Решение. Составляем соответствующую данной матричной игре задачу линейного программирования:

Получаем решение прямой задачи:

.

Находим линейную форму оптимальных планов как сумму найденных координат.

2.3 Решение матричных игр в смешанных стратегиях путём сведения к задаче линейного программирования

Исследование в матричных играх начинается с нахождения её седловой точки в чистых стратегиях. Если матричная игра имеет седловую точку в чистых стратегиях, то нахождением этой седловой точки заканчивается исследование игры. Если же в игре нет седловой точки в чистых стратегиях, то можно найти нижнюю и верхнюю чистые цены этой игры, которые указывают, что игрок 1 не должен надеяться на выигрыш больший, чем верхняя цена игры, и может быть уверен в получении выигрыша не меньше нижней цены игры. Улучшение решений матричных игр следует искать в использовании секретности применения чистых стратегий и возможности многократного повторения игр в виде партии. Этот результат достигается путём применения чистых стратегий случайно, с определённой вероятностью.

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

Таким образом, если игрок 1 имеет m чистых стратегий 1,2,...,m, то его смешанная стратегия x – это набор чисел x = (x1, ..., xm) удовлетворяющих соотношениям

xi >= 0 (i = 1,m), = 1.

Аналогично для игрока 2, который имеет n чистых стратегий, смешанная стратегия y – это набор чисел

y = (y1, ..., yn), yj >= 0, (j = 1,n), = 1.

Так как каждый раз применение игроком одной чистой стратегии исключает применение другой, то чистые стратегии являются несовместными событиями. Кроме того, они являются единственными возможными событиями.

Чистая стратегия есть частный случай смешанной стратегии. Действительно, если в смешанной стратегии какая-либо i-я чистая стратегия применяется с вероятностью 1, то все остальные чистые стратегии не применяются. И эта i-я чистая стратегия является частным случаем смешанной стратегии. Для соблюдения секретности каждый игрок применяет свои стратегии независимо от выбора другого игрока.

Определение. Средний выигрыш игрока 1 в матричной игре с матрицей А выражается в виде математического ожидания его выигрышей

E (A, x, y) == x A yT

Первый игрок имеет целью за счёт изменения своих смешанных стратегий х максимально увеличить свой средний выигрыш Е (А, х, y), а второй – за счёт своих смешанных стратегий стремится сделать Е (А, х, y) минимальным, т.е. для решения игры необходимо найти такие х и y, при которых достигается верхняя цена игры

Е (А, х, y).

Аналогичной должна быть ситуация и для игрока 2, т.е. нижняя цена игры должна быть

Е (А, х, y).

Подобно играм, имеющим седловые точки в чистых стратегиях, вводится следующее определение: оптимальными смешанными стратегиями игроков 1 и 2 называются такие наборы хо, уо соответственно, которые удовлетворяют равенству

Е (А, х, y) = Е (А, х, y) = Е (А, хо, уо).

Величина Е (А, хо,уо) называется при этом ценой игры и обозначается через u.

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


Е (А, х, уо)<= Е (А, хо, уо)<= Е (А, хо, у)

Оптимальные смешанные стратегии и цена игры называются решением матричной игры.

Основная теорема матричных игр имеет вид:

Теорема (о минимаксе). Для матричной игры с любой матрицей А величины

Е (А, х, y) и Е (А, х, y) существуют и равны между собой.

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

Пусть игра m × n задана платежной матрицей p = (a ij), i = 1, 2, ..., m; j = 1, 2, ..., n. Игрок А обладает стратегиями A 1 , A 2 , ..., A m , игрок В - стратегиями B 1 , B 2 , ..., B m . Необходимо определить оптимальные стратегии S* A = (p* 1 , p* 2 , ..., p* m) и S* B = (q* 1 , q* 2 , ..., q* n), где p* i , q* j - вероятности применения соответствующих чистых стратегий A i , B j , p* 1 + p* 2 +...+ p* m =1, q* 1 + q* 2 +...+ q* n = 1.

Оптимальная стратегия S* A удовлетворяет следующему требованию. Она обеспечивает игроку А средний выигрыш, не меньший, чем цена игры v, при любой стратегии игрока В и выигрыш, равный цене игры v, при оптимальной стратегии игрока B. Без ограничения общности полагаем v > 0: этого можно добиться, сделав все элементы a ij ≥ 0. Если игрок А применяет смешанную стратегию S* A = (p* 1 , p* 2 , ..., p* m) против любой чистой стратегии B j игрока В, то он получает средний выигрыш, или математическое ожидание выигрыша a j = a 1j p 1 + a 2j p 2 +...+ a m j p m , о = 1, 2, ..., n (т.е. элементы j-го столбца платежной матрицы почленно умножаются на соответствующие вероятности стратегий A 1 , A 2 , ..., A m и результаты складываются).

Для оптимальной стратегии S* A все средние выигрыши не меньше цены игры v, поэтому получаем систему неравенств:

(2.3.1)

Каждое из неравенств можно разделить на число v > 0. Введем новые переменные:

x 1 = p 1 /v, x 2 = p 2 /v , ..., p m /v (2.3.2)

Тогда система (2.3.1) примет вид:

(2.3.3)

Цель игрока А - максимизировать свой гарантированный выигрыш, т.е. цену игры v.

Разделив на v ≠ 0 равенство p 1 + p 2 + ...+ p m = 1 , получаем, что переменные x 1 (i = 1, 2, ..., m) удовлетворяют условию: x 1 + x 2 + ...+ x m = 1/v. Максимизация цены игры v эквивалентна минимизации величины1/v, поэтому задача может быть сформулирована следующим образом: определить значения переменных x i ≥ 0, i = 1, 2, ..., m, так, чтобы они удовлетворяли линейным ограничениям (2.3.3) и при этом линейная функция

Z = x 1 + x 2 + ...+ x m , (2.3.4)


обращалась в минимум. Это задача линейного программирования. Решая задачу (2.3.3)-(2.3.4), получаем оптимальное решение p* 1 + p* 2 + ...+ p* m и оптимальную стратегию S A .

Для определения оптимальной стратегии S* B = (q* 1 + q* 2 + ...+ q* n) следует учесть, что игрок В стремится минимизировать гарантированный выигрыш, т.е. найти . Переменные q 1 , q 2 , ..., q n удовлетворяют неравенствам:

(2.3.5)

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

y j = q j /v, j = 1, 2, ..., n, (2.3.6)

то получим систему неравенств:

(2.3.7)

Переменные y j (1, 2, ..., n) удовлетворяют условию .

Игра свелась к следующей задаче

Определить значения переменных y j ≥ 0, j = 1, 2, ..., n, которые удовлетворяют системе неравенств (2.3.7) и максимизируют линейную функцию

Z" = y 1 + y 2 + ...+ y n , (2.3.8)

Решение задачи линейного программирования (2.3.6), (2.3.7) определяет оптимальную стратегию S* B = (q* 1 + q* 2 + ...+ q* n) . При этом цена игры

v = 1 / max, Z" = 1 / min Z (2.3.9)

Составив расширенные матрицы для задач (2.3.3), (2.3.4) и (2.3.7), (2.3.8), убеждаемся, что одна матрица получилась из другой транспонированием:

Таким образом, задачи линейного программирования (2.3.3), (2.3.4) и (2.3.7), (2.3.8) являются взаимно-двойственными. Очевидно, при определении оптимальных стратегий в конкретных задачах следует выбрать ту из взаимно-двойственных задач, решение которой менее трудоемко, а решение другой задачи найти с помощью теорем двойственности.

Статьи по теме: