Operasjonsanalytiske emner Del 23 Forecasting 3 - Metoder Prognosemodeller basert på Tidsserieanalyse BØK710 OPERASJONSANALYTISKE EMNER Rasmus Rasmussen
Forskjellige prediksjonsmodeller Data Modeller som tillater skift i nivå/trend/sesong Stasjonære data Konstant nivå med tilfeldige variasjoner Glidende gjennomsnitt Veid glidende gjennomsnitt Eksponensiell glatting Sesong Konstant nivå med sykliske variasjoner Eksponensiell glatting / additiv sesong Eksponensiell glatting / multiplikativ sesong Trend Langsiktig generell endring i nivå Dobbelt glidende gjennomsnitt Holt’s metode (dobbel eksponensiell glatting) Trend & Sesong Holt-Winter med additiv sesong Holt-Winter med multiplikativ sesong BØK710 OPERASJONSANALYTISKE EMNER Rasmus Rasmussen
Alternative modeller Pegel’s klassifikasjon Trend Sesongkomponent Ingen Additiv Multiplikativ A-1 A-2 A-3 B-1 B-2 B-3 C-1 C-2 C-3 BØK710 OPERASJONSANALYTISKE EMNER Rasmus Rasmussen
Holt-Winter og endringer BØK710 OPERASJONSANALYTISKE EMNER Rasmus Rasmussen
Tidsserier og REGRESJON Data Modeller som IKKE tillater skift i nivå/trend/sesong Trend Langsiktig generell endring i nivå Lineær trend Kvadratisk trend Trend & Sesong Langsiktig generell endring i nivå og repeterte variasjoner rundt trendlinjen Trend (lineær eller kvadratisk), additiv eller multiplikativ sesongjustering. Regresjon med trend (lineær eller kvadratisk) og additiv sesong BØK710 OPERASJONSANALYTISKE EMNER Rasmus Rasmussen
Ekstrapoleringsmodeller Ekstrapoleringsmodeller forsøker å ta hensyn til tidligere utvikling i en tidsserievariabel i et forsøk på å predikere den framtidige utviklingen av den samme variabelen. Vi skal først ta for oss forskjellige ekstrapoleringsteknikker som passer for stasjonære data. BØK710 OPERASJONSANALYTISKE EMNER Rasmus Rasmussen
TIDSSERIE Variabel Yt Tid t Nå Periode 1 2 t-1 ….. t+1 t+2 Y1 Y2 Yt-1 Yt+1? Yt+2 ? OBSERVASJONSER PREDIKSJONER Basert på de historiske observasjonene skal vi forsøke å framskrive et datamønster for å lage prognoser for framtiden. BØK710 OPERASJONSANALYTISKE EMNER Rasmus Rasmussen
Stasjonær data BØK710 OPERASJONSANALYTISKE EMNER Rasmus Rasmussen
KONSTANTMODELLEN Variabel Yt Lt Tid t Nå BØK710 OPERASJONSANALYTISKE EMNER Rasmus Rasmussen
KONSTANTMODELLEN Data-modell: Prognose-modell: Yt Lt Tid t BØK710 OPERASJONSANALYTISKE EMNER Rasmus Rasmussen
ANSLAG PÅ NIVÅ – Naiv metode Yt Lt Tid t Prognose-modell: Bruker kun siste observasjon som anslag på nivået. BØK710 OPERASJONSANALYTISKE EMNER Rasmus Rasmussen
ANSLAG PÅ NIVÅ – Glidende gjennomsnitt Det finnes ingen generell metode for å bestemme n. Vi må forsøke med forskjellige verdier for n for å se hvilken som virker best. BØK710 OPERASJONSANALYTISKE EMNER Rasmus Rasmussen
ANSLAG PÅ NIVÅ – Veid glidende gj.sn Glidende gjennomsnitt veier alle tidligere observasjoner likt : Veid glidende gjennomsnitt tillater at tidligere observasjoner vektlegges forskjellig. Vi må bestemme verdier for n og alle wi BØK710 OPERASJONSANALYTISKE EMNER Rasmus Rasmussen
ANSLAG PÅ NIVÅ – eksponensiell glatting Observert verdi: Nivå/Level: Forecast: Konstantmodellen: Vi antar et konstant nivå, og bruker det anslåtte nivået som prognose for kommende perioder. BØK710 OPERASJONSANALYTISKE EMNER Rasmus Rasmussen
(A1) Ingen trend – Ingen sesong BØK710 OPERASJONSANALYTISKE EMNER Rasmus Rasmussen
(A1) Data fordelt rundt nivået BØK710 OPERASJONSANALYTISKE EMNER Rasmus Rasmussen
Lav glattingskonstant ( = 0,1) BØK710 OPERASJONSANALYTISKE EMNER Rasmus Rasmussen
Høy glattingskonstant ( = 0,9) BØK710 OPERASJONSANALYTISKE EMNER Rasmus Rasmussen
Idéen bak eksponensiell glatting Prognose lik nivå (konstantmodellen) Nivåoppdatering Gjennomsnitt av data og prognose Forrige prognose korrigert for prognosefeil BØK710 OPERASJONSANALYTISKE EMNER Rasmus Rasmussen
Gamle data vektlegges minst BØK710 OPERASJONSANALYTISKE EMNER Rasmus Rasmussen
ANSLAG PÅ NIVÅ - Eksponentiell glatting a. Eksponentiell glattet gjennomsnitt: Prognose-modell: Kan betrakte eksponentiell glatting som et veid gjennomsnitt av alle observasjoner, der siste observasjon har størst vekt. BØK710 OPERASJONSANALYTISKE EMNER Rasmus Rasmussen
ANSLAG PÅ NIVÅ - Eksponentiell glatting b. Eksponentiell glattet gjennomsnitt: Kan betrakte eksponentiell glatting som en veid sum av siste observasjon og forrige estimat. BØK710 OPERASJONSANALYTISKE EMNER Rasmus Rasmussen
ANSLAG PÅ NIVÅ - Eksponentiell glatting c. Eksponentiell glattet gjennomsnitt: Kan betrakte eksponentiell glatting som en forventet verdi, gitt siste observasjon. BØK710 OPERASJONSANALYTISKE EMNER Rasmus Rasmussen
ANSLAG PÅ NIVÅ - Eksponentiell glatting d. Eksponentiell glattet gjennomsnitt: Kan betrakte eksponentiell glatting som en oppdatering basert på korreksjon av prediksjonsfeil. BØK710 OPERASJONSANALYTISKE EMNER Rasmus Rasmussen
ANSLAG PÅ NIVÅ - Eksponentiell glatting Eksponentiell glattet gjennomsnitt: Ulike måter å tolke eksponentiell glatting, men samme matematiske konklusjon! BØK710 OPERASJONSANALYTISKE EMNER Rasmus Rasmussen
Eksponensiell glatting En lav glattingskonstant vektlegger nye observasjoner lite – glatter ut prognosen. En høy glattingskonstant vektlegger nye observasjoner mye – prognosen følger utviklingen i dataene. Tilpassingen i prognosene vil alltid ligge minst én periode bak utviklingen i dataene. Dilemma: Høy glattingskonstant tilpasser seg raskt endringer – men også tilfeldig støy. BØK710 OPERASJONSANALYTISKE EMNER Rasmus Rasmussen
Adaptiv enkel eksponensiell glatting (ARRSES) I enkel eksponensiell glatting er utjevningskonstanten den samme i alle perioder. Adaptive Response Rate Single Exponential Smooting (ARRSES) lar variere over tid. justeres proporsjonalt med estimerte prediksjonsfeil. BØK710 OPERASJONSANALYTISKE EMNER Rasmus Rasmussen
ARRSES BØK710 OPERASJONSANALYTISKE EMNER Rasmus Rasmussen
(A-1) Ingen trend – Ingen sesong Level: Forecast: BØK710 OPERASJONSANALYTISKE EMNER Rasmus Rasmussen
(A-2) Uten trend - Additiv sesong Level: Sesonal: Forecast: BØK710 OPERASJONSANALYTISKE EMNER Rasmus Rasmussen
(A-3) Uten trend - Multiplikativ sesong Level: Sesonal: Forecast: BØK710 OPERASJONSANALYTISKE EMNER Rasmus Rasmussen
(B-1) Additiv trend - Ingen sesong Level: Trend: Forecast: BØK710 OPERASJONSANALYTISKE EMNER Rasmus Rasmussen
(B-2) Additiv trend - Additiv sesong Level: Trend: Sesonal: Forecast: BØK710 OPERASJONSANALYTISKE EMNER Rasmus Rasmussen
(B-3) Additiv trend - Multiplikativ sesong Level: Trend: Sesonal: Forecast: BØK710 OPERASJONSANALYTISKE EMNER Rasmus Rasmussen
(C-1) Multiplikativ trend – Ingen sesong Level: Trend: Forecast: BØK710 OPERASJONSANALYTISKE EMNER Rasmus Rasmussen
(C-2) Multiplikativ trend - Additiv sesong Level: Trend: Sesonal: Forecast: BØK710 OPERASJONSANALYTISKE EMNER Rasmus Rasmussen
(C-3) Multiplikativ trend - Multiplikativ sesong Level: Trend: Sesonal: Forecast: BØK710 OPERASJONSANALYTISKE EMNER Rasmus Rasmussen
Normalisering av sesongfaktorene Sesongfaktorene bør normaliseres for å unngå systematiske prediksjonsfeil. Gjennomsnitt sesong: Vi beregner gjennomsnittet av de s siste sesongfaktorene. Dette gjennomsnittet bør være 1 for modeller med multiplikativ sesong, og 0 for additive. BØK710 OPERASJONSANALYTISKE EMNER Rasmus Rasmussen
Normalisering av sesongfaktorene Normalisering av additiv sesongmodell Sesonal: Normalisering av multiplikativ sesongmodell Sesonal: BØK710 OPERASJONSANALYTISKE EMNER Rasmus Rasmussen
Normalisering av sesongfaktorene Normaliseringen er en rekursiv prosedyre: Vi beregner først ”unormaliserte” sesongeffekter, for hele syklusen s. Så beregnes gjennomsnittet for syklusen. Vi normaliserer så de s siste sesongfaktorene. For neste periode beregnes et nytt gjennomsnitt, og ny normalisering foretas. BØK710 OPERASJONSANALYTISKE EMNER Rasmus Rasmussen
Initialisering Oppdatering av nivå (L), trend (b) og sesong (S) refererer til forrige periode. Når tidsserien starter (t=1), har vi ingen tidligere verdier å bygge på. Vi må derfor estimere startverdier i periode 0 for nivå og trend. Sesongparametrene må estimeres for periode 0, -1, .., -(s-1). BØK710 OPERASJONSANALYTISKE EMNER Rasmus Rasmussen
Initialisering – (B3) t V2 V1 -3 -2 -1 1 2 4 3 5 6 8 7 9 11 10 -1 1 2 4 3 5 6 8 7 9 11 10 Trendlinje/Nivå V1 V2 BØK710 OPERASJONSANALYTISKE EMNER Rasmus Rasmussen
Startverdier Del datasettet i to: En initialserie for å estimere startverdier En tilpasningsserie for å teste glattingsparametrene Hvis vi har N sykluser (år) med data, bruk de M første til initialserien. Beregn gjennomsnittet i første og siste syklus i initialserien: BØK710 OPERASJONSANALYTISKE EMNER Rasmus Rasmussen
Startverdier: Trend & Nivå Startverdi trend Startverdi nivå Trend er endringen i gjennomsnittet, i forhold til antall sesonger mellom gjennomsnittene. Nivå er gjennomsnittet i første syklus, fratrukket trenden fram til tidspunkt 0. BØK710 OPERASJONSANALYTISKE EMNER Rasmus Rasmussen
Startverdier (forts.) Trendlinjen Tilsynelatende sesongfaktorer Initiale sesongfaktorer BØK710 OPERASJONSANALYTISKE EMNER Rasmus Rasmussen
Startverdier (forts.) Initial gjennomsnitt : Normalisering : Initiale sesongfaktorer angis for syklusen før første datasett. En sesongfaktor er gjennomsnittet av hver tilsvarende sesong over alle syklusene i initialserien. Deretter normaliseres de. BØK710 OPERASJONSANALYTISKE EMNER Rasmus Rasmussen
Oppdatering i initialserien Etter å ha beregnet startverdier for nivå, trend og sesong; L0, b0 og S0,..,S-p+1 : Velg verdier på parametrene a, b, g. Oppdater for hver periode i initialserien verdiene for Lt, bt og St, og normaliser de s siste sesongfaktorene. Dette gjøres for alle periodene t = 1,..,sM. BØK710 OPERASJONSANALYTISKE EMNER Rasmus Rasmussen
Prognoser i testserien Lag énperiodiske prediksjoner i tilpassingsserien: Registrer prediksjonsfeilen: Oppdater nivå, trend og sesong; Lt, bt og St, og normaliser de s siste sesongfaktorene. Dette gjøres for alle periodene: t = sM+1,.., sN BØK710 OPERASJONSANALYTISKE EMNER Rasmus Rasmussen
Test av prognosene Beregn et feilmål for prediksjonsfeilene i tilpassingsserien: Velg et annet sett av a, b, g. Oppdater initialserien med de nye vektene. Lag prediksjoner og oppdater i tilpassingsserien. Beregn feilmålet for de nye vektene. Gjenta prosedyren fra trinn 2 inntil en oppnår akseptable prediksjonsfeil. (Alternativ: bruk Solver.) BØK710 OPERASJONSANALYTISKE EMNER Rasmus Rasmussen
Betydningen av initialisering Eksponensiell glatting legger minst vekt på gamle data. Et stort datasett betyr at gamle verdier/startverdiene har liten betydning. MEN: En lav utjevningskonstant reduserer denne effekten. Når utjevningskonstanten = 0 bygger prognosene KUN på startverdiene! BØK710 OPERASJONSANALYTISKE EMNER Rasmus Rasmussen
Momenter ved feilminimering God tilpassing til historiske data gir ikke nødvendigvis gode prognoser for framtiden. Overtilpassing av historiske data medfører at stokastiske variasjoner er inkludert i modellen. Overtilpassing er en like stor feil som å feilestimere de systematiske mønstrene. BØK710 OPERASJONSANALYTISKE EMNER Rasmus Rasmussen
”Optimale” startverdier I steden for å benytte formler og estimere startverdier ut fra data i initialserien, kan startverdiene optimeres på samme måte som glattingskonstantene , og . Hvis optimale glattingskonstanter = 0, så vil startverdiene alene bestemme prognosene. For store , og betyr startverdiene lite. (Idéen bak eksponensiell glatting.) BØK710 OPERASJONSANALYTISKE EMNER Rasmus Rasmussen
”Optimale” glattingskonstanter Glattingskonstantene , og blir vanligvis optimert for best mulig tilpassing i tilpassingsserien. Hvis optimale glattingskonstanter er små, vil prognosene i liten grad tilpasse seg endringer i dataserien. Det er gunstig hvis det grunnleggende datamønsteret er stabilt, og endringene bare tilfeldige. BØK710 OPERASJONSANALYTISKE EMNER Rasmus Rasmussen
”Manuelle” glattingskonstanter Hvis det er grunn for å tro at de seneste endringene i datamønsteret er utslag av reelle endringer, bør glattingskonstantene være store. Store glattingskonstanter vil derved sørge for at prognosene reflekterer de seneste endringene i dataene. ”Optimale” glattingskonstanter fokuserer ensidig på historiske prognosefeil, og er ikke framtidsrettet. BØK710 OPERASJONSANALYTISKE EMNER Rasmus Rasmussen
Sammenlignbare tester Forskjellige prediksjonsmetoder bruker forskjellige prosedyrer i tilpassingsfasen. Eksponensiell glatting er avhengig av initialiseringsfasen. Dekomponeringsteknikker inkluderer trend/syklus i tilpassingsfasen som om den er kjent. Regresjon vektlegger alle observasjoner likt. Box-Jenkins metoder minimerer MSE vha. ikke-liniære optimeringsmetoder. BØK710 OPERASJONSANALYTISKE EMNER Rasmus Rasmussen
Initialiseringsdata og Testdata For å gjøre de forskjellige metodene sammenlignbare, deles dataene inn i tre: Initialiseringsdataene brukes til å beregne startverdier. Tilpassingsserien brukes til å finne gode glattingskonstanter, dvs. modellparametre. Blindtesten brukes til å estimere prediksjonsfeil for ”genuine” prognoser, dvs. data som ikke har vært brukt til å tilpasse prognosene. BØK710 OPERASJONSANALYTISKE EMNER Rasmus Rasmussen
Tilpassing til gamle data Hvis vi bruker initialserien til å estimere startverdier og tilpassingsserien til å finne optimale modellparametre, og testserien kun til å sammenligne alternative modeller, da har vi tilpasset modellen til de eldste dataene, og valgt den modellen som så gir best tilpassing i tilpassingsserien. Vi antar at det estimerte mønsteret i tilpassingsserien er stabilt og gjelder også for blindtesten. Men er det fornuftig å anta at dette mønsteret også er stabilt i framtiden? BØK710 OPERASJONSANALYTISKE EMNER Rasmus Rasmussen
Tilpassning til nye data Burde vi isteden latt modellene optimere glattingskonstantene for blindtesten, dvs. de siste observasjonene? Da velger vi den modellen som best beskriver de seneste dataene, uten å anta at mønsteret i dataene i initieringsfasen er stabilt. Vi får modeller som er bedre tilpasset de siste endringene. Men da mister vi muligheten til å foreta ”blindtester” av modellene. BØK710 OPERASJONSANALYTISKE EMNER Rasmus Rasmussen
Overtilpassing Om vi tilpasser modellen bare til de seneste data, kan vi lett gå i fellen og overtilpasse modellen. Dvs. vi får en modell som veldig godt passer dataene i testserien, faktisk så godt at den også forklarer tilfeldige variasjoner. De tilfeldige variasjonene er ikke de samme i framtiden! BØK710 OPERASJONSANALYTISKE EMNER Rasmus Rasmussen