Termelésmenedzsment
Előrejelzési módszerek
Bevezetés _____________________________________________________________________ 2 Az igény összetevői _____________________________________________________________ 3 Konstans jellegű igény előrejelzése ________________________________________________ 5 Előrejelzés mozgó átlaggal _____________________________________________________________ 6 Mozgó átlaggal előre jelzett igény________________________________________________________ 6 Gyakorló feladat _____________________________________________________________________ 8 Megoldás ___________________________________________________________________________ 9 Előrejelzés exponenciális simítással _____________________________________________________ 10 Gyakorló feladat ____________________________________________________________________ 12 Megoldás __________________________________________________________________________ 13
Lineáris trenddel rendelkező igény előrejelzése_____________________________________ 14 Kettős exponenciális simítás, a Holt – módszer ____________________________________________ 14 Gyakorló feladat ____________________________________________________________________ 16 Megoldás __________________________________________________________________________ 16
Előrejelzés szezonális ingadozás esetén____________________________________________ 18 Szemléltető feladat __________________________________________________________________ 19
Az előrejelzési hibák elemzése ___________________________________________________ 20 A követő jel __________________________________________________________________ 20 Szemléltető feladat __________________________________________________________________ 21
Összefoglalás _________________________________________________________________ 23
1
Termelésmenedzsment
Előrejelzési módszerek
Bevezetés Bármely termelő és szolgáltató rendszer egyik legfontosabb bemenő adata a következő periódusokban várható vevői igények. A vevői igények megismerésére többféle lehetőség közül választhatunk. Az előrejelzés alkalmazási területe meglehetősen széles a termelésmenedzsmentben. Röviden tekintsük át a felhasználási kört. 1. Az igények regionális változásai és ezen változások ismerete elengedhetetlen akkor, amikor egy üzem, vagy pl. bevásárló központ telepítéséről és annak tényleges helyéről kell dönteni. 2. Az igény nagyságának változásai befolyásolják a gyártási módot. Az igény aktuális, illetve várható értéke meghatározza, hogy a gyártás során milyen gépeket, berendezéseket vegyünk igénybe. 3. A várható igény fontos kiindulási adat a kapacitástervezéshez. 4. A vállalat beszerzési politikájára szintén hatással van a várható vevői igény szintje. 5. Egy kritikus pont a vállalat gazdálkodásában a készletek felhalmozódása. Ezt akkor tudjuk elkerülni, vagy a szükséges készletszintet tervszerűen beállítani, ha megbízhatóan előre jeleztük a vevői igényeket. Az előrejelzési módszereket az időhorizont alapján is osztályozzuk. A stratégiai tervezés része, hogy a szükséges beruházások helyét és idejét a vállalat vezetése eldöntse. Ehhez a hosszú távú előrejelzés szolgáltat adatokat. Itt a hiba becslése illetve az alkalmazott modell által szolgáltatott adatok megbízhatósága nagyon fontos és megkerülhetetlen kérdés. Középtávú előrejelzés eredményei a taktikai döntéseket segíti elő, melyeket a termelés tervezés során használunk fel bemenő adatként. Itt arról fogunk dönteni, hogy a termékpaletta mely elemeiből a következő időszakban mennyit gyártsunk valójában. Ugyanez kereskedelmi vállalkozásoknál is fontos, hogy választ kapjunk arra a kérdésre, hogy melyik termékből mennyit rendeljünk majd a következő hetek, vagy hónapok során. A termelésprogramozás az operatív döntések közé tartozik, melyhez input adatot a rövid távú előrejelzések szállítanak. Ez sokkal pontosabb adatokat igényel, és ez alapján döntjük el, hogy a műhelyben melyik gépen mely alkatrészeket, vagy termékeket, és milyen sorrendben gyártsuk le, hogy a termelési folyamat a lehető leghatékonyabb legyen. 2
Termelésmenedzsment
Előrejelzési módszerek
Az előrejelzési módszerek két nagy csoportban foglalhatók össze. 1. Kvalitatív módszerek: -
Szakértői becslés,
-
Csoportmunka módszerek,
-
Piackutatás,
-
Történelmi analógiák,
-
Delphy módszer
-
Stb.
2. Kvantitatív módszerek: Projektív módszerek: Az itt tárgyalandó eljárások az igény múltbeli alakulását vizsgálják és a tapasztalt tendenciát kivetítik a jövőre. Kauzális módszerek: Ezek az algoritmusok az igény okát vizsgálják, és abból következtetnek a jövőbeli igényre. Tipikusan ilyen, pl. a regresszió-elemzés.
Az igény összetevői
Vegyük az alábbi esetet. Egy kis élelmiszerüzlet tulajdonosa a szerda esti zárás után leadja megrendeléseit a különböző árucikkeket szállítók felé, melyeket másnap, nyitás előtt kb. egy órával vesz át. Megállapította, hogy aznap 163 kg kenyér fogyott el. Kérdés: Mennyi kenyeret rendeljen csütörtökre, úgy hogy lehetőleg ne fogyjon el már délután kettőre (az üzlet 18.30-ig van nyitva), de ne is maradjon meg sok belőle, hiszen azt másnap (pénteken) már nem lehet eladni. Ne töprengjünk túl sokat a válaszon. Ebből az egy információból mi biztosan nem tudjuk megsúgni neki a legjobb megoldást (legfeljebb véletlenül találnánk el). Az sem biztos, hogy segítene, ha megtudnánk, miszerint egy nappal korábban (kedden), 141 kg kenyeret vásároltak meg tőle vevői. Mint már bizonyára sejtjük, a megoldás; több hétre visszamenőleg ismert adatok alapján valamilyen alkalmas előrejelzési módszer felhasználásával előre jelezni a következő napok várható kenyérszükségletét. A most következő fejezetpontok során a leggyakrabban alkalmazható modelleket ismertetjük. 3
Termelésmenedzsment
Előrejelzési módszerek
Mint azt már korábban láttuk egy meghatározott vevői igény sajnos több tényező együttes eredményeképpen alakul ki. Ezek a már korábban is megismert elemek, úgymint: Átlagos igény Példánkban ez azt jelenti, hogy a kereskedőnk tapasztalata szerint (figyelembe véve a környéken lakók számát, összetételét, életkoruk megoszlását, stb.) 120 és 130 kg közötti mennyiség fogy el mindennap kenyérből. Trend (lineáris) Esetünkben ez azt jelentené, hogy kereskedőnk egy enyhe emelkedést figyelt meg hosszú évek tapasztalata alapján, ami minden héten hétfőtől szombatig tart, azaz minden nap az átlagnál egy kicsivel (de mindennap kb. ugyanannyival, pl. átlagosan 4 kg-mal) több kenyeret keresnek a vevők. Szezonalítás Ilyen hatás megfigyelhető akkor, ha bizonyos időszakonként az átlagosnál kevesebb, máskor pedig az átlagosnál több igény jelentkezik ugyanabból az árucikkből, és mindkét hatás egyforma rendszerességgel jelentkezik újra. (Boltunkban ezt jelentené, ha pl. péntekenként kiugróan alacsony a kenyérvásárlás, mert sok család elutazik hétvégére). Ciklikusság A ciklusok lefolyása teljesen hasonló, mint a szezonális ingadozásoké. Amiért megkülönböztetjük a szezonalítástól, az az időben nagyobb léptéke. Egy ciklus ugyanis több szezont is átfog. Általában az egy éven belüli hullámzásokat szokás szezonnak, az azon túli ingadozást pedig ciklikusságnak nevezni. De ez nem szükséges, hogy mindig így legyen. (pl. egy autópályán megfigyelhetünk heti szezonalításokat, és havi vagy féléves ciklusokat is. Autókorreláció Ezzel az a jelenséget próbáljuk megragadni, amikor valaki észleli, hogy friss kenyér érkezett és bár nem volt szándékában vásárolni, most mégis megteszi. Ez nem minden árucikk esetén fontos összetevő, de pl. divatcikkek esetén egy nagyon fontos hatás, ami az adott árucikk iránti kereslet fejlődését erősíti fel.
4
Termelésmenedzsment
Előrejelzési módszerek
Véletlen hatások Az eddig ismertetett igénykomponensek mind egyszerűen értelmezhetőek. Egy nagyon fontos elem ebben a sorban a véletlen, előre nem látható igényekre is gondoljunk. Ilyen, amikor egy arra járó kirándulócsapat betér kedvenc boltosunkhoz és bevásárol, vagy éppen szokatlanul sok, vagy éppen a szokásosnál kevesebb család utazik el hétvégére. Ezt a véletlent természetesen nem tudjuk semmilyen varázslattal előre megbecsülni. Amire törekszünk, az pusztán az lehet, hogy a véletlen hatások a lehető legkevesebb kellemetlenséget okozzák, azaz hatásuk a többi tényező mellett ne legyen domináns. Kérdés: Ezen eszmefuttatások után hogyan is alakul ki a tényleges igény? Válasz: Az igény pillanatnyi értéke = az igény jellege + véletlen változások Ami az előrejelzési feladatunkat alaposan megnehezíti, az a tény, hogy a fent említett hatások általában egyszerre jelentkeznek. Természetesen nem minden hatás jelenik meg egyforma „erősséggel”, és sok esetben néhány hatás annyira nem felismerhető, hogy akár el is hanyagolhatjuk. Ezzel kapcsolatos felelősségünk az, hogy akár több elemzési módszert kipróbálva, vizsgáljuk meg az adatainkat, és a legkevésbé fontos hatásokat kiszűrve, a legnagyobb súllyal szereplő összetevőket felismerve, helyesen adjuk meg a következő időszak(ok)ra vonatkozó becslésünket.
Konstans jellegű igény előrejelzése
Az előrejelzési feladatok megoldásánál az alábbi jelöléseket használjuk: Dt
az igény tényleges (mért) értéke a „t”-ik periódusban,
Ft,t+τ
a „t” periódusból, a „t + τ” periódusra előre jelzett érték,1
et = Ft – Dt
az előrejelzés hibája (az előre jelzett és a tényleges érték különbsége) a „t” –ik periódusban
1
Amennyiben τ = 1, vagyis a következő periódusra jelzünk előre, akkor csak Ft+1-el jelöljük
5
Termelésmenedzsment
Előrejelzési módszerek
Előrejelzés mozgó átlaggal Nézzük az alábbi esetet. N periódusra előre próbáljuk meg megbecsülni a várható vevői igényeket. Ha nincs semmi támpontunk, akkor első közelítésbe minden hónapra azonos igényt feltételezünk, vagyis F1 = F2 = … = Fi = … = Ft = … = Fj = … = Fn = F Számítsuk ki, hogy ezzel az előrejelzéssel, átlagosan mekkora hibát vétünk periódusonként. Az átlagos hibanégyzet:
ÁHN =
1 N
t−N
∑ ( F − Di) 2 =
i =t −1
1 N
t−N
∑ (F
2
− 2 FDi + Di 2 )
i =t −1
Keressük meg, hogy mely F értékre adódna a legkisebb átlagos hiba: ∂ÁHN 1 = ∂F N
t−N
∑ (2 F − 2 D ) = 0 i
i =t −1
Az egyenletet F-re megoldva: F=
1 N
t−N
∑D
ami nem más, mint az „N” periódusra számított átlagos igény.
i
i =t −1
Az eredmény azt mutatja, ha van „N” periódus (pl. 5 nap), melynek vevői adatai alapján előrejelzést szeretnénk adni az „N+1” – ik periódusra (a 6. napra), akkor a legegyszerűbb módszer, ha az elmúlt „N” periódus (5 nap) adatainak az átlagát veszem. Mindez az első ábrán látható.
Mozgó átlaggal előre jelzett igény
Az első „N” periódus alapján előre jelzett igény:
Ft =
1 N
t−N
1
∑ D = N [D i
t −1
+ Dt − 2 + ... + Dt − N ]
i =t −1
A legutolsó periódus eltelte után, a legfrissebb adat segítségével aktualizáljuk az előrejelzést. Ez azt jelenti, hogy a „t” periódus adata (mint a legfrissebb) bekerül a sorba, a legrégebbi „tN” viszont már kimarad: t−N 1 t − N +1 1 1 1 [ ] ... [ D = D + D + D + D = D + Di − Dt − N ] = Ft + [Dt − Dt − N ] 1 2 1 t t − t − t − N + t i ∑ ∑ N i =t N N N i =t −1 vagyis a mozgó átlag mindig ugyanannyi elem átlagát jelenti, csak a legfrissebb adatok
Ft + 1 =
folyamatosan bekerülnek az átlag képletébe, a legrégebbiek pedig folyamatosan kikerülnek a sorból.
6
Termelésmenedzsment
Előrejelzési módszerek
igény
Dt Dt-1 Dt-2 et Ft-N
Ft-N+1 et-N+1
et-N
Fi ei
et-2 Ft-2
et-1
Ft-1
Ft
Ft+1
Di Dt-N+1
Dt-N
t-N t-N+1 ... i ... t-2
periódus t-1
t
t+1
1. Ábra
Vizsgáljuk meg, hogy ez a módszer milyen hibával dolgozik. A várható értéket jelöljük a statisztikai számításokból már ismert „µ” – vel, a szórást pedig „σ” – val. Vagyis E{D} = µ, VAR{D} = σ. Az előrejelzés hibájának (ei = Fi – Di) várható értéke mozgó átlag esetén: 1 t−N E{Ft − Dt} = E{Ft} − E{Dt} = E ∑ Di − E{Dt} = N i =t −1 1 1 [ E{Dt − 1} + E{Dt − 2} + ... + E{Dt − N}] − E{Dt} = N * µ − µ = 0 N N
Az előrejelzés hibájának (ei = Fi – Di) varianciája és szórása mozgó átlag esetén: 1 t−N VAR{Ft − Dt} = VAR{Ft} + VAR{Dt} = VAR ∑ Di + VAR{Dt} = N i =t −1 1 2 [VAR{Dt − 1} + VAR{Dt − 2} + ... + VAR{Dt − N}] + VAR{Dt} = N 1 1 Nσ 2 + σ 2 = σ 2 + 1 2 N N
7
Termelésmenedzsment
Vagyis
σe = σ 1 +
Előrejelzési módszerek 1 N
Gyakorló feladat
Ismert egy repülőgép motorok javításával foglalkozó üzem esetén a javított motorok negyedévenkénti mennyisége két évre visszamenőleg. Végezzen előrejelzést a következő negyedévre!
Negyedév
Di
MA(3)
Hiba
MA(6)
Hiba
1
200
-
-
-
-
2
250
-
-
-
-
3
175
-
-
-
-
4
186
208
22
-
-
5
225
204
-21
-
-
6
285
195
-90
-
-
7
305
232
-73
220
-85
8
190
271
81
238
48
260
?
228
?
9 1. Táblázat
8
Termelésmenedzsment
Előrejelzési módszerek
Megoldás
Először vegyük mindig a legutolsó három periódus átlagát, a táblázatban MA(3) – al jelölve: 200 + 250 + 175 F4 = = 208,33 ≈ 208 3 250 + 175 + 186 F5 = = 203,67 ≈ 204 3 175 + 186 + 225 F6 = = 195,33 ≈ 195 3 186 + 225 + 285 F7 = = 232 3 225 + 285 + 305 F8 = = 271,67 ≈ 272 3 285 + 305 + 190 F9 = = 260 3
Hogyan változik az eredmény, ha kétszer ekkora időtávot fogunk át az átlaggal, pl. 6 periódust [a táblázatban MA(6)]?
200 + 250 + 175 + 186 + 225 + 285 F7 = = 220,17 ≈ 220 6 250 + 175 + 186 + 225 + 285 + 305 F8 = = 237,67 ≈ 238 6 175 + 186 + 225 + 285 + 305 + 190 F9 = = 227,67 ≈ 228 6 Az eredmények a kiindulási adatokkal és az előrejelzés hibáival az 1. táblázatban megtalálhatók. A 2. ábra az adatokat és az eredményeket grafikus formában mutatja meg.
száma
Meghibásodások
M e g o ld á s m o z g ó á tla g g a l 350 300 250 200 150 100 50 0 1
2
3
4
5
6
7
8
9
N eg yed év M e g h ib á s o d á s o k s z á m a
M A (3 )
M A (6 )
2. Ábra
9
Termelésmenedzsment
Előrejelzési módszerek
Előrejelzés exponenciális simítással
Az exponenciális simítás két adatot használ fel a következő periódusra történő előrejelzéshez. Az egyik, a legutóbbi ismert (mért) tényleges igény, a másik az ugyanerre a legutóbbi periódusra előre jelzett érték (becsült). E két tag súlyozott átlaga adja a következő periódusra szóló előrejelzést. A súlyszámot „α”-val jelöljük. Értéke 0 és 1 között elvileg tetszőleges lehet. Az algoritmus a következőképpen működik: Előrejelzés a következő periódusra = α * a mostani periódus mért értéke + (1-α) * a mostani periódusra (korábban) előre jelzett (becsült) érték Képletben: 0≤α≤1
Ft = αDt-1 + (1-α)Ft-1
Ha felbontjuk a zárójelet, és átstrukturáljuk a változókat: Ft = Ft-1 – α(Ft-1 – Dt-1) = Ft-1 – αet-1 Azért hívják exponenciális simításnak, mert ha elkezdünk az első képletünkbe visszahelyettesíteni, vagyis minden Fi tag helyett azt, hogy hogyan is számítható: Ft = αDt-1 + (1-α)Ft-1 = αDt-1 + (1-α)[αDt-2 + (1-α)Ft-2] = αDt-1 + (1-α){αDt-2 + (1-α)[αDt-3 + (1-α)Ft-3]} = … ha elvégezzük a tagok összegyűjtését: Ft = αDt-1 + α(1-α)Dt-2 + α(1-α)2Dt-3 + α(1-α)3Dt-4 + … + α(1-α)t-1D0 + (1-α)tF0 akkor egy olyan polinomot kapunk, melynek tagjainál a súlyszámok exponenciálisan változnak. Zárt képletté alakítva: t −1
Ft = ∑α (1 − α ) i Dt −i −1 + (1 − α ) t F 0 i =0
ha az előrejelzést nagyon hosszú ideig végezzük, vagyis t → 0, akkor a súlyszámok összege: ∞
∞
i =0
i =0
∑α (1 − α ) i = α ∑ (1 − α ) i = α
1 =1 1 − (1 − α )
Exponenciális simítás esetén az előre jelzett igény tehát az összes múltbeli igény súlyozott átlaga úgy, hogy az egyes tagok súlya exponenciálisan csökken az idő múlásával. Így a legrégebbi tagok súlya gyakorlatilag elhanyagolható. Ez segít válaszolni a következő kérdésre, mely valószínűleg mindenkiben felmerül, aki megpróbál az algoritmus segítségével előrejelzést készíteni. Látjuk, hogy a képlet „visszafelé” a végtelenségig mehetne.
10
Termelésmenedzsment
Előrejelzési módszerek
Ezért kénytelenek vagyunk valahol megszakítani a sort, és egy tetszés szerint választott időponttól kezdeni a számítást. Ezt hívjuk inicializálásnak. Ezt megtehetjük, pl. úgy, hogy az „első” előre jelzett és tényleges érték legyen egymással egyenlő, azaz F0 = D0. Hogy hol inicializáljunk, vagyis hol legyen az „első” tag az adatsorban, az függ a választott α értéktől is. Minél nagyobb ugyanis az α, annál kevesebb tagot érdemes a korábbi előrejelzések sorozatából figyelembe venni, mert már néhány tag után gyakorlatilag nullához közeli súlyszámmal szerepelnének. Ha α kicsi, akkor több tagnak van érzékelhető súlya a következő előrejelzés kiszámításához. Ezt a viszonyt, a 2. és 3. ábra mutatja meg. Figyeljük meg, hogy α = 0,1 -nél (2. ábra) még a harmincadik tagnak is van (bár csekély) szerepe, míg α = 0,9 -nél (3. ábra) már a tizedik tag súlya is gyakorlatilag nullává vált.
alfa = 0,1
súly
1 0,5 0 1
10 19 28 37 46 55 64 73 82 91 100 i
3. Ábra
alfa = 0,9
súly
0,15 0,1 0,05 0 1
10 19 28 37 46 55 64 73 82 91 100 i
4. Ábra
11
Termelésmenedzsment
Előrejelzési módszerek
Az előrejelzési hiba várható értéke exponenciális simítás esetén: E{Ft − Dt} = E{Ft} − E{Dt} = E{αDt − 1 + α (1 − α ) Dt − 2 + ... + α (1 − α ) t −1 D 0 + (1 − α ) t F 0} − E{Dt} = = [αE{Dt − 1} + α (1 − α ) E{Dt − 2} + ... + α (1 − α ) t −1 E{D 0} + (1 − α ) i E{F 0}] − E{Dt} = = µ[α + α (1 − α ) + ... + α (1 − α ) t −1 ] + (1 − α ) t {F 0} − µ ≈ µ + 0 − µ = 0 Az előrejelzés hibájának (ei = Fi – Di) varianciája és szórása mozgó átlag esetén:
VAR{Ft − Dt} = VAR{Ft} + VAR{Dt} = = VAR{αDt − 1 + α (1 − α ) Dt − 2 + ... + α (1 − α ) t −1 D 0 + (1 − α ) t F 0} + VAR{Dt} = = [VAR{αDt − 1} + VAR{α (1 − α ) Dt − 2} + ... + VAR{α (1 − α ) t −1 D 0} + VAR{(1 − α ) i F 0}] + VAR{Dt} = = [α 2σ 2 + α 2 (1 − α ) 2 σ 2 + ... + α 2 (1 − α ) 2( t −1) σ 2 ] + (1 − α ) 2t VAR{F 0} + σ 2 = = α 2σ 2 [1 + (1 − α ) 2 + ... + (1 − α ) 2 ( t −1) ] + (1 − α ) 2t VAR{F 0} + σ 2 ≈ α 2σ 2
1 +σ 2 = 2 1 − (1 − α )
α2 2 + 1 = σ 2 2 2 −α 2α − α
σ 2
Vagyis
σe = σ
2 2 −α
Gyakorló feladat
Az előző feladat adatait felhasználva jelezzük előre a kilencedik negyedévre várható igényt exponenciális simítással.
Negyedév
Di
Exp(α=0,1)
Hiba
Exp(α=0,7)
Hiba
1
200
200
0
200
0
2
250
200
-50
200
-50
3
175
205
30
235
60
4
186
202
16
193
7
5
225
200
-25
188
-37
6
285
203
-82
214
-71
7
305
211
-94
264
-41
8
190
220
30
293
103
217
?
221
?
9
12
Termelésmenedzsment
Előrejelzési módszerek
Megoldás
Inicializálás:
F1 = D1 α = 0,1
α = 0,7 F2 = 0,7*200 + (1 - 0,7)*200 = 200
F3 = 0,1*250 + (1 - 0,1)*200 = 205
F3 = 0,7*250 + (1 - 0,7)*200 = 235
F4 = 0,1*175 + (1 - 0,1)*205 = 202
F4 = 0,7*175 + (1 - 0,7)*235 = 193
F5 = 0,1*186 + (1 - 0,1)*202 = 200,04 ≈ 200
F5 = 0,7*186 + (1 - 0,7)*193 = 188,1≈188
F6 = 0,1*225 + (1 - 0,1)*200,04 = 202,86 ≈ 203
F6 = 0,7*225 + (1-0,7)*188,1=213,93≈214
F7 = 0,1*285 + (1 - 0,1)*202,86 = 211,074 ≈ 211
F7=0,7*285+(1-0,7)*213,93=263,679≈264
F8 = 0,1*305 + (1 - 0,1)*211,074 = 220,46 ≈ 220
F8=0,7*305+(1-0,7)*263,679=292,60≈293
F9 = 0,1*190 + (1 - 0,1)*220,46 = 217,42 ≈ 217
F9 = 0,7*190+(1-0,7)*292,60=220,78≈221
Javítások száma
F2 = 0,1*200 + (1 - 0,1)*200 = 200
400 300 200 100 0 1
2
3
4
5
6
7
8
9
Periódus Előrejelzés (alfa=0,1) Meghibásodások száma
Előrejelzés (alfa=0,7)
5. Ábra
13
Termelésmenedzsment
Előrejelzési módszerek
Lineáris trenddel rendelkező igény előrejelzése
A lineáris trend azt jelenti, hogy az igény periódusról periódusra folyamatosan növekszik. A növekedés üteme (azaz két egymást követő periódusban észlelt igény közötti különbség) állandó illetve csak a már ismertetett véletlen ingadozást mutatja. Ilyen esetben a kettős
exponenciális simítást használjuk, melyet gyakran Holt – módszernek is neveznek.
Kettős exponenciális simítás, a Holt – módszer
Az eljárás alapgondolata ugyanaz, mint amit már megismertünk az exponenciális simítás során, vagyis a különböző periódusokban észlelt igényeket nem egyforma „erősséggel” vesszük figyelembe. Lineáris trendnél kettéválasztjuk a feladatot. Egyrészt minden megfigyelt tényleges Di értékből megpróbáljuk „kihámozni” az átlagos értéket, hiszen a megfigyelt Di érték egy lineárisan növekedő igényt rejt. Az átlagos érték azért fontos, mert erre állna be az igény, amennyiben a trendhatás hirtelen megszűnne. Maga a növekedési ütem (trend) az egymást követő periódusok átlagainak különbsége. Sajnos a periódusok közötti növekedés mértéke (maga a trend) szintén ingadozik, így a trend simításához szintén szükségünk van egy simítási paraméterre, amit „β” -val jelölünk. A trend ingadozása azt jelenti, hogy pl. megállapítjuk valamely igény növekedési üteme átlagosan havi 2%. Ez jelentheti azt, hogy az első és második hónap között 2% -ot mérünk, a második és harmadik között 2,2 % -ot, a harmadik és negyedik között 1,9 % -ot stb. Vagyis a trend ugyanúgy ingadozik, mint az átlagos igény. Az előrejelzés ebből a két külön – külön simított adatból, azok összegeként adódik. Képletünk a következő: Az állandó (átlagos) igény előrejelzése:
St = α * Dt + (1 − α ) * (St − 1 + Gt − 1)
A trend (növekedési ütem) előrejelzése:
Gt = β * (St − St − 1) + (1 − β ) * Gt − 1
Az előrejelzés ebből a két részből áll: Ft+1 = St+Gt Ha a „t” -ik periódus alapján nemcsak a következő, hanem későbbi periódusokra is előrejelzést akarunk adni (többlépcsős előrejelzés), akkor Ft,t+τ = St+τ*Gt. A 6. ábra azt szemlélteti, hogy miként működik a Holt – módszer.
14
Termelésmenedzsment
Előrejelzési módszerek
Fi Di Ft+2 Gt+1
Ft+1 Gt
Dt
St+1-St
St+1
Ft Dt-1
Gt-1
St-St-1
St
Dt-2 Ft-1
Gt-2
St-1-St-2
St-1
St-2
t-2
t-1
t
t+1
t
6. Ábra
Az ábrából leolvasható hogy az St-2 + Gt-2 = Ft-1 azaz az előre jelzett érték a két külön simított adat összege. Ugyanígy tovább, az St-1 + Gt-1 = Ft valamint St + Gt = Ft+1. Ez periódusról periódusra ismétlődik. Az α, és a β simítási tényezőkre ugyanaz az elméleti megfontolás érvényes, mint amit már az exponenciális simítás tárgyalása során végiggondoltunk. Célunk az, hogy stabil prognózisunk legyen a közeli jövőben várható igényekről. A simítási állandók mindig az aktuális megfigyelések súlyát jelentik, így ha az értékük nagy, akkor a legutolsó esemény súlya meghatározó lesz a későbbi előrejelzésekben. Ezért kell ezeket inkább kicsire választani.
15
Termelésmenedzsment
Előrejelzési módszerek
Kettős exponenciális simítás esetén ehhez hozzájön még az, hogy két külön simítást végzünk. A második simítástól (ami a meredekségeket simítja), viszont azt várjuk, hogy legalább annyira stabil legyen, mint az első simítás, ami az átlagigényt próbálja meg az adatsorból kihámozni. Azaz β ≤ α egyenlőtlenségnek kell(ene) teljesülnie. Gyakorló feladat
A már jól ismert repülőgépes feladatot oldjuk meg a Holt módszer segítségével is:
Negyedév
Di
Si
Gi
Fi
Hiba
0
-
200
10
1
200
209
9,9
210
10
2
250
222,01
10,21
218,9
-31,10
3
175
226,50
9,64
232,22
57,22
4
186
231,12
9,14
236,14
50,14
5
225
238,74
8,98
240,26
15,26
6
285
251,45
9,36
247,72
-37,28
7
305
265,23
9,80
260,81
-44,19
8
190
266,52
8,95
275,02
85,02
275,47
?
9
Megoldás
A kezdeti értékek legyenek az alábbiak (inicializálás): S0 = 200;
G0 = 10;
α = 0,1;
β = 0,1
F1 = S0 + G0 = 200 + 10 = 210
S1 = 0,1*200+(1-0,1)*(200+10) = 209 G1 = 0,1*(209-200)+ (1-0,1)*10 = 9,9 F2 = 209 + 9,9 = 218,9 ≈ 219
S2 = 0,1*250+(1-0,1)*(209+9,9) = 222,01 G2 = 0,1*(222,01-209)+ (1-0,1)*9,9 = 10,21 F3 = 222,01 + 10,21 = 232,22 ≈ 232
16
Termelésmenedzsment
Előrejelzési módszerek
S3 = 0,1*175+(1-0,1)*(222,01+10,21) = 226,50 G3 = 0,1*(226,50-222,01)+ (1-0,1)*10,21 = 9,64 F4 = 226,50 + 9,64 = 236,14 ≈ 236
S4 = 0,1*186+(1-0,1)*(226,50+9,64) = 231,124 G4 = 0,1*(231,124-226,50)+ (1-0,1)* 9,64 = 9,137 F5 = 231,124 + 9,137 = 240,261 ≈ 240
S5 = 0,1*225+(1-0,1)*( 231,124+9,137) = 238,735 G5 = 0,1*(238,735-231,124)+ (1-0,1)* 9,137 = 8,985 F6 = 238,735 + 8,985 = 247,720 ≈ 248
S6 = 0,1*285+(1-0,1)*( 238,735+8,985) = 251,448 G6 = 0,1*(251,448-238,735)+ (1-0,1)* 8,985 = 9,358 F7 = 251,448 + 9,358 = 260,806 ≈ 261
S7 = 0,1*305+(1-0,1)*( 251,448+9,358) = 265,225 G7 = 0,1*(265,225-251,448)+ (1-0,1)* 9,358 = 9,800 F8 = 265,225 + 9,800 = 275,025 ≈ 275
S8 = 0,1*190+(1-0,1)*( 265,225+9,800) = 266,522 G8 = 0,1*(266,522-265,225)+ (1-0,1)* 9,800 = 8,949 F9 = 266,522 + 8,949 = 275,471 ≈ 275
17
Termelésmenedzsment
Előrejelzési módszerek
Előrejelzés szezonális ingadozás esetén
Szezonális ingadozás alatt azt értjük, amikor az igény egy átlagos érték, vagy lineáris trend körül ingadozik. Periódusnak nevezzük azt az időszakot, mely minden szezont csak egyszer tartalmaz. Egy perióduson belül a szezonok számát „N” – el jelöljük. Mindez az alábbi ábrán is látható. Az azonos szezonokat (melyeket ugyanaz a betű jelez) a könnyebb felismerhetőség érdekében összekötöttük. igény
d
d
c
c a
a
b
b
idő 1
2
3
4
5
6
7
N=4
N=4
periódus
periódus
8
7. Ábra
Az egyes szezonokon belül a periódus átlagától való eltérést a szezonindex segítségével fejezzük ki. A szezonindex nem más, mint az igény aktuális értékének és a periódus átlagos értékének normalizált hányadosa: ct =
Dt Dátlag
Dátlag =
1 N ∑ Dt N t =1
18
Termelésmenedzsment
Előrejelzési módszerek
Ha egy adatsorban helyesen ismertük fel a szezonalítást, akkor ezt úgy ellenőrizhetjük, hogy a N
szezonindexek összege ( ∑ ct ) megegyezik a szezonok számával (N), melyet az alábbi kis t =1
átalakítással is beláthatunk. N
N
Dt
∑c = ∑ D t
t =1
t =1
átlag
=
N 1 N 1 Dt = Dt = N ∑ ∑ 1 N Dátlag t =1 t =1 ∑ Dt N t =1
Sajnos bonyolultabb esetben, pl. ha az átlag igény trend szerint változik, akkor az átlagértéket általában regressziós egyenes segítségével számíthatjuk ki.
Szemléltető feladat
Megfigyelték, hogy egy terméknél, az első félévben a kereslet, rendszeresen alacsonyabb, mint a második félévben. Ezt úgy tekinthetjük, hogy az év a periódus, mely két szezonból (első ill. második félév) áll. Egy adott évben az első félévi igény 100 db. (D1 = 100), a második félévben 300 db. (D2 = 300). A szezonalítási faktorok (ct) az alábbiak szerint számíthatók ki.
Dátlag =
D1 + D 2 100 + 300 400 = = = 200 2 2 2
Az első félév (első szezon) szezonindexe:
c1 =
D1 100 = = 0,5 Dátlag 200
A második félév (második szezon) szezonindexe:
c2 =
300 D2 = = 1,5 Dátlag 200
Ellenőrzésként a szezonindexek összege meg kell egyezzen a szezonok számával: c1 + c2 = 0,5 + 1,5 = 2 (=N)
19
Termelésmenedzsment
Előrejelzési módszerek
Az előrejelzési hibák elemzése
Az előrejelzés során tudomásul kell vennünk, hogy valamekkora hibát biztosan elkövetünk, hiszen a véletlen hatásokat nem tudjuk kiküszöbölni. Az is nyilvánvaló, hogy minél távolabbi időre vonatkozik az előrejelzés, annál nagyobb a hiba valószínűsége is, és mértéke is. A hibák elemzéséhez sok különböző mutató felhasználható. Ezek egy része agregálható, egy részének a periódusonkénti változása követhető. Az alábbiakban áttekintünk néhány jellegzetes mutatót. Az előrejelzési hiba:
et = Ft − Dt
Átlagos eltérés (hiba):
ÁEt =
Átlagos abszolút eltérés (hiba):
ÁAEt =
1 t ∑ ei t i =1
Átlagos négyzetes eltérés (hiba):
ÁNEt =
1 t 2 ∑ ei t i =1
Relatív (százalékos) eltérés (hiba):
REt =
Átlagos relatív (százalékos) eltérés (hiba):
ÁREt =
1 t ∑ ei t i =1
Ft − Dt *100 Dt 1 t 1 t Ft − Dt *100 REi = * ∑ ∑ t i =1 t i =1 Dt
Átlagos abszolút relatív (százalékos) eltérés (hiba): ÁAREt =
1 t 1 t Ft − Dt i *∑ *100 RE = ∑ t i =1 t i =1 Dt
Az előrejelzés „jóságának” megállapításához nagy segítséget nyújt a követő jel kiszámítása és nyomon követése. A követőjelet minden egyes periódusra kiszámítjuk, és a változását figyelemmel követjük. A követő jel
A követő jel kiszámításához két tényezőt kell folyamatosan (minden periódusra) kiszámítanunk. Az egyik az előrejelzési hiba futó összege, melynél előjelesen összegezzük az előrejelzés során elkövetett hibákat. Képlete: t
EHFÖt = ∑ ei i =1
Ez az érték azt mutatja meg, hogy előre haladva az időben, a módszerünk alul- és felülbecslésből származó hibái, mennyire egyenlítik ki egymást. Gondoljunk arra, hogy az előző periódusban pl. 100 db. plüssmacival több igényt jeleztünk előre, így ennyi maradt raktáron. 20
Termelésmenedzsment
Előrejelzési módszerek
Erre a hónapra pedig 100 db. –al kevesebbet becsültünk, így két hónapra vetítve, végül is nagyon jó előrejelzést sikerült adni. Természetesen ez egy sarkított eset, de fontos tudnunk, hogy az előrejelzési módszer görgetett hibája mekkora, hiszen ha ez a hiba, pl. lineáris trend szerint növekszik, akkor azt bizonyítja, hogy a kiválasztott módszer nagyon rossz. A másik, az átlagos abszolút eltérés, mely a fenti képletgyűjteményben is megtalálható: ÁAE =
1 t ∑ ei t i =1
Ez a szám azt mutatja meg, hogyan változik az előrejelzési módszer átlagos hibája az idő előrehaladásával. Figyeljük meg, hogy itt minden periódusban a hiba abszolút értékét vesszük, és ezek átlagát számítjuk ki. Ekkor ugyanis nem kompenzálják egymást az aláilletve fölébecslésből származó eltérések, hanem a tényleges hibákkal dolgozunk, ami azt jelenti, hogy ugyanolyan rossz ha alábecsüljük az igényt, mintha fölé becsüljük. E két mutatószám hányadosa a követő jel. Képlete: KJt =
EHFÖt ÁAEt
Szemléltető feladat
Ft
Dt
et
REt(%)
Január
1000
950
50
5,263
Február
1000
1070
-70
-6,542
Március
1000
1100
-100
-9,091
Április
1000
960
40
4,167
Május
1000
1090
-90
-8,257
Június
1000
1050
-50
-4,762
Átlagos eltérés (ÁE)
-36,667
Átlagos abszolút eltérés (ÁAE)
66,667
Átlagos négyzetes eltérés (ÁNE)
4933,33
Átlagos relatív eltérés (ÁRE(%))
-3,204
Átlagos abszolút relatív eltérés (ÁARE(%))
6,347
21
Termelésmenedzsment
Előrejelzési módszerek
A követő jel számítása az alábbi táblázatban található: Ft
Dt
et
EHFÖt
ÁAE
KJt
Január
1000
950
50
50
50
1,00
Február
1000
1070
-70
-20
60
-0,33
Március
1000
1100
-100
-120
73,33
-1,64
Április
1000
960
40
-80
65
-1,23
Május
1000
1090
-90
-170
70
-2,43
Június
1000
1050
-50
-220
66,67
-3,30
A követő jelet az alábbi grafikonon ábrázoljuk.
KJ
Követő jel 2 1 0 -1 -2 -3 -4
1 1
2
-0,33
3
-1,64
4 -1,23 5
6 -2,43 -3,3
Periódus 8. Ábra
A követő jelet diagramon ábrázolva, és elemezve arra kell törekednünk, hogy értéke – 4,…,6 < KJt > + 4,…,6 között legyen. Amennyiben egyszer - kétszer kiugrik a megadott tartományból az nem baj, fontos az, hogy minden ilyen „kiugrás” után visszatérjen a megadott tartományba.
22
Termelésmenedzsment
Előrejelzési módszerek
Összefoglalás
Az idősor elemzés elvén működő előrejelzési módszereket három kategóriában vizsgáljuk, mert a napi gyakorlatban ilyen típusú adatsorokkal találkozunk. 1. „Általános” igény, azaz semmi torzító hatás, nem észlelhető. A pillanatnyi igény, egy jól meghatározható átlagérték körül a véletlen hatások befolyásával változik, mely egyszerűen számítható mozgó átlag vagy exponenciális simítás segítségével. 2. Világosan megfigyelhető egy periódusról periódusra történő határozott emelkedés, vagy csökkenés, melynek mértéke szintén valamilyen átlagérték körül változik. Ezt a folyamatot követhetjük a Holt módszer, vagyis a kettős exponenciális simítás segítségével, de esetenként használhatjuk a regressziós elemzést is. 3. Szintén gyakori eset, hogy az idősor valamilyen szabályos és ismétlődő ingadozást mutat egy jól meghatározható időszak alatt. Ebben az esetben szezonális ingadozásról van szó, mely jelenség felismerését és kezelését az ismertetett szezonindexek segítségével tehetjük meg. Az előrejelzési módszerek sokféleségéből sejthetjük, hogy egy szövevényes adatsor esetén lehet, hogy több módszert is ki kell próbálni, mielőtt a végleges előrejelzésünket megadnánk. Ez persze történhet úgy is, hogy ugyanazon modell keretein belül például a paramétereket váltogatjuk valamilyen szabály szerint, mindaddig, amíg olyan eredményt nem kapunk, melynek várható hibája még az adott esetben elviselhető kockázatot jelent.
23