Фільтр Кальмана - Оптимальний спосіб впоратися з "отриманими" вимірюваннями?


13

Тобто, якщо у вас є положення змінних стану ( p ) і швидкості ( v ), і я роблю низькочастотні вимірювання p , це також опосередковано дає мені інформацію про v (оскільки це похідна p ). Який найкращий спосіб вирішити такі відносини?

A) На кроці оновлення я повинен лише сказати, що я виміряв p і покладаюся на процес фільтрації та мою накопичену матрицю коваріації стану ( P ) для виправлення v ?

B) Чи повинен я створити "додатковий" крок передбачення, або після мого кроку оновлення для вимірювання p , який використовує мірний p і (відносно великий) дельта-час, щоб зробити прогноз високої дисперсії v ?

C) На своєму кроці оновлення / вимірювання я повинен сказати, що я здійснив вимірювання як p, так і v , а потім якось кодувати інформацію про їх взаємозалежність у матриці ко-дисперсії вимірювання ( R )?


Щоб отримати докладнішу інформацію, ось конкретна ситуація, в якій я зіткнувся з проблемою:

Я працюю з системою, де я хочу оцінити положення ( p ) об'єкта, і я часто проводжу вимірювання прискорення ( a ) та нечасті, високошумні вимірювання p .

Зараз я працюю з кодовою базою даних, яка робить це з розширеним фільтром Kalman, де він зберігається як змінні стану p і v . Він виконує крок "передбачення" після кожного вимірювання прискорення, в якому використовує вимірюваний а та дельта-час для інтеграції та прогнозування нових p і v . Потім виконується крок "оновлення" / "вимірювання" для кожного (нечастого) вимірювання p .

Проблема полягає в цьому - я отримую періодичні вимірювання високої помилки a , які призводять до сильно помилкових v . Очевидно, що подальше вимірювання А ніколи цього не виправить, але вимірювання р повинні позбутися цього. І насправді це, здається, відбувається ... але ДУЖЕ повільно.

Я думав, що це може бути частково, тому що єдиний спосіб p впливає на v в цій системі через коваріаційну матрицю P - тобто метод A) зверху - що здається досить опосередкованим. Мені було цікаво, чи не буде кращого способу включити наші знання про цю залежність між p і v в модель, щоб вимірювання p виправили v швидше.

Спасибі!


1
Я спробую пізніше повернутися з довшою відповіддю, але мої негайні реакції на ваші запитання будуть: А) Так, В і С) Можливо, ні. Чи можете ви якимось чином виявити великі помилки вимірювання ? Якщо ви зможете виявити людей, що втратили життя, ви можете викинути їх, щоб пом’якшити їх наслідки. Вам може бути важко натиснути, щоб отримати велику продуктивність, якщо показник вибірки позиції системи занадто низький порівняно з його динамікою. a
Джейсон R

2
Ще одна річ; має бути неявна залежність між та вираженою у вашій матриці переходу стану. Зокрема, він повинен виражати, що або подібне. v p k + 1 = p k + v k Δ tpvpk+1=pk+vkΔt
Джейсон R

Відповіді:


3

В ідеальному світі ви матимете правильну модель і використовуєте її.
У вашому випадку модель не ідеальна.
Однак кроки, які ви пропонуєте, базуються на знаннях, які ви маєте про процес - який слід включити до рівняння процесу за допомогою матриці динамічної моделі:

  1. Класичний і правильний спосіб матриці F побудований правильно відповідно до ваших знань.

  2. "Додатковий" крок передбачення нічого не дасть, оскільки і якщо ви скоротите часові рамки, ви повинні відповідно змінити і які повинні отримати вас в кінці ланцюжка малих сходинок той самий P_k_k-1. QRFik=FijFjkQR

  3. Якщо ви не вимірюєте V, ви повинні якось "оцінити" його. Але за визначенням, якщо ваш випадок підпадає під припущення Калмана, використання фільтра Калмана дасть найкращі результати.

Загалом, дотримуйтесь "Класики".

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.