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

книги из ГПНТБ / Сейдж Э.П. Идентификация систем управления

.pdf
Скачиваний:
75
Добавлен:
23.10.2023
Размер:
7.91 Mб
Скачать

5.31 ИСПОЛЬЗОВАНИЕ СТОХАСТИЧЕСКОЙ АППРОКСИМАЦИИ 1?1

Можно проверить, что получающаяся оценка 0 является несмещенной. Предполагая, что w (к) доступны наблюде­ нию, приходим к следующему алгоритму стохастической аппроксимации

0 (А + 2N + 1) = е (к) + К (k/2N + 1) w + 2N) X

 

X [г (к -(- 2N + 1) -

 

wT(к + 2N) 0 (А)]

(5.3.59)

для к — 0, 2N + 1,

4/V -f- 2, ... Реализации разнесены на

2N + 1

временной

такт

(х — iV-вектор),

так

как из

(5.3.57)

видно, что автокоррелированность последователь­

ности у (к) распространяется на

2 N такта.

Если

вместо

w (к) наблюдается аддитивная

смесь с помехой

 

 

то (к) =

w {к)

+

v (к),

 

(5.3.60)

где v (к) — белый шум с нулевым средним, то можно, по­ вторяя рассуждения, приведшие к (5.3.59), и учитывая аналогичную предыдущему примеру составляющую сме­ щения, получить

0 (А + 2N + 1) = 0 (к) + К (A/2/V + 1) ( т (к + 2/V) X

X [z (к +

2N +

1) -

т Т(А +

2N) 0 (A)l -f Vvb (к)},

(5.3.61)

где

 

 

 

 

 

mт(/с) =

[то (А -

2

N + 1),

..., то (А — 1), то (А)].

(5.3.62)

Следует отметить, что пользоваться алгоритмами иденти­ фикации весовой функции 0 (к) или параметров при управ­ лении Г можно, только располагая результатами наблю­ дений входных сигналов. В результате идентификации по­

лучаем оптимальную оценку вектора параметров 0. Из первого уравнения (5.3.55) имеем

 

qn

 

0jV

®N+1 * ••®2N -l

“I

§2iv“j

 

 

Г

Г =

1

»

a = ®iV-l

0jv

• • 02iV—2

 

®2N-l

 

. . .

 

 

 

л

 

 

L

Si

J

 

02

- • • 0^v

-

QN+l _

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

172

СТО ХАОТИЧЕСКАЯ АППРОКСИМАЦИЯ

[ГЛ . 5

За справками читатель может обратиться к превосход­ ным работам Саридиса и Штейна [132] и Холмса [56], где рассматривается несколько отличных подходов к решению задачи идентификации методами стохастической аппрок­ симации.

5.4.ВЫВОДЫ

Вэтой главе представлено эвристическое введение в тео­ рию стохастической аппроксимации. Результаты приме­

нения алгоритмов стохастической аппроксимации на конеч­ ном интервале времени оказались довольно близки к рас­ смотренным ранее результатам применения градиентных методов. Рекуррентные алгоритмы стохастической аппро­ ксимации (в реальном масштабе времени) весьма напоми­ нают результаты, полученные в теории линейной фильтра­ ции в случае линейных систем, и, как мы увидим в главе 7, последовательные алгоритмы решения двухточечной крае­ вой задачи по методу инвариантного погружения.

Глава 6

КВАЗИЛИНЕАРИЗАЦИЯ

6.1.ВВЕДЕНИЕ

Впоследних двух главах были развиты прямые вычис­ лительные методы для идентификации систем. В этой главе рассматривается непрямой вычислительный метод, пред­ назначенный для решения задач идентификации, известный под названием метода квазилинеаризации. Напомним чи­ тателю, что под непрямыми методами понимаются методы решения двухточечной краевой задачи, которая возникает

втеории оптимизации. Квазилинеаризация, которую часто упоминают как обобщенный метод Ньютона — Рафсона, обязана своим появлением в основном Веллману и Калабе

[16]. Первые применения метода квазилинеаризации к идентификации систем принадлежат Детчменди и Шридхару [30] и Кумару и Шридхару [80]. В работе Сейджа и Айзенберга [120] рассматриваются обобщения ранее полу­ ченных результатов применительно к некоторым задачам моделирования систем. Изучению дискретного метода ква­ зилинеаризации уделено меньшее внимание, хотя у Энрики [46] можно найти доказательства сходимости для некото­ рых классов задач. Сейдж и Бурт [118], Сейдж и Смит [128] рассматривали применение дискретной квазилинеаризации в задачах идентификации систем.

В этой главе будут развиты методы квазилинеаризации как для непрерывных, так и для дискретных моделей. Не­ прерывный случай рассматривается в разделе 6.2, а дис­ кретный — в разделе 6.3. Особое внимание уделяется кон­ струированию алгоритмов решения двухточечной краевой задачи, поставленной в главе 3. Кроме того, будет показа­ но, что квазилинеаризацию можно использовать как прямой метод решения некоторых классов задач иденти­ фикации.

Алгоритм квазилинеаризации представляет собой ите­ ративный алгоритм, для сходимости которого часто требу-

174

КВАЗИ ЛИНЕАРИЗАЦИЯ

[ГЛ. В

ется очень хорошее начальное приближение. Один из ме­ тодов, который может быть использован на первых шагах алгоритма квазилинеаризации, известен под названием дифференциальной аппроксимации и рассматривается в разделе 6.4. К сожалению, применимость этого метода ограничена рядом строгих предположений, тем не менее дифференциальная аппроксимация дает эффективный спо­ соб реализации начального участка алгоритма квазили­ неаризации.

6.2. НЕПРЕРЫВНЫЕ СИСТЕМЫ

Рассмотрим решение следующей многоточечной крае­ вой задачи (МТКЗ). Необходимо найти такую траекто­ рию движения V (t), где t €E U0, tf] для TV-мерной нели­ нейной неавтономной системы:

т(0 =

П т(0. П ,

(6.2.1)

удовлетворяющую системе

линейных

ограничений

C(t})v(tj) =

b(fj),

; = 1,2,

(6.2.2)

где tj £Е U0, tf\. Для

простоты будем

предполагать, что

моменты времени tj упорядочены по возрастанию так, что tj <( tk, если / к. Сейчас мы не будем интересоваться тем, согласованы ли ограничения (6.2.2) с дифференциальным уравнением (6.2.1). Очевидно, что ограничения не могут быть выбраны произвольно. Предположим, что заданные ограничения таковы, что среди решений уравнения (6.2.1) существует решение, удовлетворяющее условиям (6.2.2). Впоследствии мы вернемся к вопросу о согласованности

(6.2.1) и (6.2.2).

Если условий N и все они заданы в один и тот же мо­ мент времени, то задача будет тривиальной, так как тогда уравнение (6.2.1) можно было бы легко проинтегрировать. Интересен случай, когда условия на траекторию заданы для разных моментов времени. Например, особый интерес вызывает случай, когда N/2 условий заданы в начальной точке t0, а остальные N/2 условий — на конце траектории при t = tf, т. е. случай двухточечной краевой задачи (ДТКЗ), которая впоследствии будет исследована более подробно.

6.2]

НЕПРЕРЫ ВНЫ Е СИСТЕМЫ

175

Если условия задачи распределены на отрезке U0, tj), то задача (6.2.1) поддается решению только для наиболее тривиального случая линейного дифференциального урав­ нения, а для отыскания решения, которое удовлетворяет распределенным во времени условиям, приходится обра­ щаться к итеративным методам. Рассмотрим траекторию T{t), которая, аппроксимируя решение системы (6.2.1), (6,2.2), сама может не удовлетворять ни уравнению (6.2.1), ни условиям (6.2.2). Вопрос о выборе такого начального приближения будет обсуждаться позднее. Если разложить Г ty (t), /] в ряд Тейлора в окрестности у» (t), то из урав­ нения (6.2.1) получим

Yi+1 = Г [у1 (О, П +

[Yi+1 -

У* (01 +

 

ОУ (Ч

 

+ члены более высокого

порядка. (6.2.3)

Здесь у (t) снабжена индексом i + 1, чтобы подчеркнуть итеративный характер алгоритма решения задачи.

Допустим, что траектория yi+1 (t) близка к начальному приближению у1(t), и пренебрежем членами второго по­ рядка малости в (6.2.3). В результате для yi+1 (t) получим линейное неоднородное уравнение с переменными коэф­ фициентами

Y 1+1 ( 0 =

] Y ' +1 ( 0 + [ Г I Y ; ( 0 , О

ОУ КЧ

L

Э1Ч < 9’ я у‘ («)] dyl(t)

(6.2.4)

Решение этого уравнения имеет вид

у*« (0 = ^ i+1 (t) yi+1 (t0) + Pi+1 (t),

(6.2.5)

где {2i+1 (t) удовлетворяет следующему дифференциально­ му уравнению:

jjHi ,t) = 9Г [у{

Qi+i

(6.2.6)

df (f)

 

 

fii+1(<o)=E

 

(6-2.7)

a pi+1 (t) есть частное решение неоднородного уравнения

pi+1 (0 = Г [у*(0. 0 -

[Г (0 - РЙ1 (01. (6.2.8)

и \

( Г )

Pi+1(«o) = 0.

(6.2.9)

176 КВАЗИЛИНЕАРИЗАЦИЯ [ГЛ . 6

Видно, что процесс построения уг>1 (t) сводится к простым дифференциальным уравнениям с единственным началь­ ным условием yi+1 (t0).

Необходимо так выбрать yi+1 (f0), чтобы удовлетворить условиям (6.2.2). Подставив в (6.2.2) решение (6.2.5), по­

лучим

 

 

С (*;) 1ST1 &) Г 1 (t0) + рг+1 Ш = Ь (t}),

/ =

1, 2 ,..., т

или

 

(6.2.10)

 

 

С (t}) Qi+1 (Ц)yi+1 (t0) = b (t}) - C (t}) pi+1 (t}),

j =

1, 2 ,..., m.

 

 

(6.2. 11)

Используя эти m уравнений, можно в матричной форме получить одно линейное алгебраическое уравнение для

Yi+1 (*о)

Ayi+1 (f0) =

b,

(6.2.12)

где

 

 

 

 

 

С ( h )

Q U l

( h )

 

C

(f2)

Q i+1 ( h )

(6.2.13)

A =

 

 

 

 

. C

( / „ , )

Q t+1 (fm ) _

 

b (<1) -

C

(t i)

p i+1 ( h )

 

b (fa) -

C

(fa)

p i+1 (f2)

(6.2.14)

 

 

 

 

 

_ b (f,n )

C

( t m ) p*+1(fm )_

 

Если условия (6.2.2) и уравнение (6.2.1) совместимы, то существует единственное решение yi+1 ((„) уравнения (6.2.12), т. е. ранг матрицы А совпадает с рангом расши­ ренной матрицы [А |Ь]. В этом случае

V*+1 (*о) = А-ч,.

(6.2.15)

Значение yt+1 (t0) используется в (6.2.5) для отыскания но­ вого приближения yi+1 (t), t £Е U0>h 1. Эта траектория бу­ дет удовлетворять условиям (6.2.2), но в общем случае не является решением уравнения (6.2.1), так как получена из линеаризованного уравнения (6.2.4). Однако теперь можно

6.2] НЕПРЕРЫ ВНЫ Е СИСТЕМЫ 177

заменить у1(£) на yui (t) и повторить описанную выше про­ цедуру.

Используя эту итеративную процедуру, получаем по­ следовательность траекторий {у* (<)}, которая должна схо­ дится к решению МТКЗ. Факт сходимости может быть уста­ новлен проверкой скорости изменения у1(£„). Можно по­ казать (Веллман и Калаба [16]), что если эта процедура сходится, то сходимость является квадратической, т. е. чрезвычайно быстрой. С другой стороны, на примере легко показать, что для обеспечения сходимости обычно требу­ ется подобрать очень хорошее начальное приближение. Поэтому для формирования начального приближения в ал­ горитме квазилинеаризации часто используются градиент­ ные или аппроксимационные процедуры.

К сожалению, для любой сколько-нибудь нетривиаль­ ной практической задачи процедура квазилинеаризации предъявляет серьезные требования к объему машинной па­ мяти. Отметим, что для отыскания yi+1 (t) по yi+1 (г0) не­ обходимо найти и Qihl (!) и pi+1 (t). Допустим, что длина отрезка U0, tf] равна 10 секундам, а шаг разбиения сос­ тавляет 1/100 секунды. Тогда, если размерность у равна

десяти, то

для

записи

ili+1 (<)

необходимо

запомнить

(10 х 10) х

(10)

х 100 =

100 000

чисел, что,

очевидно,

является серьезнейшим препятствием.

 

Однако,

к счастью, требования к объему памяти можно

существенно ослабить, воспользовавшись другой процеду­

рой.

Вместо того,

чтобы запоминать значения

Q1*1 (t) и

Р111

(t), их можно сразу же использовать для вычисления

А и Ь по формулам (6.2.13) и (6.2.14), все остальное «не

запоминается».

Найдя из уравнения (6.2.12) yi+1 (t0), вновь

вычисляем Qi+1

(t)

и pi+1 (t),

одновременно

определяя

Yl+1

(t), которое запоминается,

тогда как fit+1 (t) и рг+1 (<)

в машинной памяти не сохраняются. Теперь все готово для того, чтобы повторить вычисления, используя улучшен­ ную оценку траектории. В этой процедуре необходимо за­ поминать только vi+1 (t), что требует хранения только 10 000 чисел. Конечно, за этот выигрыш приходится рас­ плачиваться двукратным решением уравнения (6.2.6) и

(6.2.8).

некоторых задач необходимость запоминания

Для

Yt+1 (t)

может превратиться в проблему. Если бы продол-

лщтельность временного интервала была равна 100 секуц*

178

КВАЗИЛИНЕАРИЗАЦИЯ

[ГЛ. 6

дам, то yi+1(t)

было бы представлено 100 000 чисел. Можно

было бы запомнить только часть этих значений (скажем, 1/10), а для заполнения пропусков использовать интерпо­ ляцию. Успешное применение подобного подхода означало бы, что первоначально было выбрано слишком мелкое раз­ биение, а проблему размерности можно было бы решить укрупнением шага. И в этом случае для решения задачи можно использовать квазилинеаризацию, хотя алгоритм должен быть несколько модифицирован.

Вместо того, чтобы искать (t), решая уравнение (6.2.5) , можно просто проинтегрировать уравнение (6.2.1) с начальным условием yi+1 (t0) из (6.2.12). В этом случае требования к объему памяти минимальны, а уравнения (6.2.6) и (6.2.8) на каждой итерации интегрируются только один раз, поэтому затраты машинного времени лишь не­ сколько превышают машинное время, необходимое для решения задачи прямыми методами.

Отсюда, казалось бы, вытекает, что этот подход пред­ почтительнее двух предыдущих. Однако это впечатление обманчиво, так как на практике построение приближений с помощью интегрирования уравнения (6.2.1) приводит к тому, что алгоритм расходится. Это легко объяснить. Если используется уравнение (6.2.5), то испытываемая траекто­ рия, удовлетворяя условиям (6.2.2), не удовлетворяет уравнению (6.2.1). Если же эта траектория получена как решение уравнения (6.2.1), то она не удовлетворяет усло­ виям (6.2.2). Если испытываемая траектория удовлетво­ ряет краевым условиям, то она совпадает в этих точках с точным решением задачи и, кроме того, в силу гладкости аппроксимирует это решение в окрестности точек задания условий. С другой стороны, если решение просто удовлет­ воряет уравнению (6.2.1), то нет никаких оснований пола­ гать, что оно совпадает с решением задачи (6.2.1), (6.2.2) хотя бы в одной точке. По этой причине обычно для вы­ числения приближений желательно пользоваться уравне­ нием (6.2.5), если объем машинной памяти это допускает.

Как уже отмечалось, одной из основных неприятностей при использовании квазилинеаризации является сильное сужение области сходимости. Поэтому для построения хорошего начального приближения часто требуется при­ менять градиентные алгоритмы или алгоритмы дифферен­ циальной аппроксимации.

6.2]

НЕПРЕРЫ ВНЫ Е СИСТЕМЫ

179

Рассмотрим применение алгоритма квазилинеаризации к решению двухточечной краевой задачи, возникающей в связи с идентификацией систем. Ряд таких ДТКЗ был по­ ставлен в главе 3; в целях сокращения изложения будет рассмотрена ДТКЗ наиболее распространенного вида. Решения более общих задач могут быть получены анало­ гично. Напомним уравнения (3.2.37)—(3.2.39), описываю­ щие задачу

*(0 = f [х (О, П — G [х (О, t] ф№(/) GT (0, t\ к (0,

(3.2.37)

i

(0 =

дх (г) q

(О {z (0 -

h [i (0, ш -

 

_

dfT [x(Q,Q

^ .

Э (Хт (О G [х (0, г]

(г) GT [х (0, Q)

 

9х (()

' +

 

Эх (0

 

^

 

 

 

 

 

 

 

(3.2.38)

 

^ (*о) =

— Vx1^ ) [x(ifo) — fAx До)].

h(tf) = 0-

(3.2.39)

Запишем

уравнения

(3.2.37) и

(3.2.38)

в виде

 

 

* (0 =

Г1[х (0 Д (0 Д ], Я,(0 = Г ,1х(0,Х (0Д ].

(6.2.16)

Определение 1\ и Г2 очевидно. Напомним также читателю, что в описание «состояния» х (t) наряду с координатами состояния могут входить и параметры системы. Отметим, что смысл наблюдения за системой состоит в знании вида функций Гх и Г2.

Эту задачу можно записать в обозначениях уравнения

(6.2.1), если

положить

 

 

 

 

=

x ( t )

 

Ti[Y (0,0

 

 

 

 

 

y(t)

Г [У (t),t]

Г. It (0,0 ].

(6.2.17)

 

 

k(t)

 

 

 

Условия на

концах принимают

вид

 

 

 

C(f0)Y(<o) =

b(f0),

(6.2.18)

 

 

С (*,)?(*/) =

О Д ,

(6.2.19)

С (to)

- У - 1 (to)

 

Vx (/t0) Цх (to)

(6.2.20)

 

Ь(/0) —■

I

180

КИАЛИЛИНЕАРЙЗАЦЙЯ

1ГЛ. и

и

о

1

 

 

(6.2.21)

 

С (tf)

Ь iff) — 0.

Теперь ДТКЗ записана в форме уравнений (6.2.1), (6.2.2), и итеративный алгоритм ее решения можно полу­ чить, применяя квазилинеаризацию. Для этой задачи уравнения (6.2.6) и (6.2.8) приобретают вид

ЭГ1[yi(t), t]

1дГ2 [Vs (<),<]

 

 

д%} (0

|

дх{

 

 

Q1+1 (t) =

I

9Г2

(*), t]

Йг+1(0.

(6.2.22)

ari [у1(f),f)

 

 

дк1(<)

j

дк1 (t)

 

 

 

 

a n [y * <*м ]

a r 2[ y ’ (t ), t]

r 2[ v ’ ( t ) , t ] '

 

d x * ( t )

dx* («)

 

 

 

ЭГ1 [ v ‘

(t ), t ]

э г 2 [Y1 (f),«]

 

 

d V

(t)

ахл (t)

 

 

X [у* (0 Pi+1 (01-

(6.2.23)

fii+1 (t) является 2N x 2iV-MaTpHpefi, a pi+1 (t) — 2iV-Mep- ным вектором. Представим решения этих уравнений в виде

 

Qi+1 (г) =

 

(0

 

(0

 

 

 

 

(6.2.24)

 

 

 

< +1 (0

O^ 1W

 

 

pi+1(0

 

1>1+1 (!)

(6.2.25)

 

 

.

Р2+1(0

 

 

 

J ’

где все

(t) являются

N X

iV-матрицами, a pi+1 (t)

и р2+1 (t)

— iV-векторами.

Матрицы

А и b в уравнении

(6.2.12)

определяются формулами

 

 

A

 

!

i

(6.2.26)

 

U21(t^)

;

 

 

 

Q22(^)

 

 

■ -

V-1 (/„) flx (to)

'

 

 

 

P2(*/)

 

(6.2.27)

 

 

 

 

 

Соседние файлы в папке книги из ГПНТБ