Programm zum berechnen von Extrema mit n konstanten variablen :/

Neue Frage »

Gast1 Auf diesen Beitrag antworten »
Programm zum berechnen von Extrema mit n konstanten variablen :/
Hi Leute, ich suche ein Programm das mir die Ableitung sowie die Extremwerte einer Funktion ausgibt, jedoch ist es wichtig das ich da so viele Buchstaben reinkloppen kann wie möglich. Denn meine Funktion ist sehr sehr lang, und voll mit Konstanten die ich aber nicht kenne; und einer variablen. Also das Programm soll mir somit natührlich keine Zahl ausspucken, sondern die umgestellte Funktion (Wenn möglich noch mit Indexen von den Konstanten, also x1,1 is was anderes als x1,2 und was ganz anderes als x2,1).
So jetzt fragt ihr euch sicher: Hey du faule Sau wieso rechnest du das nicht selber? Tja ganz einfach, die Aufgabe ist so verdammt lang, das ich schon mehrere DinA 4 Seiten für die Ableitung brauche, und irgendwie immer an einem Punkt, auch wenn ich alles ganz doll vereinfache, nicht weiter komme und dann lässt auch langsam meine Gedult/Konzentration nach.
Also wenn jemand von euch son Proggy kennt, postet mir bitte den Link smile

Danke
Gast

PS:Wäre natührlich auch optimal wenn sich jemand bereit erklärt die Funktion für mich nach ihrem Minima umzustellen, wäre ja ne Herausforderung, aber da ich das hier keinem zumuten will, lass ich es erstmal die Aufgabe zu posten.
JochenX Auf diesen Beitrag antworten »

Zitat:
(Wenn möglich noch mit Indexen von den Konstanten, also x1,1 is was anderes als x1,2 und was ganz anderes als x2,1)

ich glaube, es sollte gerade noch möglich sein, x1,1 und x1,2 einfach y und z oder so zu nennen, um das problem zu umschiffen, oder?

schon mal mit maple oder sowas versucht?
oder google gefragt?

mfg jochen


ps: mods, bitte in die programmabteilung schieben smile
 
 
Gast1 Auf diesen Beitrag antworten »

klar hab ich bei google geguckt und mir zich sachen runtergeladen aber alles ..schlecht.
Und was ist maple?

BTW: Wenn ich die indexe umgehen soll indem ich einfach ganze Buchstaben nehme hab ich glaub ich garnicht genug auf meiner Tastatur und wenn wird es mega unübersichtlich...
Lazarus Auf diesen Beitrag antworten »

maple is nen funktionsplotter..

musst allerdings in maple-sprache sprechen !

(ist leicht, so a paar grundbegriffe merkste dir sicher schnell)

servus
JochenX Auf diesen Beitrag antworten »

Zitat:
Original von Gast1
BTW: Wenn ich die indexe umgehen soll indem ich einfach ganze Buchstaben nehme hab ich glaub ich garnicht genug auf meiner Tastatur und wenn wird es mega unübersichtlich...

also jetzt bin ich mal doch gespannt, poste mal bitte deine gleichung

mit indizes wird es unübersichtlicher als mit anderen buchstaben..... verwirrt paradox
Gast1 Auf diesen Beitrag antworten »

Das dauert aber ein bischen damit man durchsteigt weil ich kein Tex kann werd ichs in OO machen, für die die kein OO haben werd ich dann nochmal n screen reinstellen. Aber du kannst mir ja schonmal sagen wo ich das maple herbekomme, bei google wollen die alle irgendwelche Accountdaten haben damit die mich das saugen lassen :/ (Oder is das Kostenpflichtig? Dann hab ich dich natührlich gerade nicht gefragt wo ich das saugen kann Augenzwinkern )
JochenX Auf diesen Beitrag antworten »

ich kenne mich nicht so gut damit aus; aber es gibt auch sharewareversionen davon, ich weiß nur nicht, ob die eingeschränkt sind

vielleicht weiß jemand anderes mehr
Gast1 Auf diesen Beitrag antworten »

Hier also meine Aufgabe:
Auch wenn du vll sagst sie ist mit den vielen doppelten Indexen doch unübersichtlicher, dann argumentiere ich dagegen, weil ich das Minima von fe(w1) für ein Programm brauche; und wenn ich in der Formel ganz andere Bezeichnungen nehme als im Programm komme ich ja noch mehr durcheinander smile

http://www.ppc-zone.de/MSE.jpg
JochenX Auf diesen Beitrag antworten »

hmmm, quadrate ausrechnen, das sollte der erste schritt sein
ich stimme die hier aber zu, dass ich das auch nicht von hand machen möchte

welcher numerikfreak erbarmt sich?

mfg jochen


ps: viel glück weiterhin...... Freude
etzwane Auf diesen Beitrag antworten »

mit MuPAD light könnte es so aussehen (Tippfehler jedoch nicht ausgeschlossen):

f1:=(U11-Q1w1/(1+exp(x11*h1w1+x12*h1w2))-Q1w2/(1+exp(x11*h2w1+x12*h2w2)))^2

f2:=(U12-Q2w1/(1+exp(x11*h1w1+x12*h1w2))-Q2w2/(1+exp(x11*h2w1+x12*h2w2)))^2

f3:=(U21-Q1w1/(1+exp(x21*h1w1+x22*h1w2))-Q1w2/(1+exp(x21*h2w1+x22*h2w2)))^2

f4:=(U22-Q2w1/(1+exp(x21*h1w1+x22*h1w2))-Q2w2/(1+exp(x21*h2w1+x22*h2w2)))^2

f:=f1+f2+f3+f4

diff(f,h1w1)
2*x11*Q1w1*exp(x11*h1w1 + x12*h1w2)/(exp(x11*h1w1 + x12*h1w2) + 1)^2*(U11 \
- Q1w1/(exp(x11*h1w1 + x12*h1w2) + 1) - Q1w2/(exp(x11*h2w1 + x12*h2w2) + 1\
)) + 2*x11*Q2w1*exp(x11*h1w1 + x12*h1w2)/(exp(x11*h1w1 + x12*h1w2) + 1)^2*\
(U12 - Q2w1/(exp(x11*h1w1 + x12*h1w2) + 1) - Q2w2/(exp(x11*h2w1 + x12*h2w2\
) + 1)) + 2*x21*Q1w1*exp(x21*h1w1 + x22*h1w2)/(exp(x21*h1w1 + x22*h1w2) + \
1)^2*(U21 - Q1w1/(exp(x21*h1w1 + x22*h1w2) + 1) - Q1w2/(exp(x21*h2w1 + x22\
*h2w2) + 1)) + 2*x21*Q2w1*exp(x21*h1w1 + x22*h1w2)/(exp(x21*h1w1 + x22*h1w\
2) + 1)^2*(U22 - Q2w1/(exp(x21*h1w1 + x22*h1w2) + 1) - Q2w2/(exp(x21*h2w1 \
+ x22*h2w2) + 1))

Und zur Extremwertbestimmung: mit Variablen sehe ich da überhaupt keine Chance
Gast1 Auf diesen Beitrag antworten »

Nur h1w1 is ne Variable, das andere sind unbekannte konstanten, die Ableitung is auch nicht das problem; wenn man das vereinfacht geht es sogar Handschriftlich, aber genau gerade bei der Extremwert bestimmung liegt mein Problem, das krieg ich einfach nicht nach h1w1 umgestellt. Also ich wäre für weitere Hilfe sehr dankbar Gott
Gast1 Auf diesen Beitrag antworten »

Also unbekannte Konstanten nicht, das wäre ja dann unmöglich auszurechnen, sagen wir mal es sind bekannte konstanten, für die ich aber keine Werte einsetzen darf bis fe'(h1w1Extrem) = 0 nach h1w1Extrem umgestellt ist.
etzwane Auf diesen Beitrag antworten »

Setz alle Zahlenwerte ein für die Konstanten und versuche, den/die Extremwerte zu ermitteln, dann hast du wenigstens etwas.

Wenn das direkt und ohne Näherungsverfahren/Iterationsverfahren geht, dann kannst du es noch einmal so versuchen, wie verlangt. Sollte dann gehen, aber: verschreib dich nicht dabei.

Viel Glück.
Gast1 Auf diesen Beitrag antworten »

Nein das geht nicht da ich die Werte für die Konstanten nicht kenne, die gleichung ist ja für ein Programm; und sie wird ganz oft für verschiedene w's durchlaufen, daher sind mit die konstanten in dem Sinne "unbekannt" ich muss es also so lösen ohne was einzusetzen.
Daher dachte ich ja dran das vll n Proggy für sowas existiert oder so, denn das is ne verdammt komplizierte Sache, ich frag ja nicht gleich am ersten Tag ich sitz da schon das ganze WE dran, und krieg die Ableitung nicht nach h1w1 umgestellt. traurig
zoiX Auf diesen Beitrag antworten »

Ich habs jetzt zur Hälfte in Derive abgetippt (und verzweifle fast daran, dass ich nicht weiß, wie ich Derive die Sache mit den Indizes beibringe Big Laugh )....also musst ich jede Variable mit iNdex durch nen griechischen / lateinischen Buchstaben ersetzen - ein heilloses durcheinander.

Ich hab auch nich so die große Hoffnung, dass Derive das nachher gebacken kriegt, aber mein Rechner hat heute nich viel zu tun und ich bin nicht da...

Vllt. wissen wir ja heut Abend tatsächlich mehr...

edit: Bin jetzt fertig, Derive leitet gerade ab - und scheint zu verzweifeln.

: 100% CPU Usage Big Laugh

: Die Ableitung hab ich....1280x1024 und sie passt nicht komplett auf den Schirm. (Berechnung hat 344 Sekunden gedauert.)
grybl Auf diesen Beitrag antworten »

verschoben smile
Gast1 Auf diesen Beitrag antworten »

Also laut meinem Lehrer hat die Ableitung keine Nullstellen...damn traurig
Aber irgendwie glaub ich das nicht so ganz...Also ich wär euch wirklich Dankbar wenn ihr nicht nur die Ableitung bildet, sondern auch diese 0 setzt und nach h1w1 umstellt, denn dafür schein ich wirklich zu doof zu sein.
Ich werd nachher nochmal ein paar Ansätze posten wie ichs versucht habe vll hilft das ja.
zoiX Auf diesen Beitrag antworten »

Ich sag Derive jetzt, es soll die Ableitung mal umstellen, dann sag ich dir bescheid...

edit:
Umstellen ist nich nötig...ich führ dir das mal aus:

[latex]f(x)={(y_1 - \frac {y_2}{1+e^{y_3*x+y_4*y_5}} - \frac {y_6}{1+e^{y_7*y_8+y_9*y_{10}}})}^2[/latex]

Soll abgeleitet werden (Das ist ein Summand deiner Funktion, lediglich die Variablen heißen anders. x ist h1w1 (deine Variable), die y's sind deine Konstanten.

Wir fangen an mit der Kettenregel:
u(v)' = u'(v) * v'

u'(v) = 2(v)

In v steht nirgendwo x im Zähler - somit kann u'(v) Funktion in Bezug zu x nicht 0 werden. Wir müssen hier das Produkt also nicht weiter untersuchen. Bilden wir v':

[latex]v = y_1 - \frac {y_2}{1+e^{y_3*x+y_4*y_5}} - \frac {y_6}{1+e^{y_7*y_8+y_9*y_{10}}}[/latex]

Hier können wir den ersten und den letzten Summand streichen - da nur nach x abgeleitet werden soll sind sie konstant, und Konstanten fallen beim ableiten weg.

Es bleibt zu bilden:

[latex]-y_2*{(\frac {1}{1+e^{y_3*x+y_4*y_5}})}'[/latex]

Das ergibt:

[latex]-y_2*(\frac {y_3*e^{y_3*x+y_4*y_5}}{...})[/latex]

Und so leid es mir tut - entweder steht x in der Ableitung in einer Potenz oder im Nenner - und beide Fälle führen auf keinen Fall zu einer Nullstelle. Ergebnis: Deine Funktion hat keine Extrema in Bezug auf h1w1.
Simeon Auf diesen Beitrag antworten »

Dankesehr Wink ...aber..VERDAMMT traurig Die ganze Arbeit umsonst böse

Hast du vll ne Idee wie ich sonst rauskriege bei welchem h1w1 f(h1w1) am kleinsten ist, ohne Annäherungsverfahren o.ä.?
zoiX Auf diesen Beitrag antworten »

Dafür must du raus finden, in welche "Richtung" deine Funktion strebt, wenn du besonders große bzw. kleine h1w1 einsetzt.
Ein Extremum gibt es nicht, die Funktion wird nicht irgendwo "am kleinsten".
Simeon Auf diesen Beitrag antworten »

Also mit Näherungsverfahren (Backprop) bekomme ich oft Werte zwischen
-0.2 und +6 aber meistens sind sie zwischen 0 und 1. Für sehr große und sehr kleine h1w1 bzw alle w's wird die Funktion mit 99% Sicherheit sehr viel größer anstatt kleiner. Also ich gehe jede Wette ein, auch wenn ichs mit meinen Mathekenntnissen nicht beweisen kann, das
lim fe(w)= max
w -> + - unendlich

Aber mein Lehrer hat mich auf eine Idee gebracht, zumindest mein Näherungsverfahren zu überdenken, und dabei stieß ich auf eins (kA obs das gibt und wenn wies heißt) das wohl sehr viel schneller ist als Backprop (nein, ich meine nicht Quickprop Augenzwinkern )
Neue Frage »
Antworten »



Verwandte Themen

Die Beliebtesten »
Die Größten »
Die Neuesten »