Одномерная оптимизация методом поразрядного приближения.
Метод обладает высоким быстродействием. Это достигается тем, что используется алгоритм с переменным шагом поиска. Задаем интервал [a,b] , содержащий внутри себя точки максимума
Задается начальное значение
|
нет
Результаты расчета.
Целевая функция имеет вид :
X=-100;h=10;k=10 | ||||
Погрешность Е | Оптимальная точка х | Оптимальное значение ф-ции | Кол-во итераций | Кол-во вычислений |
1 | 0,895427987 | 22,910241869 | 2 | 23 |
0.1 | 0,94547427929 | 23,046790768 | 3 | 35 |
0.01 | 0,96349811902 | 23,055988462 | 4 | 51 |
0.001 | 0,96148191718 | 23,05610953 | 5 | 65 |
X=-100;h=10;e=0.01 | ||||
Кратность k | Оптимальная точка х | Оптимальное значение ф-ции | Кол-во итераций | Кол-во вычислений |
2 | 0,95703125 | 23,0553 | 11 | 51 |
5 | 0,9632 | 23,0560 | 6 | 46 |
10 | 0,96 | 23,0560 | 4 | 51 |
20 | 0,96125 | 23,0560 | 4 | 65 |
50 | 0,96 | 23,0560 | 3 | 101 |
X=-100;k=10;e=0.01 | ||||
Шаг h | Оптимальная точка х | Оптимальное значение ф-ции | Кол-во итераций | Кол-во вычислений |
0.1 | 0,95999 | 23,05601 | 2 | 1028 |
0.5 | 0,96 | 23,05601 | 3 | 231 |
1 | 0,96 | 23,05601 | 3 | 123 |
5 | 0,96 | 23,05601 | 4 | 53 |
10 | 0,96 | 23,05601 | 4 | 51 |
50 | 0,96 | 23,05601 | 5 | 57 |
100 | 0,96 | 23,05601 | 5 | 48 |
Вывод: метод является эффективным для измерения оптимума унимодальной функции, причем изменение шага поиска или кратности уменьшения шага ( при неизменной погрешности вычисления на результат практически не влияет).
Одномерная оптимизация методом квадратичной интерполяции.
В предыдущих методах была сделана попытка найти малый интервал, в котором находится оптимум функции f0(х). В этом методе применяется иной подход. Он заключается в построении аппроксимирующей модели оптимизируемой функции
(х) = ах2 + Ьх + с
по крайней мере в небольшой области значений, в том числе в области оптимума. При этом положении экстремума
Экстремум функции fап (х) как известно расположен в точке: = -Ь/2а.
Положим, что окрестность некоторой исходной точки х=х1 области определения f0(х) аппроксимирована полиномом fап (х). Задача поиска заключается в определении смещения
Которое приводит из исходного состояния х = х1, ближе к экстремуму х = х°. Если f0(х) строго квадратичная функция, то смещение
где h - полуинтервал интерполяции, малая постоянная величина. Подставляя эти значения в уравнение (х), получаем систему из трех линейных уравнений с тремя неизвестными а, Ь, с:
а(х1 - h)2 + Ь(х1 - h) + с =а(х1 - h)2 + Ь(х1 - h) + с =
а*х12 + Ь*х1 + с =
а(х1 + h)2 + Ь(х1 + h) + с =
Для того, чтобы система имела решение, необходимо чтобы ее определитель не был равен нулю. Это условие выполняется, так как определитель равен:
х°ап= х1 + h(
Зная коэффициенты а, Ь, с можно определить и экстремальное значение функции по формуле, которая является оценкой экстремума критерия