Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

книги / Системы экстремального управления

..pdf
Скачиваний:
10
Добавлен:
19.11.2023
Размер:
33.28 Mб
Скачать

Легко заметить, что значение знака cos ср можно исполь­ зовать для оценки знака (16.1.2), т. е.

sign cos ф = sign (а* — а).

(16.1.8)

Теперь алгоритм адаптации можно записать в виде

ajv+i

Ow + ôsign cosÇiv+i

(16.1.9)

или

 

(16.1.10)

fl/v+ l = ftjv 4 “ à COS ф /v+ n

где следует строго

следить, чтобы ajv+i

0. Последнее

выражение представляет co6oâ более «плавный» закон адаптации. Он получается путем снятия функции знака

 

в

(16.1.9).

Анало­

 

гичную

модернизацию

 

можно произвести и с

 

алгоритмом (16.1.5).

 

В заключение отме­

 

тим, что рассмотренные

 

алгоритмы

адаптации

 

длины

шага

работают

 

и в

обстановке помех,

 

что позволяет использо­

Рис. 16.1.3. Зависимость угла между

вать их для точных оце­

двумя рабочими шагами от величи­

нок

экстремума. В этом

ны параметра а.

случае алгоритмы адап­

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

§ 16.2. Метод иаискореишего спуска

Эта модификация градиентного метода заключается в определении минимума вдоль градиентного направ­ ления. Задача, по сути дела, сводится к одномерной оп­ тимизации.

Пусть dir grad Q (X) — направление градиента в точ­ ке X. Цель наискорейшего спуска заключается в отыска­ нии минимума однопараметрической функции

Q( S ) =Q[ X — S dir grad Q (X)] -> m in. s

Характер поведения функции Q (S) показан на рис. 16.2.1.

Отыскание положения экстремума S* заключается в пере­ воде системы из точки S = 0 в точку S — S*.

Задача, таким образом, сведена к однопараметриче­ скому поиску, т. е. к минимизации функции Q = Q (S). Этот процесс обычно называют спуском.

Алгоритм поиска методом наискорейшего спуска пока­

зан на рис. 16.2.2. Он четко

 

 

 

 

 

подразделяется на две опера­

 

 

 

 

 

ции: 1 )

оценка градиента в

 

 

 

 

 

исходной точке и 2) спуск

 

 

 

 

 

вдоль антиградиентного

на­

 

 

 

 

 

правления

до минимума

 

 

 

 

 

 

Q (S *) =

min Q [X -

 

 

 

 

 

 

 

Sen

 

 

 

 

 

 

- S dir grad Q (X)], (16.2.1)

 

 

 

 

 

где Й — множество допусти­

Рис. 16.2.1. Зависимость зна­

мых значений S.

 

чения

показателя качества от

Метод

 

наискорейшего

смещения в

процессе спуска.

спуска очень близок методу

 

 

в том, что

при

Гаусса — Зайделя. Разница заключается

покоординатном поиске

спуск

производится

вдоль

на­

правлений

координатных осей, а

при

наискорейшем

 

 

 

спуске — вдоль

антиградиент­

 

 

 

ного

направления.

 

 

 

 

 

Рассмотрим поведение этого

 

 

 

метода в пространстве парамет­

 

 

 

ров {X} (рис. 16.2.3). Пусть

 

 

 

Х0S — направление спуска (оно

 

 

 

совпадает

с антиградиентным)

 

 

 

и пусть Х0 — точка экстремума

 

 

 

функции качества в этом на­

Рис. 16.2.2. Блок-схема

правлении

(16.2.1).

Проведем

алгоритма

 

нанскорейшего

через

эту

точку поверхность

спуска.

равного уровня (на рис. 16.2.3, а

 

 

 

она обозначена жирной линией).

Покажем, что эта поверхность касательна направлению спуска X 0S.

Это положение для случая п = 2 легко доказывается от противного. Действительно, пусть линия равного уровня не касательна к траектории спуска, а пересе­ кает ее под острым углом. Ввиду того, что все линии рав­ ного уровня замкнуты, эта линия должна пересечь

направление спуска еще в одной точке (точка 2 на рис. 16.2.3, б). На траектории спуска между обеими точка­ ми (1 и 2) будет участок (он на рис. 16.2.3, б показан утолщенно), где функция качества меньше, чем в точках

1 и 2. Но по условию точка XÔ соответствует наимень­ шему значению показателя качества на траектории спуска.

Рис. 16.2.3. К определению точки экстремума при спуске.

Полученное противоречие доказывает невозможность ситуации, показанной на рис. 16.2.3, б. Следовательно,

в точке Х0 линия равного уровня касается траектории спуска X 0S.

Указанное свойство приводит к тому, что вектор

градиента в точке Х 0 оказывается ортогональным тра­ ектории спуска ввиду его ортогональности линии рав­ ного уровня. Это обстоятельство можно отразить в виде следующего выражения:

[grad Q (Х0), grad Q (XÔ)] = 0.

(16.2.2)

Но grad Q (XQ) является направлением следующего спуска. Таким образом, в процессе поиска по методу наи­ скорейшего спуска траектории очередных спусков орто­ гональны.

Это правило имеет естественное обоснование. Действи­

тельно, в точке Х0 спуск вдоль направления X 0S пол­ ностью «исчерпал» себя и, следовательно, это направление

можно без ущерба исключить при оценке очередного на­ правления спуска, что и приводит к ортогональности направлений спусков.

Спуск можно рассматривать как процесс определения оптимального рабочего шага, т. е. выяснение значения параметра а* для данной обстановки. Поэтому метод наи­ скорейшего спуска является градиентным методом с оп­ тимальным выбором длины рабочего шага. Это и обуслов­ ливает определенное преимущество метода наискорейшего спуска по сравнению с методом градиента (даже с адап­ тацией). Он дает наибольший эффект на один этап по сравнению с обычным методом градиента. Указанное обстоятельство и определяет большое распространение метода наискорейшего спуска для решения технических и математических задач.

Сам по себе процесс спуска, т. е. отыскание экстре­ мума вдоль выбранного антиградиентного направления, может производиться любым из известных методов по­ иска, рассмотренных в главах 3, 4, 5.

Рассмотрим для иллюстрации применение метода наи­ скорейшего спуска при решении системы линейных алге­ браических уравнений:

 

« 1 1 * 1

4 “ « 1 2 * 2 Ч "

Ч "

«171*77

=

^ 1

(16.2.3)

 

 

 

 

 

 

 

 

 

«711*1 Ч- «712*2 Ч "

Ч "

«7171*71

=

^77*

 

Запишем

эту систему

в векторной форме

 

 

 

 

 

АХ = В,

 

 

 

(16.2.4)

где X — вектор неизвестных, В — вектор правых частей

системы

(16.2.3),

А — матрица

коэффициентов

(г,

7 = 1,

п).

Пусть

 

 

 

 

 

 

R = АХ -

В =

(г1}

гп)

 

(16.2.5)

— вектор невязок правых и левых частей уравнений

(16.2.3),

координаты

которого равны

 

 

î" f = « ll® J

Ч * «1 2 *2 4 “

Ч- «177*71

= 1>

., п).

(16.2.6)

Определим функцию качества как квадрат вектора не­ вязки

Q (X) = Rl = rl + rl +

+ г*. (16.2.7)

Эта величина не может быть отрицательной и равна нулю только при условии

Ti = г2 =

= гп = 0,

(16.2.8)

т. е. когда X является решением X* системы уравнений (16.2.3):

Q (X *) = 0.

(16.2.9)

Следовательно, решение X* является положением мини­ мума функции (16.2.7), которую удобно записать в форме скалярного произведения:

Q (X) = (АХ В)2 = [(АХ В), (АХ - В)]. (16.2.10)

Применим метод скорейшего спуска для минимизации этой функции. Прежде всего, определим градиент пока­ зателя качества. Частная производная по xt равна

0 “ i = 2 ( а ц Г х + « 2 г г 2 + ••• ~ Ь a nir n )'

( 1 6 . 2 . 1 1 )

Здесь выражение в круглых скобках соответствует пра­ вой части t-го уравнения (16.2.3) при замене X на В. Следовательно, для градиента получаем формулу

grad Q (X) = AR.

(16.2.12)

Пусть первый этап поиска начинается из состояния Х 0

и заканчивается в

состоянии Х г =

Х0:

 

Х г =

Х 0 — a grad Q

(Х0),

(16.2.13)

где а — пока неизвестный параметр. Определим его. Для этого воспользуемся свойством ортогональности направлений спуска (16.2.2), которое в данном случае, с учетом (16.2.12), записывается в виде

МД0, ARJ = 0,

(16.2.14)

где из (16.2.5) имеем

 

Д0 = А Х о - Д,

(16.2.15)

Дх = А Х г — В .

 

Из этих двух выражений получаем

Дх = Д„ + А (Хх - Х„).

(16.2.16)

Теперь, подставляя сюда значение Хх — Х 0, из (16.2.13) получаем, с учетом (16.2.12),

Дх = Д„ - аЛ2Д 0,

(16.2.17)

где А а = I bij || — матрица п X п с коэффициентами вида

П

 

 

= 2 üiiflkj

7 =

(16.2.18)

к=1

 

 

Подставим (16.2.17) в условие ортогональности (16.2.14):

[AR0, R 0] - a [ A R 0y

A*R0] — 0,

(16,2.19)

откуда получаем

выражение

для

параметра

а

 

• - p Ë s r S n È l -

(16-2-2à)

Окончательно

алгоритм перехода из состояния Х 0

в состояние Хх

записывается

в

виде

 

*

> - * - №

&

* * »

(16.2.21)

В общем виде на ЛГ-м этапе наискорейшего спуска имеем

х »« = X» -

(16-2.22)

где Ru — AXif — Д.

Эта рекуррентная формула позволяет вычислять по­ следовательные приближения, которые всегда сходятся к решению, независимо от начальных условий- Х 0:

lim X N = Х \

(16.2.23)

Заметим, что Я является, по сути дела, мерой «овражности», функции качества — чем больше Я, тем острее овраг. Следовательно, метод наискорейшего спуска рабо­ тает неэффективно в овражной обстановке.

Это обстоятельство сужает возможность метода наи­ скорейшего спуска, особенно при оптимизации слож­ ных многопараметрических объектов.

§ 16.3. Метод сопряженных градиентов

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

Самым простым из квадратичных методов сопряжен­ ных направлений является метод сопряженных градиен­ тов. Одновременно он обладает главным достоинством методов этого типа — высокой скоростью сходимости. Поэтому рассмотрим метод сопряженных градиентов более подробно.

Будем проводить поиск минимума функции Q = Q (X)

обычным итерационным процессом

 

•XN+I = XN ак GN,

(16.3.1)

где GN — направление поиска, которое задается в методе сопряженных градиентов в виде линейной комбинации градиента grad Q (XN) и предыдущего направления поиска:

@N = grad Q (XN) о.NGN-I

(16.3.2)

Коэффициент ÜN, определяющий величину шага в ме­ тоде сопряженных направлений, находится из условия

полной минимизации в данном направлении GN, т. е. про­ изводится полный спуск:

Q (Xff

►min.

(16.3.3)

 

aN

 

Отсюда следует справедливость соотношения

[Gn, grad Q (X N+1)] = 0.

(16.3.4)

Из (16.3.2) видно, что метод сопряженных градиентов является двушаговым. В частности, при Gw = grad Q (X N) метод сопряженных градиентов вырождается в обычный метод наискорейшего спуска (см. § 16.2).

Основная трудность метода сопряженных градиентов заключается в определении коэффициентов ац. Формулы для вычисления этих коэффициентов выводятся исходя из одношаговой стратегии получения максимальной ве­ личины разности Q (XN) Q (XN+I) на данном (N + 1)-м шаге поиска. При этом используется квадратичное при­ ближение минимизируемого функционала

Q {XN+I) = Q (Хц O,NGN) =

= Q (XN ) O,N [Gw, grad Q (Xw)] 4- -|-aiv (ENGN , GW],

(16.3.5)

где E N гессиан — матрица вторых производных функции Q (X) в точке X N -

ÔQ

ÔQ

9Q

дх2

дхч

dxi дхп

1

 

(16.3.6)

HN =

 

0Q

ÔQ

9Q

dxn dxi дхпдх2

дх\

Для квадратичной модели объекта (11.4.20) гессиан с точ­ ностью до коэффициента совпадает с матрицей квадра­ тичной формы

H = 2В,

(16.3.7)

которая предполагается симметричной, т. е.

= Ън .

В этом случав гессиан не зависит от номера шага.

Дифференцируя (16.3.5) по ам и приравнивая резуль­ тат нулю, получаем

__ [gw, gradQ (X N)]

aN IZNGn>GN1

(16.3.8)

Подставляя (16.3.8) в (16.3.5) и используя (16.3.2), ч16.3.4), можно получить величину изменения показа­ теля качества за один шаг спуска:

Q ( X n ) -Q (X „ +1) ~

1

[grad Q ( I w)]a

(16.3.9)

2

[HN Gn , GiY]

Отсюда следует, что для получения максимального значения этой величины необходимо минимизировать квадратичную форму [НмGW, GjvJЕсли гессиан положи­ тельно определенный, то минимизация этого функционала по «w приводит к следующему выражению для этого коэф­ фициента:

aN =

[grad Q (XN), Я у С ^ ]

(16.3.10)

[Gn , IIpjGff^]

 

 

Такой способ вычисления aм и связанная с ним моди­ фикация метода сопряженных градиентов впервые были предложены в работе [16.5]. Однако пользоваться выра­ жением (16.3.10) неудобно, потому что на каждом шаге необходимо вычислять гессиан Нм, что, как известно, связано с определенными вычислительными трудностями.

Укажем другие способы вычисления коэффициентов <XjV, в которых не требуется оценивать гессиан. Если пред­ положить, что на отрезке ХмХм-% гессиан Нм изменяется мало, то можно [16.6] для с% получить следующее при­ ближенное выражение:

[grad Q (XN), grad Q (XN) — grad Q (Z w+1)]

[grad Q ( ^ _ х)]а

(16.3.11)

 

Если метод сопряженных градиентов применять для минимизации квадратичных моделей, то можно показать, что градиенты в точках Хм и Хм-i ортогональны. Поэтому из (16.3.11) получаем окончательно очень простую фор­ мулу

[grad Q (X N)]a

[gradQ ( А '^ р •

(16.3.12)