Näherungsfunktion herleiten



  • Hallo Leutchen!

    Ich habe empirische Werte, die einer Parabel ähneln. Gibt es ein Verfahren, aus diesen Werten eine Näherungsfunktion herzuleiten?

    Oder muß ich da stupide rumprobieren ... hmmm

    Hat jemand eine Idee?



  • Wie wäre es mit simpler Polynominterpolation (z.B. nach Lagrange)



  • bzw. Approximation mit kleinsten Quadraten.



  • Wenn Du schon weißt, daß eine Parabel rauskommt bzw. eine rauskommen soll, dann ist Methode der kleinsten Quadrate wohl am einfachsten.

    Ansatz:

    f(x) = a\*x^2 + b\*x + c J(a,b,c) = \Sigma_{i=1}^N (f(x\_i)-y\_i)^2

    J gibt nun den quadratischen Fehler für die Parameter a,b,c an. Der soll minimal werden. Also ableiten nach a,b,c:

    J(a,b,c)a=Σi=1N2(f(x_i)y_i)xi2\frac{\partial J(a,b,c)}{\partial a} = \Sigma_{i=1}^N 2*(f(x\_i)-y\_i) \cdot x_i^2

    J(a,b,c)b=Σi=1N2(f(x_i)y_i)xi\frac{\partial J(a,b,c)}{\partial b} = \Sigma_{i=1}^N 2*(f(x\_i)-y\_i) \cdot x_i

    J(a,b,c)c=Σi=1N2(f(x_i)y_i)\frac{\partial J(a,b,c)}{\partial c} = \Sigma_{i=1}^N 2*(f(x\_i)-y\_i)

    Die x_i, y_i sind Deine empirischen Werte.
    Diese Ableitungen sollen nun alle 0 sein, dann hast Du Dein Minimum. Im Prinzip ist also nur noch ein LGS zu lösen.

    MfG Jester



  • Nür für den Fall, dass Du Matlab nutzt. Da gibt es

    polyfit - MMSE-Approximation

    oder

    interp - Polynominterpolation

    Wenn Deine Funktion wirklich wie ne Parabel aussehen soll, empfiehlt sich wohl tatsächlich ersteres.



  • Methode der kleinsten Quadrate? Die kenne ich doch für das herleiten der linearen Regreßfunktion.

    Kann man damit auch nicht lineare Funktionen herleiten?



  • ChrisPlusPlus schrieb:

    Methode der kleinsten Quadrate? Die kenne ich doch für das herleiten der linearen Regreßfunktion.

    Kann man damit auch nicht lineare Funktionen herleiten?

    Jap.
    Um das zu lösen, gibt es verschiedene Verfahren.
    Wir suchen eine Ausgleichsparabel y=α+βt+γt2y = \alpha + \beta t + \gamma t^2 zu den Daten (t_i,y_i),i=1..n(t\_i,y\_i), i = 1..n

    Dazu stellen wir ein Gleichungssystem auf:
    y_i=α+βt_i+γti2y\_i = \alpha + \beta t\_i + \gamma t_i^2 oder in Matrixschreibweise Ax=bA x = b Dabei hat A mehr Spalten als Zeilen, daher ist das LGS überbestimmt.

    Auf dem Papier für kleine Dimensionen geht die Normalengleichung ganz prima: (ATA)x=ATb(A^T A)x = A^T b
    Das LGS hat eine eindeutige Lösung.
    Das Verfahren ist mit dem Rechner allerdings total doof, weil (meistens) numerisch instabil.
    Toller sind da z.b. QR-Zerlegung (-> Housholder Transformationen). Kann ich aber aus dem Kopf nicht direkt hinschreiben. Wenns dich interessiert, such selber oder frag noch mal, dann such ich dir ein passendes Skript aus. Für das Thema braucht man aber schon ne ganze Menge lineare Algebra. Wie sicher bist du damit?
    Alternativ gibts immer noch Matlab und Co; soclhe Programmpakete können das eigentlich alle.



  • ChrisPlusPlus schrieb:

    Methode der kleinsten Quadrate? Die kenne ich doch für das herleiten der linearen Regreßfunktion.

    Kann man damit auch nicht lineare Funktionen herleiten?

    Ähm, wozu hab ich eigentlich mein Posting geschrieben? Da steht doch genau drin, wie's für ne Parabel geht. Für andere f geht es natürlich völlig analog.


Log in to reply