лекции. Лекции_МО_20. Лекции по методам оптимизации Тема Общая постановка задачи линейного программирования (2часа)
Скачать 254.78 Kb.
|
. Тема 3. Симплексный метод (2 ч)Симплексный метод является универсальным методом решения задач линейного программирования. Нам известно, что если задача линейного программирования имеет оптимальное решение, то оно соответствует хотя бы одной угловой точке многогранника решений и совпадает, по крайней ме- ре, с одним из базисных решений системы ограничений. По этому подходу требуется перебрать конечное число базисных решений и выбрать среди них то, в котором целевая функция принимает оптимальное значение. Геометрически это соответствует перебору всех условных точек многогранника решений, однако его практическое осуществление связано с огромными трудностями, т.к. в реальных задачах число допустимых базис- ных решений достаточно велико. Число перебираемых допустимых базисных решений можно со- кратить, если производить перебор не беспорядочно, а с учетом изменения линейной функции ,т .е. добиваясь того, чтобы каждое следующее решение было «лучше»(или, по крайней мере , «не хуже»),чем предыдущее , по значе- ниям линейной функции (увеличение ее при максимизации F , уменьшение при минимизации F).Такой перебор позволяет сократить число шагов при оптимизации. Идея последовательного улучшения решения легла в основу симплексного метода. Смысл симплексного метода состоит в последователь- ном переходе от одной вершины многогранника ограничений (называемой первоначальной) к соседней, в которой линейная функция принимает луч- шее( по крайней мере, не худшее) значение до тех пор, пока не будет найдено оптимальное решение – вершина, где достигается оптимальное значение целевой функции. Впервые симплексный метод был предложен американским уче- ным Дж. Данцигом в 1949г. Для реализации симплексного метода необходимо освоить три элемента: способ определения какого-либо первоначального допустимого ба- зисного решения; правило перехода к лучшему (не худшему) решению; 3)критерий проверки оптимальности решения. Для использования симплексного метода, задача линейного про- граммирования должна быть приведена к каноническому виду . Максимизация линейной функции Рассмотрим в качестве примера задачу об использовании ресур- сов, т.е. решить симплексным методом задачу: F=2х1+3х2→max (1) при ограничениях: x1 3x2 18 2x x 16 2 1 2 x2 5 3x1 21 x1≥0,х2≥0 (3) Нарисуем заданную область: х1 С помощью дополнительных неотрицательных переменных перехо- дим к канонической форме задач. х1+3x2+x3=182x1+x2+x4=16х2+x5=53x1+x6=21 Для нахождения первоначального базисного решения разобьем пере- менные на две группы, основные и неосновные т.к. определитель, составлен- ный из коэффициентов при x3,x4, x5,x6отличен от нуля, т.е. 1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 ≠ 0, 0 1 то эти переменные можно взять в качестве основных на первом шаге решения задачи. Кроме того, при выборе основных переменных на первом шаге достаточно воспользоваться следующим правилом: В качестве основных переменных на первом шаге следует вы- брать (или возможно) также mпеременных, каждое из которых входит только в одно из m уравнений системы, при этом нет таких уравнений систе- мы, в которые не входит ни одна из этих переменных. Дополнительные переменные удовлетворяют этому условию, по- этому их возьмем в качестве основных. 1 шаг. Основные переменные: x3,x4,x5,x6. Неосновные переменные: x1,x2 Выразим основные через неосновные: х3=18-x1-3x2х4=16-2x1-x2х5=5- x2х6=21-3x1 Положив неосновные переменные равными нулю, т.е. x1=0,x2=0, получим базовое решение: X1= (0;0;18;16;5;21;). Это решение является допустимым и соответствует вершине О(0;0) многогранника FBCDE, Поскольку это решение допустимое, то оно может быть и оптимальным. Проверим это. Выразим формулу Fчерез неоснов- ные: F=2x1+3x2 Видно, что формула F можно увеличить за счет увеличения любой из основных переменных, входящих в выражении F с положительным коэффи- циентом. Это можно осуществить, перейдя к такому новому дополнительно- му базисному решению, в котором эта переменная будет основной, т.е. будет принимать не нулевое, а положительное значение. При таком переходе одна из основных переходит в неосновные, а геометрически происходит переход к следующей вершине многогранника, где значение целевой функции F лучше или не хуже. В данной ситуации, для увеличения F можно переводить в ос- новные либо x1, либо x2, т.к. оба эти переменные входит в выражение F с плюсом, для определенности в такой ситуации выбираем переменную, име- ющую наибольший коэффициент, т.е. x2. Система(3) накладывает ограничения на рост переменной x2. Посколь- ку необходимо сохранять допустимость решений, то должны выполняться следующие ограничения (при этом x1=0 как неосновная переменная ): x3 18 3x2 0 18 x 2 3 x x 4 2 5 2 1 16 x 0 x 16 5 x 0 2 x6 21 5 x 2 1 Последнее уравнение системы не ограничивает рост переменной х2, т.к. данная переменная в него не входит ( или формально входит с нуле- вым коэффициентом ), в этом случае условимся обозначать границу через ∞:x2≤∞. Это же будет использоваться, когда свободный член и коэффициент при переменной в уравнении имеют одинаковый знак, т. к. и в этом случае нет ограничений на рост переменной. Не накладывает на рост переменной, и переводимой в основные, в том случае, когда в уравнении отсутствует свободный член, т. е. он равен нулю. Во всех этих случаях x2≤∞. При нулевом свободном члене и отрицательном коэффициенте при переводимой переменной уравнение ограничивает рост переменной нулем: х2≤0. Теперь из последней системы получаем возможное значение x2: х2= min 18 ; 16 ; 5 =5. 3 1 1 При x2=5 переменная x5обращается в нуль и переходит в число не- основных. Определение. Уравнение, где достигается наибольшее возможное значение переменной, переводимой в основные, называется разрешающим. В данном случае это - 3-е уравнение.. 2 шаг . Основные переменные:x2,x3,x4,x6 Неосновные переменные:x1,x5 (x5=5-x2) Выразим новые основные переменные через новые неосновные переменные, начиная с разрешающего: x2 5 x2 5 x 3 18 x1 3(5 x5 ) x x или 3 3 x1 3x5 (4) x 4 16 2x1 (5 x5 ) 4 11 2x1 x5 x6 21 3x1 x6 21 3x1 Второе базисное решение x2 =(0,5,3,11,0,21) является допустимым и соответствует вершине A(0;5), т.е. осуществлен переход от вершины О к вершине А на многоугольнике решений OABCDE. Выразим линейную функцию Fчерез неосновные переменные: F=2x1+3(5-x5) =15+2x1-3x5 Значение линейной функции Fв т.x2: F2=F(x2)=15 Изменение значения линейной функции можно определить как произведение наибольшего возможного значение переменной, переводимой в основные (x2), на ее коэффициент в выражении линейной функции, F: F=5*3=15; F2=F1+ F, F2= 0+15=15. Однако значение F2не является максимальным, т.к. в последнем вы- ражении для F имеется переменная х1с положительным коэффициентом, что дает возможность увеличения F за счет увеличения этой переменной, т.е. пе- ременную x1переводим в основные. Система (4,4) накладывает ограничения на рост переменной x2 5 0 x 3 1 1 x3 3 x1 0 x 11 x mix3 ; 11; 21 3; x 1 3 2 4 11 2x1 0 1 2 1 x6 21 3x1 0 x 21 1 3 x1 3 из 2-го уравнения, поэтому оно разрешающее (см. выше (4.4)), следова- тельно переменная x3 переходит в неосновные, а переменная х1переходит в основные переменные. III – шаг. Основные переменные x1 , x2 , x4 , x6 ; Неосновные переменные x3 , x5 Выразим новые основные переменные через новые неосновные (из 4): x 2 5 x1 3 x3 3x5 x1 3 x3 3x5 x 2 5 5 x 5 x x (5) x 4 3 11 2(3 x 3x) 5 5 2x 5x 4 3 5 x6 21 3(3 x3 3x5 ) е базисное решение x6 12 3x3 9x5 x3 (3;5;0;5;12) является также допустимым и соответ- ствует вершине B(3;5) многоугольника решений OABCDE. Выразим линейную функцию Fчерез неосновные переменные: F 2(3 x3 3x5 ) 3(5 x5 ) 21 2x3 3x5 F3 F(x3 ) 21; (6) Изменение значения целевой функции F: F2 2115 2 3 6; И это значение F3 21 не является максимальным, так как в выражении F(4.6) при x5 имеется положительный коэффициент. Определим, насколько можно увеличить значение этой переменной и какое уравнение является раз- решающим. x5 1; x5 0 x1 3 3x5 0 x 5 x 2 5 5 5 x 0 5 x 4 5 5 5x 0 x5 5 x5 1; x6 12 9x5 0 x 12 5 9 е уравнение разрешающее, x4 переходит в основные. Шаг IV. Основные переменные Из (4.5). x1 , x2 , x5 , x6 . Неосновные переменные x3 , x4 . x 5 3 1 2 x 5 1 x 5 4 2 1 1 2 x x 5 3 5 1 1 x 5 4 3 x 3 x 3(1 x x) x 6 x x 1 3 2 5 3 5 4 1 x 1 5 3 5 4 2 1 x 5 (1 2 5 x3 5 x4 ) 2 1 4 x 2 5 3 3 5 x4 9 x6 12 3x3 9(1 x3 x4 5 5 x4 (6;4;0;0;1;3;) x6 3 x3 x4 5 5 F3 2 6 3 4 24; Fчерез неосновные x3 , x4 : F 2 (6 1 x 5 3 3 x 5 4 ) 3(4 2 x 5 3 1 x 5 4 ) 24 x3; Так как в последнем выражении функции Fнет неосновной переменной с положительным коэффициентом, то нет возможности дальнейшего увеличе- ния ее значения, т.е. максимум функции Fдостигнут: Fmax F3 F(x3 ) 24; Вывод; при x1 6; x2 4. Прибыль предприятия принимает максимальное значение 24 $ при реализа- ции 6 единиц продукции P1 и 4 единиц продукции P2 . Критерийоптимальностиприотысканиимаксимумацелевойлинейнойфункции: |