Alle Farben befinden sich auf der Oberfläche des RGB-Würfels, sofern ich mich nicht irre, aus demselben Grund, aus dem die gesamte elektrische Ladung auf der Oberfläche der elektrischen Leiter erscheint. Dies schlägt die folgende Methode zur Bestimmung der Farben vor:
- den RGB-Farbraum als kartesischen XYZ-Raum interpretieren;
- Kandidatenfarben als geladene Teilchen interpretieren, z. B. Elektronen;
- Finden Sie den Niedrigenergiezustand des Systems durch z. B. simuliertes Tempern.
n ∼ 15
Sobald Partikel konvergieren, können Sie Farben anordnen, indem Sie Punkte als Farben interpretieren. Anfänglich können Partikel mit geringem Abstand zufällig auf der Würfeloberfläche angeordnet werden (hilft bei Konvergenz- und Stabilitätsproblemen). Das Platzieren kleiner Gruppen auf den Flächen des Würfels sollte funktionieren.
Um zu vermeiden, dass Sie in einem lokalen (und nicht in einem globalen) Minimum stecken bleiben, können Sie nach der Konvergenz ein kleines zufälliges elektrisches Feld "pulsieren" und prüfen, ob das System zur gleichen oder zu einer anderen Konfiguration zurückkehrt. Es ist etwas unwahrscheinlich, dass zufällig platzierte Partikel dies in diesem Szenario tun, aber möglich.
BEARBEITEN:
Wie in den Kommentaren ausgeführt, gilt die Annahme, dass optimale Lösungen nur auf der Oberfläche liegen sollten, wahrscheinlich nicht für alle Geometrien im diskreten Fall.
Glücklicherweise hat dies wenig Einfluss auf den Rest der oben beschriebenen Technik. Partikel können anfänglich überall platziert werden; Lassen Sie einfach etwas Platz zwischen den Partikelpaaren, um Stabilität und Bedeckung zu gewährleisten, und iterieren Sie das System dann zur Konvergenz. Pulsieren Sie dann einige Male (möglicherweise mit zunehmender Intensität), um festzustellen, ob das System zu einer anderen (möglicherweise besseren) Konfiguration konvergieren kann .
Beachten Sie auch, dass ich glaube, dass diese Methode so etwas wie "(harmonische?) Durchschnittliche Entfernung zwischen Teilchenpaaren" maximiert. Wenn Sie den Mindestabstand zwischen Partikelpaaren oder einen anderen Durchschnitt (geometrisch?) Zwischen Partikelpaaren maximieren möchten, ist dies möglicherweise nicht die beste Lösung.
Ich bin auf jeden Fall der Meinung, dass diese Technik Ihnen eine einfache Möglichkeit bietet, gute, ungefähr optimale Farbsätze zu finden. Für Ihren Anwendungsfall ist es wahrscheinlich nicht erforderlich, tatsächliche "optimale" Lösungen zu erhalten. Wenn eine genaue und nachweislich optimale Lösung gewünscht wird, ist die numerische Simulation wahrscheinlich nicht der beste Weg.