- •Метод множителей Лагранжа
- •Условия Куна-Таккера
- •Метод сканирования с постоянным шагом
- •Метод сканирования с переменным шагом
- •Метод половинного деления
- •Метод «Золотого сечения»
- •Метод с использованием чисел Фибоначчи
- •Метод градиента
- •Метод наискорейшего спуска (подъема).
- •Метод движения по дну оврага.
- •Решение задач оптимизации при условии типа равенства
- •Решение задач оптимизации При условии типа неравенства.
- •Методы случайного поиска.
- •Метод случайных направлений.
- •Особенности задач линейного программирования.
- •Симплекс-таблицы.
- •Алгоритм решения задачи оптимизации методом динамического программирования
- •Необходимое условие экстремума простейшего функционала Уравнение Эйлера для простейшего функционала
- •Решение задачи оптимального уравнения классическим вариационным исчислением
- •Общий алгоритм решения задачи оптимального уравнения с использованием принципа максимума
- •Численное решение задачи оптимального уравнения с использованием принципа максимума
- •Особенности решения задач на максимальное быстродействие
Лекция 1
Постановка задачи статической оптимизации
,
,
,
,
j=1,…,r
где
– вектор внешних возмущающих воздействий.
–
вектор управляющих
воздействий,
.
– вектор выходных
переменных,
.
- заданные значения
выходных переменных.
- область
допустимых управлений.
Требуется найти
такие значения управляющих воздействий
,
при которых выполняются условия (2) -
(5), критерий оптимальности принимает
минимальное (максимальное) значение.
Необходимым условием корректной постановки задачи оптимизации является наличие степеней свободы. Число степеней свободы есть разность между числом искомых функции или переменных и числом уравнений, связывающих эти функции или переменные.
Лекция 2
МЕТОДЫ СТАТИЧЕСКОЙ ОПТИМИЗАЦИИ
Классический метод исследования функций на экстремум.
Методы нелинейного программирования:
- численные методы решения одномерной задачи статической оптимизации;
- численные методы решения многомерной задачи статической оптимизации.
3. Линейное программирование.
4. Динамическое программирование в дискретной форме.
Классический метод исследования функций на экстремум
Необходимое и
достаточное условие экстремума функции
одной переменной
.
Необходимое условие:
.
Достаточное условие:
Если при
впервые
в порядке возрастания k,
,
где k-четное, то имеет экстремум.
Причем, если
,
то
,
а если
,
то
.
Если при впервые в порядке возрастания k,
,
где k-нечетное, то не имеет экстремума.
Необходимое и
достаточное условия экстремума функции
нескольких переменных
.
Необходимое условие:
,
.
Достаточное условие:
Если при все диагональные миноры матрицы :
строго положительны,
то функция
имеет минимум.
Если при
нечетные диагональные миноры матрицы
строго отрицательные, а четные диагональные
миноры матрицы
строго положительные, то функция
имеет максимум.
Лекция 3
Аналитическое решение задачи на условный экстремум
- Метод множителей Лагранжа.
- Условие Куна-Таккера
Аналитическое решение задачи на условный экстремум при условиях типа равенства:
,
,
,
,
.
Задача решается методом множителей Лагранжа.
Метод множителей Лагранжа
1. Составляется функция Лагранжа.
,
где
-
множители Лагранжа.
2. Совместно решается система уравнений:
;
;
Аналитическое решение задачи на условный экстремум при условиях типа неравенства:
,
Задача решается с использованием условий Куна-Таккера.
Условия Куна-Таккера
Рассматривается задача выпуклого программирования
j=1,…,m,
где
и
выпуклые
дифференцируемые функции.
К определению выпуклости функции.
Пусть
Производную точку
на линии ab
можно описать как a+(b-a)(1-
)=
a+(1-
)b
т.е. при = 0 это точка b, а при = 1 это точка а.
Теперь рассмотрим нелинейную функцию
Значение функции
в точке
есть
Значение линейной функции, проходящей через точки a и b, в точке с равно
Сравнивая значения исходной функции с линейной функцией в точке с можно записать условие выпуклости функции:
Если имеет место
,то
исходная функция выпукла (лежит ниже
линейной функции на отрезке [ab])
Алгоритм решения задачи.
Составляется функция Лагранжа:
,
где - множители Лагранжа.
Совместно решается система уравнений и неравенств:
,
,
,
,
Пример 1
Условия
Куна-Таккера:
j=1,2…;
Решение
Пусть λ=0, тогда
.
Ограничение
в точке (U1=0;
U2=0)
пассивно.
Пусть
,
тогда
т.к. λ>0, то U1<0
,
U2<0
В этом случае не выполняется условие .
Пример 2
или
Условия Куна-Таккера:
Пусть λ*=0, тогда
;
,
(не выполняется)
Пусть
Тогда
Ограничение
в точке
активно.
Лекция 4
Численные методы решения одномерных задач статической оптимизации
Сканирования (с постоянным и переменным шагом).
Половинного деления исходного интервала, содержащего
экстремум.
«Золотого сечения».
С использованием чисел Фибоначчи.
Метод сканирования с постоянным шагом
Функция
,
.
Алгоритм поиска:
Задается точность
вычисления оптимального значения
.
Интервал
делится на
отрезков,
.В каждой точке
вычисляется функция
и выбирается
из условия
,
или
Метод сканирования с переменным шагом
Функция , .
Алгоритм поиска:
Задается точность .
Интервал делится на
отрезков
.В каждой точке
вычисляется функция
и выбирается
из условия
,
или
.Назначают границы нового интервала поиска
и
из условия:
,
,
где
и
есть значения, соседние с
.
При максимизации
функции
:
;
При минимизации
функции
:
.
С п.2 расчет повторяют для интервала
,
,…,
.Расчет заканчивают при условии:
.
Метод половинного деления
,
.
Рис. Поиск методом половинного деления
Алгоритм поиска:
Делится интервал пополам
.Внутри интервала выбирают две точки:
и
,
где
.
Рассчитывают
и
Определяют границы нового интервала и .
Если
,
то при
выбираем
,
;
при
выбираем
,
.
Если ,
то при выбираем , ;
при выбираем , .
Проверяют условие окончания поиска
.Пункты 1-4 выполняют для каждого нового интервала
до условия
.
Лекция 5
