![]() |
---|
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 ein Potential 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. 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: |
![]() |
![]() |
Die x-Achse hat überall den gleichen Wert? mfG Atlantik |
![]() |
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. |
![]() |
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. . 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? |
![]() |
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. |
![]() |
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 isr schon ein passabler Fit möglich. Siehe beigefügte Plot, die Auch die Koeffizienten zeigen, beginnend mit dem Koeffizienten von . Hier nochmals jene für das Polynom . Grades: Die Abszissenwerte sind dabei in Sekunden anzugeben, beginnend mit 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. |
![]() |
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 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. |
![]() |
Nun, für deine Testdaten hab ich dir eben eine Polynomfunktion . 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 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 verhält, dann kannst du eine Regression mit diesem Typ ansetzen und die Parameter und 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 . 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. 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 vor. |
![]() |
Habe gerade aus Interesse ein Polynom Grades nur zu den ersten Messwerten gefittet. Wie du beigefügtem Plot entnehmen kannst, ist dieses zur Vorhersage des Kurvenverlaufs völlig ungeeignet, passt aber gut zu den ersten 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. |
![]() |
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. |
![]() |
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 . 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. |
![]() |
übrigens bietet Excel für einfache Probleme auch eine Lösung an. |
Diese Frage wurde automatisch geschlossen, da der Fragesteller kein Interesse mehr an der Frage gezeigt hat.
|