Расширенный фильтр Калмана
Расширенный фильтр Калмана (англ. Extended Kalman filter, EKF) — нелинейное обобщение фильтра Калмана, в котором линеаризация осуществляется в области текущей оценки среднего и ковариационной матрицы состояния. При наличии хорошо определённых переходных моделей EKF считается[1] де-факто стандартом в теории нелинейной оценки состояния, навигационных системах и GPS[2].
История
Основополагающие статьи, заложившие математические основы фильтров типа Калмана, были опубликованы в период с 1959 по 1961 год[3][4][5]. Фильтр Калмана является оптимальным линейным оценивателем для линейных моделей систем с добавочным независимым белым шумом как в переходной, так и в измерительной подсистемах. Однако большинство реальных инженерных систем являются нелинейными, поэтому были предприняты попытки применить данный метод фильтрации к нелинейным системам; основная часть работ проводилась в центре NASA Ames[6][7]. EKF применяет методы анализа, а именно много переменные разложения в ряд Тейлора, для линеаризации модели в рабочей точке. Если модель системы неизвестна или некорректна, для оценки состояния используют методы Монте-Карло, в частности частичные фильтры, которые появились раньше EKF, но требуют гораздо больше вычислительных ресурсов для систем средней размерности.
Формулировка
В расширенном фильтре Калмана модели перехода состояния и наблюдений могут быть не линейными функциями состояния, а дифференцируемыми функциями:
Здесь wk и vk — шумы процесса и наблюдения, предполагаемые как нулевого среднего, многомерные нормальные с ковариациями Qk и Rk соответственно. uk — управляющий вектор.
Функция f используется для вычисления априорного состояния из предыдущей оценки, а функция h — для априорного измерения по предсказанному состоянию. Однако f и h не могут быть напрямую применены к ковариации — вместо этого рассчитывается матрица Якоби по частным производным.
На каждом шаге времени Якобиан вычисляется в текущем прогнозируемом состоянии, после чего эти матрицы используются в уравнениях фильтра Калмана. Такой подход линеаризирует нелинейные функции вокруг текущей оценки.
Дискретные уравнения прогноза и коррекции
Обозначение означает оценку в момент времени n по данным наблюдений до и включая момент m ≤ n.
| Оценка состояния по прогнозу | |
| Оценка ковариации прогноза |
| Инновация или остаток измерения | |
| Ковариация инновации (остатка) | |
| (Почти оптимальный) калмановский коэффициент усиления | |
| Скорректированная оценка состояния | |
| Скорректированная оценка ковариации |
где матрицы якобианов перехода состояния и наблюдения определяются как:
Недостатки и альтернативы
В отличие от линейного фильтра Калмана, расширенный фильтр Калмана в общем случае не является оптимальным оценивателем (он оптимален только для линейных моделей измерения и перехода состояния — в этом случае EKF совпадает с обычным фильтром Калмана). При ошибочной начальной оценке состояния или при неточной модели процесса фильтр может быстро расходиться из-за ошибок линеаризации. Другой недостаток EKF — склонность к недооценке истинной ковариации (переменной) ошибки, вследствие чего он может стать статистически неконсистентным без добавления «стабилизирующего шума»[8].
Следует учесть бесконечномерную природу общей нелинейной задачи фильтрации и ограниченность простого оценивания по среднему и ковариации для представления оптимального фильтра. Кроме того, EKF может давать плохие результаты даже для простых одномерных систем, таких как кубический сенсор[9], где оптимальный фильтр может быть бимодальным[10] и неописуемым единственной оценкой по среднему и ковариации, а также для задач с квадратичным сенсором[11]. В таких случаях изучаются проекционные фильтры (projection filters)[12] и полные частичные фильтры (particle filters).
Тем не менее, EKF часто обеспечивает удовлетворительную точность оценки и считается де-факто стандартом в задачах навигации и GPS.
Обобщения
Модель
Инициализация
Прогноз-коррекция
В отличие от дискретного EKF, предсказание и коррекция в непрерывном времени являются связанными процессами[13].
Большинство физических систем описываются как непрерывные модели, в то время как измерения часто фиксируются дискретно с помощью цифрового процессора. Поэтому система описывается так:
где .
Инициализация
Коррекция
где
Уравнения коррекции идентичны таковым в дискретном EKF.
Вышеприведённая рекурсия — это EKF первого порядка. EKF высших порядков получают, сохраняя больше членов разложения в ряд Тейлора. Описаны EKF второго и третьего порядка[14]. Однако значимые преимущества проявляются только при малых уровнях измерительного шума.
Стандартная формулировка EKF предполагает аддитивность шумов процесса и измерения, однако это условие не обязательно для его построения[15]. Рассмотрим более общий вид системы:
Тогда и являются многомерными нормальными шумами с ковариациями и . Уравнения ковариации прогноза и инновации:
где матрицы и — Якобианы:
Предсказанная оценка состояния и остаток измерения вычисляются по согласно среднему шумов (нулю). Все остальные шаги совпадают с addитивной формулировкой EKF.
В ряде случаев модель наблюдения нелинейной системы не может быть явно выражена относительно , но может быть записана как неявная функция:
где — зашумлённые наблюдения.
Обычный EKF можно применять с заменой[16][17]:
где
В этом случае исходная ковариационная матрица наблюдения преобразуется, а инновация определяется иначе. Матрица Якоби вычисляется по неявной модели наблюдения.
Модификации и альтернативы
Итеративный EKF совершенствует линеаризацию, рекурсивно изменяя центр разложения Тейлора, что сокращает ошибку линеаризации с увеличением вычислительных затрат[17].
«Робастный» EKF строится линеаризацией сигнальной модели вокруг текущей оценки и применением линейного фильтра Калмана для предсказания. Такой подход обеспечивает локальную оптимальность, но не гарантирует устойчивости, так как решения уравнения Риккати не всегда положительно определены. Для повышения устойчивости можно использовать псевдоалгебраическую технику Риккати[18], подменяя оптимальность на устойчивость, выбирая положительно определённое решение псевдоалгебраического уравнения Риккати для выбора усиления.
Другой подход — применение H-инфинити-теории из робастного управления. Робастный фильтр формируется добавлением положительно определённого члена в проектное уравнение Риккати[19]. Добавочный член регулируется, обеспечивая компромисс между критериями СКО и пиковых ошибок.
Инвариантный расширенный фильтр Калмана (IEKF) — модифицированный EKF для нелинейных систем с симметриями (инвариантностями). Он объединяет достоинства EKF и симметрия-сохраняющих фильтров. Вместо линейной коррекции по выходной ошибке IEKF применяет геометрически адаптированную коррекцию по инвариантной ошибке, а матрица усиления рассчитывается по инвариантной ошибке состояния. Преимущество IEKF — сходимость ковариационных уравнений к постоянным значениям для большей области траекторий, что ускоряет сходимость оценки по сравнению с обычным EKF.
Несцентный фильтр Калмана (UKF) — нелинейный калмановский фильтр, предлагающий улучшения по сравнению с EKF. В UKF аппроксимация распределения вероятности осуществляется детерминированной выборкой точек, представящих заданное распределение как нормальное. Нелинейное преобразование этих точек служит для оценки апостериорного распределения и его моментов. Это преобразование называется несцентным преобразованием. UKF обычно более робастен и точнее EKF в оценке ошибки во всех направлениях.
«Расширенный фильтр Калмана (EKF) — вероятно, наиболее широко применяемый алгоритм оценивания для нелинейных систем. Однако опыт показывает, что его сложно реализовать и настраивать, и он надёжен только для систем, близких к линейным на временах между обновлениями. Многие сложности связаны именно с линеаризацией.»[1]
Существуют данные, что некоторые варианты UKF уступают по точности EKF второго порядка (SOEKF), также называемому аугментированным фильтром Калмана[20]. SOEKF был предложен за 35 лет до UKF (см. Bass и др., 1966[21]). Основная сложность практической реализации любых калмановских фильтров для нелинейных систем связана с вопросами численной устойчивости[22]. UKF также использует линеаризацию (методы линейной регрессии). Для UKF устойчивость может страдать из-за аппроксимации корня из ковариационной матрицы, а для EKF и SOEKF — из-за ошибок ряда Тейлора.
Ансамблевый фильтр Калмана (Ensemble Kalman filter), предложенный Эвенсеном в 1994 году, появился до UKF, но обладает преимуществом: число ансамблевых членов может быть меньше размерности состояния, что делает его применимым к очень большим системам (например, к моделированию атмосферы размером в миллиарды переменных).
Предложен нечёткий фильтр Калмана с новым методом представления распределения возможностей (possibility distributions), где вероятностные распределения заменяются распределениями возможностей для получения по-настоящему «возможностного» фильтра, что позволяет использовать несимметричные шумы процесса и измерения, а также большие моделирующие ошибки[23].
Современные теоретические исследования
В этот период теоретические исследования были сосредоточены на анализе фундаментальных свойств EKF, таких как сходимость и состоятельность, а также на разработке его модификаций для повышения робастности, численной устойчивости и снижения вычислительной сложности.
В 2017 году значительное внимание уделялось анализу сходимости и состоятельности (англ. consistency) фильтра. Были представлены и доказаны свойства сходимости для инвариантного EKF (Invariant-EKF) в задачах одновременной локализации и построения карты (SLAM) без ограничительных предположений о вычислении якобианов в точке истинного состояния[24]. Другие работы предлагали условия для выбора параметров фильтра, чтобы гарантировать состоятельность оценок, при которой расчётная ковариация ошибки соответствует реальной среднеквадратичной ошибке[25].
В 2018 году продолжалась разработка модификаций EKF, направленных на улучшение его работы в сложных условиях. В частности, для систем с неопределённостью параметров шума развивались адаптивные подходы (AEKF), в которых ковариационные матрицы шумов обновляются рекурсивно[26], а для сетевых систем были предложены консенсусные расширенные фильтры Калмана (CEKF) с целью улучшения наблюдаемости[27].
В 2019 году ключевой проблемой стала вычислительная устойчивость EKF, связанная с возможной потерей положительной определённости ковариационной матрицы. Для её решения был предложен метод «стабильного расширенного фильтра Калмана» (англ. Stable Extended Kalman Filter, SEKF), использующий матричное разложение для построения фильтра на основе квадратного корня из ковариационной матрицы, что гарантирует сохранение её симметричности и положительной определённости[28]. В качестве другого метода обеспечения численной стабильности предлагалось использовать QR-разложение для вычисления матрицы усиления Калмана[29].
Кроме того, для снижения высоких вычислительных затрат, связанных с необходимостью линеаризации модели на каждом шаге, в 2019 году был представлен метод условной линеаризации. Его суть заключается в выполнении линеаризации не на каждой итерации, а только тогда, когда ожидаемые изменения в матрицах Якоби превышают заданный порог, что позволяет сократить количество вычислений без существенного увеличения ошибок оценки[30].
В этот период исследования были направлены на повышение точности EKF, анализ его поведения в сложных условиях и расширение на новые классы систем. Были предложены подходы для повышения точности оценок, использующие методы, которые заменяют отбрасываемые члены ряда Тейлора остаточным членом, идентифицируемым пошагово с помощью метода наименьших квадратов[31]. Продолжилось развитие инвариантного EKF (IEKF) для систем, обладающих симметриями. Были проанализированы его ключевые свойства, такие как лог-линейность ошибки, которая устраняет ошибку линеаризации на этапе прогноза, и предоставлены гарантии сходимости для определённого класса систем[32][33].
Значительное внимание было уделено анализу ограничений EKF. В 2021 году было показано, что при оценке временной задержки в задачах слияния данных с нескольких датчиков включение задержки в вектор состояния приводит к структурным проблемам, вызывающим смещение и несостоятельность (англ. inconsistency) оценок[34]. Также было исследовано поведение фильтра в сетевых системах с передачей данных по событию (англ. event-triggered). Было доказано, что при определённых начальных условиях ошибка оценки и её ковариационная матрица остаются ограниченными[35].
Ключевым теоретическим достижением 2022 года стало расширение EKF на полулинейные бесконечномерные системы, что актуально для процессов, описываемых уравнениями в частных производных. В рамках этой работы была доказана корректность (англ. well-posedness) уравнений фильтра и проанализирована локальная экспоненциальная устойчивость динамики ошибки оценивания[36].
В этот период исследования были направлены на анализ фундаментальных свойств EKF, а также на разработку гибридных методов и новых модификаций для повышения точности и робастности.
В 2023 году было введено понятие «структурной состоятельности» (англ. structural consistency), связанное с корректностью работы фильтра при различных формах записи задачи, и проанализировано его выполнение в задачах навигации[37]. Продолжилась разработка гибридных методов: для обработки нелинейных полётных данных была предложена комбинация EKF с фильтром частиц (EKF+PF)[38], а для компенсации ошибок при работе с нестационарными сигналами исследовалась система, объединяющая EKF и адаптивный цифровой фильтр (АЦФ) с алгоритмом NLMS[39]. Хотя сама идея объединения EKF с адаптивными фильтрами не нова, в работе была представлена её новая реализация[39].
В 2024 году была предложена новая модификация — расширенный фильтр Калмана высокого порядка (англ. Rounding error-based Extended Kalman Filter, REKF), который использует статистические свойства ошибок округления для замены отбрасываемых членов ряда Тейлора и повышения точности оценки[40]. Кроме того, EKF был применён для решения обратной оптимальной задачи управления в реальном времени, для чего была разработана новая постановка задачи и представлены «первые в своём роде теоретические гарантии ошибок» для таких систем[41].
Исследования 2024—2025 годов также были сосредоточены на итеративных и адаптивных подходах. Был представлен итерированный инвариантный EKF (англ. Iterated Invariant Extended Kalman Filter, IterIEKF), использующий метод Гаусса — Ньютона для уточнения оценки на этапе обновления[42]. Для работы с нестационарными и негауссовскими шумами была разработана адаптивная версия — англ. Adaptive Dual Augmented EKF, ADAEKF, включающая механизм автоматизированной оптимизации гиперпараметров[43].
Примечания
Литература
- Anderson, B.D.O. Optimal Filtering : [англ.] / Anderson, B.D.O., Moore, J.B.. — Englewood Cliffs, New Jersey : Prentice–Hall, 1979.
- Gelb, A. Applied Optimal Estimation : [англ.]. — MIT Press, 1974.
- Jazwinski, Andrew H. Stochastic Processes and Filtering : [англ.]. — New York : Academic Press, 1970. — P. 376. — ISBN 978-0-12-381550-7.
- Maybeck, Peter S. Stochastic Models, Estimation, and Control : [англ.]. — New York : Academic Press, 1979. — Vol. 141—1. — P. 423. — ISBN 978-0-12-480701-3.