Approximation von z=f(x,y) mit nicht-äquidistanten Stützpunkten

Neue Frage »

Hubert1965 Auf diesen Beitrag antworten »
Approximation von z=f(x,y) mit nicht-äquidistanten Stützpunkten
Hallo!

Ich habe mehrere tausend "Messpunkte" (Ergebnisse von Simulationsrechnungen), die gemeinsam eine Fläche im 3D-Raum beschreiben. Die Fläche kann als Funktion z = f(x,y) dargestellt werden, d.h. zu jedem x-y-Paar ist nur genau ein z-Wert möglich.

Hintergrund (für das Problem eigentlich irrelevant)
x und y sind dabei die Spielstärken von simulierten Teilnehmern eines Zweipersonen-Nullsummenspiels (man darf jetzt gerne an Schach denken, tatsächlich heißt das Spiel aber "Sogo"). Der Funktionswert z ist der Erwartungswert für den im langfristigen Mittel zu erwartenden Gewinn pro Spiel (aus Sicht des Spieler mit der Spielstärke y) wenn der Verlierer dem Gewinner jeweils einen Euro zahlen muss.

Wo kommen die Daten her?
Die x- und y-Koordinaten sind die freien Variablen und daher exakt bekannt, die dazugehörige z-Koordinate ist die abhängige Variable und nur als Näherungswert verfügbar. Der Näherungswert liegt als Mittelwert eines Zufalls-Experiments vor, das für jedes x-y-Paar viele tausend Mal durchgeführt wurde. Außer dem Erwartungswert gibt es natürlich auch noch den mittleren Fehler des Erwartungswertes (Standardabweichung des Mittelwerts). Da einige Bereiche dieser Funktion interessanter sind als andere, habe ich bei der Simulationsrechung die Stützpunkte an einigen Stellen dichter gesetzt als an anderen. Für einige Ausschnitte aus der Fläche gibt es sehr wohl Sets von äquidistanten Stützpunkten, die entlag eines periodischen Rasters angeordnet sind, aber einige "Messwerte", die mit besonders hoher Genauigkeit ermittelt wurden, liegen nicht auf einem dieser Raster.

Was ist über die gesuchte Fläche bekannt?
Sie ist definiert für 0 <= x,y < 64
Messwerte existieren für 0 <= x,y <= 2 mit x < y
Antisymmetrie: f(x,y) = -f(y,x)
Wertebereich: -1 < f(x,y) < 1
Schneidet man die Fäche bei einem beliebigen konstanten y, dann ist f(x) streng monoton wachsend. (gleiches gilt wegen der Symetrie natürlich auch für f(y) bei festem x)
Die Fläche weist zwar keine Sprünge auf (also bewirkt eine infinitesimale Änderung von x oder y immer eine nur infinitesimale Änderung des Funktionswertes), aber sie hat eine endliche Anzahl von Knicken (winzige Änderungen von x oder y können zu einer sprunghaften Änderung der Steigung führen). Diese Knicke befinden genau dort, wo x oder y ganzzahlig sind. Lediglich bei x=1 und bei y=1 scheint es keinen Knick zu geben, für dieses Fehlen des Knicks an der genannten Stelle habe ich jedoch keine Erklärung.

Vielleicht auch interessant:
Die Standardabweichung der einzelnen Punkte liegt typischerweise bei ca 0,001 bis 0,01. Einige Punkte, bei denen ich die Simulation besonders lange laufen lies, erreichen aber Standardabweichungen von ca 0,00001.

Was hätte ich gerne?
Ideal wäre eine analytische Funktion, die sich unter Berücksichtigung der oben genannten Randbedingungen möglichst glatt an die Messwerte anschmiegt und mit einem Computer schnell berechnen lässt.
Wahrscheinlich eher realisierbar wird vermutlich aber eine stückweise Annäherung mit Hilfe von Splines sein. Das wäre zwar die zweite Wahl, aber soll mir auch recht sein

Was habe ich damit vor?
Ich will damit mittels Computerprogramm für ein beliebiges x-y-Paar möglichst schnell (innerhalb weniger als 0,1 Sekunden) einen möglichst genauen Wert für z ermitteln, und ich möchte nicht die gesamten Daten aller Stützpunkte dafür benötigen müssen, weil das Programm mit wenigen Kilobyte Speicher auskommen muss.

Ich wäre sehr dankbar für Anregungen um dieses Problem zu lösen.

Danke!

LG
Hubert Schölnast
tigerbine Auf diesen Beitrag antworten »
Vorab:
Willkommen

Auszug aus den Nutzungsbedingungen:

Zitat:
9. Persönliche und private Nutzung
Das Angebot ist nur zur privaten Nutzung freigegeben. Eine gewerbliche Nutzung bedarf immer einer vorherigen Abstimmung und schriftlichen Genehmigung der click for knowledge GmbH.


http://de.wikipedia.org/wiki/Sogo
Hubert1965 Auf diesen Beitrag antworten »

Hallo tigerbine!

Warum antwortest du mit einem Zitat aus den Nutzungsbedingungen? Habe ich irgendwie den Eindruck erweckt, dagegen zu vertoßen? Ober was möchtest du mir damit sagen? Irgendwie verstehe ich jedenfalls nicht was das mit meiner Frage zu tun haben soll.

Liebe Grüße
Hubert
tigerbine Auf diesen Beitrag antworten »

Damit möchte ich fragen, ob deine Frage nur zu privaten Zwecken ist, oder ein kommerzieller Zweck dahinter steckt. Nicht mehr. Wink
Hubert1965 Auf diesen Beitrag antworten »

Na dann frag das nächstemal doch einfach. Augenzwinkern Wink

Ich brauch das für meine Masterthesis (ich studiere Wirtschaftsinformatik). Es ist also zwar nicht 100%ig zu meinem Privatvergnügen, aber es steckt jedenfalls kein kommerzieller Zweck dahinter.

LG
Hubert
tigerbine Auf diesen Beitrag antworten »

Dachte, du würdest mich auch so verstehen.

Zitat:
Ich brauch das für meine Masterthesis (ich studiere Wirtschaftsinformatik).


Bitte beachten [auch die Helfer!], dass wir den Thread nicht löschen werden. Also bitte so unterstützen (Prinzip "Mathe online verstehen!"), dass Hubert das als "Eigenleistung" verwenden kann.

Und nun bin ich endgültig raus und wünsche viel Erfolg. Wink
 
 
Hubert1965 Auf diesen Beitrag antworten »

Danke! Freude

Ich habe leider absolut keine Ahnung wie ich zu einer analytischen Funktion kommen könnte, die zu meinen Daten passt. Eine Polynomfunktion würde ich ja zusammenbringen, aber damit die Funktion zu den Datenpunkten mit ihren jeweiligen "Mess"-Genauigkeiten passt, müsste ich Polynome vom Grad 20 oder höher verwenden, und da denke ich mir, dass es bessere Lösungen gibt.

Für jedes Set von äquidistanten Stützpunkten könnte ich die Funktion auch durch Splines angleichen, und dort, wo sich diesese Areale überschneiden, kann ich das gewichtete Mittel aus diesen Näherungen errechnen. Aber was mache ich dann mit hochgenauen Punkten, die zu keinem dieser Sets gehören?
Hubert1965 Auf diesen Beitrag antworten »

Ich wollte mal kurz darauf hinweisen, dass dieses Problem noch immer auf eine Lösung wartet!
Hubert1965 Auf diesen Beitrag antworten »

Schön langsam bräuchte ich bitte eine Lösung.

Habe ich die Aufgabenstellung unverständlich formuliert? Wenn etwas unklar ist: Bitte nachfragen!
Reksilat Auf diesen Beitrag antworten »

Hallo Hubert,

Ich bin leider kein Fachmann auf dem Gebiet und kann Dir insofern nicht helfen. Allerdings sieht das Problem für mich so komplex aus, dass es wohl die wenigsten innerhalb kurzer Zeit überblicken und lösen können.
Wenn sich nun niemand findet, der das kann und sich dafür die Zeit nimmt, dann musst Du das eben akzeptieren. Das Pushen der eigenen Beiträge ist hier nicht erwünscht – schon der Respekt vor den anderen Fragestellern sollte gebieten, das eigene Thema nicht immer wieder nach oben zu schieben.

Gruß,
Reksilat.
Zellerli Auf diesen Beitrag antworten »

Ich glaube du kommst um mehr Information nicht herum.
Irgendwie muss ja mal die Spielstärke ermittelt worden sein.

Ansonsten sehe ich zwei Möglichkeiten:
Das Interpolieren, wie von dir vorgeschlagen.
Dazu musst du aber bedenken, dass dir einzelne, "interessante" Messpunkte, die genauer sind nicht zwangsläufig mehr bringen als viele, dafür ungenauere Messpunkte. Denn für eine Interpolationsfunktion spielt sowohl Genauigkeit als auch Anzahl an Messwerten eine Rolle.
Ansonsten kannst du deine "interessanten" Messpunkte einbringen, indem du spontane Quer-Rasterlinien einführst, die dann die interessanten Messpunkte beinhalten. Die Monotonie ist ja auch für weder vertikale noch horizontale Pfade gegeben.

Die zweite Möglichkeit ist einmal im groben Raster zu simulieren, dann im immer feiner werdenden Raster, bis der Abstand zwischen den z-Werten zweier Rasterpunkte ausreichend klein ist.
Wenn du dann z.B. für und Werte hast und den für wissen willst, muss der immerhin zwischen den beiden Werten liegen.
Da das ganze zweidimensional ist, gibt es natürlich auch andere Strecken, die zwei andere angrenzende Messpunkte verbinden, zwischen deren z-Wert der Punkt liegen muss.
Vermutlich kam dir die Idee auch schon und das Problem ist, dass das zuviele Punkte wären.
Hubert1965 Auf diesen Beitrag antworten »

Danke, Zellerli.

Im Wesentlichen sind das Anregungen, über die ich mir ohnehin schon Gedanken gemacht habe. Aber ich träume halt noch immer davon, aus meinen Daten irgendwie eine analytische Funktion erzeugen zu können, habe aber absolut keinen Plan wie das gehen soll.

Aber trotzdem: Danke!
Neue Frage »
Antworten »



Verwandte Themen

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