Статистический анализ и моделирование процессов авторегрессии и скользящего среднего

 

МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ

ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ОБРАЗОВАНИЮ

Государственное образовательное учреждение

Высшего профессионального образования

"САМАРСКИЙ ГОСУДАРСТВЕННЫЙ АЭРОКОСМИЧЕСКИЙ УНИВЕРСИТЕТ имени академика С.П. КОРОЛЕВА" (СГАУ)

Кафедра технической кибернетики






СТАТИСТИЧЕСКИЙ АНАЛИЗ И МОДЕЛИРОВАНИЕ ПРОЦЕССОВ АВТОРЕГРЕССИИ И СКОЛЬЗЯЩЕГО СРЕДНЕГО

Курсовая работа по дисциплине "Теория случайных процессов"



Выполнил: студент Гайдель А.В.,

Проверил: профессор Храмов А.Г.










Самара 2009

Задание


Дана реализация стационарного в широком смысле эргодического случайного процесса с дискретным временем (стационарная случайная последовательность, временной ряд) - выборка из 5000 последовательных значений (отсчётов) процесса.

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

2.Построить модели авторегрессии (АР), модели скользящего среднего (СС) и смешанные модели авторегрессии и скользящего среднего (АРСС) до третьего порядка включительно: АРСС (M, N), M = 0, 1, 2, 3; N = 0, 1, 2,3. Каждую из построенных моделей записать в явном виде с численными значениями параметров.

.Рассчитать теоретические нормированные корреляционные функции выходной последовательности для каждой из построенных выше моделей. На основе сравнения выборочной и теоретических нормированных корреляционных функций выбрать наиболее адекватную модель АРСС случайного процесса. Построить графики теоретических нормированных корреляционных функций для трёх наилучших из классов АР, СС и АРСС.

.Построить и изобразить графически параметрическую оценку спектральной плотности для трёх наилучших моделей.

.Смоделировать случайный процесс АРСС с использованием наилучшей модели. Сравнить графически фрагменты реализаций исходного и смоделированного процессов.

.Построить оценки моментных функций смоделированного процесса, сравнить их с оценками моментных функций исходного процесса и с теоретическими моментными функциями, соответствующими выбранной модели АРСС.

выборка авторегрессия программа моделирование

Аннотация


В данной курсовой работе проводится всестороннее исследование выборки из отсчётов некоторого неизвестного стационарного эргодического случайного процесса и моделирование нового процесса, подобного исходному, с использованием моделей авторегрессии и скользящего среднего различных порядков. Модели АРСС исследуются на качество, проводится построение графиков спектральной плотности мощности для исходного и смоделированных процессов. Для наглядности большинство результатов изображено графически и в виде таблиц. Программа, приведённая в приложении к курсовой работе, может служить основой для исследования любого стационарного эргодического случайного процесса и построения моделей АРСС любых порядков.

Содержание


Задание

Аннотация

1. Оценка моментных функций

2. Построение моделей

3. Анализ моделей

4. Спектральная плотность мощности

5. Моделирование

6. Анализ смоделированных процессов

Выводы

Список использованных источников

Приложение A. Текст программы


1. Оценка моментных функций


Пусть дана выборка из отсчётов стационарного в широком смысле эргодического дискретного случайного процесса . Оценим моментные функции этого процесса.

Выборочное среднее - оценка математического ожидания - рассчитывается по формуле:

, где - соответствующие компоненты вектора .

В нашем случае, выполнив расчеты, получаем . Здесь и далее все данные расчётов приводятся с определённой разумной степенью точности.

Формула для расчёта выборочной дисперсии имеет вид:

, но мы воспользуемся исправленной дисперсией, рассчитывающейся по формуле , так как она является лучшей (несмещённой) оценкой дисперсии нашего процесса .

После несложных расчётов получаем: .

В соответствии с оценкой дисперсии выберем формулу для оценки корреляционной функции :


.


Это исправленная выборочная корреляционная функция.

В таблицу 1 запишем 11 первых неотрицательных значений этой функции, помня что :

Заметим, что , чего и следовало ожидать.

Оценим также и нормированную корреляционную функцию, которая поможет количественно оценить корреляцию сечений:


.


Её первые значения также занесём в таблицу 1.


Таблица 1 - Первые значения выборочных корреляционных функций

012345333.8049-26.7346-124.727455.62732.43891.03931.0000-0.0801-0.37370.16660.00730.0031678910-5.40309.4987-0.7981-9.05124.0367-0.01620.0285-0.0024-0.02710.0121

Заметим, , что опять же вполне логично.

Оценим радиус корреляции случайного процесса по формуле , только вместо используем , а будем полагать не слишком большим по сравнению с размером выборки во избежание чрезмерной ошибки:


.


В результате вычислений, полагая , получаем: .

Изобразим графически на рисунке 1 оценку корреляционной функции:


Рисунок 1 - Оценка нормированной корреляционной функции


2. Построение моделей


Теперь построим все модели АРСС для порядков и не превышающих 3. Здесь - это белый шум с нулевым математическим ожиданием и единичной дисперсией. Для простоты генерации будем считать его сечения распределёнными по нормальному закону.

Каждый раз будем руководствоваться следующим методом:

.Сначала отыщем коэффициенты из системы линейных уравнений .

.Далее подставляем в систему .

.Здесь - смешанная корреляционная функция процессов и , формально выражающаяся как , где и - математические ожидания соответствующих случайных процессов, при чём, как указано выше, . Изначально нам, вообще говоря, неизвестны.

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

.. Для определённости . Подставляя из этой системы в предыдущую, получаем нелинейную систему уравнений относительно .

Выпишем для примера системы уравнений для моделей АР (3), СС (3) и АРСС (3,3).

Для модели АР (3) получаем:


, т.е.


Для модели СС (3):


, т.е.


Для модели АРСС (3,3):


, т.е.

,

где


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

Все системы решаем численными методами. Полученные модели проверяем на устойчивость исходя из условия, что все корни характеристического уравнения лежат внутри единичной окружности на комплексной плоскости. Результаты вычислений занесём в таблицу 2.


Таблица 2 - Результат построения моделей АРСС

Порядок моделиПараметры модели MN0018.270301-1.468018.211302-9.7289-8.648412.82020313.76524.4969-10.38124.04111018.2116-0.080111Модель существует, но не устойчива12Модель не существует1313.64063.9211-10.54184.47900.04382016.8266-0.1107-0.38252116.71164.9417-0.3597-0.402522-4.18686.085716.4679-0.4033-0.19942313.65213.3721-10.92244.81770.07810.01533016.7215-0.0680-0.37020.111631Модель существует, но не устойчива32Модель не существует3314.43628.2885-6.44642.5453-0.3429-0.1545-0.0839

3. Анализ моделей


Будем анализировать качество построенных моделей, сравнивая их нормированную корреляционную функцию с оценкой нормированной корреляционной функции исходного процесса . Для сравнения возьмём первые 10 значений нормированных корреляционных функций и для каждой модели вычислим среднее квадратическое отклонение .

Результаты вычислений занесём в таблицу 3.


Таблица 3 - Оценка качества моделей АРСС через СКО

MN012300.17580.16940.02980.002010.1744-0.002020.02920.01820.00400.002030.0262-0.0015

В таблице тёмно-бирюзовым цветом отмечена лучшая модель АРСС, а серым цветом - лучшие модели из классов АР и СС. Как и следовало ожидать, это модели АРСС (3,3), АР (3) и СС (3) соответственно. Видно также, что все модели с СС-составляющей равной 3 оказались очень неплохими, чего нельзя сказать о соответствующих моделях с АР-составляющей равной 3.

Теперь построим графики теоретических нормированных корреляционных функций для указанных наилучших моделей и изобразим их на рисунках 2, 3 и 4 соответственно. Будем считать, что для всякой модели АРСС (M, N) (N+M+1) значение нормированной корреляционной функции совпадает, а остальные значения отыщем из системы:


.


Рисунок 2 - Теоретическая нормированная корреляционная функция для модели АР (3)


Рисунок 3 - Теоретическая нормированная корреляционная функция для модели СС (3)


Рисунок 4 - Теоретическая нормированная корреляционная функция для модели АРСС (3,3)


Смоделируем три процесса на основе лучших моделей, руководствуясь формулой из таблицы 2. Белый шум будем генерировать как последовательность из копий случайной величины, распределённой по нормальному закону с нулевым математическим ожиданием и единичной дисперсией. Несколько первых значений генерируемого случайного процесса положим нулевыми как основание рекурсии. Чтобы придать новому процессу нужное математическое ожидание (непосредственно после генерации оно близко к нулю), просто прибавим его к каждому отсчёту. Таким образом сгенерируем 6000 отсчётов, после чего отбросим первую 1000 как брак.

Построим ещё 3 рисунка, разместив на каждом из них график выборочной нормированной корреляционной функции исходной выборки, график параметрической оценки нормированной корреляционной функции для соответствующей модели и график выборочной нормированной корреляционной функции для сгенерированного по этой модели процесса. На рисунке 5 изобразим соответствующий график для модели АР (3), на рисунке 6 - для модели СС (3), а на рисунке 7 - для АРСС (3,3). Чтобы 3 графика не слишком мешали друг другу, придётся изобразить их линейную интерполяцию. При этом следует помнить, что на самом деле нормированные корреляционные функции дискретных процессов определены только в целых координатах, а всё остальное - это просто их линейное продолжение, которое сделано исключительно для наглядности.


Рисунок 5 - Анализ нормированной корреляционной функции модели АР (3)


Рисунок 6 - Анализ нормированной корреляционной функции модели СС (3)


Рисунок 7 - Анализ нормированной корреляционной функции модели АРСС (3,3)


На этих рисунках красные линии - выборочные нормированные корреляционные функции исходной выборки, зелёные - параметрические оценки нормированных корреляционных функций моделей, синие - выборочные нормированные корреляционные функции соответствующих смоделированных процессов.


4. Спектральная плотность мощности


Построим и изобразим на рисунках 8, 9 и 10 параметрическую оценку нормированной спектральной плотности мощности для трёх рассматриваемых моделей АР (3), СС (3) и АРСС (3,3) соответственно. Саму оценку спектральной плотности мощности будем искать в виде:


.


На тех же рисунках изобразим выборочную оценку нормированной спектральной плотности мощности для исходного процесса и для соответствующего смоделированного процесса. Такую оценку найдём из преобразования Фурье , используя первые 50 значений соответствующих оценок корреляционных функций вместо бесконечного числа. Все оценки спектральной плотности мощности нормируются на соответствующие оценки дисперсий.


Рисунок 8 - Спектральная плотность мощности для модели АР (3)


Рисунок 9 - Спектральная плотность мощности для модели СС (3)


Рисунок 10 - Спектральная плотность мощности для модели АРСС (3,3)


Цветографическая схема та же, что и на рисунках 5 - 7: красным отмечена оценка нормированной спектральной плотности мощности для исходного процесса, зелёным - параметрическая оценка для модели, а синим - выборочная оценка для соответствующего смоделированного процесса.


5. Моделирование


Итак, лучшая модель получилась АРСС (3,3). Приведём на рисунке 8 фрагменты реализаций исходного и построенного процесса из 100 первых отсчётов (не бракованных, конечно).


Рисунок 11 - Фрагмент реализации случайного процесса модели АРСС (3,3)


На этом рисунке красным цветом показана реализация исходного процесса, синим - смоделированного. Кроме того, для наглядности голубым цветом отмечено выборочное среднее исходного процесса, а зелёным - прямые вида . Видно, что характер реализаций совпадает.


6. Анализ смоделированных процессов


Наконец, приведём итоговую таблицу 4, в которую соберём все статистические и теоретические сведения, необходимые для наглядного анализа трёх лучших моделей.


Таблица 4 - Итоговый анализ построенных моделей

Параметры процессаИсходный процессАР (3) СС (3) АРСС (3,3) ТеорияВыборкаТеорияВыборкаТеорияВыборкаМинимум-45.3730-65.3317-56.5194-64.7280Максимум68.377067.116772.452275.2665Среднее10.154510.154510.129410.154510.073510.15459.9608Дисперсия333.8049333.8049321.0027333.8049336.8887333.8049336.8630Стандартное отклонение18.270318.270317.916518.270318.354518.270318.3538Нормированная корреляционная функцияr (0) 1.00001.00001.00001.00001.00001.00001.0000r (1) -0.0801-0.0801-0.0606-0.0801-0.0855-0.0801-0.0956r (2) -0.3737-0.3737-0.3717-0.3737-0.3908-0.3737-0.3873r (3) 0.16660.16660.14790.16660.18770.16660.1799r (4) 0.00730.11800.11100.00000.01300.00730.0039r (5) 0.0031-0.1114-0.10480.0000-0.02260.0031-0.0044r (6) -0.0162-0.0175-0.01180.00000.0097-0.0162-0.0061r (7) 0.02850.05560.04890.00000.00900.00450.0028r (8) -0.0024-0.0097-0.02080.00000.00690.0007-0.0050r (9) -0.0271-0.0219-0.01670.0000-0.00700.00040.0065r (10) 0.01210.01130.02260.0000-0.0142-0.00060.0057СКО0.00000.02620.02410.00200.00370.00150.0026

Выводы


Задачи моделирования случайных процессов возникают на практике довольно часто. Это, прежде всего, связано с экономикой её экономическими процессами. Модели авторегрессии и скользящего среднего позволяют моделировать случайные процессы, подобные исходному, по уже имеющейся реализации такого исходного процесса. Общая модель, предложенная Боксом и Дженкинсом, включает как параметры авторегрессии, так и параметры скользящего среднего. Она позволяет добиться максимального подобия новых смоделированных процессов.

В этой работе было проведено исследование подобного рода моделирования для некоторого исходного неизвестного эргодического процесса. В ходе работы была проанализирована выборка из отсчётов исходного процесса, построены все смешанные модели АРСС до третьего порядка включительно, проведён поиск наилучшей модели и моделирование нового случайного процесса по ней. При этом написана универсальная программа, позволяющая строить, вообще говоря, смешанные модели любых порядков.

Методы исследования, использующиеся в работе, могут быть применены на практике для реального статистического анализа и моделирования любого эргодического случайного процесса. Подобные методы моделирования актуальны на сегодняшний день и находятся на стадии исследования.

Список использованных источников


1.Тараскин, А.Ф. Статистический анализ временных рядов авторегрессии и скользящего среднего: учебное пособие [Текст] // Самара: СГАУ, 1998. - 56с.

2.Тараскин, А.Ф. Статистическое моделирование и метод Монте-Карло: учебное пособие [Текст] // Самара: СГАУ, 1997. - 62с.

3.Храмов, А.Г. Анализ и моделирование процессов АРСС: интернет-ресурс к курсовой работе [Электронный ресурс] // Самара: СГАУ, 2009.

Приложение A. Текст программы


clear ();

// Initial settings_FILE_NAME = 'D: \temp\source. txt'; // File contains input data_FORMAT = '%16.4f'; // Floating point values representation format_FORMAT = '%d'; // Decimal integer values representation format= 1.0E-6; // Precision_AR_LEVEL = 3;_MA_LEVEL = 3;_LENGTH = 5000;

// Input data= fscanfMat (SOURCE_FILE_NAME); // Sample= length (x); // Sample size

// HelpersprintMat (M, mformat),

[n, m] = size (M);i = 1: n,j = 1: m,(mformat + "", M (i, j));;("\n");;;

// 1. Moment functions

// Correlation function esimationR = correlation (k, x)(k < 0),= - k;;= 0.0;= length (x);= mean (x);i = 1: (n-k),= R + (x (i) - meanx) * (x (i+k) - meanx);;

R = R / (n - k - 1);;

// Normalized correlation functionr = ncorrelation (k, x)= correlation (k, x) / correlation (0, x);;

// Correlation distanceT = corrdist (x)= 0.01;= coefficient * length (x) - 2;

em1 = exp (-1);(T >= 0) & (abs (ncorrelation (T, x)) < em1),= T - 1;

end;= T + 1;;

// Drawing normalized correlation function plotcorrplot (). thickness = 6;= 10;= [-m: m];= zeros (length (t), 1);i = 1: length (t),(i) = ncorrelation (t (i), x);;d3 (t, y, axesflag=5, style=2);= gca ();= a. children. children;. thickness = 3;. mark_mode = "on";. mark_size_unit = "point";

p. mark_style = 11;. mark_size = 3;

endfunction;

// Main= mean (x); // Sample mean= variance (x); // Sample variance= 10; // Correlation values count

R = zeros (m, 1);= zeros (m, 1);

for i = 0: m,(i+1) = correlation (i, x);(i+1) = ncorrelation (i, x);;= corrdist (x);("Sample mean: " + FLOAT_FORMAT + "\n", meanx);("Sample variance: " + FLOAT_FORMAT + "\n", svx);("Correlation function estimation: \n");(R, FLOAT_FORMAT);("Normalized correlation function estimation: \n");(r, FLOAT_FORMAT);("Correlation distance: " + INT_FORMAT + "\n", Tcorr);(1);();

// 2. Models building

// Autoregression coefficients search

function betas = ar (x, arLevel, maLevel)= zeros (2 * arLevel, 1);i = (maLevel - arLevel + 1): (maLevel + arLevel),(i - maLevel + arLevel) = correlation (i, x);;= zeros (arLevel, arLevel);

_n = maLevel;i = 1: arLevel,

_m = _n;j = 1: arLevel,(i, j) = R (_m - maLevel + arLevel);

_m = _m - 1;;

_n = _n + 1;;

Rm = - R (arLevel + 1: 2 * arLevel);= linsolve (Rmm, Rm);

endfunction;

// Mutual Correlation Functionrrr = mcorrelation (k, alph, betas)

rrr = alph (k+1);= min (k, length (betas));

for j = 1: len,= rrr + betas (j) * mcorrelation (k - j, alph);;;

// Moving average coefficients searchalphas = ma (x, arLevel, maLevel, betas)i = 0: max ([arLevel, maLevel]),(i+1) = correlation (i, x);;zr = syst (alph)k = 0: maLevel,(k+1) = - R (k+1);i = k: maLevel,(k+1) = zr (k+1) + alph (i+1) * mcorrelation (i - k, alph, betas);;j = 1: arLevel,(k+1) = zr (k+1) + betas (j) * R (abs (k - j) + 1);;;;

[alphas, values, info] = fsolve ([1: (maLevel+1)], syst);i = 1: length (values),(abs (values (i)) > EPSILON | info == 4) then(1) = %i;;;;;

// Image vectors = image (v)= %F;i = 1: length (v),(imag (v (i)) <> 0) then= %T;;;;;

// Model stabilitys = stable (betas)= poly ([pertrans (-betas) 1], "z", "coeff");= roots (p);= %T;i = 1: length (z),(abs (z (i)) >= 1) then= %F;;;;;

// Main_list = list ();_list = list ();i = 0: MAX_AR_LEVEL,j = 0: MAX_MA_LEVEL,

betas = ar (x, i, j);

alphas = ma (x, i, j, betas);_list ($+1) = alphas;_list ($+1) = betas;("ARMA (" + INT_FORMAT + "," + INT_FORMAT + ") \n", i, j);(image (alphas)) then("Model does not exist. \n");;;(~stable (betas)) then("Model exists, but not stable. \n");;;("alpha: \n")(alphas, FLOAT_FORMAT);("beta: \n");(betas, FLOAT_FORMAT);;;

// 3. Models Analysis

// Theoretical correlation function for ARMA modelR = theoretical_corr (betas, startR, k)= length (startR) - 1;= abs (k);(k > nm) then= 0;= length (betas);j = 1: M,

R = R + betas (j) * theoretical_corr (betas, startR, k - j);

end;= startR (k + 1);;;

// Normalized theoretical correlation function for ARMA modelr = norm_theoretical_corr (betas, startR, k)= theoretical_corr (betas, startR, k) / theoretical_corr (betas, startR, 0);;

// Quadratic Errorepsilon = quadratic_error (x, y)= 0;= min (length (x), length (y));j = 1: m,

epsilon = epsilon + (x (j) - y (j)) ^2;

end;;corrplot2 (betas, R, N, M, m_). thickness = 6;= m_;= [-m: m];= zeros (length (t), 1);i = 1: length (t),

y (i) = norm_theoretical_corr (betas, R (1: N + M + 1), t (i));

end;d3 (t, y, axesflag=5, style=2);= gca ();= a. children. children;. thickness = 3;. mark_mode = "on";. mark_size_unit = "point";

p. mark_style = 11;. mark_size = 3;

endfunction;eta = imitate (alphas, betas, meanx, count)

defect = 1000;= zeros (count + defect + 1, 1);

ksi = grand (count + defect + 1, 1, 'nor', 0, 1);= length (alphas) - 1;= length (betas);k = 1: count + defect + 1,eta (k) = 0;i = 0: N,(k - i > 0) then(k) = eta (k) + alphas (i+1) * ksi (k - i);;;j = 1: M,(k - j > 0) then(k) = eta (k) + betas (j) * eta (k - j);;;;= eta (defect + 2: count + defect + 1) + meanx;;= 10; // Analysis Depth= zeros (MAX_AR_LEVEL, MAX_MA_LEVEL);_ar_eps = %inf;_ma_eps = %inf;_arma_eps = %inf;_ar_alpha = [];_ma_alpha = [];

best_arma_alpha = [];_ar_beta = [];_arma_beta = [];= zeros (m+1, 1);= zeros (m+1, 1);k = 0: m,(k+1) = correlation (k, x);(k+1) = R (k+1) / R (1);;_model = zeros (m+1, 1);

for i = 0: MAX_AR_LEVEL,j = 0: MAX_MA_LEVEL,= alphas_list (i * (MAX_MA_LEVEL + 1) + j + 1);= betas_list (i * (MAX_MA_LEVEL + 1) + j + 1);k = 0: m,

r_model (k+1) = norm_theoretical_corr (betas, R (1: (i + j + 1)), k);

end;(i+1, j+1) = quadratic_error (r, r_model);(i == 0) & (epsilon (1, j+1) < best_ma_eps) then_ma_eps = epsilon (1, j+1);_ma_alpha = alphas;(j == 0) & (epsilon (i+1, 1) < best_ar_eps) then_ar_eps = epsilon (i+1, 1);_ar_alpha = alphas;_ar_beta = betas;(epsilon (i+1, j+1) < best_arma_eps) then_arma_eps = epsilon (i+1, j+1);_arma_alpha = alphas;_arma_beta = betas;;;;("Epsilon: \n");(epsilon, FLOAT_FORMAT);("Best models: \nAR (" + INT_FORMAT + "), MA (" + INT_FORMAT + "), ARMA (" + INT_FORMAT + "," + INT_FORMAT + "). \n", length (best_ar_beta), length (best_ma_alpha) - 1, length (best_arma_beta), length (best_arma_alpha) - 1);(2);(best_ar_beta, R, length (best_ar_beta), 0, m);(3);([], R, 0, length (best_ma_alpha) - 1, m);(4);(best_arma_beta, R, length (best_arma_beta), length (best_arma_alpha) - 1, m);_ar = imitate (best_ar_alpha, best_ar_beta, meanx, IMITATION_LENGTH);_ma = imitate (best_ma_alpha, [], meanx, IMITATION_LENGTH);

eta_arma = imitate (best_arma_alpha, best_arma_beta, meanx, IMITATION_LENGTH);_ar = zeros (m+1, 1);_ma = zeros (m+1, 1);_arma = zeros (m+1, 1);_ar_imit = zeros (m+1, 1);_ma_imit = zeros (m+1, 1);_arma_imit = zeros (m+1, 1);k = 0: m,_ar (k + 1) = norm_theoretical_corr (best_ar_beta, R (1: length (best_ar_beta) + 1), k);_ma (k + 1) = norm_theoretical_corr ([], R (1: length (best_ma_alpha)), k);_arma (k + 1) = norm_theoretical_corr (best_arma_beta, R (1: length (best_arma_alpha) + length (best_arma_beta)), k);_ar_imit (k + 1) = ncorrelation (k, eta_ar);

r_ma_imit (k + 1) = ncorrelation (k, eta_ma);

r_arma_imit (k + 1) = ncorrelation (k, eta_arma);

end;(5);d ([0: m], [r r_ar r_ar_imit], style= [5 3 2], axesflag=5, leg="Source@AR (" + string (length (best_ar_beta)) + ") @Imitation");(6);d ([0: m], [r r_ma r_ma_imit], style= [5 3 2], axesflag=5, leg="Source@MA (" + string (length (best_ma_alpha) - 1) + ") @Imitation");(7);d ([0: m], [r r_arma r_arma_imit], style= [5 3 2], axesflag=5, leg="Source@ARMA (" + string (length (best_arma_beta)) + "," + string (length (best_arma_alpha) - 1) + ") @Imitation");

// 4. Power Spectral Density

// Power Spectral DensityFi = pow_spec_dens_arma (omega, alphas, betas)_up = 0;k = 0: length (alphas) - 1,s_up = s_up + alphas (k+1) * exp (%i * k * omega);;_down = 1;k = 1: length (betas),_down = s_down - betas (k) * exp (%i * k * omega);;= abs (s_up / s_down) ^2;;Fi = pow_spec_dens (omega, R)

Fi = R (1);k = 1: length (R) - 1,Fi = Fi + 2 * R (k + 1) * cos (omega * k);

end;;

// Power Spectral Density Plotdensplot (alphas, betas, R, R_imit)= [0: 0.01: %pi];= length (omega);

dens = zeros (len, 1);_source = zeros (len, 1);_imit = zeros (len, 1);

for j = 1: len,(j) = pow_spec_dens_arma (omega (j), alphas, betas) / R (1);_source (j) = pow_spec_dens (omega (j), R) / R (1);_imit (j) = pow_spec_dens (omega (j), R_imit) / R_imit (1);

end;= "";(length (alphas) == 1) then= "AR (" + string (length (betas)) + ")";(length (betas) == 0) then= "MA (" + string (length (alphas) - 1) + ")";= "ARMA (" + string (length (betas)) + "," + string (length (alphas) - 1) + ")";;d (omega, [dens_source dens dens_imit], style= [5 3 2], axesflag=5, leg="Source@" + str + "@Imitation");;= 0.01;_50 = zeros (perc * length (x), 1);

R_ar_imit_50 = zeros (perc * length (x), 1);_ma_imit_50 = zeros (perc * length (x), 1);_arma_imit_50 = zeros (perc * length (x), 1);

for k = 0: length (R_50) - 1,R_50 (k+1) = correlation (k, x);

R_ar_imit_50 (k+1) = correlation (k, eta_ar);_ma_imit_50 (k+1) = correlation (k, eta_ma);_arma_imit_50 (k+1) = correlation (k, eta_arma);;(8);(best_ar_alpha, best_ar_beta, R_50, R_ar_imit_50);(9);(best_ma_alpha, [], R_50, R_ma_imit_50);(10);(best_arma_alpha, best_arma_beta, R_50, R_arma_imit_50);

// 5. Imitationimitation_plot (x, imitation, meanx, sv)= [1: 100];= [x (t) imitation (t) (zeros (length (t), 1) + meanx) (zeros (length (t), 1) + meanx + sqrt (sv)) (zeros (length (t), 1) + meanx - sqrt (sv))];d (t, q, style= [5 2 4 3 3], axesflag=5, leg="Source@Imitation@Mean@Standard deviation");;_alphas = [];_betas = [];(best_ar_eps < best_ma_eps) then(best_ar_eps < best_arma_eps) then_alphas = best_ar_alpha;

best_betas = best_ar_beta;

else_alphas = best_arma_alpha;

best_betas = best_arma_beta;

end;(best_ma_eps < best_arma_eps) then_alphas = best_ma_alpha;

best_betas = best_ma_beta;

else_alphas = best_arma_alpha;

best_betas = best_arma_beta;

end;;("Best model: ARMA (" + INT_FORMAT + "," + INT_FORMAT + ") \n", length (best_betas), length (best_alphas) - 1);i = 1: length (r_model),_model (i) = norm_theoretical_corr (best_betas, R (1: (length (best_betas) + length (best_alphas))), i-1);;= imitate (best_alphas, best_betas, meanx, IMITATION_LENGTH);(11);_plot (x, imitation, meanx, svx);

// 6. Imitation Analysistotal_sample_analysis (x)

m = 10;= zeros (m + 1, 1);_src = zeros (m + 1, 1);

for k = 0: m,(k + 1) = correlation (k, x);;("Minimum: " + FLOAT_FORMAT + "\n", min (x));("Maximum: " + FLOAT_FORMAT + "\n", max (x));("Mean: " + FLOAT_FORMAT + "\n", mean (x));("Variance: " + FLOAT_FORMAT + "\n", R (1));("Standard devation: " + FLOAT_FORMAT + "\n", sqrt (R (1)));("Normalized correlation function: \n");

printMat (R / R (1), FLOAT_FORMAT);("Epsilon: " + FLOAT_FORMAT + "\n", quadratic_error (R / R (1), r));

endfunction;total_model_analysis (alphas, betas, R)

R_model = zeros (length (R), 1);

for k = 0: m,_model (k + 1) = theoretical_corr (betas, R (1: length (alphas) + length (betas)), k);;("Mean: " + FLOAT_FORMAT + "\n", meanx);("Variance: " + FLOAT_FORMAT + "\n", R_model (1));("Standard devation: " + FLOAT_FORMAT + "\n", sqrt (R_model (1)));("Normalized correlation function: \n");(R_model / R_model (1), FLOAT_FORMAT);

printf ("Epsilon: " + FLOAT_FORMAT + "\n", quadratic_error (R_model / R_model (1), r));

endfunction;_imit = mean (imitation);

var_imit = variance (imitation);= 10;_imit = zeros (m, 1);

for k = 0: m,_imit (k+1) = ncorrelation (k, imitation);;("Imitation mean: " + FLOAT_FORMAT + "\n", mean_imit);("Imitation variance: " + FLOAT_FORMAT + "\n", var_imit);("Imitation normalized correlation function: \n");(r_imit, FLOAT_FORMAT);("ARMA model theoretical correlation function: \n");(r_model, FLOAT_FORMAT);("\nTotal table\n");("\nSource\n");_sample_analysis (x);("\nAR (" + INT_FORMAT + ") \n", length (best_ar_beta));("Theory\n");_model_analysis (best_ar_alpha, best_ar_beta, R);("Sample\n");_sample_analysis (eta_ar);("\nMA (" + INT_FORMAT + ") \n", length (best_ma_alpha) - 1);("Theory\n");_model_analysis (best_ma_alpha, [], R);

printf ("Sample\n");_sample_analysis (eta_ma);

printf ("\nARMA (" + INT_FORMAT + "," + INT_FORMAT + ") \n", length (best_arma_beta), length (best_arma_alpha) - 1);("Theory\n");_model_analysis (best_arma_alpha, best_arma_beta, R);("Sample\n");_sample_analysis (eta_arma);


МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ОБРАЗОВАНИЮ Государственное образовательное учреждение Высшего профес

Больше работ по теме:

КОНТАКТНЫЙ EMAIL: [email protected]

Скачать реферат © 2017 | Пользовательское соглашение

Скачать      Реферат

ПРОФЕССИОНАЛЬНАЯ ПОМОЩЬ СТУДЕНТАМ