Численные методы

Усвоение данных и фильтр Калмана

Цели урока

  • Освоить алгоритм фильтра Калмана: шаги предсказания и обновления, смысл усиления Калмана K
  • Понять EKF и UKF для нелинейных систем и сравнить их по точности
  • Разобраться в EnKF для высокоразмерных задач метеорологии и particle filter для негауссовских систем

Предварительные знания

  • Квантификация неопределённости
  • Квантификация неопределённости

NASA Apollo: навигация лунного модуля с точностью 150 м через фильтр Калмана

  • NASA Apollo: навигация лунного модуля с точностью 150 м через фильтр Калмана
  • Tesla Autopilot: EKF для слияния данных лидара, камер и GPS в реальном времени
  • ECMWF 4D-Var: прогноз погоды с 47M переменными через вариационное усвоение и EnKF
  • KalmanNet: нейросеть, заменяющая матрицы H,F в Калман-фильтре - превосходит EKF при неизвестной модели

История фильтра Калмана

Рудольф Калман (1960, RESA Journal) предложил рекурсивный оптимальный фильтр для линейных систем - и немедленно получил заказ от NASA для программы Apollo. Буси (1961) расширил на непрерывное время (KF-Bucy). Сорнсон и Смит (1970-е) - нелинейные обобщения. Эвенсен (1994) - Ensemble Kalman Filter. ECMWF внедрил 4D-Var в 1997, EnKF-компонент в 2008 году. KalmanNet (Revach, 2022) - нейросетевой аналог.

Фильтр Калмана: оптимальный оценщик

Рудольф Калман в 1960 году опубликовал фильтр, который NASA применила в программе Apollo. Гироскопы дрейфуют, радар шумит - как объединить эти источники информации оптимально? Фильтр Калмана - теоретически доказанный ответ для линейно-гауссовых систем.

Tesla Autopilot, бортовые навигационные системы Starlink, роботы Boston Dynamics - все они используют варианты фильтра Калмана для оценки состояния. ECMWF использует 4D-Var и EnKF для прогнозов погоды с 47 миллионами переменных состояния.

Фильтр Калмана - MMSE-оценщик (минимальная среднеквадратичная ошибка) для линейно-гауссовых систем. Для нелинейных систем: EKF (линеаризация якобианом), UKF (sigma-points), particle filter (нелинейный, негауссовский).

Что происходит с усилением Калмана K при R -> infinity?

K = P*H^T*(H*P*H^T + R)^{-1}. При R -> inf знаменатель доминирует: K -> 0. Обновление x = x_pred + K*(y-H*x_pred) -> x_pred. Полное доверие модели, игнорирование наблюдений.

EKF и UKF для нелинейных систем

Реальные системы нелинейны: ракета на орбите, маятник, биохимическая реакция. Линейный фильтр Калмана не применим напрямую. EKF (Extended Kalman Filter) линеаризует нелинейную функцию якобианом в текущей оценке. UKF (Unscented KF) использует детерминированные sigma-points - точнее для сильно нелинейных систем.

Глубокое обучение + фильтр Калмана = Recurrent Neural Networks с Kalman-Like updates. KalmanNet (Revach et al., 2022) заменяет матрицы H и F нейросетями, обучаемыми end-to-end. Работает лучше EKF при неизвестной модели системы. Tesla Autopilot использует аналогичную гибридную архитектуру.

Почему UKF точнее EKF для сильно нелинейных систем?

EKF: P_pred = J_f * P * J_f^T - линеаризованная передача ковариации. Ошибка O(Delta x^2) от нелинейных членов. UKF: sigma-points проходят через нелинейную f, ковариация вычисляется по выборке - точность 3-го порядка для гауссовских распределений.

Ансамблевый EnKF и 4D-Var в метеорологии

ECMWF прогнозирует погоду с 47 миллионами переменных состояния. Ковариационная матрица P - 47M x 47M. Невозможно хранить. Ансамблевый фильтр Калмана (EnKF, Evensen 1994) аппроксимирует её через ансамбль из N=50 реализаций. Никакого якобиана. Никакой хранимой P.

4D-Var (ECMWF с 1997) - текущий стандарт оперативного прогноза погоды. Ансамблевый прогноз (ENS, с 1992): 50 реализаций для оценки неопределённости. Слияние 4D-Var + EnKF = En4D-Var - активная исследовательская область. Нейросетевые прогнозы погоды (Pangu-Weather, GraphCast 2023) пока обходят 4D-Var по скорости, но уступают по точности при экстремальных событиях.

Data Assimilation в нейронных сетях

Neural ODE (nm-25) + Kalman Filter = нейросетевые модели состояния. Latent ODE (Rubanova et al., 2019) обучает нейросеть на нерегулярно расположенных временных рядах через ODE-кодировщик и фильтрацию в латентном пространстве. Применяется к EEG, медицинским данным, физическим симуляциям с пропущенными измерениями.

Почему EnKF использует ансамбль вместо явного хранения ковариационной матрицы P?

P для 47M переменных: 47M^2 * 8 bytes ~ 1.7*10^13 GB = невозможно. Ансамбль N=50: 50 * 47M * 8 bytes ~ 18 GB. Это разница в 10^12 раз. Выборочная ковариация - Low-rank аппроксимация P ранга N-1.

Частичный фильтр для нелинейных и негауссовских систем

EKF и UKF предполагают гауссовское распределение. Отслеживание транспортного средства в реальных условиях: многомодальное распределение (машина могла повернуть налево ИЛИ направо). Particle filter (Sequential Monte Carlo) работает с произвольными распределениями через взвешенные частицы.

Дегенерация частиц - главная проблема particle filter в высоких размерностях: в d-мерном пространстве N частиц - редкая выборка при d > 20-30. Это и есть проклятие размерности для SMC. EnKF масштабируется лучше, но теряет многомодальность. Гибриды (Rao-Blackwellized PF) частично решают проблему.

Почему particle filter не масштабируется на задачи с d >> 30 переменными состояния?

Проблема концентрации меры: в d-мерном пространстве случайная точка из p(x) практически наверняка имеет нулевое правдоподобие p(y|x) при разумном N. Для N частиц и d=100 нужно N ~ e^{d} для адекватного покрытия - экспоненциальное проклятие размерности.

Связь с другими темами

Фильтр Калмана - байесовский фреймворк для динамических систем: шаг предсказания = prior, шаг обновления = posterior update (как теорема Байеса). EnKF применяет идеи UQ (nm-27) для высокоразмерных систем. Latent ODE + KF = нейросетевая модель состояния.

  • 4D-Var Adjoint Gradient — Связанная тема
  • Ensemble Covariance and Randomized SVD — Связанная тема
  • Particle Filters for Non-Gaussian State — Связанная тема

Итоги

  • Фильтр Калмана: MMSE-оценщик для линейно-гауссовых систем; два шага: предсказание (x_pred, P_pred) и обновление (K, x_new, P_new); K = 0 при R->inf, K->H^{-1} при R->0
  • EKF линеаризует через якобиан в текущей оценке - первый порядок Taylor; UKF использует sigma-points для точности 3-го порядка без якобиана
  • EnKF аппроксимирует P через ансамбль N=50 реализаций - делает 47M-переменные задачи ECMWF реализуемыми; 4D-Var - вариационная альтернатива через сопряжённую модель
  • Particle filter: произвольные распределения через взвешенные частицы; страдает от дегенерации при d>30 - проклятие размерности для SMC

Вопросы для размышления

  • Tesla использует EKF для слияния лидара, камер и GPS. Почему не UKF? Какие trade-offs между вычислительной стоимостью и точностью в реальном времени?
  • EnKF с N=50 членами ансамбля аппроксимирует P ранга 49 для 47M-переменной системы. Что происходит с корреляциями между географически далёкими переменными?
  • 4D-Var использует сопряжённую модель для градиента по x0. Как связано это с reverse-mode AD из nm-25 - математически это тот же алгоритм?

Связанные уроки

  • nm-27 — фильтр Калмана - байесовский UQ для динамических систем
  • nm-29-scientific-ml-pinns — PINNs с усвоением данных - следующий уровень гибридного моделирования
  • nm-25-autodiff — EKF использует якобианы - вычислимые через AD
Усвоение данных и фильтр Калмана

0

1

Войти