exponenta event banner

Моделирование стационарных процессов

Моделирование процесса AR

В этом примере показано, как моделировать пути выборки из стационарного процесса AR (2) без указания предварительных наблюдений .

Создать модель

Укажите модель AR (2)

yt = 0,5 + 0 .7yt-1 + 0 25yt-2 + αt,

где инновационный процесс гауссов с дисперсией 0,1.

Mdl = arima('Constant',0.5,'AR',{0.7 0.25},'Variance',.1);

Создать один путь образца

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

rng(5)
Y = simulate(Mdl,50);

figure
plot(Y)
xlim([0,50])
title('Simulated AR(2) Process')

Figure contains an axes. The axes with title Simulated AR(2) Process contains an object of type line.

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

λ = c (1-δ 1-δ 2).

Безусловное отклонение процесса:

σ2=(1-ϕ2)(1+ϕ2)σε2(1-ϕ2)2-ϕ12.

Вычислите безусловное среднее и отклонение процесса.

c = Mdl.Constant;
phi = Mdl.AR;
sigmaEps2 = Mdl.Variance;
mu = c/(1-phi{1}-phi{2})
mu = 10.0000
sigma2 = (1-phi{2})/(1+phi{2})*sigmaEps2/((1-phi{2})^2 - phi{1}^2)
sigma2 = 0.8276

Создать множество путей образцов

Создайте 1000 путей выборки, каждый с 50 наблюдениями.

Y = simulate(Mdl,50,'NumPaths',1000);

figure
subplot(2,1,1)
plot(Y,'Color',[.85,.85,.85])
title('Simulated AR(2) Process')
hold on
h = plot(mean(Y,2),'k','LineWidth',2);
legend(h,'Simulation Mean','Location','NorthWest')
hold off
subplot(2,1,2)
plot(var(Y,0,2),'r','LineWidth',2)
title('Process Variance')
hold on
plot(1:50,sigma2*ones(50,1),'k--','LineWidth',1.5)
legend('Simulation','Theoretical',...
       'Location','SouthEast')
hold off

Figure contains 2 axes. Axes 1 with title Simulated AR(2) Process contains 1001 objects of type line. This object represents Simulation Mean. Axes 2 with title Process Variance contains 2 objects of type line. These objects represent Simulation, Theoretical.

Среднее значение моделирования является постоянным с течением времени. Это согласуется с определением стационарного процесса. Однако дисперсия процесса не является постоянной с течением времени. В начале моделирования наблюдаются переходные эффекты из-за отсутствия данных предварительной выборки.

Вокруг наблюдения 50 моделируемая дисперсия приближается к теоретической дисперсии.

Избыточная выборка для уменьшения переходных эффектов

Для уменьшения переходных эффектов одним из вариантов является избыточная выборка процесса. Например, для выборки 50 наблюдений можно создать пути с более чем 50 наблюдениями и отменить все, кроме последних 50 наблюдений, как входящие. Здесь смоделируют пути длиной 150 и отбрасывают первые 100 наблюдений.

Y = simulate(Mdl,150,'NumPaths',1000);
Y = Y(101:end,:);

figure
subplot(2,1,1)
plot(Y,'Color',[.85,.85,.85])
title('Simulated AR(2) Process')
hold on
h = plot(mean(Y,2),'k','LineWidth',2);
legend(h,'Simulation Mean','Location','NorthWest')
hold off
subplot(2,1,2)
plot(var(Y,0,2),'r','LineWidth',2)
xlim([0,50])
title('Process Variance')
hold on
plot(1:50,sigma2*ones(50,1),'k--','LineWidth',1.5)
legend('Simulation','Theoretical',...
       'Location','SouthEast')
hold off

Figure contains 2 axes. Axes 1 with title Simulated AR(2) Process contains 1001 objects of type line. This object represents Simulation Mean. Axes 2 with title Process Variance contains 2 objects of type line. These objects represent Simulation, Theoretical.

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

Моделирование процесса MA

В этом примере показано, как моделировать пути выборки из стационарного процесса MA (12) без указания предварительных наблюдений .

Создать модель

Укажите модель MA (12)

yt = 0,5 + αt + 0 .8αt-1 + 0 .2αt-12,

где инновационное распределение является гауссовым с дисперсией 0,2.

Mdl = arima('Constant',0.5,'MA',{0.8,0.2},...
    'MALags',[1,12],'Variance',0.2);

Создать пути образцов

Создайте 200 путей выборки, каждый с 60 наблюдениями.

rng(5)
Y = simulate(Mdl,60,'NumPaths',200);

figure
plot(Y,'Color',[.85,.85,.85])
hold on
h = plot(mean(Y,2),'k','LineWidth',2);
legend(h,'Simulation Mean','Location','NorthWest')
title('MA(12) Process')
hold off

Figure contains an axes. The axes with title MA(12) Process contains 201 objects of type line. This object represents Simulation Mean.

Для процесса МА постоянный член является безусловным средним. Среднее значение для моделирования составляет приблизительно c = 0,5.

Отклонение моделирования графика

Безусловное отклонение процесса:

σ2=(1+θ12+θ122)σε2.

Вычислите безусловную дисперсию.

theta = cell2mat(Mdl.MA);
sigmaEps2 = Mdl.Variance;
sigma2 = (1+sum(theta.^2))*sigmaEps2
sigma2 = 0.3360

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

figure
plot(var(Y,0,2),'Color',[.75,.75,.75],'LineWidth',1.5)
xlim([0,60])
title('Unconditional Variance')
hold on
plot(1:60,sigma2*ones(60,1),'k--','LineWidth',2)
legend('Simulation','Theoretical',...
       'Location','SouthEast')
hold off

Figure contains an axes. The axes with title Unconditional Variance contains 2 objects of type line. These objects represent Simulation, Theoretical.

В начале моделирования, по-видимому, имеется короткий период горения. В течение этого времени отклонение моделирования ниже ожидаемого. После этого дисперсия моделирования колеблется вокруг теоретической дисперсии.

Создать множество путей образцов

Смоделировать 10 000 путей от модели, каждый длиной 1000. Постройте график отклонения моделирования.

YM = simulate(Mdl,1000,'NumPaths',10000);
figure
plot(var(YM,0,2),'Color',[.75,.75,.75],'LineWidth',1.5)
ylim([0.3,0.36])
title('Unconditional Variance')
hold on
plot(1:1000,sigma2*ones(1000,1),'k--','LineWidth',2)
legend('Simulation','Theoretical',...
       'Location','SouthEast')
hold off

Figure contains an axes. The axes with title Unconditional Variance contains 2 objects of type line. These objects represent Simulation, Theoretical.

Ошибка Монте-Карло уменьшается, когда генерируется больше реализаций. Вариативность дисперсии моделирования значительно меньше, что сильно колеблется вокруг теоретической дисперсии.

См. также

|

Связанные примеры

Подробнее