Предварительный шаг – оценка порядков модели и входных задержек

Почему оценочные порядки модели и задержки?

Чтобы оценить полиномиальные модели, необходимо обеспечить входные задержки и порядки модели. Если у вас уже есть понимание физики вашей системы, можно задать количество полюсов и нулей.

В большинстве случаев вы не знаете порядков модели заранее. Чтобы получить начальные порядки модели и задержки вашей системы, можно оценить несколько моделей ARX с областью значений порядков и задержек и сравнить эффективность этих моделей. Вы выбираете порядки модели, которые соответствуют лучшей производительности модели и используют эти порядки в качестве исходного предположения для дальнейшего моделирования.

Поскольку эта процедура оценки использует структуру модели ARX, которая включает A и полиномы B, вы только получаете оценки для na, nb, и nk параметры. Однако можно использовать эти результаты в качестве исходных предположений для соответствующих полиномиальных порядков и ввести задержки других структур модели, таких как ARMAX, OE и BJ.

Если предполагаемый nk слишком мал, продвижение nb коэффициенты намного меньше, чем их стандартные отклонения. С другой стороны, если предполагаемый nk является слишком большим, существует значительная корреляция между остаточными значениями и входом для задержек, которые соответствуют пропавшим без вести B условия. Для получения информации об остаточных графиках для анализа смотрите темы на странице Residual Analysis.

Оценка порядков и задержек приложения

Следующая процедура принимает, что вы уже импортировали свои данные в приложение и выполнили любые необходимые операции предварительной обработки. Для получения дополнительной информации смотрите, Представляют Данные.

Оценить модель заказывают и ввести задержки приложения System Identification:

  1. В приложении System Identification выберите Estimate> Polynomial Models, чтобы открыть диалоговое окно Polynomials Models.

    Модель ARX уже выбрана по умолчанию в списке Structure.

    Примечание

    Для моделей timeseries выберите структуру модели AR.

  2. Отредактируйте поле Orders, чтобы указать диапазон полюсов, нулей и задержек. Например, введите следующие значения для na, nb, и nk:

    [1:10 1:10 1:10]

    Совет

    Как ярлык для ввода 1:10 для каждого необходимого порядка модели нажмите Order Selection.

  3. Нажмите Estimate, чтобы открыть окно ARX Model Structure Selection, которое отображает производительность модели для каждой комбинации параметров модели. Следующий рисунок показывает график в качестве примера.

  4. Выберите прямоугольник, который представляет оптимальную комбинацию параметра, и нажмите Insert к оценкам модель этими параметрами. Для получения информации об использовании этого графика смотрите Model Orders Выбора от Лучшей Структуры ARX.

    Это действие добавляет новую модель в Совет Модели в приложении System Identification. Имя по умолчанию параметрической модели содержит тип модели и количество полюсов, нулей и задержек. Например, arx692 модель ARX с na=6, nb=9, и задержка двух выборок.

  5. Нажмите Close, чтобы закрыть окно ARX Model Structure Selection.

    Примечание

    Вы не можете оценить порядки модели при использовании мультивыходных данных.

После оценки порядков модели и задержек, используйте эти значения в качестве исходных предположений для оценки других структур модели, как описано в Оценочных Моделях Полинома в Приложении.

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

Можно оценить порядки модели с помощью struc, arxstruc, и selstruc команды в комбинации.

Если вы работаете с несколькими - выходная система, необходимо использовать struc, arxstruc, и selstruc команды один выход за один раз. Необходимо подсослаться на правильный выходной канал в наборах данных оценки и валидации.

Для каждой оценки вы используете два независимых набора данных — набор данных оценки и набор данных валидации. Они независимый набор данных могут быть из различных экспериментов или подмножеств данных из одного эксперимента. Для получения дополнительной информации о подссылке на данные, смотрите, Выбирают Data Channels, I/O Data и Experiments в Объектах iddata и Выбирают I/O Channels и Data в Объектах idfrd.

Для примера оценки порядков модели для нескольких - входная система, смотрите Оценку Задержек Нескольких - Входная Система в System Identification Toolbox Начало работы.

struc

struc команда создает матрицу возможных комбинаций порядка модели для заданной области na, nb, и nk значения.

Например, следующая команда задает область значений порядков модели и задерживает na=2:5, nb=1:5, и nk=1:5:

NN = struc(2:5,1:5,1:5))

arxstruc

arxstruc команда берет выход из struc, оценивает модель ARX для каждого порядка модели и сравнивает выход модели с измеренным выходом. arxstruc возвращает потерю для каждой модели, которая является нормированной суммой ошибок предсказания в квадрате.

Например, следующая команда использует область значений заданных порядков NN вычислить функцию потерь для single-input/single-output данных об оценке data_e и данные о валидации data_v:

V = arxstruc(data_e,data_v,NN);

Каждая строка в NN соответствует одному набору порядков:

[na nb nk]

selstruc

selstruc команда берет выход из arxstruc и открывает окно ARX Model Structure Selection, чтобы вести ваш выбор порядка модели с лучшей эффективностью.

Например, чтобы открыть окно ARX Model Structure Selection и в интерактивном режиме выбрать оптимальную комбинацию параметра, используйте следующую команду:

selstruc(V);

Для получения дополнительной информации о работе с окном ARX Model Structure Selection, смотрите Model Orders Выбора от Лучшей Структуры ARX.

Чтобы найти структуру, которая минимизирует информационный Критерий Акэйка, используйте следующую команду:

nn = selstruc(V,'AIC');

где nn содержит соответствующий na, nb, и nk порядки.

Точно так же, чтобы найти структуру, которая минимизирует Минимальную длину описания (MDL) Риссэнена, используйте следующую команду:

nn = selstruc(V,'MDL');

Чтобы выбрать структуру с самой маленькой функцией потерь, используйте следующую команду:

nn = selstruc(V,0);

После оценки порядков модели и задержек, используйте эти значения в качестве исходных предположений для оценки других структур модели, как описано в Использовании полиоценки, чтобы Оценить Полиномиальные Модели.

Оценка задержек в командной строке

delayest команда оценивает задержку динамической системы путем оценки младшего разряда, модели ARX дискретного времени и обработки задержки как неизвестного параметра.

По умолчанию, delayest принимает это na=nb=2 и это там - хорошее отношение сигнал-шум и использует эту информацию, чтобы оценить nk.

Оценить задержку набора данных data, введите следующее в подсказке:

delayest(data);

Если ваши данные имеют один вход, MATLAB® вычисляет скалярное значение для входной задержки — равный количеству выборок данных. Если ваши данные имеют несколько входных параметров, MATLAB возвращает вектор, где каждое значение является задержкой соответствующего входного сигнала.

Чтобы вычислить фактическое время задержки, необходимо умножить входную задержку на шаг расчета данных.

Можно также использовать окно ARX Model Structure Selection, чтобы оценить входные задержки и порядок модели вместе, как описано в Оценке Порядков Модели в Командной строке.

Выбор порядков модели от лучшей структуры ARX

Вы генерируете окно ARX Model Structure Selection для своих данных, чтобы выбрать хорошо-подходящую модель.

Для процедуры при генерации этого графика в приложении System Identification смотрите Оценку Порядков и Задержек Приложения. Чтобы открыть этот график в командной строке, смотрите Оценку Порядков Модели в Командной строке.

Следующий рисунок показывает демонстрационный график в окне ARX Model Structure Selection.

Вы используете этот график выбрать хорошо-подходящую модель.

  • Горизонтальная ось является общим количеством параметров — na + nb.

  • Вертикальная ось, названная Unexplained output variance (in %), является фрагментом выхода, не объясненного моделью — ошибка предсказания модели ARX для количества параметров, показанных на горизонтальной оси.

    Ошибка предсказания является суммой квадратов различий между выводом данных валидации и моделью "один шаг вперед" предсказанный выход.

  • nk является задержкой.

Три прямоугольника подсвечены на графике в зеленом, синем цвете, и красные. Каждый цвет указывает на тип хорошо-подходящего критерия, можно следующим образом:

  • Красный — Лучшая подгонка минимизирует сумму квадратов различия между выводом данных валидации и выходом модели. Этот прямоугольник указывает на полную лучшую подгонку.

  • Зеленый — Лучшая подгонка минимизирует критерий Rissanen MDL.

  • Синий — Лучшая подгонка минимизирует критерий AIC Akaike.

В окне ARX Model Structure Selection кликните по любой панели, чтобы просмотреть порядки, которые дают лучшую подгонку. Область справа динамически обновляется, чтобы показать порядки и задержки, которые дают лучшую подгонку.

Для получения дополнительной информации о критерии AIC, смотрите Функцию потерь и Метрики качества Модели.

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

Больше о