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

2.3. Игры.

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

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

  1. Принцип Парето x y, если 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) – выигрыш игрока х, если он играет по xiy по 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

x i 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

p 1

3

6

2

6

A1(p)=3p1-1p2

A2(p)=-6p1+4p2

A3(p)=2p1-3p2

1

4

3

3

6

2

p 2

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.

B 2(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 = 41/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=X Y и функцией выигрыша 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 с нулевой суммой.