
- •1.4.Двойственность состоит в том, что каждой исходной (прямой) задаче, в которой целевая функция стремится к максимуму (минимуму)
- •2. Лекции
- •Понятие модели
- •Классификация экономико-математических моделей
- •Оптимизационные модели
- •Лекция 2. Примеры содержательных постановок задач линейного программирования
- •Задача об оптимальном использовании ресурсов
- •Транспортная задача линейного программирования
- •Лекция 3. Различные формы задач линейного программирования
- •Стандартная форма задачи линейного программирования
- •Каноническая форма задачи линейного программирования (злп)
- •Переход от стандартной формы задачам линейного программирования (злп) к канонической
- •Лекция 4. Графический метод решения задач линейного программирования
- •Лекция 5. Основные теоремы линейного программирования
- •Геометрическая интерпретация симплекс-метода
- •Основное неравенство теории двойственности
- •Лекция 8. Основные теоремы двойственности
- •Лекция 9. Задачи нелинейного программирования
- •Метод множителей Лагранжа
- •Выпуклое программирование
- •Задача выпуклого программирования
- •Градиентные методы
- •Метод параллельных касательных
- •Метод сопряженных градиентов
- •Метод покоординатного спуска
- •О методах второго порядка
- •О методах прямого поиска
- •Методы одномерной минимизации
- •1. Задачи с ограничениями-равенствами
- •2. Задачи с ограничениями-неравенствами
- •2.1. Метод проекции градиента
- •2.2. Метод приведенного градиента
- •Методы штрафных функций
- •Методы барьерных функций
- •Лекция 14. Практическая реализация методов нелинейного программирования
- •Построение начального приближения
- •Практическая реализация методов нелинейного программирования
- •3. Практические и лабораторные занятия
- •4. Самостоятельная работа студента
- •Задача об оптимальном использовании ресурсов
- •Транспортная задача линейного программирования
- •Стандартная форма задачи линейного программирования
- •Основное неравенство теории двойственности
- •Экономический смысл первой (основной) теоремы двойственности
Лекция 5. Основные теоремы линейного программирования
Содержание лекционного занятия:
Теорема об оптимальном решении в ограниченной области.
Теорема об оптимальном решении в неограниченной области.
Фундаментальная теорема.
Теорема об альтернативном оптимуме.
Геометрическая интерпретация симплекс-метода
Прежде чем перейти к рассмотрению основных теорем линейного программирования, вспомним понятия, рассматриваемые в курсе линейной алгебры.
Базисным (опорным) решением системы m линейных уравнений с п переменными называется решение, в котором все (n-m) не основных переменных равны нулю.
Число базисных решений является конечным, так как оно равно числу групп основных переменных, не превосходящему Cm n.
Базисное решение, в котором хотя бы одна из основных переменных равна нулю, называется вырожденным.
Теорема. Если задача линейного программирования имеет оптимальное решение, то линейная функция принимает максимальное значение в одной из угловых точек многогранника решений. Если линейная функция принимает максимальное значение более чем в одной угловой точке, то она принимает его в любой точке, являющейся выпуклой линейной комбинацией этих точек.
Теорема. (Об оптимальном решении в ограниченной области.) Если область допустимых решений системы ограничена, то оптимальное решение существует и совпадает хотя бы с одним из опорных решений системы.
Теорема. (Об оптимальном решении в неограниченной области.) Если область допустимых решений не ограничена, то оптимальное решение, совпадающее, по крайней мере, с одним из опорных решений, существует только тогда, когда линейная функция ограничена сверху для задачи максимизации или снизу для задачи минимизации.
Теорема. (Фундаментальная.) Если задача линейного программирования имеет оптимальное решение (в ограниченной области всегда, а в неограниченной области в зависимости от ограниченности линейной функции), то оно совпадает, по крайней мере, с одним из опорных решений системы ограничительных уравнений.
Теорема. (Об альтернативном оптимуме.) Если максимум или минимум линейной функции достигается в нескольких опорных решениях, то любое оптимальное решение есть выпуклая линейная комбинация оптимальных решений.
Геометрическая интерпретация симплекс-метода
Из приведенных выше основных теорем линейного премирования следует, что если задача линейного премирования имеет оптимальное решение, то оно соответствует хотя бы одной угловой точке многогранника решений и совпадает, по крайней мере, с одним из допустимых базисных решений системы ограничений.
На основании этого можно предложить достаточно простой метод решения задачи линейного программирования, который сводится к следующей принципиальной схеме:
необходимо найти все опорные решения (точки многогранника), множество которых является конечным;
вычислить для каждого из опорных решений значение целевой функции;
сравнить значения целевой функции в каждом из опорных решений и выбрать оптимальное (максимальное или минимальное).
Теоретически данная схема приведет к нахождению оптимального решения, но практически ее осуществление связано с большими вычислительными трудностями.
Если же указанный перебор опорных решений производить направленно, т.е. на каждом из шагов улучшая (или, по крайней мере, не ухудшая) значение целевой функции, то число перебираемых опорных решений можно резко сократить, что в конечном итоге приводит к весьма существенному сокращению числа шагов при отыскании оптимума целевой функции. При использовании такой схемы, в отличие от первой, каждое последующее опорное решение выбирается таким образом, чтобы оно было лучше, (или, по крайней мере, не хуже) предыдущего, именно поэтому на каждом из шагов значение целевой функции улучшается (или, по крайней мере, не ухудшается).
Фундаментом универсального метода решения задач иного программирования, который называется симплекс-методом, является метод направленного перебора. (По латыни симплекс означает — простой, что в данном случае интерпретируется как простой выпуклый многогранник.)
Геометрическая интерпретация симплекс-метода состоит в последовательном переходе от одной вершины многогранника к другой (от первоначально выбранной вершины к одной из соседних вершин, а именно к той, у которой линейная функция принимает лучшее или, по крайней мере, не худшее значение). Этот процесс происходит до тех пор, пока не будет найдено оптимальное решение — вершина, где достигается оптимальное значение функции (если задача имеет конечный оптимум).
Идея симплекс-метода разработана русским ученым Л.В. Канторовичем в 1939 г. На основе этой идеи американский ученый Д. Данциг в 1949 г. разработал симплекс-метод, позволяющий решить любую задачу линейного программирования.
В настоящее время на основе этого метода разработан пакет программ, с применением которого решаются задачи линейного программирования.
Вопросы для самоконтроля:
1.Основные элементы линейной алгебры. Их роль при построении модели.
2.Анализ моделей на чувствительность. Виды моделей.
Рекомендуемая литература:
1.Ашманов С.А. Линейное программирование. —М.: Наука, 1981.
2.Айсагалиев А.С., Айсагалиева С.С. Лекции по методам оптмизации.-Алматы:Гылым,1996
Лекция 6. Двойственные задачи линейного программирования
Содержание лекционного занятия:
Прямая задача
Двойственная задача
Одним из центральных и наиболее значительных мест в теории линейного программирования является двойственность, которая состоит в том, что каждой исходной (прямой) задаче, в которой целевая функция стремится к максимуму (минимуму):
F = c1,x1,+с2х2+с3х3+... + сnхn ->max(min), (1)
система функциональных ограничений представляет собой систему неравенств:
(
2)
система прямых ограничений также представляет собой систему неравенств:
(3)
соответствует двойственная задача, в которой:
целевая функция стремится к минимуму (максимуму):
Z(y) = y1,b1, +y2b2+...+ ymbm -»min(max) (4)
система функциональных ограничений, представляет собой систему неравенств:
(5)
• система прямых ограничений также представляет собой систему неравенств:
у10,У20,Уз0...Уm0. (6)
Общим для прямой и двойственной задач является то, что в каждой из них отыскивается экстремум линейной функции, а искомые переменные должны удовлетворять системам функциональных и прямых ограничений. Кроме того, в обеих задачах используются одни и те же параметры: элементы матрицы А, вектор В, вектор С.
Отличие между прямой и двойственной задачей состоит в том, что в прямой задаче определяются значения n переменных x1,x2,...,xn, а в двойственной — m переменных: y1, y2,…, ym в исходной задаче ищется максимум, а в двойственной — минимум целевой функции, знаки неравенств в этих задачах противоположны, компоненты вектора ограничений в одной из задач являются коэффициентами при переменных в целевой функции другой задачи.
Чтобы к заданной прямой задаче сформировать двойственную, целесообразно пользоваться определенной системой формальных правил.
Число переменных в двойственной задаче равно количеству функциональных ограничений в прямой задаче (т.е., если в прямой задаче вектор переменных записывается, как n-мерный вектор-столбец, то в двойственной задаче вектор переменных будет представлять собой m-мерный вектор — строку и наоборот).
2. Если прямая задача ставится как задача максимизации, то двойственная — как задача минимизации и наоборот.
3. Компоненты вектора функциональных ограничений В=(bi,b2,...bm) в прямой задаче становятся коэффициентами целевой функции в двойственной задаче.
Применение этих трех правил позволяет сформировать целевую функцию двойственной задачи:
Z(y) = y1 b1 + у2b2 +...+ yrabm -> min .
5. Знак неравенств функциональных ограничений в прямой задаче меняется на обратный в двойственной, т.е. « » на « ».
6. Коэффициенты целевой функции прямой задачи c1,c2,...,cn, становятся вектором ограничений в двойственной задаче.
Применяя правила 4, 6 мы можем сформировать систему функциональных ограничений обратной задачи:
7. Прямые ограничения на неотрицательность переменных для двойственной задачи сохраняются.
У10,у20,у30...уm0
Таким образом, исходную и двойственную к ней задачу можно представить следующим образом:
Прямая и двойственная задача, построенная в соответствии с рассмотренными выше правилами, называются симметричными взаимодвойственными задачами.
Если к двойственной задаче снова построить двойственную задачу, то получим прямую (т.е. исходную) задачу. Необходимо отметить, что ни одна из двойственных задач не является основной, так как если поставлена одна из задач, то другая может быть сформулирована как двойственная и каждая из них является двойственной по отношению к другой.
Вопросы для самоконтроля:
1.Понятие о двойственных задачах ЛП.
2.Теорема двойственности.
Рекомендуемая литература:
1.Измаилов А.Ф., Солодов М.В. Численные методы оптимизации. М.: Физматлит, 2003.
2.Банди Б. Методы оптимизации. Вводный курс. М.: Радио и связь, 1988.
Лекция 7. Содержательная интерпретация прямой и двойственной задачи
Содержание лекционного занятия:
Прямая задача
Двойственная задача
Основное неравенство теории двойственности
Прямая задача. Для изготовления n видов продукции предприятие использует m видов ресурсов, которые имеются на предприятии в количестве: b1, b2,..., bm. При этом количество каждого из ресурсов i (i=l...m), которое идет на производство единицы продукции j-го вида (j=l...n), задается технологическими коэффициентами аij. Выручка, получаемая предприятием от продажи единицы изготовленной продукции j-го вида (j=l...n), составляет соответственно c1,c2,...cn. Необходимо составить такой план производства продукции X=(x1,x2,...xn), при котором выручка предприятия от реализации всей продукции, изготовленной в соответствии с данным планом, будет максимальной, а количество каждого из ресурсов, используемых для выполнения заданного плана, не превысит имеющегося на предприятии запаса каждого из них.
Таким образом, в данной задаче:
• целевая функция: F = c1x1, + c2x2 + c3x3 +... + cn xn —» max отражает цель предприятия, которая заключается в максимизации выручки от продажи продукции, изготовленной в соответствии с оптимальным планом X=(x1,x2,...xn);
отражает требования, предъявляемые к данному плану, которые состоят в том, что количество каждого из видов ресурсов i (i=l...m), необходимых для производства каждого j-ro вида продукции (j=l...n) в количестве xj, не должно превышать запасов bj каждого из ресурсов, имеющихся на предприятии;
• каждое из неравенств, входящих в систему прямых ограничений: х10,х20,...,хn0 отражает требования, состоящие в том, что количество каждого j-ro вида продукции (j=l...n) не может быть отрицательным.
Двойственная задача. Предположим, что то же предприятие, которое для производства n видов продукции использует m видов ресурсов, при тех же самых технологических коэффициентах aij хочет минимизировать затраты на используемые ресурсы. Для этого ему необходимо найти такие оценки (цены) каждого из ресурсов — уi (i=l.. .m), при которых затраты на них были бы минимальны, при этом искомые оценки (цены) ресурсов должны быть установлены таким образом, что затраты на производство единицы продукции каждого j-ro вида не превышали бы выручки от ее реализации.
В данном случае под оценками (ценами) подразумеваются объективно обусловленные оценки (понятие, впервые введенное Л. Канторовичем), которые, в отличие от цен, задаются не извне, а определяются самим предприятием для внутреннего пользования.
Таким образом, в данной задаче:
• целевая функция: Z(y) = y1 b1, + у2b2 +... + ymbm -> min отражает цель предприятия, которая заключается в минимизации затрат;
• каждое из неравенств, входящих в систему функциональных ограничений:
• каждое из неравенств, входящих в систему прямых ограничений: У10,у20,...,уm0
отражает требования, предъявляемые к оценкам, которые заключаются в том, чтобы каждая из них — уi (i = l...m) должна быть неотрицательной.