|
|
CurveFittingTool - Gaussian - Levenberg-Marquardt |
|
DerPfuscher |
Forum-Newbie
|
|
Beiträge: 1
|
|
|
|
Anmeldedatum: 04.12.07
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 04.12.2007, 10:55
Titel: CurveFittingTool - Gaussian - Levenberg-Marquardt
|
|
|
|
|
Hallo an alle MATLAB-User
Ich habe hier eher ein Verständnisproblem.... Bei mir in der Hochschule (Informatikstudent) haben wir ein Projekt, in welchem wir uns mit Curvefitting beschäftigen müssen und ein eigens Programm dazu schreiben. Dieses soll eine Gaussglockenfunktion, mit hilfe des Levenberg-Marquardt Algorithmus, fitten. Dazu verwenden wir die LM-Lib von http://www.alglib.net/optimization/levenbergmarquardt.php
Soweit funktioniert alles ganz gut, allerdings kommt es in manchen Fällen zum crash bzw. bekommen wir keine anständigen Lösungswerte. Ich habe herausgefunden, dass es an unseren Startwerten liegt, welche wir dem Levenberg-Marquardt Algorithmus übergeben. Ganz genau liegt es am Sigma.
Da wir in der Vorlesung Numerischer Mathematik mit MATLAB arbeiten habe ich mir jetzt mal testhalber unsere Gaussfunktion mit dem CurveFittingTool berechnen lassen und siehe da, es funtkioniert einwandfrei. Allerdings hat MATLAB in den FittingOptions einen anderen Startwert für das Sigma (c1) ermittelt. Gebe ich nun den von MATLAB ermittelten Startwert in unser Programm ein funktionert dieses einwandfrei .
Und hier endlich meine Frage.... hat irgendjemand eine Ahnung wie ich dieses Sigma bzw. c1 als Startwert, annähernd wie MATLAB bestimmen kann?
P.S.
Hier nochmal ein Beispiel was bei uns zu Schrottwerten führt:
Funktion a1*exp(-((x-b1)/c1)^2)
x=[-2 -1 0 1]
y=[ 0 3 8 1]
Startwerte a1=8 b1=0 c1=1
MATLAB bestimmt für c1 den Wert 0.426, verwende ich diesen dann funktioniert es.....
|
|
|
Verschoben: 17.04.2009, 11:56 Uhr von Bijick Von Sonstige MATLAB Fragen nach Toolboxen |
|
|
|
|
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.
|
|