- •1.3.1 Правила и особенности перехода к двойственной задаче.
- •2.6. Использование искусственной переменной в программировании симплекс-методом.
- •2.7.3.Алгоритм модифицированного симплекс-метода.
- •4.2.3. Пример решения задачи о назначении венгерским методом.
- •4.3.2.1. Пример решения задачи о назначении венгерским методом.
- •4.4.1. Алгоритм метода Мака
- •4.4.2. Пример решения задачи о назначении методом Мака.
4.4.1. Алгоритм метода Мака
-
Разделить множество столбцов на А и A', где
А – выбранное множество,
A' – невыбранное
В начале вычислений и при переходе от циклов к началу выбранных
столбцов нет; все столбцы относятся к A'.
Выбрать из множества A' столбец, содержащий более одного подчеркнутого элемента, перевести этот столбец из A' в А.
Подчеркнутый элемент – минимальный элемент в строке.
Примечание: перед первым шагом алгоритма множество А всегда является пустым.
-
Если подчеркнутый элемент находится в множестве А, найти в каждой строке разность между минимальным подчеркнутым и минимальным неподчеркнутым элементами. Из всех найденных разностей выбрать минимальную.
-
Увеличить все элементы матрицы А на выбранную на 2-м шаге минимальную разность.
-
В строке с минимальной разностью отметить пунктиром минимальный неподчеркнутый элемент


-
Столбец, содержащий отмеченный пунктиром элемент
,
перенести в множество С.
Если в С более 2-х неподчеркнутых элементов, то перенести С из A' в А и перейти ко 2-му шагу. Иначе, перейти к 6-му шагу.
-
Отмеченный пунктиром элемент
подчеркнуть (
меняется
на
). -
Найти исходный подчеркнутый элемент в строке с минимальной разностью (в той строке, где
)
и убрать подчеркивание (
меняется на
).
Обозначить столбец с элементом
D. -
Если D не содержит других подчеркнутых элементов, он должен содержать элементы, отмеченные пунктиром. Обозначить этот элемент
и
перейти к 6-му шагу.
Если D содержит еще 1 подчеркнутый элемент, то полностью подчеркнутые элементы образуют новый базис. В этом случае перейти к 1-му шагу.
4.4.2. Пример решения задачи о назначении методом Мака.
Пример 4. Исходная таблица:

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

Отметим пунктиром элемент
.
Добавим пятый столбец в множество С. В
С только один подчеркнутый элемент.
Подчеркиваем его сплошной чертой,
убираем подчеркивание элемента
и обозначаем первый столбец буквой D.
В D есть еще один подчеркнутый
элемент
,
значит, переходим к первому шагу.

Внесем в множество А третий столбец, найдем минимальную разность и перейдем к следующей таблице.

Отметим пунктиром элемент
.
Добавим четвертый столбец в множество
С. В С только один подчеркнутый элемент.
Подчеркиваем его сплошной чертой,
убираем подчеркивание элемента
и обозначаем третий столбец буквой D.
В D есть еще подчеркнутые
элементы, значит, переходим к первому
шагу.

Внесем в множество А третий столбец, найдем минимальную разность и перейдем к следующей таблице.

Отметим пунктиром элемент
.
Добавим пятый столбец в множество С. В
С есть еще подчеркнутые элементы, поэтому
переводим пятый столбец в А. Минимальная
разность соответствует второй строке.

Отметим пунктиром элемент
.
Добавим первый столбец в множество С.
В С есть еще подчеркнутые элементы,
поэтому переводим пятый столбец в А.
Минимальная разность соответствует
второй строке. Прибавляем ко всем
элементам множества А величину минимальной
разности, т.е. 1.

Отметим пунктиром элемент
.
Добавим второй столбец в множество С.
В С только один подчеркнутый элемент.
Подчеркиваем его сплошной чертой,
убираем подчеркивание элемента
и обозначаем пятый столбец буквой D.
В D есть один подчеркнутый
пунктиром элемент
.
Подчеркиваем его сплошной чертой,
убираем подчеркивание элемента
.
Распределение закончено.Соответствующее
значение целевой функции:
f = 6 + 16 + 6 + 14 + 8 = 50
Теория игр
Пример 5.2.6.1. Найти оптимальные стратегии банков для задачи из примера 3 с платежной матрицей А:

Решение.
1. Проверим, имеет ли игра решение в чистых стратегиях (см. пример 5.2.3.2).
2. Упростим платежную матрицу (см. пример 5.2.4.1):

Подпишем над столбцами матрицы смешанные стратегии банка В, которые остались после исключения доминируемых стратегий В2, В5, вероятности применения которых равны нулю: q2 = 0, q5 = 0. Рядом со строками матрицы подпишем смешанные стратегии банка А, которые остались после исключения доминируемых стратегий А1, А2, А5, вероятности применения которых также равны нулю: p1 = 0, p2 = 0, p5 = 0.
3.
Так как среди элементов упрощенной
матрицы есть отрицательные, то ко всем
элементам А прибавим такое число L >
0, чтобы все значения стали неотрицательными.
В нашем примере возьмем L = 1. При этом
цена игры
увеличится на L = 1 и станет равной
,
а оптимальные смешанные стратегии
банков не изменятся. Получим следующую
платежную матрицу:
.
4.
Составим пару взаимно двойственных
задач, эквивалентную матричной игре с
платежной матрицей А4.
Для этого подпишем над столбцами матрицы
переменные х1, х2, х3,
соответствующие смешанным стратегиям
банка В, а рядом со строками матрицы −
переменные y1, y2, соответствующие
смешанным стратегиям банка А:

Целевая
функция z прямой задачи исследуется на
максимум и равна сумме переменных
,
т.е.
.
А ограничения выписываются по строкам и не превышают единицы:

Целевая
функция F двойственной задачи исследуется
на минимум и равна сумме переменных
,
т.е.
,
при ограничениях, больших либо равных единице, которые выписываются по столбцам:

(Можно также просто построить двойственную задачу к прямой.)
5. Решим прямую задачу симплекс-методом:


Приведем ее к каноническому виду

Выпишем начальный опорный план задачи (это возможно, так как в каждом ограничении есть по одной базисной переменной: в 1-м – х4, во 2-м – х5):
.
Составим исходную симплекс-таблицу и решим задачу обычным симплекс - методом.
Итерация №0
|
базис |
значение |
x1 |
x2 |
x3 |
x4 |
x5 |
|
x4 |
1 |
8 |
2 |
0 |
1 |
0 |
|
x5 |
1 |
0 |
1 |
4 |
0 |
1 |
|
z (x) |
0 |
-1 |
-1 |
-1 |
0 |
0 |
Найдем ведущий элемент по минимальному симплексному отношению и пересчитаем таблицу методом замещения Жордана–Гаусса. Занесем новые данные во 2-ю симплексную таблицу.
Переменную x3 вводим в число базисных вместо переменной x5.
Ведущий элемент равен 4.
Итерация №1
|
базис |
значение |
x1 |
x2 |
x3 |
x4 |
x5 |
|
x4 |
1 |
8 |
2 |
0 |
1 |
0 |
|
x3 |
0,25 |
0 |
0,25 |
1 |
0 |
0,25 |
|
z (x) |
0,25 |
-1 |
-0,75 |
0 |
0 |
0,25 |
Аналогичным образом будем пересчитывать таблицы до тех пор, пока в z-строке все элементы (не считая значения) станут неотрицательными.
Переменную x1 вводим в число базисных вместо переменной x4.
Ведущий элемент равен 8.
Итерация №2
|
базис |
значение |
x1 |
x2 |
x3 |
x4 |
x5 |
|
x1 |
0,125 |
1 |
0,25 |
0 |
0,125 |
0 |
|
x3 |
0,25 |
0 |
0,25 |
1 |
0 |
0,25 |
|
z (x) |
0,375 |
0 |
-0,5 |
0 |
0,125 |
0,25 |
Переменную x2 вводим в число базисных вместо переменной x1.
Ведущий элемент равен 0,25.
Итерация №3
|
базис |
значение |
x1 |
x2 |
x3 |
x4 |
x5 |
|
x2 |
0,5 |
4 |
1 |
0 |
0,5 |
0 |
|
x3 |
0,125 |
-1 |
0 |
1 |
-0,125 |
0,25 |
|
z (x) |
0,625 |
2 |
0 |
0 |
0,375 |
0,25 |
|
|
|
|
|
|
|
|
Так
как в z-строке последней симплексной
таблицы все элементы больше или равны
нулю, то найден оптимальный план. Он
единственный, поскольку нули
z-строки соответствуют только базисным
переменным:
,
а значение целевой функции
.
По
соответствию переменных прямой и
двойственной задач выпишем решение
двойственной задачи. Так как у нас
симметричная пара двойственных задач,
то в строке оценок (z-строке) найдем
элементы, соответствующие переменным,
которые входили в исходный базис, x4,
x5, и присвоим их значения двойственным
неизвестным y1, y2, т. е.
.
Следовательно,
.
При этом минимальное значение целевой
функции двойственной задачи совпадает
с максимальным значением целевой функции
исходной задачи, т.е.
.
6.
Используя соотношения между оптимальными
решениями пары двойственных задач
и
,
оптимальными стратегиями
и
и
ценой игры
,
найдем решение игры в смешанных
стратегиях.
Вычислим
сначала цену игры
,
используя формулу
:

Используя
соответствия между
и
,
и
из матрицы

найдем оптимальные смешанные стратегии банков А и В по формулам
;
.
Тогда оптимальные стратегии банка А будут равны:

Следовательно,
из общей суммы средств а тыс. ден.
ед., выделяемых банком А на строительство
пяти объектов, на долю 3-го объекта
следует выделить 60 % (так как
),
а на долю 4-го − 40 % этой суммы (так как
).
На остальные строительные объекты
деньги выделять нецелесообразно (так
как
).
Для банка В соответственно получим:

Таким
образом, из общей суммы средств
b тыс. ден. ед., выделяемых
банком В на строительство пяти объектов,
на долю 3-го объекта следует выделить
80 % (так как
),
а на долю 4-го − 20 % всей суммы (так как
).
В остальные строительные объекты деньги
вкладывать нецелесообразно (так как
).
Такое распределение денежных средств банками А и В на строительство пяти объектов позволит им получить максимальную прибыль 0,6 тыс. ден. ед.




