Создание объекта System для оперативной оценки параметров с использованием рекурсивного алгоритма наименьших квадратов
obj = recursiveLS
obj = recursiveLS(Np)
obj = recursiveLS(Np,theta0)
obj = recursiveLS(___,Name,Value)
Используйте recursiveLS команда для оценки параметров с данными реального времени. Если все данные, необходимые для оценки, доступны одновременно и вы оцениваете инвариантную по времени модель, используйте mldivide, \.
создает object™ Система (System) для оперативной оценки параметров одной системы вывода по умолчанию, которая линейна в оценочных параметрах. Такая система может быть представлена следующим образом:obj = recursiveLS
y (t) = H (t) start( t) + e (t).
В данном случае y - выходной сигнал, λ - параметры, H - регрессоры, e - возмущение белого шума. Система по умолчанию имеет один параметр со значением начального параметра 1.
После создания объекта используйте step для обновления оценок параметров модели с использованием рекурсивных алгоритмов наименьших квадратов и данных в реальном времени. Кроме того, объект можно вызвать напрямую. Дополнительные сведения см. в разделе Советы.
также указывает количество параметров для оценки.obj = recursiveLS(Np)
также определяет количество параметров и начальные значения параметров.obj = recursiveLS(Np,theta0)
задает дополнительные атрибуты системы и алгоритм рекурсивной оценки с использованием одного или нескольких obj = recursiveLS(___,Name,Value)Name,Value аргументы пары.
recursiveLS создает объект System для оперативной оценки параметров одной системы вывода, линейной по своим параметрам.
Системный объект - это специализированный объект MATLAB ®, разработанный специально для реализации и моделирования динамических систем с вводами, изменяющимися с течением времени. Системные объекты используют внутренние состояния для сохранения поведения в прошлом, которое используется на следующем шаге вычисления .
После создания объекта System используются команды для обработки данных или получения информации об объекте. Системные объекты используют минимум две команды для обработки данных - конструктор для создания объекта и step для обновления параметров объекта с использованием данных в реальном времени. Это разделение объявления от выполнения позволяет создавать несколько постоянных объектов многократного использования, каждый из которых имеет различные настройки.
С интерактивными объектами системы оценки в Toolbox™ Идентификация системы можно использовать следующие команды:
| Команда | Описание |
|---|---|
step | Обновление оценок параметров модели с использованием алгоритмов рекурсивной оценки и данных в реальном времени.
|
release | Разблокируйте объект System. Эта команда используется для включения настройки неперестраиваемых параметров. |
reset | Сбросьте внутренние состояния заблокированного объекта System до начальных значений и оставьте объект заблокированным. |
clone | Создайте другой объект System с теми же значениями свойств объекта. Не создавать дополнительные объекты с помощью синтаксиса |
isLocked | Запрос заблокированного состояния для входных атрибутов и неперестраиваемых свойств объекта System. |
Используйте recursiveLS для создания оперативного объекта системы оценки. Затем оцените параметры системы (theta) и вывода с помощью step команда с регрессорами и входящими выходными данными, H и y.
[theta,EstimatedOutput] = step(obj,y,H)
Для recursiveLS свойства объекта см. в разделе Свойства.
recursiveLS Свойства системного объекта состоят из свойств, доступных только для чтения и записи. Свойства, доступные для записи, настраиваются и не настраиваются. Неперестраиваемые свойства не могут быть изменены, когда объект заблокирован, то есть после использования step команда.
Использовать Name,Value аргументы для указания доступных для записи свойств recursiveLS объектов во время создания объекта. После создания объекта используйте точечную нотацию для изменения настраиваемых свойств.
obj = recursiveLS; obj.ForgettingFactor = 0.99;
|
Количество оцениваемых параметров, возвращаемых как положительное целое число.
По умолчанию: |
|
Оцененные параметры, возвращаемые в виде вектора столбца вещественных значений.
|
|
Исходные значения параметров, указанные как одно из следующих:
Если начальные значения параметров намного меньше
По умолчанию: |
|
Начальные значения выходного буфера в конечной хронологической оценке, указанные как Когда Если начальный буфер имеет значение Определить
По умолчанию: |
|
Исходные значения буфера регрессоров при оценке с конечной историей, указанные как Когда Если начальный буфер имеет значение Определить
По умолчанию: |
|
Оценочная ковариация
Толкование
|
|
Ковариация начальных оценок параметров, указанных как одна из следующих:
Использовать только тогда, когда
По умолчанию: |
|
Алгоритм оценки рекурсивных наименьших квадратов, используемый для оперативной оценки параметров модели, определяемый как одно из следующих значений:
Алгоритмы коэффициента забывания и фильтра Калмана являются более ресурсоемкими в вычислительном отношении, чем градиентные и ненормализованные градиентные методы. Однако они обладают лучшими свойствами сходимости. Сведения об этих алгоритмах см. в разделе Рекурсивные алгоритмы для оценки параметров в режиме онлайн. Все эти методы используют бесконечную историю данных и доступны только тогда, когда
По умолчанию: |
|
Коэффициент забывания λ, релевантный для оценки параметра, заданный как скаляр в диапазоне (0,1]. Предположим, что система остается приблизительно постоянной на протяжении T0 выборок. Можно выбрать λ так, что: − λ
Типичные варианты λ находятся в диапазоне Использовать только тогда, когда
По умолчанию: |
|
Включить или отключить оценку параметров, указанную как одно из следующих значений:
По умолчанию: |
|
Точность параметров с плавающей запятой, заданная как одно из следующих значений:
Настройка
По умолчанию: |
|
Ковариационная матрица вариаций параметров, заданная как одна из следующих:
N - количество оцениваемых параметров.
Алгоритм фильтра Калмана рассматривает параметры как состояния динамической системы и оценивает эти параметры с помощью фильтра Калмана.
По умолчанию: |
|
Коэффициент адаптации γ, используемый в алгоритмах градиентной рекурсивной оценки, определяемый как положительный скаляр.
Укажите большое значение для
По умолчанию: |
|
Смещение в масштабировании адаптационного усиления, используемое в
Нормализованный градиентный алгоритм делит адаптационный коэффициент усиления на каждом шаге на квадрат двух-нормы градиентного вектора. Если градиент близок к нулю, это может привести к скачкам расчетных параметров.
По умолчанию: |
|
Тип истории данных, определяющий тип используемого рекурсивного алгоритма, указанный как:
Алгоритмы с бесконечной историей направлены на получение оценок параметров, которые объясняют все данные с начала моделирования. Эти алгоритмы по-прежнему используют фиксированный объем памяти, который не растет со временем. Объект предоставляет несколько алгоритмов Алгоритмы с конечной историей стремятся получить оценки параметров, которые объясняют только конечное число прошлых выборок данных. Этот метод также называется оценкой скользящего окна. Объект обеспечивает один алгоритм Дополнительные сведения о методах рекурсивной оценки см. в разделе Рекурсивные алгоритмы для интерактивной оценки параметров.
По умолчанию: |
|
Размер окна, определяющий количество отсчетов времени, используемых для метода оценки скользящего окна, заданного как положительное целое число. Определить Выберите размер окна, который балансирует производительность оценки с вычислительной нагрузкой и нагрузкой на память. Размерные коэффициенты включают в себя количество и временную дисперсию параметров в модели. Всегда указывайте длину окна в выборках, даже если используется обработка ввода на основе кадра.
Подходящая длина окна не зависит от того, используется ли обработка ввода на основе образцов или кадров (см.
По умолчанию: |
|
Параметр для обработки входных данных на основе выборки или кадра, заданный как символьный вектор или строка.
Ваш [theta,EstimatedOutput] = step(obj,y,H)
По умолчанию: |
Начиная с R2016b, вместо использования step для обновления оценок параметров модели можно вызвать объект System с входными аргументами, как если бы это была функция. Например, [theta,EstimatedOutput] = step(obj,y,H) и [theta,EstimatedOutput] = obj(y,H) выполнять эквивалентные операции.
clone | isLocked | mldivide | Рекурсивный оценщик наименьших квадратов | recursiveAR | recursiveARMA | recursiveARMAX | recursiveARX | recursiveBJ | recursiveOE | release | reset | step