selstruc

Выберите порядок модели для моделей ARX одно выхода

Синтаксис

nn = selstruc(v)
[nn,vmod] = selstruc(v,c)

Описание

Примечание

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

selstruc функция должна помочь выбрать структуру модели (порядок) от информации, содержавшейся в матричном v полученный как выход из arxstruc или ivstruc.

Значение по умолчанию c 'plot'. График показывает процент выходного отклонения, которое не объяснено моделью как функция количества используемых параметров. Каждое значение показывает лучшее пригодное для того количества параметров. Путем нажатия в графике можно исследовать, какие порядки представляют интерес. Когда вы нажимаете Select, переменную nn экспортируется в рабочую область как оптимальная структура модели для вашего выбора количества параметров. Могут быть сделаны несколько выбора.

c = 'aic' не дает графиков, но возвращается в nn структура, которая минимизирует

Vmod=log(V(1+2dN))=log(V)+2dN,Nd

где V функция потерь, d является общим количеством параметров в рассматриваемой структуре, и N является количеством точек данных, используемых в оценке. log(V)+2dN Информационный критерий Акэйка (AIC). Смотрите aic для получения дополнительной информации.

c = 'mdl' возвращается в nn структура, которая минимизирует критерий Минимальной длины описания (MDL) Риссэнена.

Vmod=V(1+dlog(N)N)

Когда c равняется численному значению, структура, которая минимизирует Vmod=V(1+cdN)

выбран.

Выходной аргумент vmod имеет тот же формат как v, но это содержит логарифмы соответственно модифицированных критериев.

Примеры

свернуть все

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

load iddata1;
ze = z1(1:150);
zv = z1(151:300);

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

NN = struc(1:3,1:2,2:4);

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

V = ivstruc(ze,zv,NN);

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

order = selstruc(V,0);

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

M = iv4(ze,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);

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