Скачиваний:
178
Добавлен:
15.06.2014
Размер:
672.39 Кб
Скачать

2. Если D1 > 0 , то изменяем знак h (h=-h).

3. Вычисляем x2 = x1 + h, D2 = f (x2 ) .

4. Если (D2 D1) / h < 0, функция вогнута вверх, тогда x0 выбрана неудачно и следует закончить вычисления с этим сообщением.

5.

Вычисляем y1 = f (x1), y2 = f (x2 ) .

6.

Вычисляем z1, p, q, r, zm по вышеприведенным формулам.

7.

x1 = x2 , y1 = y2 , D1 = D2 , x2 = x2 + zm , y2 = f (x2 ), D2 = f (x2 ).

8.Проверяем zm <ε , если нет, тогда повторяем п.6.

9.xm = x2 + zm , ym = f (xm ) , конец.

Следует отметить, что вблизи точки минимума расчет по приведенным здесь простейшим формулам для p, q не всегда устойчив из-за ошибок округления, поэтому различные авторы рекомендуют использовать несколько преобразованные формулы.

1.3. Рельеф функции

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

этой поверхности линиями уровня (рис.1.2). По виду линий уровня условно выделим три типа рельефа: котлованный (рис. 1.3), овражный (рис. 1.4), неупорядоченный (рис. 1.5).

Рис. 1.2.

Рис. 1.3.

Рис. 1.4.

11

Рис. 1.5.

1.4. Представление функции в окрестности минимума

Разложим функцию в точке x0 , находящейся вблизи минимума, в ряд Тейлора:

 

f (xr0 +

xr)= f (xr0 )+ xrT f (xr0 )+ 1

xrT G (xr0 )

xr +o(

x3 )

(1.1)

 

 

 

 

 

 

xr

 

 

2

 

 

 

 

 

 

xrT

 

 

Здесь

 

 

-

вектор-строка

приращений,

 

 

 

-

вектор-столбец,

 

 

f

 

f

 

 

f

- вектор градиента,

 

2

f

 

 

 

 

f =

,

 

, ...

G =

 

 

- матрица вторых про-

 

 

x

 

x

x x

 

 

x

 

 

 

 

 

 

 

 

 

 

 

 

1

 

2

 

n

 

 

 

i

 

j

 

 

изводных Гессе (заметим, что она симметрична).

При небольших xr функция f (xr) вблизи минимума может быть аппрок-

симирована квадратичной функцией. В точке минимума f (xr* )= 0 . Используя

это, легко получается система уравнений для нахождения минимума квадратичной функции (1.1).

G (xr

)

xr* f (xr

) или xr* xr

G1 (xr

) f (xr

)

(1.2)

0

 

0

0

0

 

0

 

 

В окрестности минимума матрица Гессе

G положительно

определена

(вблизи максимума отрицательно определена).

1.5. Классификация методов оптимизации

Практически все методы минимизации функции n переменных основаны на многократном повторении следующих двух действий:

1. выбор некоторого направления спуска;

2. спускrк минимуму вдоль выбранного направления.

Если d - единичный вектор выбранного направления в точке xr0 = (rx10... xn0 ) , то уравнение прямой, проходящей через точку xr0 в направлении d , записывается в виде xr = xr0 + zd , где −∞ < z < ∞ параметр, соответст-

вующий точкам на прямой (при этом модуль z есть расстояние от текущей точки xr до xr0 ). Значения функции Y = f (x) вдоль этой прямой можно опи-

12

сать функцией одной переменной Y = f (xr0 + zd ) =ϕ(z) .Двигаясь вдоль этой прямой находится точка zm , в которой функция ϕ(z) имеет меньшее значение, чем в точке z = 0 (соответственно f (xm ) < f (xr0 ) ). Обычно спуск вдоль прямой сводится к нахождению точки zm , в которой достигается минимум функции одной переменной minϕ(z) . Эта задача более проста и ее решение нахо-

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

на, часто лучшие результаты дает стратегия небольшого спуска в сторону уменьшения ϕ . После нахождения zm следует перейти в новую точку, т.е.

xr0 = xr0 + zmdr и, выбрав в этой точке новое направление, опять выполнить

спуск по направлению и т.д., пока не будет достигнут минимум. Все многообразие методов минимизации функции n переменных определяется множеством способов выбора направлений и методов спуска в выбранном направлении.

МЕТОДЫ НУЛЕВОГО ПОРЯДКА - при выборе направления спуска требуют вычисления только значений функции (методы: Гаусса-Зейделя, Пауэлла, ДСК, Розенброка, Хука-Дживса, Нелдера-Мида).

МЕТОДЫ ПЕРВОГО ПОРЯДКА - требуют вычисления (точного или приближенного) градиента функции (методы: градиентный, сопряженных градиентов, Давидона-Флетчера-Пауэлла (ДФП), Флетчера-Ривса и др.).

МЕТОДЫ ВТОРОГО ПОРЯДКА - требуют вычисления как градиента, так и матрицы вторых производных (методы: Ньютона, Ньютона-Рафсона).

Из соотношения (1.2) следует, что наилучшим направлением спуска к минимуму из точки xr0 является вектор d = −G1 (xr0 ) f (xr0 ), т.к.за один спуск в

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

МЕТОДЫ С ПЕРЕМЕННОЙ МЕТРИКОЙ – занимают промежуточное место между методами 1-го и 2-го порядка.

13