exponenta event banner

Оценка полиномиальных моделей в командной строке

 Предпосылки

Использование arx и iv4 для оценки моделей ARX

Модели ARX с одним и несколькими выходами можно оценить с помощью arx и iv4 команды. Сведения о алгоритмах см. в разделе Алгоритмы оценки полиномиальной модели.

Для настройки и оценки моделей ARX можно использовать следующий общий синтаксис:

% Using ARX method
m = arx(data,[na nb nk],opt);
% Using IV method
m = iv4(data,[na nb nk],opt);

data - оценочные данные и [na nb nk] определяет порядки моделей, как описано в разделе Что такое полиномиальные модели?.

Третий входной аргумент opt содержит опции для конфигурирования оценки модели ARX, такие как обработка начальных условий и входных смещений. Можно создать и настроить набор опций opt с использованием arxOptions и iv4Options команды. За тремя входными аргументами могут также следовать пары имен и значений для указания необязательных атрибутов структуры модели, таких как InputDelay, IODelay, и IntegrateNoise.

Чтобы получить дискретные модели времени, используйте данные временной области (iddata объект).

Примечание

Многочлены непрерывного времени структуры ARX не поддерживаются.

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

Вы можете использовать pem или polyest для уточнения оценок параметров существующей модели полинома, как описано в разделе Уточнение линейных параметрических моделей.

Для получения подробной информации об этих командах см. соответствующую справочную страницу.

Совет

Расчетную модель ARX можно использовать для инициализации нелинейной оценки в командной строке, что улучшает подгонку модели. См. раздел Инициализация нелинейной оценки ARX с использованием линейной модели.

Используя polyest Оценка полиномиальных моделей

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

Используйте следующий общий синтаксис для настройки и оценки моделей полиномов:

m = polyest(data,[na nb nc nd nf nk],opt,Name,Value);

где data - оценочные данные. na, nb, nc, nd, nf целые числа, определяющие порядки моделей, и nk определяет задержки ввода для каждого ввода. Дополнительные сведения о заказах моделей см. в разделе Что такое полиномиальные модели?.

Совет

Нет необходимости создавать объект модели с помощью idpoly перед оценкой.

Если нужно оценить коэффициенты всех пяти многочленов, A, B, C, D и F, необходимо задать целочисленный порядок для каждого многочлена. Однако если требуется указать модель ARMAX, например, которая включает только многочлены A, B и C, необходимо задать nd и nf в нулевые матрицы соответствующего размера. Для некоторых более простых конфигураций существуют специальные команды оценки, такие как arx, armax, bj, и oe, которые поставляют требуемую модель с использованием только требуемых заказов. Например, oe(data,[nb nf nk],opt) оценивает модель полинома структуры выходных ошибок.

Примечание

Для более быстрой оценки моделей ARX используйте arx или iv4 вместо polyest.

В дополнение к полиномиальным моделям, перечисленным в разделе Что такое полиномиальные модели?, можно использовать polyest для моделирования структуры ARARX, называемой обобщенной моделью наименьших квадратов, путем установкиnc=nf=0. Можно также смоделировать структуру ARARMAX - называемую расширенной матричной моделью - путем установкиnf=0.

Третий входной аргумент, opt, содержит опции для конфигурирования оценки полиномиальной модели, такие как обработка начальных условий, входных смещений и алгоритма поиска. Можно создать и настроить набор опций opt с использованием polyestOptions команда. За тремя входными аргументами могут также следовать пары имен и значений для указания необязательных атрибутов структуры модели, таких как InputDelay, IODelay, и IntegrateNoise.

Для моделей ARMAX, Box-Jenkins и Output-Error, которые можно оценить только с помощью итеративного метода предсказания-ошибки, используйте armax, bj, и oe команды оценки соответственно. Эти команды являются версиями polyest с упрощенным синтаксисом для этих конкретных структур модели, следующим образом:

m = armax(Data,[na nb nc nk]);
m = oe(Data,[nb nf nk]);
m = bj(Data,[nb nc nd nf nk]);

Аналогично polyest, можно указать в качестве входных аргументов набор опций, сконфигурированный с помощью команд armaxOptions, oeOptions, и bjOptions для оценщиков armax, oe, и bj соответственно. Можно также использовать пары имен и значений для настройки дополнительных атрибутов структуры модели.

Совет

Если выборка данных выполняется быстро, это может помочь применить фильтр нижних частот к данным перед оценкой модели или указать диапазон частот для WeightingFilter свойство во время оценки. Например, для моделирования только данных в диапазоне частот 0-10 рад/с используйте WeightingFilter следующим образом:

opt = oeOptions('WeightingFilter',[0 10]);
m = oe(Data, [nb nf nk], opt);

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

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

Дополнительные сведения см. в разделе polyest, pem и idpoly.

Связанные примеры

Подробнее