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

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

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

постоянной. Это приводило к тому, что в пространстве параметров система могла двигаться лишь в строго опре­ деленных направлениях, число которых, как показано выше, было равно 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)