. (3)
Иными словами, аппроксимируем нашу функцию в точке xk параболой. Для этой параболы можно аналитически вычислить положение экстремума как корень уравнения первой производной от (3):
Пусть минимум аппроксимирующей параболы находится в точке xk+1. Тогда вычислив значение функции f(xk+1), мы получаем новую точку приближения к минимуму.
Обычно в практических реализациях данного метода не используют аналитический вид первой и второй производных f(x). Их заменяют конечно-разностными аппроксимациями. Наиболее часто берут симметричные разности с постоянным шагом h:
;
Это эквивалентно аппроксимации функции параболой, проходящей через три близкие точки xk+h, xk, xk–h. Окончательное выражение, по которому можно строить итерационный процесс, таково:
(4)
Данный метод отличается от вышеизложенных высокой скоростью сходимости. Вблизи экстремума, вплоть до расстояний ~h2, сходимость практически не отличается от квадратичной. Однако алгоритм требует постоянного контроля сходимости. Например, итерационный процесс будет сходиться к минимуму, если
1) знаменатель формулы (4) должен быть >0. Если это не так, нужно сделать шаг в обратном направлении, причем достаточно большой. Обычно в итерационном процессе полагают
. Иногда ради упрощения расчетов полагают
, однако это существенно уменьшает скорость сходимости.
2)
. Если это не так, то от x
k следует сделать шаг
с τ = ½. Если и при этом условие убывания не выполнено, уменьшают τ и вновь делают шаг.
Численные методы поиска минимума функции нескольких переменных.
Будем рассматривать методы поиска минимума
в многомерных задачах на примере функции двух переменных f(x, y), так как эти методы легко аппроксимировать на случай трех и более измерений. Все эффективные методы поиска минимума сводятся к построению траекторий, вдоль которых функция убывает. Разные методы отличаются способами построения таких траекторий, так как метод, приспособленный к одному типу рельефа, может оказаться плохим для рельефа другого типа. Различают следующие типы рельефа:
Метод координатного спуска
Пусть требуется найти минимум f(x, y). Выберем нулевое приближение (x0, y0). Рассмотрим функцию одной переменной f(x, y0) и найдем ее минимум, используя любой из рассмотренных выше способов. Пусть этот минимум оказался в точке (x1, y0). Теперь точно так же будем искать минимум функции одной переменной f(x1, y). Этот минимум окажется в точке (x1, y1). Одна итерация спусков завершена. Будем повторять циклы, постепенно приближаясь ко дну котловины, пока не выполнится условие
Сходимость метода зависит от вида функции и выбора нулевого приближения. Вблизи невырожденного минимума гладкой функции спуск по координатам линейно сходится к минимуму. Если линии уровня образуют истинный овраг, возможен случай, когда спуск по одной координате приводит на дно оврага, а любое движение по следующей координате ведет на подъем. Процесс координатного спуска в данном случае не сходится к минимуму. При попадании траектории спуска в разрешимый овраг сходимость становится чрезвычайно медленной. В физических задачах овражный рельеф указывает на то, что не учтена какая-то закономерность, определяющая связь между переменными. Явный учет этой закономерности облегчает использование численных методов.
Метод градиентного (наискорейшего) спуска.
В этом методе функция минимизируется по направлению, в котором она быстрее всего убывает, т.е. в направлении, обратном
. Вдоль этого направления функция зависит от одной параметрической переменной t, для нахождения минимума которой можно воспользоваться любым известным методом поиска минимума функции одной переменной. Спуск из точки начального приближения против градиента до минимума t определяет новую точку , в которой вновь определяется градиент и делается следующий спуск. Условием окончания процесса, как и в случае координатного спуска, будет С помощью метода градиентного спуска минимум гладких функций в общем случае находится быстрее, чем при использовании координатного спуска, однако нахождение градиента численными методами может свести на нет полученный выигрыш. Сходимость плохая для функций с овражным рельефом, т.е. с точки зрения сходимости градиентный спуск не лучше спуска по координатам.
Каждый спуск заканчивается в точке, где линия градиента касательна к линии (поверхности) уровня. Это означает, что каждый следующий спуск должен быть перпендикулярен предыдущему. Таким образом, вместо поиска градиента в каждой новой точке можно сосчитать градиент в начальной точке, и развернуть оси координат так, чтобы одна их осей была параллельна градиенту, а затем осуществлять спуск координатным методом.
Метод оврагов.
Ставится задача найти минимум
для овражной функции. Для этого выбираются две близкие точки и , и осуществляется спуск из этих точек (любым методом), причем высокой точности сходимости не требуется. Конечные точки спуска и будут лежать вблизи дна оврага. Затем осуществляется движение вдоль прямой, соединяющей и в сторону уменьшения (как бы вблизи дна оврага). Движение может быть осуществлено только на один шаг ~ h, направление выбирается из сравнения значения функции в точках и . Таким образом, находится новая точка . Так как возможно, что точка уже лежит на склоне оврага, а не на дне, то из нее снова осуществляется спуск в новую точку . Затем намечается новый путь по дну оврага вдоль прямой, соединяющей и . Если – процесс прекращается, а в качестве минимума в данном овраге используется значение .Метод оврагов рассчитан на то, чтобы пройти вдоль оврага и выйти в котловину около минимума. В этой котловине значения минимума лучше уточнять другими методами.
Проблемы поиска минимума в задачах с большим числом измерений.
Пусть в n-мерном векторном пространстве задана скалярная функция
. Наложим дополнительные условия , 1 ≤ i ≤ m; , 1 ≤ j ≤ p. Условия типа равенств выделяют в пространстве некоторую (n – m)-мерную поверхность, а условия типа неравенств выделяют n-мерную область, ограниченную гиперповерхностями . Число таких условий может быть произвольным. Следовательно, задача inf есть поиск минимума функции n переменных в некоторой (n – m)-мерной области E. Функция может достигать минимального значения как внутри области, так и на ее границе. Однако перейти к (n – m)-мерной системе координат практически никогда не удается, поэтому спуск приходится вести во всем n-мерном пространстве.