Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
НМО экзамен (2).docx
Скачиваний:
0
Добавлен:
24.01.2026
Размер:
22.95 Mб
Скачать

Численное дифференцирование

Чтобы понять, зачем нам нужно численное дифференцирование в методах оптимизации, рассмотрим классификацию этих методов.

Методы оптимизации делятся на:

1. Методы нулевого порядка – не используют производные целевой функции.

2. Методы первого порядка – используют первую производную f (x) или градиент ∇f (x).

3. Методы второго порядка – используют вторую производную f ′′(x) или матрицу Гессе ∇2f (x).

Нахождение производных может быть:

1. Аналитическое (с помощью формул), в т.ч. автоматическое (с помощью средств символьной алгебры).

2. Численное – менее предпочтительно.

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

Формула 1-го порядка точности для f (x):

где δ – некоторое число. Выбор этого числа – нетривиальная задача. Для достижения наибольшей точности следует выбирать δ не очень большим, но и не слишком маленьким. Типичным значением можно считать δ = 10−6.

Формула 2-го порядка точности для f (x):

Формула 1-го порядка точности f ′′(x):

Эти формулы легко могут быть обобщены для функции векторного переменого. Аппроксимация i-й компоненты градиента формулой 1-го порядка точности такова: е - единичный вектор по определенной координате.

Аппроксимация i-й компоненты градиента формулой 2-го порядка точности имеет вид:

Сложность вычисляения растет с ростом размерности.

Аппроксимация компоненты матрицы Гессе под номером (i, j) формулой 1-го порядка точности имеет вид:

Для нахождения матрицы Гессе таким способом требуется n(n + 1) / 2 дополнительных вычислений целевой функции ввиду ее симметричности, если уже известны компоненты f (x + δei) для вычисления градиента и значение целевой функции f (x), или всего (n + 1) / 2 + n + 1 операция.

Вопросы для самопроверки

1. Почему метод оптимизации в идеальном случае порождает фундаментальную после- довательность?

2. Пусть имеется некоторый метод оптимизации A и некоторая функция f (x). В составе КОП этого метода нет ограничения на максимальное число итерций. Существует ли алгоритм, который, имея на входе A и f (x), а также стартовую точку x0 и заданную точность ε, определит, зациклится ли метод, или остановится по достижении КОП? Сложность алгоритма может быть любая.

Методы дихотомии и трехточечного деления Метод дихотомии

Найдем решение одномерной задачи оптимизации

x = arg min f (x),

x∈[a;b]

где интервал [a; b] задан, функция f (x) унимодальна на данном интервале.

Метод дихотомии (средней точки) заключается в последовательном делении интервала пополам и выборе нужной половины интервала для последующей оптимизации в соответствии со знаком производной в центральной точке.

Метод основан на теореме Больцано-Коши:

Теорема

Пусть непрерывная функция g(x) ∈ классу непрерывных функций C([a, b]), тогда, если sign g(a) ̸= sign g(b), то∃c ∈ [a, b] : g(c) = 0.

Следствие Если g(x) = f (x), и выполнены условия теоремы, то функция f (x) имеет экстремум на интервале [a, b].

Метод дихотомии: алгоритм Алгоритм 1: Метод дихотомии

В качестве примера рассмотрим оптимизацию функции

f (x) = 2x2 − 9x − 31

на интервале [−2; 10]. На рисунке 1 показан пример работы этого метода.