MEMORY CALCULATION

Ab Version 7.8.3.0 von MC FLO werden Simulationen fakultativ im Arbeitsplatzspeicher des Rechners durchgeführt ("Memory Calculation") und sind so ca. 100x schneller als unter Berücksichtigung der Verknüpfungen von Microsoft Excel. Mit der Memory Calculation sind die Berechnungen sogar schneller als mit Python oder R. Bereits mit Öffnen der Arbeitsmappe wird das Modell geladen und steht sofort bereit. 

 

Unterstützt werden alle die von MC FLO unterstützten diskreten und stetigen Verteilungen.  

 

Die Eingabe erfolgt mit "=_simula_"Verteilung"_MC(Parameter der Verteilung, Optional Anzahl Zufallszahlen). Ausgabe ist ein Spaltenvektor mit n Zufallszahlen der ausgewählten Verteilung. 

 

Beispiel: =simula_Uniform_MC(1;20;2000) erstellt ein Vektor mit 20'000 Zufallszahlen von gleichverteilten Zahlen zwischen 1 und 20. Wird die optionale Anzahl der Zufallszahlen nicht angegeben, wird automatisch ein Vektor von 30'00 Zufallszahlen ausgegeben. Beachten Sie, dass maximal 1'048'576 Zufallszahlen erzeugt und im Arbeitsblatt ausgegeben werden können, andernfalls wird eine Fehlermeldung zurückgegeben. 

 

Über die zusätzlich verfügbare Funktion "=_simula_calculation_MC(Vector1, Vector2, MMOperation) können Sie Operation auf zwei Vektoren anwenden. 

Die möglichen Parameter von MMOperation sind: 

"+" :      Addiert zeilenweise die jeweiligen Werte der beiden Vektoren

"-":       Subtrahiert zeilenweise die jeweiligen Werte der beiden Vektoren

"*":       Multipliziert zeilenweise die jeweiligen Werte der beiden Vektoren

"/":       Dividiert zeilenweise die jeweiligen Werte der beiden Vektoren, Quotient ist Vector2

"*/+":    Multipliziert zeilenweise die jeweiligen Werte der beiden Vektoren und addiert das Ergebnis davon zu Vector1

"*/-":    Multipliziert zeilenweise die jeweiligen Werte der beiden Vektoren und subtrahiert das Ergebnis davon von Vector1

"//+":    Dividiert zeilenweise die jeweiligen Werte der beiden Vektoren und addiert das Ergebnis davon zu Vector1

"//-":    Dividiert zeilenweise die jeweiligen Werte der beiden Vektoren und subtrahiert das Ergebnis davon von Vector1

"Max": Prüft zeilenweise und nimmt jeweils den grössten Wert 

"Min": Prüft zeilenweise und nimmt jeweils den kleinsten Wert 

"com": Führt eine Faltungsoperation (compounding) der beiden Vektoren durch, wobei "Vector1" die möglichen Werte (Schadenshöhe etc.) und "Vector2" die mögliche Anzahl Ereignisse (Anzahl Schadensfälle etc.) widerspiegeln.

 

Sie können neben einem Vector auch eine ganze Zahl angeben. MC FLO setzt dann diese Zahl auf den anderen Vector an. Details können Sie dem Beispiel "Planning.xlsx" entnommen werden. 

 

Beispiel: "=_simula_calculation_MC(_simula_LogNormal_MC(0;10;0.62);_simula_Poisson_MC(5);"com")" führt eine Faltung einer Lognormalverteilung über eine poissonverteilte Häufigkeit durch. Details können dem Beispiel "Compound_Function.xlsx" entnommen werden. 

 

Sie können das Resultat wiederrum als Eingabewert in nativen Microsoft Excel Formeln verwenden, also etwa zur Bildung des Erwartungswert oder die Perzentil Funktion. Details können dem Beispiel "Compound_Function.xlsx" entnommen werden. 

 

Info: Die meisten Operationen, wie Addition oder Subtraktion, können Sie auch mit Microsoft Excel Funktionen durchführen. 

 

Über die Funktion "=_simula_correlation_MC(Vector1, Vector2, CorrCoef, CorrType)" können Sie zwei Vektoren mit dem Korrelationskoeffizient "CorrCoef" und dem Korrelationsmuster "CorrType" korrelieren. Ausgabe ist ein nx2 Matrix mit den korrelierten Wertepaaren und nach Vector2 assoziierten Werten, wobei n der Anzahl Zufallszahlen entspricht. Details können dem Beispiel "Compound_Function.xlsx" und "Planning.xlsx" entnommen werden. 

 

Info: Beachten Sie, dass MC FLO für die Memory Calculation "Dynamische Arrays" von Microsoft Excel verwendet. Die "Dynamische Arrays" stehen erst ab Excel 2016 zur Verfügung. Beachten Sie die von Microsoft publizierten Hilfedateien zu diesem Thema.  

Hinweise

Memory Calculation unterstützt nicht alle Funktionen von MC FLO. Zudem wird immer eine vollständige Neuberechnung durchgeführt. Um eine Neuberechnung zu umgehen, besteht die Möglichkeit, dass die Vektoren als Zahl und nicht mehr als Funktion in der Arbeitsmappe hinterlegt werden. Sie können dann die einmal kommunizierten Zahlen (etwa den Zielwert) immer wieder reproduzieren. 

 

Zur Erhöhung der Auditfähigkeit empfehlen wir die klassische Herangehensweise zur Durchführung von Monte-Carlo Simulationen, wie im Handbuch beschrieben, anzuwenden.