exponenta event banner

Оценщик рекурсивной полиномиальной модели

Оценка коэффициентов модели ввода-вывода и полинома временного ряда

  • Библиотека:
  • Набор средств идентификации системы/оценщики

  • Recursive Polynomial Model Estimator block

Описание

Структуры модели

Блок Оценка рекурсивной модели полинома (Recursive Polynomial Model Estimator) используется для оценки моделей полинома и временных рядов с дискретным временем ввода-вывода.

Эти структуры модели:

  • AR - A (q) y (t) = e (t)

  • ARMA - A (q) y (t) = C (q) e (t)

  • ARX - A (q) y (t) = B (q) u (t-nk) + e (t)

  • ARMAX - A (q) y (t) = B (q) u (t-nk) + C (q) e (t)

  • OE - y (t) = B (q) F (q) u (t − nk) + e (t)

  • BJ - y (t) = B (q) F (q) u (t nk) + C (q) D (q) e (t)

q - оператор временного сдвига, а nk - входная задержка. u (t) является входом, y (t) является выходом, и e (t) является ошибкой. Для моделей MISO существует столько многочленов B (q), сколько входов.

Порядки этих моделей соответствуют максимальному числу временных сдвигов, как представлено экспонентой q. Например, порядок na представлен в многочлене A (q) следующим образом :

1 + a1q-1 + a2q-2 +... + anaq-na.

Эквивалентное представление применяется к многочленам C (q), D (q) и F (q) и их соответствующим порядкам nc, nd и nf.

Многочлен B (q) уникален по отношению к другим, поскольку этот многочлен работает на входе и содержит системные нули. Для B (q) порядок nb является порядком многочлена B (q) + 1:

b1 + b2q-1 + b3q-2 +... + bnbq- (nb-1).

Порядки na, nb, nc, nd, nf и входная задержка nk известны заранее. Задайте эти значения в качестве параметров блока. Введите u (t) и y (t) через входы входов и выходов соответственно. Блок оценивает набор коэффициентов A (q), B (q), C (q), D (q) и F (q), которые использует структура модели, и выводит их в выходе параметров. Во время оценки блок ограничивает оценочные многочлены C, D и F стабильной областью с корнями в единичном диске, позволяя при этом оценочным многочленам A и B быть нестабильными. Выход Parameters обеспечивает сигнал шины со следующими элементами:

  • A - вектор, содержащий [1 a1 (t)... ana (t)].

  • B - Вектор, содержащий [01... 0nk, b1 (t)... bnb (t)]. Для данных MISO B является матрицей, где параметры i-й строки соответствуют i-му входу.

  • C - вектор, содержащий [1 с1 (t)... cnc (t)].

  • D - вектор, содержащий [1 d1 (t)... dnd (t)].

  • F - вектор, содержащий [1 f1 (t)... fnf (t)].

Например, предположим, что необходимо оценить коэффициенты для следующей модели SISO ARMAX:

y (t) + a1y (t - 1) +... + anay (t - na) = b1u (t - nk) +... + bnbu (t - nb - nk + 1) + e (t) + c1e (t - 1) +... + cnce (t - nc)

y, u, na, nb, nc и nk - это известные величины, которые вы предоставляете блоку. Для каждого временного шага t блок оценивает значения параметров A, B и C, ограничивая только полином C стабильной областью. Затем блок выводит эти оценочные значения с помощью порта «Параметры».

Возможности блоков

Блок поддерживает несколько методов оценки и форматов ввода данных. Блок может предоставлять как бесконечную историю [1], так и конечную историю [2] (также известную, как скользящее окно) оценки для Конфигурируемые опции в блоке:

  • Несколько входов (только структура модели ARX) - см. порт входов.

  • Формат данных на основе образцов или кадров - см. параметр «Обработка входных данных».

  • Несколько методов оценки с бесконечной историей [1] - см. параметр метода оценки.

  • Бесконечная история (все структуры модели) или конечная история (только структуры модели AR, ARX или OE) - см. параметр История.

  • Начальные условия, флаг включения и триггер сброса - см. параметры Initial Estimate, Add enable port и External Reset.

Дополнительные сведения о методах оценки см. в разделе Рекурсивные алгоритмы для интерактивной оценки параметров.

Порты

Вход

развернуть все

Входной сигнал u (t). Параметр Input Processing и количество входов nu определяют размеры сигнала. Только структура модели ARX может иметь несколько входов с nu больше 1.

  • Входная обработка на основе выборки и входы nu - вектор nu-by-1

  • Обработка входных данных на основе кадра с M отсчетов на кадр и nu входов - матрица M-by-nu

Зависимости

Чтобы включить этот порт, задайте для параметра Model Structure значение ARX, ARMAX, BJ, или OE.

Типы данных: single | double

Измеренный выходной сигнал y (t). Параметр Input Processing определяет размеры сигнала:

  • Обработка входных данных на основе образцов - скалярная

  • Обработка входных данных на основе кадра с M выборок на кадр - вектор M-by-1

Типы данных: single | double

Внешний сигнал, позволяющий включать и отключать обновления оценки. Если значение сигнала:

  • true - Оцените и выведите значения параметров для временного шага.

  • false - Не оценивайте значения параметров и выводите самое последнее ранее оцененное значение.

Зависимости

Чтобы включить этот порт, выберите параметр Add enable port.

Типы данных: single | double | Boolean | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32

Сбросить оценку параметров на исходные условия. Тип триггера определяется значением параметра External reset. Тип триггера определяет, происходит ли сброс для сигнала, который поднимается, падает, поднимается или падает, уровень или при удержании уровня.

Зависимости

Чтобы включить этот порт, выберите любой параметр, кроме None в раскрывающемся списке External reset.

Типы данных: single | double | Boolean | int8 | int16 | int32 | uint8 | uint16 | uint32

Начальные оценки параметров, поступающие из внешнего по отношению к блоку источника. Блок использует этот ввод в начале моделирования или при запуске сброса алгоритма с помощью сигнала Reset.

Для получения информации о содержимом объекта шины InitityParameters см. описание порта Parameters.

Зависимости

Чтобы включить этот порт, установите для параметра History значение Infinite и Первоначальная оценка External.

Типы данных: single | double

Начальные ковариации параметров, поступающие от внешнего по отношению к блоку источника. Дополнительные сведения см. в разделе Параметр матрицы ковариации. Блок использует этот ввод в начале моделирования или при запуске сброса алгоритма с помощью сигнала Reset.

Зависимости

Чтобы включить этот порт, установите следующие параметры:

  • История в Infinite

  • Метод оценки для Forgetting Factor или Kalman Filter

  • Первоначальная оценка External

Типы данных: single | double

Начальный набор входов при использовании оценки с конечной историей (скользящее окно), поступающий из внешнего источника.

  • Если структура модели ARX, то сигнал на этот порт должен быть матрицей (W-1 + max (nb) + max (nk)) -by-nu, где W - длина окна, а nu - количество входов. nb - вектор B (q) полиномиальных порядков, а nk - вектор входных задержек.

  • Если структура модели OE, то сигнал на этот порт должен быть вектором (W-1 + nb + nk) -by-1, где W - длина окна. nb - вектор B (q) полиномиальных порядков, а nk - вектор входных задержек.

Блок использует этот ввод в начале моделирования или при каждом срабатывании сигнала сброса.

Если начальный буфер имеет значение 0 или содержит недостаточно информации, на начальном этапе оценки отображается предупреждающее сообщение. Предупреждение должно быть снято через несколько циклов. Количество циклов буферизации достаточной информации зависит от порядка полиномов и задержек ввода. Если предупреждение сохраняется, следует оценить содержание сигналов.

Зависимости

Чтобы включить этот порт, установите:

  • История в Finite

  • Структура модели в ARX или OE

  • Первоначальная оценка External

Типы данных: single | double

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

  • Если структура модели AR или ARX, тогда сигнал на этот порт должен быть вектором (W + na) -by-1, где W - длина окна, а na - порядок многочленов A (q).

  • Если структура модели OE, то сигнал на этот порт должен быть вектором (W + nf) -by-1, где W - длина окна, а nf - порядок многочленов F (q).

Блок использует этот ввод в начале моделирования или при каждом срабатывании сигнала сброса.

Если начальный буфер имеет значение 0 или содержит недостаточно информации, на начальном этапе оценки отображается предупреждающее сообщение. Предупреждение должно быть снято через несколько циклов. Количество циклов буферизации достаточной информации зависит от порядка полиномов и задержек ввода. Если предупреждение сохраняется, следует оценить содержание сигналов.

Зависимости

Чтобы включить этот порт, установите:

  • История в Finite

  • Структура модели в AR, ARX, или OE

  • Первоначальная оценка External

Типы данных: single | double

Продукция

развернуть все

Расчетные полиномиальные коэффициенты, возвращаемые как шина. Шина содержит элемент для каждого из многочленов A, B, C, D и F, которые соответствуют структуре, указанной в разделе Структура модели (см. Структуры модели).

Каждый элемент шины является векторным сигналом, содержащим связанные полиномиальные коэффициенты. Например, элемент A содержит [1 a1 (t)... ana (t)].

Оцененные значения C, D и F ограничены стабильными дискретными полиномами времени. То есть все эти многочлены имеют корни внутри единичной окружности. Оценочные полиномы A и B допускаются к нестабильной работе.

Типы данных: single | double

Ошибка оценки, возвращенная как:

  • Скаляр - выборочная обработка входных данных

  • M-by-1 vector - Обработка входных данных на основе кадра с M отсчетов на кадр

Зависимости

Чтобы включить этот порт, выберите параметр Output estimation error.

Типы данных: single | double

Ковариация P ошибки оценки параметра, возвращаемая в виде матрицы N-на-N, где N - количество параметров. Дополнительные сведения см. в разделе Параметр Covariance Matrix выходного параметра.

Зависимости

Чтобы включить этот порт:

  • Выберите параметр ковариационной матрицы выходного параметра.

  • Если история Infinite, задайте для метода оценки значение Forgetting Factor или Kalman Filter.

Типы данных: single | double

Параметры

развернуть все

Структура модели

Расчетная структура модели, указанная как одно из следующих:

  • ARX - Модель SISO или MISO ARX

  • ARMAX - Модель SISO ARMAX

  • OE - Модель SISO OE

  • BJ - Модель SISO BJ

  • AR - Модель AR временного ряда

  • ARMA - Модель ARMA временного ряда

Параметры модели

Укажите, как предоставлять начальные оценки параметров блоку:

  • None - Не уточняйте первоначальные оценки.

    Блок использует 0 в качестве начальной оценки параметра.

    Укажите параметры, разрешенные блоком, на основе выбора структуры модели и метода оценки.

    • Задайте набор параметров Количество параметров (Number of Parameters) (), который будет включен блоком на основе структуры модели. Например, если для параметра Структура модели (Model Structure) задано значение ARукажите число параметров в параметре A (q) (na).

    • Укажите параметр Задержка ввода (nk), который активируется блоком, когда структура модели использует элемент B (q ).

    • Укажите матрицу ковариации параметров, если метод оценки Forgetting Factor или Kalman Filter.

  • Internal - Укажите начальные оценки параметров для блока.

    • Укажите начальные значения параметров Initial (), разрешенные блоком на основе структуры модели и истории. Например, если для параметра Структура модели (Model Structure) задано значение AR и История Infinite, укажите параметр Initial A (q).

    • Укажите параметр Задержка ввода (nk), который активируется блоком, когда структура модели использует элемент B (q ).

    • Укажите параметр матрицы ковариации параметра, если метод оценки имеет значение Forgetting Factor или Kalman Filter.

    • Задайте параметр «Начальные входные данные» (ARX и OE только) и параметром Initial Outputs (Начальные выходы) (ARX, AR, и OE), если History имеет значение Finite.

  • External - Укажите начальные оценки параметров в качестве входного сигнала для блока.

    Укажите параметры «Количество параметров» (), разрешенные блоком на основе структуры модели. Параметры «Структура модели» (Model Structure) и «История» (History) определяют, какие сигналы следует подключить к соответствующим портам:

    • Если история Infinite - Параметры ввода и ковариация ввода

    • Если история Finite - InitiveOutputs для AR, ARX, и OE структуры модели и InitityInputs для ARX и OE структуры модели

Программное использование

Параметр блока: InitialEstimateSource
Тип: символьный вектор, строка
Значения: 'None', 'Internal', 'External'
По умолчанию: 'None'

Укажите количество расчетных параметров na в полиноме A (q).

Зависимости

Чтобы включить этот параметр, выполните одно из следующих действий:

  • Задать для журнала значение Infinite, Структура модели в AR, ARX, ARMA, или ARMAXи Первоначальная оценка None или External.

  • Задать для журнала значение Finite, Структура модели в AR или ARXи Первоначальная оценка None или External.

Программное использование

Параметр блока: A0
Тип: неотрицательное целое число
По умолчанию: 1

Укажите количество расчетных параметров nb в полиноме B (q).

Для систем MISO, использующих структуру модели ARX, укажите nb в качестве вектора, содержащего столько элементов, сколько имеется входных данных. Каждый элемент этого вектора представляет порядок многочлена B (q), связанного с соответствующим входом. Например, предположим, что имеется система MISO с двумя входами, элементы B (q) которой: [B1B2] = [0b1100b21b22]. Ноль в начале каждого полинома представляет единственную входную задержку для каждого входа (см. описание параметра Initial B (q)). Конечный ноль в B1 предназначен для выравнивания длины многочленов и не оказывает влияния на оценку. nb для каждого многочлена равно числу оцененных параметров, следующих за начальным нулем, или 1 для входа 1 и 2 для входа 2. Укажите количество параметров в B (q) ( nb) как[1 2]и задержка ввода (nk) как [1 1].

Зависимости

Чтобы включить этот параметр, выполните одно из следующих действий:

  • Задать для журнала значение Infinite, Структура модели в ARX, ARMAX, BJ, или OEи Первоначальная оценка None или External.

  • Задать для журнала значение Finite со структурой модели ARX или OE и Первоначальная оценка None или External.

Программное использование

Параметр блока: B0
Тип: положительное целое число
По умолчанию: 1

Укажите количество расчетных параметров nc в полиноме C (q).

Зависимости

Чтобы включить этот параметр, установите для параметра History значение Infinite, Структура модели в ARMA, ARMAX, или BJи Первоначальная оценка None или External

Программное использование

Параметр блока: C0
Тип: положительное целое число
По умолчанию: 1

Укажите количество расчетных параметров в полиноме D (q).

Зависимости

Чтобы включить этот параметр, установите для параметра History значение Infinite, Структура модели в BJи Первоначальная оценка None или External.

Программное использование

Параметр блока: D0
Тип: положительное целое число
По умолчанию: 1

Укажите количество расчетных параметров nf в полиноме F (q).

Зависимости

Чтобы включить этот параметр, задайте для параметра Начальная оценка значение None или External и либо:

  • История в Infinite, Структура модели в OE или BJи Первоначальная оценка None или External

  • История в Finite, Структура модели в OEи Первоначальная оценка None или External

.

Программное использование

Параметр блока: F0
Тип: положительное целое число
По умолчанию: 1

Укажите задержку ввода в виде целого числа, представляющего количество шагов времени, которые происходят до того, как ввод повлияет на выход. Эта задержка также называется мертвым временем в системе. Блок кодирует входную задержку как фиксированные нули начала многочлена B (q). Для получения дополнительной информации см. описание параметра B (q).

Для систем MISO со структурой модели ARX укажите nk как вектор с элементами, задающими задержку для каждого входа. Этот вектор имеет длину nu, где nu - количество входов.

Например, предположим, что имеется система MISO с двумя входами, элементы B (q) которой: [B1B2] = [0b11b1200b21]. Нули в начале многочленов представляют задержку одной выборки для первого входа и задержку двух выборок для второго входа (см. описание параметра Initial B (q)). nb для каждого многочлена равно числу оцененных параметров, следующих за начальными нулями, или 2 для входа 1 и 1 для входа 2. Укажите задержку ввода (nk ) как[1 2]и количество параметров в B (q) (nb) как[2 1].

Зависимости

Чтобы включить этот параметр, выполните одно из следующих действий:

  • Задать для журнала значение Infinite, Структура модели в ARX, ARMAX, OE, или BJи Первоначальная оценка None или External.

  • Задать для журнала значение Finite, Структура модели в ARX или OEи Первоначальная оценка None или External.

Программное использование

Параметр блока: nk
Тип: неотрицательный целочисленный вектор
По умолчанию: 1

  • Вещественный положительный скаляр, α - ковариационная матрица - диагональная матрица N-на-N, с α в качестве диагональных элементов.

  • Вектор действительных положительных скаляров, [α (a), α (b), α (c), α (d), α (f)] - ковариационная матрица является диагональной матрицей N-на-N, с [α (a), α (b), α (c), α (d), α (f)] в качестве диагональных элементов. α (a) - вектор ковариации для каждого коэффициента многочлена А. Аналогично, α (b), α (c), α (d) и α (f) являются векторами, содержащими ковариацию коэффициентов многочленов B, C, D и F соответственно.

  • N-на-N симметричная положительно-определенная матрица.

    N может быть одним из следующих:

    • AR - N = na

    • ARX - N​=na+∑i=1Nunbi

    • ARMA - N = na + nc

    • ARMAX - N = na + nb + nc

    • OE - N = nb + nf

    • BJ - N = nb + nc + nd + nf

Зависимости

Чтобы включить этот параметр, установите

  • История в Infinite

  • Первоначальная оценка None или Internal

  • Метод оценки для Forgetting Factor или Kalman Filter

Блок использует этот параметр в начале моделирования или при каждом срабатывании сигнала сброса.

Программное использование

Параметр блока: P0
Тип: скаляр, вектор или матрица
По умолчанию: 1e4

Укажите начальную оценку полиномиальных коэффициентов A (q) как вектор строки длиной na + 1.

Ведущий коэффициент A должен быть 1.

Зависимости

Чтобы включить этот параметр, установите:

  • Структура модели в AR, ARX, ARMA, или ARMAX

  • Первоначальная оценка Internal

Программное использование

Параметр блока: A0
Текст: вещественный вектор
По умолчанию: [1 eps]

Укажите начальную оценку коэффициентов полинома B (q) как вектор строки длиной nb + nk. Для моделей с несколькими входами укажите матрицу, где i-я строка соответствует i-му входу.

Блок подсчитывает первые нули в В (q) и интерпретирует их как входную задержку nk. Эти нули фиксируются на протяжении всей оценки. nb - число элементов после первого ненулевого элемента в В (q). Блок оценивает значение этих nb-элементов.

Например:

  • [0 eps] соответствует nk = 1 и nb = 1.

  • [0 0 eps] соответствует nk = 2 и nb = 1.

  • [0 0 eps 0 eps] соответствует nk = 2 и nb = 3.

Значение по умолчанию: [0 eps].

Зависимости

Чтобы включить этот параметр, установите:

  • Структура модели в ARX, ARMAX, OE, или BJ

  • Первоначальная оценка Internal

Программное использование

Параметр блока: B0
Тип: вещественный вектор или матрица
По умолчанию: [0 eps]

Укажите начальную оценку коэффициентов полинома C (q) как вектор строки длины nc + 1.

Ведущий коэффициент C (q) должен быть равен 1.

Коэффициенты должны определять устойчивый дискретный полином времени, то есть иметь все корни многочлена в пределах единичной окружности.

Зависимости

Чтобы включить этот параметр, установите:

  • История в Infinite

  • Структура модели в ARMA, ARMAX, или BJ

  • Первоначальная оценка Internal

Программное использование

Параметр блока: C0
Текст: вещественный вектор
По умолчанию: [1 eps]

Укажите начальную оценку коэффициентов полинома D (q) как вектор строки длиной nd + 1.

Ведущий коэффициент D (q) должен быть равен 1.

Коэффициенты должны определять устойчивый дискретный полином времени, то есть иметь все корни многочлена в пределах единичной окружности.

Зависимости

Чтобы включить этот параметр, установите:

  • История в Infinite

  • Структура модели в BJ

  • Первоначальная оценка Internal

Программное использование

Параметр блока: D0
Текст: вещественный вектор
По умолчанию: [1 eps]

Укажите начальную оценку коэффициентов полинома F (q) как вектор строки длиной nf + 1.

Ведущий коэффициент F (q) должен быть равен 1.

Коэффициенты должны определять устойчивый дискретный полином времени, то есть иметь все корни многочлена в пределах единичной окружности.

Зависимости

Чтобы включить этот параметр, установите:

  • Структура модели в OE или в BJ

  • Первоначальная оценка Internal

Программное использование

Параметр блока: F0
Текст: вещественный вектор
По умолчанию: [1 eps]

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

  • Структура модели ARX - (W-1 + max (nb) + max (nk)) -by-nu

  • Структура модели OE - (W-1 + nb + nk) -by-1

где W - длина окна, а nu - количество входов. nb - вектор B (q) полиномиальных порядков, а nk - вектор входных задержек.

Если начальное значение равно 0блок заполняет буфер нулями.

Если начальный буфер имеет значение 0 или содержит недостаточно информации, на начальном этапе оценки отображается предупреждающее сообщение. Предупреждение должно быть снято через несколько циклов. Количество циклов буферизации достаточной информации зависит от порядка полиномов и задержек ввода. Если предупреждение сохраняется, следует оценить содержание сигналов.

Блок использует этот параметр в начале моделирования или при каждом срабатывании сигнала сброса.

Зависимости

Чтобы включить этот параметр, установите

  • История в Finite

  • Структура модели в ARX или OE

  • Первоначальная оценка Internal

.

Программное использование

Параметр блока: InitialInputs
Тип: вещественная матрица
По умолчанию: 0

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

  • Структура модели AR или ARX - (W + na) -на-1 вектор, где W - длина окна, а na - полиномиальный порядок A (q).

  • Структура модели OE - (W + nf) -by-1 вектор, где W - длина окна, а nf - полиномиальный порядок F (q).

Если начальное значение равно 0блок заполняет буфер нулями.

Если начальный буфер имеет значение 0 или содержит недостаточно информации, на начальном этапе оценки отображается предупреждающее сообщение. Предупреждение должно быть снято через несколько циклов. Количество циклов буферизации достаточной информации зависит от порядка полиномов и задержек ввода. Если предупреждение сохраняется, следует оценить содержание сигналов.

Блок использует этот параметр в начале моделирования или при каждом срабатывании сигнала сброса.

Зависимости

Чтобы включить этот параметр, установите:

  • История в Finite

  • Структура модели в AR, ARX, или OE

  • Первоначальная оценка Internal

Программное использование

Параметр блока: InitialOutputs
Текст: вещественный вектор
По умолчанию: 0

Обработка входных данных и время выборки

  • Sample-based обработка работает с сигналами, передаваемыми по одной выборке за раз.

  • Frame-based обработка оперирует сигналами, содержащими выборки из множества временных шагов. Многие интерфейсы датчиков машины упаковывают несколько выборок и передают их вместе в кадрах. Frame-based обработка позволяет вводить эти данные непосредственно без необходимости их предварительной распаковки.

Указание данных на основе кадров добавляет дополнительное измерение M к некоторым вводам и выводам данных, где M - количество временных шагов в кадре. К этим портам относятся:

  • Исходные данные

  • Продукция

  • Ошибка

Для получения дополнительной информации см. описание портов в разделе Порты.

Программное использование

Параметр блока: InputProcessing
Тип: символьный вектор, строка
Значения: 'Sample-based', 'Frame-based'
По умолчанию: 'Sample-based'

Укажите время выборки данных по отдельным выборкам для обработки на основе выборки (ts) или по кадрам для обработки на основе кадра (tf = Mts), где M - длина кадра. Если для параметра «Время выборки» задано значение по умолчанию -1, блок наследует значения ts или tf на основе сигнала.

Укажите значение параметра «Время выборки» в качестве положительного скаляра для переопределения наследования.

Программное использование

Параметр блока: Ts
Тип: вещественный скаляр
Значения: –1, положительный скаляр
По умолчанию: –1

Параметры алгоритма и блока

Параметры алгоритма

Параметр History определяет тип используемого рекурсивного алгоритма:

  • Infinite - Алгоритмы в этой категории направлены на получение оценок параметров, которые объясняют все данные с начала моделирования. Эти алгоритмы сохраняют историю в сводке данных. Блок поддерживает эту сводку в пределах фиксированного объема памяти, который со временем не увеличивается.

    Блок предоставляет несколько алгоритмов Infinite тип. При выборе этой опции включается параметр метода оценки, с помощью которого задается алгоритм.

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

    Блок обеспечивает один алгоритм Finite тип. Эту опцию можно использовать только с помощью AR, ARX, и OE структуры модели.

    При выборе этой опции включается параметр «Длина окна».

Дополнительные сведения о методах рекурсивной оценки см. в разделе Рекурсивные алгоритмы для интерактивной оценки параметров.

Программное использование

Параметр блока: History
Тип: символьный вектор, строка
Значения: 'Infinite', 'Finite'
По умолчанию: 'Infinite'

Параметр Длина окна (Window Length) определяет количество отсчетов времени, используемых для метода оценки с конечной историей (скользящее окно). Выберите размер окна, который балансирует производительность оценки с вычислительной нагрузкой и нагрузкой на память. Размерные коэффициенты включают в себя количество и временную дисперсию параметров в модели. Всегда указывайте длину окна в выборках, даже если используется обработка ввода на основе кадра.

Длина окна должна быть больше или равна количеству расчетных параметров.

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

Зависимости

Чтобы включить этот параметр, установите для параметра History значение Finite.

Программное использование

Параметр блока: WindowLength
Тип: положительное целое число
По умолчанию: 200

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

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

Программное использование

Параметр блока: EstimationMethod
Тип: символьный вектор, строка
Значения: 'Forgetting Factor','Kalman Filter','Normalized Gradient','Gradient'
По умолчанию: 'Forgetting Factor'

Коэффициент забывания λ определяет, дисконтируются ли в оценке старые данные и сколько. Предположим, что система остается приблизительно постоянной на протяжении T0 выборок. Можно выбрать λ так, что:

T0 = 11 − λ

  • Установка λ = 1 соответствует «без забывания» и оценке постоянных коэффициентов.

  • Установка λ < 1 подразумевает, что прошлые измерения менее значимы для оценки параметров и могут быть «забыты». Установите λ < 1 для оценки изменяющихся во времени коэффициентов.

Типичные варианты λ находятся в диапазоне [0,98 0,995].

Зависимости

Чтобы включить этот параметр, установите для параметра History значение Infinite и метод оценки Forgetting Factor.

Программное использование

Параметр блока: AdaptationParameter
Тип: скаляр
Значения: (0 1] диапазон
По умолчанию: 1

Ковариация шума процесса предписывает элементы и структуру ковариационной матрицы шума для оценки фильтра Калмана. Используя N в качестве количества параметров для оценки, укажите ковариацию шума процесса как одно из следующих значений:

  • Вещественный неотрицательный скаляр, α - ковариационная матрица - диагональная матрица N-на-N, с α в качестве диагональных элементов.

  • Вектор действительных неотрицательных скаляров, [α1,...,αN] - ковариационная матрица - диагональная матрица N-на-N, с [α1,...,αN] в качестве диагональных элементов.

  • N-на-N симметричная положительная полуопределённая матрица.

Алгоритм фильтра Калмана рассматривает параметры как состояния динамической системы и оценивает эти параметры с помощью фильтра Калмана. Ковариация технологического шума - ковариация технологического шума, действующая на эти параметры. Нулевые значения в матрице ковариации шума соответствуют постоянным коэффициентам или параметрам. Значения больше 0 соответствуют изменяющимся во времени параметрам. Используйте большие значения для быстрого изменения параметров. Однако ожидайте, что большие значения приведут к более шумным оценкам параметров. Значение по умолчанию - 1.

Зависимости

Чтобы включить этот параметр, установите для параметра History значение Infinite и метод оценки Kalman Filter.

Программное использование

Параметр блока: AdaptationParameter
Тип: скаляр, вектор, матрица
По умолчанию: 1

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

Когда метод оценки NormalizedGradient, Коэффициент адаптации должен быть меньше 2. При любом градиентном методе, если ошибки растут во времени (другими словами, оценка расходится), или оценки параметров часто прыгают, рассмотрите возможность снижения коэффициента усиления адаптации.

Зависимости

Чтобы включить этот параметр, установите для параметра History значение Infinite и метод оценки Normalized Gradient или в Gradient.

Программное использование

Параметр блока: AdaptationParameter
Тип: скаляр
По умолчанию: 1

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

Зависимости

Чтобы включить этот параметр, установите для параметра History значение Infinite и метод оценки Normalized Gradient.

Программное использование

Параметр блока: NormalizationBias
Тип: скаляр
По умолчанию: eps
Параметры блока

Используйте сигнал Error outport для проверки оценки. Для данного временного шага t ошибка оценки e (t) вычисляется как:

e (t) = y (t) yest (t),

где y (t) - измеренный выходной сигнал, который вы предоставляете, и yest (t) - расчетный выходной сигнал с использованием регрессоров H (t) и оценок параметров (t-1).

Программное использование

Параметр блока: OutputError
Тип: символьный вектор, строка
Значения: 'off','on',
По умолчанию: 'off'

Используйте выходной сигнал ковариации для проверки неопределенности оценки параметров. Программное обеспечение вычисляет ковариацию параметров P предполагая, что остатки, e (t), являются белым шумом, и дисперсия этих остатков равна 1 .

Толкование P зависит от подхода к оценке, указанного в разделе История и метод оценки, следующим образом:

  • Если история Infinite, то выбор метода оценки приводит к:

    • Forgetting Factor(R2/2)P приблизительно равна ковариационной матрице оцененных параметров, где R2 - истинная дисперсия остатков. Блок возвращает эти остатки через порт Error.

    • Kalman FilterR2P - ковариационная матрица оцененных параметров, а R1/ R2 - ковариационная матрица изменений параметров. Здесь R1 - это ковариационная матрица, указанная в параметре ковариационная матрица.

    • Normalized Gradient или Gradient - Ковариация P недоступен.

  • Если история Finite (оценка скользящего окна) - R2P - ковариация оцениваемых параметров. Алгоритм скользящего окна не использует эту ковариацию в процессе оценки параметров. Однако алгоритм вычисляет ковариацию для вывода, чтобы можно было использовать ее для статистической оценки.

Программное использование

Параметр блока: OutputP
Тип: символьный вектор, строка
Значения: 'off','on'
По умолчанию: 'off'

Используйте сигнал Enable для предоставления управляющего сигнала, который включает или отключает оценку параметров. Блок оценивает значения параметров для каждого временного шага, когда оценка параметров включена. При отключении оценки параметров на данном шаге t программное обеспечение не обновляет параметры для этого временного шага. Вместо этого выходные данные блока содержат последние оцененные значения параметров.

Эту опцию можно использовать, например, когда или если:

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

  • Система переходит в режим, в котором значения параметров не изменяются во времени.

Программное использование

Параметр блока: AddEnablePort
Тип: символьный вектор, строка
Значения: 'off','on'
По умолчанию: 'off'

Установите параметр External reset, чтобы добавить входной порт Reset и указать условие входного сигнала, которое запускает сброс состояний алгоритма до заданных начальных значений. Сбросьте оценку, например, если ковариация параметра становится слишком большой из-за отсутствия либо достаточного возбуждения, либо информации в измеряемых сигналах. Параметр External reset определяет время сброса.

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

Если блок отключен в t и выполняется сброс блока, выходные данные блока содержат значения, указанные в поле Начальная оценка (Initial Estimate).

Укажите эту опцию как одну из следующих:

  • None - Состояния алгоритма и расчетные параметры не сбрасываются.

  • Rising - Сброс триггера при повышении управляющего сигнала с отрицательного или нулевого значения до положительного. Если начальное значение является отрицательным, переход к нулю приводит к сбросу.

  • Falling - Сброс триггера при падении управляющего сигнала с положительного или нулевого значения на отрицательное. Если начальное значение положительное, падение до нуля запускает сброс.

  • Either - Сброс триггера при повышении или падении управляющего сигнала.

  • Level - Сброс триггера в любом из следующих случаев:

    • Управляющий сигнал ненулевой на текущем временном шаге.

    • Управляющий сигнал изменяется с ненулевого значения на предыдущем временном шаге на нулевое значение на текущем временном шаге.

  • Level hold - Сброс триггера при ненулевом управляющем сигнале на текущем шаге времени.

При выборе любого варианта, отличного от None, программа добавляет входной порт сброса в блок. Входной сигнал управления сбросом подается на этот вход.

Программное использование

Параметр блока: ExternalReset
Тип: символьный вектор, строка
Значения: 'None','Rising','Falling', 'Either', 'Level', 'Level hold'
По умолчанию: 'None'

Ссылки

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

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

Расширенные возможности

Создание кода C/C + +
Создайте код C и C++ с помощью Simulink ® Coder™

.

Создание кода ПЛК
Создание структурированного текстового кода с помощью Coder™ Simulink ® PLC

.
Представлен в R2014a