Создайте Системный объект для онлайн-оценки параметров модели ARX
obj = recursiveARX
obj = recursiveARX(Orders)
obj = recursiveARX(Orders,A0,B0)
obj = recursiveARX(___,Name,Value)
Использовать recursiveARX
команда для оценки параметра с данными в реальном времени. Если все данные, необходимые для оценки, доступны сразу, и вы оцениваете инвариантную по времени модель, используйте команду offline estimation, arx
.
создает Системный object™ для онлайн-оценки параметров структуры модели ARX по умолчанию. Структура модели по умолчанию имеет полиномы порядка 1 и начальные значения полиномиальных коэффициентов obj
= recursiveARXeps
.
После создания объекта используйте step
команда для обновления оценок параметров модели с помощью рекурсивных алгоритмов оценки и данных в реальном времени.
задает полиномиальные порядки оцениваемой модели ARX.obj
= recursiveARX(Orders
)
задает полиномиальные порядки и начальные значения полиномиальных коэффициентов.obj
= recursiveARX(Orders
,A0,B0
)
задает дополнительные атрибуты структуры модели ARX и алгоритма рекурсивной оценки с помощью одного или нескольких obj
= recursiveARX(___,Name,Value
)Name,Value
аргументы в виде пар.
recursiveARX
создает Системный объект для онлайн-оценки параметров single-input single-output (SISO) или multiple- входа single-output (MISO) ARX моделей с использованием рекурсивного алгоритма оценки.
Системный объект является специализированным MATLAB® объект, специально разработанный для реализации и симуляции динамических систем с входами, которые изменяются с течением времени. Системные объекты используют внутренние состояния для хранения прошлого поведения, которое используется на следующем вычислительном шаге.
После создания системного объекта вы используете команды для обработки данных или получения информации от объекта или о нем. Системные объекты используют минимум две команды для обработки данных - конструктор для создания объекта и step
команда для обновления параметров объекта с помощью данных в реальном времени. Это отделение объявления от выполнения позволяет вам создать несколько, постоянных, переиспользуемых объектов, каждый с различными настройками.
Можно использовать следующие команды с онлайновыми Системными объектами оценки в System Identification Toolbox™:
Команда | Описание |
---|---|
step | Обновите оценки параметров модели с помощью рекурсивных алгоритмов оценки и данных в реальном времени.
|
release | Разблокируйте Системный объект. Используйте эту команду, чтобы включить настройку нетронутых параметров. |
reset | Обнулите внутренние состояния заблокированного системного объекта до начальных значений и оставьте объект заблокированным. |
clone | Создайте другой Системный объект с теми же значениями свойств объекта. Не создавать дополнительные объекты с помощью синтаксиса |
isLocked | Запросите заблокированное состояние для атрибутов входа и нетронутых свойств Системного объекта. |
Используйте recursiveARX
команда для создания оперативного системного объекта оценки. Затем оцените параметры модели ARX (A
и B
) и выход с помощью step
команда с входными и выходными данными, u
и y
.
[A,B,EstimatedOutput] = step(obj,y,u)
Для recursiveARX
свойства объекта, см. Свойства.
recursiveARX
Свойства системного объекта состоят из свойств, доступных только для чтения и записи. Свойства, доступные для записи, являются свойствами, настраиваемыми и нетронутыми. Нетронутые свойства не могут быть изменены, когда объект заблокирован, то есть после того, как вы используете step
команда.
Использование Name,Value
аргументы для задания свойств, доступных для записи recursiveARX
объекты во время создания объекта. После создания объекта используйте запись через точку для изменения настраиваемых свойств.
obj = recursiveARX; obj.ForgettingFactor = 0.99;
|
Оценочные коэффициенты полинома A (q), возвращенные как вектор-строка действительных значений, заданных в порядке возрастания степеней q-1.
|
|
Оценочные коэффициенты полинома B (q), возвращенные как Nu - i строка
|
|
Начальные значения коэффициентов полинома A (q) Если начальные догадки намного меньше, чем по умолчанию
По умолчанию: |
|
Начальные значения для коэффициентов полинома B (q), заданные как Nu - Для моделей MISO существует столько же B (q) полиномов, сколько и количество входов. i строка Если начальные догадки намного меньше, чем по умолчанию
По умолчанию: |
|
Начальные значения измеренных выходов буфера в конечной исторической оценке, заданные как The Когда Если начальный буфер установлен в Задайте
По умолчанию: |
|
Начальные значения входов в конечном историческом окне, заданные как The Когда Если начальный буфер установлен в Задайте
По умолчанию: |
|
Предполагаемая ковариационная
Толкование
|
|
Ковариация начальных оценок параметров, заданная как одно из следующего:
Используйте только тогда, когда
По умолчанию: |
|
Алгоритм рекурсивной оценки, используемый для онлайн-оценки параметров модели, задается как одно из следующих значений:
Алгоритмы забывающего фактора и фильтра Калмана более интенсивны в вычислительном отношении, чем градиентные и ненормализованные градиентные методы. Однако они имеют лучшие свойства сходимости. Для получения информации об этих алгоритмах см. «Рекурсивные алгоритмы для оценки Параметра в режиме онлайн». Все эти методы используют бесконечную историю данных и доступны только при
По умолчанию: |
|
Коэффициент забывания, λ, релевантный для оценки параметра, заданный как скаляр в области значений (0,1]. Предположим, что система остается приблизительно постоянной на T0 выборках. Можно выбрать λ такие, что:
Типичные варианты λ находятся в области значений Используйте только тогда, когда
По умолчанию: |
|
Включите или отключите оценку параметра, заданную как одно из следующего:
По умолчанию: |
|
Точность параметров с плавающей точкой, заданная как одно из следующих значений:
Настройка
По умолчанию: |
|
Ковариационная матрица изменений параметров, заданная как одно из следующего:
N - количество параметров, которые будут оценены.
Алгоритм фильтра Калмана обрабатывает параметры как состояния динамической системы и оценивает эти параметры с помощью фильтра Калмана.
По умолчанию: |
|
Коэффициент усиления адаптации, γ, используемый в алгоритмах рекурсивной оценки градиента, задается как положительная скалярная величина.
Задайте большое значение для
По умолчанию: |
|
Смещение при масштабировании коэффициента усиления адаптации, используемое в
Нормированный алгоритм градиента делит коэффициент усиления адаптации на каждом шаге на квадрат двух норм вектора градиента. Если градиент близок к нулю, это может вызвать переходы в оценочных параметрах.
По умолчанию: |
|
Тип истории данных, определяющий, какой тип рекурсивного алгоритма вы используете, задается как:
Алгоритмы с бесконечной историей стремятся создать оценки параметров, которые объясняют все данные с начала симуляции. Эти алгоритмы все еще используют фиксированный объем памяти, который не растет с течением времени. Объект предоставляет несколько алгоритмов Алгоритмы с конечной историей направлены на создание оценок параметров, которые объясняют только конечное число прошлых выборок данных. Этот метод также называется sliding-window оценкой. Объект предоставляет один алгоритм Для получения дополнительной информации о рекурсивных методах оценки см. «Рекурсивные алгоритмы для онлайн-оценки параметра».
По умолчанию: |
|
Размер окна, определяющий количество временных выборок, используемых для метода оценки скользящего окна, заданный как положительное целое число. Задайте Выберите размер окна, которое балансирует эффективность оценки с вычислительной нагрузкой и нагрузкой на память. Размерные коэффициенты включают количество и временное отклонение параметров в вашей модели. Всегда задайте Window Length в выборках, даже если вы используете входную обработку на основе фрейма.
Подходящая длина окна не зависит от того, используете ли вы обработку входа на основе сэмплирования или фрейма (см
По умолчанию: |
|
Опция для обработки входа на основе сэмплирования или фрейма, заданная как вектор символов или строка.
Ваши [theta,EstimatedOutput] = step(obj,y,u)
По умолчанию: |
Начиная с R2016b, вместо использования step
команду для обновления оценок параметров модели можно вызвать системный объект с входными параметрами, как если бы это была функция. Для примера, [A,B,EstimatedOutput] = step(obj,y,u)
и [A,B,EstimatedOutput] = obj(y,u)
выполнять эквивалентные операции.
arx
| clone
| isLocked
| Recursive Polynomial Model Estimator | recursiveAR
| recursiveARMA
| recursiveARMAX
| recursiveBJ
| recursiveLS
| recursiveOE
| release
| reset
| step