WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Wie schreibt man eine Monte-Carlo Simulation in Matlab

 

MatlabNeuling2017
Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 91
Anmeldedatum: 28.06.17
Wohnort: ---
Version: R2017a
     Beitrag Verfasst am: 11.06.2018, 14:24     Titel: Wie schreibt man eine Monte-Carlo Simulation in Matlab
  Antworten mit Zitat      
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
Private Nachricht senden Benutzer-Profile anzeigen


Harald
Forum-Meister

Forum-Meister


Beiträge: 24.434
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 11.06.2018, 14:35     Titel:
  Antworten mit Zitat      
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
Private Nachricht senden Benutzer-Profile anzeigen
 
MatlabNeuling2017
Themenstarter

Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 91
Anmeldedatum: 28.06.17
Wohnort: ---
Version: R2017a
     Beitrag Verfasst am: 11.06.2018, 14:58     Titel:
  Antworten mit Zitat      
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
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.434
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 11.06.2018, 15:02     Titel:
  Antworten mit Zitat      
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
Private Nachricht senden Benutzer-Profile anzeigen
 
MatlabNeuling2017
Themenstarter

Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 91
Anmeldedatum: 28.06.17
Wohnort: ---
Version: R2017a
     Beitrag Verfasst am: 11.06.2018, 15:18     Titel:
  Antworten mit Zitat      
Hallo Harald,

für dieses Optimierungsproblem brauche die Monte-Carlo-Simulation nicht?

Wie kann ich denn dann dieses Optimierungsproblem angehen?

Grüße,
MatlabNeuling2017
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.434
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 11.06.2018, 15:27     Titel:
  Antworten mit Zitat      
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
Private Nachricht senden Benutzer-Profile anzeigen
 
MatlabNeuling2017
Themenstarter

Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 91
Anmeldedatum: 28.06.17
Wohnort: ---
Version: R2017a
     Beitrag Verfasst am: 11.06.2018, 15:34     Titel:
  Antworten mit Zitat      
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
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.434
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 11.06.2018, 16:06     Titel:
  Antworten mit Zitat      
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
Private Nachricht senden Benutzer-Profile anzeigen
 
MatlabNeuling2017
Themenstarter

Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 91
Anmeldedatum: 28.06.17
Wohnort: ---
Version: R2017a
     Beitrag Verfasst am: 12.06.2018, 10:48     Titel:
  Antworten mit Zitat      
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
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.434
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 12.06.2018, 11:00     Titel:
  Antworten mit Zitat      
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
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

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 | goMatlab RSS Button 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.