
- •Теоретические сведения
- •Работа с пакетом в режиме командной строки
- •Функции отображения модели
- •Функции непараметрического оценивания
- •Функции параметрического оценивания
- •Функции итерационного параметрического оценивания
- •Функции задания структуры модели
- •Функции изменения и уточнения структуры модели
- •Функции выбора структуры модели
- •Функции преобразования модели
- •Функции извлечения информации о модели
- •Функции проверки адекватности модели
- •Прочие функции
- •Демонстрация возможностей пакета
- •Идентификация с использованием блоков Simulink
- •Сохранение результатов
Функции выбора структуры модели
Данная группа образована следующими четырьмя функциями.
Функция arxstruc
Функция arxstruc вычисляет функции потерь для ряда различных конкурирующих ARX-моделей с одним выходом:
v = arxstruc(ze,zv,NN)
v = arxstruc(ze,zv,NN,maxsize)
где:
ze и zv — соответственно, матрицы экспериментальных данных для оценивания и верификации (проверки качества) моделей;
NN — матрица задания конкурирующих структур со строками вида nn = [nа nb nk];
maxsize — служебный аргумент, определяющий максимально возможную размерность задачи.
Возвращаемая величина v — матрица, первые (верхние) элементы каждого столбца которой (кроме последнего) являются значениями функции потерь для ARX-моделей, структура которых отображается последующими элементами столбцов (то есть каждый столбец соответствует одной модели). Первый элемент последнего столбца — число значений экспериментальных данных для верификации моделей.
Последующий отбор наилучшей модели может быть произведен с помощью функции selstruc (см. ниже).
Функция ivstruc
Функция ivstruc вычисляет среднее квадратичное отклонение выходов объекта и ряда различных конкурирующих ARX-моделей:
v = ivstruc(ze,zv,NN)
v = ivstruc(ze,zv,NN,p,maxsize)
Рассматриваемая функция по назначению аналогична предыдущей, но отличается используемым алгоритмом оценивания — в данном случае используется метод IV.
Аргументы (кроме р) аналогичны аргументам функции arxstruc. Аргумент разрешает или запрещает (р = 0) вывод так называемых условных чисел IV-матрицы.
Возвращаемая величина v, практически идентична матрице, возвращаемой предыдущей функцией, но отличается от последней дополнительной (нижней) строкой, в которой приводятся условные числа IV-матрицы.
Функция selstruc
Функция selstruc осуществляет выбор наилучшей структуры модели из ряда возможных вариантов:
[nn,vmod] = selstruc(v)
[nn.vmod] = selstruc(v,c)
Здесь:
v — матрица, возвращаемая функциями arxstruc или ivstruc;
с — строковая переменная, определяющая вывод графика или критерий отбора наилучшей структуры:
o при с = 'plot' выводится график зависимости функции потерь от числа оцениваемых коэффициентов модели;
o если с = 'log', выводится график логарифма функции потерь;
o при с = 'aic' график не выводится, но возвращается структура, минимизирующая так называемый теоретический информационный критерий Акейке (Akaike's Information Theoretic Criterion - AIC):
Vmod = V(1+2(d/N)),
где V — значение функции потерь, d — число оцениваемых коэффициентов модели, N — объем экспериментальных данных, используемых для оценивания,
o при с = 'mdl' возвращается структура, обеспечивающая минимум так называемого критерия Риссанена минимальной длины описания (Rissanen's Minimum Description Length — MDL)
o при с, равном некоторому численному значению я, выбирается структура, которая минимизирует.
Возвращаемые величины:
nn— выбранная структура;
vmod — значение соответствующего критерия.
Рассмотрим следующий пример. Используя экспериментальные данные файла dryer2.mat, сравним ARX-модели порядков 1-5 с единичной задержкой и произведем отбор лучшей структуры:
» load dryer2 %3aгрузка данных
» z=[y2 u2];
» NN=struc(l:5,1:5,1); %3адание пределов изменения порядка mодели
» V=arxstruc(z(l:200,:),z(201:400,:)NN);
» nn = selstruc(V, 0); %Выбор наилучшей модели
» th = arx(z,nr); %Оценивание коэффициентов выбранной модели
» present(th) %Представление модели
This matrix was created by the command ARX on 1/20 2001 at 15:50
Loss fen: 0.0014058 Akaike's ГРЕ: 0.0014342 Sampling interval 1
The polynomial coefficients and their standard deviations are
В=
0 0.0002 0.0060 0.0642 0.0617 0.0208
0 0.0010 0.0012 0.0012 0.0023 0.0026
A=
1.0000 -0.9662 0.0324 0.0257 0.1168 -0.0526
0 0.0306 0.0420 0.0415 0.0317 0.0120
Как видно, в данном случае наилучшей оказалась модель 5-го порядка.