|
|
Wie schreibt man eine Monte-Carlo Simulation in Matlab |
|
MatlabNeuling2017 |
Forum-Fortgeschrittener
|
|
Beiträge: 91
|
|
|
|
Anmeldedatum: 28.06.17
|
|
|
|
Wohnort: ---
|
|
|
|
Version: R2017a
|
|
|
|
|
|
Verfasst am: 11.06.2018, 14:24
Titel: Wie schreibt man eine Monte-Carlo Simulation in Matlab
|
|
Hallo Matlab-Community,
ich würde gerne eine Monte-Carlo-Simulation in Matlab bzgl. der Genauigkeit einer Aufnahmekonfiguraton in der Photogrammetrie schreiben. D. h. für die Genauigkeitsberechnung gibt es schon eine Formel.
Meine Frage:
Wie funktioniert eine Monte-Carlo-Simulation und wie schreibt man das in Matlab?
Mein Ziel:
Ich möchte das bestmögliche Ergebnis herausbekommen für die aktuelle Konfiguration und dann noch optimierte Varianten berechnen.
Ich stellle mir das so vor, dass ich die 5 Parameter in gewissen Bereichen durchiteriere und dann mir das kleinste Ergebnis ausgeben lasse.
Kann mir jemand bei der Realisierung der Monte-Carlo-Simulation helfen?
Grüße,
MatlabNeuling2017
|
|
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.434
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 11.06.2018, 14:35
Titel:
|
|
Hallo,
letztlich ist die Umsetzung einer Monte Carlo-Simulation, dass man dasselbe Experiment wiederholt (z.B. mit unterschiedliche Parametersätzen, Zufallszahlen, etc.) durchführt, z.B. in einer for-Schleife.
Grüße,
Harald
|
|
|
MatlabNeuling2017 |
Themenstarter
Forum-Fortgeschrittener
|
|
Beiträge: 91
|
|
|
|
Anmeldedatum: 28.06.17
|
|
|
|
Wohnort: ---
|
|
|
|
Version: R2017a
|
|
|
|
|
|
Verfasst am: 11.06.2018, 14:58
Titel:
|
|
Also ich habe als Gleichung folgendes:
sz = ((h^2)/(b*c))*spx'
Ich möchte die Parameter h, b, c, spx' varieren und jedesmal einen Durchlauf/eine Berechnung machen lassen.
Und das nennt sich dann Monte Carlo Simulation?
Ich habe etwas über Monte-Carlo-Simulation gelesen und dabei stand, dass die Zufallszahlen, die als input verwendet werden, bestimmte Verteilungen haben sollten.
Stimmt das?
Grüße,
MatlabNeuling2017
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.434
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 11.06.2018, 15:02
Titel:
|
|
Hallo,
ich verstehe unter Monte Carlo-Simulationen die wiederholte Durchführung eines Experiments mit unterschiedlichen Sätzen von Zufallszahlen. Das kann aber je nach Fachbereich unterschiedlich sein.
Was du vorhast, würde ich als "Parameterstudie" bezeichnen. Wenn du bestimmte Einschränkungen für die Parameter hast und eine optimale Kombination bestimmen willst, würde ich das als Optimierungsproblem angehen.
Grüße,
Harald
|
|
|
MatlabNeuling2017 |
Themenstarter
Forum-Fortgeschrittener
|
|
Beiträge: 91
|
|
|
|
Anmeldedatum: 28.06.17
|
|
|
|
Wohnort: ---
|
|
|
|
Version: R2017a
|
|
|
|
|
|
Verfasst am: 11.06.2018, 15:18
Titel:
|
|
Hallo Harald,
für dieses Optimierungsproblem brauche die Monte-Carlo-Simulation nicht?
Wie kann ich denn dann dieses Optimierungsproblem angehen?
Grüße,
MatlabNeuling2017
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.434
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 11.06.2018, 15:27
Titel:
|
|
Hallo,
Zitat: |
für dieses Optimierungsproblem brauche die Monte-Carlo-Simulation nicht? |
Würde ich so sehen.
Zitat: |
Wie kann ich denn dann dieses Optimierungsproblem angehen? |
Das kommt vor allem auf die Nebenbedingungen an. Mögliche Funktionen wären fminsearch, fminunc und fmincon.
Grüße,
Harald
|
|
|
MatlabNeuling2017 |
Themenstarter
Forum-Fortgeschrittener
|
|
Beiträge: 91
|
|
|
|
Anmeldedatum: 28.06.17
|
|
|
|
Wohnort: ---
|
|
|
|
Version: R2017a
|
|
|
|
|
|
Verfasst am: 11.06.2018, 15:34
Titel:
|
|
Hallo Harald,
also Nebenbedingungen habe ich jetzt nichts großartiges:
0<h<2000
0<b<1000
c = konst. für den Moment
spx' = konst. für den Moment.
Die letzten beiden Parameter kann man dann evtl. im nächsten Schritt verändern.
es gäbe evtl. noch eine Bedingung von der h abhängt, aber das muss ich noch recherchieren.
Aber grundsätzlich läuft das dann so, oder:
für jeden Parameter mit for-Schleife eine Variation durchführen, Ergebnissse berechnen und Minimum/Minima der Ergebnisse ausgeben lassen.
Grüße,
MatlabNeuling
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.434
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 11.06.2018, 16:06
Titel:
|
|
Hallo,
das wäre die Parameterstudie. Bei einem Optimierungsproblem wird automatisch bestimmt, welche Parameter untersucht werden sollen.
Was ist denn die Zielsetzung? Soll sz minimiert oder maximiert werden?
Ich würde vermuten, dass die Lösung in beiden Fällen recht trivial ist...
Minimum: h möglichst klein und b möglichst groß
Maximum: umgekehrt.
Grüße,
Harald
|
|
|
MatlabNeuling2017 |
Themenstarter
Forum-Fortgeschrittener
|
|
Beiträge: 91
|
|
|
|
Anmeldedatum: 28.06.17
|
|
|
|
Wohnort: ---
|
|
|
|
Version: R2017a
|
|
|
|
|
|
Verfasst am: 12.06.2018, 10:48
Titel:
|
|
Hallo Harald,
ja das siehst du richtig so:
Zitat: |
Minimum: h möglichst klein und b möglichst groß
Maximum: umgekehrt.
|
Die Lösung an sich ist trivial, aber ich möchte verschiedene Kombinationen an Zahlen für die Parameter automatisiert durchlaufen lassen, um einen Vergleich zu haben.
sz soll übrigens minimiert werden und ich möchte herausbekommen, was möglich ist mit einem gegebenen Aufbau.
Grüße,
MatlabNeuling2017
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.434
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 12.06.2018, 11:00
Titel:
|
|
Hallo,
Zitat: |
Die Lösung an sich ist trivial, aber ich möchte verschiedene Kombinationen an Zahlen für die Parameter automatisiert durchlaufen lassen, um einen Vergleich zu haben. |
Dann wie gesagt die Parameterstudie, also eine for-Schleife über die Parameterkombinationen. In diesem einfachen Fall sollte das auch vektorisiert gehen.
Grüße,
Harald
|
|
|
|
|
Einstellungen und Berechtigungen
|
|
Du kannst Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen. Du kannst Dateien in diesem Forum posten Du kannst Dateien in diesem Forum herunterladen
|
|
Impressum
| Nutzungsbedingungen
| Datenschutz
| FAQ
| RSS
Hosted by:
Copyright © 2007 - 2024
goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks
MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.
|
|