Алгоритм, который оценивает неизвестные из серии измерений во времени
Фильтр Калмана отслеживает оценочное состояние системы и
дисперсия или неопределенность оценки. Оценка обновляется с использованием модели
между состояниями и измерений.
обозначает оценку системы на временном шаге k перед k -е измерения y к учтено;
- соответствующая неопределенность.
В статистике и теории управления, Фильтрация Калмана, также известная как линейно-квадратичная оценка (LQE ), представляет собой алгоритм, который использует серию измерений наблюдаемый с течением времени, статистический шум и другие неточности, и дает оценку неизвестных чисел, которые имеют тенденцию быть более точными, чем оценки, основанные только на одном измерении, путем оценки совместного распределения вероятностей по переменным для каждого таймфрейма. Фильтр назван в честь Рудольфа Э. Кальмана, одного основного из разработчиков его теории.
Фильтр Калмана находит множество применений в технике. Распространенным приложением наведение, навигация и управление транспортными средствами, особенно самолетами, космическими кораблями и динамически позиционируемыми кораблями. Кроме того, фильтр Калмана - широко применяемая концепция в анализах временных рядов, используемом в таких областях, как обработка сигналов и эконометрика. Фильтры Калмана также являются одной из основных в области роботизированного планирования движения и управления и управления в оптимизации траектории. Фильтр Калмана также работает для моделирования управления движением центральной нервной системы. Из-за временной задержки между выдачей команд двигателя и получением сенсорной обратной связи использование фильтра Калмана поддерживает реалистичную модель для текущего состояния моторной системы и выдачи обновленных команд.
Алгоритм состоит из двух этапов. На этапе прогнозирования фильтр Калмана производит текущие данные состояния вместе с их неопределенностями. Как наблюдается результат следующего измерения (включая случайный шум), эти оценки обновляются с использованием средневзвешенного, при этом больший вес присваивается оценкам с большей достоверностью. Алгоритм рекурсивный. Он может работать в реального времени, используя только текущие входные измерения и ранее вычисленное состояние и его матрицу неопределенности; никакой дополнительной прошлой информации не требуется.
Оптимальность фильтра Калмана предполагает, что ошибки гауссовского. По словам Рудольфа Э. Кальмана : «Итак, в отношении случайных процессов делаются следующие предположения: физические явления можно рассматривать как следствие первичных случайных источников, возбуждающих случайные динамические системы. быть независимыми гауссовскими случайными процессами с нулевым средним; динамические системы будут линейными ». Несмотря на то, что независимо от гауссовости, если известны ковариации процесса и измерения, фильтр Калмана наилучшей возможной линейной оценкой в смысле минимальной средней квадратичной ошибки.
Расширения и обобщения способы также были разработаны, например, расширенный фильтр Калмана и фильтр Калмана без запаха, которые работают с нелинейными системами. Базовая модель - это , где пространство состояний для латентных чисел равно непрерывно, все скрытые и наблюдаемые переменные имеют гауссовский раздачи. Кроме того, фильтр Калмана успешно использовался в слиянии нескольких датчиков и в распределенных сетях датчиков для разработки распределенного или консенсусного фильтра Калмана.
Содержание
- 1 История
- 2 Обзор расчета
- 3 Пример приложения
- 4 Техническое описание и контекст
- 5 Базовая модель динамической системы
- 6 Подробности
- 6.1 Прогноз
- 6.2 Обновление
- 6.3 Инварианты
- 6.4 Оценка ковариаций шума Q k и R k
- 6.5 Оптимизация и производительность
- 7 Пример применения, технический
- 8 Асимптотическая форма
- 9 Выведение
- 9.1 Выведение ковариационной матрицы апостериорной оценки
- 9.2 Выведение коэффициента усиления Калмана
- 9.3 Упрощение формулы ковариации апостериорной ошибки
- 10 Анализ чувствительности
- 11 Форма квадратного корня
- 12 Связь с рекурсивной байесовской оценкой
- 13 Предельное правдоподобие
- 14 Информационный фильтр
- 15 Сглаживатель с фиксированным запаздыванием
- 16 Сглаживатель с фиксированным интервалом
- 16.1 Раух - Тунг –Striebel
- 16.2 Модифицированный сглаживание Брайсона - Фрейзера
- 16.3 Сглаживание сглаживания минимальной дисперсией
- 17 Частотно-взвешенные фильтры Калмана
- 18 Нелинейные фильтры
- 18.1 Расширенный фильтр Калмана
- 18.2 Безцентированный фильтр Калмана
- 18.2.1 Сигма-точки
- 18.2.2 Прогноз
- 18.2.3 Обновление
- 19 Фильтр Калмана - Бьюси
- 20 Гибридный фильтр Калмана
- 20.1 Инициализация
- 20.2 Прогноз
- 20.3 Обновление
- 21 Варианты восстановления разреженных сигналов
- 22 Приложения
- 23 См.
- 24 Ссылки
- 25 Дополнительная литература
- 26 Также Внешние ссылки
История
Фильтр назван в честь венгерского émigré Рудольфа Э. Кальмана, хотя Торвальд Николай Тиле и Питер Сверлинг разработали аналогичный алгоритм ранее. Ричард С. Бьюси из Лаборатории прикладной физики Джона Хопкинса внес вклад в теорию, в результате чего ее иногда называют фильтром Калмана - Бьюси. Стэнли Ф. Шмидту обычно приписывают первую реализацию фильтра Калмана. Он понял, что фильтр можно разделить на две части, одна часть для периодов времени между выходами датчиков, другая часть для включения измерений. Во время визита Кальмана в Исследовательский центр Эймса НАСА, Шмидт увидел применимость идей Кальмана к нелинейной задаче оценки траектории для программы Аполлон, что привело к ее достижению в Навигационный компьютер Apollo. Этот фильтр Калмана был впервые описан и частично разработан в технических статьях Сверлинга (1958 г.), Калмана (1960 г.) и Калмана и Бьюси (1961 г.).
Компьютер Apollo использовал 2k ОЗУ магнитного сердечника и трос 36k [...]. ЦП был построен из микросхем [...]. Тактовая частота была ниже 100 кГц [...]. Тот факт, что инженеры института Массачусетского технологического института смогли упаковать такое хорошее программное обеспечение (одно из самых первых применений фильтра Калмана) в такой крошечный компьютер, поистине замечателен.
— Интервью Мэтью Рида с Джеком Креншоу, TRS-80. org (2009)
[1] Фильтр сыграли роль в реализации навигационных систем США. ВМС ядерные подводные лодки с баллистическими ракетами, а также системы наведения и навигации крылатых ракет, таких как ракета Томагавк ВМС США и США. Крылатая ракета воздушного базирования ВВС. Они также используются в системах наведения и навигации многоразовых ракет-носителей и управления ориентацией, а также в навигационных системах космических кораблей, которые состыкованы с Международной космической станцией.
Эта цифровая цифровая система. Фильтр иногда называют фильтром Стратоновича - Калмана - Бьюси, потому что это частный случай более общего нелинейного фильтра, разработанного несколько ранее советским математиком Русланом Стратоновичем. Фактически, некоторые частные уравнения линейных фильтров появились в этих статьях Стратоновича, которые были опубликованы до лета 1960 г., когда Калман встретился со Стратоновичем во время конференции в Москве.
Обзор вычислений
использует
Фильтр Калмана динамическую модель системы (например, физические законы движения), известные входные данные для этой системы и несколько последовательных измерений (например, чтобы от датчиков), сформировать оценку различных величин системы (ее состояние ), что лучше, чем оценка, полученная с использованием только одного измерения. Таким образом, это обычный алгоритм объединения датчиков и объединения данных.
Зашумленные данные датчика, приближения в уравнениях эволюции системы, и внешние факторы, которые не учитываются для всех, ограничения ограничения на то, насколько хорошо можно определить состояние системы. Фильтр Калмана эффективно справляется с неопределенностью из-за зашумленных данных датчика и, в некоторой степени, случайных факторов внешних факторов. Фильтр Калмана оценки состояния системы как среднее значение прогнозируемого состояния системы и измерения нового с использованием средневзвешенного значения. Назначение весов состоит в том, чтобы значения с лучшим (есть меньшим) оценочной неопределенности больше доверяли. Веса вычисляются на основе ковариации , оценочной неопределенности прогноза состояния системы. Результатом средневзвешенного значения является новая оценка состояния, которая находится между прогнозируемым и измеренным состояниями и имеет более точную оценку неопределенности, чем любой другой. Этот процесс повторяется на каждом временном шаге, при этом новая оценка и ее ковариация определяет прогноз, используется в следующей итерации. Это означает, что фильтр Калмана работает рекурсивно и требует только последнего «предположения», а не всего истории состояния системы для вычислений нового состояния.
Относительная достоверность измерений и оценки состояния обычно представляют собой важные особенности, и обсуждают отклик фильтра в терминах фильтра Калмана. Коэффициент Калмана - это относительный вес, придаваемый измерениям и оценка текущего состояния, и его можно «настроить» для достижения производительности. При высоком усилении фильтр придает больший вес самым последним измерением и, следовательно, более оперативно отслеживает их. При низком усилении фильтр более точно следует прогнозам модели. В крайних случаях высокое усиление, близкое к единице, к более скачкообразной расчетной траектории, в то время как низкое усиление, близкое к нулю, сгладит шум, но снизит отзывчивость.
При выполнении фактических вычислений для фильтра (как обсуждается ниже) оценка состояния и ковариации кодируются в матрицы для обработки нескольких измерений, задействованных в единственном наборе вычислений. Это позволяет представить линейные отношения между различными переменными состояниями (такими положениями, скоростью и ускорением) в любом из переходных моделей или ковариаций.
Пример приложения
В качестве приложения рассмотрим задачу определения точного местоположения грузовика. Грузовик может быть оснащен системой GPS, обеспечивающей определение местоположения в пределах нескольких метров. Оценка GPS, вероятно, будет зашумленной; показания быстро «прыгают», но остаются в пределах нескольких метров от реального положения. Кроме того, это должно быть интегрировано в систему управления движением колес и угла поворота рулевого колеса. Это метод, известный как расплата. Как правило, точный расчет обеспечивает очень плавную оценку положения грузовика, но он будет дрейфовать со временем по мере накопления небольших ошибок.
В этом примере фильтр Калмана можно представить как работающий в двух различных фазах: прогнозирование и обновление. На этапе прогнозирования старшего положения грузовика будет изменено в соответствии с физическими законами движения (динамическая модель или модель «перехода состояний»). Будет рассчитана не только новая оценка местоположения, но и новая ковариация. Определения скорости точного определения местоположения. Затем на этапе обновления данные о грузовика снимаются с устройства GPS. Наряду с этим измерением некоторая степень неопределенности, и ее степень ковариации прогноза из предыдущей фазы определяет, насколько новое измерение повлияет на обновленный прогноз. В идеале, поскольку оценка точного исчисления определяет отклонение от реального положения, измерения GPS подтягивает определение местоположения к реальному положению, но не мешает ей до такой степени, что она становится шумной и быстро прыгает.
Техническое описание и контекст
Фильтр Калмана - это эффективный рекурсивный фильтр, который оценивает внутреннее состояние линейной динамической системы из серии зашумленных измерений. Он используется в широком диапазоне инженерных и эконометрических приложений от радара и компьютерного зрения до структурных макроэкономических моделей, и важная тема в теории управления и разработка систем управления. Вместе с линейно-квадратичным регулятором (LQR) фильтр Калмана решает задачу линейно-квадратично-гауссовского управления (LQG). Фильтр Калмана, линейно-квадратичный регулятор и линейно-квадратично-гауссовский регулятор являются решениями, возможно, наиболее фундаментальных проблем теории управления.
В большинстве приложений внутреннее состояние намного больше (больше степеней свободы ), чем несколько «наблюдаемых» параметров, которые измеряются. Однако, объединив серию измерений, фильтр Калмана может оценить все внутреннее состояние.
В теории Демпстера - Шейфера уравнение состояния или рассмотрение как частный случай линейной функции доверия, а фильтр Калмана представляет собой частный случай объединения линейные функции доверия на дереве соединения или дереве Маркова. Дополнительные подходы включают байесовских или доказательных обновлений использования состояний.
На основе первичной формулировки Калмана было разработано большое количество фильтров Калмана, теперь называемых «общий» фильтром Калмана, фильтром Калмана - Бьюси, «расширенным» фильтром Шмидта, информационный фильтр и различные фильтры «квадратного корня», разработанные Бирманом, Торнтоном и другими. Калмана является контуром фазовой автоподстройки с частотой, который теперь повсеместно используется в радио, особенно с частотной модуляцией (FM) радио, телевизоры, <275.>приемники спутниковой связи, системы космической связи и почти любое другое электронное оборудование связи.
Базовая модель динамической системы
Фильтры Калмана основаны на линейных динамических систем, дискретизированных во временной области. Они моделируются на основе цепи Маркова, построенной на линейных операторов, возмущенных ошибками, которые могут включать гауссовский шум. Состояние системы как вектор из вещественных чисел. При каждом приращении дискретного времени к состоянию применяемого линейного оператора для генерации нового состояния с добавлением некоторого шума и, необязательно, некоторой информации от элементов управления в системе, если они известны. Затем другой линейный оператор, смешанный с большим количеством шума, генерирует наблюдаемые выходные данные из истинного («скрытого») состояния. Фильтр Калмана можно рассматривать как аналог скрытой модели Маркова с тем ключевыми отличием, что скрытые переменные состояния принимают значения в непрерывном пространстве (в отличие от дискретного пространства состояний, как в скрытой марковской модели). Существует сильная аналогия между уравнениями фильтра Калмана и уравнениями скрытой марковской модели. Обзор этой и других моделей дан в Roweis и Ghahramani (1999) и Hamilton (1994), глава 13.
Чтобы использовать фильтр Калмана для оценки состояния внутреннего процесса, учитывая только последовательность зашумленных наблюдений, необходимо моделировать процесс в соответствии с рамками фильтра Калмана. Это означает следующие матриц:
- Fk, модель перехода между состояниями;
- Hk, модель наблюдения;
- Qk, ковариация шумового процесса;
- Rk, ковариация наблюдения за шумом;
- и иногда Bk, модель управляющего входа, для каждого временного шага k, как описано ниже.
Модель, лежащая в основе фильтра Калмана. Квадраты представляют собой матрицы. Эллипсы объем
многомерные нормальные распределения (с вложенными средним и ковариационной матрицей). Незакрытые значения - это
векторы. В простом случае различные матрицы постоянны во времени, и, таким образом, индексы опускаются, но фильтр Калмана позволяет любому из них изменяться на каждом временном шаге.
Модель фильтра Калмана предполагает истинное состояние в момент изменения k. из состояния в (k - 1) согласно
где
- Fk- модель перехода между состояниями который применяется к предыдущему состоянию xk-1 ;
- Bk- это модель управляющего входа, которая применяется к управляющему вектору. uk;
- wk- это шум процесса, который, как предполагается, выводится из многомерного значения с нулевым средним нормальное распределение, , с ковариацией, Qk: .
В момент времени k наблюдение (или измерение) zkистинное состояние xkсоздается согласно
где
- Hk- модель наблюдения, которая отображает истинное пространство состояний в наблюдаемое пространство, а
- vk- шум наблюдения, который предполагается равным нулевому среднему гауссову белый шум с ковариацией Rk: .
Предполагается, что начальное состояние и векторы шума на каждом шаге {x0, w1,..., wk, v1... vk} взаимно независимы.
Многие реальные динамические системы не точно подходят этой модели. Фактически, немоделированная динамика может серьезно ухудшить характеристики фильтра, даже если он должен был работать с неизвестными стохастическими сигналами в качестве входных данных. Причина этого в том, что эффект немоделированной динамики зависит от входа и, следовательно, может привести алгоритм оценки к нестабильности (он расходится). С другой стороны, независимые сигналы белого шума не заставят алгоритм расходиться. Проблема различения между шумом измерения и немоделированной динамикой является сложной и рассматривается в теории управления в рамках робастного управления.
Подробности
Фильтр Калмана является рекурсивным оценщик. Это означает, что для вычисления оценки текущего состояния необходимы только оценочное состояние из предыдущего временного шага и текущее измерение. В отличие от методов пакетной оценки, история наблюдений и / или оценок не требуется. Далее обозначение представляет оценку в момент времени n с учетом наблюдений до времени m ≤ n включительно.
Состояние фильтра представлено двумя переменными:
- , апостериорная оценка состояния в момент времени k с учетомнаблюдений до момента k включительно;
- , ковариационная матрица апостериорной оценки (мера предполагаемой точности оценки состояния).
Фильтр Калмана может быть записан в одном виде уравнения, однако он чаще всего концептуализируется как две фазы: «Прогнозирование» и «Обновление». Фаза прогноза использует оценку состояния из предыдущего временного шага, чтобы оценки состояния на текущем временном шаге. Эта прогнозируемая оценка состояния также известна как априорная оценка состояния, потому что, хотя это оценка состояния на текущем временном шаге, она не включает в себя информацию наблюдения из текущего временного шага. На этапе обновления текущего априорного предсказания объединяется с текущим наблюдением для уточнения оценки состояния. Эта улучшенная оценка называется апостериорной оценкой состояния.
Обычно две фазы чередуются, при этом прогнозировании продвигает состояние до следующего запланированного наблюдения, а обновление включает наблюдение. Однако в этом нет необходимости; если наблюдение недоступно по какой-либо причине, обновление может быть пропущено и выполнено несколько шагов прогнозирования. Прогнозируемая (априорная) оценка состояния
|