Методы идентификации систем
..pdfI -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 . |
Изменение а может дать оценку, которая будет наилучшей.