Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Informatics.doc
Скачиваний:
6
Добавлен:
21.08.2019
Размер:
1.33 Mб
Скачать

5.2.6. Pазностная модель и прогноз

Для временнóго ряда z i (i = 0, 1, 2, ...) можно построить разно-стную модель порядка р  1 вида z k + 1 =  i z k + 1 - i +  (зависи-мость наблюдаемых значений от предыдущих), где коэффициенты  i,

 находятся из условий

(z k + 1 -  i z k + 1 - i - ) 2 → min .

Пусть фиксированы n, p, положим i 0 . . n - 1, j 0 . . n - p - 1,

k 0 . . p, сформируем матрицы A j,k , b j z j + p.

Тогда вектор искомых коэффициентов находится функцией Geninv (обобщенная обратная матрица): s = Geninv(A)b (или minerr).

Для того, чтобы построить непрерывную модель, решим разнос-тные соотношения z k + 1 = s i z k - i + s p (k  p - 1) в терминах пока-зательных функций - степеней корней характеристического уравнения r p = s i r p - i - 1. Если {r i} - корни характеристического уравнения, то коэффициенты c i (i = 0, ..., p) представления z k* ci r ik + c p мож-но получить из условия (z i - z i*) 2 → min (подробнее – см. пример).

Пример. Рассмотрим кубическую параболу

у(х) = 10х(х - 1)(х - 2),

заданную в 20 точках промежутка [0, 2] своими значениями, возму-щенными равномерным "шумом", построим дискретную модель 3- го порядка, построим прогноз последних пяти значений по предыдущим

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

n 20 p 3 (порядок модели) h i 0 . . n x i i h

y i 10 x i (x i - 1) (x i - 2) m 5 (число точек прогноза)

z i y i + rnd(2) - 1 (равномерная помеха процессу)

Подготовка к вычислению коэффициентов дискретной модели:

j 0 . . n - p - 1 k 0 . . p A j,k := if (k < p, z j + p - k - 1 , 1) b j z j + p

s geninv(A) b s T = (1.121034 0.268413 - 0.562349 - 1.404969 10 - 3)

(коэффициенты разностной модели)

zp z v n - m . . n - 1 zp v s t zp v - t - 1 + s p (прогноз)

Построение непрерывной модели:

a k if (k = p, 1, - s p - k - 1) (коэффициенты характеристического многочлена)

a T = (0.562349 - 0.268413 - 1.121034 1) r polyroot(a)

r T = (- 0.645313 0.883174 - 0.302389i 0.883174 + 0.302389i) (корни многочлена)

d | r 2 | d = 0.933507 angle(Re(r 1), | Im(r 1) |)

(модуль и аргумент комплексного корня)

B i, k (r 0) i if k = 0 c geninv(B) z

(d i cos(i )) if k = 1

(d i sin(i )) if k = 2 c T = (0.321843 -1.462531 7.331131 -0.841310)

1 Otherwise (коэффициенты непрерывной модели)

f(t) c 0 (| r 0 |) cos + d (c 1 cos + c 2 sin ) + c 3

(непрерывная модель)

Результаты можно сравнить на графике (рис. 6):

Рис. 6

В пакете Mcad имеется специальная функция predict, позволя-ющая построить недлинный прогноз по последним значениям времен-

ного ряда. Сравним последние значения ряда z, прогнозируемые с помощью разностной модели zp, соответствующие значения "чистого"

ряда y и значения, полученные функцией predict(z, n-5, 5) (табл. 7):

Таблица 7

y

- 3.75

- 3.84

- 3.57

- 2.88

- 1.71

z

- 4.5328

- 3.1776

- 4.2602

- 3.7213

- 1.4280

zp

- 4.1445

- 3.9104

- 3.3896

- 2.5203

- 1.5375

predict

- 1.2452

0.6200

2.7957

2.0844

3.0793

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