книги / Системы экстремального управления
..pdfпостоянной. Это приводило к тому, что в пространстве параметров система могла двигаться лишь в строго опре деленных направлениях, число которых, как показано выше, было равно 2П.
Подобный дискретный характер алгоритмов самообу чения хотя прост, но обладает рядом недостатков. Одним из самых существенных недостатков дискретного обуче ния является невозможность перестроить память с одного направления на другое — соседнее, минуя равновероят ное состояние памяти по всем координатам. Грубо говоря, для перестройки памяти на новое направление нужно за быть все прошлое, даже если это новое направление незна
чительно |
отклоняется от исходного. |
|
|
|
|
||||||
Это происходит из-за того,что при покоординатном поис |
|||||||||||
ке система может двигаться и обучаться лишь в определен |
|||||||||||
ном числе фиксированных направлений; отсутствие «про |
|||||||||||
межуточных» |
направлений |
и |
делает |
покоординатное |
|||||||
обучение |
иемобильпым |
при |
отслеживании |
медленного |
|||||||
изменения |
градиентного |
направления. |
Необходимость |
||||||||
преодоления этого недостатка заставляет обратиться к |
|||||||||||
самообучению |
с |
непрерывным |
спектром |
направлений, |
|||||||
в которых |
может обучаться |
система. Поэтому будем |
|||||||||
алгоритм такого самообучения называть непрерывным. |
|||||||||||
4. |
А л г о р и т м |
н е п р е р ы в н о г о |
с а м о |
||||||||
о б у ч е н и я . |
Пусть W — тг-мерный вектор W = |
(ц^,... |
|||||||||
... , юп), характеризующий вероятностные свойства по |
|||||||||||
иска, причем |
при |
wt = |
0 (г = |
1, |
., гг) |
поиск |
предпо |
лагается равновероятным. Тогда направление случайного шага удобно представить в виде некоторой векторной функции
АХ = aF (S, W), |
(17.4.17) |
где а — модуль шага, В — по-прежнему единичный слу чайный вектор, равномерно распределенный во всех нап равлениях пространства параметров, F — некоторая не прерывная единичная векторная функция двух перемен ных S и W. Эта функция непрерывна по модулю и нап равлению. Для различных алгоритмов функция может быть различной, но при этом она должна удовлетворять следующим требованиям:
где 0 = (0, 0,..., 0). Это значит, что при нулевом значении вектора обучения W поиск должен быть равновероят ным;
2) |
М [F (S, W)] = |
dir W, |
(17.4.19) |
||
т. е. |
математическое |
ожидание |
направления |
случайного |
|
шага |
должно совпадать с направлением вектора |
обуче |
|||
ния W\ |
случайного |
шага D [F (S, W)] |
должна |
||
3) |
дисперсия |
быть обратно пропорциональной модулю вектора W. При выполнении всех этих условий функция F реали
зует пространственное распределение случайного шага, которое может целенаправленно изменяться по мере на
копления |
опыта работы системы. |
функций можно пред |
|||
В качестве примера подобных |
|||||
ложить, например, следующие: |
|
|
|||
S - f W |
F2 = S при |
W |
- 5 | < / ( | И Ч ) , |
||
|S + W| |
|
\ w \ |
|
(17.4.20) |
|
|
|
|
|
|
|
где / ( •) — монотонная убывающая скалярная |
функция |
||||
0 / (•) |
2, |
причем / (0) = 0. |
Заметим, что |
функция |
|
F2 описывает попадание в тг-мерный гиперконус с углом |
|||||
4arcsm |
12 1 |
в вершине. |
|
|
|
Алгоритм непрерывного самообучения можно предста вить в виде векторного рекуррентного соотношения, свя зывающего два следующих друг за другом вектора памяти:
|
WN+1 = kWN - 6 (A Q N + d)A X N, |
|
(17.4.21) |
||
где |
к — коэффициент запоминания |
(0 |
к |
1), Ô — |
|
параметр скорости |
обучения (Ô ]> 0), AQN — прираще |
||||
ние |
функции качества на N -м шаге, |
d — коэффициент |
|||
«скептицизма» (d |
0), АХ^ — вектор iV-ro шага системы |
||||
в пространстве параметров. |
|
|
|
Нетрудно заметить, что при работе по этому алгоритму самообучения и при выполнении условий, накладывае мых на функцию F, вектор W стремится перестроиться в направлении, обратном градиенту функции качества оптимизируемой системы. Это значит, что шаги поиска будут в среднем направлены в сторону быстрейшего уменьшения функции качества.
Модуль вектора W так же, как и при дискретном обу чении, целесообразно ограничить сверху:
| W | < с. |
(17.4.22) |
Рассмотренный алгоритм уже может перестраивать си стему на «соседнее» направление в случае, если оно более благоприятно, минуя при этом равновероятную стадию.
§ 17.5. Коллектив оптимизирующих автоматов
Одним из интересных алгоритмов случайного поиска с обучением является так называемый автоматный поиск, использующий понятие коллектива стохастических авто матов.
Идея автоматной оптимизации заключается в том, что бы каждым параметром оптимизации управляли стохасти ческие автоматы^*, независимые друг от друга (рис. 17.5.1).
Рис. 17.5.1. Блок-схема оптимизации коллективом автоматов.
Входом такого автомата является знак приращения пока
зателя качества AQN = QN — QN-I » a выходом — знак изменения i-ro параметра:
|
Д аГ = Л , |
|
где ai = const 0, |
модуль шага |
вдоль г-го параметра |
<x[N) = + 1 — знак |
этого шага на N -м такте. |
Автомат, используемый для целей автоматной оптими зации, представляет собой конечный автомат с 2т состоя
ниями Slt |
S2m (рис. |
17.5.2). Причем в первых т |
состояниях делается шаг в |
положительном направлении |
|
(а = -f- 1), |
a в остальных т — в отрицательном направ |
|
лении (а = |
— 1). |
|
Таким образом, направление рабочего шага по i-му параметру однозначно определяется состоянием i-ro авто мата (г = 1 , . . . , ?г):
_ | + 1» |
если S = Sj (j = |
1, |
... , т), |
|
а*— { — 1, |
если S = Sj (/ = |
т |
+ 1, ... , 2т). ' |
' |
Состояние автомата изменяется па соседнее слева или спра ва в зависимости от его входа в соответствии с принципом линейной тактики. Этот принцип прост и естествен: зак реплять то действие, которое поощряется, и стараться
сс-+! |
I |
|
се = - / |
|
________ А______ „ |
________А______ , |
|||
f |
\ |
I |
' |
О С |
О О |
О О |
О |
||
£/ ^2 |
Sm-jSm | |
|
&/71+ |
£2тЧ$2т |
Рис. |
17.5.2. Состояния |
автомата. |
сменить на обратное то, которое наказывается. В данном случае поощрение соответствует AQ •< 0, а наказание AQ 0. Поэтому алгоритм смены состояний должен иметь следующий вид:
при AQ < 0 действуем по алгоритму А 0:
если /W = 1 ,
j(N) — |
е с л и |
(17.5.2) |
j(.N+1) _ |
1 f е С л И j(N) |
|
j(N) |
m , |
|
|
если |
= 2m, |
a при AQ 0 действуем алгоритмом А г:
jW _j_ |
если |
^ m, |
(17.5.3) |
j(N+t) |
если |
]> m. |
|
j(.N) — |
|
Здесь /W — номер состояния на N -м такте поиска. Граф этого алгоритма показан на рис. 17.5.3, где нагляд но видно, что автомат «старается» закрепить то действие, которое привело к успеху (AQ <С 0), и сменить на обратное действие, вызвавшее AQ 0.
Детерминированный алгоритм линейной тактики мож но записать в виде
■^лг+1 == CNA 0 + CNAx, |
(17.5.4 |
где CN —двоичная функция штрафа, которая определяет ся естественным образом:
CN ~ |
|
1 (штраф) при AQN > О, |
(17.5.5) |
|
О |
(нештраф) при A(?N <C0- |
|||
|
|
CN — отрицание функции штрафа:
{ 1 при CN = О,
(17.5.6)
О при cN = 1 .
Алгоритм изменения состояния автомата (17.5.4) зак лючается в том, что производится действие А 0 в случав
б ) âQ>0
Рис. 17.5.3. Граф переходов автомата с целесообразным поведе нием .
успеха (нештрафа) и действие А г при неуспехе (штрафе). Однако легко показать, что такой детерминированный ал горитм будет плохо работать. Действительно, при одина ковых начальных условиях всех автоматов и одинаковом объеме памяти 2т их реверс будет происходить одновре менно, так как их входы одинаковы. А это означает, что в пространстве параметров оптимизируемая система будет двигаться вдоль одной прямой, лишь меняя направление в момент реверса. Внесение разнообразия в начальных ус ловиях немногим улучшает положение, так как через не которое время автоматы синхронизируются, и система начинает двигаться вдоль некоторой траектории, положе ние которой зависит от начальных условий.
Выходом из создавшегося положения является вве дение несиихронностн в работу автоматов. Эта несинхронность может быть введена различным образом. Рассмот рим способы ее введения.
4. Различность и несимметричность памяти. Эта мера образуется путем введения различия в структуре автома тов — различный объем памяти и несимметричность сос тояний.
2.Введение случайных «сбоев». Эта мера заключается
втом, что с определенной вероятностью каждый из авто матов «сбивается» и не совершает перехода в состояние, которое ему предписывается алгоритмом (17.5.4). Запишем
условно этот алгоритм в виде формулы
An+1 = (1 — q)(cNA0+ C N A x) + qA'. |
(17.5.7) |
Здесь q — вероятность «сбоев». Это выражение означает, что с вероятностью 1 — q автомат изменяет свое состоя ние по алгоритму (17.5.4), а с вероятностью q — по алго ритму А':
/№-1) = /(N), |
(17.5.8) |
т. е. не изменяет своего состояния (заметим, что «сбой» каждого автомата не зависит от состояния других автома тов).
Как видно, введение «сбоя» делает автомат поиска сто хастическим.
3. И наконец, несинхронность может быть введена пу тем допущения обратного действия с определенной вероят ностью. Это означает, что вместо действия А 0 с заданной вероятностью может делаться действие Аг и наоборот. Алгоритм в этом случае записывается в виде
A N +1 = р (сNA0+ CN A X) + q (CN A0-f cNAx). |
(17.5.9) |
1 |
состоя_ |
Это означает, что с вероятностью р = 1 — Я^> 2 |
ние автомата изменяется по алгоритму (17.5.4), а с вероят ностью q <. принимается обратное решение (т. е. вмес то увеличения номера состояния он уменьшается и наоборот). Таким образом, ввиду того, что чаще (р ф) принимается «правильное» решение, сохраняется тенденция
к уменьшению показателя качества, так как действие, приведшее к удаче, чаще подкрепляется, а неудачное действие чаще наказывается. Но так как р Ф 1, то память автоматов изменяется несинхронно, каждый раз некоторая малая случайная часть автоматов совершает «неразумные поступки», т. е. изменяет свою память не по алгоритму линейности тактики (17.5.4), а наоборот. Это и снимает опасность синхронизации автоматов.
P |
P |
Р |
\? |
P |
P |
Р |
у |
у |
у |
\у |
У |
У |
У |
|
|
a) |
|
|
(AQ<0) |
|
р |
P |
P |
\Р |
P |
P |
Р |
Ч У |
У |
'Р |
У |
У |
У |
|
|
|
б) |
|
с=/ |
Щ>0) |
Рис. 17.5.4. Граф переходов стохастического автомата.
Рассмотренный алгоритм наиболее распространен. Поэтому исследуем его подробнее. Запишем его в виде
- 4 jv + i |
= CJV В 0 - f CpjBy, |
(17.5.10) |
где В 0 — алгоритм изменения памяти автомата |
при не- |
|
штрафе (с = 0), а ^ |
— при штрафе (с = 1). Эти алгорит |
мы представляют собой стохастические правила перехода из одного состояния автомата в другое. На рис. 17.5.4 по казаны графы переходов для обоих алгоритмов, где рядом со стрелками, обозначающими возможные переходы, ука заны вероятности этих переходов р и g = 1 — р. Автома ты В 0 и By можно представить в виде стохастических мат риц. Напомним, что стохастической матрицей называется квадратная матрица, каждый элемент которой Ьц обозна чает вероятность перехода из i-ro состояния в /-е. Число строк и столбцов стохастической матрицы равно числу состояний автомата. А так как из любого состояния всег да имеется переход в другое или то же состояние, то сумма элементов любой строки стохастической матрицы
всегда равна единице. Эти матрицы имеют очевидную запись:
р я 0 0. ..0 0 |
0 |
я р 0 0.,..0 |
0 0 0 |
|||
р 0 я 0....0 0 0 |
я 0 р 0.,..0 |
о |
0 0 |
|||
0 р 0 я •..0 0 0 |
0 я 0 р .,..0 |
0 |
0 0 |
|||
• |
|
* , Вг = |
• |
• |
• |
• |
0 0 0 0..,.о р |
0 |
0 0 0 |
0.. р |
0 |
я 0 |
|
0 0 0 0.. •я |
0 р |
0 0 0 0.. .0 р |
0 я |
|||
0 0 0 0..,.о |
я |
р |
0 0 0 |
0....0 |
0 |
р я\ |
(17.5.11)
Величина р = 1 — g в значительной мере определяет ха рактер поведения автоматов и, следовательно, характер процесса оптимизации.
При большем р поиск имеет ярко выраженный локаль ный характер. Однако при р æ у система блуждает
по всему пространству параметров, ненадолго задержи ваясь в локальных экстремумах. Этот реяшм соответствует глобальному поиску. Как видно, изменяя один параметр р, можно существенно менять характер поиска от локального до глобального. В этом несомненное преимущество кол лектива оптимизирующих автоматов.
Несложный анализ показывает, что рассмотренный коллектив оптимизирующих стохастических автоматов фактически реализует алгоритм случайного поиска с обу чением. Однако имеется разница.
В случайном поиске с обучением память изменялась детерминированно, например, по формуле (17.4.14), а рабо чий шаг АХ являлся реализующей случайного про цесса, свойства которого зависели от состояния памяти.
В случае коллектива оптимизирующих стохастических автоматов рабочий шаг АХ вполне детерминирован сос тоянием памяти автоматов, т. е. является регулярной функцией памяти, которая изменяется случайно.
Таким образом, отличие заключается в месте прило жения элемента случайности. Случайный поиск (§ 17.4) использует случайность на стадии генерирования рабочего шага. Коллектив автоматов утилизирует случайный меха низм раньше, в момент изменения состояния памяти.
Г Л А В А 18
НЕПРЕРЫВНЫЙ МНОГОПАРАМЕТРИЧЕСКИЙ ПОИСК
§ 18.1. Синхронное детектирование многопараметрических безынерционных объектов
Идея синхронного детектора может быть применена и для оценки градиента многопараметрической функции качества Q = Q (хх,..., хп) [18.1]. Для этого необходимо на оптимизируемые параметры хх, ., хп наложить воз мущения fx (t), /2 fn (t) и выход объекта пропус тить через синхронные детекторы — блоки произведения
Рис. 18.1.1. Блок-схема синхронного детектирования многопараметрпческого объекта.
выхода на возмущения fx (t), ..., fn (t) с последующей фильтрацией. Выходы синхронных детекторов при неко торых несущественных ограничениях, наложенных на fx (t), ..., fn (t), будут пропорциональны составляющим
градиента функции качества 9Q |
9Q |
9Q |
Покажем |
дхх ’ |
9x2 ’ ' |
‘ ‘ ’ дхп |
|
это для объектов различного рода, т. е. для функций Q (X ) |
|||
различного вида. |
|
многопараметри |
|
Схема синхронного детектирования |
ческого объекта показана на рис. 18.1.1. |
Здесь А х, А 2,... |
|
, А п — выходы блоков |
произведения, |
Ф — осредняю- |
щие фильтры, a Bi, |
Вп — сцгнзлы |
на их выходе, |
Определим из{. |
|
|
На выходе безынерционного объекта имеем
Q (О = Q Iх! + Д (*)> ж2 + Д (О,—, *n + Д (*)!• (18.1.1)
Пусть возмущения Д (t), Д (*)»•••> Д» (0 малы по моду лю. Тогда, разлагая функцию Q = Q (%,..., я„) в ряд Тей лора по этим малым возмущениям и ограничиваясь чле нами первого порядка малости, получаем
Q(t)= Q (ÆJ., |
-Щ- Д (t) + |
+ -Ц -Ы 0+ .■. + ■!£ /„(<), (18.1.2)
или, вводя векторные обозначения,
2rad |
О - Ш - |
J 2 . |
М .\ |
(18.1.3) |
graa |
V — у дх1 |
. дх2 ’ " - ’ дхп ) ’ |
|
F(t) = [Д(<), Д (0 .-.м/п(0 1.
можно (18.1.2) записать в виде
<?(*) = <? (.X) + [F (*), grad <? (Z)], |
(18.1.4) |
где квадратными скобками, как обычно, обозначено ска лярное произведение векторов.
Определим выходы А п синхронных детекторов (будем рассматривать i-й):
М О = Q (0-Л (0 = /*(0<? (*1,• • •,*■) + -g-Д (ОД (0 +...
• • • + |
г |
(0 + •. • + -%£-fn(t)fi (О* |
(18.1.5) |
|
Tl |
|
Пусть фильтр Ф реализует операцию осреднения на базе Т:
|
Г |
|
р |
Ai(t)dt (i = 1 , . . . , п). |
(18.1.6) |