Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Kontr_voprosy.doc
Скачиваний:
1
Добавлен:
01.04.2025
Размер:
2.24 Mб
Скачать
  1. Итерационное параметрическое оценивание.

Семь функций позволяют проводить оценивание коэффициентов моделей итерационными (рекуррентными) методами, при которых на каждой k-й итерации учитываются экспериментальные данные, соответствующие моменту времени k.

Функция rarmax реализует процедуру рекуррентного оценивания коэффициентов ARMAX-модели:

thm = rarmax(z,nn,adm,adg)

[thm,yhat,P,phi,psi] = rarmax(z,nn,adm,adg,th0,P0,phi0,psi0)

Здесь:

  • z - матрица данных;

  • nn — аргумент, задающий параметры ARMAX-модели, nn = [na nb nc nk];

  • adm и adg — аргументы, задающие вид процедуры оценивания, например, значения adm = 'ff' и adg = lam задают рекуррентный метод наименьших квадратов, adm = 'ug' и adg = gam — градиентный метод оценивания и т. п. (дополнительную информацию можно получить, используя команду help rarmax);

  • th0 — вектор-строка, содержащий начальные значения оцениваемых параметров, по умолчанию — нулевой вектор;

  • Р0 — начальная матрица ковариаций оцениваемых коэффициентов, по умолчанию равна единичной матрице, умноженной на 104;

  • Phi0 и psi0 — соответственно, начальные значения вектора данных и вектора-градиента (по умолчанию — нулевые). Их размеры достаточно сложным образом зависят от параметров модели.

Возвращаемые величины:

  • thm — матрица оценок коэффициентов модели; k-я строка матрицы содержит оценки, соответствующие моменту времени k в следующем порядке;

  • thm(k,:) = [a1,a2, ..., ana, b1,..., bnb];

  • yhat - - вектор прогнозируемых значений выхода (соответствующий вектору z(k,l));

  • Р, phi, psi — конечные значения матрицы ковариаций оценок коэффициентов, вектора данных и вектора-градиента.

Функция rarx реализует процедуру рекуррентного оценивания коэффициентов AR и ARX-моделей:

thm = rarx(z, nn, adm, adg)

[thm, yhat, P, phi] = rarx(z, nn, adm, adg, th0,P0,phi0)

Аргументы и возвращаемые величины аналогичны рассмотренным для предыдущей функции.

Функция rbj — то же, что предыдущая функция, но для модели Бокса -Дженкинса:

thm = rbj(z, nn, adm, adg)

[thm, yhat, P, phi, psi] = ...

rbj(z, nn, adm, adg, th0, P0, phi0, psi0)

Функция roe — то же, что предыдущая функция, но для ОЕ-модели:

thm = roe(z, nn, adm, adg)

[thm, yhat, P, phi, psi] = roe(z, nn, adm, adg, th0, P0, phi0, psi0)

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

thm = rpem(z, nn, adm, adg)

[thm, yhat, P, phi, psi] = rpem(z, nn, adm, adg, th0, P0, phi0, psi0)

Функция rplr имеет то же назначение, что и предыдущая функция. Отличие состоит в алгоритме оценивания. Функция записывается в виде:

thm = rplr(z, nn, adm, adg)

[thm, yhat, P, phi] = rplr(z, nn, adm, adg, th0, P0, phi0)

Функция segment осуществляет разбиение (сегментацию) данных и оценивание коэффициентов моделей для каждого сегмента в предположении, что в пределах каждого сегмента коэффициенты модели являются постоянными, но могут изменяться (скачкообразно) при переходе от сегмента к сегменту. Оцениваемые модели — AR, ARX, ARMAX. Функция записывается в виде:

segm = segment(z, nn)

[segm, V, thm, R2e] = segment(z, nn, R2, q, R1, M, th0, P0,ll, mu)

Здесь:

  • z — матрица данных;

  • аргумент nn определяет порядок модели:

  • для ARMAX-модели nn=[na nb nc nk];

  • для ARX-модели nn = [nа nb nk];

  • для AR-модели nn = nа;

  • R2 — оценка дисперсии шума наблюдений;

  • q — вероятность скачкообразного изменения модели в момент времени k, по умолчанию 0.01;

  • R1 — предполагаемая матрица ковариаций оценок коэффициентов при их возможном скачкообразном изменении, по умолчанию — единичная матрица;

  • М — число параллельных моделей, используемых в алгоритме, по умол­чанию 5;

  • Th0 и Р0 — смысл данных аргументов рассмотрен выше, при описании функции rarmax (здесь начальное значение РО — единичная матрица, умноженная на 10);

  • ll — аргумент, определяющий существование параллельных моделей (каждая модель не исключается, по крайней мере в течение ll итера­ций), по умолчанию ll = 1;

  • u — параметр алгоритма оценивания матрицы R2, по умолчанию 0.97.

Возвращаемые величины:

  • segm — матрица, k-я строка которой содержит оценки коэффициентов, соответствующие моменту времени k (как возвращаемая матрица в фун­кциях rarx и rarmax);

  • thm — матрица, содержащая оценки коэффициентов, соотвотствующЯ моменту времени k без учета сегментации данных;

  • V — сумма квадратов ошибок сегментированной модели;

  • R2e — полученная оценка матрицы R2 для момента времени k.

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

y(t) = b11.

Соответствующая программа приведена ниже, результаты отражены на рис. 6.19.

>> у = sin([1:50]/3)' ;

>> thm = segment([у,ones(size(у))] , [0 1 1], 0.1);

>> plot([thm,у])

Рис. Результаты аппроксимации синусоидального сигнала кусочно-постоянным, полученные с помощью функции segment.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]