Cybernetics Wiki
Advertisement

Фи́льтр Ка́лмана — рекурсивный фильтр, оценивающий вектор состояния динамической системы, используя ряд неполных и зашумленных измерений. Назван в честь Рудольфа Калмана.

Фильтр Калмана предназначен для рекурсивного дооценивания вектора состояния априорно известной динамической системы, то есть для расчёта текущего состояния системы необходимо знать текущее измерение, а также предыдущее состояние самого фильтра. Таким образом фильтр Калмана, как и множество других рекурсивных фильтров, реализован во временном представлении, а не в частотном. Далее, запись вида соответствует оценке вектора состояния в момент времени (итерации) n, по данным на момент времени m.

Состояние фильтра находится в двух переменных:

  •  — оценка вектора состояния динамической системы в момент времени k;
  •  — ковариационная матрица ошибок (мера точности оценивания вектора состояния).

Работу каждого шага фильтра Калмана можно разделить на два этапа: прогноз и корректировка. Этап прогноза вычисляет вектор состояния, по его же значению на предыдущем шаге работы фильтра. На этапе корректировки в алгоритм поступают данные текущих измерений, которые используются для уточнения прогнозного значения вектора состояния, и вычисления собственно оценки вектора состояния динамической системы. Рассмотрим работу классического оптимального фильтра Калмана:

Этап прогноза[]

Вычисление прогнозного значения вектора состояния по априорно известной модели:
Вычисление прогнозного значения ковариационной матрицы:

Этап корректировки[]

Вычисление математической невязки прогнозного значения вектора состояния относительно измерений:
Ковариационная матрица измерений:
Оптимальный по Калману коэффициент усиления:
Вычисление оценки вектора состояния через корректировку прогнозного вектора состояния:
Обновление ковариационной матрицы ошибок:

Ссылки[]



Advertisement