![](/user_photo/_userpic.png)
книги / Системы экстремального управления
..pdf![](/html/65386/197/html_L2jyhpZV6N.nFYO/htmlconvd-co9Azw391x1.jpg)
иошибки округления. Все эти обстоятельства приводят к тому, что на п-м шаге практического поиска экстремум не достигается даже на квадратичном объекте.
Поэтому метод сопряженных градиентов, в частности
ипостроенные на его базе многочисленные методы сопря женных направлений [16.9, 16.10] для практических целей не применяются. Эти методы являются скорее тео ретической оценкой возможностей поисковой оптимиза ции, когда объект хорошо аппроксимируется квадратич ной моделью.
§16.4. Метод тяжелого шарика
Весьма интересной модификацией градиентного ме тода является так называемый метод тяжелого шарика. Этот метод опирается на очень прозрачную механическую аналогию между движением системы в пространстве пара метров и движением материального шарика в физиче ском трехмерном пространстве [16.3].
Начнем для наглядности с двумерного случая (п = 2). Рассмотрим движение тяжелого шарика массы тп под действием силы тяжести Р — та, где а — ускорение свободного падения. Пусть этот шарик брошен в «чашку», форма которой соответствует минимизируемой двумерной функции качества Q = Q (хх, х2). Очевидно, что шарик начнет двигаться вниз со все возрастающей скоростью. На него будут действовать две силы — сила тяжести и сила трения о стенки «чашки». Под действием первой (или, точнее, ее составляющей, направленной вдоль поверх ности Q = Q {хх, х2)) шарик будет ускоряться и стремить ся занять самое низкое место в «чашке», т. е. будет искать экстремум функции Q (хх, х2). Однако в силу инерции он может проскочить наинизшую точку и т. д. Сила тре ния, как известно, остановит его движение точно в экс тремуме функции Q (хх, х2).
Рассмотрим |
i-io |
составляющую этого движения |
(рис. 16.4.1). |
Здесь |
|
![](/html/65386/197/html_L2jyhpZV6N.nFYO/htmlconvd-co9Azw393x1.jpg)
где х0 — начальное состояние, а A,lt À2 — корни характе ристического уравнения
которые |
равны |
Г |
+ дХ + |
2ак = 0, |
(16.4.13) |
|
|
|
|
||
|
К |
а = |
---- \ r ± |
Y Т " _ 2аЛ- |
(16.4.14) |
При ---- 2afe |
0 решение (16.4.12) имеет апериодический |
||||
характер. А при |
---- 2ак < |
0 функция х (t) колебатель |
|||
на (рис. |
16.4.2). |
|
|
|
Рис. 16.4.2. Характер поведения поиска методом тяжелого шарика
при различных значениях параметра поиска, а) дг |
8ак, |
б) <2 < 8ак. |
|
В многомерном случае уравнения |
движения |
шарика |
||||
в плоскости параметров |
{А-} имеют вид |
|
||||
d*x. |
ч г = |
- “ Щ |
~ - |
(г = |
1,2,... п). (16.4.15) |
|
+ Я |
||||||
~dp~ 1 * |
— |
w |
dx,г |
|
|
|
Эти уравнения удобно записать в векторной форме |
||||||
|
d*X , |
dX |
|
, л |
,V4 |
(16.4.16) |
|
1т- + ? - « = - a g r a d ( ? ( X ) . |
Это и есть уравнение движения системы, оптимизируемой методом тяжелого шарика.
Рассмотрим некоторые особенности реализации этого метода. На рис. 16.4.3 показаны примеры реализации одномерного поиска для различных значений параметра g
который может изменять характер поведения системы поиска. Здесь выход объекта поступает на блок оцен-
ки градиента «grad Q», который оценивает частную производную по программе, записанной в програм мном блоке ПБ, например, методом синхронного детекти рования:
= 0(* + /)/ = с 5 <?(* + Dfdt, |
(16.4.17) |
t-т |
|
где f = f\(t) — пробное возмущение, T — база осреднения.
Рис. 16.4.3. Блок-схема реализации метода тяжелого шарика в од номерном случае (n = 1).
Величина этой оценки поступает на сумматор, выход которого является второй производной оптимизируемого параметра. Получаем по схеме
А |
|
х = — qx — a . |
(16.4.18) |
А это и есть уравнение движения объекта в процессе по иска (16.4.7). Следовательно, указанная схема реализует алгоритм тяжелого шарика.
В многомерном случае блок-схема оптимизации по этому алгоритму выглядит аналогично (рис. 16.4.4). Здесь программный блок ПБ управляет процессом оценки гра диента, которая, например, может производиться методом синхронного детектирования:
|
gîid Q (X) = Q (X + F) F, |
(16.4.19) |
где F = (/j, |
., fn) — вектор пробного возмущения по |
|
всем координатам. |
|
Рассмотрим дискретный вариант этого поиска. Для этого представим производные в виде
|
XN — Xjv-i, |
|
d*X |
(16.4.20) |
|
— 2Xn^ + XN-2 » |
||
dP |
где Ai = 1. Градиент следует оценить по дискретным
Рис. 16.4.4. Блок-схема |
реализации метода тяжелого |
шарика |
|
|
(п > |
1 ). |
|
замерам, например: |
|
|
|
grad Q(X) = - L \Q (X + ge,) - |
Q (X),... |
|
|
|
Q(X + g e „ ) - Q (X)l. |
(16.4.21) |
|
Тогда алгоритм поиска запишется в виде [16.4] |
|
||
X N — -^N-1 — ®(X N - I — X N - 2) — Рgrad Q (X N-I)> |
(16.4.22) |
||
где |
|
|
|
“ = Т Т 7 ' ? = Т Г ? - |
<16А23) |
||
При а = 0 получаем рекуррентную формулу обычного |
|||
градиентного метода: |
|
|
|
XN = |
- р grad Q (XN^). |
(16.4.24) |
Определим предельное значение параметра а. Из (16.4.23) видно, что а < 1 ; при а = 1 процесс поиска не затухает вообще, так как д = 0 ; при а 1 процесс ста новится неустойчивым — система идет «в разнос». Выбор
параметра а в значительной степени определяет эффектив ность поиска. При малом а эффект «инерционности» по иска будет проявляться в незначительной степени. При а ж ! инерционность играет максимальную роль, но поиск слабо затухает в районе экстремума. Таким образом, ве личина а должна быть оптимальной, либо определяться в процессе поиска.
Обратим внимание на одно весьма любопытное свойство алгоритма тяжелого шарика. Если функция качества не унимодальна и имеет незначительные промежуточные эк стремумы (типа мелких щербин и неровностей чашки), то «шарик», набрав скорость, с легкостью преодолевает эти мелкие впадины, стремясь к наименьшему (глобаль ному) минимуму. Таким образом, рассмотренный алго ритм поиска является алгоритмом глобального поиска для объектов с функцией качества, промежуточные экс тремумы которой не очень ярко выражены и являются как бы «рябью» унимодальной функции.
§16.5. Метод стохастической аппроксимации
Вслучае, когда необходимо достаточно точно опреде лить положение экстремума функции, оптимизируемой
вобстановке помех, обращаются к методу стохастической аппроксимации. Этот метод является градиентным мето дом минимизации с переменными пробным и рабочим ша гами. В § 16.1 были рассмотрены алгоритмы адаптации длины рабочего шага в зависимости от результатов поиска. Однако изменение рабочих (и пробных) шагов можно про изводить и не адаптивно, а программным путем. Это и отличает метод стохастической аппроксимации.
Алгоритм перехода из одного состояния в другое для этого метода записывается в виде обычного выражения,
воснове которого лежит градиентный поиск :
XN+1 = Xjf — fljy grad Q' (Хц), |
(16.5.1) |
где a,N — параметр iV-го рабочего шага, который изме няется (уменьшается) по заранее заданному закону;
grad Q' — оценка градиента, произведенная по замерам показателя качества при наличии помех Q' = Q' (X). Эта оценка производится обычным покоординатным способом
на базе парных проб:
grad <?' (X) = j l - [Q■(X + g„eù - Q ' ( X - *„«,),...
.... Q’IX + g v e J - Q ' i X - g M ) ] . (16.5.2)
Здесь ex, e2, en — единичные векторы, направленные вдоль координатных направлений хи ., хп\ gjs — ве личина пробных шагов, которые необходимы для оценки частных производных показателя качества:
/\
^ + |
Q'(X — gNei)] (i = 1 , |
п). |
(16.5.3)
Для того чтобы процесс стохастической аппроксимации сходился к цели — минимуму функции качества Q (X) необходимо выполнение следующих условий:
1. |
<*N>0; gw> 0 . |
|
|
2. |
limaw = |
0; llimgjv = 0. |
(16.5.4) |
|
JV—►oo |
iV —>oo |
|
oo
Первое условие очевидно — оно имеет место для случая минимизации показателя качества (при его максимизации a.N < 0). При gjv <10 знак оценки градиента изменится на обратный. Второе условие необходимо при отыскании точного значения экстремума. Действительно, если бы ко эффициент рабочего шага не стремился к нулю, то процесс движения при поиске никогда не останавливался бы. Например, для конусообразной функции качества (11.4.6).
При limgAr=jfc 0 оценка градиента grad Q (X) на базе Нроб-
iV -* оо
ных шагов gN в среднем не стягивалась бы к точному зна чению градиента, что особенно важно в районе экстре
мума. В этом случае оценка grad Q (X) была бы смещенной, что делает невозможным точное определение экстремума.
Третье условие связано с необходимостью достижения экс тремума, как бы далеко он ни отстоял от исходной точки. Для этого достаточно, чтобы величины рабочих шагов не уменьшались бы слишком быстро в процессе поиска. И,наконец, четвертое условие связано с быстрым затуханием процесса поиска в районе экстремума. Вели чина отношения (ajv/gjv)2 характеризует дисперсию поиска на N -м шаге. Действительно, эта дисперсия прямо про порциональна квадрату коэффициента рабочего шага аN. Величина пробных шагов gN характеризует точность оцен ки градиента в обстановке помех (чем больше gN, тем точ нее оценивается градиент), что, в конечном счете, делает дисперсию поиска обратно пропорциональной величине
gN. Как видно из (16.5.4), gN^> алг» особенно при больших N. Это означает, что величина рабочего шага должна стре миться к нулю быстрее, чем gN.
Относительно характера поведения объекта, т. е. функ ции Q (X ), предполагаются весьма необременительные условия.
Во-первых, в районе экстремума X* должно выпол няться условие
[(.X - X*), grad Q (X)] > 0. |
(16.5.5) |
Это означает, что угол между вектором X — X* и вектором градиента в районе цели должен быть острым, т. е. движение в антиградиентном направлении приближает к цели X*. Иными словами, в районе цели поверхность равного уровня должна быть почти выпуклой. В прак тически важных случаях это условие всегда выполняется.
Во-вторых, скорость возрастания функции качества при удалении от цели не должна быть быстрее квадрат ной параболы, т. е.
(grad Q (X)]2 < к [1 + (X — X*)2], |
(16.5.6) |
где /с > 0 — произвольное число. Это условие всегда выполняется на конечном интервале, так как зна чение к произвольно и его можно определить достаточно большим.
Таким образом, для сходимости процесса стохастиче ской аппроксимации необходимо выполнение условий (16.4.4) — (16.4.6). Эти условия носят название условий