Я просто изучаю фильтр Калмана. В терминологии Kalman Filter у меня возникают трудности с шумом процесса. По-видимому, шум процесса игнорируется во многих конкретных примерах (большинство из них сосредоточено на измерении шума). Если кто-то может указать мне на какую-то вводную ссылку уровня, которая хорошо описывает процессы шума с примерами, это будет здорово.
Позволяет использовать конкретный скалярный пример для моего вопроса, учитывая:
x_j = a x_j-1 + b u_j + w_j
Допустим, что x_j
моделирует температуру в холодильнике со временем. Он равен 5 градусам и должен оставаться таким, поэтому мы моделируем a = 1
. Если в какой-то момент t = 100
температура холодильника становится 7 градусов (т.е. Жаркий день, плохая изоляция), то я считаю, что шум процесса в этот момент составляет 2 градуса. Итак, наша переменная состояния x_100 = 7
градусов, и это истинное значение системы.
Вопрос 1:
Если я тогда перефразирую фразу, которую я часто вижу для описания фильтра Калмана, "мы фильтруем сигнал х, чтобы эффекты шума w были сведены к минимуму", http://www.swarthmore.edu/NatSci/echeeve1/Ref/Kalman/ScalarKalman.html, если мы минимизируем влияние двух степеней, пытаемся ли мы избавиться от разницы в 2 степени? Но истинное состояние at x_100 == 7
градусов. Что мы делаем с шумом процесса w точно, когда мы фильтруем Kalmen?
Вопрос 2:
Шум процесса имеет дисперсию Q
. В простом примере холодильника кажется простой моделью, потому что вы знаете, что истинное состояние составляет 5 градусов, и вы можете принять Q
как отклонение от этого состояния. Но если истинное основное состояние колеблется со временем, когда вы моделируете, какая часть этого будет считаться флуктуацией состояния или "шумом процесса". И как мы будем определять хороший Q
(опять-таки пример будет приятным)?
Я обнаружил, что, поскольку Q
всегда добавляется к предсказанию ковариации независимо от того, на каком временном шаге вы находитесь, (см. формулу предсказания ковариации от http://greg.czerniak.info/guides/kalman1/), если вы выберете слишком большой Q
, тогда это не похоже, что фильтр Калмана будет хорошо себя вести.
Спасибо.
EDIT1 Моя интерпретация
Моя интерпретация термина process noise - это разница между фактическим состоянием системы и состоянием, смоделированным из матрицы перехода состояния (т.е. a * x_j-1
). И то, что пытается сделать фильтр Калмана, заключается в приближении прогноза к фактическому состоянию. В этом смысле он фактически частично "включает" шум процесса в предсказание через механизм остаточной обратной связи, а не "устраняет" его, чтобы он мог лучше предсказать фактическое состояние. Я не читал такого объяснения нигде в моем поиске, и я был бы признателен, если бы кто-нибудь прокомментировал эту точку зрения.