In zellularen Automaten gibt es ein wirklich wichtiges Problem, das so genannte Mehrheitsproblem :
Das Mehrheitsproblem oder die Dichteklassifizierungsaufgabe ist das Problem, eindimensionale Regeln für zellulare Automaten zu finden, die die Mehrheitsabstimmung genau durchführen.
...
Bei einer Konfiguration eines zellularen Automaten mit zwei Zuständen mit insgesamt i + j Zellen, von denen i im Nullzustand und j im Einzustand sind, muss eine korrekte Lösung des Abstimmungsproblems schließlich alle Zellen auf Null setzen, wenn i> j und muss schließlich alle Zellen auf eins setzen, wenn i <j. Der gewünschte Endzustand ist nicht spezifiziert, wenn i = j ist.
Obwohl nachgewiesen wurde, dass keine zellularen Automaten das Hauptproblem in allen Fällen lösen können, gibt es viele Regeln, die es in den meisten Fällen lösen können. Der Gacs-Kurdyumov-Levin-Automat hat eine Genauigkeit von ca. 78% bei zufälligen Anfangsbedingungen. Die GKL-Regel ist nicht kompliziert:
- Radius von 3, was bedeutet, dass der neue Zustand der Zelle von 7 vorherigen Zellen abhängt: von sich selbst, den 3 Zellen rechts und den 3 Zellen links.
- Wenn sich eine Zelle derzeit
O
in einem Status befindet, ist ihr neuer Status der größte Teil von sich selbst, die Zelle befindet sich zu ihrer Linken und die Zelle 3 Schritte zu ihrer Linken. - Wenn sich eine Zelle derzeit
1
in einem Status befindet, ist ihr neuer Status die Mehrheit von sich selbst, die Zelle zu ihrer Rechten und die Zelle 3 Schritte zu ihrer Rechten.
Hier ist ein Beispiel:
0 1 0 1 1 1 0 1 1 0 1 0 0 1
0 1 1 1 1 1 1 1 0 0 1 1 0 0
0 1 1 1 1 1 1 1 1 0 1 0 0 0
0 1 1 1 1 1 1 1 0 1 0 1 0 0
0 1 1 1 1 1 1 0 1 0 1 0 1 0
0 1 1 1 1 1 0 1 0 1 0 1 1 1
1 1 1 1 1 0 1 0 1 1 1 1 1 1
1 1 1 1 0 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1
In diesem Beispiel hat der Zellularautomat 8> 6 korrekt berechnet. Andere Beispiele benötigen längere Zeiträume und erzeugen in der Zwischenzeit einige coole Muster. Unten sind zwei Beispiele, die ich zufällig gefunden habe.
0 0 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 1 1 0 1 1 1 1 0 1 0 0 1 1 1
1 0 0 1 1 1 1 1 1 1 1 1 1 0 1 1 0 0 1 0 0 0 1 0 0 0 0 1 0 0 1 0 0 0 1 0 0 1 1
Das nächste Level erreichen
Soweit meine Internetrecherche gezeigt hat, wurden fast alle akademischen Untersuchungen zum Mehrheitsproblem mit Zertifizierungsstellen in zwei Bundesstaaten durchgeführt. Bei dieser Herausforderung werden wir das Mehrheitsproblem auf Zertifizierungsstellen mit drei Zuständen ausweiten . Ich werde dies das Pluralitätsproblem nennen . Pluralität oder relative Mehrheit bezieht sich auf die Bedingung, in der eine der Optionen mehr Stimmen als jede der Alternativen hat, aber nicht unbedingt die Mehrheit aller Stimmen.
Problemstellung
- Es gibt einen 1D-Zellularautomaten mit 3 Zuständen und Radius 3.
- Es gibt 151 Zellen mit einer kreisförmigen Randbedingung.
- Diese Zellen erhalten einen zufälligen Ausgangszustand, unter der einzigen Bedingung, dass einer der drei Zustände eine strenge Mehrzahl hat. "Zufällig" bedeutet eine unabhängige gleichmäßige Verteilung für jede Zelle.
- Die Genauigkeit einer Regel ist der Prozentsatz der (gültigen) zufälligen Anfangsbedingungen, unter denen sich alle Zellen innerhalb von 10000 Generationen auf den richtigen Zustand (den mit der Mehrzahl) synchronisieren .
- Ziel ist es, eine Regel mit hoher Genauigkeit zu finden,
Pluralitätskantenfälle: Jede Konfiguration mit 50/50/51 ist eine gültige Startkonfiguration (da es eine strenge Vielzahl gibt), während jede Konfiguration mit 51/51/49 nicht gültig ist (da es keine strenge Vielzahl gibt).
Der Suchraum ist 3 ^ 3 ^ 7 (~ 3e1043), weit außerhalb der Reichweite jeder erschöpfenden Suche. Dies bedeutet, dass Sie andere Techniken wie genetische Algorithmen anwenden müssen, um dieses Problem zu lösen. Es wird auch einige menschliche Technik erfordern.
Die 10000-Generierungsregel kann sich ändern, abhängig von den Laufzeiten / der Genauigkeit der Regeln, die die Benutzer finden. Wenn es zu niedrig ist, um angemessene Konvergenzraten zuzulassen, kann ich es erhöhen. Alternativ kann ich ihn absenken, um als Krawattenbrecher zu dienen.
Gewinnen
Der Gewinner ist die Person, die die Radius-3-CA-Regel mit der höchsten Genauigkeit unter allen Teilnehmern einreicht.
Ihr Beitrag sollte enthalten ...
- Eine Beschreibung der Regel ( ggf. mit Wolfram-Code )
- Die Genauigkeitsrate und die Stichprobengröße
- Eine angemessene Erklärung, wie Sie die Regel entdeckt haben, einschließlich der Programme, die Sie geschrieben haben, um sie zu lösen, oder einer "manuellen" Technik. (Dies ist der interessanteste Teil, da alles andere nur rohe Zahlen sind.)
Vorherige Arbeit
- Ein Artikel von Juille und Pollack , der beschreibt, wie sie eine Zwei -Staaten-Regel mit einer Genauigkeit von 86% entwickelt haben.
- In diesem Artikel wurden r = 3, 149-Zellen-CAs mit zwei Zuständen verwendet. Es wurde jedoch nicht versucht, das Mehrheitsproblem zu lösen, sondern Regeln zu finden, die schnell zu einem abwechselnden
1
Gesamtmuster führen0
. Trotz dieser Unterschiede vermute ich, dass viele Techniken ähnlich sein werden. - Eine (nicht sehr hilfreiche, weil hinter einer Paywall stehende) Zeitung von Wolz und de Oliviera, die derzeit den 2-Staaten-Rekord hält