Комментарии 14
Неплохая статья, но как-то сбивчиво изложено. А про unscented Калмана не хотите написать? :)
Не понял переход от
О, вы вовремя! Как раз скоро экзамен по теории оптимального управления, там про ФК три вопроса.
Мистика, буквально вчера разбирался с этой темой, только для задачи слежения за объектом, а утром статья.
Калман в моде последнее время на хабре))
Фильтр только на первый взгляд сложен)
Фильтр Калмана описывает объект с помощью некоторого вектора состояния. Например, если вы хотите описать падение камня в поле тяготения земли, то камень можно описать с помощью двухэлементного вектора: высоты и скорости.
Фильтр рекурсивно выполняет три шага:
1) По накопленным ранее данным и имеющимся моделям изменения вектора состояния объекта производит экстраполяцию вектора состояния на следующий шаг
2) Сравнивает результаты экстраполяции с наблюдениями. При этом часто наблюдаются не сами компоненты вектора состояния, а некоторые функции от них. Поэтому используется дискриминатор — устройство, сигнал на выходе которого указывает на ошибку экстраполирования — разницу между ожидаемым (экстраполированным на этапе 1) вектором и наблюдаемым.
3) Экстраполяция корректируется с помощью сигнала дискриминатора. При этом сигнал дискриминатора берется с некоторым весовым коэффициентом. Вся соль фильтра — как посчитать этот коэффициент, чтобы в итоге получить оптимальные оценки в смысле минимизации СКО. Фильтр Калмана использует коэффициент, являющийся решением уравнений Рикатти. Уравнения Рикатти оперирует следующими параметрами(упрощенно): точностью уже имеющегося вектора состояния, моделью движения объекта, точностью наших средств измерения (наблюдения). Решение уравнения — оптимальный, в указанном смысле, коэффициент. + новая матрица дисперсий, говорящая, с какой точностью теперь мы будем знать измеряемые параметры. Скорректированная экстраполяция называется оценкой вектора состояния на данном шаге. Далее переходим к пункту 1.
Фильтр только на первый взгляд сложен)
Фильтр Калмана описывает объект с помощью некоторого вектора состояния. Например, если вы хотите описать падение камня в поле тяготения земли, то камень можно описать с помощью двухэлементного вектора: высоты и скорости.
Фильтр рекурсивно выполняет три шага:
1) По накопленным ранее данным и имеющимся моделям изменения вектора состояния объекта производит экстраполяцию вектора состояния на следующий шаг
2) Сравнивает результаты экстраполяции с наблюдениями. При этом часто наблюдаются не сами компоненты вектора состояния, а некоторые функции от них. Поэтому используется дискриминатор — устройство, сигнал на выходе которого указывает на ошибку экстраполирования — разницу между ожидаемым (экстраполированным на этапе 1) вектором и наблюдаемым.
3) Экстраполяция корректируется с помощью сигнала дискриминатора. При этом сигнал дискриминатора берется с некоторым весовым коэффициентом. Вся соль фильтра — как посчитать этот коэффициент, чтобы в итоге получить оптимальные оценки в смысле минимизации СКО. Фильтр Калмана использует коэффициент, являющийся решением уравнений Рикатти. Уравнения Рикатти оперирует следующими параметрами(упрощенно): точностью уже имеющегося вектора состояния, моделью движения объекта, точностью наших средств измерения (наблюдения). Решение уравнения — оптимальный, в указанном смысле, коэффициент. + новая матрица дисперсий, говорящая, с какой точностью теперь мы будем знать измеряемые параметры. Скорректированная экстраполяция называется оценкой вектора состояния на данном шаге. Далее переходим к пункту 1.
> При этом часто наблюдаются не сами компоненты вектора состояния, а некоторые функции от них.
Правильнее сказать «почти всегда». Почти всегда для непосредственного измерения доступны лишь выходные сигналы (например, перемещения чувствительной массы в акселерометре нам недоступны, мы получаем информацию о них с датчиков перемещений внутри прибора).
Именно для решения этой проблемы и строятся разного рода наблюдающие устройства (ФК, например, или НУИ Льюинбергера), которые внутри себя «моделируют» вектор состояния наблюдаемого объекта.
Правильнее сказать «почти всегда». Почти всегда для непосредственного измерения доступны лишь выходные сигналы (например, перемещения чувствительной массы в акселерометре нам недоступны, мы получаем информацию о них с датчиков перемещений внутри прибора).
Именно для решения этой проблемы и строятся разного рода наблюдающие устройства (ФК, например, или НУИ Льюинбергера), которые внутри себя «моделируют» вектор состояния наблюдаемого объекта.
Матаааан!!! Круто, давай ещё.
Было интересно. Спасибо. Пишите еще :)
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Фильтр Калмана — !cложно?