Vielleicht haben Sie etwas Glück mit einem Ansatz , der den genetischen Bildern von Karl Sims ähnelt .
Er verwendet eine einfache Menge von Operatoren in einer LISP-ähnlichen Sprache, so dass die Ausgabe jedes Operators verwendet werden kann, um das Bild zu beeinflussen, ähnlich wie in einigen Shader-Sprachen (dh ein Skalar wäre ein Graustufenwert, ein vector3
wäre RGB
usw.). ).
Obwohl ich denke, dass das Implementierungsmaterial ist, möchten Sie wahrscheinlich seine Schlüsselwörter, die (iirc) alle Grundlagen enthalten:
- Triggerfunktionen (
sin, cos, tan
, etc ..)
- position (
x, y
)
- grundlegende mathematische Operatoren (
sqrt, pow, abs, inverse
)
- Rauschfunktionen (
fBm, noise2, noise3
)
- andere fraktale (
mandelbrot, julia
)
- Interpolationsfunktionen (
lerp, quad, step, smoothstep
)
(Einige der oben genannten Punkte sind möglicherweise nicht in seiner Implementierung enthalten. Ich habe seine Arbeit vor langer Zeit gefunden und tatsächlich ein paar Versuche unternommen, was Sie im Laufe der Jahre beschrieben haben - so dass möglicherweise Erinnerungen verloren gehen :)
Interessant (und schnell) bleiben
Ich hatte ein bisschen Glück mit einem vielschichtigen Ansatz, der die Anzahl toter Entwicklungen massiv reduzierte.
- Für jeden Operator wird eine Reihe von Bereichen generiert (oder aus vorherigen Runden mutiert).
- Diese halten die Werte idealerweise innerhalb eines "vernünftigen" Bereichs für jede Funktion, können sich jedoch zu Bereichen entwickeln, die überraschend nützliche Ergebnisse liefern, was als "richtig" erscheint
- Generiere ein paar Algorithmenbäume
- für jede dieser generieren Sie ein paar Höhenkarten an zufälligen Positionen und bewerten Sie die Fitness
- Wenn wir viele gute Übereinstimmungen haben, entwickeln Sie diesen Zweig etwas weiter und stören dabei die Bereiche von Schritt 1 bei jedem Kind geringfügig
- Andernfalls haben wir wahrscheinlich schlechte Reichweiten. Kehren Sie zu Schritt 1 zurück
Jedoch...
Jetzt habe ich den Fitness- Algorithmus übersprungen. Ich habe hauptsächlich Karl Sims Ansatz der "unnatürlichen Selektion" verwendet, bei dem Sie die aktuelle Generation auf dem mittleren Feld einer Gruppe von Nachkommen sehen (damals bekannt durch Kai's Power Tools) ein bild von dem was ich meine ) ..
Allerdings könnten Sie wahrscheinlich eine Reihe von Trainingsbildern haben, möglicherweise einige aus Satellitenbildern und einige künstliche Bilder mit bestimmten Qualitäten, und dann möglicherweise eine Wavelet- oder 2D-FFT-Analyse auf ihnen im Vergleich zu dem Gelände, das Sie testen?
Dies ist ein interessantes Thema, aber ich bezweifle, dass Sie eine Antwort auf :) brauchten
EDIT: ahh. musste eine Reihe von Links entfernen, weil ich ein neuer Benutzer bin: - |