Задача линейного программирования - Основы экономико-математического моделирования
Предприятие планирует выпуск продукции I и II видов, на производство которых расходуется три вида сырья А, ВИ С. Потребность AIjI-го вида сырья для производства каждой единицы J-го вида продукции, запас BI Соответствующего вида сырья и прибыль CJ от реализации единицы J-го вида продукции заданы таблицей:
Виды сырья |
Виды продукции |
Запасы сырья | |
I |
II | ||
A |
A11 = N |
A12 = 2 |
B1 = Mn +5N |
B |
A21 = 1 |
A22 = 1 |
B2 = M + N +3 |
C |
A31 = 2 |
A32 = M + 1 |
B3 = Mn + 4M +N + 4 |
Прибыль |
C1 = M +2 |
C2 = N + 2 | |
План (ед.) |
X1 |
X2 |
Симплекс-метод.
Решим прямую задачу линейного программирования симплексным методом, с использованием симплексной таблицы.
Определим максимальное значение целевой функции F(X) = 7x1 + 3x2 при следующих условиях-ограничений.
X1 + 2x2?10
X1 + x2?9
2x1 + 6x2?30
X1 + x2?1
Для построения первого опорного плана систему неравенств приведем к системе уравнений путем введения дополнительных переменных (Переход к канонической форме).
В 1-м неравенстве смысла (?) вводим базисную переменную x3. В 2-м неравенстве смысла (?) вводим базисную переменную x4. В 3-м неравенстве смысла (?) вводим базисную переменную x5. В 4-м неравенстве смысла (?) вводим базисную переменную x6 со знаком минус.
- 1x1 + 2x2 + 1x3 + 0x4 + 0x5 + 0x6 = 10 1x1 + 1x2 + 0x3 + 1x4 + 0x5 + 0x6 = 9 2x1 + 6x2 + 0x3 + 0x4 + 1x5 + 0x6 = 30 1x1 + 1x2 + 0x3 + 0x4 + 0x5-1x6 = 1
Введем Искусственные переменные x: в 4-м равенстве вводим переменную x7;
- 1x1 + 2x2 + 1x3 + 0x4 + 0x5 + 0x6 + 0x7 = 10 1x1 + 1x2 + 0x3 + 1x4 + 0x5 + 0x6 + 0x7 = 9 2x1 + 6x2 + 0x3 + 0x4 + 1x5 + 0x6 + 0x7 = 30 1x1 + 1x2 + 0x3 + 0x4 + 0x5-1x6 + 1x7 = 1
Для постановки задачи на максимум целевую функцию запишем так:
F(X) = 7x1+3x2 - Mx7 > max
За использование искусственных переменных, вводимых в целевую функцию, накладывается так называемый штраф величиной М, очень большое положительное число, которое обычно не задается.
Полученный базис называется искусственным, а метод решения называется методом искусственного базиса.
Причем искусственные переменные не имеют отношения к содержанию поставленной задачи, однако они позволяют построить стартовую точку, а процесс оптимизации вынуждает эти переменные принимать нулевые значения и обеспечить допустимость оптимального решения.
Из уравнений выражаем искусственные переменные:
X7 = 1-x1-x2+x6
Которые подставим в целевую функцию:
F(X) = 7x1 + 3x2 - M(1-x1-x2+x6) > max
Или
F(X) = (7+M)x1+(3+M)x2+(-M)x6+(-M) > max
Матрица коэффициентов A = a(ij) этой системы уравнений имеет вид:
1 |
2 |
1 |
0 |
0 |
0 |
0 |
1 |
1 |
0 |
1 |
0 |
0 |
0 |
2 |
6 |
0 |
0 |
1 |
0 |
0 |
1 |
1 |
0 |
0 |
0 |
-1 |
1 |
Базисные переменные это переменные, которые входят только в одно уравнение системы ограничений и притом с единичным коэффициентом.
Экономический смысл дополнительных переменных: дополнительные переменные задачи ЛП обозначают излишки сырья, времени, других ресурсов, остающихся в производстве данного оптимального плана.
Решим систему уравнений относительно базисных переменных: x3, x4, x5, x7
Полагая, что Свободные переменные равны 0, получим первый опорный план:
X1 = (0,0,10,9,30,0,1)
Базисное решение называется допустимым, если оно неотрицательно.
Базис |
B |
X1 |
X2 |
X3 |
X4 |
X5 |
X6 |
X7 |
X3 |
10 |
1 |
2 |
1 |
0 |
0 |
0 |
0 |
X4 |
9 |
1 |
1 |
0 |
1 |
0 |
0 |
0 |
X5 |
30 |
2 |
6 |
0 |
0 |
1 |
0 |
0 |
X7 |
1 |
1 |
1 |
0 |
0 |
0 |
-1 |
1 |
F(X0) |
-M |
-7-M |
-3-M |
0 |
0 |
0 |
M |
0 |
Переходим к основному алгоритму симплекс-метода.
Итерация.
1. Проверка критерия оптимальности.
Текущий опорный план неоптимален, так как в индексной строке находятся отрицательные коэффициенты.
2. Определение новой базисной переменной.
В качестве ведущего выберем столбец, соответствующий переменной x1, так как это наибольший коэффициент по модулю.
3. Определение новой свободной переменной.
Вычислим значения DI по строкам как частное от деления: bI / aI1
И из них выберем наименьшее:
Min (10 : 1 , 9 : 1 , 30 : 2 , 1 : 1 ) = 1
Следовательно, 4-ая строка является ведущей.
Разрешающий элемент равен (1) и находится на пересечении ведущего столбца и ведущей строки.
Базис |
B |
X1 |
X2 |
X3 |
X4 |
X5 |
X6 |
X7 |
Min |
X3 |
10 |
1 |
2 |
1 |
0 |
0 |
0 |
0 |
10 |
X4 |
9 |
1 |
1 |
0 |
1 |
0 |
0 |
0 |
9 |
X5 |
30 |
2 |
6 |
0 |
0 |
1 |
0 |
0 |
15 |
X7 |
1 |
1 |
1 |
0 |
0 |
0 |
-1 |
1 |
1 |
F(X1) |
-M |
-7-M |
-3-M |
0 |
0 |
0 |
M |
0 |
0 |
4. Пересчет симплекс-таблицы.
Формируем следующую часть симплексной таблицы.
Вместо переменной x7 в план 1 войдет переменная x1.
Строка, соответствующая переменной x1 в плане 1, получена в результате деления всех элементов строки x7 плана 0 на разрешающий элемент РЭ=1
На месте разрешающего элемента в плане 1 получаем 1.
В остальных клетках столбца x1 плана 1 записываем нули.
Таким образом, в новом плане 1 заполнены строка x1 и столбец x1.
Все остальные элементы нового плана 1, включая элементы индексной строки, определяются по правилу прямоугольника.
Для этого выбираем из старого плана четыре числа, которые расположены в вершинах прямоугольника и всегда включают разрешающий элемент РЭ.
НЭ = СЭ - (А*В)/РЭ
СТЭ - элемент старого плана, РЭ - разрешающий элемент (1), А и В - элементы старого плана, образующие прямоугольник с элементами СТЭ и РЭ.
Представим расчет каждого элемента в виде таблицы.
B |
X 1 |
X 2 |
X 3 |
X 4 |
X 5 |
X 6 |
X 7 |
10-(1 * 1):1 |
1-(1 * 1):1 |
2-(1 * 1):1 |
1-(0 * 1):1 |
0-(0 * 1):1 |
0-(0 * 1):1 |
0-(-1 * 1):1 |
0-(1 * 1):1 |
9-(1 * 1):1 |
1-(1 * 1):1 |
1-(1 * 1):1 |
0-(0 * 1):1 |
1-(0 * 1):1 |
0-(0 * 1):1 |
0-(-1 * 1):1 |
0-(1 * 1):1 |
30-(1 * 2):1 |
2-(1 * 2):1 |
6-(1 * 2):1 |
0-(0 * 2):1 |
0-(0 * 2):1 |
1-(0 * 2):1 |
0-(-1 * 2):1 |
0-(1 * 2):1 |
1 : 1 |
1 : 1 |
1 : 1 |
0 : 1 |
0 : 1 |
0 : 1 |
-1 : 1 |
1 : 1 |
(0)-(1 * (-7-M)):1 |
(-7-M)-(1 * (-7-M)):1 |
(-3-M)-(1 * (-7-M)):1 |
(0)-(0 * (-7-M)):1 |
(0)-(0 * (-7-M)):1 |
(0)-(0 * (-7-M)):1 |
(M)-(-1 * (-7-M)):1 |
(0)-(1 * (-7-M)):1 |
Получаем новую симплекс-таблицу:
Базис |
B |
X1 |
X2 |
X3 |
X4 |
X5 |
X6 |
X7 |
X3 |
9 |
0 |
1 |
1 |
0 |
0 |
1 |
-1 |
X4 |
8 |
0 |
0 |
0 |
1 |
0 |
1 |
-1 |
X5 |
28 |
0 |
4 |
0 |
0 |
1 |
2 |
-2 |
X1 |
1 |
1 |
1 |
0 |
0 |
0 |
-1 |
1 |
F(X1) |
7 |
0 |
4 |
0 |
0 |
0 |
-7 |
7+M |
Итерация 1.
1. Проверка критерия оптимальности.
Текущий опорный план неоптимален, так как в индексной строке находятся отрицательные коэффициенты.
2. Определение новой базисной переменной.
В качестве ведущего выберем столбец, соответствующий переменной x6, так как это наибольший коэффициент по модулю.
3. Определение новой свободной переменной.
Вычислим значения DI по строкам как частное от деления: bI / aI6
И из них выберем наименьшее:
Min (9 : 1 , 8 : 1 , 28 : 2 , - ) = 8
Следовательно, 2-ая строка является ведущей.
Разрешающий элемент равен (1) и находится на пересечении ведущего столбца и ведущей строки.
Базис |
B |
X1 |
X2 |
X3 |
X4 |
X5 |
X6 |
X7 |
Min |
X3 |
9 |
0 |
1 |
1 |
0 |
0 |
1 |
-1 |
9 |
X4 |
8 |
0 |
0 |
0 |
1 |
0 |
1 |
-1 |
8 |
X5 |
28 |
0 |
4 |
0 |
0 |
1 |
2 |
-2 |
14 |
X1 |
1 |
1 |
1 |
0 |
0 |
0 |
-1 |
1 |
- |
F(X2) |
7 |
0 |
4 |
0 |
0 |
0 |
-7 |
7+M |
0 |
4. Пересчет симплекс-таблицы.
Формируем следующую часть симплексной таблицы.
Вместо переменной x4 в план 2 войдет переменная x6.
Строка, соответствующая переменной x6 в плане 2, получена в результате деления всех элементов строки x4 плана 1 на разрешающий элемент РЭ=1
На месте разрешающего элемента в плане 2 получаем 1.
В остальных клетках столбца x6 плана 2 записываем нули.
Таким образом, в новом плане 2 заполнены строка x6 и столбец x6.
Все остальные элементы нового плана 2, включая элементы индексной строки, определяются по правилу прямоугольника.
Представим расчет каждого элемента в виде таблицы.
B |
X 1 |
X 2 |
X 3 |
X 4 |
X 5 |
X 6 |
X 7 |
9-(8 * 1):1 |
0-(0 * 1):1 |
1-(0 * 1):1 |
1-(0 * 1):1 |
0-(1 * 1):1 |
0-(0 * 1):1 |
1-(1 * 1):1 |
-1-(-1 * 1):1 |
8 : 1 |
0 : 1 |
0 : 1 |
0 : 1 |
1 : 1 |
0 : 1 |
1 : 1 |
-1 : 1 |
28-(8 * 2):1 |
0-(0 * 2):1 |
4-(0 * 2):1 |
0-(0 * 2):1 |
0-(1 * 2):1 |
1-(0 * 2):1 |
2-(1 * 2):1 |
-2-(-1 * 2):1 |
1-(8 * -1):1 |
1-(0 * -1):1 |
1-(0 * -1):1 |
0-(0 * -1):1 |
0-(1 * -1):1 |
0-(0 * -1):1 |
-1-(1 * -1):1 |
1-(-1 * -1):1 |
(7+M)-(8 * (-7)):1 |
(0)-(0 * (-7)):1 |
(4)-(0 * (-7)):1 |
(0)-(0 * (-7)):1 |
(0)-(1 * (-7)):1 |
(0)-(0 * (-7)):1 |
(-7)-(1 * (-7)):1 |
(7+M)-(-1 * (-7)):1 |
Получаем новую симплекс-таблицу:
Базис |
B |
X1 |
X2 |
X3 |
X4 |
X5 |
X6 |
X7 |
X3 |
1 |
0 |
1 |
1 |
-1 |
0 |
0 |
0 |
X6 |
8 |
0 |
0 |
0 |
1 |
0 |
1 |
-1 |
X5 |
12 |
0 |
4 |
0 |
-2 |
1 |
0 |
0 |
X1 |
9 |
1 |
1 |
0 |
1 |
0 |
0 |
0 |
F(X2) |
63 |
0 |
4 |
0 |
7 |
0 |
0 |
M |
1. Проверка критерия оптимальности.
Среди значений индексной строки нет отрицательных. Поэтому эта таблица определяет оптимальный план задачи.
Окончательный вариант симплекс-таблицы:
Базис |
B |
X1 |
X2 |
X3 |
X4 |
X5 |
X6 |
X7 |
X3 |
1 |
0 |
1 |
1 |
-1 |
0 |
0 |
0 |
X6 |
8 |
0 |
0 |
0 |
1 |
0 |
1 |
-1 |
X5 |
12 |
0 |
4 |
0 |
-2 |
1 |
0 |
0 |
X1 |
9 |
1 |
1 |
0 |
1 |
0 |
0 |
0 |
F(X3) |
63 |
0 |
4 |
0 |
7 |
0 |
0 |
M |
Так как в оптимальном решении отсутствуют искусственные переменные (они равны нулю), то данное решение является допустимым.
Оптимальный план можно записать так:
X1 = 9
F(X) = 7*9 = 63
Анализ оптимального плана.
В оптимальный план вошла дополнительная переменная x3. Следовательно, при реализации такого плана имеются недоиспользованные ресурсы 1-го вида в количестве 1
В оптимальный план вошла дополнительная переменная x6. Следовательно, при реализации такого плана имеются недоиспользованные ресурсы 2-го вида в количестве 8
В оптимальный план вошла дополнительная переменная x5. Следовательно, при реализации такого плана имеются недоиспользованные ресурсы 3-го вида в количестве 12
Значение 0 в столбце x1 означает, что использование x1 - выгодно.
Значение 4> 0 в столбце x2 означает, что использование x2 - не выгодно.
Значение 7 в столбце x4 означает, что теневая цена (двойственная оценка) равна 7.
Значение 0+1M в столбце x7 означает, что теневая цена (двойственная оценка) равна 0+1M.
Необходимо найти максимальное значение целевой функции F = 7x1+3x2 > max, при системе ограничений:
X1+2x2?10 |
(1) |
X1+x2?9 |
(2) |
2x1+6x2?30 |
(3) |
X1+x2?1 |
(4) |
X1?0 |
(5) |
X2?0 |
(6) |
Построим область допустимых решений, т. е. решим графически систему неравенств. Для этого построим каждую прямую и определим полуплоскости, заданные неравенствами (полуплоскости обозначены штрихом).
Границы области допустимых решений
Пересечением полуплоскостей будет являться область, координаты точек которого удовлетворяют условию неравенствам системы ограничений задачи.
Обозначим границы области многоугольника решений.
Рассмотрим целевую функцию задачи F = 7x1+3x2 > max.
Построим прямую, отвечающую значению функции F = 0: F = 7x1+3x2 = 0. Вектор-градиент, составленный из коэффициентов целевой функции, указывает направление максимизации F(X). Начало вектора - точка (0; 0), конец - точка (7; 3). Будем двигать эту прямую параллельным образом. Поскольку нас интересует максимальное решение, поэтому двигаем прямую до последнего касания обозначенной области. На графике эта прямая обозначена пунктирной линией.
Область допустимых решений представляет собой линию.
Прямая F(x) = const пересекает область в точке C. Так как точка C получена в результате пересечения прямых (5) и (4), то ее координаты удовлетворяют уравнениям этих прямых:
X2=0
X1+x2=1
Решив систему уравнений, получим: x1 = 1, x2 = 0
Откуда найдем максимальное значение целевой функции:
F(X) = 7*1 + 3*0 = 7
Двойственная задача линейного программирования.
Решим прямую задачу линейного программирования симплексным методом, с использованием симплексной таблицы.
Определим максимальное значение целевой функции F(X) = 7x1 + 3x2 при следующих условиях-ограничений.
X1 + 2x2?10
X1 + x2?9
2x1 + 6x2?30
X1 + x2?1
Для построения первого опорного плана систему неравенств приведем к системе уравнений путем введения дополнительных переменных (Переход к канонической форме).
В 1-м неравенстве смысла (?) вводим базисную переменную x3. В 2-м неравенстве смысла (?) вводим базисную переменную x4. В 3-м неравенстве смысла (?) вводим базисную переменную x5. В 4-м неравенстве смысла (?) вводим базисную переменную x6.
- 1x1 + 2x2 + 1x3 + 0x4 + 0x5 + 0x6 = 10 1x1 + 1x2 + 0x3 + 1x4 + 0x5 + 0x6 = 9 2x1 + 6x2 + 0x3 + 0x4 + 1x5 + 0x6 = 30 1x1 + 1x2 + 0x3 + 0x4 + 0x5 + 1x6 = 1
Базисные переменные это переменные, которые входят только в одно уравнение системы ограничений и притом с единичным коэффициентом.
Экономический смысл дополнительных переменных: дополнительные переменные задачи ЛП обозначают излишки сырья, времени, других ресурсов, остающихся в производстве данного оптимального плана.
Решим систему уравнений относительно базисных переменных: x3, x4, x5, x6
Полагая, что Свободные переменные равны 0, получим первый опорный план:
X1 = (0,0,10,9,30,1)
Базисное решение называется допустимым, если оно неотрицательно.
Базис |
B |
X1 |
X2 |
X3 |
X4 |
X5 |
X6 |
X3 |
10 |
1 |
2 |
1 |
0 |
0 |
0 |
X4 |
9 |
1 |
1 |
0 |
1 |
0 |
0 |
X5 |
30 |
2 |
6 |
0 |
0 |
1 |
0 |
X6 |
1 |
1 |
1 |
0 |
0 |
0 |
1 |
F(X0) |
0 |
-7 |
-3 |
0 |
0 |
0 |
0 |
Переходим к основному алгоритму симплекс-метода.
Итерация 0.
1. Проверка критерия оптимальности.
Текущий опорный план неоптимален, так как в индексной строке находятся отрицательные коэффициенты.
2. Определение новой базисной переменной.
В качестве ведущего выберем столбец, соответствующий переменной x1, так как это наибольший коэффициент по модулю.
3. Определение новой свободной переменной.
Вычислим значения DI по строкам как частное от деления: bI / aI1
И из них выберем наименьшее:
Min (10 : 1 , 9 : 1 , 30 : 2 , 1 : 1 ) = 1
Следовательно, 4-ая строка является ведущей.
Разрешающий элемент равен (1) и находится на пересечении ведущего столбца и ведущей строки.
Базис |
B |
X1 |
X2 |
X3 |
X4 |
X5 |
X6 |
Min |
X3 |
10 |
1 |
2 |
1 |
0 |
0 |
0 |
10 |
X4 |
9 |
1 |
1 |
0 |
1 |
0 |
0 |
9 |
X5 |
30 |
2 |
6 |
0 |
0 |
1 |
0 |
15 |
X6 |
1 |
1 |
1 |
0 |
0 |
0 |
1 |
1 |
F(X1) |
0 |
-7 |
-3 |
0 |
0 |
0 |
0 |
0 |
4. Пересчет симплекс-таблицы.
Формируем следующую часть симплексной таблицы.
Вместо переменной x6 в план 1 войдет переменная x1.
Строка, соответствующая переменной x1 в плане 1, получена в результате деления всех элементов строки x6 плана 0 на разрешающий элемент РЭ=1
На месте разрешающего элемента в плане 1 получаем 1.
В остальных клетках столбца x1 плана 1 записываем нули.
Таким образом, в новом плане 1 заполнены строка x1 и столбец x1.
Все остальные элементы нового плана 1, включая элементы индексной строки, определяются по правилу прямоугольника.
Для этого выбираем из старого плана четыре числа, которые расположены в вершинах прямоугольника и всегда включают разрешающий элемент РЭ.
НЭ = СЭ - (А*В)/РЭ
СТЭ - элемент старого плана, РЭ - разрешающий элемент (1), А и В - элементы старого плана, образующие прямоугольник с элементами СТЭ и РЭ.
Представим расчет каждого элемента в виде таблицы.
B |
X 1 |
X 2 |
X 3 |
X 4 |
X 5 |
X 6 |
10-(1 * 1):1 |
1-(1 * 1):1 |
2-(1 * 1):1 |
1-(0 * 1):1 |
0-(0 * 1):1 |
0-(0 * 1):1 |
0-(1 * 1):1 |
9-(1 * 1):1 |
1-(1 * 1):1 |
1-(1 * 1):1 |
0-(0 * 1):1 |
1-(0 * 1):1 |
0-(0 * 1):1 |
0-(1 * 1):1 |
30-(1 * 2):1 |
2-(1 * 2):1 |
6-(1 * 2):1 |
0-(0 * 2):1 |
0-(0 * 2):1 |
1-(0 * 2):1 |
0-(1 * 2):1 |
1 : 1 |
1 : 1 |
1 : 1 |
0 : 1 |
0 : 1 |
0 : 1 |
1 : 1 |
0-(1 * -7):1 |
-7-(1 * -7):1 |
-3-(1 * -7):1 |
0-(0 * -7):1 |
0-(0 * -7):1 |
0-(0 * -7):1 |
0-(1 * -7):1 |
Получаем новую симплекс-таблицу:
Базис |
B |
X1 |
X2 |
X3 |
X4 |
X5 |
X6 |
X3 |
9 |
0 |
1 |
1 |
0 |
0 |
-1 |
X4 |
8 |
0 |
0 |
0 |
1 |
0 |
-1 |
X5 |
28 |
0 |
4 |
0 |
0 |
1 |
-2 |
X1 |
1 |
1 |
1 |
0 |
0 |
0 |
1 |
F(X1) |
7 |
0 |
4 |
0 |
0 |
0 |
7 |
1. Проверка критерия оптимальности.
Среди значений индексной строки нет отрицательных. Поэтому эта таблица определяет оптимальный план задачи.
Окончательный вариант симплекс-таблицы:
Базис |
B |
X1 |
X2 |
X3 |
X4 |
X5 |
X6 |
X3 |
9 |
0 |
1 |
1 |
0 |
0 |
-1 |
X4 |
8 |
0 |
0 |
0 |
1 |
0 |
-1 |
X5 |
28 |
0 |
4 |
0 |
0 |
1 |
-2 |
X1 |
1 |
1 |
1 |
0 |
0 |
0 |
1 |
F(X2) |
7 |
0 |
4 |
0 |
0 |
0 |
7 |
Оптимальный план можно записать так:
X1 = 1
F(X) = 7*1 = 7
Построим Двойственную задачу по следующим правилам.
- 1. Количество переменных в двойственной задаче равно количеству неравенств в исходной. 2. Матрица коэффициентов двойственной задачи является транспонированной к матрице коэффициентов исходной. 3. Система ограничений двойственной задачи записывается в виде неравенств противоположного смысла неравенствам системы ограничений прямой задачи.
Столбец свободных членов исходной задачи является строкой коэффициентов для целевой функции двойственной. Целевая функция в одной задаче максимизируется, в другой минимизируется.
Расширенная матрица A.
1 |
2 |
10 |
1 |
1 |
9 |
2 |
6 |
30 |
1 |
1 |
1 |
7 |
3 |
0 |
Транспонированная матрица AT.
1 |
1 |
2 |
1 |
7 |
2 |
1 |
6 |
1 |
3 |
10 |
9 |
30 |
1 |
0 |
Условиям неотрицательности переменных исходной задачи соответствуют неравенства-ограничения двойственной, направленные в другую сторону. И наоборот, неравенствам-ограничениям в исходной соответствуют условия неотрицательности в двойственной.
Неравенства, соединенные стрелочками (-), называются Сопряженными.
Y1 + y2 + 2y3 + y4?7
- 2y1 + y2 + 6y3 + y4?3 10y1 + 9y2 + 30y3 + y4 > min
Y1 ? 0
Y2 ? 0
Y3 ? 0
Y4 ? 0
Исходная задача I |
Двойственная задача II | |
X1 ? 0 |
- |
Y1 + y2 + 2y3 + y4?7 |
X2 ? 0 |
- |
2y1 + y2 + 6y3 + y4?3 |
7x1 + 3x2 > max |
- |
10y1 + 9y2 + 30y3 + y4 > min |
X1 + 2x2?10 |
- |
Y1 ? 0 |
X1 + x2?9 |
- |
Y2 ? 0 |
2x1 + 6x2?30 |
- |
Y3 ? 0 |
X1 + x2?1 |
- |
Y4 ? 0 |
Решение двойственной задачи дает оптимальную систему оценок ресурсов.
Используя последнюю итерацию прямой задачи найдем, оптимальный план двойственной задачи.
Из теоремы двойственности следует, что Y = C*A-1.
Составим матрицу A из компонентов векторов, входящих в оптимальный базис.
Определив обратную матрицу D = А-1 через алгебраические дополнения, получим:
Как видно из последнего плана симплексной таблицы, обратная матрица A-1 расположена в столбцах дополнительных переменных.
Тогда Y = C*A-1 =
Оптимальный план двойственной задачи равен:
Y1 = 0
Y2 = 0
Y3 = 0
Y4 = 7
Z(Y) = 10*0+9*0+30*0+1*7 = 7
Критерий оптимальности полученного решения. Если существуют такие допустимые решения X и Y прямой и двойственной задач, для которых выполняется равенство целевых функций F(x) = Z(y), то эти решения X и Y являются оптимальными решениями прямой и двойственной задач соответственно.
Определение дефицитных и недефицитных (избыточных) ресурсов. Вторая теорема двойственности.
Подставим оптимальный план прямой задачи в систему ограниченной математической модели:
- 1*1 + 2*0 = 1 < 10 1*1 + 1*0 = 1 < 9 2*1 + 6*0 = 2 < 30 1*1 + 1*0 = 1 = 1 1-ое ограничение выполняется как строгое неравенство, т. е. ресурс 1-го вида израсходован не полностью. значит, этот ресурс не является дефицитным и его оценка в оптимальном плане y1 = 0.
Неиспользованный экономический резерв ресурса 1 составляет 9 (10-1).
Этот резерв не может быть использован в оптимальном плане, но указывает на возможность изменений в объекте моделирования (например, резерв ресурса можно продать или сдать в аренду).
2-ое ограничение выполняется как строгое неравенство, т. е. ресурс 2-го вида израсходован не полностью. Значит, этот ресурс не является дефицитным и его оценка в оптимальном плане y2 = 0.
Неиспользованный экономический резерв ресурса 2 составляет 8 (9-1).
Этот резерв не может быть использован в оптимальном плане, но указывает на возможность изменений в объекте моделирования (например, резерв ресурса можно продать или сдать в аренду).
3-ое ограничение выполняется как строгое неравенство, т. е. ресурс 3-го вида израсходован не полностью. Значит, этот ресурс не является дефицитным и его оценка в оптимальном плане y3 = 0.
Неиспользованный экономический резерв ресурса 3 составляет 28 (30-2).
Этот резерв не может быть использован в оптимальном плане, но указывает на возможность изменений в объекте моделирования (например, резерв ресурса можно продать или сдать в аренду).
4-ое ограничение прямой задачи выполняется как равенство. Это означает, что 4-ый ресурс полностью используется в оптимальном плане, является дефицитным и его оценка согласно второй теореме двойственности отлична от нуля (y4>0).
Таким образом, отличную от нуля двойственные оценки имеют лишь те виды ресурсов, которые полностью используются в оптимальном плане. Поэтому двойственные оценки определяют дефицитность ресурсов.
Обоснование эффективности оптимального плана.
При подстановке оптимальных двойственных оценок в систему ограничений двойственной задачи получим:
- 1*0 + 1*0 + 2*0 + 1*7 = 7 = 7 2*0 + 1*0 + 6*0 + 1*7 = 7 > 3 1-ое ограничение двойственной задачи выполняется как равенство. Это означает, что 1-ый ресурс экономически выгодно использовать, а его использование предусмотрено оптимальным планом прямой задачи (x1>0). 2-ое ограничение выполняется как строгое неравенство, т. е. ресурс 2-го вида использовать экономически не выгодно. И действительно в оптимальном плане прямой задачи x2 = 0.
Поскольку теневая (альтернативная) цена больше рыночной цены этого продукта, то выгоднее продать ресурсы по рыночным ценам.
При этом разница между ценами (7 - 3 = 4) показывает величину изменения целевой функции F(x) при введении дополнительной единицы xI.
Анализ устойчивости оптимального плана.
Проведем анализ устойчивости оптимального плана и оценим степень влияния изменения ресурсов на значение целевой функции.
Чувствительность решения к изменению коэффициентов целевой функции.
Так как любые изменения коэффициентов целевой функции оказывают влияние на оптимальность полученного ранее решения, то наша цель - найти такие диапазоны изменения коэффициентов в целевой функции (рассматривая каждый из коэффициентов отдельно), при которых оптимальные значения переменных остаются неизменными.
Пусть каждое значение параметра целевой функции изменится на ? сI. Найдем интервалы, при которых будет экономически выгодно использование ресурсов.
Допустимые диапазоны изменения коэффициентов в целевой функции определятся из соотношений:
- 1-ый параметр целевой функции может изменяться в пределах:
- ?c-1 = min [yK/d1k] для d1k>0. ?c+1 = |max[yK/d1k]| для d1k
Таким образом, 1-параметр может быть уменьшен на 7 или увеличен на 0
Интервал изменения равен:
(c1 - ?c1-; c1 + ?c1+)
[7-7; 7+0] = [0;7]
Если значение c1 будет лежать в данном интервале, то оптимальный план не изменится.
Чувствительность решения к изменению запасов сырья.
Из теоремы об оценках известно, что колебание величины bI приводит к увеличению или уменьшению f(X).
Оно определяется величиной yI в случае, когда при изменении величин bI значения переменных уI в оптимальном плане соответствующей двойственной задачи остаются неизменными.
Поэтому необходимо найти такие интервалы изменения каждого из свободных членов системы ограничений исходной ЗЛП, в которых оптимальный план двойственной задачи не менялся бы.
Найдем интервалы устойчивости ресурсов.
Нижняя граница для: ?b-1
?b-1 = min[xK/dK1] для dK1>0.
Таким образом, 1-ый запас может быть уменьшен на 9
1-ый вид ресурса в оптимальном плане недоиспользован, является недефицитным. Увеличение данного ресурса приведет лишь к росту его остатка. При этом структурных изменений в оптимальном плане не будет, так как двойственная оценка y1 = 0. Другими словами, верхняя граница b+1 = +?
Интервал изменения равен:
(b1 - ?b-1; +?)
[10-9; +?] = [1;+?]
Нижняя граница для: ?b-2
?b-2 = min[xK/dK2] для dK2>0.
Таким образом, 2-ый запас может быть уменьшен на 8
2-ый вид ресурса в оптимальном плане недоиспользован, является недефицитным. Увеличение данного ресурса приведет лишь к росту его остатка. При этом структурных изменений в оптимальном плане не будет, так как двойственная оценка y2 = 0. Другими словами, верхняя граница b+2 = +?
Интервал изменения равен:
(b2 - ?b-2; +?)
[9-8; +?] = [1;+?]
Нижняя граница для: ?b-3
?b-3 = min[xK/dK3] для dK3>0.
Таким образом, 3-ый запас может быть уменьшен на 28
3-ый вид ресурса в оптимальном плане недоиспользован, является недефицитным. Увеличение данного ресурса приведет лишь к росту его остатка. При этом структурных изменений в оптимальном плане не будет, так как двойственная оценка y3 = 0. Другими словами, верхняя граница b+3 = +?
Интервал изменения равен:
(b3 - ?b-3; +?)
[30-28; +?] = [2;+?]
- 4-ый запас может изменяться в пределах:
- ?b-4 = min[xK/dK4] для dK4>0. ?b+4 = |max[xK/dK4]| для dK4
Таким образом, 4-ый запас может быть уменьшен на 1 или увеличен на 8
Интервал изменения равен:
(b4 - ?b-4; b4 + ?b+4)
[1-1; 1+8] = [0;9]
В оптимальный план не вошла основная переменная x1, т. е. ее не выгодно использовать. Определим максимально возможное значение в рамках полученных двойственных оценок:
X1 может изменяться в пределах:
0 ? ?b1 ? 1
[10-1; 10] = [9;10]
В оптимальный план не вошла основная переменная x2, т. е. ее не выгодно использовать. Определим максимально возможное значение в рамках полученных двойственных оценок:
X2 может изменяться в пределах:
0 ? ?b2 ? 1
[9-1; 9] = [8;9]
Похожие статьи
-
Известно оптимальное решение X*=(0;0;1;1) задачи линейного программирования: Составьте двойственную задачу и найдите ее оптимальное решение по теореме...
-
Решим прямую задачу линейного программирования симплексным методом, с использованием симплексной таблицы. Определим максимальное значение целевой...
-
Исходная задача: При ограничениях: Двойственной является следующая задача: При ограничениях: Число неизвестных в двойственной задаче равно 2....
-
Вид сырья Запас сырья Количество единиц сырья, идущих на изготовление единицы продукции P1 P2 P3 P4 S1 4 1 1 1 3 S2 18 2 4 6 1 Прибыль от единицы...
-
В разделе 1 курсовой работы требуется: Определить количество закупаемого заданным филиалом фирмы сырья у каждого АО, (xj), максимизируя прибыль филиала....
-
При решении некоторых задач линейного программирования бывает необходимо получить целочисленное решение, которое находится методами целочисленного...
-
Необходимость введения нового ограничения может возникнуть, например, когда первоначально для сокращения затрат машинного времени некоторые интуитивно...
-
Необходимо найти минимальное значение целевой функции F = 4x1+18x2 > min, при системе ограничений: X1+4x2?14(1) X1+6x2?15(2) X1+x2?5(3)...
-
Метод кусочно-линейной аппроксимации. В нашей задаче есть такая величина, как коэффициент увеличения затрат при нагрузке, который не использовался нами...
-
Приведем систему ограничений к каноническому виду, для этого необходимо неравенства преобразовать в равенства, с добавлением дополнительных переменных....
-
Линейное программирование, Общая задача линейного программирования - Экономико-математические методы
Термин "линейное программирование" впервые появился в 1951 г. в работах американских ученых (Дж. Данциг, Т. Купманс), а первые исследования по линейному...
-
Нелинейное программирование - Методики решения задач линейного и нелинейного программирования
Задача математического программирования называется нелинейной, если нелинейны ограничения или целевая функция. Задачи нелинейного программирования бывают...
-
Вариации коэффициентов целевой функции ЗЛП приводят к изменению направления вектора градиента. Так как при этом не затрагивается допустимое множество, то...
-
Основная задача линейного программирования: Найти неотрицательное решение системы ограничений обеспечивающее максимум (минимум) целевой функции. Чтобы...
-
ОБЩАЯ ПОСТАНОВКА ЗАДАЧИ ЛИНЕЙНОГО ПРОГРАММИРОВАНИЯ (ЗЛП) - Линейное программирование в экономике
Линейное программирование - направление математики, изучающее методы решения экстремальных задач, которые характеризуются линейной зависимостью между...
-
Так как целевая функция не является линейной, то эта задача является задачей нелинейного программирования. Найдем ее решение, используя геометрическую...
-
Введение, Графический метод решения задач линейного программирования - Методы оптимальных решений
Задача линейного программирования может быть решена графическим методом, достоинство которого в его простоте и наглядности, но существенным недостатком...
-
Ограничение чувствительность задача программирование Вариации правых частей ограничений приводят к изменению области допустимых решений ЗЛП, в действии...
-
Для примера рассмотрим вытекающую из общей постановки (3),(4) двухкритериальную () многоэтапную динамическую задачу, с целевыми функциями дохода и потерь...
-
Математическая модель задачи нелинейного программирования (ЗНП) (*) Для ЗНП в отличие от Задачи Линейного Программирования (ЗЛП) нет единого метода...
-
Развитие методов многокритериальной оптимизации сложных систем обусловлено необходимостью повышения эффективности их функционирования на основе обобщения...
-
Основные понятия линейного программирования - Оптимальное программирование
Математические исследования отдельных экономических проблем, математическая формализация числового материала проводилась еще в XIX веке. При...
-
Математическая модель транспортной задачи: F = ??cIjXIj, (1) При условиях: ?xIj = aI, i = 1,2,..., m, (2) ?xIj = bJ, j = 1,2,..., n, (3)...
-
Второй раздел курсовой работы посвящен особенностям постановки и решения общей задачи линейного программирования, а именно, транспортной задаче (ТЗЛП)....
-
Экономико-математические методы и моделирование в землеустройстве позволяют решать большой круг задач, связанных с оптимизацией территориальной...
-
Динамическое программирование (ДП) - Методики решения задач линейного и нелинейного программирования
Динамическими называются задачи экономики, организации и управления, в которых необходимо распределять ресурсы на каждом этапе какого - либо промежутка...
-
Во многих экономических моделях исследования операций зависимости между постоянными и переменными факторами лишь в первом приближении можно считать...
-
Решение задачи графическим методом - Математическое моделирование в менеджменте и маркетинге
Необходимо найти максимальное значение целевой функции L(x)= 2x1+2x2 > max, при системе ограничений: 6x1+8x2?48, (1) 8x1+11x2?88, (2)...
-
Это раздел математического программирования, изучающий методы решения таких экстремальных задач, в которых результаты (эффективность) возрастают или...
-
Модели линейного программирования. Основные определения Еще одним классом задач экономико-математического моделирования являются задачи линейного...
-
Пример транспортной задачи линейного программирования - Оптимальное программирование
Транспортная задача -- математическая задача линейного программирования специального вида о поиске оптимального распределения однородных объектов из...
-
Несмотря на требование линейности функций критериев и ограничений, в рамки линейного программирования попадают многочисленные задачи распределения...
-
Задачей линейного программирования (ЛП) называется задача минимизации или максимизации линейного функционала при линейных ограничениях. В литературе...
-
Введение - Решение оптимизационных экономических задач методами линейного программирования
Линейное программирование является составной частью раздела математики, который изучает методы нахождения условного экстремума функции многих переменных...
-
Как известно решение задач симплексным методом применяется очень часто. Это связано с тем, что симплексный метод подходит для решения широкого круга...
-
ТИПЫ ЗАДАЧ НАЧЕРТАТЕЛЬНОЙ ГЕОМЕТРИИ - Основы моделирования геометрических объектов
Решение многих задач способами начертательной геометрии, в конечном счете, сводится к определению позиционных и метрических характеристик геометрических...
-
Изучение теоретических вопросов анализа чувствительности оптимального решения ЗЛП к вариациям некоторых параметров задачи и введению нового ограничения....
-
Информация - это все данные, являющиеся объектом сбора, хранения, обработки, передачи и преобразования. Землеустроительная информация - это особый вид...
-
Основные понятия теории экономико-математического моделирования Кибернетический подход к исследованию экономико-математических систем Обычно...
-
Пусть ограничения (4) не противоречивы, т. е. не пусто множество допустимых решений, а оптимальное решение достигается я в точке для каждой K -ой...
Задача линейного программирования - Основы экономико-математического моделирования