Создайте Системный объект для онлайновой оценки параметра модели полинома Ошибки на выходе
obj = recursiveOE
obj = recursiveOE(Orders)
obj = recursiveOE(Orders,B0,F0)
obj = recursiveOE(___,Name,Value)
Использование recursiveOE
команда для оценки параметра с данными реального времени. Если все данные, необходимые для оценки, доступны целиком, и вы оцениваете независимую от времени модель, используете оффлайновую команду оценки, oe
.
создает Систему object™ для онлайновой оценки параметра структуры модели Ошибки на выходе одного входа одного выхода (SISO) по умолчанию. Структура модели по умолчанию имеет полиномы порядка 1 и начальных полиномиальных содействующих значений obj
= recursiveOEeps
.
После создания объекта используйте step
команда, чтобы обновить оценки параметра модели с помощью рекурсивных алгоритмов оценки и данных реального времени.
задает полиномиальные порядки модели Output-Error, которая будет оценена.obj
= recursiveOE(Orders
)
задает полиномиальные порядки и начальные значения полиномиальных коэффициентов. Задайте начальные значения, чтобы потенциально избежать локальных минимумов во время оценки. Если начальные значения малы по сравнению с obj
= recursiveOE(Orders
,B0,F0
)InitialParameterCovariance
по умолчанию значение свойства, и вы уверены в своих начальных значениях, также задаете меньший
InitialParameterCovariance
.
задает дополнительные атрибуты структуры модели Ошибки на выходе и рекурсивного алгоритма оценки с помощью одного или нескольких obj
= recursiveOE(___,Name,Value
)Name,Value
парные аргументы.
recursiveOE
создает Системный объект для онлайновой оценки параметра моделей полинома Ошибки на выходе SISO с помощью рекурсивного алгоритма оценки.
Системный объект является специализированным объектом MATLAB®, специально разработанным для реализации и симуляции динамических систем с входными параметрами то изменение в зависимости от времени. Системные объекты используют внутренние состояния, чтобы сохранить прошлое поведение, которое используется на следующем вычислительном шаге.
После того, как вы создадите Системный объект, вы используете команды, чтобы обработать данные или получить информацию из или об объекте. Системные объекты используют минимум двух команд, чтобы обработать данные — конструктор, чтобы создать объект и step
команда, чтобы обновить параметры объекта с помощью данных реального времени. Это разделение объявления от выполнения позволяет вам создать несколько, персистентные, допускающие повторное использование объекты, каждого с различными настройками.
Можно использовать следующие команды с онлайновыми Системными объектами оценки в System Identification Toolbox™:
Команда | Описание |
---|---|
step | Обновите оценки параметра модели с помощью рекурсивных алгоритмов оценки и данных реального времени.
|
release | Разблокируйте Системный объект. Используйте эту команду, чтобы позволить установить ненастраиваемых параметров. |
reset | Сбросьте внутренние состояния заблокированного Системного объекта к начальным значениям и оставьте объект заблокированным. |
clone | Создайте другой Системный объект с теми же значениями свойства объекта. Не создавайте дополнительные объекты с помощью синтаксиса |
isLocked | Запросите заблокированное состояние для входных атрибутов и ненастраиваемых свойств Системного объекта. |
Используйте recursiveOE
команда, чтобы создать онлайновый Системный объект оценки. Затем оцените параметры модели полинома Ошибки на выходе (B
и F
) и выход с помощью step
команда с входящими входными и выходными данными, u
и y
.
[B,F,EstimatedOutput] = step(obj,y,u)
Для recursiveOE
свойства объектов, смотрите Свойства.
recursiveOE
Свойства системного объекта состоят из и перезаписываемых свойств только для чтения. Перезаписываемые свойства являются настраиваемыми и ненастраиваемыми свойствами. Ненастраиваемые свойства не могут быть изменены, когда объект заблокирован, то есть, после того, как вы используете step
команда.
Используйте Name,Value
аргументы, чтобы задать перезаписываемые свойства recursiveOE
объекты во время создания объекта. После создания объекта используйте запись через точку, чтобы изменить настраиваемые свойства.
obj = recursiveOE; obj.ForgettingFactor = 0.99;
|
Предполагаемые коэффициенты полиномиального B (q), возвращенный как вектор из действительных значений, заданы в порядке возрастающих степеней q-1.
|
|
Предполагаемые коэффициенты полиномиального F (q), возвращенный как вектор из действительных значений, заданы в порядке возрастающих степеней q-1.
|
|
Начальные значения для коэффициентов полиномиального B (q) порядка Если исходные предположения намного меньше, чем
Значение по умолчанию: |
|
Начальные значения для коэффициентов полиномиального F (q) порядка Коэффициенты в InitialF = [1 0.9 0.8]; all(abs(roots(InitialF))<1) ans = 1 Если исходные предположения намного меньше, чем
Значение по умолчанию: |
|
Начальные значения измеренных выходных параметров буферизуют по оценке конечной истории в виде Когда Если начальный буфер установлен в Задайте
Значение по умолчанию: |
|
Начальные значения входных параметров в конечном окне истории в виде Когда Если начальный буфер установлен в Задайте
Значение по умолчанию: |
|
Предполагаемая ковариация
Интерпретация
|
|
Ковариация начального параметра оценивает в виде одного из следующего:
Используйте только когда
Значение по умолчанию: |
|
Рекурсивный алгоритм оценки использовал для онлайновой оценки параметров модели в виде одного из следующих значений:
Упущение фактора и алгоритмов Фильтра Калмана более в вычислительном отношении интенсивно, чем градиент и ненормированные градиентные методы. Однако у них есть лучшие свойства сходимости. Для получения информации об этих алгоритмах смотрите Рекурсивные алгоритмы для Онлайновой Оценки Параметра. Эти методы все использование бесконечная история данных, и доступны только когда
Значение по умолчанию: |
|
Забывая фактор, λ, важный для оценки параметра в виде скаляра в области значений (0,1]. Предположим, что система остается приблизительно постоянной по выборкам T0. Можно выбрать λ, таким образом что:
Типичный выбор λ находится в области значений Используйте только когда
Значение по умолчанию: |
|
Включите или отключите оценку параметра в виде одного из следующего:
Значение по умолчанию: |
|
Точность с плавающей точкой параметров в виде одного из следующих значений:
Установка
Значение по умолчанию: |
|
Ковариационная матрица изменений параметра в виде одного из следующего:
N является количеством параметров, которые будут оценены.
Алгоритм фильтра Калмана обрабатывает параметры как состояния динамической системы и оценивает эти параметры с помощью Фильтра Калмана.
Значение по умолчанию: |
|
Усиление адаптации, γ, использовало в градиенте рекурсивные алгоритмы оценки в виде положительной скалярной величины.
Задайте большое значение для
Значение по умолчанию: |
|
Сместите в масштабировании усиления адаптации, используемом в
Нормированный алгоритм градиента делит усиление адаптации на каждом шаге квадратом 2D нормы вектора градиента. Если градиент близко к нулю, это может вызвать скачки в предполагаемых параметрах.
Значение по умолчанию: |
|
Определение типа истории данных, в виде какого типа рекурсивного алгоритма вы используете:
Алгоритмы с бесконечной историей стремятся производить оценки параметра, которые объясняют все данные начиная с запуска симуляции. Эти алгоритмы все еще используют установленную сумму памяти, которая не растет в зависимости от времени. Объект предоставляет несколько алгоритмов Алгоритмы с конечной историей стремятся производить оценки параметра, которые объясняют только конечное число прошлых выборок данных. Этот метод также называется оценкой sliding-window. Объект предоставляет один алгоритм Для получения дополнительной информации о рекурсивных методах оценки смотрите Рекурсивные алгоритмы для Онлайновой Оценки Параметра.
Значение по умолчанию: |
|
Размер окна, определяющий количество выборок времени, чтобы использовать для метода оценки раздвижного окна в виде положительного целого числа. Задайте Выберите размер окна, который балансирует эффективность оценки с нагрузки памяти и вычислительного. Измеряющие факторы включают номер и отклонение времени параметров в вашей модели. Всегда задавайте Window Length в выборках, даже если вы используете основанную на системе координат входную обработку.
Подходящая длина окна независима от того, используете ли вы основанную на выборке или основанную на системе координат входную обработку (см.
Значение по умолчанию: |
|
Опция для основанной на выборке или основанной на системе координат входной обработки в виде вектора символов или строки.
Ваш [theta,EstimatedOutput] = step(obj,y,u)
Значение по умолчанию: |
Запуск в R2016b, вместо того, чтобы использовать step
команда, чтобы обновить оценки параметра модели, можно вызвать Системный объект с входными параметрами, как будто это была функция. Например, [B,F,EstimatedOutput] = step(obj,y,u)
и [B,F,EstimatedOutput] = obj(y,u)
выполните эквивалентные операции.
clone
| isLocked
| oe
| Recursive Polynomial Model Estimator | recursiveAR
| recursiveARMA
| recursiveARMAX
| recursiveARX
| recursiveBJ
| recursiveLS
| release
| reset
| step