2.9 Приближенный метод решения матричных игр mxn
Рассмотрим приближенный метод решения матричных игр - метод Брауна-Робинсон (метод итераций). Идея его заключается в следующем. Разыгрывается эксперимент, в котором игроки А и В поочередно применяют друг против друга свои чистые стратегии. Каждый из игроков стремится увеличить свой выигрыш, предполагая, что будущее будет походить на прошлое; при этом считается, что ни один из них не знает своей оптимальной стратегии.
Такой принцип приводит к некоторой последовательности партий игры, для каждой из которых можно подсчитать приближенные оптимальные стратегии каждого из игроков, а также верхнюю и нижнюю цены игры.
Вместо того, чтобы вычислять каждый раз средний выигрыш, можно пользоваться суммарным за все предыдущие ходы выигрышем и выбирать ту свою стратегию, при которой этот накопленный выигрыш максимален.
Доказано, что такой метод сходится: при увеличении числа партий средний выигрыш на одну партию будет стремиться к цене игры, а частоты применения стратегий - к их вероятностям в оптимальных смешанных стратегиях игроков.
Объясним этот метод на примере игры 3x3, платежная матрица которой приведена ниже. Игра начинается с произвольно выбранной стратегии игрока А, - например стратегии А1 (выбранные стратегии обозначаются звездочкой). Платежные элементы этой строки переписываются под платежной матрицей. Игрок В, предполагая, что будущее будет походить на прошлое, выберет стратегию В1, при которой его проигрыш минимален. Соответствующий этой стратегии проигрыш обозначен звездочкой. Платежные элементы стратегии В1 переписываются справа от платежной матрицы. Игрок А, также предполагая, что будущее будет походить на прошлое, выбирает стратегию А2 (наибольшее число обозначено звездочкой). Платежные элементы, соответствующие стратегии А2, прибавляются поочередно к элементам предыдущей строки, записанной под матрицей. Далее выбирается наименьший элемент суммарной строки. Ему соответствует стратегия В2. Тогда к столбцу, записанному справа от платежной матрицы, поочередно прибавляются платежные элементы стратегии В2. Этот процесс продолжается до тех пор, пока разрыв между нижней и верхней оценками игры станет небольшим. Если при выборе стратегий на некотором шаге есть несколько альтернатив, то выбирается любая из равноценных стратегий.
В рассматриваемом примере сделано 20 шагов. За эти двадцать шагов игрок А применил свою первую стратегию (количество звездочек в суммарных выигрышах, соответствующей первой стратегии) 7 раз; вторую - 8 раз; третью - 5 раз. Игрок В применил стратегию В1 восемь раз; вторую - 8 раз; третью - 4 раза. Следовательно, приближенные оценки оптимальных стратегий, полученные за 20 итераций, равны:
.
Эти оценки не так уж сильно отличаются от точного решения данной матричной игры, которое равно .
|
Bi Ai |
B1 |
B2 |
B3 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
||
|
A1 |
1 |
2 |
3 |
* |
1 |
3 |
5 |
8* |
9* |
10 |
12 |
14 |
17* |
20* |
|
|
A2 |
3 |
1 |
1 |
3* |
4* |
5 |
6 |
9 |
12* |
13* |
14 |
15 |
16 |
||
|
A3 |
1 |
3 |
1 |
1 |
4 |
7* |
8 |
9 |
10 |
13 |
16* |
17 |
18 |
||
|
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
||||||
|
1 |
1* |
2 |
3 |
21* |
22 |
24* |
25 |
27 |
29 |
31 |
32 |
33 |
36* |
||
|
2 |
4 |
3* |
4 |
19 |
22* |
23 |
26* |
27* |
28 |
29 |
32 |
35* |
36 |
||
|
3 |
7 |
4* |
5 |
19 |
20 |
23 |
24 |
27 |
30* |
33* |
34* |
35 |
36 |
||
|
4 |
8 |
7 |
6* |
||||||||||||
|
5 |
9* |
9 |
9 |
||||||||||||
|
6 |
10* |
11 |
12 |
||||||||||||
|
7 |
13 |
12* |
13 |
||||||||||||
|
8 |
16 |
13* |
14 |
||||||||||||
|
9 |
17 |
16 |
15* |
||||||||||||
|
10 |
18 |
13 |
18* |
||||||||||||
|
11 |
19* |
20 |
21 |
||||||||||||
|
12 |
20* |
22 |
24 |
||||||||||||
|
13 |
23 |
23* |
25 |
||||||||||||
|
14 |
24* |
25 |
28 |
||||||||||||
|
15 |
27 |
26* |
29 |
||||||||||||
|
16 |
30 |
27* |
30 |
||||||||||||
|
17 |
31 |
30* |
31 |
||||||||||||
|
18 |
32* |
33 |
32 |
||||||||||||
|
19 |
33* |
36 |
33 |
||||||||||||
|
20 |
36 |
37 |
34* |
Приближенную цену игры определяют как среднеарифметическое между нижней оценкой игры , равной минимально накопленному выигрышу игрока А, деленному на число шагов , и верхней оценкой игры , равной максимальному суммарному проигрышу игрока В, деленному на :
.
В рассматриваемом примере
.
Точная цена игры = 1,8.
Разрыв между и отражает неточность оценок относительно оптимальных смешанных стратегий. В примере составляет 2,8% от цены игры =1,8. Увеличивая число итераций , можно найти еще более точные оценки оптимальных смешанных стратегий.
Преимуществом итерационного метода решения матричных игр является то, что объем вычислений с увеличением размерности игры mxn растет существенно медленнее, чем в методах линейного программирования (в частности, в симплекс - методе).
2.10 Качественная оценка элементов платежной матрицы
Очевидной трудностью при использовании теории игр является задание элементов платежной матрицы с требуемой точностью. Вместе с тем эту задачу не нужно и переоценивать. Использование, например, свойств 1 и 2 из параграфа 2.6, позволяет находить оптимальные стратегии задавая лишь относительные значения элементов платежной матрицы. Например, если в платежной матрице имеется всего три различных значения элементов платежной матрицы, то в этом случае совершенно не важно, какое значение имеют наименьший и наибольший платежи. Единственно, что имеет значение - это относительное положение третьего платежа.
Таким образом, теория игр может дать важные результаты даже в тех случаях, в которых точные оценки платежей затруднены. В частности, имеется слабая форма оценки платежей, называемая упорядочением. Она заключается в расположении платежей по порядку их относительной величины. Существуют игровые ситуации, для которых не требуется ничего большего, чем определение порядка расположения платежей по величине. В других игровых ситуациях знание порядка платежей позволяет сделать частичные выводы относительно оптимальных стратегий и цены игры.
Пусть, например, платежи оцениваются как плохие (п); удовлетворительные (у), хорошие (х) или отличные (о), а матрица игры имеет вид
|
Bj Ai |
B1 |
B2 |
B3 |
B4 |
B5 |
i |
|
|
A1 |
П |
о |
х |
о |
х |
п |
|
|
A2 |
У |
у |
х |
о |
х |
у* |
|
|
A3 |
П |
х |
о |
о |
х |
п |
|
|
A4 |
У |
о |
о |
п |
о |
п |
|
|
j |
у* |
о |
о |
о |
о |
В этой игре ==, т.е. игра решается в чистых стратегиях. Игрок А должен придерживаться своей второй стратегии, а игрок В - стратегии В1. Цена игры - «удовлетворительно».
Пусть игра имеет седловую точку в клетке, отмеченной звездочкой.
|
B1 |
B2 |
B3 |
B4 |
B5 |
B6 |
||
|
A1 |
|||||||
|
A2 |
|||||||
|
A3 |
|||||||
|
A4 |
* |
||||||
|
A5 |
|||||||
|
A6 |
|||||||
|
A7 |
Так как седловая точка отмечает наименьшее число в этой строке и наибольшее число в столбце, то все остальные числа в данной строке (столбце) могут быть какими угодно, лишь бы число, отмеченное звездочкой, оставалось наименьшим в строке (наибольшим в столбце). Наконец, все остальные числа в матрице, которые не попали в строку и столбец, соответствующих оптимальным стратегиям, могут быть вообще какими угодно. Их значения не влияют ни на оптимальный способ ведения игры, ни на ее цену. Пример. Решить игру, платежная матрица которой имеет вид
|
Bj Ai |
B1 |
B2 |
B3 |
|
|
A1 |
п |
о |
у |
|
|
A2 |
х |
у |
х |
|
|
A3 |
п |
у |
о |
Как видно стратегия В1 доминирует стратегию В3, далее стратегия А1 будет доминировать стратегию А3, а, следовательно, исходную игру можно свести к игре 2*2:
|
Bj Ai |
B1 |
B2 |
i |
|
|
A1 |
п |
о |
п |
|
|
A2 |
х |
у |
у* |
|
|
j |
х* |
о |
Таким образом, игрокам не следует использовать стратегии А3 и В3. Так как =у не равняется =х, то игра не имеет седловой точки и должна решаться в смешанных стратегиях.
Частоты применения своих стратегий игроком А равны:
;
.
Частоты применения своих стратегий игроком В равны:
;
,
таким образом, частота применения стратегии А1 пропорциональна разности между “хорошо” и “удовлетворительно”, а стратегии А2 пропорциональна разности между “отлично” и “плохо”. Ясно, что стратегия А1 должна применяться реже, чем стратегия А2 независимо от того, какие упорядоченные числа будут приписаны этим понятиям.
Положение игрока В несколько более неопределенно. Он должен применять стратегию В1 с частотой пропорциональной разности между “отлично” и “удовлетворительно”, а стратегию В2 - с частотой, пропорциональной разности между “хорошо” и “плохо”. Здесь неясно, какая разность больше.
Хотя в данном примере мы не получили строгого решения, но полученное решение дает ориентацию, как следует себя вести в исходной слабо определенной ситуации.
2.11 Способы реализации случайного механизма выбора стратегий
Для реализации применения игроком его активных стратегий с оптимальными вероятностями (относительными частотами), необходимо иметь случайный механизм выбора стратегий.
Например, если оптимальная смешанная стратегия (относительные частоты 1:1), то для ее реализации можно использовать подбрасывание монеты: если выдает “герб”, то применяется первая стратегия, а если “решка”, - то вторая.
Игральную кость можно использовать при относительных частотах 1:5; 2:4; 1:1; 4:2; и так далее до 5:1.
Секундная стрелка часов может служить для выбора случайных чисел от 0 до 59, если только игрок не смотрел на часы недавно и не знает наперед, даже приблизительно, ответ.
Но на практике могут потребоваться любые сочетания чисел в качестве относительных частот. Механизмом, удовлетворяющим вышеуказанному требованию, является датчик случайных чисел R от 0 до 1 с равномерной плотностью вероятности.
Так как стратегии А1, А2, ..., Аm несовместны (в каждый момент, применяется лишь одна из этих стратегий) и образуют полную группу событий , то для реализации случайного механизма выбора стратегий поступают следующим образом. Делят интервал (0, 1) на m участков длиной p1, p2, ..., pm (рис. 2.12). На какой из участков попало число R - ту стратегию и следует в данной партии использовать.
Рис. 2.12
Возникает вопрос: а как же реализуется сам датчик случайных чисел R? Самый простой из датчиков случайных чисел (ДСЧ) - это вращающийся барабан, в котором перемешивается перенумерованные шары. Пусть, например, нам надо разыграть случайное число R от 0 до 1 с точностью 0.001. Заложим в барабан 1000 перенумерованных шаров и после, случайным образом выбранного одного из шаров, разделим его номер на 1000.