ТЕОРИЯ ИГР Литература 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 mn , где aij=K(i,j) – выигрыш 1-го игрока при условии, что он выбрал стратегию (т.е. строку) i, а 2-й игрок – стратегию (т.е. столбец) j (эти стратегии называют чистыми). • Матрица А называется матрицей игры или платежной матрицей. • Пусть A aij mn– платежная матрица игры Г. Если 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 ii min max aij v j i • Например, 2 3 4 3 А 3 4 5 5 v 3 4 5 6 5 4 4 6 v4 • Соответствующие стратегии: i0=1(максиминная), j0=1,2 (минимаксная). • Справедливо неравенство: vv • Ситуация (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 mn, а Г А – игра с матрицей A aij mn , где 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) Найдем решение по формулам: 42 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 41 x .(1) • Аналогично при выборе 2-м игроком чистых стратегий j 2 , j 3 , j 4 (2) (3) (4) K x ,2 3x 11 x * K x*,3 1x 61 x K x*,4 5x 01 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 11 7 5 2 x2 1 7 7 6 1 5 y1 3 6 11 7 2 y2 7 3 6 1 1 17 v 3 6 11 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 51 y • K 3, y 4 y 11 y , • K 1, y 3 y 21 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 11 4 5 7 3 4 x2 1 7 7 1 5 4 y1 11 4 5 7 3 y2 7 1 1 4 5 19 v 11 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 24 2 x1 A 4 2 4 11 9 4 2 • B – точка пересечения прямых (1) и (2), ее абсциссу найдем, решая игру 2 4 47 3 x2 A 2474 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 • Подматрицы (11) не дадут решений, так как матрица А не имеет седловых точек. Рассмотрим подматрицы (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 должно М jN для любых , выполняться условие 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