- •§ 1. Основные понятия
- •1. Определения.
- •2. Задачи оптимизации.
- •3. Пример постановки задачи.
- •§ 2. Одномерная оптимизация
- •Задачи на экстремум.
- •2. Методы поиска.
- •§ 3. Многомерные задачи оптимизации
- •1. Минимум функции нескольких переменных.
- •3. Метод золотого сечения.
- •4. Метод Ньютона.
- •Метод покоординатного спуска.
- •3. Метод градиентного спуска.
3. Пример постановки задачи.
Пусть требуется спроектировать контейнер в форме прямоугольного параллелепипеда объемом V = 1 м3, причем желательно израсходовать на его изготовление как можно меньше материала.
При постоянной толщине стенок последнее условие означает, что площадь полной поверхности контейнера должна быть минимальной. Если обозначить через x1, х2, х3 длины ребер контейнера, то задача сведется к минимизации функции
Эта функция в данном случае является целевой, а условие (V — 1) — ограничением равенством, которое позволяет исключить один параметр:
Задача свелась к минимизации функции двух переменных. В результате решения задачи будут найдены значения проектных параметров х1, x2, а затем и х3.
§ 2. Одномерная оптимизация
Задачи на экстремум.
Одномерная задача оптимизации в общем случае формулируется следующим образом. Найти наименьшее (или наибольшее) значение целевой функции у = f(x), заданной на множестве cr, и определить значение проектного параметра х е а, при котором целевая функция принимает экстремальное значение. Существование решения поставленной задачи вытекает из следующей теоремы.
Теорема
Вейерштрасса. Всякая
функция f(x),
непрерывная на отрезке [а, b],
принимает на этом отрезке наименьшее
и наибольшее значения, т. е. на отрезке
[а, b]
существуют такие точки х1 и x2,
что для любого х £ [а,b]
имеют
место
неравенства
Пример. Найти наименьшее и наибольшее значения функции f ’ (x) = x3/3 - х2 на отрезке [1,3].
Решение. Вычислим производную этой функции:
Приравнивая ее нулю, найдем критические точки:
Точка х = 0 лежит вне рассматриваемого отрезка, поэтому для анализа оставляем три точки: а = 1, x-i — 2, b = 3. Вычисляем значения функции в этих точках:
Сравнивая полученные величины, находим, что наименьшего значения функция f(x) достигает в точке х = 2, наибольшего — в точке х = 3, т. е.
2. Методы поиска.
Численные методы поиска экстремальных значений функции рассмотрим на примере нахождения минимума функции f(x] на отрезке [а, b]. Будем предполагать, что целевая функция унимодальна, т. е. на данном отрезке она имеет только один минимум. Отметим, что в инженерной практике обычно встречаются именно такие целевые функции.
Погрешность
приближенного решения задачи определяется
разностью между оптимальным
значением х проектного
параметра и приближением к нему х*. Потребуем,
чтобы эта погрешность была по модулю
меньше заданного допустимого значения
е:
П
роцесс
решения задачи методом поиска состоит
в последовательном сужении интервала
изменения проектного параметра,
называемого интервалом
неопределенности. В
начале процесса оптимизации его длина
равна b -
а, а
к концу она должна стать меньше е, т.
е. оптимальное значение проектного
параметра должно находиться в интервале
неопределенности —
отрезке [xn,xn+1], причем xn+1 - хп <
е. Тогда
для выполнения (6.6) в качестве приближения
к оптимальному значению можно принять
любое xt Е
[xn,xn+1], например х* =xn„
или х*= (xn+xn+1)/2. В
последнем случае для выполнения (6.6)
достаточно выполнения неравенства xn+1 — хп <
2е.
Наиболее простым способом сужения интервала неопределенности является деление его на некоторое число равных частей с последующим вычислением значений целевой функции в точках разбиения. Пусть n — число элементарных отрезков, h = (b — а)/п — шаг разбиения. Вычислим значения целевой функции yk = f(xk) в узлах xk = а + kh (к = 0,1,..., п). Сравнивая полученные значения f(xk), найдем среди них наименьшее yi = f(xi).
Число mn = yi можно приближенно принять за наименьшее значение целевой функции f(x) на отрезке [а, b]. Очевидно, что близость mn к минимуму m зависит от числа точек, и для непрерывной функции f(x)т. е. с увеличением числа точек разбиения погрешность в определении минимума стремится к нулю.
