Matroids Matheplanet Forum Index
Moderiert von matroid
Mathematik » Numerik & Optimierung » Maximum einer Funktion, die von drei Variablen abhängt
Druckversion
Druckversion
Antworten
Antworten
Autor
Beruf Maximum einer Funktion, die von drei Variablen abhängt
Crashdemon
Junior Letzter Besuch: im letzten Quartal
Dabei seit: 08.12.2020
Mitteilungen: 5
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Themenstart: 2020-12-08


Hallo Zusammen,

ich habe das folgende Problem. Ich habe die folgende Funktion:


fed-Code einblenden

mit

fed-Code einblenden

p1(x),p2(y),p3(z) sind Polynome vierten Grades die von den jeweiligen Variablen x, y und z abhängen.

Nun möchte ich das maximum der Funktion p ermitteln. Ich nehme mal an das es da keine analytische Lösung gibt. Sondern nur eine numerische.

Welches Verfahren würdet ihr vorschlagen?




Eine Notiz zu diese Forumbeitrag schreiben Notiz   Profil  Quote  Link auf diesen Beitrag Link
StrgAltEntf
Senior Letzter Besuch: in der letzten Woche
Dabei seit: 19.01.2013
Mitteilungen: 6687
Herkunft: Milchstraße
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.1, eingetragen 2020-12-08


Hallo Crashdemon,

willkommen auf dem Matheplaneten!

Mal ne Frage: Wenn x + y + z = 1, wieso schreibst du dann im Zähler nicht 1? Das würde das Problem wohl vereinfachen.



Eine Notiz zu diese Forumbeitrag schreiben Notiz   Profil  Quote  Link auf diesen Beitrag Link
Crashdemon
Junior Letzter Besuch: im letzten Quartal
Dabei seit: 08.12.2020
Mitteilungen: 5
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.2, vom Themenstarter, eingetragen 2020-12-08


Danke :-)

Klar, kann ich machen:

fed-Code einblenden



Eine Notiz zu diese Forumbeitrag schreiben Notiz   Profil  Quote  Link auf diesen Beitrag Link
Crashdemon
Junior Letzter Besuch: im letzten Quartal
Dabei seit: 08.12.2020
Mitteilungen: 5
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.3, vom Themenstarter, eingetragen 2020-12-08


Im Grunde kann man das ganze ja weiter vereinfachen sodass es nur noch von zwei Variablen abhängig sein sollte:


fed-Code einblenden

mit

fed-Code einblenden

ergibt dann

fed-Code einblenden



Eine Notiz zu diese Forumbeitrag schreiben Notiz   Profil  Quote  Link auf diesen Beitrag Link
dietmar0609
Senior Letzter Besuch: in der letzten Woche
Dabei seit: 29.06.2007
Mitteilungen: 3038
Herkunft: Oldenburg , Deutschland
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.4, eingetragen 2020-12-08


Wie sehen denn die p1,p2,und p3 aus? Wenn man die nicht kennt, kann man doch gar nichts sagen.

Gruss Dietmar

[Die Antwort wurde nach Beitrag No.2 begonnen.]



Eine Notiz zu diese Forumbeitrag schreiben Notiz   Profil  Quote  Link auf diesen Beitrag Link
Crashdemon
Junior Letzter Besuch: im letzten Quartal
Dabei seit: 08.12.2020
Mitteilungen: 5
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.5, vom Themenstarter, eingetragen 2020-12-08


Wieso kann man dann nichts sagen? Ich will ja keinen exakten Wert sondern nur das Verfahren wissen wie man es lösen würde. Die Polynome sind jeweils vierten Grades. Also:

fed-Code einblenden
fed-Code einblenden
fed-Code einblenden

Ich denke die konkreten Koeffizienten sind hierfür unrelevant.



Eine Notiz zu diese Forumbeitrag schreiben Notiz   Profil  Quote  Link auf diesen Beitrag Link
StrgAltEntf
Senior Letzter Besuch: in der letzten Woche
Dabei seit: 19.01.2013
Mitteilungen: 6687
Herkunft: Milchstraße
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.6, eingetragen 2020-12-08


Vielleicht hilft es ja,
\[\frac1p=\frac x{p_1(x)}+\frac y{p_2(y)}+\frac z{p_3(z)}\] zu betrachten.

[Die Antwort wurde nach Beitrag No.4 begonnen.]



Eine Notiz zu diese Forumbeitrag schreiben Notiz   Profil  Quote  Link auf diesen Beitrag Link
Crashdemon
Junior Letzter Besuch: im letzten Quartal
Dabei seit: 08.12.2020
Mitteilungen: 5
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.7, vom Themenstarter, eingetragen 2020-12-09


Keiner einen Vorschlag? Was haltet ihr den vom Lagrange-Multiplikator?



Eine Notiz zu diese Forumbeitrag schreiben Notiz   Profil  Quote  Link auf diesen Beitrag Link
haerter
Senior Letzter Besuch: in der letzten Woche
Dabei seit: 07.11.2008
Mitteilungen: 1667
Herkunft: Bochum
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.8, eingetragen 2020-12-09


Was passiert denn, wenn man "irgendein" Verfahren darauf loslässt, zum Beispiel die Methode des steilsten Abstiegs in der Menge

\( M=\{(x,y);\; x,y\geq 0, x+y\leq 1\} \)

mit einem Startwert irgendwo im Inneren und einer halbwegs kleinen Schrittweite?

Viele Grüße,
haerter


-----------------
"The best way to have a good idea is to have lots of ideas."
 - Linus Pauling



Eine Notiz zu diese Forumbeitrag schreiben Notiz   Profil  Quote  Link auf diesen Beitrag Link
Folgende Antworten hat der Fragesteller vermutlich noch nicht gesehen.
hyperG
Senior Letzter Besuch: in der letzten Woche
Dabei seit: 03.02.2017
Mitteilungen: 1360
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.9, eingetragen 2021-01-25


2020-12-08 22:28 - Crashdemon in Beitrag No. 5 schreibt:
Wieso kann man dann nichts sagen? Ich will ja keinen exakten Wert sondern nur das Verfahren wissen wie man es lösen würde. Die Polynome sind jeweils vierten Grades. Also:

fed-Code einblenden
fed-Code einblenden
fed-Code einblenden

Ich denke die konkreten Koeffizienten sind hierfür unrelevant.

Wenn a0...a4 identisch -> dann sind auch p1...p3 identisch!
(oder anders: es gibt nur p1, und zwar p1(x), p1(y), p1(1-x-y)

Wenn nicht, dann haben wir statt 5 dann 3*5 = 15 Koeffizienten!
(a[1,0], a[1,1]...a[3,4] diesen extrem komplizierten Fall klammere ich mal aus)

Statt Max(p(...)) sucht man besser Min(1/p(...)) -> was dann nur die Summe unter dem Bruchstrich ist.

Was ist mit dem Fall x=y=0? Erlaubt?
Wenn ja, dann vereinfacht sich alles zu
Maximize[p3(z)] , da z dann 1 wäre
=Maximize[a0+a1+a2+a3+a4]

Zwar kann man Nullstellen von Polynomen bis Grad 4 analytisch lösen (PQRSTUVW-Formel), aber ich probiere im nächsten Beitrag mal was aus (x > 0, y> 0)...



Eine Notiz zu diese Forumbeitrag schreiben Notiz   Profil  Quote  Link auf diesen Beitrag Link
hyperG
Senior Letzter Besuch: in der letzten Woche
Dabei seit: 03.02.2017
Mitteilungen: 1360
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.10, eingetragen 2021-01-25


Nun Fälle mit x>0 und y>0 und konkretem Polynom
P1[x] := x^4/4 + x^3/3 + x^2/2 + x + 1/2;

Daraus wird nach Zusammenfassung für den zu minimierenden Term unter dem Bruchstrich:
mathematica
FullSimplify[x/P1[x] + y/P1[y] + (1 - x - y)/P1[1 - x - y]]
(12 x)/(6+x (12+x (6+x (4+3 x))))-(1-x-y)/(-(3/2)+x+y-1/2 (-1+x+y)^2+1/3 (-1+x+y)^3-1/4 (-1+x+y)^4)+(12 y)/(6+y (12+y (6+y (4+3 y))))

Da es unendlich viele Nullstellen hat (und p somit an unendlich vielen Stellen gegen Unendlich geht), hier mal die 3D Grafik:


Entlang der "Schnittkante" habe ich mal einen "relativ leicht" zu berechnenden Punkt bei x=1 genauer untersucht und mit der PQRSTUVW-Formel die Nullstelle (für Polynome vom Grad 4 mit Hilfe von Mathematica) berechnet:

Trotz der imaginären Zwischenergebnisse ist die irrationale Zahl reell:
2.398284905811659253583752555805656598475028....

Je genauer man sie berechnet (hier 42 Nachkommastellen)
-> um so kleiner wird Fxy[1, 2.398284905811659253583752555805656598475028]=10^-42
und um so größer wird das Maximum bei p=1/Fxy , also um 10^42.

Wenn man also nur "praktikable Punkte" sucht, sollte man den Suchbereich stark einschränken, um nicht unendlich viele Stellen mit unendlich großem Maximum zu bekommen.






Eine Notiz zu diese Forumbeitrag schreiben Notiz   Profil  Quote  Link auf diesen Beitrag Link
hyperG
Senior Letzter Besuch: in der letzten Woche
Dabei seit: 03.02.2017
Mitteilungen: 1360
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.11, eingetragen 2021-01-25


Für ein Polynom mit Faktoren 1...5 ergibt sich folgendes Bild:


Also 2 Isolienien (Farbgrenze pink zu blau) mit Nulldurchgang, was wieder nach Kehrwertbildung unendlich viele Maxima für p bedeutet.



Eine Notiz zu diese Forumbeitrag schreiben Notiz   Profil  Quote  Link auf diesen Beitrag Link
hyperG
Senior Letzter Besuch: in der letzten Woche
Dabei seit: 03.02.2017
Mitteilungen: 1360
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.12, eingetragen 2021-01-25


noch zum letzten Beitrag:
wenn man die Nullstellenfunktion von Fxy sucht, und dann x für den Bereich 1.27...3.36 einschränkt, spuckt Mathematica tatsächlich eine Formel y(x) aus, die den gesamten Bildschirm ausfüllt!!!
Für x=2 habe ich mal eine Probe angesetzt:

(Formel abgeschnitten, da zu groß zum Hochladen)

Komplexes Zwischenergebnis und richtige Nullstelle,
was nach Kehrwertbildung wieder unendlich große Maxima entlang y(x) liefert!

Also selbst für "festgezurrte" p1=p2=p3 ergibt das mehrere Ultrahochkomplizierte Isolinien-Funktionen,
um dann unendlich große Maxima zu bekommen.

Wer braucht denn so etwas?



Eine Notiz zu diese Forumbeitrag schreiben Notiz   Profil  Quote  Link auf diesen Beitrag Link
Goswin
Senior Letzter Besuch: in der letzten Woche
Dabei seit: 18.09.2008
Mitteilungen: 1581
Herkunft: Chile, Ulm
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.13, eingetragen 2021-01-25


2020-12-08 22:28 - Crashdemon in Beitrag No. 5 schreibt:
Die Polynome sind jeweils vierten Grades. Also:

fed-Code einblenden
fed-Code einblenden
fed-Code einblenden

Ich denke die konkreten Koeffizienten sind hierfür unrelevant.

Ob \(a_4\!>\!0\) oder \(a_4\!<\!0\) ist, das ist vermutlich sehr relevant.

Ich halte es zudem für äußerst interessant, dass die Koeffizienten für alle "drei" Polynome dieselben sind; wir haben also grundsätzlich nicht drei, sondern nur ein Polynom.

Du sagst nirgends, dass \(x,y,z\) positiv sein müssen. Dürfen sie wirklich negative Werte oder oder Nullwerte annehmen?


-----------------
/Kyristo meu kimgei kom nhi cumgen ta Gendmogen. (Kol.2:9)



Eine Notiz zu diese Forumbeitrag schreiben Notiz   Profil  Quote  Link auf diesen Beitrag Link
hyperG
Senior Letzter Besuch: in der letzten Woche
Dabei seit: 03.02.2017
Mitteilungen: 1360
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.14, eingetragen 2021-01-25


Übrigens: es gibt auch fertige (numerische) Funktionen zum Suchen von Min & Max,
ABER:
- zig Parameter zu beachten wie hier z.B. bei Mathematica
 (Do[Print[NMinimize[f, {{x, -50, 50}, {y, -50, 50}},
   Method -> {"NelderMead", "ShrinkRatio" -> 0.95,
     "ContractRatio" -> 0.95, "ReflectRatio" -> 2,
     "RandomSeed" -> i}]], {i, 5}] )
- meist werden nur kleine lokale Punkte gefunden
- bei komplizierten 2D-Funktionen, die aus verschachtelten Polynomen bestehen -> ist es fast schon Zufall, im großen Suchbereich wirklich was globales zu finden
...

[Die Antwort wurde nach Beitrag No.12 begonnen.]



Eine Notiz zu diese Forumbeitrag schreiben Notiz   Profil  Quote  Link auf diesen Beitrag Link
hyperG
Senior Letzter Besuch: in der letzten Woche
Dabei seit: 03.02.2017
Mitteilungen: 1360
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.15, eingetragen 2021-01-27


Hier mal ein praktisches Beispiel, wie man durch geeignete Polynome & geeignete Bereichseinschränkungen solche "Extremwertaufgaben" mathematisch angeht. Wie bereits beschrieben betrachte ich nur die Funktion unter dem Bruchstrich, wo man also das Minimum (jedoch > 0) sucht (rotes Tal):


Extremwertaufgaben löst man durch Nullsetzung der jeweiligen partiellen Ableitung (Untersuchung, ob lokales Min oder max lasse ich mal aus Zeitgründen weg, da man es schon an der 3D Grafik eindeutig erkennt)):
mathematica
P1[x_] := x^4*0 + x^3*0 + x^2*6/10 + x*(-2) + 7;
f[x_, y_] := x/P1[x] + y/P1[y] + (1 - x - y)/P1[1 - x - y];
Reduce[{D[f[x, y], x] == 0, D[f[x, y], y] == 0, 
  0.1 < x < 1.6, -1.9 < y < 1.9}, {x, y}, Reals]
Out: x == 0.333333333333333 && y == 0.333333333333333

Das Maximum für p=1/f also 1/f[1/3, 1/3] = 6.4
was die Grafik anschaulich widerspiegelt:


Für "universelle Polynome p1" bekommt man jedoch zu 90% immer viele Nulldurchgänge (Ebene mit z==0), was nach Kehrwertbildung für p ein Sprung von
-unendlich nach +unendlich bedeutet -> was ohne starke Einschränkung des Suchbereiches also unpraktikabel ist:




Eine Notiz zu diese Forumbeitrag schreiben Notiz   Profil  Quote  Link auf diesen Beitrag Link
Neues Thema [Neues Thema] Antworten [Antworten]    Druckversion [Druckversion]

 


Wechsel in ein anderes Forum:
 Suchen    
 
All logos and trademarks in this site are property of their respective owner. The comments are property of their posters, all the rest © 2001-2021 by Matroids Matheplanet
This web site was originally made with PHP-Nuke, a former web portal system written in PHP that seems no longer to be maintained nor supported. PHP-Nuke is Free Software released under the GNU/GPL license.
Ich distanziere mich von rechtswidrigen oder anstößigen Inhalten, die sich trotz aufmerksamer Prüfung hinter hier verwendeten Links verbergen mögen.
Lesen Sie die Nutzungsbedingungen, die Distanzierung, die Datenschutzerklärung und das Impressum.
[Seitenanfang]