- •Основные понятия.
- •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. Принцип максимума в задаче о быстродействии.
- •Список литературы
Основные понятия.
1. X- множество вариантов или допустимое множество.
f : XR1 - целевая функция.
Точка x*X называется точкой локального минимума, если >0: xX такого что ||x-x*||< верно f(x) f(x*). Если f(x) f(x*) при всех xX, то x* называется точкой глобального минимума на X.
Надо найти минимум функции f на множестве X.
Содержание курса состоит в изучении методов поисках экстремумов.
Будем искать min f(x), xX , так как max f(x)= - min(-f(x)), xX и поэтому поиск максимумов f(x) сводится к поиску минимумов f(-x).
Множество X бывает:
Конечным (конечное множество элементов, например графы).
Конечномерным (когда оно является подмножеством множества евклидова пространства).
Бесконечномерным (обладает бесконечным набором линейно-независимых элементов. Пример: множество непрерывных функций на отрезке).
Соответствие методов и множеств.
Методы решения переборных задач (метод ветвей и границ, динамическое программирование и др.)
Методы решения задач математического программирования (условная/безусловная минимизация, нелинейное, выпуклое и линейное программирование).
Методы вариационного исчисления и методы оптимального управления (уравнение Эйлера-Лагранжа, принцип максимума).
1. Безусловная оптимизация (многомерные функции)
Требуется найти min f(x), на всём X = Rn, то есть минимизация на всем пространстве.
Определение: Минимизация функции на множестве, заданном неравенствами, равенствами и другими ограничениями называется условной.
Пусть:
X = Rn (евклидово n-мерное пространство);
Функция f дифференцируема хотя бы один раз, тогда в точке минимума выполняется равенство:
f(x)=0, где (вектор частных производных по каждому аргументу)
В большинстве случаев это приводит к решению системы нелинейных уравнений, что само по себе проблема. Существуют релаксационные методы, в основе которых лежит построение последовательности {xi}, xiX со следующими свойствами:
f(x0)>f(x1)>...;
xix* = argmin{ f(x), xX}.
Рассмотрим методы нахождения локального минимума (т.е. корня уравнения f(x) =0). Все рассматриваемые методы делятся на несколько групп в зависимости от того, какой максимальный порядок производной функции f используется для вычисления последовательности. Порядок метода равен порядку старшей производной f, вычисляемый пр реализации этого метода. Если производные не используются, то методы нулевого порядка, затем - первого и так далее. Мы будем рассматривать порядок не выше второго.
Общая схема безусловной оптимизации
Основная итерационная формула:
xk+1 = xk+ tkSk , где Sk -вектор, определяющий направление изменения xk
tk - скаляр, определяющий длину шага.
Sk может зависеть от xk: Sk = (xk), а может от (xk ,xk-1), от (xk ,xk-1, xk-2) и т.д.. В зависимости от этого критерия методы делятся на:
одношаговые ((xk));
многошаговые ((xk, xk+1)).
Одношаговые и двухшаговые методы имеют основное распространение.
1.1 Методы первого порядка (градиентные методы)
Для вычисления t и S используются значение функции и первая производная.
Известно, что градиент функции в точке дает направление наибольшего возрастания функции в точке. Направление наибольшего убывания - это направление антиградиента.
Пусть Sk = -f(xk), tk > 0 - длина шага.