|
Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология Образование Политология Производство Психология Стандартизация Технологии |
Теорема об экстремуме целевой функции
Теорема 3.3. Об экстремуме целевой функции. Целевая функция задачи линейного программирования достигает экстремума в угловой точке области допустимых решений; причем, если целевая функция достигает экстремума в нескольких угловых точках области допустимых решений, то она также достигает экстремума в любой выпуклой линейной комбинации этих точек. Доказательство. Будем считать, что решается задача на нахождение максимума целевой функции Z(X) = CX AX =
Рис. 3.5 1. Докажем, что целевая функция достигает экстремума в угловой точке области допустимых решений G, от противного. Если
где Найдем
Среди значений
Это противоречит тому, что 2. Докажем второе утверждение теоремы. Пусть угловые точки области допустимых решений
получим
4.4. Опорное решение задачи линейного программирования, Рассмотрим систему ограничений некоторой конкретной задачи
где
Векторы Данная система имеет бесконечное множество допустимых решений, например, Положительным координатам допустимых решений ставят в соответствие векторы условий. Для решений Опорным решением задачи линейного программирования называется такое допустимое решение Число отличных от нуля координат опорного решения не может быть больше ранга r-системы векторов условий (числа линейно независимых уравнений системы ограничений). В дальнейшем будем считать, что система ограничений состоит из линейно независимых уравнений, т. е. m = r. Есличисло отличных от нуля координат опорного решения равно m, то оно называется невырожденным, в противном случае (меньше m) вырожденным. Базисом опорного решения называется базис системы векторов условий задачи, включающий в свой состав векторы, соответствующие отличным от нуля координатам опорного решения. Докажем две теоремы о взаимосвязи опорных решений и угловых точек области допустимых решений. Теорема 4.4. Любое опорное решение является угловой точкой области допустимых решений. Доказательство. Пусть
Так как последние n - m координат вектора X равны нулю, а Подставим
Вычтем из первого равенства второе, получим
Так как векторы
Отсюда получаем Теорема 4.5. Любая угловая точка области допустимых решений является опорным решением. Доказательство. Пусть
Так как X допустимое решение, то имеет место равенство
Умножим соотношение (3.2) на некоторое число
т. е. вектор
Для того чтобы эти векторы Лекция№5-6. СИМПЛЕКСНЫЙ МЕТОД РЕШЕНИЯ Это метод целенаправленного перебора опорных решений задачи линейного программирования, поэтому его часто называют методом улучшения опорных решений. Симплексный метод позволяет выполнить следующее: 1) найти начальное опорное решение; 2) перейти к новому опорному решению, на котором значение целевой функции будет ближе к оптимальному решению, т. е. улучшить опорное решение; 3) своевременно прекратить перебор опорных решений, остановившись на оптимальном решении, или сделать заключение об отсутствии оптимального решения. Название метод получил от вида области допустимых решений задачи, для которой он первоначально применялся. Область допустимых решений этой задачи имела простейший (simple) вид (рис. 3.6).
Рис. 3.6 5.1. Нахождение начального опорного решения и переход Пусть имеется задача линейного программирования в канонической форме
Будем считать, что правые части всех уравнений системы ограничений неотрицательны. Если в каком-либо уравнении правая часть отрицательная, то это уравнение нужно умножить на -1. Для нахождения опорного решения воспользуемся тем, что любое допустимое базисное решение считается опорным. Найдем базисное решение методом Жордана – Гаусса. При этом разрешающие элементы для всех преобразований Жордана будем выбирать так, чтобы правые части уравнений системы оставались неотрицательными. Тогда полученное базисное решение будет допустимым, т. е. опорным. Получим правило выбора разрешающих элементов для преобразований Жордана, обеспечивающее сохранение неотрицательности правых частей системы уравнений. Пусть разрешающим элементом для преобразования Жордана является коэффициент
1. Для того чтобы правая часть
Так как
2. Неотрицательными также должны быть правые части остальных уравнений, т. е.
Для получения требований, налагаемых на разрешающий элемент а) если б) если же
поделим на
Данное неравенство должно выполняться для любого уравнения с номером i, в котором
где k – номер вектора условия С помощью данного условия возможно выбрать разрешающий элемент в любом столбце k-матрицы системы ограничений, в котором имеется хотя бы один положительный элемент. При нарушении данного условия выбора разрешающего элемента в правой части системы уравнений появляются отрицательные величины. Используя данное условие, можно найти начальное опорное решение. Аналогичное условие может быть использовано при переходе от одного опорного решения к другому. Пусть система уравнений-ограничений с помощью подходящего выбора разрешающих элементов приведена к равносильной разрешенной так, что правые части системы сохранились неотрицательными, и имеет вид
Тогда базисное решение является допустимым и опорным решением с базисом из единичных векторов Очевидно, для перехода от этого опорного решения к новому необходимо использовать соотношение
где k – номер вектора, вводимого в базис, l – номер вектора, выводимого из базиса, Пример 5.1. Найти начальное опорное решение и путем перебора опорных решений найти оптимальное решение задачи
Решение. Результаты нахождения начального опорного решения и дальнейшего перебора опорных решений приведены в табл. 4.1. Справа от таблицы на каждом шаге вычислений приведены значения параметра Т а б л и ц а 5.1
Сравниваем значения целевой функции на полученных опорных решениях, min{-20, 4, -28} = -28. Находим оптимальное опорное решение
Ответ: Данный способ нахождения оптимального решения может вызвать затруднения с перебором всех опорных решений и с завершением процесса решения задачи в случае отсутствия решения, поэтому его следует применять только для приобретения навыков в использовании параметра 5.2. Преобразование целевой функции при переходе Пусть имеется опорное решение задачи линейного программирования (4.1)-(4.3) Формулы пересчета правых частей уравнений системы при преобразовании Жордана имеют вид
Используя эти формулы, получим
т. е. Отсюда находим приращение целевой функции при переходе от одного опорного решения к другому
Здесь через или в векторной записи
где Пример 4.2. Вычислить оценки
Решение. Задача имеет начальное опорное решение Т а б л и ц а 4.2
Оценки для векторов, входящих в базис, всегда равны нулю. Улучшение опорного решения Теорема 4.1. Если в задаче линейного программирования на максимум (минимум) хотя бы для одного вектора условий оценка разложения по базису невырожденного опорного решения отрицательная (положительная), то опорное решение может быть улучшено, Доказательство. Пусть решается задача на максимум, которая имеет невырожденное опорное решение Перейдем к новому опорному решению
Решение
Следовательно, значение целевой функции на новом опорном решении Доказательство для задачи на минимум аналогично. Следствие 1 (условие наибольшего приближения к оптимальному решению). Для наибольшего изменения целевой функции при улучшении опорного решения необходимо выбор вектора, выводимого из базиса (с номером l) и вводимого в базис (с номером k), производить из условий: – в задаче на максимум – в задаче на минимум В упрощенном варианте выбор вектора, вводимого в базис, можно производить с использованием условий: – в задаче на максимум – в задаче на минимум Этот вариант перехода к новому опорному решению обычно используется при расчетах на ЭВМ. Следствие 2 (признак оптимальности опорного решения). Опорное решение задачи линейного программирования на максимум (минимум) является оптимальным, если для любого вектора условий оценка разложения по базису опорного решения неотрицательная (неположительная), т. е. – в задаче на максимум – в задаче на минимум Действительно, если Z(x)
т. е. Следствие 3 (признак единственности оптимального решения). Оптимальное решение задачи линейного программирования является единственным, если для любого вектора условий, не входящего в базис, оценка отлична от нуля, т. е.
Здесь предполагается, что в базис оптимального решения входят первые m векторов. Следствие 4 (признак существования бесконечного множества оптимальных решений). Задача линейного программирования имеет бесконечное множество оптимальных решений, если она имеет оптимальное решение, при котором хотя бы один из векторов условий, не входящих в базис оптимального решения, имеет оценку равную нулю, т. е. $ k Î {m+1, m+2, ..., n}: Следствие 5 (признак отсутствия оптимального решения ввиду неограниченности целевой функции). Задача линейного программирования не имеет решения ввиду неограниченности целевой функции, если для какого-либо из векторов условий – в задаче на максимум – в задаче на минимум 5.4. Алгоритм симплексного метода решения задач линейного Для того чтобы решить задачу симплексным методом необходимо выполнить следующее: 1. Привести задачу линейного программирования к каноническому виду. 2. Найти начальное опорное решение с единичным базисом (с базисом из единичных векторов) и коэффициенты разложений векторов условий по базису опорного решения. Если опорное решение отсутствует, то задача не имеет решения ввиду несовместности системы ограничений. 3. Вычислить оценки разложений векторов условий по базису опорного решения и заполнить таблицу симплексного метода. 4. Если выполняется признак единственности оптимального решения (следствие 3 из теоремы 4.1), то решение задачи заканчивается. 5. Если выполняется условие существования множества оптимальных решений (следствие 4 из теоремы 4.1), то путем простого перебора находят все оптимальные решения. 6. Если имеют место условия следствия 5 теоремы 4.1 об улучшении опорного решения, то задача не имеет решения ввиду неограниченности целевой функции. 7. Если пункты 4–6 алгоритма не выполняются, то находят новое опорное решение с использованием условий следствия 1 из теоремы 4.1 и возвращаются к п. 3. Пример 4.3. Решить симплексным методом задачу
Решение. Приводим задачу к каноническому виду. Для этого в левую часть первого ограничения неравенства типа " £ " вводим дополнительную переменную
Находим начальное опорное решение. Для этого свободные (неразрешенные) переменные приравниваем к нулю Вычисляем оценки разложений векторов условий по базису опорного решения по формуле (4.9).
Оценки векторов, входящих в базис, всегда равны нулю. Обычно эти вычисления производятся устно. Опорное решение, коэффициенты разложений и оценки разложений векторов условий по базису опорного решения записываются в симплексную таблицу (табл. 4.3). Т а б л и ц а 4.3
Сверху над таблицей для удобства вычислений оценок записываются коэффициенты целевой функции. В первом столбце " Б" записываются векторы, входящие в базис опорного решения. Порядок записи этих векторов соответствует номерам разрешенных неизвестных в уравнениях – ограничениях. Во втором столбце таблицы " В последней строке таблицы с оценками Начальное опорное решение не является оптимальным, так как в задаче на максимум оценки По теореме об улучшении опорного решения, если в задаче на максимум хотя бы один вектор имеет отрицательную оценку, то можно найти новое опорное решение, на котором значение целевой функции будет больше. Определим, введение какого из двух векторов приведет к большему приращению целевой функции. Приращение целевой функции находится по формуле Т а б л и ц а 4.4
Определяем номер вектора, выводимого из базиса. Для этого вычисляем параметр
Ответ: max Z(X) = 201 при Лекция №7. Метод искусственного базиса Метод искусственного базисаприменяется для решения задач линейного программирования в случае, когда задача не имеет начального опорного решения с базисом из единичных векторов. Согласно данному методу для задачи линейного программирования составляется так называемая расширенная задача, которая решается симплексным методом. На основе результатов решения расширенной задачи либо находится оптимальное решение исходной задачи, либо устанавливается причина его отсутствия. Пусть имеется каноническая задача линейного программирования
Без ограничения общности можно считать, что правые части уравнений системы ограничений неотрицательные, т. е. В дальнейшем для краткости записи при доказательствах используется компактная запись этой задачи
Для исходной задачи составляется расширенная задача. При этом используются искусственные переменные. Искусственными переменными называются неотрицательные переменные, которые вводятся в ограничения-равенства для получения начального опорного решения с базисом из единичных векторов. Каждая искусственная переменная вводится в левую часть одного из уравнений системы ограничений с коэффициентом +1 и в целевую функцию в задаче на максимум – с коэффициентом -М, а в задаче на минимум – с коэффициентом +М. Число М сколь угодно большое по сравнению с единицей (М > > 1). В общем случае расширенная задача на максимум имеет вид
или в компактной записи
Данная задача имеет начальное опорное решение
с единичным базисом Здесь и в дальнейшем для расширенной задачи отмечаются чертой сверху следующие величины: |
Последнее изменение этой страницы: 2017-05-04; Просмотров: 2363; Нарушение авторского права страницы