In MC FLO stehen Ihnen getreu den berühmten Schokoladeneiern drei Wünsche, respektive Möglichkeiten zur Simulation zur Verfügung. Die erste kann als klassischer Modus bezeichnet werden. Hierbei definieren Sie fenstergestützt oder graphisch die Inputvariablen und legen die Outputvariablen durch Verknüpfungen in der Excel Arbeitsmappe fest. Nach Simulation erhalten Sie die Ergebnisse in einer separaten Excel-Arbeitsmappe, welche Sie in beliebig andere Arbeitsmappen einbinden oder anderen zur Verfügung stellen können. Mit dem zweiten Modus – dem Vorschaumodus – können Sie nach Spezifikation des Modells alle Inputvariablen, Korrelationen und durch Klick auf die entsprechende Outputvariable auch dessen Simulationsergebnis vorab anschauen. Mittels «Copy + Paste» sind Ihnen keine Grenzen gesetzt, die Ergebnisse (etwa die Perzentile) zu kopieren ohne den klassischen Simulationslauf starten zu müssen. Für Zeitreihen kann dieser Schritt jedoch mühsam sein, da zuerst für die historischen Daten ein Prozess zu definieren ist und erst im Anschluss eine Berechnung angestossen werden kann. Für eine fundierte Prognose, welche ohne Ausweis anderer statistischen Kennzahlen auskommen soll, bieten wir Ihnen ab Version Santiago III auch eine Batchfunktion an, welche die oben beschriebenen Schritte automatisch durchführt.
Gehen wir davon aus, dass Sie als Hotelmanager die Belegungszahlen Ihrer Hotels für die Monate März 2017– März 2018 auf Wochenbasis vorliegen haben und eine Belegungsprognose für die nächsten
sieben Wochen durchzuführen ist, wobei die letzte Woche als Basis für die Bestellung der Waren und Disposition herangezogen werden soll (das Excel finden Sie hier).
Ab Excel 2016 können Sie das mit Excel gelieferte «Prognosetool» verwenden, welches eine dreifach exponentielle Glättung als Beispiel eines deterministischen Verfahrens verwendet (im beigefügten Beispiel haben wir direkt die Funktion «=PROGNOSE.ETS(DU3;$E$4:$DZ$4;$E$3:$DZ$3)», beginnend mit Zeile DU20 angesetzt).
In vielen Fällen ist die exponentielle Glättung als ad-hoc Prognose vollkommen ausreichend. Wenn Sie aber die innere Struktur der vorliegenden Daten näher untersuchen wollen, Einblicke in die Logik des Prozesses gewinnen und ohne Aufwand eine risikobasierte Prognose erstellen möchten, raten wir Ihnen eine Analyse der Daten anhand eines Zeitreihenprozesses - wie in MC FLO implementiert - vorzunehmen.
Eine Zeitreihe wird hierbei als Bestandteil zweier Teile erfasst: einer Grundkomponente (etwa den Mittelwert) und einer nicht sichtbaren Zufallskomponente, welcher die Grundkomponente überlagert. Manchmal korrelieren diese Zufallskomponenten über den Zeitablauf (was einen Moving – Average Prozess [MA] begründet) oder die beobachteten Datenpunkte korrelieren direkt miteinander (was einem auto-regressiven Prozess [AR] entspricht). Eine Kombination von beiden definiert dann den ARMA Prozess. Bei AR, MA oder generell den ARMA Prozessen ist es notwendig, dass diese keinen Trend oder saisonale Effekte aufweisen. Sollte dies der Fall sein, sind die Zeitreihen in stationäre Zeitreihen zu überführen (siehe auch unseren Blog), was wir hier ausschliessen.
Bei der Entwicklung von MC FLO lassen wir uns von der Praxis leiten und da heisst die Maxime oft, dass der Weg des geringsten Widerstandes einzuschlagen ist. So ist es häufig so, dass eine
Prognose periodisch für eine fixe Anzahl von Datenpunkten vorgenommen und dies auch noch automatisiert erfolgen soll. In unserem Fall wäre in der nächsten Woche somit eine erneute Prognose für
die darauf folgenden sieben Wochen durchzuführen. Da Prognosen im Rahmen einer Simulation immer als Bandbreitenplanung aufzufassen sind, sollte eine ad-hoc Prognose möglichst flexibel eingesetzt
werden und risikobasiert Aussagen zur Sicherheit («Wahrscheinlichkeit»)
treffen können. Gehört, getan.
In unserem Hotelbeispiel haben wir die mit Santiago III neu implementierte Funktion «=fMC_Batch_Time($E$4:$ZZ$4;7;1;0;10000;0,95)» mit den entsprechenden Parametern in der Zeile 25 eingefügt.
Diese soll aus den vorhandenen IST-Zahlen der Zeilen E bis ZZ eine Prognose für die nächsten sieben Perioden erstellen. Dabei soll ein Zeitprozess herangezogen werden, welcher das Akaide
Informationskriterium minimiert. Oder einfach ausgedrückt: Es soll ein Prozess ausgewählt werden, welcher mit möglichst wenig Parametern auskommt. Zudem soll das 95% Perzentil bei 10'000
Iterationen herangezogen werden. Dies ist gleichbedeutend mit der Aussage, dass eine Sicherheit von 95% besteht die Belegungszahlen mit der ausgewiesenen Grenze nicht zu überschreiten. Für die
Planung ist dies ein wichtiger Eckwert, da eine Fehlplanung zu Lebensmittel -oder Personalengpässen führen kann. Im vorliegenden Fall besteht eine «Wahrscheinlichkeit» von 5%, dass die Nachfrage
an einer bestimmten Woche insgesamt höher als der errechnete Wert zu liegen kommen kann. Hiermit wird übrigens ersichtlich, dass der Value-at-Risk nicht nur allein auf Finanztitel beschränkt
ist.
Bei der Festlegung eines Prozesses ist es sinnvoll, dass die Daten graphisch aufbereitet, vorab kontrolliert und nach Durchlauf auf Konsistenz geprüft werden. Obwohl MC FLO eine Regressionsgerade
automatisch als Entscheidungsunterstützung heranzieht, empfehlen wir eine Kontrolle. In diesem Fall haben wir die Struktur der IST-Daten als Indiz genommen, dass das Heranziehen eines ARMA
Prozesses sachgerecht ist. Falls dies nicht der Fall sein sollte, schlägt MC FLO automatisch die geometrisch brown'sche Reihe oder den ARCH Prozess - bei nicht zeitkonstanter Volatilität - als
Alternative vor.
In MC FLO wird als Prognosewert eine Zahl als Ausdruck eines Zufallsexperiments ermittelt. Diese Zahl ändert sich bei erneuter Wiederholung des Experiments. Das unterscheidet die (stochastischen) Zeitreihenprozesse von deterministischen Ansätzen wie der bereits erwähnten exponentiellen Glättung. Es sollte eine grosse Anzahl der vorzunehmenden Zufallsexperimente (hier 10‘000) gewählt werden, damit die Güte der Prognose als ausreichend erachtet werden kann. Mit der Quantilsschranke (oder auch Perzentil, hier 95%) steuern Sie risikobasiert die Zielgrösse. Nach dem Batchlauf erkennen wir, dass MC FLO einen MA Prozess ausgewählt hat (erkennbar ist dies am von MC FLO eingefügten Kommentar in Zelle D25 und somit gemäss unserer obigen Überlegung) und für die siebte Woche eine Belegungszahl von knapp 322k für das 95% Quantil prognostiziert wird. Wie gesagt, besteht bei diesem Wert eine «Wahrscheinlichkeit» von 5%, dass die effektive Belegungszahl höher als der prognostizierte liegen kann. Schliesslich ist erkenntlich, dass die prognostizierten Zahlen (welche mit dem Begriff Batch in der Graphik erscheinen) mit den IST-Werten sehr gut übereinstimmen und folglich das Heranziehen eines MA Prozesses begründet und gegenüber der exponentiellen Glättung in diesem Fall überlegen ist.
Das grosse «Wow» der Batchfunktion liegt im hohen Automatisierungsgrad durch gestütztes maschinelles Lernen und der Transparenz. Sobald Sie die IST-Daten für die Folgewoche eingegeben haben, brauchen Sie nur noch unter «Sonstiges», «Starte Batch» eine erneute Prognose zu starten, welche in einem ersten Schritt einen geeigneten Prozess automatisch erzeugt und alle Formeln beginnend mit «=fMC_Batch_Time» aktualisiert. So können Sie ohne Mühe eine rollierende Planung/Prognose in Echtzeit in Ihre Modelle einbauen. Probieren Sie es aus!
Update 04.11.2018: Bei den ARMA Prozessen ist Voraussetzung, dass die Volatilität über die Zeit konstant bleibt. Ist dies nicht der Fall, etwa bei Aktienpreisen, wird in MC FLO der ARCH(1) Prozess bei der Batch-Funktion zum Zuge kommen. Kann hingegen keine Korrelation festgestellt werden, wird die geometrisch brownsche Reihe in der Batch-Funktion als Alternative herangezogen.
Update 14.06.2019: Seit dem Update Sofía haben wir die Batch Funktion um die exponentielle Glättung nach Holt-Winters erweitert; so können Sie auch bei Zeitreihen mit Trends und Saisonalisierung eine Simulation vornehmen.
Kommentar schreiben