exponenta event banner

Рекурсивные алгоритмы для оценки параметров в режиме онлайн

Алгоритмы рекурсивной оценки в Toolbox™ идентификации системы можно разделить на две категории:

  • Алгоритмы бесконечной истории - эти алгоритмы направлены на минимизацию ошибки между наблюдаемыми и прогнозируемыми выходами для всех временных шагов с начала моделирования. Панель инструментов идентификации системы поддерживает оценку бесконечной истории в:

    • Рекурсивные оценщики командной строки для линейной регрессии методом наименьших квадратов, структур моделей AR, ARX, ARMA, ARMAX, OE и BJ

    • Блоки модуля оценки рекурсивных наименьших квадратов Simulink ® и модуля оценки рекурсивных полиномиальных моделей

  • Алгоритмы конечной истории - эти алгоритмы направлены на минимизацию ошибки между наблюдаемыми и прогнозируемыми выходами для конечного числа прошлых временных шагов. Панель инструментов поддерживает конечную историческую оценку для моделей линейных параметров:

    • Рекурсивные оценщики командной строки для линейной регрессии методом наименьших квадратов, структур моделей AR, ARX и OE

    • Блок Simulink Recursive Least Squares Estimator

    • Блок Simulink Recursive Polynomial Model Estimator, только для структур AR, ARX и OE

    Алгоритмы с конечной историей обычно легче настроить, чем алгоритмы с бесконечной историей, когда параметры имеют быстрые и потенциально большие вариации во времени.

Рекурсивная оценка бесконечной истории

Общая форма бесконечно-исторической рекурсивной оценки

Общая форма алгоритма рекурсивной оценки бесконечной истории следующая:

start^ (t) = start^ (t 1) + K (t) (y (t) − y ^ (t))

λ ^ (t) - оценка параметра в момент времени t.y (t) - наблюдаемый выход в момент времени t, а y ^ (t) - прогноз y (t) на основе наблюдений до момента времени t-1. Коэффициент усиления K (t) определяет, насколько текущая ошибка прогнозирования y (t) − y ^ (t) влияет на обновление оценки параметра. Алгоритмы оценки минимизируют член ошибки прогнозирования y (t) − y ^ (t).

Коэффициент усиления имеет вид:

K (t) = Q (t) (t)

Рекурсивные алгоритмы, поддерживаемые продуктом System Identification Toolbox, различаются, основываясь на различных подходах к выбору формы Q (t) и вычислению start( t). В данном случае, start( t) представляет градиент прогнозируемого выходного сигнала модели y ^ (t '

Простейшим способом визуализации роли градиента (t) параметров является рассмотрение моделей с линейно-регрессионной формой:

y (t) = ψT (t) θ0 (t) +e (t)

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

Для уравнений линейной регрессии прогнозируемый выход задается следующим уравнением:

y^ (t) = ψT (t) θ^ (t−1)

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

Типы алгоритмов рекурсивной оценки бесконечной истории

Программное обеспечение System Identification Toolbox предоставляет следующие алгоритмы рекурсивной оценки с бесконечной историей для оперативной оценки:

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

Забывая о факторе.  Следующий набор уравнений суммирует алгоритм адаптации коэффициента забывания:

start^ (t) = start^ (t 1) + K (t) (y (t) − y ^ (t))

y^ (t) = ψT (t) θ^ (t−1)

K (t) = Q (t) (t)

Q (t) = P (t 1) λ + λ T (t) P (t − 1) (t)

P (t) = (P (t 1) P (t 1)

Программное обеспечение гарантирует, что P (t) является положительной-определенной матрицей, используя алгоритм квадратного корня для ее обновления [2]. Вычисляет программное обеспечение P предполагая, что остатки (разность между оцененными и измеренными выходами) являются белым шумом, и дисперсия этих остатков равна 1. R2/2 * P приблизительно равна ковариационной матрице оцененных параметров, где R2 - истинная дисперсия остатков.

Q (t) получают минимизацией следующей функции в момент времени t:

∑k=1tλt−k (y (k) y ^ (k)) 2

Подробнее см. раздел 11.2 в [1].

Этот подход позволяет дисконтировать старые измерения в геометрической прогрессии таким образом, что наблюдение, которое представляет собой старые выборки, несет вес, который равен λ, умноженный на вес самого последнего наблюдения. λ = 11 − λ представляет горизонт памяти данного алгоритма. Как правило, измерения, более старые, чем start= 11 − λ, несут вес, который меньше, чем приблизительно 0,3.

λ называется коэффициентом забывания и обычно имеет положительное значение между 0.98 и 0.995. Установите λ = 1 для оценки инвариантных по времени (постоянных) параметров. Установите λ < 1 для оценки изменяющихся во времени параметров.

Примечание

Алгоритм коэффициента забывания для λ = 1 эквивалентен алгоритму фильтра Калмана с R1 = 0 и R2 = 1. Дополнительные сведения об алгоритме фильтра Калмана см. в разделе Фильтр Калмана.

Фильтр Калмана.  Следующий набор уравнений суммирует алгоритм адаптации фильтра Калмана:

start^ (t) = start^ (t 1) + K (t) (y (t) − y ^ (t))

y^ (t) = ψT (t) θ^ (t−1)

K (t) = Q (t) (t)

Q (t) = P (t 1) R2 +

P (t) = P (t 1) + R1 P (t 1)

Программное обеспечение гарантирует, что P (t) является положительной-определенной матрицей, используя алгоритм квадратного корня для ее обновления [2]. Вычисляет программное обеспечение P предполагая, что остатки (разность между оцененными и измеренными выходами) являются белым шумом, и дисперсия этих остатков равна 1. R2* P - ковариационная матрица оцененных параметров, а R1/ R2 - ковариационная матрица изменений параметров. Где, R1 является матрицей ковариации изменений параметров, которые вы указываете.

Эта формулировка предполагает форму линейной регрессии модели:

y (t) = ψT (t) θ0 (t) +e (t)

Q (t) вычисляется с использованием фильтра Калмана.

Эта формулировка также предполагает, что истинные параметры start0 (t) описываются случайным обходом:

start0 (t) = start0 (t 1) + w (t)

w (t) - гауссовский белый шум со следующей ковариационной матрицей, или дрейфовой матрицей R1:

Ew (t) wT (t) = R1

R2 - дисперсия нововведений e (t) в следующем уравнении:

y (t) = ψT (t) θ0 (t) +e (t)

Алгоритм фильтра Калмана полностью определяется последовательностью данных y (t), градиентом (t), R1, R2 и начальными условиями (t = 0) (начальное угадывание параметров) и P (t = 0) (ковариационная матрица, которая указывает на ошибки параметров).

Примечание

Предполагается, что матрицы R1 и P (t = 0) масштабируются так, что R2 = 1. Это масштабирование не влияет на оценки параметров.

Нормализованный и ненормализованный градиент.  В случае линейной регрессии градиентные методы также известны как методы наименьших средних квадратов (LMS).

Следующий набор уравнений суммирует ненормализованный градиент и алгоритм адаптации нормализованного градиента:

start^ (t) = start^ (t 1) + K (t) (y (t) − y ^ (t))

y^ (t) = ψT (t) θ^ (t−1)

K (t) = Q (t) (t)

В ненормализованном градиентном подходе Q (t) задается следующим образом:

Q (t) = γ

При нормализованном градиентном подходе Q (t) задается следующим образом:

Q (t) = γ 'start( t) | 2 + Смещение

Алгоритм нормализованного градиента масштабирует коэффициент адаптации γ на каждом шаге на квадрат двух-нормы вектора градиента. Если градиент близок к нулю, это может привести к скачкам расчетных параметров. Для предотвращения этих скачков в коэффициент масштабирования вводится термин смещения.

Эти варианты Q (t) для алгоритмов градиента обновляют параметры в отрицательном направлении градиента, где градиент вычисляется относительно параметров. Подробнее см. стр. 372 в [1].

Рекурсивная оценка конечной истории

Методы оценки с конечной предысторией обнаруживают оценки параметров start( t) путем минимизации

∑k=t−N+1t (y (k) y ^ (k 'ü)) 2,

где y (k) - наблюдаемый выходной сигнал в момент времени k, и y ^ (k 'λ) - прогнозируемый выходной сигнал в момент времени k. Этот подход также известен как оценка скользящего окна. Подходы оценки с конечной историей минимизируют ошибки прогнозирования для последних N временных шагов. Напротив, методы оценки с бесконечной историей минимизируют ошибки прогнозирования, начиная с начала моделирования.

Панель инструментов идентификации системы поддерживает оценку конечной истории для моделей линейных параметров (AR и ARX), где прогнозируемый выходной сигнал имеет вид y ^ (k 'start) = (k) (k − 1). Программное обеспечение конструирует и поддерживает буфер регрессоров (k) и наблюдаемых выходов y (k) для k = t-N + 1, t-N + 2,..., t-2, t-1, t. Эти буферы содержат необходимые матрицы для лежащей в основе задачи линейной регрессии по минимизации Ψbufferθ−ybuffer‖22 over start. Программное обеспечение решает эту задачу линейной регрессии с помощью QR-факторинга с поворотом столбца.

Ссылки

[1] Люнг, Л. Идентификация системы: теория для пользователя. Река Верхнее Седло, Нью-Джерси: Prentice-Hall PTR, 1999.

[2] Карлсон, Н.А. «Быстрая треугольная формулировка фильтра квадратного корня». Журнал AIAA, т. 11, № 9, 1973, стр. 1259-1265.

[3] Чжан, В. «Некоторые аспекты реализации алгоритмов наименьших квадратов скользящего окна». Процедуры ИФАК. Том 33, выпуск 15, 2000, стр. 763-768.

См. также

| | | | | | | |

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