ВЕСТНИК ТОМСКОГО ГОСУДАРСТВЕННОГО УНИВЕРСИТЕТА
2010 Управление, вычислительная техника и информатика № 2(11)
УДК 681.5
С.В.Смагин
ЭКСТРАПОЛЯЦИЯ В ЛИНЕЙНЫХ ДИСКРЕТНЫХ СИСТЕМАХ С НЕИЗВЕСТНЫМ ВОЗМУЩЕНИЕМ
Рассматривается алгоритм синтеза оптимального экстраполятора, определяющего оценку вектора состояния на один такт вперед для дискретной линейной динамической системы с аддитивными возмущениями, содержащими неизвестную постоянную составляющую. Приводятся результаты вычислительного эксперимента.
Ключевые слова: дискретная линейная система, экстраполятор, неизвестные возмущения.
Известные методы фильтрации и экстраполяции базируются на алгоритмах, использующих оценки неизвестного возмущения [1 - 7]. В настоящей работе для дискретного объекта с неизвестной постоянной составляющей возмущений предлагается метод оптимальной экстраполяции, не использующий оценки неизвестного возмущения. Метод базируется на преобразовании модели и сведении к задаче линейной калмановской экстраполяции [8]. Результаты настоящей статьи обобщают [9] на случай решения задач экстраполяции.
1. Постановка задачи
Рассматривается дискретная система, которая описывается следующими разностными уравнениями:
x(k +1) = A(k)x(k) + f + q(k), x(0) = x0 , (1)
где x(k) є Rn - вектор состояния; A(k) - nxn-матрица; f - неизвестный постоянный вектор; q(k) - белая гауссовская случайная последовательность с характери-
стиками
M{q(k)} = 0, M{q(k)qT (j)} = Q(k)5^ .
Канал наблюдений имеет вид
y (k) = S (k) x(k) + v(k), (2)
где y(k) є Rl - вектор измерений; S(k) - матрица размерности I x n ; v(k) - гауссовская случайная последовательность ошибок измерений с характеристиками M{v(k)} = 0 , M{q(k)vT (j)} = 0 , M{v(k)vT (j)} = V(k)5t] .
Случайный вектор x0 и процесс (q(k), v(k)) независимы:
M{x(0)} = x0, M {(x(0) -x0)(x(0) -^)T} = P0.
Для системы (1) и канала наблюдений (2) требуется построить экстраполятор, вычисляющий оценку вектора состояния на один такт вперед, не использующий оценки неизвестной постоянной составляющей возмущений.
2. Экстраполяция в дискретных системах
Для решения задачи проводится преобразование дискретной системы (1). Для этого исключается постоянная составляющая возмущений f из описания объекта посредством вычитания из уравнения (1) такого же уравнения, но со сдвигом на один такт:
x(k +1) = (А(*) + En)x(k) - A(k -1)x(k -1) + q(*) - q(k -1). (3)
Расширение пространства состояния системы осуществляется посредством добавления к уравнению (3) тождества x(k) = x(k). Тогда система представляется в векторно-матричной форме
х(*+1) = )х(*)+q(*), х(0) = х0, (4)
где А(*) - (2п х 2п )-матрица и вектор д (*) имеют следующую блочную структуру: М*) = (Л<« + Еп -А(0 - 1), щи) = (^^ - ») . (5)
Вектор Х0 = (х+ х+ )т в (4) имеет характеристики
М{Х(0)} = Х0, м {(Х0 -Х0ХХ0 -Х0)т} = Р0 .
Отметим, что в рассмотренной модели (4) процесс д (*) не является белой гауссовской последовательностью, процессы д (*) и д (* -1) будут коррелированы:
Q(k), если у = *,
2 (* -1), если у = * -1,
0, если 0 < у < * -1,
м{д (к) qт (])} =
где )=(>+ы -■> 0), -1)=[-2'(0 -■> 0
Представим канал наблюдений для расширенной системы (4) в виде
у(*) = 5 (*) Х (*) + у(*), (6)
где 5 (*) = (5 (*) 0).
В качестве уравнения для вычисления оценки прогноза вектора состояния для расширенной системы выберем уравнение, по своей структуре совпадающее с экстраполятором Калмана:
Х(* +1) = А(к) Х(к) + К (к)(у (*) - 5 (*) Х(к)), Х(0) = Х0. (7)
Учитывая (4) - (7), получим следующее уравнение для ошибки
е(*) = Х(*) - Х(*):
е(* +1) = (!(*) - К(*)5(*))е(*) + К(*)у(*) - д (*). (8)
Матрица Р(*) = М{е(*)ет (*)} определится из следующего разностного уравнения:
Р(* +1) = М{е(* + 1)ет (* +1)} = (!(*) - К(*)5(*))Р(*)(!(*) - К(*)5(*))т +
+к(*у (*)к + (*)+2(*) - (!(*) - к(*)5(*щ (*) - 2е+ (*)(!(*) - к(*)5(*))+,
Р (0) = Р0, (9)
где 2е(*) = М{е(*)д + (*)}. Для вычисления 2е(*) необходимо уравнение (8) представить в виде
е(*) = (А(* -1) - к(* -1)5(* -1))е(* -1)+к(* -1)у(* -1) - д(* -1).
Тогда
2>е (*) = М{е(*)дт (*)} = (!(* -1) - К(* -1)5(* - 1))М{е(* - 1)дт (*)} +
+К(* - 1)М{у(* - 1)д + (*)} - М{д(* - 1)д + (*)}. (10)
В силу того, что в (10) два первых слагаемых равны нулю, получим
2е (*) = -2 (*).
Окончательно, учитывая (9), получим уравнение
Р(*+1) = М{е(*+1)е+ (*+1)} = А*) - к(*)5(*))р(*)(’!(*) - к(*)5(*))+ +
+к(*V(*)кт (*)+2(*) + А*) - к(*)5(*))2(*)+2(*) - к(*)5(*))т,
Р (0) = Р0, ()
Оптимизируемый критерий, характеризующий точностные характеристики экстраполятора, зададим в виде
3 (* +1) = ир (* +1). (12)
Оптимальные коэффициенты передачи фильтра К(*) определяются из условия
3 (* +1)
dK (*)
= 0. (13)
Учитывая (12) и правую часть уравнения (11), применяя правила матричного дифференцирования следа от матрицы [10], получим из условия (13) уравнение для определения матрицы К(*):
(5(*)Р (*)5т (*) + V(*))К (*) - (А(*)Р (*)5т (*) + 2(*)5т (*)) = 0 . (14)
Решение уравнения (14) относительно К(*) дает следующую формулу:
К (*) = (!(*) Р (*) + 2(*)) 5 (* )т (5 (*) р (*) 5 (* )т + V (* ))-1. (15)
Конечный результат сформулируем в виде теоремы, учитывая блочную структуру матрицы Р (*):
Р (*) = ( ) Рт (*)1, (16)
I Р2(° ) Р3(* ) ^
а также блочные структуры матриц А(*), 5(*), Q(k), 2(*).
Теорема. Пусть процесс с неизвестным постоянным возмущением определяется уравнениями (1), модель канала наблюдений задается соотношением (2) при переменных матрицах А, 2, V, 5 . Тогда оптимальный алгоритм экстраполяции определится разностными уравнениями
х(* +1) = (А(*) + Еп)Х(*) - А(* -1)Х(* -1) + К1 (*)(у(*) - 5(0)х(*)) (17)
с начальными условиями для экстраполятора
Х(0) = х0 , Х(1) = М{х(1)} = х1.
Матрица Кх(к) в (17) выражается по формуле
К (к) = [(А(к) - Еп) р (к) - А (к -1) р2 (к) - 0(к -1)] X х£ т (к)(£ (к) р1(к) £ (к )т + V (к ))-1, где матрица р1 (к) определяется из следующей системы уравнений:
р (к +1) = (А (к) - Еп - Кх (к) £ (к)) р (к)(А (к) - Еп - К! (к )£ (к))т -- А (к -1) Р2 (к)(А (к) - Еп - К (к) £ (к ))т - (А (к) - Еп - К1 (к) £ (к)) х х р1 (к) Ат (к -1) + А (к -1)р3 (к) Ат (к -1) + К1 (к V(к)К1т (к) +
-(А (к) - Еп - К (к)£(к))0(к -1) - 0(к -1)(А (к) - Еп - К (к)£(к))т +
В (19) - (22) начальные условия р10, р20, р30 являются соответствующими блоками матрицы Р0.
Доказательство строится на использовании формул (7), (11), (15), (16) и на блочном представлении матрицы К (к) в виде
Замечание. Задачу экстраполяции можно также рассмотреть для следующего канала наблюдений:
V (к) - случайная последовательность ошибок измерений с характеристиками: М{у(к)} = 0, М{д(к)ут(])} = 0,
+6(к) + 0(к -1), #(0) = До, р2 (к +1) = (Еп - К 2 (к) £ (к)) Рі (к )(Л(к) - Еп - К (£) £ (к ))т -
-(Еп - К 2 (к )£ (к)) рТ (к) Л (к -1) - (Еп - К 2 (к )£ (к ))0(к -1) + +К2 (к)¥(к)КТ (к), р2(0) = р2,о,
Рз (к +1) = (Еп - К 2 (к) £ (к)) р (к)(Еп - К 2 (к )£ (к ))т +
+К 2 (к V (к) К Т (к), рз(0) = рзо,
К 2(к) = р1(к )£ т (к)(£ (к) р1(к )£ (к )т + V (к ))-1.
_у(к) = £ (к)X (к) + V (к),
где
Ы(у(к)ут(])} = V(к)5г,;, V(к)
3. Результаты вычислительного эксперимента
Рассмотрим применение алгоритма экстраполяции для модели второго порядка вида (1), канала наблюдений (2) со следующими значениями параметров:
--(о! о1,); <?-(Т о!); --«;
*=а 1); «=(1;5); ^о-со» 1»
Результаты моделирования предложенного экстраполятора (17) и экстраполя-тора Калмана [8], не учитывающего наличие неизвестных возмущений, приведены на рис. 1.
x2(k),
Рис. 1. Результаты сравнения (1 - реализация процесса; 2 - реализации оценок экстраполяции, построенных по алгоритму (17); 3 - оценка, построенная с помощью экстраполятора Калмана, не учитывающего наличие неизвестных возмущений
Заключение
Разработан алгоритм синтеза дискретного оптимального экстраполятора для объекта, возмущения которого содержат неизвестную постоянную составляющую. Алгоритм построен на основе расширения пространства состояния и исключения из модели неизвестной составляющей. В отличие от классического экстраполятора Калмана, предложенный экстраполятор использует рекуррентные оценки, построенные на двух предыдущих тактах.
ЛИТЕРАТУРА
1. Astrom K., EykhoffP. System identification. A survey // Automatica. 1971. V. 7. P. 123 - 162.
2. FriedlandB. Treatment of bias in recursive filtering // IEEE Trans. on Automat. Contr. 1969. V. AC-14. P. 359 - 367.
3. Gillijns S., Moor B. Unbiased minimum-variance input and state estimation for linear discrete-time systems // Automatica. 2007. V. 43. P. 111 - 116.
4. Hou M., Patton R. Optimal filtering for systems with unknown inputs // IEEE Trans. on Automat. Contr. 1998. V. AC-43. P. 445 - 449.
5. Hsieh C.-S. A unified solution to unbiased minimum-variance estimation for systems with unknown inputs // Proc. 17th World Congress The International Federation of Automatic Control. Seoul. Korea. July 6 - 11, 2008. P. 14502 - 14509.
6. Hsieh C.-S. Robust two-stage Kalman filters for systems with unknown inputs // IEEE Trans. on Automat. Contr. 2000. V. AC-45. P. 2374 - 2378.
7. Пугачев В.С., Синицин И.Н. Стохастические дифференциальные уравнения. М.: Наука, 1990. 630 с.
8. Kalman R.E., Busy R. A new results in linear filtering and prediction theory // Trans. ASME J. Basic Engr. 1961. V. 83. P. 95 - 108.
9. Смагин С.В. Фильтрация в линейных дискретных системах с неизвестными возмущениями // Автометрия. 2009. Т. 45. № 6. C. 29 - 37.
10. Амосов А.А., Колпаков В.В. Скалярно-матричное дифференцирование и его применение к конструктивным задачам теории связи // Проблемы передачи информации. 1972. № 1. С. 3 - 15.
Смагин Сергей Валерьевич
Томский государственный университет
E-mail: ssv@fpmk.tsu.ru
Поступила в редакцию 15 декабря 2009 г.