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

Методы идентификации систем

..pdf
Скачиваний:
31
Добавлен:
15.11.2022
Размер:
5.2 Mб
Скачать

I -i CL4 k(ukukT) +qrururT =Pr_~l +qrururT k=1

Выражение для P~l требует обратимости матрицы Рг. Кроме того, должно быть известно начальное значение матрицы Р0. Применяя лемму

об обращении матриц, можно записать:

 

Рг = РгЛ - Pr-\H r(1+ Я ГТРГ_,ЯГ)-' Я гт />г_,,

(6.17)

где Н г = ^ и Л H \ = ^ U \ .

 

Поскольку 1 + НГТР^]НГ- скаляр, то при получении Рг по рекуррент­ ному соотношению (6.17) обращения матриц не требуется.

Начальная оценка Р может быть произвольной. Но для улучшения сходимости целесообразно использовать начальную оценку

Р0 = -1 , е —» О, 8

где I - единичная матрица.

Множитель 1/е можно выбирать почти произвольно в промежутке между 10 и значением, соответствующим наибольшему числу, которое может храниться в памяти используемой ЭВМ.

Пример. Рассмотрим систему у = атх, где а - вектор параметров, ко­ торый необходимо идентифицировать и где

*1 = X, = , У\ = 11,У2 = 4-

Пусть Р0 = - / = 105/ , е = 1(Г5, qx= q2= 1,

а х = a 0 + P lq lx i( y l - x J a 0),

Р{ =Р0 - Р0н {(1+ я / Р0я , Г я ; Р0

Я,т = ЛГ,Т = [4 3],

я , = * , =

 

(l + H jP o H .Y =

е + (4-4+3-3) е + 25

1 + [4 3 ]4 -

 

 

 

■[4 4 ].1 .|

1 '16

12'

£

12

9

Р = - / ---- ^

8

8+ 25

8 4- 25

16

12

 

 

 

(е + 25)-105/- 1 0 -

9

 

16

12

12

 

е + 25

= 4-103

(е + 2 5 )/-

9

 

 

12

 

9 + е

- 1 2

 

 

= 4*10'

16 + е

 

 

- 1 2

 

9 II

»—» О Vj

'9 + е

- 1 2 '

"4'

4

Б

'1,76'

-1 2

16 + е

11 = 4-103

3

8

• п =

3

Л 32.

 

 

 

 

 

Р2 = РХ- Р х-Я 2(1 + Я 2Т

Рх Н 2у ' Н 2Рхт =

 

 

 

 

 

'9 + е

-12 T l

2Т9 + е

- 12'

 

 

- 1 2 "

16106

 

16 + е1 г

4J|_—12

16 + е

 

 

-12

 

 

16 + 8

1 + 4-103[12^9 ^

-12 ' "Г

 

 

 

 

16 + е _2_

 

 

 

 

 

 

= 4-103Г((9 + е)1ООе + 92е + 2е2),

(-ЗООе- 26е2е2) "

 

25

[ (-ЗО О е-2 6 8 - 2е2),

((16 + е )2 5 е -7 е -е 2) '

 

Пренебрегая членами с е2, получим

 

 

 

 

'

0,507

-0,522'

,

 

'1,913'

 

 

Р2 =

 

 

а2 =

 

 

-0,522

0,629

 

 

Л 055.

 

 

Примечание.

1. Если пренебречь 8 в знаменателе е + 25 в выражении для Л , то Р2 становится нулевой матрицей и получить оценку невозможно.

2. В вычислении а, также нельзя пренебречь е, т. к. иначе а, сталовится нулевым вектором.

7. ИДЕНТИФИКАЦИЯ МЕТОДАМИ СТОХАСТИЧЕСКОЙ АППРОКСИМАЦИИ И ПОСЛЕДОВАТЕЛЬНОГО ОБУЧЕНИЯ

7.1. Метод стохастической аппроксимации

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

Процедура идентификации по методу стохастической аппроксимации

Рассмотрим дискретную стационарную систему xk =<t>(uk,ukA,...,p)

и измерительное уравнение

Уk ~ хк +vk>

где х, и, у, v - переменные состояния входа, выхода и шума в измерениях соответственно; р - вектор параметров, который необходимо идентифици­ ровать; Ф - заданная линейная или нелинейная функция, связывающая пе­ ременные хь ики неизвестный вектор параметровр, где ик = (м*,..., мА_,)т.

Подставляя это соотношение, преобразуем исходное уравнение к виду

Хк =Ф («*,/»).

Пусть размерность вектора параметров равна т.

Оценка р п+1 векторар (на п +1-м последовательном шаге) получается при выполнении алгоритма стохастической аппроксимации следующим образом:

Р п+1 = Рп ~~^п

У я =

где рп - оценка вектора р на п-м последовательном шаге; \|/„ - функция, которую можно оценить по измерениям у (ее математическое ожидание равно нулю при точных р , и)\ Хп- последовательность скалярных коррек­ тирующих коэффициентов.

Для обеспечения сходимости последовательность Хп должна удовле­ творять следующим условиям:

lim^n = °>

lim Z*-A =eo> lim Z^-* <°°-

n-*X>

Л-ЮО ^=1

n-fOOJt»l

Очевидно, любая функция вида А.* = — удовлетворяет указанным

условиям так же, как и многие другие функции параметра к. Вектор-функция \ук введена для описания функции градиента. По­

этому функцию 1|/Аможно выразить следующим образом.

Обозначим через М р ) скалярный показатель качества идентифика­ ции, определяемый в виде

 

 

 

AJ , '

dj t

'

dJk

 

k

Ф*

|_Ф'.*’

Ф 2.* ’

 

Ф-mk

где p\ k,

>• • •> Pm,к ~ элементы вектора параметровp kна fc-м шаге.

В результате имеем

 

 

 

 

ч>* =

= [ф К

л ) -

л ]

 

= [Ф(«*.р* ) - y k]gl (и Рк),

Ф*

 

 

Ф*

 

 

где

Ф а

Заметим, что функцию \|/* можно оценить по измерениям >>*, i/* и по предыдущим оценкам /?*_,.

Процедура идентификации, таким образом, зависит от начальных оценок р\ (здесь р\ обозначает начальное множество р и ..., рт) и от на­ чального значения коэффициента Х\.

Пример 1. Процесс оценивания \j/* можно проиллюстрировать, рас­ сматривая линейную систему, описываемую уравнением

Хк = Р Г ик = Ф ( и к,р).

йФ(ик,р к)

gk(“k.Pk) =

Ф*

И V* = [Ф (и * . Л ) -> '*к (« л .А ) = ( Л Т«* -% )« *•

Для начала процедуры идентификации можно принять, что х1= ух (где>»1 обозначает первые т измерений),

Р\ = о*

Начальное значение коэффициента А,, определяется выражением

1

т •

8\ 8t

Пример 2. Дано (0 = p TU + ц, где р - шум измерений. Результаты измерений

 

со, = 1 1 , 3 , ш3 =3,11;

 

 

 

 

£/,=[4 ЗГ.

U2 =[l

2 f , ££,=[2 - i f

Решение:

 

 

 

 

 

 

 

 

W k= (pJut -<ok)Uk,

 

 

 

Рк+1

 

 

 

-Tl

 

 

 

=Рк~Кч>к = P k - P k ( P t U k - 0 i k) U k,

 

X* = - i ,

,

1

 

 

 

 

X, =-

_

 

 

 

 

к'

 

£/,т£/,

 

 

 

 

 

 

1

 

 

 

 

 

 

Х,= — .

 

 

 

 

 

 

1

25

 

 

 

 

Начиная с

= 0, получим

 

 

 

 

 

 

 

 

 

 

4

 

4 8 '

 

 

 

 

 

3

 

1,35

 

 

X, = - г , /=2,3,.

 

 

 

 

 

I

 

 

 

 

 

 

и 2 = ' 1,8 '

1 [l,8

1,35[1

т

 

-3,9

 

 

Л 35.

50 {

 

12J

J _2_

 

" 1,8 '

'0,012' '1,788'

 

 

 

 

Л 35.

0,024

1,Э26

 

 

 

 

 

 

 

 

 

 

 

Р * = Р 1 - \{ р 1 и г -« % )и ъ =

 

 

 

1,788'

 

 

 

' 2

'

'1,814'

 

[1,788 1,326^”1! 1-3,11

 

 

 

1,326_

75 1

 

1 - 1J

J - 1_

Л313.

а истинный вектор р = [2 l]T

7.2. Идентификация методом обучения

Метод обучения относится к методам последовательной идентифи­ кации линейных систем в реальном времени, который основан на принци­ пе обучения с моделью и в котором получена модель импульсной харак­ теристики. Аналогично методам стохастической аппроксимации метод последовательного обучения не дает оценки параметров по методу наи­ меньших квадратов на различных последовательных шагах, вследствие чего сходимость этого метода несколько ниже, чем метода последователь­ ной регрессии. Тем не менее оценки постепенно сходятся (в среднем) к ис­ тинным значениям параметров. Метод последовательного обучения отли­ чается от метода стохастической аппроксимации характеристиками схо­ димости. Этот метод удобно применять для процессов с медленно ме­ няющимися параметрами. Основное преимущество метода последова­ тельного обучения по сравнению с другими последовательными методами состоит в простоте алгоритма последовательной идентификации.

Идентификация стационарных процессов. Базовый алгоритм идентификации

В методе последовательного обучения рассматривается линейная си­ стема со случайным входом u(t), выходом x(t) и импульсной реакцией g(/). Связь между входом и выходом описывается интегралом свертки, который для нулевых начальных условий записывается в виде

x{t) = \g{x)u(t-i)&x,

о

где и - измеряемая функция. Дискретная форма выражения:

1=1

Определение импульсной реакции g, выполняется путем итерационных вычислений множества величин:

h,u \ h2U), ,hNU\ Vj = N + l, N + 2....

которые должны соответственно приближаться к g b gi, ■■■, gN в уравнении (7.1), где j обозначает номер итерации. Тогда оценка выхода модели

при использовании й,0) (на j-Pi итерации), таким образом, становится рав­ ной по аналогии с уравнением (7.1):

(7.2)

xju = 1 Л а Ч - '-

Обозначая

S = fo> -,£w ]T>

hj = [h <J),-,hN(j)Y

иUj =\UH ,...,UJ. n Y , преобразуем уравнения (7.1) и (7.2) соответственно

квиду х} = g TUj и x M = h]Uj.

Определим теперь разность:

- x JU= ( g - h j )r UJ = U ] ( g - h j ) = U]Ahj.

Рассмотрим вектор Д/г = hJ+l - h j9

который будем использовать для кор­

рекции вектора следующей идентификации hJ+{

относительно h j , с уче­

том ошибки (xj-XjM) в оценке Ху

 

 

Полагая

 

 

 

 

Д/*у

и,

»

 

(^у *^ум) 7

гдеj = 1, 2, 3 , получим выражение

 

* J

и?}и-)

 

Следовательно, соотношение для идентификации методом обучения запишем в виде

=hi + (■*; ~*ум)~т ~-

(7.3)

и . и ■

J UJ

Чтобы начать процедуру оценивания по уравнению (7.3) при у = 1, можно подставить в это уравнение х1м = 0 .

Если в уравнении (17) ввести коэффициент коррекции ошибки а, то соотношение преобразуется в следующее:

Л +1 = hj +a(Xj - x jM)~Y — при 0 < а < 2. и]и J

Сходимость решения по-прежнему обеспечивается.

Пример 3. Идентифицировать методом последовательного обучения вектор параметров р системы со = рти + р, где р - шум измерений. Резуль­

таты измерений:

 

 

coi=ll,3,

©7=3,9,

©з= 3,11,

и. = [4,3]т,

«2= [1 ,2 ]т,

и3= [2 ,-1 ]Т.

Начальная оценка р х = 0, а значит, и ©1м =0.

л

л Л

3’1 '

2’25)

2

‘1,68' ' 0,32 '

'2 ,0 '

 

+

 

Ра = Рг +

 

;------

-1

0,94

 

 

 

 

- 0,17

 

Истинный вектор р равен [2, 1]т

7.3.Последовательная процедура обучения для идентификации

нелинейных систем. Ряды Вольтера

Для идентификации нелинейность априорно задается.

Для начала запишем выражение для интеграла свертки входа x(t) и выхода z(t) в линейной системе:

z(t)= Jgi(x)x(f-T)dT,

О

где g l(т) - импульсная характеристика линейной системы.

Рассмотрим систему с параболической нелинейностью,

y(t) =z 2(t).

Выходную переменную y(t) нелинейной системы можно рассматри­ вать как произведение zxz2 выходов двух линейных систем с импульсными

характеристиками g xg 2:

t

/

y(t)= j g l i h M t - h W h

)x(t-x2)dz2 =

о

 

о

 

= JI s 1(*i

-

h )x(‘ -

x2)dT,dT2;

00

 

 

 

Чг&1хг) =Ш \Ь \)8 гЫ

y(t) = f \ h

" h )*(* ~ x 2 )dt|dx2.

00

Далее рассмотрим систему, которая описывается уравнением

у(о=лт,

где /[z(f)] - произвольная непрерывная нелинейная функция z(f).

В соответствии с теоремой Вейерштрасса любая непрерывная функ­ ция /О /) ] может быть аппроксимирована полиномом z(f), сходящимся

к АО-

 

 

Поэтому y(t)

аппроксимируется полиномом

у т(/) = / m[z(f)], где/т

обозначает последовательность полиномов z(f) порядка до т.

Обозначим

 

 

 

yi(Ti) = gi(ti).

 

 

У2(^1^2 ) = (^1)^2 (т2 ).

 

 

1

 

/

t t

т,)x(f - T2)dT,dT2 +... +

= о, JyI(т,)x(t - T,)dT, + a2 \ |у2(т,т2)х / -

+ я™J - 1г«(‘г,т2...т1В)х(/ - i,)x(f - 12) •...• x(f - Tm)dT]dT2 •...• dxm=

00

/t

= 2>*

0

- *1W* - *2) • ■••• • x(t -

T*)dx,dT2 •... • dx*.

1

0

 

 

Это же уравнение в дискретной форме выглядит так:

 

 

 

(

 

 

 

/Л * ( 0 ] = 2

ц,=1 ц*=1

На

 

 

 

 

где

 

- |!*Г), 71период квантования.

 

Очевидно, что если рассматривать нестационарную систему, то

Ущц2ил

следУет записать в виде уЦ)М2...м< (0 •

 

Представленные окончательные уравнения представляют собой ряд Вольтера m-го порядка для рассматриваемой системы.

Алгоритм последовательного обучения

Пусть х = (х],х2,...,хп)Т, где */ = x(t- iT) . Введем следующий 5-мерный вектор \\rs(x):

Vs(х) = [ф, (х), ф2 (х),..., ф, (х)]т ,

где tp, (*) = *,, ср2(х) = х2, ... <р„(х) = х„.

 

Ф„+[ О) = x>. <f>n+2 (x) = xlx2,

. Ф2П(*) = x\xn;

q>2«+l(*) = *2> 4>2»+a(*) = *2*J.

4>2i.+e-l(*) = *2*»-

Если в v(x) необходимо учесть члены до порядка г включительно, то размерность у(х) определяется соотношением

S = (n +r)\ t

п\г\

Определим теперь такую функцию Ф(х), что

Ф (х) = £со,ср ,(х) =

£ © , * ;

+ £jhXjXh£ с о + ...+

i=l

j=1

j=\h=\

+ £

t,- Z ^ jh .^ X jX h..Jc

= mTv f .

J=\ft=l <7=1

Здесь ©у —весовые коэффициенты, a © обозначает вектор, элементами ко­ торого являются соу.

Это уравнение Ф(х) представляет собой взвешенный по суммам по­ лином Xj порядка от 1 до г, каждый из которых имеет свой эквивалент В Ws(x).

Алгоритм предполагает, что выходная переменная y^t), представ­ ляющая собой выход идентифицируемой системы, будет оценена через

у м(0 = Ф(х).

Вектор параметров С0;+1 на (/ + 1)-й итерации оценивается последо­ вательно с помощью алгоритма оценивания, который аналогичен алгорит­

му, описываемому уравнением

 

со/+1=© ;. + а О , - y iJ V s . i W

при 0 < а < 2 .

Изменение а может дать оценку, которая будет наилучшей.