Metóda exponenciálneho vyrovnávania je najviac používanou prognostickou metódou pre jej výpočtovú jednoduchosť a predovšetkým pre schopnosť rýchleho reagovania na posledné zmeny hodnôt časového radu. Metodika zohľadňuje minulý vývoj sledovanej veličiny pomocou jej vážených priemerov.
Definujeme exponenciálne vyrovnávanie v čase t pomocou nasledovného vzorca:
Kde:
St – je exponenciálny priemer v čase t
α – vyrovnávajúca konštanta z intervalu <0,1>; ß=1-α
N – dĺžka časového radu
k – vek pozorovaní
Ak je časový rad dostatočne dlhý, člen ßNS0 z posledného výrazu možno vynechať. Potom vzorec
je vážený súčet všetkých členov ČR s exponenciálne klesajúcimi váhami.
Voľba vyrovnávajúcej konštanty
Voľbou vyrovnávacej konštanty α je určovaná rýchlosť prispôsobovania ďalšej predpovede k aktuálnej chybe predpovede. Ak je α vysoké, v novej predpovedi alebo v novom odhade je zahrnutá veľká časť posledného pozorovania. Ak α je volené blízko nuly, nová predpoveď sa bude takmer zhodovať s predchádzajúcou a vplyv poslednej aktuálnej veličiny je potlačený . Znamená to, ak budeme požadovať, aby predpovede modelovanej veličiny boli stabilné a náhodné chyby nebol i extrémne rozdielne, potom budeme voliť nízku hodnotu α. Ak budeme požadovať, aby nové odhady zahŕňali rýchlu odozvu na poslednú zmenu, budeme voliť α veľké. V rôznych zdrojoch odbornej literatúry možno nájsť odporúčanie, aby α nepresahovala hodnotu 0,3.
- bez sezónnosti
- konštantný trend – Brownovo jednoduché exponenciálne vyrovnávanie
- lineárny trend – Brownovo dvojité exponenciálne vyrovnávanie, Holtovo exp. vyrovnávanie (dve vyrovnávajúce konštanty)
- kvadratický trend – trojité exponenciálne vyrovnávanie
- so sezónnou zložkou
- Holt-Winter
Holt-Winter
Pri použití Holt-Winter-ovho exponenciálenho vyrovnávania sa predpokladá, že v čase t=1,2,3,…,T, je možné časový rad rozdeliť na lokálne lineárne trendy s konštantou alebo multiplikatívnou sezónnosťou.
- Aditívny model
- Multiplikatívny model
kde:
b0 – parameter úrovne lineárneho modelu
b1 – parameter smernice lineárneho modelu
ε0 – náhodná zložka
t – časová premenná
St – sezónny priemer/ sezónnz index v čase t, pričom musí platiť:
pre sezónne priemery,
pre sezónne indexy.
V modeli používame tri vyrovnávajúce konštanty α, β, γ.
Vyrovnávajúce rovnice:
- Aditívny model
a prognózovanie má tvar
- Multiplikatívny model
a prognózovanie má tvar
Exponenciálne vyrovnávanie v R
Najznámejšia je funkcia HoltWinters, ktorá dokáže pracovať so sezónnymi aj nesezónnzmi dátami. Táto funkcia je obsiahnutá v základných balíkoch, preto nie je potrebné inštalovať a načitávať žiadne balíky.
HoltWinters(x, alpha = NULL, beta = NULL, gamma = NULL, seasonal = c("additive", "multiplicative"))
Parametre funkcie:
- x – dáta časového radu
- alpha, beta, gamma – vyrovnávajúce konštanty
- seasonal – defaultne “additive”, pre multiplikatívny sezónny model treba zadať “multiplicative”. Tento parameter naberá účinnosť, len ak je parameter gamma nenulový
Príklad:
Nesezónne dáta
#načítanie dát
Dáta použité v tomto príklade nájdete tu: Odkazy na použité a reálne dáta
#zavolanie funkcie na exponenciálne vyrovnávanie
yt.hw = HoltWinters(yt, gamma=FALSE)
#vykreslenie výstupu z funkcie HoltWinters so zmenenými mierkami, aby sa tam potom zmestila ja prognóza
plot(yt.hw, xlim=c(0, length(yt)+5), ylim=c(min(yt)-0.5, max(yt)))
#výpočet prognózy
yt.hw.pred = predict(yt.hw, n.ahead=1)
#zakreslenie prognózy do existujúceho grafu
lines(yt.hw.pred, type="p", col="purple")
Sezónne dáta
#načítanie dát
Dáta použité v tomto príklade nájdete tu: Odkazy na použité a reálne dáta
#dáta konvertované do formátu potrebného na vstupe do funkcie HoltWinters pre sezónne dáta
#dáta sú mesačné(freq=12) a začínajú rokom 1956
yt<-ts(yt,start=1956,freq=12)
#zavolanie funkcie na exponenciálne vyrovnávanie
yt.hw = HoltWinters(yt)
#vykreslenie výstupu z funkcie HoltWinters so zmenenými mierkami, aby sa tam potom zmestila ja prognóza
plot(yt.hw, xlim=c(1956, 1999))
#výpočet prognózy
yt.hw.pred = predict(yt.hw, n.ahead=48)
#zakreslenie prognózy do existujúceho grafu
lines(yt.hw.pred, col="purple")
Odhad modelu HW, ktorý je v grafe červenou čiarou a využívame ho na výpočet chybovosti získame:
c(yt.hw$fitted[,"xhat"])
Zdroje:
Polívka, L.: DIPLOMOVÁ PRÁCA: Moderné prognostické metódy v modelovaní podnikových procesov. 2010
Zucchini, W., Nenadi, O., :Time Series Analysis with R -Part I [4.6. 2015]