exponenta event banner

Что такое фильтр Калмана?

Стандартный фильтр Калмана

В структуре модели «состояние-пространство» фильтр Калмана оценивает значения скрытого, линейного, стохастического, динамического процесса на основе, возможно, неправильно измеренных наблюдений. Учитывая допущения распределения по неопределенности, фильтр Калмана также оценивает параметры модели с помощью максимального правдоподобия.

Начиная с начальных значений для состояний (x0 | 0), матрицы дисперсия-ковариация начального состояния (P0 | 0) и начальных значений для всех неизвестных параметров (start0), простой фильтр Калмана:

  1. Оценки, для t = 1,...,T:

    1. Вектор прогнозирования состояния на 1 шаг вперед для периода t (x ^ t 't − 1) и его матрица дисперсии-ковариации (Pt' t − 1)

    2. Вектор 1 шага вперед прогнозов наблюдений для периода t (y ^ t 't − 1) и его оценочная матрица дисперсии-ковариации (Vt' t − 1)

    3. Отфильтрованные состояния для периода t (x ^ t 't) и его оценочной матрицы дисперсии-ковариации (Pt' t)

    4. Включение прогнозируемых и отфильтрованных оценок в функцию правдоподобия данных

      lnp (yT,...,y1) =∑t=1Tlnϕ (yt; y ^ t 't 1, Vt' t − 1),

      где (yt; y ^ t 't 1, Vt' t − 1) - многомерная функция нормальной плотности вероятности со средним значением y ^ t 't − 1 и дисперсией Vt' t − 1.

    5. Подает эту процедуру в оптимизатор для максимизации вероятности относительно параметров модели.

    6. Прогнозы состояния

      s-шаг вперед, прогнозы состояния - это оценки состояний в периоде t с использованием всей информации (например, наблюдаемые ответы) до периода t-s.

      Вектор mt-by-1 на 1 шаг вперед, прогнозы состояния в периоде t xt t 1 = E (xt 'yt 1,..., y1). Оценочный вектор прогнозов состояния составляет

      x ^ t 't 1 = Atx ^ t − 1 | t − 1,

      где x ^ t 1 | t − 1 - вектор отфильтрованного состояния mt - 1 на 1 в периоде t - 1.

      В период t, 1 шаг вперед, прогнозы состояния имеют матрицу дисперсии-ковариации

      Pt't−1=AtPt−1|t−1At′+BtBt ′,

      where Pt 1 | t − 1 - оценочная дисперсионно-ковариационная матрица отфильтрованных состояний в периоде t - 1, учитывая всю информацию до периода t - 1.

      Соответствующее прогнозное наблюдение на 1 шаг вперед - y ^ t 't 1 = Ctx ^ t' t − 1, а его матрица дисперсии-ковариации - Vt 't 1 = Var (yt' yt 1,..., y1) =CtPt't−1Ct′+DtDt ′.

      В общем, s-шаг вперед, прогнозируемый вектор состояния xt 't s = E (xt' yt s,..., y1). S-шаг вперед, вектор прогнозов состояния

      x ^ t + s 't = (∏j=t+1t+sAj) xt' t

      и s-шаг вперед, прогнозируемый вектор наблюдения

      y ^ t + s 't = Ct + sx ^ t + s' t.

      Отфильтрованные состояния

      Прогнозы состояния в период t, обновленные с использованием всей информации (например, наблюдаемые ответы) до периода t.

      Вектор mt-by-1 отфильтрованных состояний в периоде t равен xt 't = E (xt' yt,..., y1). Оценочный вектор отфильтрованных состояний равен

      x ^ t 't = x ^ t' t '-1 + Kt ^ t,

      где:

      • x ^ t 't − 1 - вектор прогнозов состояния в периоде t с использованием наблюдаемых откликов от периодов от 1 до t- 1.

      • Kt - неочищенная матрица усиления Калмана для периода t.

      • ε^t=yt−Ctx^t't−1 - ht-1 вектор предполагаемых инноваций наблюдения в период t.

      Другими словами, отфильтрованные состояния в периоде t являются прогнозируемыми состояниями в периоде t плюс корректировка, основанная на достоверности наблюдения. Достоверные наблюдения имеют очень мало соответствующей дисперсии инноваций наблюдения (например, максимальное собственное значение ′ DtDt относительно мало). Следовательно, для данного новшества в оценочных наблюдениях термин Ktstart^ t оказывает большее влияние на значения отфильтрованных состояний, чем ненадежные наблюдения.

      В периоде t отфильтрованные состояния имеют матрицу дисперсии-ковариации

      Pt 't = Pt' t 1 KtCtPt 't − 1,

      где Pt 't 1 - оценочная дисперсионно-ковариационная матрица прогнозов состояния в периоде t, учитывая всю информацию до периода t-1.

      Сглаженные состояния

      Сглаженные состояния - это оценочные состояния в периоде t, которые обновляются с использованием всей доступной информации (например, всех наблюдаемых ответов).

      Вектор mt-by-1 сглаженных состояний в периоде t равен xt 'T = E (xt' yT,..., y1). Оценочный вектор сглаженных состояний равен

      x ^ t 'T = x ^ t' t 1 + Pt 't − 1rt,

      где:

      • x^t't−1 - государственные прогнозы в период t использование наблюдаемых ответов с периодов 1 к t - 1.

      • Pt 't 1 - оценочная дисперсионно-ковариационная матрица прогнозов состояния, учитывая всю информацию до периода t - 1.

      • rt=∑s=tT {[∏j=ts−1 (At KtCt)] Cs′Vs's−1−1νs}, где,

        • Kt - неочищенная матрица усиления Калмана для периода t.

        • Vt't−1=CtPt't−1Ct′+DtDt ′, которая является оценочной матрицей дисперсии-ковариации прогнозируемых наблюдений.

        • νt=yt−y^t't−1, который является различием между наблюдением и его прогнозом в период t.

      Сглаженные нарушения состояния

      Оцениваются сглаженные нарушения состояния, нарушения состояния в период t, которые обновляются с использованием всей доступной информации (например, всех наблюдаемых ответов).

      Вектор kt-by-1 сглаженных возмущений состояния в периоде t равен ut 'T = E (ut' yT,..., y1). Расчетный вектор сглаженных возмущений состояния равен

      u^t'T=Bt′rt,

      где rt - переменная в формуле для оценки сглаженных состояний.

      В периоде t сглаженные нарушения состояния имеют дисперсионно-ковариационную матрицу

      Ut'T=I−Bt′NtBt,

      где Nt - переменная в формуле для оценки матрицы дисперсии-ковариации сглаженных состояний.

      Программное обеспечение вычисляет сглаженные оценки с использованием обратной рекурсии фильтра Калмана.

      Прогнозируемые наблюдения

      s-шаг вперед, прогнозируемые наблюдения - это оценки наблюдений в период t с использованием всей информации (например, наблюдаемых ответов) вплоть до периода t-s.

      Вектор nt-by-1 1-ступенчатых, прогнозируемых наблюдений в периоде t равен yt 't 1 = E (yt' yt 1,..., y1). Расчетный вектор прогнозируемых наблюдений составляет

      y ^ t 't 1 = Ctx ^ t' t − 1,

      где x ^ t 't − 1 - оценочный вектор mt-by-1 прогнозов состояния в периоде t.

      В периоде t 1 шаг вперед прогнозируемые наблюдения имеют матрицу дисперсии-ковариации

      Vt 't 1 = Var (yt' yt 1,..., y1) =CtPt't−1Ct′+DtDt ′.

      где Pt 't 1 - оценочная дисперсионно-ковариационная матрица прогнозов состояния в периоде t, учитывая всю информацию до периода t-1.

      В общем, s-шаг вперед, вектор прогнозов состояния xt 't s = E (xt' yt s,..., y1). S-шаг вперед, прогнозируемый вектор наблюдения

      y ^ t + s 't = Ct + sx ^ t + s' t.

      Инновации в области сглаженных наблюдений

      Сглаженные инновации наблюдения оцениваются, инновации наблюдения в период t, которые обновляются с использованием всей доступной информации (например, всех наблюдаемых ответов).

      Вектор ht-by-1 сглаженных, наблюдаемых новшеств в периоде t равен αt 'T = E (αt' yT,..., y1). Предполагаемый вектор сглаженных, наблюдательных инноваций -

      ε^t=Dt′Vt't−1−1νt−Dt′Kt′rt+1,

      где:

      • rt и startt являются переменными в формуле для оценки сглаженных состояний.

      • Kt - неочищенная матрица усиления Калмана для периода t.

      • Vt't−1=CtPt't−1Ct′+DtDt ′, которая является оценочной матрицей дисперсии-ковариации прогнозируемых наблюдений.

      В периоде t сглаженные инновации наблюдения имеют дисперсионно-ковариационную матрицу

      Et 'T = I Dt (Vt't−1−1−Kt′Nt+1Kt) Dt.

      Программное обеспечение вычисляет сглаженные оценки с использованием обратной рекурсии фильтра Калмана.

      Калман-Гари

      • Необработанный коэффициент усиления Калмана - это матрица, указывающая, насколько взвешивать наблюдения во время рекурсий фильтра Калмана.

        Необработанный коэффициент усиления Калмана является матрицей mt-by-ht, вычисленной с использованием

        Kt = Pt 't 1Ct (CtPt't−1Ct′+DtDt ′) − 1,

        где Pt 't 1 - оценочная дисперсионно-ковариационная матрица прогнозов состояния, учитывая всю информацию до периода t-1.

        Величина сырого набора Калмана определяет, сколько веса следует положить на наблюдения. Для данного оценочного новшества наблюдения, если максимальное собственное значение ′ DtDt относительно мало, то сырой прирост Калмана придает относительно большой вес наблюдениям. Если максимальное собственное значение DtDt ′ относительно велико, то сырой прирост Калмана придает относительно небольшой вес наблюдениям. Следовательно, отфильтрованные состояния в период t близки к соответствующим прогнозам состояния.

      • Рассмотрим возможность получения прогнозов состояния на 1 шаг вперед для периода t + 1 с использованием всей информации до периода T. Скорректированный прирост Калмана (Kadj, t) - это величина веса, нанесенная на предполагаемое инновационное наблюдение для периода t (start^ t) по сравнению с прогнозом состояния на 2 шага вперед (x ^ t + 1 | t − 1).

        То есть

        x ^ t + 1 | t = Atx ^ t 't = Atx ^ t' t 1 + AtKt ^ t = x ^ t + 1 | t − 1 + Kadj, tstart^ t.

        Обратная рекурсия фильтра Калмана

        Обратная рекурсия фильтра Калмана оценивает сглаженные состояния, нарушения состояния и инновации наблюдения.

        Программа оценивает сглаженные значения по:

        1. Установка rT + 1 = 0 и NT + 1 в матрицу mT-by-mT из 0 с

        2. Для t = T,...,1 он рекурсивно вычисляет:

          1. rt (см. Сглаженные состояния)

          2. x ^ t 'T, которая является матрицей сглаженных состояний

          3. Nt (см. Сглаженные состояния)

          4. Pt 'T, которая является оценочной матрицей дисперсии-ковариации сглаженных состояний

          5. u ^ t 'T, которая является матрицей сглаженных возмущений состояния

          6. Ut 'T, которая является матрицей оцененной дисперсии-ковариации сглаженных возмущений состояния

          7. start^ t 'T, которая является матрицей сглаженных инноваций наблюдения

          8. Et 'T, которая является оценочной матрицей дисперсии-ковариации сглаженных инноваций наблюдения

        Диффузный фильтр Калмана

        Рассмотрим модель состояния-пространства, написанную так, чтобы m диффузных состояний (xd) были отделены от n стационарных состояний (xs). То есть моменты начальных распределений равны

        мк0 = [мкд0мкс0] и Σ0 = [

        • мкd0 - m-вектор нулей

        • мкс0 - n-вектор вещественных чисел

        • Σd0 = λ Im, где Im является матрицей тождества m-by-m, а («t») - положительным вещественным числом.

        • Σs0 является n-на-n положительной определенной матрицей.

        • Диффузные состояния не коррелируют друг с другом и со стационарными состояниями.

        Один из способов анализа такой модели состоит в том, чтобы задать относительно большое положительное вещественное число, а затем реализовать стандартный фильтр Калмана (см. ssm). Эта обработка является приближением к анализу, который рассматривает диффузные состояния, как если бы их ковариация начального состояния приближалась к бесконечности.

        Диффузный фильтр Калмана или точно-начальный фильтр Калмана [58] обрабатывает диффузные состояния, принимая для ∞. Диффузный фильтр Калмана фильтрует в два этапа: первый этап инициализирует модель так, чтобы впоследствии её можно было фильтровать с помощью стандартного фильтра Калмана, который является вторым этапом. Этап инициализации зеркально отражает стандартный фильтр Калмана. Он устанавливает все начальные отфильтрованные состояния на ноль, а затем дополняет этот вектор начальных отфильтрованных состояний единичной матрицей, которая составляет матрицу (m + n) -by- (m + n + 1). После достаточного количества периодов прецизионные матрицы становятся неингулярными. То есть диффузный фильтр Калмана использует достаточно периодов в начале серии для инициализации модели. Этот период можно рассматривать как предварительные данные.

        Второй этап начинается, когда матрицы точности являются неингулярными. В частности, этап инициализации возвращает вектор отфильтрованных состояний и их матрицу точности. Затем стандартный фильтр Калмана использует эти оценки и оставшиеся данные для фильтрации, сглаживания и оценки параметров. Дополнительные сведения см. в разделе dssm и [58], раздел 5.2.

        Ссылки

        [1] Дурбин Дж., и С. Дж. Копман. Анализ временных рядов по методам пространства состояний. 2-й ред. Оксфорд: Oxford University Press, 2012.

        См. также

        Объекты

        Функции

        Связанные темы