КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Симплекс-метод с естественным базисом
Симплексный метод решения задачи Среди универсальных методов решения задач линейного программирования наиболее распространен симплексный метод (или симплекс-метод), разработанный американским ученым Дж. Данцигом около 50 лет назад. Суть этого метода заключается в том, что: 1) вначале исходная ЗЛП записывается в канонической форме; 2) предварительно получают допустимый вариант, удовлетворяющий всем ограничениям, но необязательно оптимальный (так называемое начальное опорное решение); 3) полученный вариант проверяется на оптимальность с помощью критерия оптимальности; 4) если решение не оптимальное, переходят к следующему опорному решению (плану) на основе применения метода Жордана-Гаусса для системы линейных уравнений; направление перехода от одного опорного решения к другому выбирается на основе критерия оптимальности исходной задачи; 5) полученный опорный план снова проверяется на оптимальность и т. д. Оптимальность достигается последовательным улучшением исходного варианта за определенное число этапов (итераций), причем на последнем шаге либо выявляется неразрешимость задачи (конечного оптимума нет), либо получаются оптимальный опорный план и соответствующее ему оптимальное значение целевой функции. Симплекс-метод основан на следующих свойствах ЗЛП: 1. Не существует локального экстремума, отличного от глобального. Другими словами, если экстремум есть, то он единственный. 2. Множество всех планов задачи линейного программирования выпукло. 3. Целевая функция ЗЛП достигает своего максимального (минимального) значения в угловой точке многогранника решений (в его вершине). Если целевая функция принимает свое оптимальное значение более чем в одной угловой точке, то она достигает того же значения в любой точке, являющейся выпуклой линейной комбинацией этих точек.
4. Каждой угловой точке многогранника решений отвечает опорный план ЗЛП. Рассмотрим две разновидности симплексного метода: симплекс-метод с естественным базисом и симплекс-метод с искусственным базисом (или М-метод).
Для применения этого метода ЗЛП должна быть сформулирована в канонической форме (2.12) - (2.14). Решение ведется в симплекс-таблицах: Таблица 1
Матрица системы уравнений должна содержать единичную подматрицу размерностью т х т. В этом случае очевиден начальный опорный план (неотрицательное базисное решение). Для определенности предположим, что первые т векторов матрицы системы составляют единичную матрицу. Тогда очевиден первоначальный опорный план: Признак оптимальности заключается в следующих двух теоремах. Теорема 1. Если для некоторого вектора, не входящего в базис, выполняется условие <0, где , j =, (т.е. - скалярное произведение векторов столбцов Сб и Aj),
то можно получить новый опорный план, для которого значение целевой функции будет больше исходного; при этом могут быть два случая: а) если все координаты вектора, подлежащего вводу в базис, неположительны, то ЗЛП не имеет решения; б) если имеется хотя бы одна положительная координата у вектора, подлежащего вводу в базис, то можно получить новый опорный план. мы будем называть оценкой столбца j. Теорема 2. Если для всех векторов выполняется условие , то полученный план является оптимальным.
На основании признака оптимальности в базис вводится вектор Ak, давший минимальную отрицательную величину симплекс-разности: = zk - ck = min (zj - cj), j =, (т.е. имеющий минимальную отрицательную оценку) Чтобы выполнялось условие неотрицательности значений опорного плана, выводится из базиса вектор Аr, который дает минимальное положительное отношение Q = , aik>0, i= . Строка Ar называется направляющей, столбец Аk и элемент ark — направляющими (последний называют также разрешающим или ведущим элементом). Элементы вводимой строки, соответствующей направляющей строке, в новой симплекс-таблице вычисляются по формулам (они – есть следствие (формализация) метода Жордана-Гаусса). , , а элементы любой другой i -oй строки пересчитываются по формулам: , i= , Значения базисных переменных нового опорного плана (показатели графы «план») рассчитываются по формулам: для i=r; , i= для . Число L в симплексной таблице –это текущее значение целевой функции. , т.е. скалярное произведение векторов столбцов Сб и В. Если наименьшее значение Q достигается для нескольких базисных векторов, то чтобы исключить возможность зацикливания (повторения базиса), можно применить следующий способ. Вычисляются частные, полученные от деления всех элементов строк, давших одинаковое минимальное значение Q, на свои направляющие элементы. Полученные частные сопоставляются по столбцам слева направо, при этом учитываются и нулевые, и отрицательные значения. В процессе просмотра отбрасываются строки, в которых имеются большие отношения, и из базиса выводится вектор, соответствующий строке, в которой раньше обнаружится меньшее частное. Для использования приведенной выше процедуры симплекс-метода к минимизации линейной формы f( ) следует искать максимум функции f1( ) = - f( ), затем полученный максимум взять с противоположным знаком. Это и будет искомый минимум исходной ЗЛП.
Рассмотрим алгоритмы симплекс-метода на конкретной задаче.
▼ Пример. Для производства продукции типа П1 и П2 предприятие использует два вида сырья: С1 и С2. Данные об условиях приведены в таблице. Таблица 2
Составить план производства по критерию «максимум прибыли». Решение. Обозначим объем производства продукции П1 через x1, продукции П2 - через x2. С учетом этих обозначений математическая модель задачи имеет вид: max f( ) = 2 x1 +3 x2 при ограничениях x1+ 3x2300, x1+ x2150, x10; x2 0. Приведем эту задачу к каноническому виду, введя дополнительные max f( ) = 2 x1 +3 x2+ 0 х3+0 х4 A1 A2 A3 A4 B , или x1+ 3x2+ х3 =300, x1+ x2 +х4 =150, xj0; j =. Задача обладает исходным опорным планом (0,0,300,150), и ее можно решить симплекс-методом; решение ведется в симплекс-таблицах (табл. 3). Таблица 3
В исходной симплекс-таблице строка оценок Δ j определяется по приведенной выше формуле Δ 1= z1-c1 = Δ 2 = z2-c2 = Исходный опорный план (0,0,300,150) не является оптимальным, так как среди оценок Δ j имеются отрицательные. Переход к новому опорному плану осуществим, введя в базис вектор A2, имеющий минимальную отрицательную оценку. Определяем вектор, выходящий из базиса:
т.е. вектор A3 следует вывести из базиса. Направляющим или ведущим элементом является a12 = 3 (выделен). Переход к следующей симплекс-таблице осуществляем с помощью преобразований Жордана-Гаусса (первое уравнение делим на себя, затем из второго вычитаем первое).
Определим текущее значение функции и оценки. Среди оценок также имеется отрицательная, следовательно и второй опорный план (0,100,0,50) не оптимальный. Определим ведущий (направляющий) элемент , следовательно, ведущий a21=2/3. Переходим к следующему опорному плану вводя в базис вектор A1 вместо вектора A4. Рассчитаем оценки. Теперь они все неотрицательные. В результате получаем оптимальный план (75,75,0,0), т.е. предприятие получит максимум прибыли в размере 375,0 тыс. руб., если выпустит 75 единиц продукции первого вида и 75 единиц продукции второго вида. ▲ СИМПЛЕКС-МЕТОД С ИСКУССТВЕННЫМ БАЗИСОМ (М-МЕТОД). Применяется в тех случаях, когда затруднительно найти первоначальный опорный план исходной задачи ЛП, записанной в канонической форме. М- метод заключается в применении правил симплекс-метода к так называемой В полученной задаче первоначальный опорный план очевиден. При применении к этой задаче симплекс-метода оценки Δ j, теперь будут зависеть от «буквы М». Для сравнения оценок нужно помнить, что М— достаточно большое положительное число, поэтому из базиса будут выводиться в первую очередь искусственные переменные. В процессе решения М -задачи следует вычеркивать в симплекс-таблице искусственные векторы по мере их выхода из базиса. Если все искусственные векторы вышли из базиса, то получаем исходную задачу. Если оптимальное решение М -задачи содержит искусственные векторы или М -задача неразрешима, то исходная задача также неразрешима. Путем преобразований число вводимых переменных, составляющих искусственный базис, может быть уменьшено до одной. ▼ Пример. Найти максимум целевой функции: max f( ) = 3 x1 + x2+ x3 при условиях 2 x1+ x2 =8, x1+ x2 +x3=6, x10; x2 0; x3 0 Решение. Матрица условий содержит только один единичный вектор, добавим еще один искусственный вектор (искусственную неотрицательную переменную y1 в первое ограничение): . Получим следующую М -задачу: найти максимум целевой функции max f( ) = 3 x1 + x2+ x3 - My1 при условиях 2 x1+ x2 + y1 =8, x1+ x2 +x3=6, x10; x2 0; x3 0; y10. М- задачу решаем симплекс-методом. Начальный опорный план (0,0,6,8), решение проводим в симплекс-таблицах (табл. 4). Таблица 4
В начальной таблице наименьшая оценка соответствует вектору A1 — он вводится в базис, а искусственный вектор (строка) A4 из базиса выводится, так как ему отвечает наименьшее Q. Ведущий элемент a11. Столбец, соответствующий A4, из дальнейших симплексных таблиц вычеркивается. Полученный новый опорный план является опорным планом исходной задачи. Для него все > 0, поэтому он является и оптимальным. Таким образом, получен оптимальный план исходной задачи (4,0,2), и максимальное значение целевой функции f()=14. ▲ ▼ Пример. Решить ЗЛП: min f( ) = 10 x1 - 5x2 при условиях 2 x1 - x2 3, x1+ x2 2, x1+2x2 -1, x10; x2 0; Приведем ЗЛП к каноническому виду, перейдя к задаче «на максимум»: mах f1( ) = -10 x1 + 5x2 при условиях 2 x1 - x2 - x3=3, x1+ x2 – x4=2, -x1 - 2x2 +x5=1, xj0; j =. Для нахождения опорного плана переходим к М -задаче: mах g( , ) = -10 x1 + 5x2 –M(y1+ y2) при условиях 2 x1 - x2 - x3+ y1=3, x1+ x2 – x4 + y2=2, -x1 - 2x2 +x5=1, xj0; j =, y1,20 Дальнейшее решение проводим в симплекс-таблицах (табл.5).
В симплекс-таблице 2 получен опорный план исходной ЗЛП; поскольку все оценки > 0, то этот план является и оптимальным, т.е. x1= 5/3, x2 = 1/3 (исходные Таблица 5
▲
Дата добавления: 2014-01-14; Просмотров: 2442; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |