arxstruc

Вычислите функции потерь для моделей ARX одно выхода

Синтаксис

V = arxstruc(ze,zv,NN)

Аргументы

ze

Набором данных оценки может быть iddata или idfrd объект.

zv

Набором данных валидации может быть iddata или idfrd объект.

NN

Матрица задает количество различных структур модели ARX. Каждая строка NN имеет форму:

nn = [na nb nk]

Описание

Примечание

Используйте arxstruc для систем одно выхода только. arxstruc поддержки и одно вход и несколько - входные системы.

V = arxstruc(ze,zv,NN) возвращает V, который содержит функции потерь в его первой строке. Остающиеся строки V содержите транспонирование NN, так, чтобы порядки и задержки были даны чуть ниже соответствующих функций потерь. Последний столбец V содержит количество точек данных в ze.

Выходной аргумент V лучше всего анализируется с помощью selstruc. Выбор подходящей структуры модели на основе информации в v обычно делается с помощью selstruc.

Примеры

свернуть все

Создайте модель ARX для генерации данных.

A = [1 -1.5 0.7];
B = [0 1 0.5];
m0 = idpoly(A,B);

Сгенерируйте случайный вход и аддитивные шумовые сигналы.

u = iddata([],idinput(400,'rbs'));
e = iddata([],0.1*randn(400,1));

Симулируйте выход модели с помощью заданных входных сигналов и сигналов ошибки.

y = sim(m0,[u e]);
z = [y,u];

Сгенерируйте комбинации порядка модели для оценки. Задайте задержку 1 для всех моделей и порядка модели располагаются между 1 и 5 для na и nb.

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

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

V = arxstruc(z(1:200),z(201:400),NN);

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

order = selstruc(V,0);

Оцените модель ARX выбранного порядка.

M = arx(z,order);

Создайте наборы данных оценки и валидации.

load co2data;
Ts = 0.5; % Sample time is 0.5 min
ze = iddata(Output_exp1,Input_exp1,Ts);
zv = iddata(Output_exp2,Input_exp2,Ts);

Сгенерируйте комбинации порядка модели для:

  • na= 2:4

  • nb= 2:5 для первого входа и 1 или 4 для второго входа.

  • nk= 1:4 для первого входа и 0 для второго входа.

NN = struc(2:4,2:5,[1 4],1:4,0);

Оцените модель ARX для каждой комбинации порядка модели.

V = arxstruc(ze,zv,NN);

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

order = selstruc(V,0);

Оцените модель ARX выбранного порядка.

M = arx(ze,order);

Советы

Каждый ze и zv iddata объект, содержащий выходные входные данные. Данные частотной области и idfrd объекты также поддерживаются. Модели для каждой из структур модели заданы NN оцениваются с помощью набора данных ze. Функции потерь (нормированная сумма ошибок предсказания в квадрате) затем вычисляются для этих моделей, когда применено набор данных валидации zv. Наборы данных ze и zv не должен иметь равного размера. Они могли, однако, быть теми же наборами, в этом случае расчет быстрее.

Смотрите также

| | | |

Представлено до R2006a