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

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

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

иошибки округления. Все эти обстоятельства приводят к тому, что на п-м шаге практического поиска экстремум не достигается даже на квадратичном объекте.

Поэтому метод сопряженных градиентов, в частности

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

§16.4. Метод тяжелого шарика

Весьма интересной модификацией градиентного ме­ тода является так называемый метод тяжелого шарика. Этот метод опирается на очень прозрачную механическую аналогию между движением системы в пространстве пара­ метров и движением материального шарика в физиче­ ском трехмерном пространстве [16.3].

Начнем для наглядности с двумерного случая (п = 2). Рассмотрим движение тяжелого шарика массы тп под действием силы тяжести Р — та, где а — ускорение свободного падения. Пусть этот шарик брошен в «чашку», форма которой соответствует минимизируемой двумерной функции качества Q = Q (хх, х2). Очевидно, что шарик начнет двигаться вниз со все возрастающей скоростью. На него будут действовать две силы — сила тяжести и сила трения о стенки «чашки». Под действием первой (или, точнее, ее составляющей, направленной вдоль поверх­ ности Q = Q {хх, х2)) шарик будет ускоряться и стремить­ ся занять самое низкое место в «чашке», т. е. будет искать экстремум функции Q (хх, х2). Однако в силу инерции он может проскочить наинизшую точку и т. д. Сила тре­ ния, как известно, остановит его движение точно в экс­ тремуме функции Q (хх, х2).

Рассмотрим

i-io

составляющую этого движения

(рис. 16.4.1).

Здесь

 

получим окончательно уравнение движения в виде

<Рх. dx. яп

т~Ш' + дтЧ Г ::=~ таЩ (i==i’ 2)- (16.4.6)

Здесь q — коэффициент трения шарика о «чашку». Со­ кращая на т, преобразуем это уравнение к виду

d2x. dx. я п

-ШГ + д -1Г = ~ а1& 0 =

(1 6 -4 -7)

г

 

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

da:.

dQ

(i = 1, 2),

(16.4.8)

dt

дх.

\

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

Рассмотрим случай одномерного квадратичного объекта

Q (х) = Q* + к (х — я*)2.

(16.4.9)

Уравнение движения вдоль оси х принимает вид

.g . + q- g + 2акх = 2акх\

(16.4.10)

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

lim х (t) = х*.

(16.4.11)

t-+00

Действительно, решение (16.4.10) имеет вид

где х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)

 

- + ? - « = - 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). Эти условия носят название условий