Миргородская 7сессия / Методы оптимизации / Лабораторные работы / Приближенные методы решения игр
.pdfМинистерство образования и профессионального образования
Российской федерации
Саратовский государственный технический университет
ПРИБЛИЖЕННЫЕ МЕТОДЫ РЕШЕНИЯ ИГР
Методические указания к выполнению лабораторной работы по курсу “Теория принятия решений” , “Системный анализ” для студентов специальности 2202
Одобрено
редакционно-издателъским советом Саратовского государственного
технического университета
Саратов 1998
ПРИБЛИЖЕННЫЕ МЕТОДЫ РЕШЕНИЯ ИГР
Методические указания к выполнению лабораторной работы по курсу “Теория принятия решений” , “Системный анализ”
Составители: Митяшин Никита Петрович, Томашевский Юрий Болеславович, Василевская Людмила Федоровна
Рецензент Ю. М. Голембиовский
Редактор Л.А.Скворцова
Лицензия ЛР №02071 от 15.11.96
Подписано в печать 10.3.98 |
|
Формат 60*84/16 |
Бум. оберт. |
Усл.-печ.л.0,96(1,0) |
Уч.-изд.л.0,9 |
Тираж |
100 экз. |
Заказ 73 |
Бесплатно
Саратовский государственный технический университет 410054, Саратов, ул. Политехническая, 77
Ротапринт СГТУ, 410054 г.Саратов, ул.Политехническая, 77
ВВЕДЕНИЕ Во многих практических задачах управления приходится анализировать ситуации, в
которых сталкиваются стороны, преследующие различные цели, причем результат любого мероприятия каждой из сторон зависит от образа действий противника. Такие ситуации принято называть конфликтными. Математической теорией конфликтных ситуаций является теория игр. Основные понятия и определения теории игр приведены в предлагаемой ниже литературе. В настоящий лабораторной работе изучаются простейшие приближенные методы решения игр.
ЦЕЛЬ РАБОТЫ – ознакомление с основными понятиями теории игр и изучение приближенных методов решения игр.
ОБЩИЕ ПОЛОЖЕНИЯ Часто в практических задачах нет необходимости находить точное решение игры:
достаточно найти приближенное решение, дающее средний выигрыш, близкий к цене игры. Ориентировочное знание цены игры n может дать уже простой анализ матрицы и определение нижней 
и верхней 
цен игры. Если
и
близки, практически нет необходимости заниматься поисками точного решения, а достаточно будет выбрать чистые минимаксные стратегии. В случаях, когда
и
не близки, можно получить приемлемое для практики решение с помощью численных методов решения игр, из которых мы вкратце осветим метод итераций. Идея метода итераций сводится к следующему. Разыгрывается 1 мысленный эксперимент 1, в котором противники
и
применяют друг против друга свои стратегии. Эксперимент состоит из последовательности элементарных игр, каждая из которых имеет матрицу заданной игры. Начинается с того, что мы (игрок А) выбирает произвольно одну из своих стратегии, например
. Противник на это отвечает той своей стратегией
, которая наименее выгодна для нас, т.е. обращает выигрыш при стратегии
в минимум. На этот ход мы отвечаем той своей стратегией
которая дает максимальный средний выигрыш при применении противником стратегии
, которая дает нам наименьший средний выигрыш
при этих двух стратегиях (
,
), и так далее. На каждом шаге итерационного процесса каждый игрок отвечает на любой ход другого игрока той своей стратегией, которая является оптимальной относительно всех его предыдущих ходов, рассматриваемых как некоторая смешанная стратегия, в которой чистые стратегии представлены в пропорциях, соответствующих частоте их применения.
Такой способ представляет собой как бы модель реального практического обучения игроков, когда каждый из них на опыте прощупает способ поведения противника и старается отвечать на него наивыгоднейшим для себя образом.
МЕТОДИЧЕСКИЕ УКАЗАНИЯ Если такую имитацию процесса обучения продолжать достаточно долго, то средний
выигрыш, приходящийся на одну пару ходов (элементарную игру), будет стремиться к цене игры, а частоты 





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

. Игра задана матрицей:
А В
8 |
2 |
4 |
4 |
5 |
6 |
1 |
7 |
3 |
Таблица 1.
Ход итерационного процесса
n |
1 |
|
|
|
|
|
|
|
|
|
|
|
j |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
1 |
3 |
|
|
|
|
|
7 |
|
3 |
1 |
|
|
|
|
|
|
|
4 |
|
|
1 |
|
|
1 |
8 |
4,5 |
|||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||
2 |
1 |
9 |
|
9 |
|
|
|
|
3 |
|
|
|
|
|
|
|
10 |
|
4 |
|
|
3,5 |
6,0 |
4,75 |
|||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||
3 |
1 |
17 |
|
|
|
11 |
2 |
|
14 |
|
|
|
|
|
|
11 |
|
3,67 |
5,00 |
4,33 |
|||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||
4 |
2 |
21 |
|
|
|
17 |
2 |
|
16 |
|
|
|
|
|
|
18 |
|
4,00 |
5,00 |
4,60 |
|||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||
5 |
2 |
25 |
|
|
|
23 |
2 |
|
18 |
|
|
|
|
|
|
25 |
|
4,20 |
5,00 |
4,60 |
|||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||||
6 |
2 |
29 |
|
|
|
29 |
2 |
|
20 |
|
30 |
|
|
|
|
|
|
4,33 |
5,33 |
4,82 |
|||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||||
7 |
3 |
|
|
|
|
|
33 |
32 |
1 |
|
28 |
|
34 |
|
|
|
|
|
|
4,29 |
4,86 |
4,57 |
|||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||
8 |
2 |
|
|
|
|
|
38 |
38 |
1 |
|
36 |
|
|
|
|
|
|
34 |
|
4,25 |
4,75 |
4,50 |
|||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||||
9 |
2 |
|
|
|
|
|
43 |
44 |
1 |
|
|
|
|
|
|
|
42 |
|
35 |
|
4,23 |
4,89 |
4,56 |
||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||||
10 |
1 |
46 |
|
|
|
48 |
2 |
|
46 |
|
|
|
|
|
|
42 |
|
4,50 |
4,70 |
4,60 |
|||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||||||
11 |
2 |
50 |
|
|
|
54 |
1 |
|
|
|
|
|
|
|
51 |
|
43 |
|
4,55 |
4,91 |
4,72 |
||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||||||
12 |
1 |
58 |
|
|
|
58 |
2 |
|
|
|
|
|
|
|
56 |
|
50 |
|
4,33 |
4,66 |
4,49 |
||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||||
13 |
2 |
62 |
|
|
|
64 |
2 |
|
58 |
|
|
|
|
|
|
57 |
|
4,38 |
4,70 |
4,54 |
|||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||||
14 |
2 |
66 |
|
|
|
70 |
2 |
|
60 |
|
|
|
|
|
|
64 |
|
4,43 |
4,71 |
4,56 |
|||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||||
15 |
2 |
70 |
|
|
|
76 |
2 |
|
62 |
|
|
|
|
|
|
71 |
|
4,47 |
4,73 |
4,60 |
|||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||
16 |
3 |
|
|
|
|
|
74 |
79 |
1 |
|
70 |
|
|
|
|
|
|
72 |
|
4,44 |
4,69 |
4,56 |
|||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||
17 |
2 |
|
|
|
|
|
79 |
85 |
1 |
|
78 |
|
|
|
|
|
|
73 |
|
4,41 |
4,65 |
4,53 |
|||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||||
18 |
2 |
|
|
|
|
|
84 |
91 |
1 |
|
|
|
|
|
|
|
83 |
|
74 |
|
4,39 |
4,78 |
4,58 |
||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||||||||||||
… |
… |
… |
… |
… |
… |
… |
|
… |
… |
… |
… |
… |
|||||||||||||||||||||||||
В таблице 1 |
приведены первые 18 шагов итерационного |
процесса. В первом столбце |
|||||||||||||||||||||||||||||||||||
дан номер элементарной игры (пары ходов) n: во-втором номер 1 выбранной стратегии игрока А; в последующих трех – «накопленный–выигрыш» за первые n игр при стратегиях противника
,
,
. Минимальное из этих значений подчеркнуто. Далее
идет номер j стратегии, выбранной |
противником, |
и |
соответственно накопленный |
||
выигрыш за n игр при стратегиях |
, |
, |
: из этих |
значений подчеркнуто сверху |
|
максимальное. Подчеркнутые значения определяют выбор ответной стратегии другого игрока. В следующих графах последовательно приведены: Минимальный средний выигрыш, равный минимальному накопленному выигрышу, деленному на число игр n; максимальный средний выигрыш , равный максимальному накопленному выигрышу, деленному на n и их среднее арифметическое
При увеличении n все три величины
,
и 
будут приближаться к ней сравнительно быстрее. Как видно из примера, сходимость итераций весьма медленная, но все же даже такой небольшой расчет дает возможность найти ориентировочное значение цены игры и выявить преобладание "полезных" стратегий. При пользовании счетными машинами ценность метода значительно увеличивается.
Преимущество итерационного метода решения игр в том, что объем и сложность вычислений сравнительно слабо возрастают по мере увеличения числа стратегий n и m.
А В
Решению игры 

можно дать простую геометрическую интерпретацию. Пусть имеется игра 

с метрицей, приведенной слева.
Возьмем участок оси абсцисс длиной 1 (рис. 1). Левый конец участка (точка с абсциссой х=0) будет изображать стратегию
: правый конец участка (х=1) - стратегию
. Проведем через точки A1 и А2 два перпендикуляра к оси абсцисс: ось 1-1 и ось 2-2. На оси 1-1 будем откладывать выигрыши при стратегии
; на оси 2-2 - выигрыши при стратегии А2. Рассмотрим стратегию противника
:
она дает две точки на осях 1-1 и 2-2 с ординатами соответственно
и
. Проведем через эта точки прямую 
. Очевидно, если мы при стратегии противника
будем применять смешанную стратегию
, то наш средний выигрыш, равный в этом случае 
+
изобразится
точкой М на прямой 
: абсцисса этой точки равна
. Прямую 
, изображающую выигрыш при стратегии
, будем условно называть "стратегией
".
Очевидно, что таким способом может быть построена и стратегия В2 (рис. 2).
Нам нужно найти оптимальную стратегию
, т.е. такую, для которой минимальный выигрыш (при любом поведении В) обращался бы в максимум. Для этого построим
нижнюю границу выигрыша при стратегиях 
, т.е. ломанную 

, отмеченную на рис.2 жирной линией. Эта нижняя граница будет выражать минимальный выигрыш игрока А при любых его смешанных стратегиях: точка N, в которой этот минимальный выигрыш достигает максимума, и определяет решение и цену игры. Нетрудно убедиться, что ордината точки N есть цена игры, а ее абсцисса равна
- частоте применения стратегии
в оптимальной смешанной стратегии
.
В нашем случае решение игры определялось точкой пересечения стратегий. Однако это не всегда будет так: на рис.3 показан случай, когда, несмотря на наличие пересечения стратегий, решение дает для обоих игроков чистые стратегии (
и
),а цена игры 
. В данном случае матрица имеет седловую точку, и стратегия
является заведомо невыгодной, т.к. при любой чистой стратегии противника она дает меньшей выигрыш, чем
.
В случае, когда заведомо невыгодная стратегия имеется у противника, геометрическая интерпретация имеет вид, представленный на рис.4
В данном случае нижняя граница выигрыша совпадает со стратегией
: стратегия
для противника является заведомо невыгодной.
Геометрическая интерпретация дает возможность представить наглядно также нижнюю и верхнюю цены игры (рис.5). Для иллюстрации построим геометрические интерпретации игр 

, рассмотренных в примерах 1 и 2 (рис. 6 и 7).
Мы убедились, что любая игра 

может быть решена элементарными примерами. Совершенно аналогично может быть решена любая игра 

, где у нас имеются всего две стратегии, а у противника - произвольное число.
Пусть мы располагаем двумя стратегиями:
,
, а противник - n стратегиями:
,
,...,
. Матрица 

задана: она состоит из двух строк и n столбцов. Аналогично случаю двух стратегии дадим задаче геометрическую интерпретацию: n стратегий
противника изобразятся n прямыми (рис.8). Стрoим нижнюю границу выигрыша (ломаную 
) и находим на ней точку N с максимальной ординатой.
Эта точка дает решение игры |
; |
ордината течки N равна цене игры, а абсцисса равна частоте
стратегии
.
В данном случае оптимальная стратегия противника получается применением смеси двух "полезных" стратегий:
и
, пересекающихся в точке N. Стратегия
является заведомо невыгодной, а стратегия
– невыгодной при оптимальной стратегии 
.
Если А будет придерживаться своей оптимальной стратегии, то выигрыш не изменится, какой бы из своих "полезных"стратегий" ни пользовался В, однако он изменится, если В
перейдет к стратегиям или . |
|
В теории игр доказывается, что у любой конечной игры |
имеется решение, в |
котором число "полезных" стратегий той и другой стороны не превосходит наименьшего из двух чисел m и n.
Вчастности, из этого следует, что у игры 

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

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

Из этих уравнений и условия
= 

. находим
,
и цену игры
. Зная цену игры, можно сразу определить оптимальную стратегию
игрока В. |
|
|
Для этого решается, например, уравнение: |
= , где |
. |
В случае, когда мы располагаем m стратегиями, а противник - всего двумя, очевидно, задача решается совершенно аналогичным способом: достаточно заметить, что изменяя знак выигрыша на обратный, можно превратить игрока А из "выигрывающего" в "проигрывающего". Можно решить игру и без перемены знака выигрыша; тогда задача
решается непосредственно для В, но строится не нижняя., а верхняя граница выигрыша (рис. 8). На границе ищется точка N с минимальной ординатой, которая и есть цена игры.
ЗАДАНИЕ
1.Изучить по конспекту лекций и предлагаемой литературе основные понятия теории игр.
2.Ознакомиться по настоящим методическим указаниям с предлагаемыми приближенными методами решения игр.
3.Построить алгоритм одного из рассматриваемый методов указанного преподавателем.
4.Составить и отладить программу на языке Паскаль, реализующую построенный алгоритм.
5.Для заданной преподавателем платежной матрицы получить решение игры и оценить погрешность решения.
6.Оформить отчет выполненной лабораторной работа.
СОДЕРЖАНИЕ ОТЧЕТА Отчет должен содержать следующие обязательные части.
1.Алгоритм метода решения игры, указанного преподаваелем.
2.Листинг текста программы на языке Паскаль, реализующей построенный алгоритм.
3.Листинг протокола решения игры, предложенной преподавателем.
КОНТРОЛЬНЫЕ ВОПРОСЫ
1.В чем состоит предмет теории игр?
2.Какие виды игр Вы знаете?
3.какие способы задания игр Вы знаете?
4.Что такое чистая и смешанная стратегия?
5.В чем состоит идея графического метода решения игры

?
6.Как решить игры 

и 

графическим методом?
7.В чем состоит идея итерационных методов решения игр?
8.Изложите алгоритм метода Робинсон.
СПИСОК ЛИТЕРАТУРЫ
1.Н.И. Воробьев. Теория игр: Лекции для экономистов-кибернетиков. Я.. 1974. с. 7-38.
2.Г. Оуэн. Теория игр. М.: Мир, 1972. с. 25 - 33.
3.Е-С. Венцель. Исследование операций: м., 1932. с, 446 - 464.
