ISSN 0868-5886 НАУЧНОЕ ПРИБОРОСТРОЕНИЕ, 2010, том 20, № 3, c. 64-76 - ОБРАБОТКА СИГНАЛОВ, ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ =
УДК 681.519
© Е. Ю. Бутырский, И. А. Кувалдин, В. П. Чалкин
К ВОПРОСУ О СПЛАЙН-ФИЛЬТРАЦИИ СИГНАЛОВ
В настоящей статье на основании аппроксимации непрерывной многомерной функции в виде взвешенной суммы одномерных функций, определенных на обобщенном базисе, сформированном как линейная суперпозиция аргументов исходной функции; предложен метод субоптимального оценивания динамических систем. Изложенный материал является основой теории сплайн-фильтрации сигналов, предложенной Е.Ю. Бутырским.
Кл. сл.: динамическая система, субоптимальное оценивание, многомерная функция, обобщенный базис, сплайн-фильтрация
ВВЕДЕНИЕ
В теории фильтрации существует целый ряд приближенных методов и алгоритмов оценивания, которые позволяют решать задачи нелинейной фильтрации сигналов и состояний динамических систем. При этом сложность алгоритма и качество фильтрации целиком определяются сложностью исходных математических моделей динамической системы, сигнала, помехи, шумов наблюдения и законами их взаимодействия. Причем сложность алгоритмов резко возрастает с увеличением числа аргументов у функций, описывающих математические модели. Поэтому актуальной является задача такого представления многомерных функций, при котором возможно процессы обработки сигналов распараллелить по каждому из аргументов.
В статье на основании представления непрерывной многомерной нелинейной функции в виде линейной суперпозиции одномерных функций [1] развиваются методы сплайн-фильтрации сигналов и оценивания состояния нелинейных динамических систем, основанные на линейных и квадратичных сплайн-представлениях нелинейных динамических систем (ДС). Преимущество рассматриваемой аппроксимации состоит в возможности согласования математических моделей со структурой фильтра Калмана—Бьюси или фильтра второго порядка, т. к. позволяет легко перейти к независимой по каждой координате одномерной сплайн-аппроксимации (линейной или квадратичной). Получаемый при этом субоптимальный фильтр является фильтром с параметрами, значения которых меняются в зависимости от оценки состояния динамической системы.
В частности, показано, что сплайн-фильтры первого порядка, основанные на представлении нелинейных функций в виде одномерных сплайнов, в отличие от известных обладают значительно
меньшими вычислительными затратами и имеют большие перспективы практического использования при решении самых разнообразных задач оценивания состояния ДС и обработки сигналов.
ТЕОРЕМЫ АППРОКСИМАЦИИ МНОГОМЕРНЫХ ФУНКЦИЙ
В работе [1] были доказаны теоремы об аппроксимации многомерных функций композицией одномерных на расширенном базисе аргументов. Так как настоящая статья является продолжением [1], то напомним некоторые из этих теорем, которые являются базовыми при построении алгоритмов субоптимального оценивания.
Теорема 1. Многомерная непрерывная по своим аргументам функция f (ж) может быть с любой
степенью точности представлена в виде следующего ряда:
т ( г \и
f (X) * Рп (X) = а (X) = X К ^+ dJ , (1)
где f (.) — непрерывная функция, заданная над полем Rг (f е R) ; х = (х1, х2, ..., хг) — переменные, X, е R; К., dV — задаваемые целые коэф-
1 V 3
фициенты (Ъи, dj е N ); К. — коэффициенты,
(n + r -1)(n + r)
K e R; m = ±-^-.
j 2
Обозначим dj = hr+1 j, xr+1 = 1, тогда формулу (1) можно записать в виде
m I r+1
f ( x )« р. ( x ) = Q ( x ) = ! Kj x hjX,
(2)
n
Теорема 2. Многомерная непрерывная по своим аргументам функция f (х1, х2, ..., хг) может
быть с любой степенью точности представлена в виде следующего ряда:
Qn ( х ) =
г п п г { г ЛР
= с + ]Г ^ах ^К, [^х] =
г 3 Р 3 V г )
п 2г ( г ЛР
=с+12Х[^х] . (3)
Р 3 V г )
Многомерная аппроксимация, предложенная в данном пункте, является не самоцелью, а лишь первым этапом в решении задачи покомпонентной сплайн-фильтрации и оценивания состояния нелинейных динамических систем.
Эта задача должна решаться в три этапа.
1) Представление исходной многомерной функции в виде взвешенной суммы одномерных функций.
2) Аппроксимация полученных одномерных функций одномерными линейными или квадратичными сплайнами.
3) Построение фильтра Калмана—Бьюси или фильтра второго порядка.
АППРОКСИМАЦИЯ ДИНАМИЧЕСКИХ СИСТЕМ
ЛИНЕЙНЫМИ СПЛАЙНАМИ
Применение многомерных сплайнов при аппроксимации нелинейных динамических систем ограничивается использованием сплайнов первого и второго порядка [2-5]. Это обусловливается тем, что структура фильтра Калмана—Бьюси является оптимальной для линейных систем и может быть только адаптирована к системам, имеющим квадратичные зависимости. Сплайны более высоких степеней при сохранении этой структуры перспектив на применение не имеют. С другой стороны, теория аппроксимации многомерными сплайнами требует задания множества узловых точек и условий их согласования. При большом числе аргументов это требует значительных вычислительных затрат.
Сплайновые функции представляют собой мощное и привлекательное в вычислительном отношении средство современной теории аппроксимации. Сплайны обладают рядом интересных свойств:
• если аппроксимируемая функция неотрицательна, то такова и аппроксимирующая функция;
• сплайновая аппроксимация равномерно сходится к аппроксимируемой функции при возрастании степени используемых полиномов или числа
узлов;
• можно построить точные границы ошибок аппроксимации, использующие только свойство непрерывности функции;
• достаточно точные аппроксимации получаются даже при низких степенях полиномов и малом числе узлов, поэтому необходимая память и вычислительные требования невелики.
Использование сплайновых аппроксимаций позволяет ослабить "проклятие размерности". Так как сплайновые аппроксимации дают более точные оценки по сравнению с чистым квантованием, то их применение позволяет при той же точности аппроксимации использовать более грубое квантование. Этот факт является прямым следствием сглаживающего действия сплайнов.
Представление многомерной нелинейной функции в виде линейной суперпозиции одномерных функций, аргументами которых являются аргументы исходной функции или их линейная комбинация (обобщенный базис), дает преимущество, которое, как указывалось выше, состоит в согласовании представления со структурой фильтра Калмана—Бьюси, т. к. позволяет легко перейти к независимой по каждой координате одномерной сплайн-интерполяции (линейной или квадратичной). Получаемый при этом фильтр является фильтром Калмана—Бьюси с параметрами, значения которых меняются в зависимости от оценки состояния динамической системы.
Положим, что задача аппроксимации многомерной функции f (х) линейной суперпозицией одномерных функций решена и оптимальные коэффициенты, минимизирующие квадрат ошибки оценивания, получены [1]. Вторым этапом является адаптация полученного разложения к структуре фильтра Калмана—Бьюси. Для этого предлагается полученные одномерные функции, которые являются нелинейными, аппроксимировать одномерными линейными сплайнами. Так как каждая компонента векторной функции f(х) аппроксимировалась независимо, то каждое одномерное представление линейным сплайном можно строить параллельно, т. е. выбирать узловые точки кусочно-линейных функций только в рамках своего носителя, без согласования с точками на других носителях или на тех же носителях, но других компонент векторной функции.
Рассмотрим динамическую нелинейную многомерную систему следующего вида:
dx
— = f (х) + пДО, (4)
dt
где х = ^ х^.-хг), f = С/мЛ—Л).
Каждую компоненту / (х) нелинейной многомерной функции f (х), г е [1, г] представим в од-
ной из форм двойственного ряда, в частности (1):
л (х)=Ук (¿V + dv v (5)
Л (х) = у К^" ^ f (х) = Кгп.
е [г«, ] ^ г е[г«, г('+1)]= Z(;);
л (х)= у кщ а) + ^) ] .
Л (х) = у к. № (у ^х, + ^) + ^) ]
) 1 =
=у
У К .а^с ..X. + К .а(*)d . | + К
Обозначим = К^Сщ., ВЩ*) = К^) dу + +Ку-Ь^''. Тогда компоненту многомерной функции f (х) можно записать как
где щ — компонента функции f = (/1, /2,..., /,...,/г), щ е [1, г]; , — текущий индекс по аргументам (компонентам состояния динамической системы) х = (х1,х2,...,х1,...,хг), , е[1, г]; . — текущий индекс по линейной композиции аргументов х = {х,}, г = (^ , -2п), . е[1, п].
Обозначим г . = у с..х. + й . , тогда компонен-
Щ ¿—I ЧУ . Щ ' "
ту нелинейной функции / (х) можно представить в следующей форме:
(х) = У
у х, +
(9)
(6)
Соотношение (9) определяет представление нелинейной многомерной функции f(х) в виде совокупности одномерных линейных сплайнов (кусочно-линейных функций). Как следует из вышеизложенного, такое представление не является единственным, т. к. зависит от принятых значений установочных коэффициентов, а также от конфигурации представления многомерной функции в виде взвешенной суммы одномерных функций.
Распишем выражение (9) по компонентам. Получим систему уравнений, описывающих нелинейное представление функции f (х):
Аппроксимируем квадрат компоненты г. кусочно-линейной функцией (сплайн первого порядка дефекта 1). В результате получим:
* а^)2. + ) ^ гп = а(*)г + Ь(*), (7)
Ч) Ч) Ч) Ч)
где коэффициенты в (7) принимают значения а., ), если обобщенная переменная г. принадлежит области I гЩ*), 2Ч*+1) I, т. е.
Чз у 41 _| у
* — текущий индекс области.
С учетом (7) компоненту нелинейной многомерной функции f (х) можно представить в виде
(8)
Необходимо отметить, что аппроксимация функции г". сплайном первой степени не зависит
от индексов щ,.. Для любой обобщенной переменной г. коэффициенты а., ЬЩ*) будут зависеть
только от номера * области определения кусочно-линейной функции.
В формуле (8) вместо обобщенной переменной подставим ее определение г. = У cqvXi + dу и раскроем скобки. В результате получим:
/1(х) = Х
.
У^
у 4;) х+в
(*)
х1 +
у а
*) 12 .
х2 + ... +
у а*)
хг +
+у в^
/2 (х) = у
у а21)
+у в^
у А* + в( *)
2 ]
у а *)
22 ]
у а *)
/ (х) = у у + В^
у
у
+увг;).
х1 +
у а *)
2 ]
х2 + ... +
у а"
2 ]
хг +
Систему уравнений, описывающих нелинейную функцию f (х), можно более компактно записать в векторно-матричной форме:
f (х) =
у А.) х* + у в<?),
V .
(10)
х1 +
х2 + ... +
хг +
где
А/) =
[ Л(-) л(-) А11/ А12 3
А(-) А
(-) 23
А(-) А(-)
V VI/
^ К а(-)с 1 3 11 11 3
г 2 /
К а{-)с
А/ ^
А2 г)
А(-)
Агг/- )
К а(-)с ^
1 /"12 ^12/ ---- "-1 /ы1г 'Ч/
К а(-)с К а(-)с К а(-)с
2/ 21 21 / л2/" 22 12 / 2/" 2г с 2/
К а(-)с
V Л г/иг1 С г1/
( д(-) ^
К а2)с3. .... К а(")с .
г2г3/ г гг ^гг] )
в(-) =
В1/ в2 /
в(-)
V г
(
к а -) +К,д
(-) л
/и"11/
/ 1/
К а(-)1 + К ь(-) К2/ 2/ 2/ 2/°2 /
Ка(1) 1. + КЬ(-)
V г/ г г г г
С учетом соотношения (10) система дифференциальных уравнений, моделирующих нелинейную динамическую систему, может быть записана в следующем виде:
dx2
"аГ
i АЗ
х1 +
i А1( -)
12 /
х2 + ... +
+
iА-)
1г/
х +
i в-) + n1l(t),
iА-)
11
х +
IА22)
х2 +... +
+
iА
х +
iВ2 / + nl2(t),
(11)
ахг
i а/
х +
i а(-)
2 /
х2 + ... +
+
i а -)
г 2 /
х+
i в« + п1г (t).
г г
}
Или в векторно-матричной форме:
ах dt
Л
V /
IА(-) хт +IВ(-) + Пl(t),
+
) /
(12)
= i / + ^ ^/ = с/хТ + d/.
Систему уравнений необходимо дополнить условиями принятия того или иного значения
А/), В/) в зависимости от области, в которой находится обобщенная переменная . А именно:
коэффициенты, определяющие коэффициент сноса f(х) уравнений (10-12), принимают значения
А-), В/ (А(-), В(-)), если е г/+1))
(г/ е [г .(8), г .(8+1)) = G(). Причем коэффициенты
Аур, В/ связаны с коэффициентами линейного
сплайна следующими соотношениями:
А™ = К .амс ., ) = К а -) 1 . + К Ы .
41/ Ч/ Щг / ч/ Ч/ Щ Ч/ Ч/Ч/
Переход из одной области zqlJ е[zq/, z(ч+1)/) в другую происходит тогда, когда совокупное изменение аргументов хр приведет к изменению границ
применимости линейной функции с заданными в области коэффициентами. Общее число уравнений (11) равно числу переменных . Таким образом,
моделирование нелинейной динамической системы кусочно-линейными функциями сводится к моделированию уравнений (10-12). Уравнения
динамической системы в областях г .. е
41
е[ , г(Ч+1)1/) являются линейными. Но характер
нелинейности в принципе сохраняется, т. к. характеристики динамической системы скачкообразно меняются от области к области.
Метод аппроксимации нелинейных динамических систем является двухэтапным. Он включает этап представления многомерной функции в виде взвешенной суммы одномерных функций и этап аппроксимации одномерных функций сплайнами (линейными или квадратичными). Поэтому его можно также определить как метод двойной аппроксимации, подчеркнув этим, что представление функции f(х) является результатом двух аппроксимаций.
АППРОКСИМАЦИЯ ДИНАМИЧЕСКИХ СИСТЕМ КВАДРАТИЧНЫМИ СПЛАЙНАМИ
Полученные результаты нетрудно обобщить на случай когда для аппроксимации используются одномерные квадратичные сплайны. Применение квадратичных функций при аппроксимации нелинейных динамических систем приводит к появлению фильтров второго порядка, которые являются обобщением фильтра Калмана—Бьюси и в принципе обеспечивают получение более качественных оценок состояния динамической системы. Но при этом значительно увеличиваются вычислительные затраты. С другой стороны, увеличением числа отрезков прямых, аппроксимирующих исходную функцию, можно достичь того же результата, оставаясь в рамках линейной фильтрации (на каж-
г
дом из рассматриваемых участков области определения нелинейной функции). Увеличение вычислительных затрат при такой стратегии построения фильтра приводит к необходимости проведения отдельных специальных исследований по сравнению эффективности фильтра при различных конфигурациях. К сожалению, этот вопрос в научной и научно-технической литературе освещен недостаточно. Но в принципе, метод двойной аппроксимации позволяет на втором этапе реализовать любую стратегию построения фильтра (аппроксимация линейными или квадратичными сплайнами), т. к. процесс аппроксимации проводится независимо по каждой компоненте.
Уравнение, описывающее Щ-компоненту нелинейной многомерной функции f (х) после двойной аппроксимации, можно представить в виде
/ (х) = у К . [а (*)г2. + Ь(*)г . + т. ] =
J > Щ [ Щ Щ Щ Щ Щ ]
.
= у [ v 22щ + у г. + Кт) ]. (13)
.
Система дифференциальных уравнений, моделирующих нелинейную динамическую систему методом двойной аппроксимации с использованием квадратичных сплайнов, имеет вид:
£4[ Ка го+К1 • *+К.т;' ]+
+пц(* ),
dx,
й*
у[ К2.а2. + К2 ^ г2. + К2 ^. ] +
+п12(* ),
(14)
стные члены, содержащие произведения х. Последнее не позволяет в системе координат х = (х1, х2,..., хг) обеспечить параллельную и независимую обработку по каждой компоненте функции f (х). При использовании сплайнов первого порядка переход от обобщенных переменных к переменным х, не нарушал линейной структуры уравнений. Учитывая это, можно утверждать, что в такой конфигурации представление нелинейной динамической системы с использованием квадратичных сплайнов менее предпочтительно, чем линейных.
Рассмотрим преобразование системы уравнений, которое позволяет применять квадратичные сплайны, не выходя за рамки независимой параллельной обработки по каждой из компонент нелинейной функции f (х). Для этого преобразуем выражение, содержащее квадрат обобщенной компоненты:
г 2 =1 у сщ.х,
= у ^ + 4 у с^гсщкк (х, + х* )2 -(х, - х* )2 4 ,<к
йх _п
^ = у [ Кл^ 22п + КЬ.) 2п + К птИ) ] +
й* I [ г г г г г г г г ]
+М' ),
Г
г . = у с ..х. + d ., щ ян , щ>
причем коэффициенты, определяющие нелинейную функцию f (х) уравнениями (14), принимают
значения А. = К^), Я* = у, М. = = Kv.mу, если обобщенная переменная находится в заданном диапазоне г. е[гЩ*), zЧ;+1)). Уравнения
(14), в отличие от ситуации, когда на втором этапе используются линейные сплайны, содержат квадратичные слагаемые. Поэтому при переходе к переменным х = (х1, х2,..., хг) возникают перекре-
Выражение, находящееся в квадратных скобках, определяет новые обобщенные переменные 21л = х1 + х2, 22л = х{ - х2. В новых переменных соотношение в квадратных скобках можно записать следующим образом:
у (х, + х )2 -(х,- х )2
— ^^ С с у{2 _^^ с с г.Т2
/ : у, ук / , у, ук ,к '
,<к ,<к
Квадрат обобщенных переменных представим в виде линейных сплайнов с коэффициентами а^Щц, а^-Щк и Ь1Ь^. Соответственно для переменных г1к и 22л получаем:
у
=у сЩ,сЩк(а1Щк г1,к+Ь1Ч;): ,<к ,<к
= у Сфк (а1Щк 21л + Ь1Щк ), (15)
,<к
г г
у СфСф22,к = у сЩ.сЩк (а2Щк 22,к + ) = ,<к ,<к
= ХСфк (а^22Л + Ыц ). (16)
Рассмотрим теперь сумму, находящуюся в
2
квадратных скобках (14):
К а^г2 + К Ъ/г . + К т
ч Щ Щ ч ч Щ ч ч
(-)
(17)
К а(-)г2. = К а
ч/ ч/ ч/ ч/ ч/
i с2/гх2 +
+
i с1чгк (
г<к
а^'л +
iС1ч'1к (
а2^ +
Ь2П )
= К а1**
ч ч
i сф,х, +
i с^х +i[ а^ хг + щ хл + в^ ]
г<к
Далее проведем операцию суммирования по каждому из слагаемых:
К а( ^ г 2 = К а) х
ч ч ч ч ч
i с/х? +i а^ хг +iа!^1 хл +iв1
г<к
г<к
к / у ч%л
г<к
. (19)
i А1ч-к Хг +i А1чк хк = Ц А!
1<к г к>
(-) х +
г<к
Представим каждое из слагаемых, входящих в (17), с учетом выражений (15) и (16). Соответственно имеем:
1[,А2чк хк
к >г
i а!
к >г
iа^ хг +i а^ хк = ±х1
+ i х
i а2ч(
г<к
чгк
г<к
г<к
i (а^ + а2ч->)
. к>г
К .а^г2. =УК .а(-)с2.х2 + ч ч ч ч ч ч/г г
+! х
ЪК^ (А1чк + Щ)
. к >г
+
+
ЕК а(-) В1(-) лч"ч П1 чгк •
(20)
+iС1 ч/гк (^ + Ъ^ - а2« - Ъ2ц )
г<к
Для дальнейших упрощений рассмотрим выражение в круглых скобках и перейдем к переменным х = (х1, х2,..., хг):
(а$ + Ъ1чк - а^ г2л - Ъ2ч-к ) =
= а1% (Х + Хк ) - а^ (х, - хл ) + Ъ^ - Ъ2^ч-1 = = (а^ -а^к)х,. +(а$ + а2ч-))Хк +
+Ъ1ч^ - Ъ2ч-) = А1чк хг + А2ч) Хк + В^.
Введем следующие обозначения:
= а$ - а2ч-), А1% = а1ч-) + а^ , В1^-к) = = Ъ1чИ - Ъ2«.
В результате получим выражение для первого слагаемого в (17):
К а(-) 72 = к а(-) х
Для второго слагаемого в выражении (17) можно записать
КЪ) г. = К.Ъ/ = . (21)
г г
Таким образом, для выражения, находящегося в квадратных скобках (17), можно записать
К .а{-)г2. + К Ъ/г . + К т(=
ч ч ч ч ч ч ч ч
= ! К Л) с/аХ* +> Х
^К^- (А^ + А2^-к )
+
+
i к^сч/х, + кч/.тч^ +i кч/.ач)
г<к
Введем следующие обозначения:
А(х) = К .а(х)с2.., ч/и ч ч ч»'
^=Кч/ Ц>ч° (А1чк+А2ч^)+Ъч/) сч/х, ]=
к>г
= К/1 [ ач-) а1<>) + Ъч-],
(22)
(18) сч-)=кт-+iК^В^.
г<к
Тогда уравнение (17) можно записать в более компактной форме:
К а(-)г2 + К Ъ(-)г + К т(!!) =
= ! А/Х2 +I В/ х, + с/.
(23)
Перегруппировывая слагаемые и меняя индексы во втором слагаемом, получаем соотношение для первого слагаемого в (17):
С учетом соотношения (23) покомпонентное представление многомерной динамической системы представляется в следующем виде:
X
X
у
г ^1^x2 +г 2$ х, + С
--м "11
Г +Г х, + С
г А« х2 +г х, + С«
+ П1Г (*),
(24)
где коэффициенты уравнения (24) принимают значения А, , С, если обобщенная перемен-
принадлежит области _г^, ^^ |, т. е.
ная г
Г1 г(^+1)|; г . _Гс ..х. + й . .
_ V ' V ] ' 41 ¿.^ т ) V
ах
а*
где
г«
г а?
V 1
А^ _
В.) _
_(х1
( А 4) А1]11 А( 4) 22 .... А1]гг
АМ А2111 А( 4 ) 2122 А( 4 ) .... А21гг ,
А(4 ) V Ап1 А( ^ ) А122 А(х) г/'гг У
( В(4) 111 В ( ^ ) £>112 .. .. в^ ^ ( С ( 4 ) 1
В ( ^ ) 211 В(4) 212 •• .. в2 2 }Г , С(») _ С ( 4 ) 21
в« V г1 .. .. в^ 1 у
х2 ... хг) х2 _ (х,2 х22 . . х;;
на представлениях многомерной функции в виде
/ (х) _ г1, н (х) _1м„гп;, (26)
где / (х) — компонента многомерной функции f _ (/,,/2,...,/п); Нц(х) — компонента многомерной функции Н_(Н1,Н2,...,Нп); К.,М. — коэффициенты в разложении функций f, Н.
Покомпонентное представление нелинейной динамической системы можно записать в форме
В векторно-матричной форме система дифференциальных уравнений может быть представлена в виде
г В« 1 х + г С1 + п,(0, (25)
V. у 1
_Г 1 + п,! а),
п
и, (*) _ГМ.гп + п,0(*).
(27)
В соответствии с результатами, полученными выше, нелинейную динамическую систему (27) можно по каждой составляющей аппроксимировать одномерными сплайнами:
гп. « а(4) г . + Ь(4), г . е[ г(4), г("+1) |.
В матричной форме это можно записать в следующем виде:
— _ К [а(4) z + Ь(4) |+ п, (*),
а* _ J 1
и _ М[а(4)z + Ь(|+п0(*), z _ схт + d.
(28)
Особенностью представления (25) является то, что уравнения не содержат смешанных произведений аргументов. Поэтому в отличие от системы уравнений (10) возможно проведение операций независимого оценивания по каждой компоненте.
Представление многомерной функции в виде взвешенной суммы степеней обобщенных переменных является не единственным и зависит от значений установочных коэффициентов.
СУБОПТИМАЛЬНЫЕ АЛГОРИТМЫ, ОСНОВАННЫЕ НА ЛИНЕЙНОЙ СПЛАЙН-ИНТЕРПОЛЯЦИИ НЕЛИНЕЙНЫХ ФУНКЦИЙ
Построим алгоритм оценивания состояния многомерной динамической системы, основанный
Из выражений (27) и (28) следует, что при представлении нелинейной динамической системы одномерными сплайнами появляется дополнительное уравнение, которое обеспечивает пересчет базисных координат х _ (х,, х2,..., хг) в базис расширенных координат z _ (г,, г2,..., г п).
Субоптимальный алгоритм оценки состояния ДС, основанный на кусочно-линейной аппроксимации нелинейных функций, моделируется системой дифференциальных уравнений:
ах
— _ К [а( 4) Z + Ь(8) |+
а* _ J
Р (а() Мт^ _и - М[а(4Я + Ь(]],
— _ Ка(Р + Р (а()т Кт -
- Р (а( )т М т ^Ма(') Р + N, ¡г _ схт + d.
(29)
х2 +
Здесь и далее символ со шляпкой обозначает ции параметра обнаружения в , имеют вид: оценку соответствующей величины.
Уравнения (29) должны быть дополнены условием нахождения в области: г е[г(4), г(4+^) = G(4) .
При переходе из одной области G(4) в другую производится изменение элементов матриц
а(4), ь(4). Сопряжение решений, получаемых в результате интегрирования (29) в последовательно проходимых областях G(4), осуществляется на основе условий непрерывности [5]. Фильтр дает приближенное решение задач оценивания вследствие следующих причин:
• представления исходных нелинейных функций в виде взвешенной суммы одномерных функций;
• приближенности представления кусочно-линейными функциями;
• замены условия г е G(4) , условием г е G(4).
Используя аппроксимацию нелинейной динамической системы одномерными сплайнами, построим математическую модель (ММ) алгоритма фильтрации-обнаружения сигнала на фоне помехи. Модель динамической системы, определяющей задачу обнаружения, имеет вид:
— = f + п^), dt
и^) = вs + Н(х) + п0^),
(30)
где f = / /2,...,/м), Н = Н Н2,..., Нм), х =
= [ Х1, Х2 ,..., ] .
Аппроксимация нелинейной динамической системы одномерными кусочно-линейными функциями представляется как
— = К [а( 4) г0 dt [ 0
+
Ь(4) ]+ n1(t),
u(t) = вs + М [а(4) г0 + Ь(4) ]+п0 (t).
Уравнения, моделирующие алгоритм фильтра-
dX
= к [ dt [
а( 4) гп +
Ь(4) ]
+
+ )
Р (а(4)) Мт^ [и - М[а(4)£0 + Ь(4) ]]
dX
= К [а( 4) г1 + Ь(4) ] dt [ 1 ]
+ 1
а( 4) г, + т
+
Р (а( 4) )т MTN-1 [и - М [(4) г1 + Ь(4) ]]
dP
— = Ка(4)Р + Р(а(4))т Кт -V /
(32)
(31) =
dt
- Р (а(4) )т Мт N-1Ma( 4) Р + N,
^ = ^ + ¿1 - ¿0^ (2и - s - ¿1 - ¿0), dt
г0 = сх0 + d, г1 = сх1 + d.
Особенностью алгоритмов, представленных формулами (29) и (32) является то, что аппроксимация сплайнами каждой из обобщенных компонент г{ имеет один и тот же вид и определяется
только парой коэффициентов (а(4), Ь(4)) , которые
зависят только от номера области, но не от переменной. Кроме того, как видно из самого представления (31), приближение нелинейных функций f и Н одномерными сплайнами определяется произведением матриц, одна из которых зависит только от внешних констант — К (для функции f ) и М (для функции Н), а вторая — (а( 4) г + Ь( 4))
не зависит от аппроксимируемой функции и определяется показателем степени базисных переменных г , который одинаков для всех г =
= ^ z2,..., ).
Уравнениям (32) можно придать другую форму, если пересчитать расширенный базис в исходный в соответствии с формулами
= КА 4) с.,
= КЛ + ^^
с(4) = м а4)с.,
ЧУ Ч! Ч' Ч!'
D(4) = М .а?й . + М Ь( 4), . . . . . .
(
^ f(х)= ^ Н(х) =
£ А(4) хт + £В(4);
V У
( п
V У
£С(4) хт + £ в
(4 )
(33)
(34)
С учетом (33) и (34) можно записать:
ах
л
^ = |Х А(4) ] хт +Г В1) + П,(*),
ГГ С(4) 1 хт + Г D(s) + П0(*); у 1
(35)
а*
V 1
( п
\
V 1
п
г А^ х + г В^ +
(4) .
У 1 \т
+Р
г а'
(4)
V 1
1,1 о
(
\
аР
а*
(
\
г А(4)
V 1 у
п
(
Р + Р
гС? х + гD'
V 1 У 1 т
ставляет собой довольно дорогостоящую с точки зрения вычислительных затрат процедуру. Поэтому воспользуемся результатами исследований, полученных в [1]. Представим многомерные функции, входящие в описание ДС, в виде совокупности одномерных функций, которые затем аппроксимируем одномерными квадратичными сплайнами. Такое представление значительно проще, т. к. позволяет рассматривать каждую компоненту многомерной функции независимо от других.
В соответствии с (24), значения матриц А^), В1, С определяются из выражений
А1 _ К а( с2., В(*> _ К - Г [а« а1(5!), + Ь(") с ..х. 1 (36) »" уИ ч"' 1 _ V ч* V чу . ]
к >
г а(4)
V 1 у
Р
т
г а(4)
V 1 у
гА
(4)
V 1
Р+ц.
С1 _ К .т1 + Г К а^В/* .
.<к
Система уравнений (35) представляет ММ системы оценивания состояния ДС, основанную на одномерных сплайнах первого порядка. Определим такой фильтр как сплайн-фильтр первого порядка.
СУБОПТИМАЛЬНЫЕ АЛГОРИТМЫ, ОСНОВАННЫЕ НА КВАДРАТИЧНОЙ СПЛАЙН-ИНТЕРПОЛЯЦИИ НЕЛИНЕЙНЫХ ФУНКЦИЙ
Аппроксимация нелинейных ДС кусочно-линейными функциями (сплайн-функции первого порядка) обладает такими достоинствами, как простота реализации (следствие линейности) и более высокая точность воспроизведения функций, чем двумя членами степенного ряда Тейлора. В то же самое время имеется тот недостаток, что при переходе из одной подобласти к другой скачкообразно происходит изменение коэффициента усиления фильтра, что приводит к возникновению переходных процессов. Последнее связано с наличием разрывов первого рода производной кусочно-линейной функции. С другой стороны, сплайн первого порядка в принципе ничем не отличается от кусочно-линейной функции. Т. е. на уровне кусочно-линейных представлений преимущества сплайновой интерполяции не выявляются. Поэтому для исключения переходных процессов и улучшения качества фильтрации сигналов естественно перейти при аппроксимации нелинейных функций в модели ДС к квадратичным сплайнам
[2-5].
Применение напрямую фильтра второго порядка для многомерных динамических систем пред-
В случае если уравнение наблюдения тоже содержит нелинейную функцию Н(х) , то можно выписать аналогичные соотношения для коэффициентов Ру, и 1/, 11, определяющие аппроксимацию Н(х) :
V« _ М а^с2.., и1 _ М . Г [а(*)а/*) + Ь(*)с ..х. 1,
к >
г
I(^ _ М т(4) + У М а(4) В1(4)
ищ - ш + ¿.,Ш саиса 01срк .
.<к
В векторно-матричной форме система дифференциальных уравнений, моделирующих нелинейную ДС, может быть представлена как
ах
а*
z _
(
( п 1
г а?
V . у л
г v
( 4 )
V .
- г В(4) 1 х + гг С. + п,(*),
V. у .
г и? 1 х+г J. + по(*),
V. у .
(37)
где матрицы и вектора, входящие в описание (37), определяются как
( А(4) А (4) л1.11 л1. 22
А.) _
А(4) А(-/11
1 22
А(4) 1
.... Л,.гг
А( 4)
.... А2 .гг
В« _
А(х) А(х) V Аг^11 А. 22
2 ••••
в( В(')
А( 4)
у
2 .1
V г.1
2 1 2
В^
г 2
В,( ^
(у
В( 4) Л2 .г
В«
1 у
С( 4) _
/С (4 л
С ( 4 ) 2 у
V С21 у
V 21 у
и
х2 +
V 4 =
1
и4 =
( V ( 4) V ( 4 ) 1 1 22 V ( 4 ) ^ 1 1КК
V (4) У 2111 V (4) 2 1 22 V ( 4) •••• У 2}КК
V (4 ) V К11 V (4) К122 V (4) К1КК у
( и ( 4 ) 1 1 1 и (4) 1 1 2 ... и(^
и ( 4) и 211 и ( 4) 2 1 2 ... и24) 21
и (4)
V ит
и (4)
ип 2
J(4) =
— I ^
и4
К/г у 2 _
г) , X2 =(X2
( Т ( 4 ) ^
Т ( 4 ) Т 21
V Т21 у
V 21 у
. X?).
Модель (37) может быть использована при построении фильтров второго порядка. К примеру, воспользуемся структурой модифицированного фильтра второго порядка, который может рассматриваться как частный случай усеченного и га-уссовского фильтров. Совокупность уравнений, моделирующих модифицированный фильтр, имеет вид
dx
— = f (X, t) + 0.5fxx (X, t): Р + dt
+ РНТN0! [и - Н(Х,t) - 0.5НXX: Р], Лх (X, t )Р + PfxT(X, t) -- РНТ(Х, t )N-1H X (X, t )Р + N1,
(38)
на матрицу Р, приближенно равную ковариационной матрице оценивания.
В системе уравнений введены следующие обозначения: Н^) — га-мерная векторная функция «-мерного векторного аргумента, а Р — симметричная матрица размером п х п ;
f : Р
Г %
i
Гк=1 дсрХк
Е" % р
/-ч /-ч ¡к
i,k—1 сХ|-сХк
Н.: Р
i р
/ ' ~ ~ ¡к i,k—1 (^ХрХк
Учитывая что
(
f (X) =
iА
Л
( 4 ) 1
V 1 (
Н« =
Л
iV
(4 ) 1
V 1 у можно записать:
( п \
i А4)
*(Го) = ^с, Р(0 = Ро.
Структура фильтра определяется двумя модулями:
• модулем оценивания состояния динамической системы;
• модулем вычисления корреляционной функции ошибки оценивания.
Структура полученного фильтра охвачена многомерной обратной связью по вектору невязки и - Н^,?) - 0.5Н^ : Р . Этот вектор умножается на матрицу интенсивностей шумов измерений . Далее следует умножение на НТ, что соответствует как бы учету чувствительности векторной функции наблюдения к приращению аргумента, причем производные определяются при оценочном движении X . После этого следует умножение
V 1 у
п
f (X) =
Н(^ =
fx (X, t) = 2 Н X (X, t) = 2
Л
iV)4) (
1
V 1 у
i Н р
^^ -л -л ¡к
i,k—1 ЩОХк
( « \ п
i в(4) X + iС;
V 1 у 1
( п \ п
- i и(4) X + i Jj,
V 1 у 1
( п \ п
i в(4) x+iс;
V 1 у 1
( п \ п
- i и(4) x+i jj;
V 1 у 1
i а(4) 1
(
1
V 1 у
(
X +
л
л
(
fxx (X, t) = 2
i v!4
V 1 у
л
XX +
i в(4) 1
( п
i и(4)
V 1 у
i а(
( 4 ) 1
V 1 у
(
. (39)
Н XX (X, t) = 2
iV
( 4 )
V 1 у
Подставляя последние выражения в соотношения (38), получаем
X
X2 +
X2 +
dx л —=f(х)+ dt
(
iА
Л
V 3
: Р + Р
V 3
iV') х + i и
]( * )
V 3
N 4
1,1 0
и - Н(х) -
iV
(*)
V 3
: Р
ар
dt
(
\
^ *)
(
iА
V 3
(
Р
2
х +
Л
V
i в
V 3
(
Р + Р
iv) *) х + i и
V 3 у Х(0 = Хо, P(to) = Ро.
V 3
(
\
^ *)
(
iА
V 3 у (
х +
Л'
0
2
V 3
i в
V 3 у (
(40)
i v« х + i и
V 3
Р +
Так как в соотношениях (37) нет перекрестных членов, то выражения (39) не будут содержать смешанных производных, а только вторые производные по каждой компоненте функций — f = (/, f2,..,fn), Н = (Их, Н2,..., Нп) и которые являются суммой одномерных функций. Следствием этого является наличие только диагональных сомножителей Ри в выражении (39). С учетом сказанного можно записать:
i а;
(*)
: Р
V 3 у
(
\
114
(*) 1 # гг
V 3 у
Еу А(*)
/ * пдгг
пдг г
V 3 у
Р,
Р,
(41)
iV
(*)
: Р
V 3 у
(
\
i iv
(*) 1 # гг
V 3 у
Р,
(
\
i iv-
1 цгг
V 3 у
Р,
Оценим вычислительные затраты при реализации стандартного усеченного фильтра второго порядка и фильтра второго порядка, основанного на сплайн-интерполяции одномерными функциями.
Оценивание в динамических системах и, в частности в системах автоматического управления, должно осуществляться синхронно с поступлением информации наблюдения, т. е. в реальном масштабе времени. При этом большое значение приобретает необходимая вычислительная производительность, особенно при оценивании многомерных и многосвязных процессов. В этом отношении алгоритмы второго порядка для сложных систем предъявляют весьма высокие требования к вычис-
лительным средствам. Описанные выше непрерывные алгоритмы оценивания представляют совокупность векторного дифференциального уравнения оценивания состояния и матричного дифференциального уравнения для определения ошибки.
Размерность векторов и матриц, входящих в эти уравнения, соответственно равны п и п х п . С учетом симметрии корреляционной матрицы, общее число скалярных дифференциальных уравнений, соответствующих каждому из рассмотренных алгоритмов, составляет п + 0.5п(п +1). Уравнения интегрируются на основе того или иного метода численного интегрирования обыкновенных дифференциальных уравнений (методов Эйлера, Адамса, Рунге—Кутта и др.) с использованием инструментальной информации на каждом шаге. Шаг численного интегрирования Дt ограничивается сверху одним из следующих факторов:
• устойчивым управлением в реальном времени;
• численной сходимостью алгоритмов оценивания.
ОЦЕНКА ВЫЧИСЛИТЕЛЬНЫХ ЗАТРАТ
Одной из характеристик вычислительной "трудоемкости" алгоритма является общее число элементарных арифметических операций на один шаг. Именно в этом отношении алгоритмы оценивания второго порядка значительно сложнее и труднее в реализации по сравнению с алгоритмами первого порядка. Для усеченного фильтра второго порядка (12) наиболее трудоемкими с точки зрения вычислительных затрат являются процедуры вычисления : Р и Нхх: Р . Число арифметических операций, необходимых для их вычисления, складывается из операций вычисления матриц Гесса и Н^ и операций вычисления собственно Г : Р и Н : Р . Если на вычисление
т
2
т
2
2
т
второй частной производной от скалярной функции тратится в среднем п^ операций, то общее число элементарных арифметических операций, необходимых для однократного вычисления fxx : Р и Н^ : Р , приблизительно равно [5]
Ыхх = (п + т)п[2п + 0.5(п + 1)п] .
(42)
Необходимо отметить: указанные выше процедуры вычисления ^ : Р и Н^ : Р присутствуют как в основном алгоритмическом модуле (определяется оценка X), так и в модуле вычисления корреляционной функции.
Следующими по сложности вычислений являются члены PfТ и РНТ . Если на вычисление 1-й частной производной от скалярной функции требуется в среднем пх арифметических операций, то общее число элементарных операций, необходимых для однократного вычисления PfX и РНТ, составит примерно [5] Ых = (п + т)п(2п + пх).
Таким образом, общие вычислительные затраты равны N = Ых + :
N =
= (п + т)п[4п + пх + 0.5(п + 1)п:а ] ^ Ы-
(43)
Определим вычислительные затраты, соответствующие алгоритму оценивания (40). В соответствии с выражениями (41), они содержат только диагональные элементы, поэтому для вычисления
(
iА
Л
V 1
(
: Р
iV
Л
(4 )
V 1
: Р
требуется в п раз операций меньше, чем по формуле (42).
То же самое можно сказать о вычислении PfX и РНТ . Здесь также вычислительные затраты будут меньше в п раз. Как итог, общие вычислительные затраты будут пропорциональны кубу размерности N ~ п3. С ростом размерности системы оценивания выигрыш в вычислительных затратах будет расти пропорционально п .
Таким образом, аппроксимация нелинейной составляющей динамической системы с помощью сплайнов (линейных или квадратичных) является перспективным направлением с точки зрения использования этих моделей в задачах оценивания. Применение сплайнов более высоких степеней в задачах нелинейной фильтрации представляется довольно проблематичным: во-первых, из-за сложности реализующего алгоритма, во-вторых, даже незначительный выигрыш в точности может
быть полностью нивелирован различного рода неопределенностями, присутствующими в динамической системе. Здесь имеется в виду тот факт, что на получение оптимальных оценок влияет не только качество аппроксимации, но и множество других факторов — погрешности измерений; шумы округления; точность исходных математических моделей самой динамической системы, принятых законов распределений случайных процессов, начальных условий, и т. д.
ЗАКЛЮЧЕНИЕ
В заключение отметим основные научные результаты, представленные в настоящей статье.
1. Получено описание нелинейных динамических систем, основанных на представлении многомерных функций в виде линейной суперпозиции одномерных функций, заданных в обобщенном базисе.
2. Разработаны алгоритмы субоптимального оценивания и фильтрации, использующие линейную сплайн-интерполяцию многомерных функций.
3. Разработаны алгоритмы оценивания нелинейных динамических систем, представленных в виде одномерных сплайнов.
4. Разработаны алгоритмы оценивания состояний нелинейных динамических систем, основанных на представлении ДС одномерными квадратичными сплайнами.
5. Проведена оценка вычислительных затрат, необходимых для реализации разработанного метода, основанного на представлении квадратичными сплайнами. Показано, что его реализация требует в п раз меньше элементарных вычислительных операций (умножений) чем аналогичный фильтр второго порядка.
Полученные результаты могут быть положены в основу разработки системы многоканального приема—передачи информации с фильтрацией сбоев.
СПИСОК ЛИТЕРАТУРЫ
1. Бутырский Е.Ю. Аппроксимация многомерных функций // Информация и космос. 2006. № 4. С. 40-51.
2. Бурова И.Г., Демьянович Ю.К. Теория минимальных сплайнов. СПбГУ, 2001. 315 с.
3. Голубков А.Ю. Построение внешних и внутренних функций представления непрерывных функций многих переменных суперпозицией непрерывных функций одного переменного // Фундаментальная и прикладная математика. МГУ, 2002. Т. 8, № 1. С. 27-38.
4. Демьянович Ю.К. Локальная аппроксимация на многообразии и минимальные сплайны. СПГУ,
4
п
и
1994. 346 с. Санкт-Петербургский государственный
5. Справочник по теории автоматического управления / университет сервиса и экономики (Кувалдин И.А.)
Под ред. А.А. Красовского. М.: Наука, 1987. 711 с.
Контакты: Чалкин Владимир Петрович, [email protected]
Санкт-Петербургское отделение Института
химфизики им. Н.Н. Семенова РАН (Бутырский Е.Ю., Материал поступил в редакцию 8.12.2009. Чалкин В.П.)
ON SIGNALS SPLINE-FILTRATION
Eu. Yu. Butyrsky1, I. A. Kuvaldin2, V. P. Chalkin1
1St. Petersburg Branch of Institute for Problems of Chemical Physics RAS 2St. Petersburg State University for Service and Economics
A method of suboptimal dynamic system evaluation, based on the grounds of approximation of continuous function of several variables by a weighted sum of univariate functions, defined on a generalized basis, formed as a linear superposition of arguments of the assumed function, is proposed. The stated material is a foundation of the main theory of signal spline-filtering, suggested by Eu.Yu. Butyrsky.
Keywords: dynamic system, suboptimal evaluation, univariate functions, generalized basis, spline-filtering