Для игрока 2 необходимо найти минимальную цену игры (V). Следовательно, значение 1/Vдолжно стремиться к максимуму.
Целевая функция задачи будет иметь следующий вид:
Все переменные в данных системах линейных неравенств должны быть неотрицательными: xi= pi/V, а yi= qj/V. Значения piи qjне могут быть отрицательными, так как являются значениями вероятностей выбора стратегий игроков. Поэтому необходимо, чтобы значение цены игры Vне было отрицательным. Цена игры вычисляется на основе коэффициентов выигрышей платёжной матрицы. Поэтому, для того, чтобы гарантировать условие неотрицательности для всех переменных, необходимо, чтобы все коэффициенты матрицы были неотрицательными. Этого можно добиться, прибавив перед началом решения задачи к каждому коэффициенту матрицы число K, соответствующее модулю наименьшего отрицательного коэффициента матрицы. Тогда в ходе решения задачи будет определена не цена игры, а величина
V* = V+ K
Для решения задач линейного программирования используется симплекс-метод. [1, 5].
В результате решения определяются значения целевых функций (для обоих игроков эти значения совпадают), а также значения переменных xiи yj.
Величина V* определяется по формуле: V* = 1/z
Значения вероятностей выбора стратегий определяются: для игрока 1: Pi= xi×V*: для игрока 2: qi= yi×V*.
Для определения цены игры Vиз величины V* необходимо вычесть число K.
Пример решения матричной игры со смешанным расширением
Рассмотрим пример решения матричной игры со смешанным расширением. Платёжную матрицу игры составим на основе исходных данных, заменив лишь значения долей продукции предприятия 1, приобретаемой населением в зависимости от соотношений цен (табл. 2.1).
Таблица 2.1 - Доля продукции предприятия 1, приобретаемой населением в зависимости от соотношения цен на продукцию
Цена реализации 1 ед. продукции, д.е. | Доля продукции предприятия 1, купленной населением | |
Предп. 1 | Предп. 2 | |
10 | 10 | 0,31 |
10 | 6 | 0,33 |
10 | 2 | 0,18 |
6 | 10 | 0,7 |
6 | 6 | 0,3 |
6 | 2 | 0,2 |
2 | 10 | 0,9 |
2 | 6 | 0,85 |
2 | 2 | 0,69 |
Применив к исходным данным задачи формулу (1) определения разницы прибыли от производства продукции, получим следующую платёжную матрицу
Платёжная матрица в игре «Борьба двух предприятий за рынок продукции региона»
B1 | B2 | B3 | minj | |
A1 | 0,17 | 0,62 | 0,24 | 0.17 |
A2 | 3 | -1,5 | -0,8 | -1.5 |
A3 | 0,75 | 0,5 | 0,175 | 0,175 |
maxi | 3 | 0.62 | 0.24 |
В данной матрице нет доминируемых или дублирующих стратегий. Нижняя цена игры равна 0,175, а верхняя цена игры равна 0,24. Нижняя цена игры не равна верхней. Поэтому решения в чистых стратегиях не существует и для каждого из игроков необходимо найти оптимальную смешанную стратегию.
Решение задачи
1. В данной матрице имеются отрицательные коэффициенты. Для соблюдения условия неотрицательности в задачах линейного программирования прибавим к каждому коэффициенту матрицы модуль минимального отрицательного коэффициента. В данной задаче к каждому коэффициенту матрицы необходимо прибавить число 1,5 – значение модуля наименьшего отрицательного элемента матрицы. Получим платёжную матрицу, преобразованную для выполнения условия неотрицательности
Платёжная матрица, преобразованная для выполнения условия неотрицательности
B1 | B2 | B3 | |
A1 | 1,67 | 2,12 | 1,74 |
A2 | 4,5 | 0 | 0,7 |
A3 | 2,25 | 2 | 1,675 |
2. Опишем задачу линейного программирования для каждого игрока в виде системы линейных неравенств:
Для игрока 1:
1,67×x1 + 4,5×x2 + 2,25×x3 ³1
2,12×x1 + 0×x2 + 2×x3 ³1
1,74×x1 + 0,7×x2 + 1,675×x3 ³1
x1³0; x2³0; x3³0
min Z = x1 + x2 + x3
Для игрока 2:
1,67×y1 + 2,12×y2 + 1,74×y3 £1
4,5×y1 + 0×y2 + 0,7×y3 £ 1
2,25×y1 + 2×y2 + 1,675×y3 £ 1
y1³ 0; y2³ 0; y3³ 0
max Z = y1 + y2 + y3
3. Решим обе задачи с использованием симплекс-метода, применяя программный комплекс "Линейная оптимизация".
В результате решения задачи получим следующие значения целевой функции и переменных:
Z= 0,5771
V* = 1/0,5771 = 1,7328
x1 = 0,5144; x2 = 0; x3 = 0,0626
y1 = 0,0582; y3 = 0,5189
4. Для определения значений вероятностей выбора стратегий игроков 1 и 2 умножим значения переменных на V*. P1 = x1×V* = 0,8914, p2 =0, p3 = x3×V* = 0,1083: q1 = y1×V* = 0,1008, q2 = 0, q3 = y3×V* = 0,8991.
5. Определим значение цены игры. Для этого из величины V* вычтем 1,5 (значение модуля наименьшего отрицательного элемента).
V= 1,7328 - 1,5 = 0,2328
Таким образом, в данной игре выиграет предприятие 1 (значение V> 0). Для достижения своей оптимальной стратегии (получения максимального математического ожидания гарантированного выигрыша) предприятие 1 должно выбирать технологию 1 с вероятностью 0,8914, а технологию 3 – с вероятностью 0,1083. Предприятие 2, соответственно, должно выбирать технологию 1 с вероятностью 0,1008, а технологию 3 – с вероятностью 0,8991. Значение математического ожидания выигрыша предприятия 1 составит 0,2328 тыс. д.е.
2.3 Исследование операций
Скажем несколько слов об основных методологических принципах Исследования операций:
· Системный подход. Его суть состоит в систематическом поиске существенных взаимодействий при оценке деятельности или стратегии любой части организации
· Комплексный научный коллектив. Необходимость привлечения к решению практических задач разных специалистов связана с требованием всестороннего подхода к проблеме
· Научный метод. Так как эксперимент в узком смысле этого слова невозможен, нужно заменить реальную действительность её научной моделью. Поэтому решение задач исследования операций при научном подходе сводится на практике к решению уравнений или систем уравнений при условии выполнения различных заданных критериев.
Назовём теперь основные этапы исследования операций:
· Содержательная постановка задачи
· Построение математической модели
· Решение задачи на модели
· Проверка адекватности модели
· Построение конкурирующего алгоритма
· Реализация решения
Несмотря на различное содержание задач, их физическую суть, математические постановки этих задач имеют много общего. В каждой из них требуется максимизировать или минимизировать некоторую линейную функцию нескольких переменных, ограничения, положенные на совокупность этих переменных являются либо линейными уравнениями, либо линейными неравенствами. Поэтому далее рассмотрим только математическую постановку задачи линейного программирования. К настоящему времени в литературе выделяют следующую классификацию ЗЛП (общая задача линейного программирования; каноническая целевая функция задачи линейного программирования; основная задача линейного программирования; основная задача линейного программирования с ограничениями – неравенствами) и их решений (допустимое решение; допустимое базисное решение; оптимальное решение).
Общая задача линейного программирования заключается в отыскании вектора (х1, х2,..., хn) максимизирующего (минимизирующего) критерий оптимальности (функцию цели задачи)
при ограничениях линейного типа в виде равенств:
в виде неравенств:
и ограничениях на переменные состояния:
Эта задача при наличии двух (или трех) переменных имеет наглядное геометрическое представление.
Пусть целевая функция имеет вид
. Если на плоскости переменных и принимает некоторое постоянное значение то определяемое последним соотношением множество точек плоскости ( , ) является линией равного значения уровня (линией уровня) целевой функции. Причем, при = = 0 эта линия «сжимается» в точку (рис. 1), при имеем и линия равного уровня является прямой линией, проходящей через точки и
Рис. 1 - Геометрическое представление целевой функции