книги / Системы экстремального управления
..pdfможно воспользоваться приближенным соотношением:
grad Q (Х2) « grad Q (Хх), |
(17.2.11) |
т. е. судить достаточно правдоподобно о поведении пока зателя качества в точке Х 2 по наблюдениям, сделанным в точке Х х, близкой к Х 2. Возможность такой экстрапо ляции поведения функции качества и позволяет постро ить новый случайный поиск с новыми свойствами.
Разобьем весь процесс поиска на этапы, причем на каждом этапе поставим собственную, самостоятельную цель управления. Таким образом, процесс достижения
цели Q {X*) < е разбивается на этапы |
с собственными |
подцелями. Пусть Q (Xi) — состояние |
на i-м этапе. |
Тогда цель поиска на данном этапе заключается в отыс кании такого Xi+lt для которого Ç (Х,+1) < Q (Xi),
т.е. приращение A(?i+1 должно быть отрицательным: AÇi+1 = Q (Xi+1) - Q (Xi) < 0.
Естественно это новое состояние искать в районе Х%,
т.е. следует ограничить поиск некоторой разумной зо
ной, окружающей точку Xi. Следовательно, случайность нужно вводить как и з м е н е н и е состояния, достиг нутого на предыдущем этапе поиска:
Х ы = X t + AXi+1, |
(17.2.12) |
т. е. алгоритм поиска должен определять выбор прира щения АХ, а не самого X, как это было в гомеостате.
Положительная реакция Rt на г-м этапе в процессе такого поиска появляется при достижении i-й подцели
AQi = Q |
(Xt) — Q |
(Xi-i) < 0 |
Rt. Отрицательная |
реакция R ï |
связана |
с. обратным |
результатом AQi 1> |
> 0 —у R\ .
Теперь можно сформулировать алгоритм случайного поиска с линейной тактикой, который является прямым развитием (17.2.1):
S |
при R i, |
AXi+1 = |
(17.2.13) |
АХ{ |
при Rf, |
где случайные пробы Е предполагаются достаточно малыми по модулю, чтобы вероятность достижения под цели была бы достаточно большой. Этот алгоритм, как
видно, является дифференциальным аналогом гомеоста тического алгоритма и обычно называется алгоритмом случайного спуска.
Смысл этого алгоритма прост и естествен. Система делает случайные шаги в пространстве управляемых па раметров, пока не будет найден такой шаг, который при ведет к уменьшению функции качества. Положительная реакция алгоритма заключается в повторении такого шага до тех пор, пока показатель качества не начнет уве личиваться, что вызовет отрицательную реакцию —слу чайные пробы новых направлений и т. д.
Эффективностьта кого алгоритма пои ска гарантируется условием (17.2.11), которое фактическиутверждает, что успех в Х х может повто риться в Х 2, если
расстояние между Xi и Х 2не очень велико. На основании этого в указанном алгоритме повторяются шаги в выб ранном направлении.
Рассмотрим работу этого алгоритма как стохастиче ского автомата в случайной среде, которую представляет собой объект оптимизации. Направленный граф работы такого автомата показан на рис. 17.2.1, где обозначены: S — оператор случайного смещения, a R + — оператор положительной реакции. Стрелками на рисунке пред ставлены переходы от одного оператора к другому, при чем рядом со стрелками в скобках показаны условия, вызывающие эти переходы. Как видно, такой автомат может пребывать в двух состояниях и задается матрицей переходов:
S |
Pi |
1 - Pi |
R+ |
1 - Р г |
(17.2.14) |
Рг |
где вероятности Рх и Р2 зависят от свойств оптимизируе мого объекта и изменяются с переходом от одного состоя ния к другому.
Как видно, эффективность данного алгоритма определя ется, прежде всего, тем, как часто происходит повторение
оператора R+. Именно в |
цикле i?+ — i?+—>-. |
. R + показатель качества |
уменьшается и происхо |
дит настройка системы. Поэтому значение вероятности Р2 в значительной мере определяет эффективность при менения этого алгоритма. Если объект таков, что значе ние Р2 достаточно близко к единице, а это эквивалентно выполнению условия (17.2.11), то применение рассмат риваемого алгоритма целесообразно.
Но эффективность этого алгоритма зависит и от веро
ятности |
выхода на указанный цикл, т. е. от величины |
1 —Рг, |
которая соответствует вероятности случайного |
определения удачного направления, для которого AQ 0. Немалость этой величины должна быть гарантирована, иначе алгоритм будет работать плохо, так как система поиска будет очень редко попадать в состояние R +, когда, собственно, и происходит оптимизация, и быстро действие поиска будет мало.
Таким образом, для эффективной работы такого поиска необходимо, чтобы объект оптимизации удовлетворял следующим двум условиям: 1) Р2велико и 2) Рг не очень велико.
Рассмотренный алгоритм случайного поиска построен
на |
принципе «наказания» случайностью, |
в соответствии |
с |
которым оператор случайного шага S |
вводится как |
отрицательная реакция па неудачу при отыскании под цели. В случае же удачи поиск действует тем же образом, который привел к удаче. Такая форма поведения безус ловно разумна и целесообразна для линейных объектов и близких к ним, свойства которых с переходом из одного состояния в другое изменяются незначительно, т. е. имеет место неравенство (17.2.11). Именно поэтому авто мат, реализующий подобный алгоритм, называется авто матом с линейной тактикой. Если же это условие линей ности объекта не выполняется и вероятность Р2 мала, то, как указано, рассмотренный линейный алгоритм поиска имеет ограниченное применение.
Алгоритм поиска с линейной тактикой четко подразде ляется на два этапа, соответствующих двум различным образам поведения.
Первый этап сводится к определению направления спуска Y. (Здесь Y — единичный вектор направления.) Второй этап представляет собой спуск, во время которого
3) Оценка направления спуска методом статистиче ского градиента. В этом случае за направление спуска принимается средневзвешенное из т случайных направ лений, каждое из которых берется с весом, соответству ющим приращению показателя качества вдоль этого на правления:
т
Y = - dir 2 |
S,[<? (X + jfE,) _ Q (X)l, (17.2.17) |
i = |
l |
где dir —обозначает единичный вектор, определяющий
интересующее направление: dir Z = -^-г. Iù I
Легко видеть, что при т = 1 этот алгоритм опреде ляет случайное направление спуска, но преимущественно удачное.
Действительно, если в этом случае AQ <[ 0, то вы бранное направление Y = S удачно. Если же AQ О, то определение Y — —S позволяет надеяться, что для достаточно широкого класса объектов выбранное направ ление спуска окажется удачным, хотя, строго говоря,
вобщем случае это может быть и неверно.
4)Ортогонализированный метод статистического гра диента. Этот метод определения направления спуска Y отличается от предыдущего тем, что случайные направ
ления |
Si |
(i = 1, |
|
т ^ . п) ортогональны, т. е. |
|||
|
|
[S |
- |
{ 0 |
при |
i = ;, |
(17.2.18) |
|
|
при |
i =j(=j. |
||||
|
|
|
|
О |
|
||
При т = |
1 метод в точности |
совпадает с предыдущим, |
|||||
ап ри т |
= |
п, т. е. при числе ортогональных проб, равном |
размерности системы п, как легко заметить, этот метод вырождается в градиентный метод.
Возможны и другие модификации оценки направления спуска.
Теперь перейдем к алгоритмам второго этапа поиска с линейной тактикой — алгоритмам спуска.
Сам по себе процесс спуска заключается в определе нии минимума вдоль направления спуска. Чаще всего это —шаговая процедура, причем после каждого шага принимается решение, двигаться ли дальше или прекра тить спуск и обратиться к первому этапу.
Пусть А Х i — смещение на г-мшаге спуска. Тогда состоя ние объекта в процессе спуска будет определяться следу ющим рекуррентным соотношением
= |
+ 4 * ,, |
(17.2.19) |
где ДXt определяется предысторией спуска. |
||
Рассмотрим несколько |
наиболее |
распространенных |
алгоритмов спуска. |
|
|
1. Спуск с парными пробами (см. §4.1). Этот алгоритм спуска заключается в том, что вдоль направления спуска берутся парные пробы, которые дают возможность при нять решение: спускаться дальше или прекратить спуск и вернуться к первому этапу.
Алгоритм |
записывается в |
следующем виде |
|||
. |
_ ( |
aY, |
если |
<? (Xt + |
gY) - Q (Xt - gY) < Ô, |
i+1 |
- ( 0 , |
если |
Q(Xi + |
g Y ) - Ç ( X i - g Y ) > ô , |
|
|
|
|
|
|
(17.2.20) |
где AXi = aY. |
Здесь a = const — величина шага в про |
цессе спуска, |
Ô — некоторый порог, а момент АХ = 0 |
соответствует переходу к первому этапу.
Для этого алгоритма спуска характерно четкое рас членение пробных и рабочих шагов. Именно поэтому его иногда называют алгоритмом с разделенными проб ными и рабочими шагами. Однако возможны алгоритмы
ис совмещенными шагами.
2.Совмещенный спуск (см. § 4.3). В этом алгоритме пробные и рабочие шаги совмещены:
где АХг = aY, а АХ = 0 соответствует переходу к пер вому этапу. Хорошо видно, что в этом алгоритме затраты на определение показателя качества вдвое меньше, чем в предыдущем, — это наиболее примечательная особен ность совмещенного алгоритма.
Описанные выше алгоритмы спуска никак не учиты вали априорной информации о поведении объекта. Учет этих сведений приводит к экстраполяционному спуску.
3. Экстраполяционный спуск. Смысл этого алгоритма спуска сводится к определению тенденции изменения пока зателя качества и переводу системы сразу в экстремальное состояние (на траектории спуска, разумеется). Таким об разом, каждый шаг процесса экстраполяционного спуска складывается из двух моментов: сбора информации о поведении показателя качества вдоль выбранного на правления спуска и определения положения экстремума.
Пусть Xi — оценка положения экстремума на г-м шаге экстраполяционного спуска, & Хц, . ., Xiq — точ ки для определения характера поведения функции ка чества на направлении У на i-м этапе:
= à:’i + g „ Y (/ = 1 , 2 , . ,,ç). (17.2.22)
Алгоритм экстраполяционного спуска должен обуслов
ливать коэффициенты |
gy: |
|
g,, |
= F, (*•), |
(17.2.23) |
и способ определения экстремума на (i + 1 )-м шаге по наблюдениям показателя качества в точках (17.2.22):
Х'+1 = Х\ + <zi+ 1 У, |
(17.2.24) |
где <ïi+1 зависит от значений показателя качества в точ ках (17.2.22). Так, в случае квадратичной экстраполяции (см. § 5.3), получаем в соответствии с (5.3.6) и (5.3.11):
£i ~ |
ё> |
ёг = |
0 ; |
g3 = |
g |
и сц+1 = 2 (Qi + Qs —2 Q2) ’ Г^е |
|
= |
& |
- g Y ) , |
Q2 = |
Q (X\)tQ3 = Q (Xl |
+ gY). |
||
Изложенные |
выше |
алгоритмы линейного |
случайного |
поиска обладают одним существенным недостатком, свой ственным всем алгоритмам спуска: в процессе спуска выбранное направление все менее и менее соответствует антиградиентному и поэтому дальнейший спуск доволь но быстро теряет смысл, он практически не минимизи рует показатель качества объекта. Это обстоятельство заставляет обратиться к коррекции направления спуска в процессе самого спуска.
Коррекцию можно производить различным образом. Одним из простейших способов является введение незна-
а для случайного поиска с линейной тактикой — случай ное направление S, т. е. алгоритм (17.2.15). Для наиско рейшего спуска в случае квадратичной формы при условии (16.2.25) в главе 16 была указана (16.2.26) оценка кри терия (17.2.27):
|
|
q < i |
(17.2.29) |
где |
X — мера |
овражности функции качества. |
|
же |
Для случайного поиска с линейной тактикой в тех |
||
условиях |
получепа [17.4] следующая |
оценка для |
|
п — 2: |
|
|
|
|
|
Щ 1 ) < 1 ---- j f i j - p |
(17-2.30) |
где М — знак математического ожидания. Это — осред нение по всем возможным реализациям случайного век тора S.
Как видно, при больших значениях параметра X > 5 случайный поиск более эффективен по выбранному кри терию.
Следует отметить, что при этом сопоставлении не учитывались затраты на оценку направления спуска. Здесь преимущества снова на стороне случайного по иска, которому требуется всего одна случайная проба.
Оценка градиента для метода наискорейшего спуска требует не менее (п + 1 )-й пробы.
Таким образом, метод случайного поиска с линейной тактикой по ряду критериев и соображений является более предпочтительным по сравнению с методом наи скорейшего спуска.
§ 17.3. Локальный случайный поиск
Локальность алгоритма поиска определяется его не зависимостью от предыстории. Так, рассмотренные выше алгоритмы случайного поиска с линейной тактикой явля ются нелокальными алгоритмами. Эта нелокальность вызвана процессом спуска, когда рабочие шаги повторя ются, т. е. жестко связаны.
Однако в нелинейной обстановке часто нецелесообраз но повторять удачные шаги, так как обстановка значи тельно изменяется. В этом случае лучше избрать локаль ную (нелинейную) тактику, т. е. предпринимать последо вательно независимые попытки по уменьшению показа теля качества и исправлять ошибки, если они возникают. Если при этом воспользоваться случайными шагами S, то получим алгоритмы с «поощрением» случайностью, где элемент случайности S вводится как положительная реакция R +, а отрицательной реакцией R~ являются меры по устранению послед ствий неудачного случайного шага. Этот алгоритм можно записать в виде
|
I S |
при |
R +, |
|
|
|
|
|
AXi+1 = |
[ |
при |
R- . |
|
|
|
/ |
|
|
|
(17.3.1) |
Рис. 17.3.1. |
Граф |
алгоритма |
|||
Как видно, оператор слу- |
случайного поиска с нелиней- |
|||||||
|
ной тактикой, |
|||||||
чайного |
шага |
S вводится |
|
|
|
|
|
|
как поощрение на удачный шаг R + — (AQ <[ 0). Отрица |
||||||||
тельная |
реакция |
R~ вызывает действие |
(F —оператор |
|||||
исправления, папример, F (АХ,) = |
—АХ,), направленное |
|||||||
на преодоление |
полученного |
отрицательного |
эффекта |
|||||
R~ = (AQ !> 0), |
после |
чего |
снова следует |
случайный |
||||
шаг S. |
Работоспособность этого |
алгоритма |
получена за |
счет исправления ошибок, допущенных в процессе случай ных проб.
На рис. 17.3.1 показан граф этого алгоритма, где в скобках обозначены условия переходов. Матрица пере ходов его имеет вид
S |
Р |
1 — Р |
R- |
|
(17.3.2) |
1 |
0 |
Для эффективной работы этого алгоритма объект вовсе не должен обладать свойством «гладкости» (17.2.11). Единственное условие, накладываемое на объект, за ключается в том, чтобы вероятность Р была не очень мала.
Различные алгоритмы локального случайного по иска отличаются различными способами определении