- •Основные понятия.
- •1. Безусловная оптимизация (многомерные функции)
- •1.1 Методы первого порядка (градиентные методы)
- •1.1.1. Градиентный метод с постоянным шагом
- •1.1.2. Выпуклые функции и множества
- •Теорема
- •Определение.
- •Без доказательства
- •2.Теорема:
- •1.2. Градиентные методы (продолжение)
- •1.2.1. Градиентный метод с дроблением шага.
- •1.2.2. Метод наискорейшего спуска.
- •Без доказательства
- •1.2.3. Масштабирование
- •1.3. Метод Ньютона.
- •1.4. Многошаговые ( двухшаговые ) методы.
- •1.3.1. Метод тяжелого шарика
- •1.3.2. Метод сопряженных градиентов
- •1.3.3. Модификация Полака-Ривьера
- •1.5. Квазиньютоновские методы
- •1.6. Методы нулевого порядка (методы прямого поиска)
- •1.6.1. Методы аппроксимации
- •Метод покоординатного спуска
- •1.6.3. Метод симплексов (Нелдера-Мида)
- •1.6.4. Метод Пауэлла (сопряженных направлений)
- •1.7. Методы прямого поиска в задачах одномерной минимизации.
- •1.7.1. Метод квадратичной интерполяции.
- •1.7.2. Метод дихотомии ( половинного деления.).
- •1.7.3. Метод «золотого» сечения.
- •1.7.4. Метод Фибоначчи.
- •2. Условная минимизация.
- •2.1 Задача нелинейного программирования.
- •2.1.1. Ограничения типа равенства.
- •2.1.2. Ограничения типа неравенств.
- •2.2. Задача выпуклого программирования
- •2.3. Методы условной минимизации.
- •2.3.1. Метод проекции градиента.
- •2.3.2. Метод условного градиента.
- •2.3.3. Метод модифицированной функции Лагранжа.
- •2.3.4. Метод штрафных функций.
- •2.4. Двойственность звп
- •2.4.1. Двойственность злп
- •3. Линейное программирование
- •3.1. Основные понятия
- •3.2. Геометрическая интерпретация злп.
- •3.3. Условие оптимальности для злп.
- •3.4. Базис и базисное решение.
- •3.5. Симплекс - метод решения злп.
- •3.6 Транспортная задача
- •3.5.1. Построение первоначального опорного плана.
- •3.5.2. Построение оптимального плана. Метод потенциалов.
- •4. Решение переборных задач.
- •4.1. Метод ветвей и границ.
- •4.1.1. Задача о коммивояжере.
- •4.2. Динамическое программирование.
- •4.2.1. Абстрактная схема.
- •4.2.2. Вывод уравнения Беллмана.
- •4.2.3. Методика применения функции Беллмана для решения исходной задачи.
- •4.2.4. Примеры задач динамического программирования
- •5. Вариационное исчисление (ви)
- •5.1. Уравнение Эйлера-Лагранжа.
- •5.1.1. Частные случаи уравнения Эйлера-Лагранжа.
- •5.1.2. Задача о брахистохроне.
- •5.2. Вариационные задачи на условный экстремум.
- •5.2.1. Модельные задачи на условный экстремум.
- •6. Принцип максимума Понтрягина ( на примере задачи оптимального управления ).
- •6.1. Принцип максимума в задаче о быстродействии.
- •Список литературы
2.1.2. Ограничения типа неравенств.
Не формальное введение.
Решаем задачу: найти.
Пусть:
область, которая разрешена ограничениями
g1(x)=0 f g2(x)=0
точка минимума
f = const (линия уровня)
g1 g2
-f
конус
Пусть x* точка минимума, тогда из рисунка видно, что -f представляется так:
-f = 1g1+2g2, где 10, 20. (1)
-f расположен в конусе, образованном g1 и g2.
переписывается так:
f + , где i - множители Лагранжа.
По рисунку i gi (x) = 0 (мы попадаем на границу). Тогда можно рассматривать функцию Лагранжа f + и считать стационарную точку так, будто нет ограничений. Переход от равенств к неравенствам накладывает ограничения на i (i 0). Пусть f направлен иначе (-f находится не в конусе), тогда иллюстрация принимает вид:
Иллюстрация:
S g2(x) = 0
g1(x) = 0
-f
g1 конус g2
В этом случае есть вектор S, который составляет острый угол с -f и тупой с g1 иg2.
То есть, для векторов x()=x* + S, (при малых ) наши ограничения будут выполняться (в тоже время функция будет убывать), и точка x* не будет точкой локального минимума.
Таким образом, чтобы точка была экстремальной, антиградиент должен лежать в выпуклом конусе, определенном векторами g1 иg2.
Рассмотрим другую точку на g2(x) = 0.
f1 g2(x) = 0
g2
Если f1 направлен так, как показано на рисунке, то точка x* будет подозрительной на точку локального минимума. Необходимое условие записывается также, но в этом случае 1=0 (то есть не рассматривается g1).
Таким образом, наша цель получить необходимые условия экстремума функции в допустимой точке.
Пусть x*- экстремальная точка, свяжем с x* множество индексов активных ограничений :
Лемма:
Пусть - некоторый вектор, удовлетворяющий следующим свойствам:
(*),тогда точкаx* - не экстремальная. i I(x*)
Доказательство:
Идея:
Показать, что на луче с вершиной x* и направлением S будут лежать вблизи вершины некоторые точки, которые будут допустимыми и в них целевая функция строго меньше чем в точке x*
Пусть >0
(1)
(разложение в полином Тейлора)
тогда (см. определение I(x*)).
Тогда (см.(1) и (*)).
Если , то . Отсюда(- достаточно мало).
Таким образом, при достаточно малых , точка x* + S- допустима, кроме этого функция f на этом луче убывает. Таким образом точка x* не является экстремальной. Для экстремальной точки x* система неравенств (*) - несовместна.
Лемма Фаркаша:
Для любой m n-матрицы А справедливо ровно одно из следующих двух условий :
либо
либо
Без доказательства.
Теорема Каруша-Джона:
Пусть x* - экстремальная точка задачи нелинейного программирования.
Пусть в точке x* градиенты функций, соответствующие активным ограничениям, линейно- независимы, тогда существуют 1,...,m 0 (не все нулевые), для которых выполняются следующее условия:
- условие дополняющей нежесткости.
Доказательство:
Как показано выше, не существует такого S, для которого выполнялись бы следующие неравенства:
, для любого iI(x*).
Воспользуемся леммой Фаркаша, составим матрицу:
, iI(x*).
Не существует S такого, что AS<0. Следовательно, существуют такие, что (по лемме Фаркаша) выполняются условия:
( *) (i: = 0, если iI(x*)).
Для активных ограничений gi = 0, для неактивных i = 0. Тогда
i gi (x*) = 0, .
так как если бы он был равен 0 ,то градиенты, соответствующих активных ограничений, были бы линейно-зависимы, что противоречит условию. Разделим (*) на 0 и получим требуемое утверждение. Условие линейной независимости градиентов функций активных ограничений иногда называют условием регулярности.
Упражнение. Найти минимум функции f(x1, x2) при ограничении x12+x221.