Užívateľský manuál

Táto stránka je aktuálne v procese tvorby. Ďakujeme za trpezlivosť!

Vo výrobe

Exponenciálne vyrovnávanie

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:

Exponenciálne vyrovnávanie

Kde:

  • St – exponenciálny priemer v čase t
  • α – vyrovnávajúca konštanta z intervalu <0,1>;
  • ß = 1 – α – doplnková váha
  • N – dĺžka časového radu
  • k – vek pozorovaní (poradie v minulosti)

Ak je časový rad dostatočne dlhý, člen ßⁿS₀ z posledného výrazu možno vynechať. Potom vzorec predstavuje vážený súčet všetkých členov časového radu s exponenciálne klesajúcimi váhami:

Rozvinutý vzorec exponenciálneho vyrovnávania

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é, nová predpoveď silno reaguje na posledné pozorovanie. Naopak, ak je α blízko nuly, nové hodnoty sa viac spoliehajú na predchádzajúci trend.

Pri požiadavke na stabilitu modelu volíme nižšie hodnoty α. Ak požadujeme rýchlu reakciu na zmeny, volíme α vyššie. V literatúre sa často odporúča, aby α nepresahovala hodnotu 0,3.

Typy vyrovnávania podľa trendu

  • Bez sezónnosti:
    • Konštantný trend – Brownovo jednoduché exponenciálne vyrovnávanie
    • Lineárny trend – Brownovo dvojité exponenciálne vyrovnávanie, Holtovo vyrovnávanie (2 konštanty)
    • Kvadratický trend – Trojité exponenciálne vyrovnávanie
  • So sezónnou zložkou:
    • Holt-Wintersovo exponenciálne vyrovnávanie

Holt-Wintersov model

Pri použití Holt-Wintersovho exponenciálneho 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štantnou alebo multiplikatívnou sezónnosťou.

Aditívny model:

Aditívny model

Multiplikatívny model:

Multiplikatívny model

Kde:

  • b₀ – parameter úrovne lineárneho modelu
  • b₁ – parameter smernice (sklonu) trendu
  • εₜ – náhodná zložka
  • t – časová premenná
  • Sₜ – sezónny index/priemer v čase t

Pre sezónne priemery musí platiť:

Súčet sezónnych priemerov

Pre sezónne indexy musí platiť:

Súčet sezónnych indexov

Vyrovnávajúce rovnice (α, β, γ)

V Holt-Wintersovom modeli používame tri vyrovnávajúce konštanty:

  • α – pre úroveň (hladinu)
  • β – pre trend
  • γ – pre sezónnosť

Aditívny model – vyrovnávacie rovnice

Aditívna rovnica úrovne

Aditívna rovnica trendu

Aditívna rovnica sezónnosti

Prognózovanie (aditívny model):

Aditívne prognózovanie

Multiplikatívny model – vyrovnávacie rovnice

Multiplikatívna rovnica úrovne

Multiplikatívna rovnica trendu

Multiplikatívna rovnica sezónnosti

Prognózovanie (multiplikatívny model):

Multiplikatívne prognózovanie

Exponenciálne vyrovnávanie v R – nesezónne dáta

Najznámejšia funkcia v R pre exponenciálne vyrovnávanie je HoltWinters(), ktorá dokáže pracovať so sezónnymi aj nesezónnymi dátami. Je súčasťou základného R, takže netreba inštalovať ž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 – spôsob sezónnosti („additive“ alebo „multiplicative“). Funguje iba ak gamma ≠ FALSE

Príklad – nesezónne dáta

Ukážka použitia funkcie HoltWinters pre časový rad bez sezónnosti:

# načítanie dát # Dáta použité v tomto príklade nájdete tu: Odkazy na použité a reálne dáta # exponenciálne vyrovnávanie bez sezónnosti (gamma=FALSE) yt.hw = HoltWinters(yt, gamma = FALSE) # vykreslenie výstupu z funkcie HoltWinters plot(yt.hw, xlim = c(0, length(yt) + 5), ylim = c(min(yt) - 0.5, max(yt))) # výpočet prognózy na 1 krok dopredu yt.hw.pred = predict(yt.hw, n.ahead = 1) # vykreslenie predikcie lines(yt.hw.pred, type = "p", col = "purple")

Exponenciálne vyrovnávanie v R – sezónne dáta

Aj pri dátach so sezónnosťou môžeme použiť funkciu HoltWinters(). Stačí zabezpečiť správny formát časového radu – najčastejšie mesačný (frekvencia 12).

Dáta použité v tomto príklade nájdete tu: Odkazy na použité a reálne dáta

# konverzia dát na časový rad (mesačné, od roku 1956) yt <- ts(yt, start = 1956, freq = 12) # exponenciálne vyrovnávanie so sezónnosťou yt.hw = HoltWinters(yt) # vykreslenie vyrovnaného radu plot(yt.hw, xlim = c(1956, 1999)) # prognóza na 48 mesiacov dopredu yt.hw.pred = predict(yt.hw, n.ahead = 48) # vykreslenie predikcie do grafu lines(yt.hw.pred, col = "purple")
# odhad modelu HW (červená čiara v grafe) 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]

🔍