Донецкий национальный технический университет
Опубликован: 09.07.2007 | Доступ: свободный | Студентов: 3114 / 709 | Оценка: 4.34 / 4.12 | Длительность: 13:54:00
Специальности: Программист

Лекция 9: Однопараметрическая (одномерная) оптимизация. Методы одномерной оптимизации: метод дихотомии, метод Фибоначчи, метод "золотого сечения", метод Ньютона.

< Лекция 8 || Лекция 9: 123 || Лекция 10 >
Аннотация: Данная лекция рассматривает задачи однопараметрической оптимизации и приводит наиболее распространенные методы решения этих задач, в частности, такие как метод дихотомии, метод Фибоначчи, метод "золотого сечения", метод Ньютона; также формулируются их основные характеристики, определяется область применения и выясняются преимущества и недостатки данных методов.

Однопараметрическая оптимизация (поиск экстремумов функций одной переменной) является самостоятельной и часто встречаемой задачей. Кроме того, к ней сводится гораздо более сложная задача - поиск экстремума функции многих переменных.

1. Метод дихотомии.

Рассмотрим простейший однопараметрический метод безусловной оптимизации – метод дихотомии. Этот метод является методом прямого поиска. В нем при поиске экстремума целевой функции используются только вычисленные значения целевой функции.

Дана функция F(x). Необходимо найти \overline{x}, доставляющий минимум (или максимум) функции F(x) на интервале [a,b] с заданной точностью \varepsilon, т.е. найти

\overline{x} = \arg \min F(x), \; \overline{x} \in [a,b].

Запишем словесный алгоритм метода.

1) На каждом шаге процесса поиска делим отрезок [a,b] пополам, x=(a+b)/2 - координата середины отрезка [a,b].

2) Вычисляем значение функции F(x) в окрестности \pm \varepsilon вычисленной точки x, т.е.

\begin{align*}
F1=F(x-\varepsilon), \\
F2=F(x+\varepsilon).
\end{align*}

3) Сравниваем F1 и F2 и отбрасываем одну из половинок отрезка [a,b] (рис. 9.1).

При поиске минимума:

Если F1<F2, то отбрасываем отрезок [x,b], тогда b=x. (рис. 9.1.а)

Иначе отбрасываем отрезок [a,x], тогда a=x. (рис. 9.1.б)

При поиске максимума:

Если F1<F2, то отбрасываем отрезок [a,x], тогда a=x.

Иначе отбрасываем отрезок [x,b], тогда b=x.

4) Деление отрезка [a,b] продолжается, пока его длина не станет меньше заданной точности \varepsilon, т.е. |b-a| \le \varepsilon

Поиск экстремума функции F(x) методом дихотомии

Рис. 9.1. Поиск экстремума функции F(x) методом дихотомии

Схема алгоритма метода дихотомии представлена на рис 9.2.

На рис 9.2: c - константа,

c=
\begin{cases}
\phantom{-} 1 & (\text{поиск минимума функции} \; F(x)), \\
-1 & (\text{поиск максимума функции} \; F(x)),
\end{cases}
При выводе x – координата точки, в которой функция F(x) имеет минимум (или максимум), FM – значение функции F(x) в этой точке.

Схема алгоритма метода дихотомии

Рис. 9.2. Схема алгоритма метода дихотомии
< Лекция 8 || Лекция 9: 123 || Лекция 10 >