Лекция_2.Линейное программирование.ppt
- Количество слайдов: 30
Лекция 2. Линейное программирование Денисова С. Т. Старший преподаватель n кафедры ММи. МЭ n n 1
План: n n n 1 Пример задачи линейное программирования 2 Графический способ решения задачи ЛП. 3 Виды задач линейное программирования. Свойства задачи ЛП. 4 Симплексный метод решения задачи ЛП. Пример решения симплексным методом. 5 Метод искусственного базиса. Вспомогательная задача 2
Задача ЛП n Для изготовления 2 -х видов продукции P 1 и P 2 используется 3 вида ресурсов R 1, R 2, R 3. Запасы ресурсов, нормы их использования и прибыль от реализации единицы продукции приведены в таблице. Найти план производства продукции, которой бы при заданных условиях обеспечивал наибольшую прибыль. Запасы Р 1 Р 2 R 1 2 5 80 R 2 4 3 90 R 3 1 4 68 Прибыль 15 12 ресурсов 3
Экономико-математическая модель: n n n X 1 - количество продукции вида P 1 X 2 - количество продукции вида P 2 f(x 1 , x 2)=15 x 1 + 12 x 2 max n 4
Решение задачи ЛП графическим способом: n n n n Строим многоугольник решений системы ограничений. L 1) 2 x 1+5 x 2=80; x 2= 16 - 0, 4 x 1; построим прямую по точкам (0; 16), (5; 14) x 2= 16 - 0, 4 x 1 - граница множества 2 x 1+5 x 2≤ 80 L 2) 4 x 1+3 x 2=90; x 2= 30 – 4/3 x 1; (15; 10), (18; 22) L 3) x 1+4 x 2=68; x 2= 17 – 1/4 x 1; (0; 17), (8; 15) Найдём координаты точки С – точки пересечения 1 и 2 прямой: 16 - 0, 4 x 1= 30 – 4/3 x 1 ; -2/5 x 1+ 4/3 x 1 =30 -16 14/15 x 1 = 14; x 1 = 15; x 2= 16 -2/5*15=10; C(15; 10) Вектор целевой функции n=(15; 12); Линия уровня f(x 1 , x 2 )=0 перпендикулярна вектору n 5
6
Ответ: Точка max – точка С(15; 12); fmax=369. Для решения симплексным методом приведём симметричную задачу к каноническому виду, добавив в ограничения дополнительные переменные: 7
ЗЛП и способы её решения n n n F=c 1 x 1+c 2 x 2+…+cnxn+c 0→min(max). При этом переменные должны удовлетворять ограничениям: а 11 х1+ а 12 х2+…+а 1 nхn≤b 1 …………… аm 1 х1+ аm 2 х2+…+amnxn≤bm аm+11 х1+ аm+12 х2+…+аm+1 nхn≥bm+1 …………… аk 1 х1+ аk 2 х2+…+аknхn≥bk аk 1+1 х1+ аk+12 х2+…+аk+1 nхn=bk+1 ……………. аp 1 х1+аp 2 х2+…+аpnхn=bp x 1, x 2, …, хn ≥ 0. 8
Виды задач ЛП: 1)Общая задача ЛП: n 9
Формы записи основной (канонического вида) задачи: Mатричная С=(c 1, c 2…cn, c 0). n F=CX→ max n AX=B, X≥ 0 n Векторная форма записи: n F=CX→ max A 1 x 1+A 2 x 2+…+Anxn=B, Х≥ 0. С=(с1, с2, . . cn); XT=(x 1, x 2, . xn) n 10
Свойства задачи ЛП n n n Определение. Множество точек D – точек n-мерного евклидова пространства будем называть выпуклым, если оно вместе с любыми своими двумя точками содержит их произвольную линейную комбинацию. Точка Х является выпуклой линейной комбинацией точек Х 1=(x 11, x 21, … xn 1) D, Х 2=(x 12, x 22, … xn 2) D , для любого >0, X= α 1 X 1+(1 -α)X 2 D 1. Допустимая область ЗЛП выпукла, если она не пуста. 2. Если допустимая область имеет вершины и ЗЛП имеет решение, то оно достигается по крайней мере в одной из вершин. 3. Множество решений ЗЛП выпукло. 11
Свойства задачи ЛП n n n 4. Если допустимая область ограничена, то ЗЛП имеет оптимальное решение. 5. Необходимым и достаточным условием существования решения ЗЛП на максимум (минимум) является ограниченность целевой функции сверху (снизу) в допустимой области. Множество всех допустимых решений ЗЛП является выпуклым, которое будем называть многогранником решений. 12
Свойства задачи ЛП n 6. Если ЗЛП имеет оптимальное решение, то линейная функция F принимает максимальное (минимальное) значение в одной из угловых точек многогранника решений. Если линейная функция принимает максимальное значение более чем в одной угловой точке, то она принимает его в произвольной точке, являющейся выпуклой линейной комбинацией этих точек. 13
Симплексный метод решения задачи ЛП n n n Для использования симплексного метода ЗЛП должна быть приведена к каноническому виду. Для реализации симплексного метода необходимо освоить 3 основных элемента: способ определения какого – либо первоначального допустимого решения правило перехода к лучшему решению критерий проверки оптимальности найденного решения. Пусть имеется задача ЛП:
Канонический вид задачи ЛП: n F(x 1 , x 2 , . . , xn)=c 1 x 1+ c 2 x 2+. . + cn xn max 15
Определения: n Ненулевое допустимое решение n называется опорным, если векторы Aj, соответствующие отличным от 0 координатам вектора x, линейно независимы. n Ненулевое опорное решение называют невырожденным, если оно имеет ровно m положительных координат. n Если число положительных координат меньше m, то оно называется вырожденным. n Упорядоченный набор из m линейно независимых координат векторов Aj , соответствующих положительным координатам опорного решения называют базисом. 16
Критерий оптимальности n n n Вектор тогда и только тогда является опорным решением задачи, когда точка X является вершиной допустимого множества. Используя разложение Aj по базису сформулировали следующий критерий: Если для данного базиса Aj 1, Aj 2, …. Ajm все оценки j , ( j= ci aij – cj ) неотрицательны, то опорное решение Xоп является оптимальной точкой задачи. 17
Алгоритм симплекс-метода: n n Пусть задача ЛП имеет непустое допустимое множество с вершинами. Тогда 1) Тем или иным способом находим какую-нибудь вершину допустимого мн-ва и определяем не является ли она оптимальной. Если оптимальна, то задача решена. Если нет, то 2) Используя определённые правила проверяем нельзя ли утверждать, что задача не имеет оптимального решения. Если можно утверждать, то задача не имеет решения. Если нельзя, то 3) По определённому правилу ищем новую лучшую вершину и переходим к пункту 1. 18
Симплекс-таблица Базис Сi(баз Аn+1 0 b 2 Аn+2 Опор_ план С 1 А 1 a 11 С 2 А 2 . . . …. 0 0 Аn+1 0 Аn+m 1 1 0 0 a 22 3 0 1 0 5 a 21 a 12 0 0 1 0 Аn+m Сn Аn bm am 1 am 2 - - - 19
Алгоритм симплекс-метода: n n Вычисляют ( j= ci aij – cj ). Выбирают из отрицательных j наименьшее, например к. к–й столбец разрешающий. Наименьшее положительное симплексное отношение определяет разрешающую строку: min bi / aik )= bs / ask. Строка s – разрешающая. На пересечении разрешающего столбца и разрешающей строки – разрешающий элемент, который показывает какой вектор выводится из базиса, какой вектор вводится в базис.
Алгоритм симплекс-метода: n n В новой симплекс-таблице элементы разрешающей строки вычисляют делением на разрешающий элемент, остальные элементы – по правилу прямоугольника: Из произведения элементов главной диагонали (разрешающий элемент соединяют с искомым) вычитают произведение элементов побочной диагонали и делят на разрешающий элемент.
Задача(1). Для производства трёх изделий А, В, С используются три вида сырья. каждый из них используется в объёме, не превышающем 180, 210 и 236 кг. Определить план выпуска изделий, обеспечивающий получение оптимального дохода при условии, что потребление ресурсов по каждому виду продукции не превзойдёт имеющихся запасов. Вид сырья Нормы затрат Запасы сырья A C I 4 2 1 180 II 3 1 3 210 II Цена B 1 2 5 236 10 14 12 22
Экономико-математическая модель задачи: n F= 10 x 1+14 x 2+12 x 3→max n При ограничениях: 4 х1+2 х2+х3≤ 180 3 х1+х2+3 х3≤ 210 х1+2 х2+5 х3≤ 236 условие неотрицательности переменных x 1≥ 0, x 2≥ 0, х3≥ 0. n n n 23
Каноническая форма задачи: n n n n F= 10 x 1+14 x 2+12 x 3 +0 x 4 + 0 x 5 + 0 x 6 →max При ограничениях: 4 х1+2 х2+х3+ x 4 = 180 3 х1+х2+3 х3 + x 5 = 210 х1+2 х2+5 х3 + x 6 = 236 условие неотрицательности переменных x 1≥ 0, x 2≥ 0, х3≥ 0, x 4≥ 0, x 5≥ 0, х6≥ 0. 24
Симплексная таблица 1 Базис Сi(баз) Опорн _план 10 А 1 14 А 2 12 А 3 0 А 4 0 А 5 0 А 6 А 4 0 180 4 2 1 1 0 0 А 5 0 210 3 1 3 0 1 0 А 6 0 236 1 2 5 0 0 1 -10 -14 -12 0 0 25
Симплекс-таблица 2 Базис Сi(баз) Опорн _план 10 А 1 14 А 2 12 А 3 1 0 А 5 0 А 6 0, 5 0 0 А 2 14 90 2 А 5 0 120 1 0 2, 5 -0, 5 1 0 А 6 0 56 -3 0 4 -1 0 1 1260 8 7 0 0, 5 0 А 4 -5 26
Симплекс-таблица 3 Ба-зис Сi (баз) Опор план 10 14 А 2 А 1 12 0 А 4 0 А 5 А 3 0 А 6 А 2 14 83 2, 375 1 0 0, 625 0 -0, 125 А 5 0 85 2, 875 0 0 0, 125 1 -0, 625 А 3 12 14 -0, 75 0 1 -0, 25 0 0 5, 65 0 1, 25 1330 16, 25 27
Метод искусственного базиса: n n n n F= 0, 4 x 1+0, 3 x 2 → min При ограничениях: х1+х2≥ 50 х1≤ 35 х2 ≥ 15 x 1≥ 0, x 2≥ 0. Канонический вид задачи: F 1= -0, 4 x 1 -0, 3 x 2 → max При ограничениях: х1+х2 – х3 =50 х1 + х4 = 35 х2 – х5 = 15 x 1≥ 0, …, x 5≥ 0. 28
Вспомогательная задача: n n n n n F 2= -x 6 - x 7 → max При ограничениях: х1+х2 – х3 + х6 = 50 х1 + х4 = 35 х2 – х5 + х7 = 15 x 1≥ 0, …, x 7 ≥ 0. Решаем симплексным методом до тех пор, пока векторы для искусственных переменных х6 и х7 не выведутся из базиса. Коэффициенты Cj записываем из канонического вида задачи и решаем симплексным методом. Если какой-либо вектор для искусственной переменной не выводится из базиса, то задача не имеет решения. 29
Симплекс-таблица Базис Сi Опор план 0 А 1 0 А 2 0 А 3 0 А 4 0 А 5 -1 А 6 -1 А 7 А 6 -1 50 1 1 -1 0 0 1 0 А 4 0 35 1 0 0 0 А 7 -1 15 0 1 0 0 -1 0 1 -1 -2 1 0 0 Оценки 30