Mathematik online lernen im Mathe-Forum. Nachhilfe online
Startseite » Forum » Aus einer Kurve eine Funktion

Aus einer Kurve eine Funktion

Universität / Fachhochschule

Tags: Funktionserstellung, Kurvendiskussion, Matrix

 
Antworten Neue Frage stellen Im Forum suchen
Neue Frage
Danzi

Danzi aktiv_icon

15:15 Uhr, 31.05.2016

Antworten
Hallo an alle,

im Moment beisse ich mir die Zähne aus. Ich sitze in einem Unternehmen das einen bestimmten Bearbeitungsprozess hat. Dabei wird über eine Zeitachse (x) ein Potential (y) mitgeschrieben.

Hieraus ergibt sich eine Kurve die als Bild anhängt.

Das Ziel ist nun aus den Werten eine vollständige Funktion zu erstellen.

Ich habe nun schon mehrere Sachen ausprobiert, von Matrixschreibweise, Gauß-Lösungsverfahren etc. nur leider sieht meine berechnete Kurve nie so aus wie die Original Kurve.

Jetzt suche ich nach Hilfe hier bei euch.

Beispiel
Kurve

Für alle, die mir helfen möchten (automatisch von OnlineMathe generiert):
"Ich möchte die Lösung in Zusammenarbeit mit anderen erstellen."
Hierzu passend bei OnlineMathe:
Kurvendiskussion (Mathematischer Grundbegriff)
Funktion (Mathematischer Grundbegriff)

Online-Übungen (Übungsaufgaben) bei unterricht.de:
 
Online-Nachhilfe in Mathematik
Antwort
Atlantik

Atlantik aktiv_icon

15:44 Uhr, 31.05.2016

Antworten
Die x-Achse hat überall den gleichen Wert?

mfG

Atlantik
Danzi

Danzi aktiv_icon

15:58 Uhr, 31.05.2016

Antworten
Hy,

nein, das sieht nur so aus auf dem Bild, da steht ein Datum gefolgt von einer Uhrzeit, und das ist so lang das es unter die Grafik rutscht.

Ich habe eine Excel Datei angehängt mit den Werten.
Antwort
Roman-22

Roman-22

17:17 Uhr, 31.05.2016

Antworten
> Das Ziel ist nun aus den Werten eine vollständige Funktion zu erstellen.
Nun, so zittrig wie der Graph aussieht sollte das Ziel eher eine Regression und keine Interpolation sein. D.h. eine Funktion suchen, deren Graph zwar womöglich durch keinen einzigen Datenpunkt ganz genau durchläuft, aber sich dafür allen in ihrer Gesamtheit optimal anpasst (Methode der kleinsten Fehlerquadratsumme). Allerdings ist es dafür sinnvoll, sich zu überlegen, welchen Funktionstyp man ansetzt. In der Regel weiß man dass von der Anwendung her, welche Art von Funktion zu erwarten ist.

Was du mit Matrix und Gauß genau meinst ist unklar. Du wirst doch vermutlich mindestens ein paar Hundert Datenpunkte haben und ich kann mir schwer vorstellen, dass du im Ernst versuchst, eine Polynomfunktion von entsprechendem Grad zu fitten.

> Ich habe eine Excel Datei angehängt mit den Werten.
Nein, du wolltest, aber leider sind hier nur Bilddateien als attach erlaubt.
Und nein, einfach umbenennen funkt auch nicht, da die Bilder nach dem Hochladen offenbar neu generiert (und dabei gelegentlich auch zerstört) werden.
Entweder also du fügst die Daten im Klartext deinem Posting hier an (bitte nicht, wenn wirklich so viel Datenpunkte sind wie ich vermute) oder du legst die Datei auf einem externen Hoster deiner Wahl ab und postest den Link.

Welchen Funktionstyp erwartest du denn von deinem Anwendungsfall her gesehen?
Ist es wesentlich, den kurzen ersten Teil mit den fallenden Funktionswerten mit zu modellieren, oder reicht der Teil danach, der sich vermutlich schon durch eine Parabel zweiter Ordnung ganz gut nähern lassen wird?

R

Danzi

Danzi aktiv_icon

07:22 Uhr, 01.06.2016

Antworten
Hy Roman-22,

zu Punkt 1:
Ja genau, das denke ich auch. Eine Kurve zu finden die diese nachbildet indem sie sich optimal anpasst.

zu Punkt 2:
ich habe versucht mit der Lösung eines LGS 4ten Grades mit 5 Punkten über das Gauß Verfahren eine Funktionsbestimmung zu machen. Jedoch kam da eben nur Müll raus.

zu Punkt 3:
Ok, ich habe mir sowas zwar schon fast gedacht, es aber auch nicht überprüft.
Anbei der Link:
www.dropbox.com/s/miw71815it7y2tc/Beispiel.xlsx?dl=0

zu Punkt 4:
Der Anwendungsfall wird immer genau so aussehen wie das Bild.
Prozessbedingt wird der Graph am Anfang absinken auf einen Min.Pkt, anschließend steigt die Kurve auf einen Max.Pkt und fällt dann wieder ab. Alle Punkte sind für den Prozess essentiell und sollten auch genau so vorkommen.
Antwort
Roman-22

Roman-22

10:27 Uhr, 01.06.2016

Antworten
Wenn auch der Beginn wesentlich ist, dann wirst du mit einer Polynomregression der Ordnung 4 nicht weit kommen, wenn auch der Rest einigermaßen gut passen soll.
Aber ab Ordnung 12 isr schon ein passabler Fit möglich.

Siehe beigefügte Plot, die Auch die Koeffizienten zeigen, beginnend mit dem Koeffizienten von t0.

Hier nochmals jene für das Polynom 12. Grades:
1027.207849255813
-0.1811855342690197
0.00383279142367895
-2.5248768030376616e-5
9.243719371866336e-8
-2.163489972982902e-10
3.411174798844729e-13
-3.7030104816616345e-16
2.7718619511356626e-19
-1.4046809812110685e-22
4.599624656496542e-26
-8.779483758437967e-30
7.417842849356102e-34

Die Abszissenwerte sind dabei in Sekunden anzugeben, beginnend mit t=0 für den ersten Messwert.

Polynomregression ist natürlich nur der Holzhammer. In der Regel weiß man aber, nach welcher Gesetzmäßigkeit ein Vorgang abläuft und sucht mittels Regression dann nur mehr die konkreten Parameter/Koeffizienten des an sich bekannten/vermuteten Funktionstyp. Das musst natürlich du jetzt wissen, ob es sich eher um eine gebrochen rationale Funktion, eine Kombination von Exponenentialfunktionen (ZB eine Summe von mehreren Gaussians), eine Summe von Schwingungen, ... oder was auch immer handelt. Durch blindes Probieren ist der Sache eher nicht auf die Spur zu kommen, vermute ich.

Es hängt auch davon ab, wofür du die Funktion bei einer derart dichten Puntwolke überhaupt benötigst. Wenns um die Berechnung von Zwischenwerten geht oder darum, die Funktion zu integrieren, dann ist da oft rein numerisch viel sinnvoller oder es reicht ein Interpolationsfunktion mit ordentlicher Glättung. ZB auch die Anwendung eines Savitzky-Golay-Filters.

R



CurveFit2
Danzi

Danzi aktiv_icon

10:41 Uhr, 01.06.2016

Antworten
Hy Roman,

ok, ja cool, aber wenn ich ehrlich bin, dann bin ich voll ausgestiegen XD.

Also nochmal mein Wissensstand.

Alle Kurven verhalten sich im Prozess so wie die Beispielkurve, das heißt der Prozess hat bei der Anfangszeit t=0 einen beliebigen Wert. Anschließend fällt die Kurve jedesmal ab, jedoch unterschiedlich stark. Darauf folgend wird die Kurve nach erreichen eines spezifischen Min-Punktes wieder steigen bis zu einem spezifischen Max-Punkt.
Nach erreichen des Punktes fällt die Kurve dann durchgehend ab bis der Prozess endet.

Diese Kurve kommt jedes mal, nur das sich eben die Stärke des Steigens und Abfallens ändert.

Das Ziel soll sein das die Kurve "prognostiziert" wird, aufgrund der Kurve VOR dem Max-Punkt.
Antwort
Roman-22

Roman-22

17:19 Uhr, 01.06.2016

Antworten
Nun, für deine Testdaten hab ich dir eben eine Polynomfunktion 12. Grades angeboten, welche ziemlich genau den Kurvenverlauf beschreibt, wie du auch der beigefügten Grafik entnehmen konntest. Die Polynomfunktion vierten Grades beschreibt ja gerade am Anfang die Datenwolke nicht sonderlich gut (linke Grafik).

Wie schon gesagt, wenn du von dem technischen Vorgang her genauer weißt, mit welcher Art von Funktion du zu tun hast, dann wird man auch mit weniger Parametern als 13 das Auslangen finden. Mit Art von Funktion meinte ich aber nicht eine Beschreibung des Kurvenverlaufs sondern konkrete Funktionsgleichungen. Wen du also aufgrund deiner Kenntnis des beobachteten Prozesses weißt, dass sich die interessierende Eigenschaft in etwa entsprechend einer Funktion vom Typ, sagen wir f(t):=a1+be-ct, verhält, dann kannst du eine Regression mit diesem Typ ansetzen und die Parameter a,b und c so bestimmen, dass die entsprechende Funktion möglichst gut zu den Messdaten passt.
So könntest du dann Zb auch eine Regression nur unter Verwendung der ersten paar Sekunden deines Vorgangs machen um eben daraus auf den restlichen Verlauf zu schließen.
Das kannst du natürlich auch mit der Polynomfunktion 12. Grades versuchen - keine Ahnung ob es da zu zufriedenstellenden Ergebnissen kommt. Denn es ist eher unwahrscheinlich, dass der von dir betrachtete Vorgang technisch wirklich durch eine solche Funktion beschrieben wird.

Ohne Kenntnis des Funktionstyps wirds schwer und eine Prognose wird wohl nur auf Basis statistischer Auswertungen von vielen vollständigen Messungen möglich sein.

R

P.S.: Wenn du öfter mit Kurvenfitting zu tun hast, kannst du dir einmal die Probeversion von CurveExpert Pro laden, die ist auch in der eingeschränkten Version noch recht brauchbar. Mit deinen Daten schlägt das Programm aber auch nur als beste Lösung ein Polynom vom Grad 12 vor.

Antwort
Roman-22

Roman-22

17:45 Uhr, 01.06.2016

Antworten
Habe gerade aus Interesse ein Polynom 12 Grades nur zu den ersten 160 Messwerten gefittet. Wie du beigefügtem Plot entnehmen kannst, ist dieses zur Vorhersage des Kurvenverlaufs völlig ungeeignet, passt aber gut zu den ersten 160 Messwerten ;-)

Du wirst also nicht darum herum kommen, dir Gedanken darüber zu machen, welchen Gesetzen dein Vorgang folgt und welcher Funktionstyp daher zu erwarten ist.

R


polyfit12
Danzi

Danzi aktiv_icon

10:37 Uhr, 05.06.2016

Antworten
Hy Roman,

also erst einmal vielen vielen Dank für deinen Input und deine Mühe.

Wenn ich das also richtig lese aus deinem letzten Post, ist die Wahrscheinlichkeit den Graph innerhalb der ersten paar Sekunden/Minuten zu prognosdizieren, sehr gering bis unmöglich ausser man kennt die Funktionsparameter.

Da sich jeder Graph nur leider unterschiedlich verhält, also mal eher gestaucht, mal eher gezogen, mal fällt er stärker, mal gleitend, und so weiter, werde ich wohl keine Mathematische Lösung finden oder?

Es kommen halt viele Parameter hier ins Spiel.
-Werkstoff
-Werkstoffzusammensetzung
-Temperatur
-Verweildauer
-Dicke
-Größe
-Leitfähigkeit
und und und

Mein Ziel/Hoffnung war es das ich diese Parameter gar nicht erst angreifen muss wenn sich die Kurve entwickelt, da diese ja sozusagen alle Parameter verwurstet (komischer Ausdruck ich weiß)

Ich werde mir die Software mal ansehen um zu schauen ob ich ggf. empirisch eine statistische Gemeinsamkeit finde. Danke schon mal für die Info.
Antwort
Roman-22

Roman-22

10:58 Uhr, 05.06.2016

Antworten
> st die Wahrscheinlichkeit den Graph innerhalb der ersten paar Sekunden/Minuten zu prognosdizieren, sehr gering bis unmöglich ausser man kennt die Funktionsparameter.
Nicht die Funktionsparaneter, die könnte man ja aufgrund der ersten Daten ermittleln, aber ohne Kenntnis des Funktionstyps wird man sich da schwer tun. Es gibt eine Unzahl von Funktionen, die in den ertsne paar Sekunden ziemlich gut "passen", die dann aber alle völlig unterschiedlich weiter gehen und daher für eine Prognose nicht taugen.

Selbst wenn man vom gleichen Funktionstyp ausgeht ist nicht gesagt, dass der Fit über die ersten paar Sekunden und jener über den gesamten Bereich einigermaßen ähnlich sind. Das zeigt mein Beispiel mit dem Polynom 12. Ordnung. Da sieht das Näherungspolynom unter Verwendung der ersten paar Sekunden ja völlig anders aus als das Näherungspolynom unter Verwendung aller deiner Daten.

Weiß man nicht aus theoretischen Überlegungen, wie sich die einzelnen von dir erwähnten Parameter auf den Graph auswirken - also jetzt nicht nur beschreibend, sondern konkret in Form einer Funktionsgleichung.
Je mehr Parameter/Freiheitsgrade man bei der gesuchten Funktion hat, desto unangenehmer wird es allerdings und desto mehr Baisdaten sind auch nötig, um ev. eine vernünftige Prognose zu stellen.
Manche Parameter kann man auch zusammenfassen, wenn ihre Änderung ähnliche Auswirkung hat.

Wenn du von dem Vorgang aus der Theorie aber nichts weißt und nur anhand einer Serie von Probedaten etwas ableiten willst, da müsstest du schon sehr viel Glück haben, fürchte ich.

R

Antwort
Femat

Femat aktiv_icon

11:09 Uhr, 05.06.2016

Antworten
übrigens bietet Excel für einfache Probleme auch eine Lösung an.

Screenshot (201)
Diese Frage wurde automatisch geschlossen, da der Fragesteller kein Interesse mehr an der Frage gezeigt hat.