- •А.В. Михайлов
- •Утверждено
- •Москва 2009
- •1.1. Основные понятия и определения.
- •1.2 Основные этапы формулировки задачи.
- •1.3 Классификация оптимизационных задач.
- •1.4 Критерий оптимальности.
- •1.5. Условия оптимальности решения.
- •2.1. Постановка задачи. Методы решения оптимизационных задач.
- •2.3. Численные методы решения задачи (методы одномерного поиска).
- •2.3.1. Метод равномерного поиска
- •2.3.2. Метод последовательного равномерного поиска.
- •2.3.3. Метод дихотомии (Метод деления интервала неопределенности пополам)
- •2.3.4 Метод золотого сечения
- •3. Определение безусловного максимума функции нескольких переменных.
- •3.1. Постановка задачи и ее геометрическая интерпретация. Линии равного уровня.
- •Аналитический метод решения задачи. Аналитический метод использует необходимое условие max функции нескольких переменных:
- •Численные методы решения задачи (методы многомерного поиска).
- •Метод направленного перебора.
- •3.3.2. Методы нулевого порядка.
- •3.3.2.1. Метод Гауса-Зайделя (покоординатного поиска).
- •Пример: Выполнить первый цикл поиска максимума функции:
- •3.3.2.2. Симплекс-метод
- •3.3.3. Численные методы первого порядка (градиентные)
- •3.3.3.2. Метод градиента.
- •3.3.3.3. Метод крутого восхождения.
- •4.1 Постановка задачи и ее геометрическая интерпретация
- •4.2. Аналитические методы решения задачи
- •4.2.1. Метод неопределенных множителей Лагранжа
- •Теорема Куна-Таккера.
- •4.3. Численные методы решения задачи
- •4.3.1. Метод штрафных функций
- •5. Оптимизация многостадийных процессов
- •5.1. Постановка задачи на примере и ее формализация.
- •5.3. Метод динамического программирования. Принцип оптимальности Беллмана.
- •5.4. Задача определения оптимального пути на сетевом графике (графе).
- •6. Линейное программирование.
- •6.1. Постановка задачи линейного программирования и особенности ее решения.
- •7.Определение максимума функционала. (Вариационная задача оптимизации).
- •7.1. Пример постановки вариационной задачи.
- •7.2. Определение безусловного максимума функционала. (Классическая вариационная задача), (задача Эйлера).
- •7.3. Определение условного максимума функционала (неклассическое вариационное исчисление)
- •7.4. Определение условного максимума функционала с ограничениями типа дифференциальных уравнений. Принцип максимума Понтрягина.
- •8.1. Формирование критериев оптимальности.
- •8.2. Способы формирования сводного критерия оптимальности.
- •8.2.1. Свертка частных критериев с весовыми коэффициентами.
- •8.2.2. Использование нормативных критериев.
- •8.2.3. Приближение к идеалу.
- •8.2.4. Справедливый компромисс.
- •8.3. Оптимальность по Парето.
- •9. Типовые постановки задач оптимального управления технологическими процессами
- •9.1. Пуск и остановка единичного агрегата.
- •9.2. Пуск системы взаимосвязанных агрегатов.
- •9.3. Оптимизация статического установившегося режима.
- •9.4. Оптимизация циклического установившегося режима.
- •9.5. Оптимизация режима в аппарате периодического действия.
- •9.6. Календарное планирование работы аппарата
- •9.7 Оптимальный режим работы параллельно включенных агрегатов: распределение нагрузок.
- •9.7.1. Минимизация затрат.
- •9.7.2. Учет вероятностного характера нагрузки.
- •9.7.3. Учёт динамических факторов.
- •9.8. Оптимальный режим работы последовательно включенных агрегатов.
- •9.9. Согласование работы периодически или циклически действующих аппаратов.
6. Линейное программирование.
6.1. Постановка задачи линейного программирования и особенности ее решения.
, i=1, 2, …, n. (6.1)
D: ,j=1, 2, …, r. (6.2)
Целевая функция (6.1) линейна по Х, и все функциональные ограничения (6.2) линейны по Х. Так как в задачах линейного программирования , т.е. целевая функция не имеет точек максимума внутри областиD, то решение задачи (6.1) и (6.2) может быть только на границах этой области. В силу линейности ограничений (6.2) множество D является многогранником (в двумерном случае n=2 - многоугольником), а решением задачи является либо одна из вершин многогранника, либо одна из его граней. Заметим, что n – количество переменных в условии задачи определяет размерность многогранника множества D, а r – количество функциональных ограничений определяет количество граней многогранника.
Эти особенности определяют методы решения задачи.
Методы решения задач линейного программирования.
Задачи линейного программирования для целевой функции двух переменных f 0(X) = f0 (X1, X2), удобно решать графически.
Рассмотрим пример:
Рис. 6.1
f0 (X1, X2) =
Из условия задачи следует n = 2, r = 3, то есть область допустимых значений варьируемых переменных D представляет собой треугольник (рис. 6.1.), сторонами которого являются отрезки прямых -X1 - 1 =0; -X2 - 1 = 0;
X1 + X2 – 2 = 0, а вершинами, точки пересечения этих прямых (точки А, В, С).
Строим вектор градиента , для чего определяем значения его проекций на осиX1, X2.
,
Строим линию равного уровня целевой функции, перпендикулярно к направлению градиента и переносим ее параллельно самой себе по направлению градиента, до тех пор, пока она не пройдет через крайнюю точку области D (точка С на рис 6.1).
Определяя координаты точки С, как точки пересечения двух прямых, находим решение задачи.
, откуда
Последовательность решения задачи линейного программирования графическим методом.
Построить многоугольник D на плоскости с осями X1, X2
2. Определить направление градиента , для чего рассчитать проекции вектора градиента,на осиX1 и X2.
Построить вектор градиента целевой функции , и перпендикулярную ему линию равного уровня.
3. Перенести линию равного уровня параллельно самой себе по
направлению градиента, так, чтобы она проходила через крайнюю точку области D.
4.Определить координаты крайней точки, как точки пересечения двух прямых, ограничивающих область D.
Значения этих координат и являются решением задачи.
Если линия равного уровня параллельна стороне многоугольника D, ограничивающей его в направлении градиента, то решением служит любая точка этой стороны.
Задачу линейного программирования с размерностью больше двух (n>2) решают симплекс-методом в соответствии со следующей последовательностью:
Определяются координаты одной из вершин многогранника ограничений D.
Среди ребер многогранника, выходящих из этой вершины, определяется то, движение вдоль которого обеспечивает наибольшую скорость возрастания целевой функции.
Движение вдоль выбранного ребра осуществляется до попадания в следующую вершину. Далее действия повторяются. Расчет заканчивается, если движение по любому ребру, выходящему из достигнутой вершины не приводит к увеличению целевой функции, и за решение принимаются координаты этой вершины.