УДК 62-50:519.2
ФИЛЬТРАЦИЯ В ДИНАМИЧЕСКИХ СИСТЕМАХ ПО НАБЛЮДЕНИЯМ С ПАМЯТЬЮ ПРИ НАЛИЧИИ АНОМАЛЬНЫХ ПОМЕХ
Н.С. Дёмин, О.В. Рожкова*, C.B. Рожкова*
Томский государственный университет,
*Томский политехнический университет E-mail: [email protected]
Рассматривается задача оптимальной в среднеквадратическом смысле фильтрации вектора состояния стохастической динамической системы по наблюдениям, которые зависят как от текущего, так и от прошлых значений вектора состояния, когда в канале наблюдения, кроме регулярных, действуют аномальные помехи с неизвестным математическим ожиданием.
Ключевые слова:
Динамическая система, фильтрация, аномальная помеха, память.
Введение
Теория калмановской фильтрации [1] является основой конструирования современных систем управления, навигации, передачи и переработки информации, обработки траекторных изменений [2-8]. Потребности практики со временем потребовали развития данного направления на случай неточного задания математической модели либо нарушения нормального режима функционирования системы [9, 10]. В рамках развития этой проблемы в данной работе рассматривается задача оценивания вектора состояния системы калмановского типа для случая, когда: 1) канал наблюдения обладает памятью относительно значений вектора состояния, что имеет место, например, при наличии инерционных измерителей либо при наличии задержек в каналах передачи информации [11-14]; 2) в канале наблюдения, кроме регулярных, действуют аномальные помехи, причем в общем случае не по всем компонентам вектора наблюдений; 3) аномальная помеха является нестационарной, математическое ожидание которой является неизвестной функцией времени.
Далее: P{.} - вероятность события; M{.} - математическое ожидание; /г[.] - след матрицы, «7» и «+» - транспонирование и псевдообращение матрицы, если стоят как правые верхние индексы; 5(.) - дельта-функция Дирака; 0 - нулевой вектор соответствующего размера; О и 1к - нулевая матрица соответствующего размера и единичная (кхк) -матрица; А>0 (>0) - положительно (неотрицательно) определенная матрица.
1. Постановка задачи
Система описывается уравнениями (точка сверху далее всюду означает производную по О
х(/) = Г(/)х(/) + ю^), t > 0, (1)
где х(0 - «-мерный вектор состояния, ю({) -«-мерный вектор возмущений, который является белым гауссовским процессом с М{ю(^}=0 и M{a(t)aT(t)}=Q(t)8(t-s). Выходом канала наблюдения за состоянием системы является I - мерный процесс г(^ вида
z(t ) = H 0(t ) x(t ) + X Hk (t )x (xk ) + u(t ) + Cf (t ), (2)
k =1
где 0<TN<TN_l<...<Tl<t. В (2) u(t) - /-мерный белый гауссовский процесс является регулярной помехой, аf(t) -r-мерный г</ белый гауссовский процесс, который является аномальной помехой, причем M{v(t)}=0,
M{u(t) uT (5)} = R(t)8(t - s), M{ f (t)} = f0(t),
M {[ f (t) - f0(t )] [ f ( s) - fo,(s)]T } = ©(t) 8(t - s).
Матрица С размера (/xr), задающая структуру действия компонент аномальной помехи f(t) на компоненты вектора наблюдения z(t), является булевой следующего вида: если il,i2,...,ir - номера компонент вектора z(t), по которым действуют аномальные компоненты f(t), то в столбце с номерами j единица стоит на i-м месте (1<j<r; 1<i<l). Предполагается: 1) x(0)=.x - имеет нормальное распределение с параметрами f и Г0; 2) x0, a>(t), u(t), f(t) - независимы; 3) матрицы Q(t), R(t), ©(t) - невырождены; 4) f0(t) - неизвестно.
Ставится задача: по реализации z0t={z(s):0<s<t} наблюдаемого процесса найти оптимальную в среднеквадратическом смысле несмещенную оценку f (t) для x(t).
2. Структура фильтра
Класс фильтров, на котором будет решаться поставленная задача, выберем на основе решения соответствующей задачи в байесовском случае [15], считая при этом, что t>T1, то есть аномальная помеха начинает действовать, когда в наблюдениях накопилась память максимальной кратности N.
Утверждение: Пусть f0(t)=0. Тогда оптимальный в среднеквадратическом смысле байесовский фильтр определяется уравнениями
f (t ) = F (t )f(t ) + H T (t )R-\t ) z(t ), (3)
i(Tk, t)=ht (t)a-1 (t) z(t), k=1N, (4)
Г (t ) = F (t )r(t ) + r(t ) FT (t ) + Q(t ) -
-HT0 (t)R-\t)Ho(t), (5)
Гш (тк, t) = -H¡ (t)R-\t)Ht (t), k = 1; N, (6) fi0N+1(fN, t) = F(t) fí0N+l(fN, t) +rn (t) - K (t)U(t), (17)
Г0k (tk, t) = F(t)Г0к (Tk, t) - H0 (t)R-1 (t)Hk (t),
k = IN,
ru t Tk, t)=-ht (t) r-\t) h , (t),
где
(7)
(8) (9)
(10)
z(t) = z(t) - [ H o(t )p(t) + ^ Hj (t)p(Tj, t)],
j=i
fío (t) = H o (t )r(t) + ¿ Hj (t) Г T0j (Tj, t \
j=1
Hk (t) = Hk (t)rkk (Tk, t) + ¿ Hj (t)Г {Tj ,Tk , t), (11)
j *k
R(t) = R(t) + C&(t)CT . (12)
Поскольку в данной работе рассматривается случай фиксированной памяти (Tk=const, k=1;N), то данное утверждение следует как частный случай теоремы 1 из [15], где дано решение задачи в случае скользящей памяти (Tk=t-tk*, tk*=const, k=1;N) с учетом условия 2 постановки задачи. Отметим, что задание процессов x(t) и z(t) через белые гауссовские процессы в данной работе и через винеров-ские процессы в [15] согласованы.
Введем в рассмотрение белые процессы a(f), Xn+1(Tn,0, °v+1 (T N,t) (Tn=[t,T2,...Tn]) размеров
(N+1)w вида
~m(t) " ^ (t)"
<S (t) = N J
o _ x(Tk ) _
Pn+v(¿n , t) =
n(t)
KT k, t).
(13)
где /~N+i( ~N,t)=~N+i(T,t)-/~N+i(~N,t), и блочные матрицы
F (t) =
2 (t) =
' F (t) o"
o o
Q(t) ¡o"
o " !o
' H T (t )R-V(t)' ' Ko(t)'
_ H T (t )R ~\t) _ _ Kk (t)_
к (t) =
H (t) = [H o(t) ¡Hk (t)], k = 1; N. (14)
размеров соответственно [(Ж+1)и]х[(Ж+1)и], [(Л+1)и]х/,/х[(Л+1)и], [(Л+1)и]х[(Л+1)и], /хи(Л+1). Расписав (9) с учетом (2, 13, 14), получаем что
т = Н (г )р 0+1(т„, г) + й(г), (15)
где и(/)=и( ?)+/). Из (3, 4, 13, 14) следует уравнение
Рк+1 (¿М ,1) = Р(*) Рк + 1 , 0 + К(*) ^)■ (16)
Использовав последовательно (16), (13-15) получим
где ¥(^=Р(^-К(^Н(Р) .Пусть Ф(?,а) — переходная матрица, соответствующая матрице / (?). Тогда решение (17) запишется в виде
РN +1 (*М ,1) = Ф(г > Т1 + 0) РМ + 1( Ъ > Т1 + 0) +
г
+ | Ф (г,а)[с5 (а) - К (а)и(а)] йа ■ (18)
Т +0
Пусть /0(0^0. Тогда из (18) следует, что
г
м {р0+1(Тм , г)} = -| Ф(г,а) К (а) С/0(а) йа, (19)
Т +0
то есть оценка смещенная. Поскольку Ы[и(Р)}=€/() при/0(/)^0, то, чтобы ликвидировать смещение, нужно в (16) вместо ~(?) использовать ~(?)=~(?)- С/0(?), что приводит к уравнению
РN+1 (*м , г) = Р(г) (к+1 Тм , г)+К (г) 1 (г) ■ (20)
где теперь К(?) - матрица передачи фильтра, которая должна быть найдена из условия оптимальности. В результате вместо (17) получаем уравнение
Р0+1 (¿к, г) = Р (г) (К+1 (Тк, г)+ю (г) -
-К(гшг) -С/о(г)] ■ (21)
Аналогично (18) получаем решение (21) в виде
РN +1 (^М , г) = Ф(г> Т1 + 0) Р +1(, Т1 + 0) +
г
+ | Ф (г ,а)[с5 (а) - К (а)[6(<) - С ^(а)]] йа. (22)
1 +0
Так как М{и(а)}=С/0(а), то М{/Р0дг+1( тЛГ,?)}=0, то есть оценка, определяемая классом фильтров (20), является несмещенной.
Поскольку по постановке задачи /0(?) неизвестно, то предполагается при формировании ~(?) вместо /0(?) использовать оценку / (?) как линейное преобразование процесса ~(?), то есть
/(г) = г (г) ¡(г), (23)
где 7(0 - (гх/)-матрица, выбор которой будет определяться условием несмещенности оценок. Использование / (?) вместо/0(?) дает ~(?)=У(1)г({), и из (20) следует уравнение
Рк+1 (¿к, г) = Р(г) (к+1 (т~м , г) + К (г) У (г) ¡(г), (24)
где
У (г) = I, - су (г)■ (25)
Использование (1, 13, 15, 24) приводит к тому, что смещение фильтра (20) будет определяться уравнением
Р0+1(Гм ,г) =
= Г0(г)рN+1(Тк, г)+с5 (г) - К (г) У (г) т, (26)
где
Fo(t) = F (t) - к (t )Y (t )H (t).
(27)
Пусть Ф(?,а) - переходная матрица, соответствующая матрице /0(/), тогда решение (26) имеет вид
рМ+1 (?М , г) = Ф(г, Т1 + 0) Р+1(¿М , Т1 + 0) +
г
+ | Ф(г,а')[ё (а) - К (а)[и(г) - /а)]] йа. (28)
1 +0
Так как М{и(/)}=С/0(/), то
м {(N+1(тк, г)} =
г
= -| Ф(г,а) К (а) У (а) С /}(а) йа. (29)
1 +0
Таким образом, из (29) для произвольных К(а) и /0(?) следует условие несмещенности оценки р(?)
Y (t) C = 0.
(30)
Итак, получена задача нахождения оценки в классе линейных фильтров вида (26), где матрица K(t) должна быть определена из условия оптимальности Дш( ~N,t) в среднеквадратическом смысле, а матрицу Y(t) можно найти из условия несмещенности.
Согласно [16] уравнение ~(t)C=0 с учетом (25) имеет решение вида
Y(t) = C ++ A - ACC+ . (31)
где A - произвольная (rx /)-матрица. Так как по построению С является матрицей с линейно независимыми столбцами, то C+C=Ir [16]. Тогда из (31) следует условие, которому должна удовлетворять матрица Y(t), обеспечивающая несмещенность оценки Дт( %,/):
Y(t)C = Ir. (32)
3. Критерий оптимальности
Найдем уравнение, которому удовлетворяет матрица
fN+1(fN ,t) = M{fN+1(fN ,t) fN + 1(fN , t)} (33)
вторых моментов ошибки оценки fN+1(rN,t). Из (27)
с учетом пункта 2 постановки задачи
^N+i(. TN , t) = &(t, T + 0) x xM{fN+1(fN , T1 + 0) PNh^N , T1 + 0)}x хФт (t, t1 + 0) + J o J 0(t,a) x
M{ё(a) ёT(£)} +
X _+ K(a)Y(a)M{¿(a)u'T(^)}YT($)KT(£) хФт(t,%) da .
Непосредственные вычисления с использованием условия несмещенности ~(t)C=0 и свойств 5-функции Дирака дают, что
ГN+1(Т N , t) =
= Ф^,тх + 0) Гn+1 (т n + 0) Фт (t,T + 0) +
(34)
где
в (а) = в (а) + К (а)У(а) Я (а)У т (а) Кт (а).
Дифференцируя (35) по ?, получаем Гк+1(^М, г) =
= Р0 (г) Гк+1 (*м, г) + Гк+1 (?М, г) Р0Т (г) +
+К(г) У (г) Я (г)Ут (г) Кт (г) + в (г). (36)
Поскольку р(?) - оценка фильтрации, а р(т,), тк=1;Ы - оценка интерполяции, то как в байесовском случае [15] естественно решать совместную задачу синтеза оптимальности в среднеквадратическом смысле фильтра-интерполятора, взяв в качестве критерия оптимальности, согласно [17],
з = гг[ Гм+Атм , Ш (37)
где ^ - некоторый будущий момент времени г1</</1.
4. Синтез фильтра
Таким образом, получили задачу: в классе фильтров (24) найти ((И+1)нх1) - матрицу К(?), доставляющую на траекториях [(Ж+1)и]х[(#+1)и]-мер-ного матричного дифференциального уравнения (36) минимум функционалу (37) при выполнении условия несмещенности (32). Формально получили задачу оптимального управления с матричным состоянием ГЛГ+1(т№0, матричным уравнением К(?), фиксированным временем управления, фиксированным левым концом траектории, свободным правым концом траектории и оптимальным критерием качества. Для решения подобных задач используется матричный вариант принципа максимума Понтрягина, на основе которого в [17] был осуществлен синтез фильтра Калмана.
Теорема. Оптимальный в среднеквадратическом смысле несмещенный фильтр в классе линейных фильтров вида (24) определяется уравнениями:
f (t) = F (t )f(t) + K 0(t) z(t),
(38)
i
J Ф^,а)Q(a)Фт(t,a) da,
(35)
f (T t, t) = Kk (t) z(t), k = 1; N, (39)
Г(t) = F(t)r(t) + r(t)FT(t) + Q(t)- K0(t)H0(t), (40)
Гkk (T k, t) = -K (t) Hk (t), k = 1N, (41)
Г0k(Tk,t) = F(t)r0k (Tk,t) -K0(t)Hk (t), k = ±N, (42) Гkl (t, , Tk, t) =-Kk (t)H (t), k = 1; N -1, I = 2Щ, I > k, (43)
где
K0(t) = K0(t)[I, -CY(t)],
Kk (t) = Kk (t)[Il - CY(t)], (44)
K0(t) = HT0R-\t), Kk(t) = HT (t)R-\t), (45)
Y (t) = [CTR ~4t)C]-1 CTR-\t), (46)
а z (t), Hk(t), Ш, ~(t) определяются (9-12).
+
Доказательство.
В соответствии с матричным вариантом принципа максимума Понтрягина [17,18] функция Гамильтона Щ^ДГд^ тЛГ,/),К(/),А(/)] согласно (36) определяется выражением
н (г) = гг[Ъ(г) Г я+1( Тк, г) Лт (г)] +
+гг[ Гк+,(тк, г) Р0т (г) Лт (г)] + +гг[ К (г) У (г) Я (г )Ут (г) Кт (г) Лт (г)] +
+гг[&(г) Лт (г)], (47)
где Л(?) - ((Л+1)их(Л+1)и) матрица сопряженных переменных, уравнение для которой и граничное условие имеют вид
Л(t) = --
д H(t)
д ГN+1(fN , t) д rN+1(T~N , t1)
Непосредственные вычисления дают, что Л(t) = -Л(0F0(t)- F0T(t)Л(t), Л (t,) = IT[(N+1)n]. (49)
Необходимое условие оптимальности dH = 0 с
YK
использованием (47, 27), симметричности rN+1( ~N,t) и правил векторно-матричного дифференцирования [17] приводит к выражению
-Л(t) ГN+1 (Tn , t) HT (t )YT (t) -
^T (t)ГN+1(Tn , t) HT (t) YT (t) +
+Л(t) K (t )Y (t) R (t )Y T (t) +
+Л1,(t)K(t)Y(t) R(t)YT (t) = 0. (50)
Так как Л(0, удовлетворяющая краевой задаче
(49), является симметричной положительно определенной матрицей [17, 18], то из (50) следует окончательный вид соотношения, которому удовлетворяет оптимальная матрица K(t):
K(t) Y(t)R(t)YT(t) = Гn+1(Tn,t) HT (t)YT (t). (51)
Решение уравнения (51) существует, если и только если, [16]
Pn+1 (f N, t) HT (t) YT (t)[Y (t) R (t)YT (t)] + X
x[Y (t) a (t) y T (t)] =
= ГN+1(Tn , t) HT (t) Y T (t). (52)
~ Докажем справедливость (52). Так как R~(t)>0 то R(t)=L(t)LT(t), где L(t) - невырожденная нижняя треугольная матрица [19]. Обозначая левую часть
(50) через G(t), получаем
G(t) = Гn+1(Tn, t)HT(t)YT (t)[DT (t)D(t)]+D (t)D(t),
где D(t)=LT(t)YT(t). Так как [DT(t)D(t)]+DT(t)=D+(t) [16], то
G(t) = F'n+1(Tn , t) HT (t) YT (t) x x[LT(t)YT (t)]+ [LT (t)YT (t)]. (53)
Невырожденность матрицы LT(t) дает, что [16]
[И (г) Ут (г)]+[И (г) Ут (г)] = [Ут (г)]+ Ут (г). (54)
Использование (54) в (53) с последующим применением теоремы о характеризации псевдообрат-ной матрицы [16] дает б(/)=Гдг+1( тх,1)ИГ(1) YT(t) что доказывает справедливость (52). Тогда общее решение уравнения (41) имеет вид [16]
К (г) = Гм+1(Тм , г) Нт (г) Ут (г )[У(г) Я (г )У~т (г)]+ --В(г )[У (г) Я (г) Ут (г )][У (г) Я (г )Ут (г)] ++В +г), (55)
где В(0 - произвольная ((И+1)нх[) матрица. Найдем матрицу 7(?), которая удовлетворяет условию несмещенности (32) и приводит к выражению для К(?), не зависящему от В(0, для чего потребуем выполнения условия
CY(t) R (t)YT (t) = O.
(56)
~ Умножая левую часть (56) слева на В+, справа на Л-1(0С, а затем учитывая (25), (32) и свойство матрицы с линейно независимыми столбцами С+С=1Г [16], получаем, что I-7(0~(0 7Т(?)Ст7?(?)С=0. Умножая левую часть последнего выражения справа на [СТ^ХОС]-1 и учитывая согласно (32), что€т¥({)=1г, получаем выражение {[СтИ^1(()С]-1Ст-7(()И(()}7т({)=0, которое является уравнением для нахождения 7(?). Тривиальное решение отбрасывается, как противоречащее (32), а второе решение приводит к (49). Использование (56) в (55) приводит общее решение уравнения (51) к виду
К (г) = Гм+1 (т~к, г) Нт (г) Ут (г) [Я (г )Ут (г )]+-
-В(г)Я (г )Ут (г )[Я (г )Ут (г)] ++ В(г). (57)
Произвольную матрицу В(?) выберем из условия Гм+1{Тм , г) нт (г) = В(г )Я ~\г). (58)
Использование (58) в (57) приводит к формуле к (г) = Гм+1(Тм , г )Нт (г )Я ~\г). (59)
Поблочное расписывание (24), (36) с учетом (10,
11, 13, 14, 25, 27, 33, 59) приводит к (38-46). Тем самым все соотношения теоремы получены и доказательство завершается устано~лением того факта, что матрица передачи фильтра ]Y(t)=K(t)Y(t) не зависит от произвольной матрицы В(?). Из (55) получаем
К (г) = ГN+1(Тк, г) нт (г)Ут (г)[У (г) Я (г)Ут (г)] + х хУ (г) - В(г )[У (г)Я (г )Ут (г )][У (г)Я (г )Ут (г)] +х
хУ (г)+в (г )У (г). (60)
Обозначим второе слагаемое в правой части (60) через Ф(?). Тогда, аналогично выводу (53), получаем Ф(t)=B(t)[Y(t)L(t)][YY,t)L(t)]+Y(t). Поскольку [Y(t)L(t)][Y(t)L(t)Y=Y(í)Y+(t) [16], то, используя теорему о характеризации псевдообратной матрицы [16], получаем, что Ф(t)=B(t)Y(t). Использование этой формулы в (60) дает
К (г) = Г N+1(Тк, г )Нт (г )Ут (г )[У(г )Я (г )Ут (г)]+У(г).
Что и требовалось доказать.
Заключение
Осуществлен синтез оптимального в среднеквадратическом смысле несмещенного фильтра для оценивания вектора состояния стохастической системы калмановского типа, когда наблюдения за-
СПИСОК ЛИТЕРАТУРЫ
1. Kalman R.E., Bycy R.S. New results in linear filtering and prediction theory // J. Basic Eng. - 1961. - V. 83. - P. 35-45.
2. Busy R.S., Joseph P.D. Filtering for stochastic process with application to guidance. - N.Y.: Interscience Publishers, 1968. - 195 p.
3. Богуславский А.Н. Методы навигации и управления по неполной статистической информации. - М.: Машиностроение, 1972. - 256 c.
4. Ривкин С.С. Метод оптимальной фильтрации Калмана и его применения в инерциальных навигационных системах. - Л.: Судостроение, 1974. - 155 c.
5. Крогман У. Фильтр Калмана, основная теория и возможности применения его в системах инерциальной навигации // Механика. - 1973. - № 5. - С. 17-31.
6. Малаховский Р.Ф., Соловьев Ю.А. Оптимальная обработка информации в комплексных навигационных системах самолетов и вертолетов // Зарубежная радиоэлектроника. - 1974. - № 3.
- С. 18-53.
7. Сейдж Э., Мелс Д. Теория оценивания и ее применения в связи и управлении. - М.: Связь, 1976. - 496 c.
8. Сосулин Ю.Г. Теоретические основы радиолокации и навигации. - М.: Радио и связь, 1992. - 303 c.
9. Кириченко А.А. и др. Оценивание вектора состояния динамической системы при наличии аномальных измерений // Зарубежная радиотехника. - 1981. - № 12. - С. 3-23.
10. Сотсков Б.М., Щербаков В.Ю. Теория и техника калманов-ской фильтрации при наличии мешающих параметров // Зарубежная радиотехника. - 1985. - № 2. - С. 3-29.
висят не только от текущего, но и от произвольного числа прошлых значений вектора состояния, причем в канале наблюдения кроме регулярных действуют нестационарные аномальные помехи с неизвестным математическим ожиданием.
11. Basin M.V., Zuniga M.R. Optimal linear filtering over observation with multiple delays // Intern J. of Robust and Nonlinear Contr. -2004. - V. 14. - № 8. - P. 685-696.
12. Basin M.V., Zuniga M.R., Rodriguez J.G. Optimal filtering for linear state delay systems // IEEE Trans. on Automatic Control. - 2005.
- V. AC-50. - № 5. - P. 684-690.
13. Wang Z., Ho D.W.C. Filtering on nonlinear time-delay stochastic systems // Automatic. - 2003. - V. 39. - № 1. - P. 101-109.
14. Демин Н.С., Рожкова О.В., Рожкова C.B. Обобщенная скользящая экстраполяция стохастических процессов по совокупности непрерывных и дискретных наблюдений с памятью // Известия РАН. Теория и системы управления. - 2000. - № 4. -C. 39-51.
15. Абакумова О.Л., Демин Н.С., Сушко Т.В. Фильтрация стохастических процессов по совокупности непрерывных и дискретных наблюдений с памятью. II. Синтез фильтра // Автоматика и телемеханика. - 1995. - № 10. - С. 36-49.
16. Алберт А. Регрессия, псевдоинверсия и рекуррентное оценивание. - М.: Наука, - 1977. - 224 c.
17. Athans M., Tse E.A. A direct derivation of the Optimal linear filter using the maximum principle // IEEE Tranc. Autom. Control. -1967. - V. AC-12. - № 6. - P. 690-898.
18. Ройтенберг Я.Н. Автоматическое управление. - М.: Наука, 1978. - 551 c.
19. Гантмахер Ф.Р. Теория матриц. - M.: Наука, 1988. - 548 c.
Поступила 13. 04. 2009 г.