
- •Тема 1 : «Математическое моделирование в оптимизации»
- •1.1. Введение
- •1.1.Постановка задачи оптимизации
- •1.2. Классификация задач оптимизации
- •1.2.1. Задача безусловной оптимизации
- •1.2.2 Задача условной оптимизации
- •1.2.3. Задача математического программирования
- •1.3. Математическое моделирование в оптимизации
- •1.4. Примеры задач оптимизации
- •2.1. Формы записи задачи линейного программирования
- •2.2. Способы преобразования форм записи злп
- •2.3. Графический метод решения злп
- •3.1.Многоугольники и многогранники
- •3.2. Экстремум целевой функции
- •3.3.Опорное решение злп, его взаимосвязь с угловыми точками
- •3.4. Жордановы преобразования систем линейных уравнений
- •3.5. Симплексный метод решения задачи линейного программирования
- •3.6. Метод искусственного базиса
- •4.1.Виды математических моделей двойственных задач.
- •4.2. Общие правила составления двойственных задач
- •4.3.Перая теорема двойственности
- •4.4.Нахождение решения двойственной задачи по известному решению
- •4.5. Вторая теорема двойственности
- •4.6. Двойственный симплексный метод
- •5.1. Постановка задачи нелинейного программирования
- •5.2. Классические методы оптимизации
4.4.Нахождение решения двойственной задачи по известному решению
прямой задачи
Предположим, что симплексным методом найдено оптимальное решение Х* прямой задачи и оно определяется базисом А1,А2,...,Ат . Обозначим Сб*= (с1,с2,...,ст) – вектор-строку, составленную из коэффициентов при переменных целевой функции. Пусть D – матрица, составленная из координат векторов-условий первой симплексной таблицы, ее столбцы расположены над базисными столбцами последней таблицы оптимального решения. D-1 – матрица, обратная к матрице D. Ее вычислять не следует. Она находится в последней симплексной таблице. Ее столбцы расположены под столбцами, единичных базисных векторов первой таблицы.
Теорема 2. Если прямая задача линейного программирования имеет оптимальное решение Х*, то Y* = Сб* D-1 является оптимальным решением двойственной задачи.
Пример 2. Найти решение данной и двойственной к ней:
Z(X) = x1 – 6x2 + 2x3 –x4 + 3x5 max,
□ Двойственная задача имеет вид:
F(Y) = y1 + 11y2 + 2y3 min,
В данной паре задач легче решить исходную задачу, так как она имеет начальное опорное решение Х1 = (0,0,1,11,2) с базисом Б1 = (А3,А4,А5) и ее без дополнительных преобразований можно решить симплексным методом. Решение исходной задачи приведено в таблице:
1 -6 2 -1 3
Б |
Сб |
А0 |
А1 |
А2 |
А3 |
А4 |
А5 |
А3 А4 А5 |
2 -1 3 |
1 11 2 |
-2 2 [1] |
1 3 -2 |
1 0 0 |
0 1 0 |
0 0 1 |
|
к |
Z1=-3 |
-4 |
-1 |
0 |
0 |
0 |
А3 А4 А1 |
2 -1 1 |
5 7 2 |
0 0 1 |
-3 [7] -2 |
1 0 0 |
0 1 0 |
2 -2 1 |
|
к |
Z2=5 |
0 |
-9 |
0 |
0 |
4 |
А3 А2 А1 |
2 -6 1 |
8 1 4 |
0 0 1 |
0 1 0 |
1 0 0 |
3/7 1/7 2/7 |
8/7 -2/7 3/7 |
|
к |
Z3=14 |
0 |
0 |
0 |
9/7 |
10/7 |
Оптимальным решением исходной задачи является вектор Х* =(4,1,8), базис оптимального решения Б* = (А3,А2,А1), значение целевой функции max Z(X) = 14.
Оптимальное решение двойственной задачи находим по формуле
Y*
= C*D-1
=
Здесь матрица D-1 находится в последней таблице под базисными столбцами А3,А4,А5 первой таблицы.
Данное решение можно найти также по формулам:
yi = i* + ci*.
у1 = 0 + 2 =2, у2 =9/7-1= 2/7, y3 = 10/7 + 3 = 31/7.
Таким образом, оптимальным решением двойственной задачи задачи является вектор У*= (2, 2/7, 31/7), minF(Y*) = 14 .
Ответ: max Z(X) = 14 , X* = (4,1,8), min F(Y)= 14, Y* = (2, 2/7, 31/7)