Автоматика и телемеханика, № 11, 2020
© 2020 г. Б.М. МИЛЛЕР, д-р физ.-мат. наук (bmiller@iitp.ru)
(Институт проблем передачи информации РАН, Москва;
Казанский федеральный университет),
К.С. КОЛОСОВ (kirill.kolosov.com@mail.ru)
(Институт проблем передачи информации РАН, Москва)
РОБАСТНОЕ ОЦЕНИВАНИЕ НА ОСНОВЕ МЕТОДА
НАИМЕНЬШИХ МОДУЛЕЙ И ФИЛЬТРА КАЛМАНА1
Предлагается новый подход для решения задачи фильтрации в линей-
ных системах по неполным измерениям, где характеристики динамиче-
ского шума точно неизвестны, а в измерениях могут присутствовать ано-
мальные негауссовские ошибки. В основе предлагаемого алгоритма лежит
идея совместного использования адаптивного фильтра Калмана и обоб-
щенного метода наименьших модулей. На примерах численного модели-
рования показано, что в сравнении с классическим методом оптимальной
линейной фильтрации решение обладает меньшей чувствительностью к
кратковременным выбросам в измерениях и обеспечивает быструю на-
стройку параметров динамики системы. Предлагаемый алгоритм может
быть использован для решения навигационной задачи на борту летатель-
ных аппаратов или для решения задачи сопровождения цели. Для реали-
зации метода наименьших модулей используется эффективный алгоритм
L1-оптимизации.
Ключевые слова: фильтр Калмана, метод наименьших модулей, L1-оп-
тимизация, адаптивная фильтрация, робастная фильтрация, навигация,
отказоустойчивость, негауссовские шумы.
DOI: 10.31857/S0005231020110057
1. Введение
Методы фильтрации широко используются в задачах, где необходимо по-
лучать оценку состояния системы в реальном времени на основе выборки из-
мерений нарастающего объема. Более точно, предположим, что на момент ti,
i ∈ N, имеется выборка наблюдений Yi = y(t0),...,y(ti), каждое наблюдение
является реализацией случайной величины с условной плотностью распре-
деления f(y(ti) | x(ti), Yi-1), где x(ti) ∈ X, а X - пространство состояний
системы. Динамика системы описывается марковским процессом, в котором
состояние системы x(ti) в момент времени ti связано с состоянием систе-
мы x(ti-1) в момент времени ti-1 через условную плотность распределения
φ(x(ti) | x(ti-1)). При решении задачи фильтрации основной интерес пред-
ставляет апостериорная плотность распределения p(x(ti) | Yi). Известно, что
1 Работа выполнена частично за счет средств субсидии, выделенной в рамках Госу-
дарственной поддержки Казанского (Приволжского) федерального университета в целях
повышения его конкурентоспособности среди ведущих мировых научно-образовательных
центров.
72
когда наблюдения и динамика системы описываются линейными уравнения-
ми, а f и φ представляют собой гауссовские распределения, искомая плот-
ность p(x(ti) | Yi) также является гауссовской и задача имеет аналитическое
решение. В этом случае уравнения динамики и наблюдений имеют вид:
x(ti) = F (ti-1, ti)x(ti-1) + n(ti-1, ti),
(1)
y(ti) = Hx(ti) + ξ(ti),
где F (ti-1, ti) - матрица прогноза состояния; H - постоянная матрица наблю-
дений; n(ti) и ξ(ti) - векторы нормально распределенных случайных величин,
таких что
cov(n(ti-1, ti), n(ti-1, ti)) = Q(ti-1, ti),
(2)
cov(ξ(ti), ξ(ti)) = R(ti).
Параметры апостериорной плотности распределения p(x(t) | Yt) - вектор ма-
тематических ожиданий и ковариационная матрица - рассчитываются в со-
ответствии с рекуррентным алгоритмом Калмана, который состоит из двух
шагов:
Прогнозирование:
x(ti) = F (ti-1, ti)x(ti-1),
(3)
P (ti) = F (ti-1, ti
P (ti-1)FT(ti-1, ti) + Q(ti-1, ti);
Коррекция оценки состояния по текущим измерениям:
K
P (ti)HT(
P (ti)HT + R)-1,
(4)
x(ti) = x(ti) + K(y(ti) - H x(ti)),
P (ti) = (I - KH
P (ti).
Такая оценка является оптимальной по критерию минимума дисперсии ошиб-
ки оценивания [1, 2]. Фильтр Калмана нашел широчайшее применение в за-
дачах навигации [3-5]. Но предположение о нормальности распределений не
всегда является адекватным. Например, в навигационных системах ЛА для
коррекции инерциальных датчиков нужно использовать радионавигацион-
ные системы, измерения которых могут быть подвержены помехам. Под воз-
действием помех вид распределения ошибок измерений f(y(t) | x(t), Yt-1) мо-
жет существенно отличаться от нормального. В таких условиях применение
фильтра Калмана в оригинальном виде в системах с избыточными измере-
ниями снижает надежность решения в целом, так как наличие аномальных
ошибок хотя бы в одном измерении приводит к аномальным ошибкам в оцен-
ке всех компонент вектора состояния. Для повышения устойчивости оценки
к аномальным ошибкам измерений необходимо использовать робастные ме-
тоды фильтрации.
Модель динамики системы также может стать источником аномальных
ошибок оценки. Такая проблема возникает, например, в задаче сопровожде-
ния маневрирующей цели, где модель динамики системы может существен-
но изменяться во времени. В работах [2, 6] приводится описание адаптив-
ных алгоритмов, нацеленных на решение задачи оптимальной фильтрации в
73
условиях неопределенности модели динамики системы и модели измерений.
Фильтры Лайниотиса-Калмана хорошо решают задачу идентификации си-
стем с гауссовскими шумами, но применение этих алгоритмов в системах,
где ошибки измерений могут быть существенно негауссовскими, мало изуче-
но. Существуют адаптивные алгоритмы, которые основаны на сопоставлении
теоретических значений ковариационных матриц ошибок измерений и оши-
бок оценки с фактическими, рассчитанными по выборке измерений. Такие
алгоритмы рассматриваются в публикациях [4, 7-9]. В [10] рассматривается
алгоритм робастной фильтрации с использованием квадратичного критерия.
В [11-13] предлагается робастная форма фильтра Калмана, где используется
М-оценка для обнаружения и устранения аномальных измерений. Отмечает-
ся, что использование L1-нормы ошибок в штрафной функции для М-оценки
существенно повышает устойчивость решения по отношению к аномальным
ошибкам негауссовского типа [14].
В [14] также отмечается, что одновременное достижение свойств робастно-
сти и адаптивности в общем случае не представляется возможным: свойство
адаптивности обычно рассматривается в контексте повышения эффективно-
сти оценки при условии симметричных распределений ошибок, а свойство
робастности рассматривается в контексте повышения стабильности решения
в случае асимметричных распределений. При этом рассматривать адаптив-
ность в контексте асимметричных распределений не имеет смысла. Цель дан-
ной статьи - разработка такого метода фильтрации, который в один момент
времени будет обладать либо свойством адаптивности, либо свойством ро-
бастности, но выполняться это переключение должно автоматически.
Предлагается новый подход, в котором для обнаружения и устранения
аномальных измерений на каждой итерации используется метод наименьших
модулей. Одновременно с этим используется метод сопоставления ковариаци-
онных матриц для настройки параметров динамики системы и метод филь-
трации Калмана для получения оценки текущего состояния. На численных
примерах будет показано, что предлагаемый алгоритм повышает устойчи-
вость решения к асимметричным помехам в измерениях и повышает эффек-
тивность решения в некоторых случаях симметричных негауссовских помех.
Используемый в алгоритме метод наименьших модулей минимизирует
L1-норму ошибок в избыточной системе линейных уравнений. Эта процедура
требует применения специальных методов оптимизации, так как рекурсив-
ный метод наименьших квадратов, применяемый в [11-13], не дает точного
решения и обладает численной нестабильностью, которая приводит к пробле-
ме выбора критерия сходимости [15]. Поэтому в статье уделяется внимание
численным методам, которые могут быть использованы для эффективной
реализации алгоритма на ЭВМ (см. подраздел 3.1).
В разделе 2 рассматриваются основные соотношения адаптивных алгорит-
мов, основанных на принципе сопоставления ковариационных матриц. В раз-
деле 3 дается описание предлагаемого алгоритма, который основан на методе
наименьших модулей. В разделе 4 представлены результаты моделирования
и сравнение характеристик предлагаемого алгоритма с методом оптимальной
фильтрации Калмана.
74
2. Адаптивный фильтр Калмана, основанный на сопоставлении
ковариационных матриц
Адаптивные алгоритмы разделяются на две категории. К первой относят-
ся алгоритмы, в которых оцениваются элементы матриц F и H в уравнени-
ях (1). Эти алгоритмы разрабатываются в контексте задач идентификации
системы. Ко второй категории относятся алгоритмы, где оцениваемыми па-
раметрами являются элементы матриц Q и R, т.е. предполагается, что харак-
теристики динамического шума и шума измерений точно неизвестны. Будем
рассматривать алгоритмы, относящиеся ко второй категории.
Предположим, что в модели
(1)-(2) в матрицах Q и R содержит-
ся p неизвестных элементов ai, i = 1, . . . , p. Расположим их в векторе a =
= [a1, a2, . . . , ap]T размерности p. С учетом (3)-(4) и в соответствии с [16] оцен-
ка вектора a по критерию максимума правдоподобия может быть получена
на основе уравнения:
{
∂P(ti)
∂ x(ti)T
tr P (ti)-1
-2
HTPr(ti)-1r(ti) +
∂ak
∂ak
i=1
(5)
}
{[
]∂Pr(ti)
+
tr
Pr(ti)-1 - Pr(ti)-1r(ti)r(ti)TPr(ti)-1
=0
∂ak
i=1
a=a(ti)
для k = 1, 2, . . . , p, где
r(ti) = y(ti) - H x(ti),
(6)
Pr(ti) =
P (ti)HT + R.
Но решения уравнения (5) в замкнутой форме не существует. В [16] приво-
дится упрощенное уравнение для субоптимальной оценки матриц Q и R с
осреднением на скользящем окне фиксированной ширины N:
[
]
1
=
R (ti) =
r (tj ) r (tj )T -
P (tj)HT
N
j=i-N+1
(7)
=1
r(tj )r(tj)T -
P (ti)HT,
N
j=i-N+1
[
1
Q (ti) =
K (tj) r (tj)r (tj)T K (tj)T +
N
(8)
j=i-N+1
]
+ P (tj) - F (tj-1,tj)P (tj-1)F (tj-1,tj
)T
В уравнении (7) предполагается, что матрица Q известна. В уравнении (8),
наоборот, полагается, что матрица R известна. Осреднение (7) и (8) справед-
ливо для установившегося режима, ширина окна N в этом случае выбирается
75
такой, что дальнейшее увеличение ширины не приводит к существенному уве-
личению эффективности оценки. Чтобы использовать адаптивный фильтр
в нестационарной задаче, ширина окна должна подбираться эмпирически -
большие значения N будут приводить к инерционности оценки, а малень-
кие значения увеличат шум оценки. В нестационарной задаче осреднение на
скользящем окне можно заменить простым α-фильтром:
(
)
(9)
R(ti) = (1 - α)R(ti-1) + α r(tj)r(tj )T -
P (ti)HT
,
Q(ti) = (1 - α)Q(ti-1) +
(
)
(10)
+ α K(ti)r(ti)r(ti)TK(ti)T + P(ti) - F(ti-1,ti)P(ti-1)F(ti-1,ti)T ,
где 0 < α < 1 - настраиваемый коэффициент. Так как на момент ti для рас-
четаQ(ti) необходимо знать P (ti), оценка находится в две итерации: снача-
ла осуществляется оценка в соответствии с (3)-(4), где матрица Q задана в
соответствии с априорной моделью (2), затем рассчитывается оценка
Q(ti),
после чего вновь применяется алгоритм (3)-(4), где матрица Q уже заменена
наQ(ti).
Алгоритмы, основанные на оценке (7) и (8) в различных вариациях ис-
пользуются в публикациях [7-9]. Необходимо иметь в виду, что при попытке
одновременной оценки R и Q могут возникнуть проблемы, так как в этом
случае ошибки вR будут неотличимы от ошибок вQ и оценка может быть
смещенной.
3. Робастный фильтр Калмана с идентификацией отказов
на основе метода наименьших модулей
Предлагаемый в настоящей статье метод отличается от адаптивного ал-
горитма (6)-(10) публикации [16] тем, что для оценки дисперсии измерений
вместо (9) используется апостериорная невязка измерений, полученная после
применения метода наименьших модулей (МНМ).
Рассмотрим линейную систему (1). На каждом шаге фильтрации известен
вектор измерений y(ti), прогнозное значение вектора состояния x(ti), кова-
риационные матрицы R(ti)
P (ti). Робастный алгоритм состоит из следую-
щих шагов:
1. Прогноз состояния в соответствии с (1)-(2);
2. Используя измерения на текущем шаге y(ti) и прогноз состояния x(ti),
находим оценку вектора состояния xL1(ti) по методу наименьших модулей;
3. Обнаружение и идентификация отказов. Для обнаружения отказа
используем критерий Неймана-Пирсона и в случае обнаружения вычисляем
оценку ковариационной матрицы измеренийR(ti) в зависимости от величины
невязок y(ti) - H xL1(ti);
4. Используя оценку ковариационной матрицы измеренийR(ti), находим
значение ковариационной матрицы динамического шумаQ(ti) в соответствии
c (10);
76
5. Вычисляем оценку текущего состояния системы в соответствии с (3)-(4),
заменив Q(ti-1, ti) и R на их оценкиQ иR соответственно.
Пункт 1 эквивалентен оптимальному алгоритму фильтрации Калмана.
Далее рассмотрим пп. 2-5 более подробно. Точное описание шагов представ-
лено в алгоритме 1.
3.1. Оценка состояния по методу наименьших модулей
Целью метода наименьших модулей является минимизация L1-нормы век-
тора ошибок. L1-норма вектора рассчитывается как сумма модулей его эле-
ментов, и для одномерного случая решением задачи минимизации будет ме-
дианное значение
(11)
θL1 = Median(z) = arg min [L1(z - θ)] ,
θ
N
где z - вектор, θ - скаляр и L1(z - θ) =
|z(i) - θ|.
i=1
Если элементы вектора z - независимые случайные величины, распреде-
ленные по закону Лапласа с одинаковыми параметрами
(
)
1
2
z(i) ∼ Laplace(y;µ,σ) =
exp
-
|y - µ|
,
i = 1,...,N,
σ
2
σ
то медиана (11) является оценкой максимума правдоподобия центрального
параметра распределения. В [14, 17] отмечается свойство робастности стати-
стик, основанных на L1-метрике, которые оказываются более устойчивыми к
выбросам в больших выборках. Несмотря на то, что для случая нормального
распределения вектора z оценка (11) является менее эффективной по сравне-
нию со средним арифметическим, именно свойство робастности делает (11)
предпочтительной в задачах, где в выборке могут присутствовать аномаль-
ные ошибки.
Рассмотрим применение L1-метрики на примере системы линейных урав-
нений
(12)
z = Hx + ǫ,
где H - матрица наблюдений, x - вектор оцениваемых параметров, ǫ - ошиб-
ки измерений, z - вектор измерений (размерность z ≥ размерности x). Оцен-
кой xL1 вектора x по методу наименьших модулей будем называть оценку
(13)
xL1 = arg min [L1
(z - Hx)]
x
при условии, что ошибки измерений независимые и с единичной дисперсией
[
]
C =E
ǫǫT
= I.
В общем случае, когда ковариационная матрица ошибок измерений C = I,
задача может быть сведена к (12)-(13) через процедуру декорреляции из-
мерений. Так как ковариационная матрица положительно определенная и
симметричная, она допускает разложение
(14)
LDLT
= C,
77
где D - диагональная матрица со строго положительными диагональными
элементами. Это означает, что матрицу D можно представить в виде произ-
ведения D = D1/2D1/2. Тогда справедливо:
ǫd = D-1/2L-1ǫ,
[
]
(
E
ǫdǫTd
=D-1/2L-1C
L-1
)T D-1/2 =
(
)(
)
(
)-1
= D-1/2L-1LD1/2 D1/2LT
LT
D-1/2
= I.
Таким образом, для произвольной ковариационной матрицы C можно све-
сти задачу к (12)-(13), заменив z, H, ǫ на zd, Hd, ǫd соответственно:
zd = D-1/2L-1z,
Hd = D-1/2L-1H.
Разложение (14) может быть получено также через разложение Холецкого
L = chol(C), LLT = C,
где матрица L - нижняя треугольная со строго положительными элемента-
ми на диагонали. Самым простым подходом к решению задачи минимиза-
ции является итерационный метод наименьших квадратов, который предла-
галось использовать в [11-13] для получения M-оценки. Но при решении за-
дачи L1-оптимизации итерационный метод наименьших квадратов обладает
численной нестабильностью, которая приводит к проблеме выбора критерия
сходимости [15]. В [18, 19] показано, что задача (12)-(13) сводится к задаче
линейного программирования, решение которой может быть получено более
эффективными алгоритмами, чем итерационный метод наименьших квадра-
тов. Минимизируемая функция представляется в виде
(
)
∑
=
(15)
ǫd(i)
ǫ1(i) +
ǫ2(i)
→ min
i=1
i=1
i=1
с ограничениями
x
[
]
Hd,I(n×n),-I(n×n)
· ǫ1
=zd,
(16)
ǫ2
ǫ1(i) ≥ 0, ǫ2(i) ≥ 0, i = 1,... ,n.
Для повышения эффективности алгоритма в [20] осуществляется переход к
двойственной форме задачи (15)-(16)
(
)
(17)
zd(i) (bi - 1)
→ max
i=1
78
для системы
Hd(i,1)
HTdb =
i=1 . . .
,
(18)
Hd(i,m)
i=1
0 ≤ b(i) ≤ 2, i = 1,...,n.
Далее, для решения задачи (17)-(18) можно применить симплекс-метод.
Чтобы повысить скорость сходимости в [20] предложена специальная моди-
фикация симплекс-метода. Подробное описание алгоритма L1-оптимизации
можно найти в [20].
Теперь рассмотрим применение метода наименьших модулей в задаче
фильтрации. На каждом шаге имеется вектор измерений y(ti) и прогноз век-
тора состояния x(ti), а также их ковариационные матрицы R(ti)
P (ti) со-
ответственно. Составим из этих векторов один и назовем его расширенным
вектором измерений:
[
]T
ze(ti) =
y(ti)T, x(ti)T
,
[
]
(19)
R(ti)
0(m×n)
Ce(ti) =
,
0(n×m)
P (ti)
где Ce - ковариационная матрица расширенного вектора измерений ze. С уче-
том (1)
ze(ti) = Hex(ti) + ǫ(ti),
(20)
[
]
He(ti) =
H(ti)T, I(n×n)
T,
где ǫ(ti)
- вектор случайных величин с ковариационной матрицей
cov(ǫ(ti), ǫ(ti)) = Ce(ti).
Используя разложение Холецкого LLT = chol(Ce(ti)) для ковариацион-
ной матрицы расширенного вектора измерений, осуществим декоррелирую-
щее преобразование:
zd (ti) = Hd (ti) x(ti) + ǫd (ti) = L-1ze (ti),
Hd (ti) = L-1He (ti) ,
ǫd (ti) = L-1ǫ(ti) ,
причем
(
)
(
)
cov ǫd (ti) , ǫd (ti)T
= L-1 cov ǫ(ti),ǫ(ti)T L-T =
(21)
= L-1CeL-T = L-1LLTL-T = I.
79
Таким образом, задача сведена к задаче (15)-(16), и теперь, применив ме-
тод L1-оптимизации, можно получить оценку вектора состояния x(ti) по ме-
тоду наименьших модулей
xL1(ti) = arg min(L1(zd(ti) - Hd(ti)x)) .
(22)
x
Для реализации разложения Холецкого на ЭВМ рекомендуется использовать
алгоритм, приведенный в [21].
3.2. Обнаружение отказов и расчет ковариационной матрицы измерений
При нормальном функционировании системы распределение ошибок изме-
рений и ошибок прогноза состояния предполагается гауссовским с нулевым
математическим ожиданием. В случае отклонений от модели будем полагать,
что ошибка соответствующего измерения имеет ненулевое математическое
ожидание. Рассмотрим две конкурирующие гипотезы
H0 : E [zd(ti)] = Hdx(ti),
H1 : E [zd(ti)] = Hdx(ti) + AΔ,
где A - матрица коэффициентов (модель отклонений), Δ - параметры модели
отклонений. Учитывая, что cov(ǫd(ti), ǫd(ti)T) = I, подходящая для проверки
гипотез статистика может быть получена в виде [22]
(23)
T = zTd Bk(BTk Bk)-1BTk zd,
где rank(Bk) = (m + n) - n = m, m - размерность вектора измерений, n -
размерность вектора состояния, (m + n) - размерность расширенного век-
тора измерений и BTkHd = 0. Матрица Bk может быть получена через QR-
разложение матрицы Hd:
[
]
R
k
[Qk, Bk]
= qr(Hd).
0(m-n×n)
Для реализации QR-разложения рекомендуется использовать алгоритм, при-
веденный в [21]. В зависимости от принятой гипотезы статистика (23) будет
иметь нецентральное распределение хи-квадрат с m степенями свободы и
различным значением параметра нецентральности [22, 23]:
H0 : T ∼ χ2(m,0);
H1 : T ∼ χ2(m,λ).
Здесь λ - параметр нецентральности, рассчитываемый в зависимости от при-
нятой модели отказа. В соответствии с леммой Неймана-Пирсона наиболее
мощным критерием выбора гипотез является критерий вида
H0 : T ≤ c(m);
(24)
H1 : T > c(m);
80
где пороговое значение c(m) рассчитывается как значение аргумента функ-
ции распределения χ2(m, 0), при котором эта функция равна заданному зна-
чению вероятности ошибок первого рода η:
(25)
c(m) = F-1(m, η, 0).
χ2
Вероятность ошибок второго рода рассчитывается как
β = Fχ2(c(m),m,λ),
где Fχ2 (c(m), m, λ) - значение функции вероятности нецентрального χ2-рас-
пределения с m степенями свободы и параметром нецентральности λ в точ-
ке c(m). Значение параметра нецентральности с учетом (21) рассчитывается
в соответствии [22]:
(
)-1
λ=zTdBTkA
ATBkBTkA
ATBkzd.
Для обнаружения отказа используется единичная матрица A = I. Тогда при-
менение критерия (24) решает задачу обнаружения отказа с минимальным
значением вероятности ошибок второго рода при λ = c(m):
βmin = Fχ2 (c(m),m,c(m)).
На практике эта вероятность ограничивается сверху значением βTH в со-
ответствии с требованиями, предъявляемыми к системе. Случай когда
βmin > βTH, означает, что конфигурация системы в принципе не может обес-
печить достаточно низкий уровень ошибок второго рода.
В зависимости от того, обнаружен ли отказ (принята гипотеза H1) или
не обнаружен (принята гипотеза H0), вычисляется оценка ковариационной
матрицы измерений
(26)
R(ti) = (LDLT)(1:m,1:m),
где LLT = chol(Ce(ti)) (см. (19)), D - диагональная матрица, элементы кото-
рой рассчитываются по невязкам измерений по методу наименьших модулей:
{ ρ(Δ(j)), если H1,
D(j,j) =
1
иначе
для j = 1, . . . , m и Δ = zd - Hd xL1(ti). Вид функции ρ нужно подобрать так,
чтобы условие ρ(x) > 1 выполнялось только с вероятностью ложной трево-
ги α при условии выбора H0. Аналитическое решение такой задачи выходит
за рамки данного исследования, поэтому использовалась эмпирическая ку-
сочно гладкая функция:
1,
если |x| < 5,
(27)
ρ(x) =
(1 + (|x| - 5)),
если 10 > |x| ≥ 5,
(1 + (|x| - 5)) · (1 + 4
|x| - 10), если |x| ≥ 10.
81
3.3. Оценка ковариационной матрицы динамического шума
и оценка текущего состояния
Для получения оценки
Q сначала нужно рассчитать коэффициент уси-
ления калмановского фильтра K и апостериорную ковариационную матри-
цу P . Для их вычисления используется априорно заданная ковариационная
матрица динамического шума Q и рассчитанная с использованием (26)-(27)
ковариационная матрица измерений R:
P =F(ti-1,ti
P (ti-1) FT (ti-1, ti) + Q (ti-1, ti) ,
(
)-1
K=
PHT
PHT +R(ti)
,
(
)
P (ti) = I - KH
P.
Введем обозначения:
dx =Kr(ti),
(28)
Qdx = dx · dxT,
Qp = P(ti) - F(ti-1,ti)P(ti-1)F(ti-1,ti)T,
где r(ti) - априорная невязка измерений, вычисляемая в соответствии с (6).
Тогда соотношение (10) можно записать в виде
(29)
Q(ti) = (1 - α)Q(ti-1) + α (Qdx + Qp
).
Вычисление оценки
Q(ti) через соотношение (29) может привести к про-
граммным ошибкам, так как оно не гарантирует положительной определенно-
сти результирующей матрицы. Чтобы избежать этих проблем, будем искать
оценку в следующей форме:
Q(ti) = V Q(ti-1, ti)VT,
V(l,l) > 0,
V(l,j) = 0 при l = j,
где l = 1, . . . , n, j = 1, . . . , n, V - диагональная матрица со строго положитель-
ными элементами на диагонали. Обозначим через γj отношение j-го диаго-
нального элемента матрицы в правой части (29) к j-му диагональному эле-
менту номинальной матрицы динамического шума:
(
)
(1 - α)Q(ti-1)(j,j) + α
Q
dx,(j,j) + Qp,(j,j)
γj
=
Q(ti-1, ti)(j,j)
Если значения элементов матрицы V рассчитывать по правилу
{ 1,
если γj < 1,
(30)
V(j,j) =
√γj иначе,
82
то, в случае когда γj > 1 для всех j = 1, . . . , n, выполняется условие
{
}
{
}
(31)
trace V Q(ti-1, ti)VT
= trace
(1 - α)Q(ti-1) + α (Qdx + Qp)
В остальных случаях диагональные элементы матрицы
Q ограничиваются
снизу соответствующими значениями диагональных элементов матрицы Q.
В соответствии с (31) необходимо вычислять приближенное значение дис-
персий элементов вектора dx. Чтобы сделать оценку более робастной, вос-
пользуемся известным фактом, что для нормального распределения отноше-
ние среднеквадратического отклонения (RMS) к среднему абсолютному от-
клонению (MAD) является постоянной величиной RMS/MAD =
(π/2). Это
нетрудно доказать:
(
)
1
(a - µ)2
E[|x - µ|] =
|a - µ|
exp
-
da =
σ
2
−∞
(
)
a-µ
(a - µ)2
2
2
=2
exp
-
da = 2
σ bexp(-b2)db =
σ.
σ
2
π
π
µ
0
В то же время MAD является более робастной статистикой, когда в вы-
борке присутствуют выбросы. Для применения робастной статистики при вы-
численииQ перепишем (29) в виде:
G(ti)(j,j) = (1 - α) G(ti-1)(j,j) + α ·
dx(j)
,
j = 1,...,n,
Qp (ti) = (1 - α)Qp (ti-1) + αQp,
(32)
(
)2
π
G(ti)(j,j)
+ Qp (ti)
(j,j)
γj
=2
Q (ti-1, ti)(j,j)
Далее выполняем основной шаг фильтрации:
Q(ti) = V Q(ti-1, ti)VT;
Pa = F(ti-1,ti
P (ti-1)FT(ti-1, ti) +Q(ti);
(33)
K = PaHT(HPaHT + R(ti))-1;
x(ti) = x(ti) + Kr(ti);
P (ti) = (I - KH)Pa.
Здесь V вычисляется в соответствии с (30) и (32), аR вычисляется в соответ-
ствии с (26). На основе приведенных выше соотношений строится алгоритм 1,
который обеспечивает рекуррентную оценку состояния системы, идентифика-
цию отказов в измерениях и адаптивную настройку коэффициента обратной
связи.
83
Алгоритм 1 (одна итерация робастного фильтра).
Входные данные:
текущее время ti;
оценка состояния с предыдущего шага x(ti-1)
P (ti-1);
оценка составляющих ковариационной матрицы прогноза с предыдущего
шагаQp(ti-1), G(ti-1);
матрица наблюдений H и матрица прогноза F (ti-1, ti);
номинальная ковариационная матрица динамического шума Q(ti-1, ti);
вектор измерений y(ti) и его номинальная ковариационная матрица R(ti).
Выходные данные:
оценка состояния x(ti)
P (ti);
оценка составляющих ковариационной матрицы прогнозаQp(ti), G(ti).
1. Прогноз состояния на текущий момент.
x = F(ti-1,ti)x(ti-1);
P =F(ti-1,ti
P (ti-1)FT(ti-1, ti) + Q(ti-1, ti).
2. Составить расширенный вектор измерений ze(ti) и его ковариационную
матрицу Ce(ti) в соответствии с (19).
3. Составить матрицу наблюдений He для расширенного вектора измере-
ний в соответствии с (20).
4. Осуществить разложение Холецкого матрицы Ce:
Ce = chol(Ce) = LLT.
5. Осуществить декорреляцию вектора псевдоизмерений:
zd = L-1ze; Hd = L-1He.
6. С использованием симплекс-метода L1-оптимизации (см. [20]) решить
задачу:
xL1(ti) = arg min (L1(zd(ti) - Hd(ti)x)).
x
7. Осуществить QR разло[ение матр]цы Hd:
Rk
Hd = qr(Hd) = [Qk,Bk]
0(m-n×n)
8. Рассчитать тестовую статистику:
T = zTd Bk(BTk Bk)-1BTk zd.
9. Рассчитать пороговое значение c(r) для заданного значения вероятности
ложной тревоги α в соответствии с (25) (в данном случае число степеней
свободы равно числу измерений, т.е. размерности вектора y).
10. Если (T ≥ c(r)), то принимается гипотеза H1, ковариационная матрица
измеренийR(ti) рассчитывается в соответствии с (26) для Δ = zd -Hd xL1(ti).
11. Иначе принимается гипотеза H0, ковариационная матрица измерений
остается номинальной:R(ti) = R(ti);
12. Осуществить шаг фильтрации с использованием номинального значе-
ния ковариационной матрицы динамического шума:
P =F(ti-1,ti
P (ti-1)FT(ti-1, ti) + Q(ti-1, ti);
K=
PHT(
PHT +R(ti))-1;
P (ti) = (I -KH
P.
84
13. Рассчитать адаптивные параметры:
dx =K(y(ti) - H x);
Qp = P(ti) - F(ti-1,ti
P (ti-1)FT(ti-1, ti).
14. Рассчитать G(ti),Qp(ti) и γ в соответствии с (32).
15. Рассчитать V в соответствии с (30).
16. Рассчитать оценку ковариационной матрицы динамического шума:
Q(ti) = V Q(ti-1, ti)VT.
17. Рассчитать оценку текущего состояния и его ковариационной матрицы
(33):
Pa = F(ti-1,ti
P (ti-1)FT(ti-1, ti)+Q(ti); K = PaHT(HPaHT +R(ti))-1;
x(ti) = x + K(y(ti) - H x)
P (ti) = (I - KH)Pa.
18. Конец.
4. Результаты тестирования
Для проверки рабочих характеристик алгоритма моделировалось движе-
ние цели в одномерном пространстве. Задача состояла в оценке текущей коор-
динаты цели, а также ее скорости и ускорения по зашумленным измерениям
координаты, т.е. решалась задача фильтрации по неполным измерениям. Ис-
пользовалась следующая модель динамики системы в непрерывном времени:
dh(t)
dx(t) =
 dv(t)
 = Ax(t)dt + Bdw(t);
da(t)
0
1
0
0
A=
 0 0 1
; B=
 0
.
0
0
0
√s
Здесь h(t) - координата цели, v(t) - скорость цели, a(t) - ускорение цели,
w(t) - винеровский случайный процесс, s > 0 - интенсивность динамического
шума. В дискретном времени модель динамики принимает вид:
x(ti) = F (ti-1, ti)x(ti-1) + ni;
1
Δt Δt2/2
F (0, Δt) =
 0
1
Δt
;
0
0
1
Δt
Q(0, Δt) = cov(ni, ni) = F (0, t)BBTFT(0, t)dt =
0
(Δt5)/20 (Δt4)/8 (Δt3)/6
=s·
 (Δt4)/8 (Δt3)/3 (Δt2)/2
.
(Δt3)/6
(Δt2)/2
Δt
85
Для проверки отказоустойчивости алгоритма использовалась модель систе-
мы с двукратным резервированием (два датчика с одинаковыми номиналь-
ными характеристиками синхронно измеряют координату цели):
y(ti) = Hx(ti) + ξi;
[
]
1
0
0
H =
;
1
0
0
[
]
9
0
R = cov(ξii) =
0
9
Использовались следующие значения параметров: вероятность ложной тре-
воги η = 5 · 10-4, параметр сглаживания α = 0,01 (см. (32)), параметр дина-
мики системы s = 0,1. Частота измерений 10 Гц (ti - ti-1 = 0,1). В ходе те-
стирования истинная траектория и фактические наблюдения формировались
в соответствии с соотношениями:
dxtrue(t) = Axtrue(t)dt + Bdw(t) + u(t),
y(ti) = Hx(ti) + ξi + δi.
Здесь u(t) и δi имитировали неучтенные ошибки.
Для демонстрации адаптивных и робастных свойств фильтра были разра-
ботаны различные сценарии моделирования:
Сценарий 1. Маневр цели в виде полета по кругу с постоянным цен-
тростремительным ускорением amax = 20 ед/c2 и угловой скоростью ω =
= 2π/10 рад/c. В этом случае проекция траектории на одну из осей декар-
товой системы координат представляет собой гармонические колебания во
времени (u(t) = amax · sin(ωt)).
Сценарий 2. В одном из измерений присутствует аддитивный гауссовский
шум δi,(1) ∼ N(0,100) (первый параметр - математическое ожидание, вто-
рой - среднеквадратическое отклонение (СКО)), δi,(2) = 0.
Сценарий 3. Оба измерения содержат аддитивный некоррелированный
гауссовский шум: δi,(1) ∼ N (0, 100), δi,(2) ∼ N (0, 100).
Сценарий 4. Ошибки измерений δi представляют собой независимые слу-
чайные величины (с.в.), распределенные по закону Коши. Для такого распре-
деления дисперсия и математическое ожидание не определены, но определена
медиана.
Сценарий 5. Для одного из измерений добавочная ошибка представляет
собой кусочно линейную функцию δi,(1) = 0 для ti < ts и δi,(1) = k(ti - ts) для
ti ≥ ts, ts = 50, k = 0,4.
Сценарий 6. В измерениях с заданной вероятностью присутствует смещен-
ная гауссовская ошибка: δi = Λψi, где Λ - диагональная матрица, на диагона-
ли которой располагаются независимые дискретные с.в. принимающие зна-
чения либо 0, либо 1 с заданной вероятностью Pj ; ψ - вектор независимых
гауссовских с.в. ψi ∼ N (100, 3).
В задаче навигации в качестве датчиков, измеряющих положение объекта,
могут выступать приемники сигналов глобальных навигационных спутнико-
86
Оценка для маневрирующей цели
40
1
20
2
0
-20
-40
0
50
100
150
200
250
300
CКО ошибка оценки (осреднение по времени)
20
1
15
2
10
5
0
50
100
150
200
250
300
Время, с
Рис. 1. Имитация маневра цели по сценарию 1. Показана проекция на одну ось
декартовой системы координат. 1 - робастный фильтр, 2 - фильтр Калмана.
Оценка по измерениям с гауссовским загрязнением в одном источнике
100
1
50
2
0
-50
-100
0
50
100
150
200
250
300
CКО ошибка оценки (осреднение по времени)
25
20
1
2
15
10
5
0
50
100
150
200
250
300
Время, с
Рис. 2. Моделирование по сценарию 2 с загрязнением измерений одного из ис-
точников аддитивным гауссовским шумом. 1 - робастный фильтр, 2 - фильтр
Калмана.
вых систем. Известно, что сигналы спутниковых навигационных систем об-
ладают низкой помехозащищенностью. В последнее время ведутся активные
исследования в направлении борьбы с так называемым “спуфингом”
- ти-
пом помех, которые имитируют ложный сигнал (в качестве примера можно
привести публикацию [24]). Сценарии 5 и 6 моделируют именно такой тип
ошибок.
87
Оценка по измерениям с гауссовским загрязнением
400
1
200
2
0
-200
-400
0
50
100
150
200
250
300
CКО ошибка оценки (осреднение по времени)
100
80
1
2
60
40
20
0
50
100
150
200
250
300
Время, с
Рис. 3. Моделирование по сценарию 3 с загрязнением всех измерений адди-
тивным гауссовским шумом. 1 - робастный фильтр, 2 - фильтр Калмана.
Рис. 4. Моделирование по сценарию 4 с загрязнением измерений ошибками,
распределенными по закону Коши. 1 - робастный фильтр, 2 - фильтр Кал-
мана.
Результаты моделирования по сценариям 1-5 показаны на рисунках 1-5
соответственно. Робастный фильтр обладает адаптивными свойствами и су-
щественно повышает эффективность в смысле уменьшения дисперсии оши-
бок оценки в сценариях 1, 2 и 4. Моделирование по сценарию 3 показывает,
что эффективность робастного фильтра снижается по сравнению с фильтром
Калмана. Такой результат объясняется тем, что алгоритм со временем спи-
88
Оценка по измерениям с линейным увеличением ошибки
60
1
40
2
3
20
4
0
-20
80
100
120
140
160
180
CКО ошибка оценки (осреднение по времени)
30
1
20
2
10
0
80
100
120
140
160
180
Время, с
Рис. 5. Моделирование по сценарию 5 с нарастающим математическим ожида-
нием ошибки в одном источнике измерений. 1 - робастный фильтр, 2 - фильтр
Калмана, 3 - измерения первого источника, 4 - измерения второго источника.
сывает большие невязки измерений на ошибки модели, что приводит к увели-
чению коэффициента обратной связи. Интересно, что результаты моделиро-
вания по сценарию 4 существенно отличаются от результатов моделирования
по сценарию 3, хотя и в том и в другом случае моделируется симметричное
распределение неучтенных ошибок. Возможно, различия связаны с тем, что
для распределения Коши не определены математическое ожидание и диспер-
сия, и поэтому неустойчивость оценки калмановского фильтра объясняется
применением квадратичного критерия. В разработанном алгоритме робаст-
ной фильтрации применяется метод наименьших модулей, который в одно-
мерном случае дает оценку медианы (о связи метода наименьших модулей
с медианой говорилось в подразделе 3.1). Можно предположить, что именно
это свойство делает робастный фильтр более устойчивым к распределению
Коши.
Моделирование по сценарию 5 продемонстрировало специфику работы
фильтра в условиях медленного увеличения систематической ошибки в одном
Сравнения СКО оценок h(t) робастного фильтра и фильтра Калмана
при обработке загрязненных измерений по сценарию 6
Вероятность загрязнения
СКО оценки
источник 1 источник 2 робастный фильтр фильтра Калмана
1
0
1,02
45,7
0
1
1,04
45,6
0,1
0,1
0,7
11,5
0,3
0,3
0,9
28,9
0,5
0,5
60,8
47,7
0,7
0,7
83,7
65,9
89
измерении. Робастный фильтр равновероятно выбирает один из источников
и отслеживает его измерения как достоверные, снижая вес измерений дру-
гого источника. На рис. 5 показан пример, когда алгоритмом был выбран
источник, содержащий ошибку.
По результатам моделирования сценария 6 составлена таблица. Данные
таблицы показывают, что устойчивость робастного фильтра к моделируемым
помехам зависит от вероятности, с которой помехи появляются в измерениях.
Если помехи присутствуют только в одном источнике измерений, то робаст-
ный фильтр существенно повышает точность оценки. Если же помехи при-
сутствуют во всех источниках с вероятностью больше 0,5, точность оценки
резко ухудшается.
5. Заключение
Разработан алгоритм робастной фильтрации, который обладает свойством
отказоустойчивости по отношению к аномальным ошибкам в измерениях и
адаптивными свойствами по отношению к изменяющимся параметрам моде-
ли динамического шума системы. Было проведено численное моделирование
решения задачи сопровождения цели в линейной системе с двукратным ре-
зервированием измерений.
Результаты моделирования показывают, что робастный фильтр повышает
эффективность оценки по сравнению с классическим фильтром Калмана,
когда цель выполняет неучтенные в модели маневры. Одновременно с этим
обеспечивается устойчивость оценки к систематическим ошибкам в одном из
источников измерений, а также к симметричным помехам, распределенным
по закону Коши. Разработанный алгоритм устойчив к импульсным помехам
в более чем 30 % измерений.
В другой ситуации, когда в модели не учитывается увеличение диспер-
сии нормального шума по всем измерениям, эффективность оценки робаст-
ного фильтра снижается. В случае когда ошибки по всем источникам изме-
рений содержат смещенную составляющую, отказоустойчивость обеспечива-
ется только условно: существует пороговое значение вероятности появления
смещенной ошибки в измерениях, для которой эффективность оценки резко
снижается. Разработанный алгоритм неустойчив к медленному увеличению
математического ожидания ошибки в одном из источников измерений.
Для компенсации указанных недостатков может потребоваться исполь-
зование дополнительных источников измерений, что является предметом
дальнейших исследований. Другим направлением дальнейших исследова-
ний является использование разработанного метода в нелинейных системах.
Так как разработанный алгоритм относится к классу алгоритмов “прогноз-
коррекция”, для работы с нелинейными системами можно попробовать заме-
нить шаги прогноза и коррекции на соответствующие процедуры, например
метода псевдоизмерений [3] или сигма-точечного фильтра [25].
СПИСОК ЛИТЕРАТУРЫ
1. Липцер Р.Ш., Ширяев А.Н. Статистика случайных процессов. М.: Наука, 1974.
2. Синицын И.Н. Фильтры Калмана и Пугачева. М.: Логос, 2006.
90
3.
Miller A.B., Miller B.M. Tracking of the UAV trajectory on the basis of bearing-only
observations // 53rd IEEE Conf. on Decision and Control. Los Angeles, CA. 2014.
P. 4178-4184.
4.
Salychev O.S. Mems-based Inertial Navigation: Expectations and Reality. M.: Bau-
man Moscow State Technical University, 2012.
5.
Времеенко К.К., Желтов С.Ю., Ким Н.В., Козорез Д.А., Красильщиков М.Н.,
Себряков Г.Г., Сыпало К.И., Черноморский А.И. Современные информацион-
ные технологии в задачах навигации и наведения беспилотных маневренных
летательных аппаратов. М.: Физматлит, 2009.
6.
Lainiotis D. Optimal adaptive estimation: Structure and parameter adaption //
IEEE T. Autom. Contr. 1971. No. 16. P. 160-170.
7.
Yang Y., Gao W. An Optimal Adaptive Kalman Filter // J. Geodesy. 2006. No. 80.
P. 177-183.
8.
Mohamed A.H., Schwarz K.P. Adaptive Kalman Filtering for INS/GPS
//
J. Geodesy. 1999. No. 73. P. 193-203.
9.
Reina G., Vargas A., Nagatani K., Yoshida K. Adaptive Kalman Filtering for GPS-
based Mobile Robot Localization // Int. Workshop on Safety, Security and Rescue
Robotics. Rome, Italy, September 2007.
10.
Босов А.В., Панков А.Р. Робастное рекуррентное оценивание процессов в сто-
хастических системах // АиТ. 1992. № 9. C. 102-110.
Bosov A.V., Pankov A.R. Robust Recurrent Estimations of Processes in Stochastic
Systems // Autom. Remote Control. 1992. V. 53. No. 9. P. 1395-1402
11.
Koch K.R., Yang Y. Robust Kalman Filter for Rank Deficient Observation Models //
J. Geodesy. 1998. No. 72. P. 436-441.
12.
Chang Guobin, Liu Ming. M-estimator-based Robust Kalman Filter for Systems
with Process Modeling Errors and Rank Deficient Measurement Models // Nonlinear
Dynam. 2015. No. 80. P. 1431-1449.
13.
Cao L., Qiao D., Chen X. Laplace L1 Huber Based Cubature Kalman Filter for
Attitude Estimation of Small Satellite // Acta Astronaut. 2018. V. 148.
http://10.1016/j.actaastro.2018.04.020.
14.
Huber P.J. Robust statistics. Wiley series in probability and mathematical statistics.
1981.
15.
Armstrong R.D., Frome E.L. A Comparison of Two Algorithms for Absolute Devi-
ation Curve Fitting // J. Amer. Statist. Association. 1976. V. 71:354. P. 328-330
16.
Maybeck P.S. Stochastic Models, Estimation, and Control. Academic Press. 1982.
V. 2. P. 70-129.
17.
Kotz Samuel, Kozubowski Tomasz J., Podgorski Krzysztof. The Laplace Distribution
and Generalizations. Springer, 2001.
18.
Barrodale Ian, Roberts F. An Improved Algorithm for Discrete L1 Linear Approxi-
mation // Siam J. Numer. Anal. 1973. No. 10. P. 839-848.
19.
Abdelmalek Nabih N. On the Discrete Linear L1 Approximation and L1 Solutions of
Overdetermined Linear Equations // J. Approx. Theory. 1974. No. 11. P. 38-53.
20.
Abdelmalek Nabih N. An Efficient Method for the Discrete Linear L1 Approximation
Problem // Math. Comput. 1975. V. 29. No. 131. P. 844-850.
21.
Hogben L. Handbook of Linear Algebra. Second Edition. CRC Press, 2013.
22.
Teunissen P.J.G. Distributional Theory for the DIA Method // J. Geodesy. 2018.
V. 92. P. 59-80.
91
23. Xu Changhui, Rui Xiaoping, Song Xianfeng, Gao Jingxiang Generalized Reliability
Measures of Kalman Filtering for Precise Point Positioning // J. Systems Engineering
and Electronics. 2013. V. 24. No. 4. P. 699-705.
24. Seo Seong-Hun, Jee Gyu-In, Lee Byung-Hyun, Im Sung-Hyuck, Kim Kwan-Sung.
Hypothesis Test for Spoofing Signal Identification using Variance of Tangent Angle
of Baseline Vector Components // Proc. 30th Int. Technical Meeting of the Satel-
lite Division of The Institute of Navigation (ION GNSS+ 2017). Portland, Oregon,
September 2017. P. 1229-1240.
25. Julier S.J., Uhlmann J.K., Durrant-Whyte H.F. A New Approach for Filtering Non-
linear Systems // Proc. IEEE Amer. Control Conf. 1995. P. 1628-1632.
Статья представлена к публикации членом редколлегии А.И. Кибзуном.
Поступила в редакцию 02.03.2020
После доработки 28.05.2020
Принята к публикации 09.07.2020
92