Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
CLIO_фокин24.doc
Скачиваний:
18
Добавлен:
24.11.2018
Размер:
3 Мб
Скачать
☆

2.3. Игры.

Пусть есть n игроков, X1,X2,…,Xnмножества их стратегий, f1(x),…, fn(x)  их функции выигрыша, x=(x1,…,xn)совокупная стратегия игроков и xjXi ,.

Принципы рационального поведения в играх:

  1. Принцип Парето xy, если i fi (x) fi (y)   i0: fi0 (x)  fi0 (y).

  2. Принцип пессимиста: он считает, что цель соперниковнавредить ему  . Стратегия называется максиминной.

  3. Принцип равновесия (Нэша): совокупная стратегия x*=(x1*,…,xn*) оптимальна по Нэшу (равновесна), если всем игрокам невыгодно отступать от своих частей совокупной стратегии, т.е. i fi (x*) fi (x1*,…,xi,…,xn*).

Пример Гермейера: nигроков, множества стратегий Xi=[0,1], функции выигрыша: . Оптимальной по Нэшу и максимину является стратегия, при которой все выбирают 1 и выигрывают 1. Оптимальными по Парето являются стратегии, когда все выбирают 0 и выигрывают n-1, или когда i-й игрок выбирает 1,а остальные – 0; при этом i-й получает n, а остальные – n-2.

№12. Биматричная игра

Число игроков = 2, множества стратегий конечны. Функции выигрыша = две матрицы. Один игрок выбирает номер строки матриц, другой  номер столбца.

Пример: Пусть. fxij=fx(xi,yj) – выигрыш игрока х, если он играет по xi ,а y по yj .

fx

y1

y2

miny

fy

y1

y2

maxy

x1

5

1

1

x1

3

3

x2

2

6

2

x2

4

5

x3

1

4

1

x3

8

2

maxx

=2

minx

3

2

=3

  1. максиминные стратегии существуют всегда:

xопт=argmax{min fx(xi,yj)} = x2 yопт=argmax{min fy(xi,yj)} = y1

xi yj yj xi

  1. оптимальны по Парето только совокупные стратегии {( x2 ,y2), (x3 ,y1)}:

в правом верхнем квадранте от них нет других точек.

Точки с максимальными координатами fx и fy всегда оптимальны по Парето.

  1. Н эш. Рассмотрим условные оптимумы:

xопт(y) = argmaxx fx(x,y), yопт(x) = argmax y fy(x,y). Представим эти функции в виде двудольного орграфа. Оптимуму по Нэшу соответствует неориентированное ребро.

Таких может не быть. У нас – это ребра {( x1 ,y1), (x2 ,y2)} .

Заметим, что оптимумы по Нэшу и по Парето не совпали.

Def: Играантагонистическая, если увеличение выигрыша одного из игроков ведет к уменьшению выигрыша другого (интересы противоречивы). Если fx(x,y)+fy(x,y)=const, то игра – с постоянной суммой (в т.ч. с нулевой).

Лемма 1: Пусть x [ f1(x)  f2(x) ], x1=arg max f1, x2=arg min f2.

 max f1 (x)= f1 (x1) f2 (x1) max f2 (x), min f1 (x) f1 (x2) f2 (x2)= min f2 (x).

Лемма 2: Пусть f1 (x) + f2 (x)=0, т.е. f2 (x) = f1 (x) x.

 max f2 (x)=max {f1 (x)}=min f1  arg max f2=arg min f1.

№13. Матричные игры.

Игра двух лиц с конечными множествами стратегий и нулевой суммой, когда f1+f2=0, задается одной матрицей. Пусть Z* - множество всех совокупных стратегий, оптимальных по Нэшу; Zопт – множество оптимумов по максимину.

              1. Оптимальными по Парето являются все совокупные стратегии.

              2. Zопт , т.е оптимум по максимину существует всегда.

              3. Z*   Zопт.= Z*, т.е. оптимум по Нэшу может не существовать, но если он существует, то совпадает с оптимумом по максимину.

Лемма 3: Пусть , v1 ≤ v2f.

Доказательство: Имеем и по лемме 1 

Числа v1 и v2 называются нижним и верхним значениями игры.

Теорема: Утверждения Z* , v1=v2 и Z* = Zопт эквивалентны, т.е. матричная игра имеет решение по Нэшу тогда и только тогда, когда v1=v2. При этом оптимумы по максимину и по Нэшу совпадают.

Доказательство. 1) Пусть (x*,y*) Z*, т.е.т.е. v2< v1. Но по лемме 3 v1< v2 ,  v2 = v1 и все неравенства суть равенства  и , т.е. Z* Zопт.

2) Пусть v1=v2 и , . Тогда , т.е. для всех x и y. Полагая сначала x=xопт, а потом y=yопт, получим Zопт Z*, т.е. любое решение по максимину оптимально по Нэшу  Z* .

5

4

3

3

6

1

2

1

0

5

1

0

6

5

3

Оптимум по Нэшу оптимален по всем критериям рационального поведе­ния и называется решением игры в чистых стратегиях. Условием его сущест­вования является равенство v1=v2=v, а само число v называют значением игры.

y1

y2

y3

miny

x1

3

6

2

-6

x2

1

4

3

-3

maxx

3

4

2

Пример1: v1 = v2 = v=3. Решение игры - xопт=x1, yопт=y3. Кстати,

цикл x2y2 x3y1 x2, но x1y3. p=(0,1/2,1/2), q=(2/5,3/5,0)?

Пример2: xопт=x2, yопт=y3 , v1 = -3 ≠ 2= v2.

 решения в чистых стратегиях нет, его нужно искать в смешанных стратегиях.

Д

P1 Pn

оминирование: y1>y3отбросим y1 (с большим проигрышем)!

Игра в смешанных стратегиях.

Пусть {fij}  матрица игры размера nm, т.е. fij=f(xi,yj) – выигрыш игрока x, если он играет по стратегии xi, а его соперник  по стратегии yj. Смешанными стратегиями игроков назовем векторы p и q, задающие распределение вероятностей на множествах чистых стратегий игроков, т.е. pi, qj0, pi=qj=1. Разобьем один интервал [0,1] на n отрезков с длинами p1,…,pn, а другой - на m отрезков с длинами q1,…,qm . Датчиком равномерного распределения - функцией СлЧис() разыграем две случайных точки. Попадание в iый отрезок первого интервала (с вероятностью pi) соответствует выбору стратегии xi, в jый отрезок второго интервала (с вероятностью qj) - выбору стратегии yj. Свой выбор соперники осуществляют независимо друг от друга.

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

Определим и . Тогда

,

.

Сведение матричной игры к ЛП

Заметим, что . v v*=min Aj Aj Тогда

Нахождение v1 является задачей линейного программирования, т.к. ограничения

и линейны относительно переменных v и pi. Кроме того, задачей ЛП, двойственной к предыдущей, является нахождение v2: .

Лемма 4: Матричная игра всегда имеет решение в смешанных стратегиях.

Т.к. значения функционалов в прямой и двойственной задачах ЛП совпадают, то в смешанных стратегиях v1=v2,  игра имеет решение по Нэшу.

Если pопт найдена (например, графоаналитическим методом), то qопт находят по теореме о доп. нежесткости: pi(Bi(q)2)=0, qj(Aj(p)1)=0.

Графоаналитический метод решения для игр 2n и n2

Пример:

q1

q2

q3

min

формула

p1: 0 1

p1

3

6

2

6

A1(p)=3p1-1p2

A2(p)=-6p1+4p2

A3(p)=2p1-3p2

1

4

3

3

6

2

p2

1

4

3

3

max

3

4

2

v1 < v2

Из графика (шаг сетки =2) видно, что A1(p)>A3(p) (доминирование),

максимум нижней огибающей лежит на пересечении прямых А2 и А3,

т.е. 6p1+4p2=2p13p2  8p1=7p2. Но p1+p2=1  pопт= (7/15, 8/15). Проверим:

A1(pопт) = 13/15 > 2/3 = A2(pопт) = A3(pопт)  нижняя огибающая в окрестности pопт в самом деле сформирована прямыми А2(p) и А3(p). Производная огибающей меняет в точке  pопт знак с + на - :  A3'(pопт) = 5, а A2'(pопт) = 10  pопт является точкой max. Цена игры  = A2(pопт) = – 2/3. Для нахождения qопт графоаналитический метод неприменим: функции Bi(q) и их верхнюю огибающую сложно нарисовать (в равенстве q1+q2+q3=1 две переменные свободны). Воспользуемся ТДН: pi·[Bi(q)  v2] = 0 = qj·[Aj(p)  v1]. A1(pопт) > v1q1 = 0, но p1, p2 > 0  -6q2 +2q3 = B1(q) = v2 = B2 (q) = 4q2 – 3q3. 5q3 = 10 q2, но q2+q3 =1,   qопт = (0, 1/3, 2/3) и v2 = B1(qопт) = – 2/3.

Замечание: Если матрица игры кососимметрична (т.е. квадратная и ƒij=ƒji), то игроки равносильны и их оптимальные стратегии совпадают.

 !!! При решении игр размера 2n алгоритмом Меджидо не нужно предварительно удалять доминируемые строки и столбцы (это требует O(n2) операций, а они удаляются алгоритмом автоматически), I–= для p, I+=  для q, интервал [u1,u2] = [0,1] сразу.

Пример М3. v1v2  Решаем в смешанных стратегиях.

Пример:

Y1

Y2

Y3

Y4

min

X1

7

3

6

5

3

X2

2

4

8

3

2

X3

4

1

5

4

1

max

7

4

8

5

Доминирование: X1 > X3  отбрасываем X3,

Y3 > Y2  отбрасываем Y3 (больший проигрыш хуже)

A1(p)=7p1+2p2 , Из графика получаем A4= A2,

A2(p)=3p1+4p2, 5p1+3p2=3p1+4p2 2p1=p2 , p1+p2 = 1

A4(p)=5p1+3p2.  p1= 1/3 , p2= 2/3.

v=A4(p)=5p1+3p2= 5+6=11/3. A1(p)=7p1+2p2 = v.  Все прямые пересекаются в точке.

Ищем q опт по ТДН: p1, p2>0  B1(q)=v=B2(q) 7q1+3q2+5q4=2q1+4q2+3q4 q1+q2+q4 =1 q2 =5q1 +2q4  6q1 +3q4 = 1. q4 = 1/3 - 2q1 , q2=5q1 +2(1/3-2q1) = 2/3+q1. qопт= (q1 , 2/3+q1 , 0, 1/3-2q1)  0  q1  [0, 1/6]

Пример М4: Задача проверки. Можно ли отбросить Y1, полагая q1 =0?

Y1

Y2

Y3

Bi (q)

X1

3

5

7

B1=5q2+7q3

X2

2

4

8

B2=4q2+8q3

X3

1

6

2

B3=6q2+2q3.

X4

8

2

1

B4=2q2+q3.

Остается игра 2  3: X4 < X1 отбросим X4.

B(q) - верхняя огибающая семейства прямых Вi., qопт- точка минимума функции B, в ней B3=B1

 5q2+7q3 = 6q2+2q3 или q2=5q3. Но q2+q3 =1,

q2=5/6 , q3 = 1/6. qопт =(0, 5/6, 1/6), v = 32/6.

B2(q) < v  p2=p4=0  5p1+6p3 = 7p1+2p3,  pопт=(2/3,0,1/3, 0 ).

Но A1(p) = 7/3 < v  по ТДН это не решение игры  отбросить Y1 нельзя.

Эта игра легко решается в EXCEL командами Сервис+Поиск решения при следующих ограничениях:

В качестве параметра

выбираем тип модели – линейная.

pопт=(3/4,0,0, 1/4), qопт=(3/8, 5/8, 0), v = 4 1/4 .

Бесконечные антагонистические игры со счетным числом стратегий.

J\I

y1

y2

y3

…

x1

0

-1

-1

…

x2

1

0

-1

…

x3

1

1

0

…

…

…

…

…

0

Если игроки имеют не конечное, а счетное число стратегий, то при  |aij| < , все теоремы с конечного случая переносятся на счетный.

Иначе возможны следующие «плохие» случаи.

Случай 1: . Члены ряда равномерно ограничены, в чистых стратегиях существуют maxmin и minmax, но .

Перейдем к смешанным стратегиям: , npk 0.

монотонно убывает по j и стремится к –1.

Т.о. не существует, но .

J\I

y1

y2

y3

…

x1

0

-1

-2

…

x2

1

0

-1

…

x3

2

1

0

…

…

…

…

…

0

Аналогично , , монотонно возрастает по i и стремится к +1. Т.о. не существует, но ..

Случай 2: . Члены ряда не ограничены, поэтому в чистых стратегиях maxmin и minmax не существуют, как и supinf и infsup. Если p = (½, ¼, 0, ⅛, 0, 0, 0, 1/16, …), т.е. pi = {2-(k+1) при i = 2k

и 0 при i ≠ 2k}, то вообще не имеет смысла.

.

№14. Игра на квадрате.

Игра с нулевой суммой, f(x,y)функция выигрыша первого игрока; x,y[0,1].

Чтобы существовали 1 и 2, достаточно, чтобы были выполннены условия:

1) f непрерывна; 2) f строго вогнута? по x, строго выпукла? по y.

Теорема: При выполнении условий 1-2 существует решение в чистых стратегиях.

Доказательство: Определим непрерывные (докажите!) функции .

Пусть x* неподвижная точка их непрерывной! суперпозиции, т.е. ((x*))=x*.

Обозначим y*=(x*)  (y*)=x* и y* неподвижная точка функции ((y)).

П окажем, что f(x,y*)f(x*,y*)f(x*,y):

(x*,y*) седловая точка (ситуация равновесия),  оптимальная стратегия.

Пример: f(x,y)= -2x2+y2+3xy-x-2y. Теорема применима. Найдем функции и .

Сначала найдем точки абсолютных max и min и проверим условие «[0,1]?».

∂f/∂x = -4x+3y-1=0  xабс = 3y-1/4 [-¼,+½] при y[0,1].

А

(y)=

0

при y[0,⅓)

,

(x)=

2-3x/2

при x[0,⅔]

3y-1/4

при y[⅓,1]

0

при x(⅔,1]

налогично, ∂f/∂y = 2y+3x-2=0  yабс = 2-3x/2 [-½,1] при x[0,1] 

Предположим, что y* = ψ(x*)=0  х>⅔, но х*= (y*) = (0) = 0. Противоречие. Предположим, что х*= (y*)=0  y<⅓, но y* = ψ(x*) = ψ (0) = 1. Противоречие.  Нужно брать функции и не по этим веткам.

х* = (y*) = (3y*-1)/4 при y⅓, но y* = ψ(x*) = (2-3x*)/2; получаем 17x*=4 x*=4/17 y*=1-3/2* 4/17=11/17. Получили решение игры ( 4/17, 11/17).

№15. Позиционные игры.

Def: Под позиционной игрой n лиц понимается:

  1. ориентированное дерево Г с выделенным корнем А (Аначальная позиция, невисячие вершины  промежуточные позиции, а висячиезаключительные);

  2. для висячих вершин заданы nмерные векторы выигрышей игроков;

  3. задано разбиение невисячих вершин на n+1 подмножество очередности хода Si, и в каждой вершине vSi ход делает игрок с номером i (0 означает, что ход делается случайно);

  4. для позиций из S0 заданы распределения вероятностей на исходящих дугах;

  5. задано разбиение Si (i0) на информационные подмножества Sij (Si= Sij), причем позиции одного информационного подмножества имеют одинаковое количество дочерних позиций; а материнские позиции находятся в разных информационных подмножествах с дочерними;

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

Def: Игра называется игрой с полной информацией, если каждое информационное подмно­жество состоит из одной позиции, а случайный ход может быть сделан только из корня.

Пример игры с полной информацией. Одномастка.

Есть два игрока, стол и колода из 2n пронумерованных карт. Случайно карты разда­ются поровну между игроками и определяется ХОДЯЩИЙ игрок. Игроки знают свои карты  знают карты соперника, т.е. игра идет “в открытую”. ХОДЯЩИЙ выбирает и кладет на стол одну из своих карт, а соперник ОТВЕЧАЕТ своей. Хозяин старшей карты стола получает очко и право ХОДА, карты стола удаляются из игры. Цель игры – набрать максимум очков.

Каждой карте припишем индекс – разность числа своих и чужих карт; старших или равных этой карте. Пусть  – вектор индексов карт ХОДЯЩЕГО,  – вектор соперника. При оптимальной игре индексы, как правило, сохраняются. Правила редукции:

при ОТВЕТЕ рассматриваем только два варианта: бить (самой младшей бьющей картой–если есть) или отдать (самую младшую), причем если после взятия хозяин старшей карты не меняется, то ответ отдать отбрасываем;

при ХОДЕ отбрасываем мажорируемые по Парето карты (если их индекс не меньше & они младше), ход с одиночки (если это не самая младшая карта ХОДЯЩЕГО) и ход с туза (если остались другие варианты ХОДА). Двойные стрелки отмечают лучший ход. Жирные цифры помечают карты игроков, ? – варианты хода, * - ХОД, цифры внизу – последовательность ходов в игре без вариантов.

На этом построение дерева можно закончить. Число висячих вершин равно 4. (6!)2 ≈500 000.

На дереве игры для S1 мы использовали процедуру  отсечений.

Сколько вообще может быть таких отсечений? Что такое - отсечение?

Объем дерева игры = mn. Пусть есть кто-то, кто подсказывает вариант игры, тогда получим рекуррентное соотношение для трудоемкости:

Tnсп=Tn1+(m1)Tn2; Tnсп=O(n(m+1)/2) для сокращенного перебора;

Tпп=mTn1=m2Tn2=…=mn для полного перебора.

Пример: n=10, m=7. Полный перебор требует 107, а с α–β отсечениями 104 операций.

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

Игрок

Оптимальная игра игроков

Игра с ловушками

Игра с антиловушками

"+"

max

max

M(мат.ожидание)

""

min

M

min


Способы игры:

Интересные позиции:

+0110000111 – старшая единица активна (должна взять очко)  ход с нее плох – ее побьют.

+0110001011 – оба хода верные, но ход с младшей лучше – это «антиловушка».

+0110000101011011 – ход со старшей (активной) единицы плох – ей отдадут, но промежуточные карты уменьшат свой индекс и число активных карт уменьшится.

+011000111001 – просто интересная позиция. Верный розыгрыш – ход со старшей, бить, старшая (ловушка), отдать, старшая (ловушка), бить.

+110010110100, 100011001110, 1001011010, 1000111010, 0110011010, 10010101, 01100101.

Стратегии позиционной игры.

Def: Стратегия  это правило однозначного выбора хода в любой возможной позиции.

В терминах дерева игры стратегия iого игрока  это поддерево, в котором в позициях с ходом iого игрока есть только одна дочерняя, а в позициях с ходом других игроков  все дочерние из дерева Г. Число стратегий  число различных таких поддеревьев дерева игры.

Правило подсчета числа стратегий:

в позициях со своим ходом числа стратегий суммируют­ся,

а в позициях с ходом соперника - перемножаются.

Пример: Посчитаем число стратегий в игре «крестики - нолики» размера 3*3.

S9 – число стратегий игрока, делающего первый ход.

= 9 ветвей, их нужно суммировать. Затем ходит соперник  умножаем.

S9=9*S78, S7=7* S56, S5=5*S34, S3=3*S12, S1=1

S9=9*(7*S56)8=9*78*S56*8=9*78*56*8*S34*6*8=9*78*56*8*34*6*8*12*4*6*8

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

Практически это никогда не делается, т.к. число стратегий очень большое.

№16. Коалиционные игры.

При числе игроков больше двух задаются функции выигрыша всех игроков. Для игры трех лиц используем обозначения без индексов: xX, yY, zZ fx(x,y,z), fy(x,y,z), fz(x,y,z).: Пусть - максиминные стратегии игроков (при этом каждый игрок считает, что он в одиночку играет против всех остальных). Если игроки Y и X образуют коалицию и согласовывают все свои действия, их рассматривают как одного игрока со стратегиями w=(x,y)W=XY и функцией выигрыша fw(x,w) = fy(x,y,z) + fz(x,y,z). Максимальные выигрыши, на которые могут рассчитывать игроки y и z, играя в одиночку, и их коалиция, таковы:

, ,

Лемма 1. а) , б) .

Пусть . Для max .

Лемма 2. а) , б) .

Сложив два очевидных неравенства и , получим . Теперь применим лемму 1а. Для max аналогично.

Лемма 3. , .

Лемма 4. .

Сложив два неравенства и , получим . Лемма 2б здесь неприменима, т.к. в ней стоит знак «меньше». Однако первое слагаемое справа не зависит от z, а второе от y. Дважды применив леммы 1б и 3, получим утверждение леммы 4.

Теорема. В коалицию вступать выгоднее, чем играть против всех: υw ≥ υy + υz.

Имеем fw(x,w) = fy(x,y,z) + fz(x,y,z). Взяв от суммы сначала min по x (лемма 2а), а затем max по y, z (леммы 1б и 4), получим утверждение теоремы.

Всего в игре n лиц существует 2n коалиций. Пусть SN={1, 2,…, n}. Рассмотрим игру двух коалиций S и N\S. Выигрыш коалиции S определим так: . Легко показать, что .

Def: Говорят, что коалиционная игра задана в редуцированной форме, если задана произвольная функция : 2N, обладающая свойствами:

1) ()=0; 2) если S1S2=, то (S1+S2)(S1)+(S2).

Def: Коалиционная игра существенна, если (N)>({i}).

Если игра несущественна, то создавать коалиции не имеет смысла.

Def. Игра называется простой, если выигрыш любой коалиции равен 0 или 1.

Игрок i называется болваном, если, присоединяясь к любой коалиции S, он ничего ей не приносит (т.е. v(S) = v(S \ {i})). Очевидно, что его вес i()=0.

Def: Коалиционная игра имеет постоянную сумму, если (S)+ (N\S)=CSN.

Пример К1. Есть 3 игрока, ({i})=2 i, ({1,2})=({1,3})=({2,3})=2, ({1,2,3})=(0)=0. Это игрa с нулевой суммой.