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

 Необходимые условия

Использование 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 для уточнения оценок параметров существующей полиномиальной модели, как описано в Refine Linear Parametric Models.

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

Совет

Можно использовать предполагаемую модель 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 соответственно. Можно также использовать пары имен и значений, чтобы сконфигурировать дополнительные атрибуты структуры модели.

Совет

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

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

Для получения дополнительной информации о проверке модели см. «Валидация моделей после оценки».

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

Для получения дополнительной информации см. polyest, pem и idpoly.

Похожие примеры

Подробнее о