bj

Оцените модель полинома Поля-Jenkins, использующую данные об области времени

Синтаксис

sys = bj(data, [nb nc nd nf nk])
sys = bj(data,[nb nc nd nf nk], Name,Value)
sys = bj(data, init_sys)
sys = bj(data, ___, opt)

Описание

sys = bj(data, [nb nc nd nf nk]) оценивает модель полинома Поля-Jenkins, sys, с помощью данных временного интервала, data. [nb nc nd nf nk] задает порядки полиномов, используемых для оценки.

sys = bj(data,[nb nc nd nf nk], Name,Value) оценивает полиномиальную модель с дополнительными опциями, заданными одним или несколькими аргументами пары Name,Value.

sys = bj(data, init_sys) оценивает, что полином Поля-Jenkins использование полиномиальной модели init_sys конфигурирует начальную параметризацию sys.

sys = bj(data, ___, opt) оценивает, что полином Поля-Jenkins использование набора опции, opt, задает поведение оценки.

Входные параметры

data

Данные об оценке.

data является объектом iddata, который содержит значения сигналов ввода и вывода временного интервала.

Вы не можете использовать данные частотного диапазона для оценки моделей Box-Jenkins.

[nb nc nd nf nk]

Вектор матриц, содержащих порядки и задержки модели Box-Jenkins. Матрицы должны содержать неотрицательные целые числа.

  • nb является порядком полинома B плюс 1 (Матрица ny ню)

  • nc является порядком полинома C плюс 1 (матрица Ny-1)

  • nd является порядком полинома D плюс 1 (матрица Ny-1)

  • nf является порядком полинома F плюс 1 (Матрица ny ню)

  • nk является входной задержкой (в количестве выборок, матрицы ny ню), где Ню является количеством входных параметров, и Ny является количеством выходных параметров.

opt

Опции оценки.

opt является набором опций, который конфигурирует, среди других, следующего:

  • цель оценки

  • начальные условия

  • числовой метод поиска, который будет использоваться по оценке

Используйте bjOptions, чтобы создать набор опций.

init_sys

Полиномиальная модель, которая конфигурирует начальную параметризацию sys.

init_sys должен быть моделью idpoly со структурой Поля-Jenkins, которая имеет только B, C, D и активные полиномы F. bj использует параметры и ограничения, заданные в init_sys как исходное предположение для оценки sys.

Используйте свойство Structure init_sys сконфигурировать исходные предположения и ограничения для B (q), F (q), C (q) и D (q).

Чтобы задать исходное предположение для, скажем, C (q) термин init_sys, установите init_sys.Structure.C.Value как исходное предположение.

Задавать ограничения для, скажем, B (q) термин init_sys:

  • установите init_sys.Structure.B.Minimum на минимальный B (q) содействующие значения

  • установите init_sys.Structure.B.Maximum на максимальный B (q) содействующие значения

  • установите init_sys.Structure.B.Free указывать, который B (q) коэффициенты свободны для оценки

Можно так же задать исходное предположение и ограничения для других полиномов.

Аргументы в виде пар имя-значение

Укажите необязательные аргументы в виде пар ""имя, значение"", разделенных запятыми. Имя (Name) — это имя аргумента, а значение (Value) — соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.

'InputDelay'

Введите задержки. InputDelay является числовым вектором, задающим задержку каждого входного канала. Задайте входные задержки целочисленных множителей шага расчета Ts. Например, InputDelay = 3 означает задержку трех периодов выборки.

Для системы с входными параметрами Nu, набор InputDelay к Nu-by-1 вектор, где каждая запись является численным значением, представляющим входную задержку соответствующего входного канала. Можно также установить InputDelay на скалярное значение применять ту же задержку со всеми каналами.

Значение по умолчанию: 0 для всех входных каналов

'IODelay'

Транспортные задержки. IODelay является числовым массивом, задающим отдельную транспортную задержку каждой пары ввода/вывода.

Задайте транспортные задержки как целые числа, обозначающие задержку кратного шагу расчета Ts.

Для системы MIMO с Ny выходные параметры и входные параметры Nu, набор IODelay к Ny-by-Nu массив, где каждая запись является численным значением, представляющим транспортную задержку соответствующей пары ввода/вывода. Можно также установить IODelay на скалярное значение применять ту же задержку со всеми парами ввода/вывода.

Значение по умолчанию: 0 для всех пар ввода/вывода

'IntegrateNoise'

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

IntegrateNoise является логическим вектором длины Ny, где Ny является количеством выходных параметров.

Установка IntegrateNoise к true для конкретного вывода приводит к модели:

y(t)=B(q)F(q)u(tnk)+C(q)D(q)e(t)1q1

Где, 11q1 интегратор в шумовом канале, e (t).

Значение по умолчанию: false(Ny,1) (Ny является количеством выходных параметров),

Выходные аргументы

sys

Модель BJ, которая соответствует данным об оценке, возвратилась как объект idpoly дискретного времени. Эта модель создается с помощью заданных порядков модели, задержек и опций оценки.

Информация о результатах оценки и используемых опциях хранится в свойстве Report модели. Report имеет следующие поля:

Сообщите о полеОписание
Status

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

Method

Команда оценки используется.

InitialCondition

Обработка начальных условий во время образцовой оценки, возвращенной как одно из следующих значений:

  • 'zero' — Начальные условия были обнулены.

  • 'estimate' — Начальные условия были обработаны как независимые параметры оценки.

  • 'backcast' — Начальные условия были оценены с помощью лучшего метода наименьших квадратов.

Это поле особенно полезно, чтобы просмотреть, как начальные условия были обработаны, когда опцией InitialCondition в наборе опции оценки является 'auto'.

Fit

Количественная оценка оценки, возвращенной как структура. Смотрите Функцию потерь и Образцовые Метрики качества для получения дополнительной информации об этих метриках качества. Структура имеет следующие поля:

Поле Описание
FitPercent

Мера по нормированной среднеквадратической ошибке (NRMSE) того, как хорошо ответ модели соответствует данным об оценке, выраженным как процент.

LossFcn

Значение функции потерь, когда оценка завершается.

MSE

Мера по среднеквадратической ошибке (MSE) того, как хорошо ответ модели соответствует данным об оценке.

FPE

Итоговая ошибка прогноза для модели.

AIC

Необработанная мера по Критериям информации о Akaike (AIC) образцового качества.

AICc

Маленький объем выборки исправил AIC.

nAIC

Нормированный AIC.

BIC

Байесовы информационные критерии (BIC).

Parameters

Ориентировочные стоимости параметров модели.

OptionsUsed

Набор опции используется для оценки. Если никакие пользовательские опции не были сконфигурированы, это - набор опций по умолчанию. Смотрите bjOptions для получения дополнительной информации.

RandState

Состояние потока случайных чисел в начале оценки. Пустой, [], если рандомизация не использовалась во время оценки. Для получения дополнительной информации смотрите rng в документации MATLAB®.

DataUsed

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

Поле Описание
Name

Имя набора данных.

Type

Тип данных.

Length

Количество выборок данных.

Ts

'SampleTime' .

InterSample

Введите междемонстрационное поведение, возвращенное как одно из следующих значений:

  • 'zoh' — Нулевой порядок содержит, поддерживает кусочно-постоянный входной сигнал между выборками.

  • 'foh' — Хранение первого порядка поддерживает кусочно-линейный входной сигнал между выборками.

  • 'bl' — Ограниченное полосой поведение указывает, что непрерывно-разовый входной сигнал имеет нулевую силу выше частоты Найквиста.

InputOffset

Сместите удаленный из входных данных временного интервала во время оценки. Для нелинейных моделей это - [].

OutputOffset

Сместите удаленный из выходных данных временного интервала во время оценки. Для нелинейных моделей это - [].

Termination

Условия завершения для итеративного поиска используются для ошибочной минимизации прогноза. Структура со следующими полями:

Поле Описание
WhyStop

Причина завершения числового поиска.

Iterations

Количество поисковых итераций выполняется алгоритмом оценки.

FirstOrderOptimality

- норма вектора просмотра градиента, когда алгоритм поиска останавливается.

FcnCount

Число раз целевая функция было названо.

UpdateNorm

Норма вектора просмотра градиента в последней итерации. Не использованный, когда методом поиска является 'lsqnonlin' или 'fmincon'.

LastImprovement

Улучшение критерия последней итерации, выраженной как процент. Не использованный, когда методом поиска является 'lsqnonlin' или 'fmincon'.

Algorithm

Алгоритм используется методом поиска 'fmincon' или 'lsqnonlin'. Не использованный, когда другие методы поиска используются.

Для методов оценки, которые не требуют числовой оптимизации поиска, не использовано поле Termination.

Для получения дополнительной информации об использовании Report см. Отчет Оценки.

Примеры

свернуть все

Оцените параметры одно входа, модели Box-Jenkins одно вывода от результатов измерений.

load iddata1 z1;
nb = 2;
nc = 2;
nd = 2;
nf = 2;
nk = 1;
sys = bj(z1,[nb nc nd nf nk]);

sys является моделью idpoly дискретного времени с предполагаемыми коэффициентами. Порядок sys как описан nb, nc, nd, nf и nk.

Используйте getpvec, чтобы получить предполагаемые параметры и getcov, чтобы получить ковариацию, сопоставленную с предполагаемыми параметрами.

Оцените параметры мультивхода, модели Box-Jenkins одно вывода от результатов измерений.

load iddata8
nb = [2 1 1];
nc = 1;
nd = 1;
nf = [2 1 2];
nk = [5 10 15];
sys = bj(z8,[nb nc nd nf nk]);

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

Оцените упорядоченную модель BJ путем преобразования упорядоченной модели ARX.

Загрузка данных.

load regularizationExampleData.mat m0simdata;

Оцените неупорядоченную модель BJ порядка 30.

m1 = bj(m0simdata(1:150),[15 15 15 15 1]);

Оцените упорядоченную модель BJ путем определения значения Lambda методом проб и ошибок.

opt = bjOptions;
opt.Regularization.Lambda = 1;
m2 = bj(m0simdata(1:150),[15 15 15 15 1],opt);

Получите модель BJ более низкоуровневую путем преобразования упорядоченной модели ARX, сопровождаемой сокращением порядка.

opt1 = arxOptions;
[L,R] = arxRegul(m0simdata(1:150),[30 30 1]);
opt1.Regularization.Lambda = L;
opt1.Regularization.R = R;
m0 = arx(m0simdata(1:150),[30 30 1],opt1);
mr = idpoly(balred(idss(m0),7));

Сравните образцовые выходные параметры с данными.

opt2 = compareOptions('InitialCondition','z');
compare(m0simdata(150:end),m1,m2,mr,opt2);

Оцените параметры одно входа, модели Box-Jenkins одно вывода при конфигурировании некоторых опций оценки.

Сгенерируйте данные об оценке.

B = [0 1 0.5];
C = [1 -1 0.2];
D = [1 1.5 0.7];
F = [1 -1.5 0.7];
sys0 = idpoly(1,B,C,D,F,0.1);
e = iddata([],randn(200,1));
u = iddata([],idinput(200)); 
y = sim(sys0,[u e]);
data = [y u];

data является одно входом, набор одно выходных данных, созданный путем симуляции известной модели.

Оцените первоначальную модель Box-Jenkins.

nb = 2;
nc = 2;
nd = 2;
nf = 2;
nk = 1;
init_sys = bj(data,[2 2 2 2 1]);

Создайте набор опции оценки, чтобы совершенствовать параметры предполагаемой модели.

opt = bjOptions;
opt.Display = 'on';
opt.SearchOptions.MaxIterations = 50;

opt является набором опции оценки, который конфигурирует оценку, чтобы выполнить итерации 50 раз самое большее и отобразить прогресс оценки.

Повторно оцените параметры модели с помощью набора опции оценки.

sys = bj(data,init_sys,opt);

sys оценивается с помощью init_sys для начальной параметризации для полиномиальных коэффициентов.

Чтобы просмотреть результат оценки, введите sys.Report.

Оцените мультивход, модель мультивывода Box-Jenkins от оценочных данных.

Загрузите результаты измерений.

load iddata1 z1
load iddata2 z2
data = [z1 z2(1:300)];

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

Оцените модель.

 nb = [2 2; 3 4];  
 nc = [2;2]; 
 nd = [2;2]; 
 nf = [1 0; 2 2];
 nk = [1 1; 0 0];
 sys = bj(data,[nb nc nd nf nk]);

Полиномиальные коэффициенты порядка содержат одну строку для каждого вывода.

sys является моделью idpoly дискретного времени с двумя входными параметрами и двумя выходными параметрами.

Больше о

свернуть все

Структура модели поля-Jenkins

Общая структура модели Box-Jenkins:

y(t)=i=1nuBi(q)Fi(q)ui(tnki)+C(q)D(q)e(t)

где nu является количеством входных каналов.

Порядки модели Box-Jenkins заданы можно следующим образом:

nb:   B(q)=b1+b2q1+...+bnbqnb+1nc:   C(q)=1+c1q1+...+cncqncnd:   D(q)=1+d1q1+...+dndqndnf:   F(q)=1+f1q1+...+fnfqnf

Альтернативы

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

  • tfest — возвращает модель передаточной функции

  • ssest — возвращает модель в пространстве состояний

  • bj, чтобы сначала оценить модель дискретного времени и преобразовать его непрерывно-разовая модель с помощью d2c.

Ссылки

[1] Ljung, L. System Identification: теория для пользователя, верхнего Сэддл-Ривер, NJ, PTR Prentice Hall, 1999.

Расширенные возможности

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