ТЕОРИЯ ИГР

advertisement
ТЕОРИЯ ИГР
Литература
1. Петросян Л.А., Зенкевич Н.А., Семина Е.А.
Теория игр. – М., 1998.
2. Воробьев Н.Н. Теория игр для экономистовкибернетиков. – М.: Наука, 1985.
3. Дюбин Г.Н., Суздаль В.Г. Введение в
прикладную теорию игр.– М.: Наука, 1981.
1. Основные понятия теории
матричных игр
• Теория игр – это совокупность
математических методов анализа и
оценки конфликтных ситуаций.
• Содержание теории игр:
• установление принципов оптимального
поведения в условиях неопределенности
(конфликта),
• доказательство существования решений,
удовлетворяющих этим принципам,
• указание алгоритмов нахождения решений,
их реализация.
• Моделями теории игр можно описать
экономические, правовые, классовые,
военные конфликты, взаимодействие
человека с природой.
• Все такие модели в теории игр принято
называть играми.
• Игры можно классифицировать по различным
признакам:
• стратегические и чисто случайные,
• бескоалиционные и коалиционные, игры 1, 2,
…, n лиц (по числу игроков),
• конечные и бесконечные (по числу
стратегий), игры в нормальной форме и
динамические,
• с нулевой суммой («антагонистические») и с
ненулевой суммой.
• Рассмотрим простейшую модель – игру, в
которой участвуют два игрока, множество
стратегий каждого игрока конечно, а
выигрыш одного игрока равен проигрышу
другого (бескоалиционная, конечная,
антагонистическая игра двух лиц).
• Такую игру (Г ) называют матричной.
• Она определяется тройкой Г=(X,Y,K),
где
Х – множество стратегий 1-го игрока,
Y – множество стратегий 2-го игрока,
K=K(x,y) – функция выигрыша (выигрыш 1-го
игрока и соответственно проигрыш 2-го при
условии, что 1-й игрок выбрал стратегию , а
2-й – стратегию ).
Пару (x,y) называют ситуацией в игре Г.
• Пусть 1-й игрок имеет всего m стратегий, а
2-й – n стратегий:
Х=М={1,2, …, m}, Y=N={1,2, …, n}.
• Тогда игра Г полностью определяется
заданием матрицы A  aij mn ,
где aij=K(i,j) – выигрыш 1-го игрока при
условии, что он выбрал стратегию (т.е.
строку) i, а 2-й игрок – стратегию (т.е.
столбец) j (эти стратегии называют
чистыми).
• Матрица А называется матрицей игры или
платежной матрицей.
• Пусть A  aij mn– платежная матрица игры Г.
Если 1-й игрок выбрал стратегию i, то в худшем
случае он выиграет min aij .
j
Поэтому он всегда может гарантировать себе
min aij , обозначим его v – нижняя
выигрыш max
j
i
цена игры, или максимин,
соответствующая стратегия 1-го игрока
называется максиминной.
• Второй игрок, выбрав стратегию j, в худшем
случае проиграет max aij , а значит, может
i
гарантировать себе проигрыш min max aij ,
j
i
обозначим его v – верхняя цена игры, или
минимакс, соответствующая стратегия 2-го
игрока называется минимаксной.
Схема:
a12 
a1n  min a 
 a11

 j 1j

a

a 22 
a 2 n min a 2 j 
 21
 j

А
min aij  v
    max
j
i
 
 


 a m1
am 2 
a mn min a mj 

 j



max ai1 max ai 2  max ain
i 
ii
min max aij  v
j
i
• Например,
 2 3 4 3


А    3 4  5   5  v  3
 4 5 6 5


4
4
6
v4
• Соответствующие стратегии:
i0=1(максиминная), j0=1,2 (минимаксная).
• Справедливо неравенство:
vv
• Ситуация (i*, j*) называется ситуацией равновесия,
или седловой точкой, если для любых i  М , j  N ,
выполняется неравенство
aij*  ai* j *  ai* j
• Соответствующие стратегии i*, j* называются
оптимальными чистыми стратегиями 1-го и 2-го
игроков, а число v  ai* j* называется ценой игры.
• Элемент ai* j* является одновременно минимумом
в своей строке и максимумом в своем столбце.
• Ситуация равновесия существует тогда и
только тогда, когда v  v (это значение и
является ценой игры v).
• Например,
  5 3 1 20   5


А 5
5 4 6  4  v  v  4.
  4  2 0  5  5


5
5 4 20
• (2,3)-ситуация равновесная, v =4 – цена
игры, i*=2, j*=3 – оптимальные стратегии
1-го и 2-го игроков. Выбрав их, 1-й игрок
обеспечит себе выигрыш не менее 4 ед., а 2й игрок проиграет не более 4 ед. при любом
выборе другого игрока.
• Смешанной стратегией для 1-го игрока
называется упорядоченная система m
действительных чисел x=(x1, x2, …, xm), xi  0 ,
m
 xi  1 , которые можно рассматривать как
i 1
относительные
частоты (вероятности), с
которыми 1-й игрок выбирает чистые
стратегии i=1, 2, …, m.
• Аналогично определяется смешанная
стратегия для 2-го игрока: y=(y1, y2, …, yn),
n
yj  0 , y j 1 .
j 1
• Функция выигрыша K(x,y) в ситуации (x,y)
определяется как математическое ожидание
выигрыша 1-го игрока при условии, что 1-й
и 2-й игроки выбрали соответственно
стратегии x=(x1, x2, …, xm) и y=(y1, y2, …, yn):
m n
K ( x, y )   aij xi y j .
i 1 j 1
• Если для некоторых x  S mи y*  Sn и для
всех x  S m и y  S n выполняется
неравенство K ( x, y* )  K ( x* , y* )  K ( x* , y) ,
то x*, y* называются оптимальными
смешанными стратегиями игроков,
* *
число v  K ( x , y ) называется ценой игры,
пара (x*, y*) – стратегической седловой
точкой
тройка x*, y*, v – решением игры.
*

Свойства оптимальных стратегий.
• 1. Пусть K(x,y) – математическое ожидание
выигрыша в игре ГА с ценой v.
• Тогда, для того чтобы элемент x*  S m был
оптимальной стратегией 1-го игрока,
необходимо и достаточно, чтобы для каждого
элемента y  S n выполнялось неравенство
v  K ( x* , y)
• Аналогично, для того чтобы y*  Sn был
оптимальной стратегией 2-го игрока,
необходимо и достаточно, чтобы для каждого
x  S m выполнялось неравенство
K ( x, y* )  v
• 2. Пусть K(x,y) – математическое ожидание
выигрыша в игре ГА,
v – действительное число, x*  S m , y*  Sn .
Тогда, для того чтобы v было ценой игры, а
x* и y* были оптимальными стратегиями
соответственно 1-го и 2-го игроков,
необходимо и достаточно, чтобы для любых
и
iвыполнялось
 М j  N неравенство
K (i, y )  v  K ( x , j)
*
*
• 3. Пусть K(x,y) – математическое ожидание
выигрыша в игре ГА с ценой v.
• Тогда, для того чтобы элемент x*  S m был
оптимальной стратегией 1-го игрока, необходимо
и достаточно, чтобы для каждого
j  N выполнялось неравенство v  K ( x* , j ) .
*
y
 Sn был
• Аналогично, для того чтобы
оптимальной стратегией 2-го игрока, необходимо
и достаточно, чтобы для каждого
i  М выполнялось неравенство K (i, y * )  v .
• 4. Если x*, y* – решение m  n -игры ГА, то
max K (i, y )  min K ( x , j )  v
*
i
*
j
• 5. Пусть x*  x1, x2 , ..., xm  , y*   y1, y2 , ..., yn  ,
v – решение игры ГА.
• Тогда для любого i  М , при котором
*
K (i, y )  v , выполняется неравенство xi=0,
а для любого j  N , при котором v  K ( x* , j) ,
выполняется неравенство yj=0.
• 6 (Лемма о масштабе).
• Если ГА – игра с матрицей A  aij mn, а Г А –
игра с матрицей A  aij mn , где aij  aij   , где
α,=const, α>0, то множества оптимальных
стратегий игроков в играх ГА и Г Асовпадают, а
. v А  v A  
• Иначе говоря, две игры, отличающиеся лишь
началом отсчета выигрышей и масштабом их
измерения, стратегически эквивалентны.
2. (2 2 ) - игры
 a11 a12 
 – платежная матрица
• Пусть А  
 a21 a22 
игры Г.
Если она не имеет седловой точки, то
единственное решение игры Г можно
найти
• 1) решив две системы:
a11 y1  a12 y 2  v,

a21 y1  a22 y 2  v,
 y  y  1;
2
 1
a11x1  a21x2  v,

a12 x1  a22 x2  v,
 x  x  1;
 1 2
• 2) по формулам:
a22  a21
x1 
a11  a22  a12  a21
a11  a12
x2 
a11  a22  a12  a21
или x2  1  x1
a22  a12
y1 
a11  a22  a12  a21
или y2  1  y1
a11a22  a12 a21
v
a11  a22  a12  a21
a11  a21
y2 
a11  a22  a12  a21
• 3) в матричном виде:
x
JA*
JA* J T
y 
T
A* J T
* T
JA J
v
A
JA* J T
где А – определитель матрицы А,
А* – присоединенная к А матрица,
J  1 1 , y   y1 y2  , x  x1 x2  ,
JT и yT – транспонированные матрицы J и y.
• Найдем, например, решение игры с
платежной матрицей
 3  1

А  
 2 4
имеет седловой точки.
, которая не
• 1) Составим системы:
3x1  2 x2  v,

 x1  4 x2  v,
 x  x  1.
 1 2
3 y1  y 2  v,

2 y1  4 y 2  v,
 y  y  1.
2
 1
• Решив системы, получим:
y1 
5
6
y2 
1
6
x1 
1
3
2
x2 
3
7
v
3
7
1 2 * 5 1
• то есть x   ;  y   ;  v  -решение игры.
6 6
3 3
3
*
• 2) Найдем решение по формулам:
42
2 1
x1 
 
3  4  2 1 6 3
1 2
x2  1  
3 3
4 1
5
y1 

3  4  2 1 6
5 1
y2  1  
6 6
3  4  2 1 14 7
v


3  4  2 1 6 3
• 3) Найдем решение в матричном виде:
А  12  2  14
* T
JА J
 4 1

А  
  2 3
*
1
 2 4      6
1
1
1
x   2 4   
6
3
 4 1
  2 4
JА  1 1  
  2 3
*
* T
А J
 4 1 1  5 
      
 
  2 3   1  1 
1  5  5 6

y      
6 1 1 6 
2

3
T
14 7
v

6 3

3. 2  n  и m  2 – игры
• Рассмотрим игру с платежной матрицей
 2 3 1 5

A  
 4 1 6 0
• Если 1-й игрок применит смешанную
стратегию x*  x,1  x , а 2-й игрок – чистую
стратегию j  1 , то
K x*,1  2x  41  x .(1)
 
• Аналогично при выборе 2-м игроком
чистых стратегий j  2 , j  3 , j  4
 
(2)
 
(3)
 
(4)
K x ,2  3x  11  x
*
K x*,3  1x  61  x
K x*,4  5x  01  x , x  0;1
 
K x* , j
(4)
(2)
A
(1)
(3)
x
0
Рис.1
x
1
• Точка A является точкой пересечения
прямых (2) и (3), поэтому решение
исходной игры можно найти, решив игру
3 1

A  
1 6
• По формулам решения 2 2– игры
получим:
6 1
5
x1 

3  6 11 7
5 2
x2  1  
7 7
6 1
5
y1 

3  6 11 7
2
y2 
7
3  6  1 1 17
v

3  6 11 7
• Тогда решение исходной игры имеет
вид
5 2
*  5 2 
*
x  ; 
7 7
y   0; ; ;0 
 7 7 
(номерам столбцов, не вошедших в
матрицу A, соответствуют нулевые
• координаты вектора y* ), v  17 .
7
• Аналогично решаются m  2 - игры.
• Пусть, например,
 3 2


A  1 5
4 1


,
y*   y,1  y  – смешанная стратегия 2-го
игрока, 1-й игрок выбирает чистые
стратегии i=1,2,3.
 
• K 2, y   1y  51  y 
• K 3, y   4 y  11  y ,
• K 1, y  3 y  21  y 
*
(1)
*
(2)
*
y  0;1
(3)
 
K i, y *
(3)
B
(1)
(2)
0
Рис.2
y
1
y
• Точка B является точкой пересечения
прямых (2) и (3). Найдем решение игры
 1 5

A  
 4 1
1 4
3
x1 

11 4  5 7
3 4
x2  1  
7 7
1 5
4
y1 

11 4  5 7
3
y2 
7
1 1  4  5
19
v

11 4  5 7
• Тогда решение исходной игры:
 3 4
x   0; ; 
 7 7
*
4 3
y  ; 
7 7
*
19
v
7
• Пусть платежная матрица игры
 2 4 11 

A  
7 4 2 
 
K x* , j
(3)
Рис.3
A
B
(2)
(1)
0
x1
x2
1
x
• A – точка пересечения прямых (2) и (3), ее
абсциссу найдем, решая игру
 4 11 
24
2
  x1 
A  

4  2  4  11 9
4 2 
• B – точка пересечения прямых (1) и (2), ее
абсциссу найдем, решая игру
 2 4
47
3
  x2 
A  

2474 5
 7 4
• Решение исходной игры:
2 3
*
x  x,1  x  , где x   ;  , y*  0;1;0 , v  4
9 5
• то есть 1-й игрок имеет множество
оптимальных стратегий,
2-й игрок – единственную оптимальную
стратегию, это чистая стратегия j=2.

4. Доминирование стратегий
• Иногда на основании простого
рассмотрения матрицы игры можно сказать,
что некоторые чистые стратегии могут
войти в оптимальную смешанную
стратегию лишь с нулевой вероятностью.
1 7 4


А  8 3 9 
3 1 4


• В результате вместо игры ГА с матрицей А
можно рассмотреть игру Г А с матрицей
 1 7

А  
 8 3
• Легко найти решение игры
x *А
5 6
 ; 
 11 11 
y *А
4 7
 ; 
 11 11 
Г А
53
vA 
11
Можно предположить, что решение игры ГА
будет иметь вид:
5 6 
x *А   ; ;0 
 11 11 
y *А
4 7 
  ; ;0 
 11 11 
v A
53

11
• Говорят, что i-я стратегия 1-го игрока
доминирует его k-ю стратегию, если aij  akj для
всех j  N и хотя бы для одного j aij  akj .
• В этом случае говорят также, что
i-я стратегия (или строка) – доминирующая,
k-я – доминируемая.
• Говорят, что j-я стратегия 2-го игрока
доминирует его l-ю стратегию, если
для всех i  M aij  ail и хотя бы для одного i
aij  ail
В этом случае j-ю стратегию (столбец)
называют доминирующей,
l-ю – доминируемой.
• Стратегия может доминироваться также
выпуклой линейной комбинацией других
стратегий.
• Так, i-я стратегия 1-го игрока доминируется
выпуклой линейной комбинацией
остальных стратегий, если aij    k akj ;
k i
• j-я стратегия 2-го игрока доминируется
выпуклой линейной комбинацией
остальных стратегий, если aij    l ail
l j
• Если x  x1, x2 , ..., xk   Sk – некоторая
смешанная стратегия, то ее расширением на iом месте будем называть стратегию вида
xi  x1 , x2 , ..., xi 1, 0, xi , ..., xk   Sk 1
• теорема: пусть ГА – (m  n)-игра, в которой i-я строка
доминируема, Г А – игра с матрицей А, полученной из А
вычеркиванием i-ой строки. Тогда
• 1) v A  v А ;
• 2) всякая оптимальная стратегия 2-го игрока в игре Г А
является оптимальной и в игре ГА;
• 3) если x* – оптимальная стратегия 1-го игрока в игре Г А,
то xi* – его оптимальная стратегия в игре ГА.
• Аналогичная теорема имеет место для доминируемого
столбца.

5. Множество решений матричной игры
• Чтобы найти множество всех решений игры с
платежной матрицей А, нужно рассмотреть
все квадратные подматрицы матрицы А.
• Найдя решения игр, заданных подматрицами,
нужно составить их расширения на
соответствующих местах и проверить,
являются ли полученные стратегии
оптимальными для игры ГА.
• Множество всех решений каждого игрока
является выпуклой линейной комбинацией
найденных решений.
• Решение игры, заданной квадратной
подматрицей В, можно найти в матричном
виде по формулам
v
B
JB* J T
x
JB*
JB* J T
yT 
B* J T
JB * J T
• Найдем, например, множество всех
решений игры ГА с платежной матрицей
 2 1 0

А  
 0 1 2
• Подматрицы (11) не дадут решений, так как
матрица А не имеет седловых точек.
Рассмотрим подматрицы (2  2) :
 2 1

В  
 0 1
 2 0

С  
 0 2
1 0 

D  
1 2 
• Для В: является решением игры ГА
(убеждаемся в этом проверкой).
1 1
1 1
v B  1, x B   ; , y B  (0;1)  v A  1, x A   ; , y A  (0;1;0)
2 2
2 2
• Для С:
vC  1
1 1
xC   ; 
2 2
1 1
yC   ;  
2 2
vA  1
1 1
xA   ; 
2 2
1 1
y A   ;0; 
2 2
– является решением игры ГА.
Для D получим такое же решение, как для В.
• Таким образом, в игре ГА 1-й игрок имеет
единственную оптимальную стратегию
1 1
x  ; 
2 2
*
2-й игрок имеет множество оптимальных
1
1 1 1

*
стратегий y  1 (0;1;0)   2  2 ;0; 2    2  2 ; 1; 2  2 



где 1 ,  2  0, 1   2  1 , цена игры v=1.


6. Сведение матричной игры к двойственной
задаче линейного программирования
• Пусть матрица игры имеет вид
 a11

 a 21
А
...

a
 m1
a12
a 22
...
am 2
a1n 

a2n 
... ... 

... a mn 
...
...
• K=K(x,y)– функция выигрыша, v  R,
x*  S m , y*  S n .
• Тогда по свойству 2 оптимальных стратегий
i должно
М jN
для любых
,
выполняться условие
K (i, y )  v  K ( x , j)
*
*
• То есть
a11 y1  a12 y 2  ...  a1n y n  v,

a21 y1  a22 y 2  ...  a2n y n  v,
      

am1 y1  am 2 y 2  ...  amn y n  v,
 y1  y 2  ...  y n  1,

 y j  0, j  1,2,..., n.
a11x1  a21x2  ...  am1 xm  v,

a12 x1  a22 x2  ...  am 2 xm  v,
      

a1n x1  a2 n x2  ...  amn xm  v,
 x1  x2  ...  xm  1,

 xi  0, i  1,2,..., m.
a11q1  a12 q2  ...  a1n qn  1,

a21q1  a22 q2  ...  a2 n qn  1,

      
a q  a q  ...  a q  1,
m2 2
mn n
 m1 1

q j  0, j  1,2,..., n;
1
q1  q2  ...  qn   max
v
a11 p1  a 21 p 2  ...  a m1 p m  1,

a12 p1  a 22 p 2  ...  am 2 pm  1,

      
a p  a p  ...  a p  1,
2n 2
mn m
 1n 1
 pi  0, i  1,2,..., m;
1
p1  p 2  ...  p m   min
v
• Пример. Найти решение игры с матрицей
  2  2 0


А   2
0  1
 0  1  1


• Решение. Перейдем к положительной
матрице, прибавив 3 ко всем элементам
матрицы А:
1 1 3


А   1 3 2 
3 2 2


• Составим двойственную задачу линейного
программирования:
q1  q 2  3q3  1,

q1  3q 2  2q3  1,

3q1  2q 2  2q3  1,
q j  0, j  1,2,3;

1
q1  q 2  q3   max
v
 p1  p 2  3 p3  1,

 p1  3 p 2  2 p3  1,

3 p1  2 p 2  2 p3  1,
 pi  0, i  1,2,3;
1
p1  p 2  p3   min
v
• Решим задачу симплексным методом
q1  q 2  3q3  q 4  1,

q1  3q 2  2q3  q5  1,
3q  2q  2q  q  1,
2
3
6
 1
q  0, j  1,6;
 j
1
q1  q 2  q3   max
v
1
1
0
0
0
q1
q2
q3
q4
q5
q6
С0
P0
q4
0
1
1
1
3
1
0
0
q5
0
1
1
3
2
0
1
0
q6
0
1
3
2
2
0
0
1
0
-1
-1
-1
0
0
0
Базис
1-я
итерация
1
1
1
0
0
0
q1
q2
q3
q4
q5
q6
С0
P0
q4
0
2/3
0
1/3
7/3
1
0
-1/3
q5
0
2/3
0
7/3
4/3
0
1
-1/3
q1
1
1/3
1
2/3
2/3
0
0
1/3
0
0
-1/3
-1/3
0
0
1/3
Базис
2-я
итерация
1
1
1
0
0
0
q1
q2
q3
q4
q5
q6
С0
P0
q4
0
4/7
0
0
15/7
1
-1/7
-2/7
q2
1
2/7
0
1
4/7
0
3/7
-1/7
q1
1
1/7
1
0
2/7
0
-2/7
3/7
3/7
0
0
-1/7
0
1/7
2/7
Базис
3-я
итерация
1
1
1
0
0
0
q1
q2
q3
q4
q5
q6
С0
P0
q3
1
4/15
0
0
1
7/15
-1/15
-2/15
q2
1
2/15
0
1
0
-4/15
7/15
-1/15
q1
1
1/15
1
0
0
-2/15
-4/15
7/15
7/15
0
0
0
1/15
2/15
4/15
Базис
4-я
итерация
1
• Получаем решение двойственной задачи:
1 2 4
p ; ; 
 15 15 15 
 1 2 4
q ; ; 
 15 15 15 
1 7

v 15
• Тогда решение игры с матрицей
1 2 4
y   ; ; 
7 7 7
1 2 4
x   ; ; 
7 7 7
• Решение исходной игры:
1 2 4
x  ; ; 
7 7 7
*
1 2 4
y  ; ; 
7 7 7
*
6
v
7
A
15
v
7

7. Приближенное решение матричных игр
vk
vk
max
 v  min
k
k
k
k
• где v – цена игры,
• k– номер партии,
• vk – максимальное значение суммарного
выигрыша 1-го игрока в k-ой партии при
выборе различных стратегий,
• vk – минимальное значение суммарного
проигрыша 2-го игрока в k-ой партии при
выборе различных стратегий.
• За приближенные оптимальные стратегии
игроков принимают векторы, координатами
которых являются относительные частоты
выбора соответствующих чистых
стратегий.
• Пример. Найти приближенное решение
игры, заданной матрицей
  
 2 1 3 a


А   3 0 1 b
 1 2 1 c


№ партии выбор выбор суммарный выигрыш суммарный проигрыш
1-го
2-го
1-го игрока при
k
2-го игрока при выборе
игрока игрока выборе стратегии
стратегии
a
b
c
α
β

vk
k
vk
k
1
a
α
2
3
1
2
1
3
2
b
β
3
3
3
5
1
4
3  1,5 1  0,5
2
2
3
b
β
4
3
5
8
1
5
5  1,667 1  0,333
3
3
4
c
β
5
3
7
9
3
6
7  1,75 3
4
4
5
c
β
6
3
9
10
5
7
9  1,8
5
6
c
β
7
3
11
11
7
8
1,833 1,167
3
1
 0,75
5 1
5
№ партии выбор выбор суммарный
суммарный проигрыш
1-го
2-го
выигрыш 1-го
k
2-го игрока при
игрока игрока игрока при
выборе стратегии
выборе стратегии
a
b
c
α
β

9
9
vk
k
vk
k
7
c
β
8 3 13 12
8
c

11 4 14 13 11 10
9
c

14 5 15 14 13 11 1,667 1,222
10
c

17 6 16 15 15 12
11
a

20 7 17 17 16 15 1,818 1,364
12
a

23 8 18 19 17 18 1,917 1,417
1,857 1,286
1,75
1,7
1,25
1,2
max
k
;
vk
k
 1,417
vk
min
 1,5
k
k
 1,417  v  1,5
• Приближенное решение игры за 12 партий:
v =1,45,
,
*
x12
1 1 7 
 , , 
 4 6 12 
*
y12
 1 1 5
 , , 
 12 2 12 
Download