Liebe Mathematicaner,
da Martins email jetzt doch an alle ging, hier meine Antwort:
> From roth Fri Jun 26 15:08 MET 1998
> Date: Fri, 26 Jun 1998 15:08:46 +0200 (MET DST)
> From: Arnd Roth <roth>
> To: hammer@XXXXXXX.de
> Subject: Re: nichtlineare Regression
> Cc: krause@XXXXXXX.ch, roth
> Mime-Version: 1.0
>
> Lieber Martin,
>
> >Dass FindMinimum selbst dann in der Lage ist, ein Minimum von chi^2 zu
> >finden, wenn es diese Funktion nur jeweils an einem Punkt kennt hat
> >mich verbluefft!
>
> Es kennt die Funktion ja nicht nur an _einem_ Punkt, sondern an einer
> ganzen Anzahl, und kann dabei selbst bestimmen, an welchen Punkten es
> sich fuer den Funktionswert interessiert. Wenn der Algorithmus also eine
> schlaue Strategie hat, wo er nach dem Minimum sucht, dann ist das recht
> effizient.
>
> >Ich wuerde jedoch gerne etwas genauer wissen, wie das
> >geschieht. Wie werden die Suchrichtung und die Schrittweite bestimmt,
> >mit der die chi^2-Hyperflaeche "abgelaufen" wird?
>
> Der Algorithmus, den Mathematica in diesem Fall verwendet, ist eine
> Variante von Powell's conjugate direction set method, beschrieben in
>
> a) Brent R.P. (1973) Algorithms for minimization without derivatives.
> Prentice-Hall Verlag, Englewood Cliffs, NJ, USA.
>
> b) Press W.H., Teukolsky S.A., Vetterling W.T. und Flannery B.P. (1992)
> Numerical recipes in C: the art of scientific computing. Second Edition.
> Cambridge University Press. Das entsprechende Kapitel ist 10.5.
>
> >Welche Bedeutung hat
> >der zweite Startparameter x1 (er wird offenbar nicht als
> >Testparameter fuer den zweiten Iterationsschritt benutzt, wohl ist
> >jedoch dieser von x1 abhaengig)?
>
> So ist es, der tasaechlich gemachte Schritt ist nicht so gross wie der von
> x0 nach x1, sondern nur ein Bruchteil davon.
>
> >Bei einer Funktion, die von mehreren
> >Parametern abhaengt, konvergiert dieses Verfahren jedoch sehr schlecht
> >(wenn ueberhaupt).
>
> Das stimmt nicht, FindMinimum hat in meiner Erfahrung auch schwierige
> Probleme gut bewaeltigt. Warum es das schafft, ist in Referenz a) sehr
> gut beschrieben.
>
> >Es nutzt ja auch die in der Jacobi-Matrix
> >vorliegend Information ueber die Ableitung der Funktion nach den
> >Parametern an dem betreffenden Punkt nicht aus.
>
> Richtig. Diese Information kann natuerlich nuetzlich sein und die
> Suche nach dem Minimum beschleunigen.
>
> >Insofern scheint mir Udos Vorschlag schon sinnvoller zu sein.
>
> Leider kenne ich seinen Vorschlag nicht.
>
> Ich fuege als attachment ein Beispiel fuer die Verwendung von FindMinimum
> zum Fitten bei. Ich bin mir bewusst, dass das Beispiel recht kompliziert
> ist. Es wurde halt eigentlich fuer einen anderen Zweck geschrieben.
>
> Viele Gruesse,
>
> Arnd
>
VoltageJump.nb
Description: VoltageJump.nb
|