В математической теории игр понятие седловой точки играет ключевую роль при анализе двухигроковых игр с матричной (табличной) формой представления, особенно для игр с нулевой суммой. В таких играх одна матрица задаёт выигрыши первого игрока (обычно называемого игроком «строка»), а выигрыши второго игрока равны противоположным по знаку. Седловая точка — это элемент матрицы, который одновременно является лучшим ответом для обоих игроков, если каждый действует в чистых стратегиях. В этом объяснении я подробно раскрою, как находят седловые точки, что они означают, и приведу пошаговые примеры и практические приёмы.
Начнём с формального определения и интуиции. Рассмотрим матрицу a(i,j), где i — номер строки (стратегия игрока A), j — номер столбца (стратегия игрока B). Игрок A стремится максимизировать свой выигрыш, игрок B — минимизировать выигрыш игрока A. Для каждой строки i вычисляют её минимум по столбцам (наихудший результат для A, если он играет эту строку и B отвечает оптимально). Для каждой колонки j вычисляют её максимум по строкам (наихудший результат для B, если он играет этот столбец и A отвечает оптимально). Седловая точка a(i0,j0) — это такой элемент, который равен минимуму своей строки и одновременно максимуму своего столбца. Это условие можно записать словами: a(i0,j0) = min_k a(i0,k) и a(i0,j0) = max_k a(k,j0).
Практический алгоритм поиска седловой точки выполняется в несколько ясных шагов. Я приведу пошаговый план, который удобно использовать при анализе любой конечной матрицы:
Покажу конкретный числовой пример для 3x3 матрицы и подробно пройду все шаги. Допустим, дана матрица выигрышей игрока A:
[ 4, 2, 3; 1, 5, 2; 3, 2, 4 ]
Шаг 1: вычисляем минимумы по строкам: для 1-й строки min = 2, для 2-й строки min = 1, для 3-й строки min = 2. Шаг 2: максимин R = max{2,1,2} = 2. Шаг 3: вычисляем максимумы по столбцам: для 1-го столбца max = 4, для 2-го max = 5, для 3-го max = 4. Шаг 4: минимакс C = min{4,5,4} = 4. Поскольку R = 2 < C = 4, равенство не выполнено, следовательно, в чистых стратегиях седловой точки нет. Это означает, что оба игрока при рациональном поведении не имеют устойчивой пары чистых стратегий: одного единственного диктующего выбора. В такой ситуации нужно переходить к смешанным стратегиям или применять методы сокращения матрицы путем доминирования.
Теперь пример, где седловая точка есть. Возьмём матрицу 2x3:
[ 2, 1, 3; 0, 4, 1 ]
Найдём минимумы по строкам: первая строка min = 1, вторая min = 0. Максимин R = max{1,0} = 1. Максимумы по столбцам: столбец1 max = 2, столбец2 max = 4, столбец3 max = 3. Минимакс C = min{2,4,3} = 2. Здесь R = 1 < C = 2, седловой точки нет. Но изменим пример слегка:
[ 2, 1, 3; 1, 4, 1 ]
Теперь минимумы по строкам: первая min = 1, вторая min = 1, R = 1. Максимумы по столбцам: max1 = 2, max2 = 4, max3 = 3, C = 2. Всё ещё R < C — нет седловой точки. Для того чтобы получить седловую точку, нужно, чтобы для некоторой ячейки значение было одновременно минимально в своей строке и максимально в своём столбце. Простой и часто встречающийся пример с седловой точкой:
[ 1, 2; 3, 0 ]
Здесь минимумы по строкам: row1 min = 1 (из {1,2}), row2 min = 0 (из {3,0}), R = max{1,0} = 1. Максимумы по столбцам: col1 max = 3 (из {1,3}), col2 max = 2 (из {2,0}), C = min{3,2} = 2. Поскольку R = 1 и C = 2, седловой точки нет. Но обратим внимание на элемент (1,1)=1: он равен минимуму своей строки (1) и одновременно ... не является максимумом своего столбца (максимум в столбце 1 равен 3). Поэтому не седловая. Для матрицы [ [2,1],[3,0] ] мы находим элемент (1,2)=1 — минимум первой строки и максимум второго столбца (столбец 2 имеет элементы 1 и 0, максимум = 1). В этом случае R = C = 1, и (1,2) — седловая точка.
Что практически означает наличие седловой точки? Если в матрице есть седловая точка a(i0,j0), то пара чистых стратегий (i0 для игрока A и j0 для игрока B) образует равновесие Нэша в игре с нулевой суммой: ни один из игроков односторонне не может улучшить своё положение, отклонившись от выбранной стратегии. Игрок A, выбрав строку i0, гарантирует себе выигрыш v = a(i0,j0) независимо от действий B; игрок B, выбрав столбец j0, гарантирует, что выигрышь A не превысит v. Это эквивалентно условию R = C = v, которое мы вычисляли выше.
Если седловой точки нет (что в реальных задачах бывает часто), нужно переходить к анализу смешанных стратегий или использовать преобразования матрицы (например, уменьшение по доминируемым строкам/столбцам). Для небольших матриц 2x2 существует явная формула для смешанных стратегий: решают систему линейных уравнений, приравнивая ожидания выигрыша по соответствующим чистым стратегиям оппонента. Для более крупных матриц применяют методы линейного программирования: поиск оптимальной смешанной стратегии игрока A сводится к максимизации переменной v при линейных ограничениях, или к двойственной задаче для игрока B. Однако ключевой ориентир остаётся тот же — в смешанной стратегии игроки подбирают вероятности для строк и столбцов так, чтобы никакая чистая стратегия оппонента не давала ему преимущества.
Рассмотрим полезный приём анализа — проверка на доминирование. Если одна строка строго лучше другой для игрока A (каждый её элемент >= соответствующего элемента другой строки), то худшая строка для A можно исключить. Аналогично для столбцов и игрока B (если столбец хуже — исключаем). Последовательное исключение доминируемых стратегий часто уменьшает матрицу и иногда сразу выявляет седловую точку или приводит к задаче 2x2, решаемой вручную. Это практический приём, который экономит время и упрощает вычисления при подготовке к экзаменам и в реальных приложениях.
Короткий чек-лист для проверки седловой точки и дальнейших действий:
В заключение: понимание седловых точек даёт мощный инструмент для анализа простых игр и понимания равновесий в чистых стратегиях. Это единственный случай, когда решение игры легко читается прямо из матрицы. При отсутствии седловой точки знания о том, как её искать и как сокращать матрицу с помощью доминирования, подготовят вас к следующему шагу — построению оптимальных смешанных стратегий. На практике важно уметь быстро считать row-min и col-max, понимать интерпретацию значения игры и уметь объяснять, почему выбор конкретной строки или столбца является устойчивым. Если нужно, могу подробно разобрать конкретную матрицу, показать полный расчёт смешанных стратегий для 2x2 или продемонстрировать уменьшение матрицы методом доминирования с пояснениями.