Not logged inCSS-Forum
Forum CSS-Online Help Search Login
CSS-Shop Impressum Datenschutz
Up Topic Hauptforen / CSS-Forum / Synergy chess ... wenn Engines miteinander verheiratet werden!
- - By Frank Quisinsky Date 2022-06-04 22:47
Hallo zusammen,

habe das Thema ja schön öfters angesprochen und denke persönlich, dass ich solchen Ideen die Zukunft steckt.
Engine-Orgien ...

Engines miteinander verbinden und aus dem Teamwork heraus für noch bessere Analysen sorgen!

Hier mal ein schönes neues Projekt:
https://github.com/scacchig/Synergy-Chess

Viel Spaß beim Ausprobieren!
Junge, Junge, Junge ... hier passieren Dinger du?!

Gruß
Frank
Parent - - By Wilhelm Hudetz Date 2022-06-04 23:05 Upvotes 2
Hallo Frank,
das geht auch ganz einfach in der Banksia-GUI. Diverse Möglichkeiten der Zugauswahl oder Figurenanzahl.
Siehe CM-Hybrid http://descent.at/files/hybrid.html

Grüße
Wilhelm
Parent - By Frank Quisinsky Date 2022-06-04 23:44
Hi Wilhelm,

jo, das muss ich mir auch noch ansehen.
Bin derzeit eher mit Liground, Lucas Chess und ChessExplorer Pro dran und sehr überrascht über das stabile Laufverhalten der GUIs.
Mark hat wirklich sehr viel gemacht und arbeitet sehr detailverliebt.

Bei Banksia hänge ich 5 oder 6 Versionen zurück.

Mein derzeitiger Favorit ist CuteChess.
Aber die genannten drei GUIs sind wirklich ausgesprochen gut!

Viele Grüße
Frank
Parent - - By Hans Nepomuk Date 2022-06-05 19:28
Frank Quisinsky schrieb:

Hallo zusammen,

habe das Thema ja schön öfters angesprochen und denke persönlich, dass ich solchen Ideen die Zukunft steckt.
Engine-Orgien ...

Engines miteinander verbinden und aus dem Teamwork heraus für noch bessere Analysen sorgen!

Hier mal ein schönes neues Projekt:
<a class='ura' href='https://github.com/scacchig/Synergy-Chess'>https://github.com/scacchig/Synergy-Chess</a>

Viel Spaß beim Ausprobieren!
Junge, Junge, Junge ... hier passieren Dinger du?!

Gruß
Frank

Gab es das nicht früher schon mal (im Ansatz) und nannte sich "Dreihirn"? In einer Shredder-GUI?
Soweit ich mich erinnere, konnte man Stockfish dafür nicht so gut nutzen, weil das Programm immer eine optimistischere Bewertung anzeigte als die anderen Programme?
Ist das bei Stockfish eigentlich immer noch so?
Parent - - By Frank Quisinsky Date 2022-06-06 08:17 Edited 2022-06-06 08:24
Hallo Hans,

das ist grundsätzlich ein Problem und macht die Ideen rund um "Dreihirn" schwierig umsetzbar.
Spreche von den Bewertungen.
Hast Du bei Deiner Anmerkung im Grunde absolut richtig erkannt.

Hatten wir letztens eine schöne Diskussion hier im Forum, bei der es darum ging die Bewertungen zu bewerten.
Vermutlich der Schlüssel zur Umsetzung!

Also, nicht nur bei Stockfish ...
Generell sind viele Bewertungen von NN Engines anders.
Meist gar "richtiger" und mithin mit einem sensationellen Touch versehen!

Wenn denn bewährte Eröffnungssysteme so kurzer Hand als fragwürdig dargestellt werden!?

Ich weiß z. B. nicht, mit welchen Ideen der Programmierer von iCE hier so erfolgreich war / ist.
Lange vor Neural Network!!

Bei iCE werden z. B. ganze Eröffnungssysteme eher fragwürdig bewertet und das kuriose ist ...
iCE behält in 75% der Fälle gar recht, kann es im Vergleich aufgrund der eigenen Spielstärke zwar nicht runter exerzieren aber
die Ansätze vom Programmierer, für diese meist excellenten Bewertungen, müssen als "Spitzenleistung" bewertet werden.

Wenn wir mit unserer Denke meinen ...

Schaue mal ...
Stockfish bewertet viel zu hoch, höher als andere Programme ...

sollten wir nicht auf die Suche gehen, nach Bewertungen, die ausgeglichener sind.
Was viele tun, die sich für die ganzen Clones interessieren und oftmals argumentieren ... die Bewertung ist realistischer!

Zur Shredder-GUI:
Traue es Stefan durchaus zu dieses Thema zu perfektionieren.
Nur bei der Shredder-GUI passiert nichts.

Insofern bin ich froh wenn sich andere dem Thema widmen!

Stelle Dir nach folgendes Szenario vor:
Du hast dir 10 Lieblinge bei den Engines aufgrund Deiner eigenen Einschätzungen erarbeitet.

Nun bildest Du zwei Engine Gruppen!
Lässt dann diese beiden Gruppenkonstellationen gegeneinander antreten.

Dieser Mix eröffnet ganz neue Erkenntnisse und Möglichkeiten.
Möchte gar nicht daran denken wie genau dieses Thema auch hinsichtlich GUI Entwicklung ausgeschlachtet werden könnte.
Würde Martin bombardieren mit Vorschlägen und Ideen, wenn wir denn noch zusammenarbeiten würden!

Für mich ist das alles sehr eindeutig ...
Das ist das i-Tüpfelchen auf dem was in den letzten Jahren passierte!

Aber der Schlüssel ist ...
Die Bewertungen der Engines zu knacken, und zwar so, das genau das was die Engine-Programmierer tun nicht beeinflusst wird.
Also, komisch aussehende Bewertungen nicht verurteilt werden. Ganz im Gegenteil, die müssen gesondert berücksichtigt werden ... siehe das iCE-Beispiel!

Viele Grüße
Frank
Parent - By Frank Quisinsky Date 2022-06-06 08:32 Edited 2022-06-06 08:34
Müsste wirklich mal einen Rundlauf starten.
Die drei Programmierer von iCE, Fizbo und SmarThink einbeziehen um in deren Gedankenwelt einzutauchen!

Vermutlich:

1. Bei Fizbo stand im Vordergrund spekutlatives, riskantes zu spielen.
Das erklärt die deutlich höheren Bewertungen in offenen Stellungen.

2. Bei SmarThink im Grunde völlig verdreht umgekehrt.
Hier wurde das positionelle Schach bei der Betrachtung nach vorne gezogen.
Dummerweise ist SmarThink taktisch sehr anfällig und die Ideen gehen unter.

3. Bei iCE ist es auch wieder krass anders.
Aber dahinter bin ich nie gekommen aber die Ansätze vom Programmierer scheinen genial zu sein.

"Anders" zu bewerten ist daher kein K.O. Kriterium ... die Sache wird dann eher erst Recht interessant.

Bewertungen bewerten ...
Wenn es gelingt das alles in Kombination der fantastischen NN Möglichkeiten unter einem Hut zu bekommen ...

Dann werden wir aus dem "Hüpfen" nicht mehr raus kommen und natürlich beim Hören von Bach
würde Herr Romstad sicherlich noch hinzufügen.



Gruß
Frank
Parent - - By Chess Player Date 2022-06-06 09:58
Frank Quisinsky schrieb:


Zur Shredder-GUI:
Traue es Stefan durchaus zu dieses Thema zu perfektionieren.
Nur bei der Shredder-GUI passiert nichts.

Viele Grüße
Frank


Dein Wunsch ist verständlich, nur weiß eben der Programmierer daß das eben nicht möglich ist.
Parent - By Frank Quisinsky Date 2022-06-06 10:11 Edited 2022-06-06 10:14
Glaube ich nicht.
Mit einfachen Ansätzen konnten wir das Problem bei FEOBOS lösen.

Legst Du eine Schablone über die Bewertungen (bei FEOBOS genau genommen 41.614x passiert), kann aus einem Bewertungschaos dann doch wieder vereint werden.
Man darf sich vor der Arbeit nur nicht drücken, muss das einfach angehen oder eine Umsetzung versuchen.

Bei FEOBOS hatten wir dann das Problem, dass z. B. von den 41.614 eine der 10 engines zu Unrecht aussortierte.
Wir merkten das trotz Vereinheitlichung (Anpassungen der Evals) Stellungen verloren gingen.

Auch das lösten wir, in dem wir dann zum Abschluss des Projektes erlaubten das es einen Aussetzer geben darf.
So holten wir ca. 500 Stellungen zurück ins Boot.

Gibt immer Weg und Möglichkeiten!
Muss man mit vielen Tricks und Kniffen arbeiten.
Wäre wirklich etwas für mich gewesen und mit Martin hätte ich den perfekten Programmierer gehabt.
Auch wenn Arena in vieler Hinsicht um Jahre voraus war aber früher war an eine Umsetzung nicht zu denken.
Wir hatten das auf dem Schirm aber die Engine Spielstärken gaben es nicht her.

Zugegeben, es ist extrem schwierig ...
Nichts ist aber unmöglich!!
Parent - - By Hans Nepomuk Date 2022-06-09 20:50
Frank Quisinsky schrieb:
.
.
.
Schaue mal ...
Stockfish bewertet viel zu hoch, höher als andere Programme ...

sollten wir nicht auf die Suche gehen, nach Bewertungen, die ausgeglichener sind.
.
.
.
Gibt es diese Möglichkeit nicht bereits?
Mit Hilfe der Bilanz der "freien Felder" und "Wirkungsgewichte" z.B. hätte man doch schon ein weiteres Kriteruim das für jede Engine gleich ist....nur so eine Idee.
Ich kenne es nicht, habe nur davon gehört, aber gab es da nicht mal eine Art Engine oder Programm, dass seine Züge danach ausgewählt haben soll?
Vielleicht weiß ein anderer mehr darüber.
Parent - By Frank Quisinsky Date 2022-06-09 20:59
Hallo Hans,

habe ich noch nicht gehört!

Mir schwebte eher etwas vor analog zu Neural Network Ideen.
Aus einer puren Datenbank heraus erfolgt eine Bewertung mit der Maßgabe das weitere Beeinflussungsfaktoren mitentscheiden.
Also Stats und Auswertung der erfolgten Engine-Analysen.

So dachte ich mir das immer ...

Gibt sicherlich x andere Ideen!
Mal schauen, organisiere derzeit ein wenig das nächste FEOBOS Projekt und arbeite an einer Ideenliste.
Also drauf was nicht gut war, besser gemacht werden könnte und ergänzend hinzu kommen könnte.
Vielleicht fällt mir dann auch wieder etwas neues ein.
Hier geht es ja auch um Engine-Teamwork!

Muss das noch alles mit Klaus besprechen.
Aber ich starte eher erst im September damit.

Viele Grüße
Frank
Parent - - By Benno Hartwig Date 2022-06-06 13:38 Upvotes 1
Ich stelle mir gerade ein Team vor, bestehen aus Carlsen und 7 durchschnittlichen Bundesligaspielern.
Und jetzt verabreden die ein irgendwie demokratisches(!) Vorgehen, "beste" Züge auszuwählen.
Sollte ich dann wirklich Gutes erwarten?

Ich denke, um wirklich aus der Vielzahl der Engines Benefit ziehen zu können, braucht es eine gezielte Nachanalyse durch die Top-Engine von besonderen Ergebnissen, die andere Engines lieferten.
Damit meine ich: Wenn eine Engine meint deutlich Vorteil erreichen zu können, lohnt es dessen HV noch mal genauer zu überprüfen. Wenn eine Engine meint, der Zug der Top-Engine sei deutlich widerlegt, so sollte die Widerlegung genauer nachanalysiert werden.
Diese Nachanalysen kosten zwar Zeit, diese Zeit wäre aber vielleicht doch sinnvoll investiert.
Parent - - By Frank Quisinsky Date 2022-06-06 14:35 Edited 2022-06-06 14:38
Hi Benno,

nehmen wir Carlsen und sagen jetzt vereinfacht: 2850 Elo
Nehmen wir die 7 durchschnittlichen Bundesliga Spieler und sagen jetzt vereinfacht: Durchschnitt = 2500 Elo

So stark 2500 Elo auch immer ist ...
Wahrscheinlich macht Carlsen die auch im Simultan platt.

Carlsen muss sich nicht vor Angst krümmen.
Es sein denn Kaliber wie Ivantschuk, So etc. sitzen ihm gegenüber.
Ein paar andere die sich als Speziallisten zu diversen Fachgebieten herauskristalisiert haben.

Da wird sich Carlsen denken: So ein Mist ... jetzt geht es mir an den Kragen!
Na ja, der denkt eher ... kommt nur alle zusammen, ich bin bereit.

Beim Computerschach schaut das anders aus.
Wir reden ja nicht von 2850 oder von 2500 Elo.
Wir reden davon, dass die z. B. die TOP-41 eine durchschnittliche Spielstärke von 3220 Elo haben.

Und bei längeren Bedenkzeiten ist der Vorsprung von SF z. B. auf Arasan keine 300 oder 350 Elo wie im Blitz sondern 200 Elo.

Wir wissen, dass sehr viele Engines wirklich mit sehr krassen Stärken daher kommen.
Ich sehe das ja schon alleine bei meinen Analysen und vielen Steinen auf dem Brett.
Da spielt z. B. Wasp bei seiner Stärke teils komplett andere Angriffszüge als Stockfish und keinesfalls bei allen muss Stockfish später zugeben das diese sehr gut sind.

Was passiert wenn z. B. "unsere" Nummer 1 Stockfish nun gegen einen Verbund aus 7 Engines antritt, die wirklich unterschiedliche Stärken haben.
Die Schwächen einzelner sind bei einem Team also gar nicht mehr so entscheidend, eher die Stärken!!

Die "Master" Engine oder die "Entscheidungs-Engine" muss zwangsläufig nicht eine Engine sein.
Selbst wenn es eine Engine ist, muss diese nicht zwangsläufig aus dem eigens gefundenen besten Zug logisch entscheiden, auch unlogische Entscheidungen wären denkbar.

Es stellt sich überhaupt die Frage, ob eine "Entscheidungs-Engine notwendig ist wenn z. B. ein mögliches Konzept "Bewertungen zu bewerten" vernünftig umgesetzt wurde.

Sehe das selbst also nicht wirklich als eine Hürde ...
Es gibt meines Erachtens nur einen einzigen golden Schlüssel und das wäre ...

Die Bewertungen richtig zu bewerten!
Das muss keine Engine tun oder kann eine speziell programmierte Engine tun die sich mehr an Statistiken und Wahrscheinlichkeiten hält als an berechnete Züge.

Wir brauchen also keinen "Indianer Jones" um den golden Schlüssel zu finden.
Oder jahrelang nach der Bundeslade fahnden.

Den goldenen Schlüssel gibt es noch gar nicht!
Ein Waffenschmied muss her der diesen zunächst mal anfertigt.

Viele Grüße
Frank
Parent - - By Peter Martan Date 2022-06-10 08:58 Edited 2022-06-10 09:01
Geh Frank, frag doch mal du Ferdy, ob er nicht doch wieder mal ein Nucleus Update machen könnte, du hast vielleicht einen besonderen Draht zu ihm? Eigentlich bräuchte man wirklich notwendig nur mehr Hash pro Engine einstellbar, alles andere könnte warten. Naja, wenn die fixe Zeiteinteilung wenigstens auch bei automatischen Test- Suiten funktionierte, das wäre schon auch schön, weil man dann leichter vergleichen könnte, wenn nicht immer nach jeder Stellung manuell neu gestartet werden müsste.

Ich hab' ihn mal auf CCC vor längerer Zeit drauf angeschrieben, aber da hat er abgewunken. Wär' schade um das feine Teil, wenn's in Vergessenheit geriete, meinst du nicht auch?
Parent - - By Stefan Pohl Date 2022-06-10 17:10
Diese Art der Synergie bringts doch nicht. Frißt zu viel Ressourcen, wenn mehrere Engines parallel laufen. Und wer soll schon richtig entscheiden, welcher Zug der beste ist? Dieses ganze Mehrhirnkonzept ist doch längst von der Realität überholt worden. Die echte Synergie findet doch längst statt. Und zwar innerhalb von Stockfish:
Die nnue Netze von SF basieren schon lange ganz oder teilweise auf Lc0 Evals aus den Lc0 Training-Runs.
Beispielsweise das Netz vom 14.5., das jetzt in der aktuellen Stockfish Dev-Version werkelt:

First training session invocation:
python3 train.py \
../nnue-pytorch-training/data/nodes5000pv2_UHO.binpack \

Second training session invocation:
python3 train.py \
../nnue-pytorch-training/data/T60T70wIsRightFarseerT60T74T75T76.binpack \
Dieser zweite Trainingsrun für das SF nnue-Netz lief also mit Lc0 Lern-Daten (T60, T74, T75, T76 sind die verschiedenen Lc0 Trainingruns)

Damit wurde Stockfish de facto zu einer Stockfish/Lc0 Hybrid-Engine. Dies ist die viel bessere Form, um Synergieeffekte zu generieren und davon zu profitieren, weil hier das "Beste aus beiden Welten" in einer Engine vereinigt wird:
Das unerreicht hohe positionelle Verständnis von Lc0 (das in Lc0 selbst aber an dem hohen Berechnungsaufwand und der daraus resultierenden, sehr geringen nps-Zahl krankt) wird per Trainigsdaten in die einfacheren, aber deswegen auch viel schnelleren nnue-Netze von Stockfish integriert. Sodaß die Engine nun von der schnellen und sehr hoch optimierten Suche von Stockfish profitiert, aber gleichzeitig eben auch vom herausragenden Positionsverständnis von Lc0.
Das ist Synergie in Quasi-Perfektion. Kein Mehrhirnkonzept basierend auf mehreren unabhängig voneinander laufenden Engines kann da mithalten.
Parent - By Peter Martan Date 2022-06-10 17:40
Du weißt nicht, was Nucleus ist, von dem ich schrieb, nein?
Parent - By Frank Quisinsky Date 2022-06-10 18:13 Edited 2022-06-10 18:18
Hallo,

muss ein wenig unterscheiden.
Grundsätzlich könnte man das so sehen, teile die Meinung aber nur teilweise.

Bei weniger Figuren auf dem Brett wird ein Verbund von Engines gegen die derzeit besten Schachprogrammen kaum größere Vorteile erspielen.
Die Wahrscheinlichkeit dafür sinkt je weniger Figuren auf dem Brett sind.

Selbst analysiere ich meist mit 8 zeitgleich laufenden Engines. Da mich Stellungen mit vielen Figuren auf dem Brett interessieren sehe ich regelmäßig, dass die besten Engines oftmals einen Schubser brauchen.
z. B. Stockfish sieht den Angriffszug nicht aber ein oder zwei Halbzüge später ändert sich das und oftmals kommen noch bessere Varianten zu Stande als die Engine die einleitete vielleicht als erste herausgefunden hat.
Grundsätzlich ist es so, dass Engines wie Stockfish oder Komodo bei vielen Figuren auf dem Brett mehr sehen aber keinesfalls ist es so, dass diese in Perfektion spielen.

Es wird z. B. auch die These vertreten, dass man mehrere Network Files in einem Verbund zusammen schließen könnte. Das bedeutet Prozessor-Ressourcen einsparen. Wahrscheinlich ist die Idee gut und es kommt unter Umständen zu einem leichten Anstieg der Gesamtspielstärke. Aber grundsätzlich ändert sich das Gesicht der Engine durch Network Files nicht. Teils, aber nicht maßgeblich!

Je mehr Zeit ins Land zieht, desto mehr werden die Ideen vielleicht im Nirwana verschwinden ... wenn man es denn aus dem Blickwinkel der besten Engines dieser Zeit sieht.

Nun haben wir aber über 1.000 verschiedene Programme und verschiedene Programme zu mixen bedeutet "Fun". Kann eine Kombination von Spark / SmarThink / Hakka gegen eine Engine mit 150 Elo mehr dagegen halten. Produzieren die drei dann einen noch reizvolleren Spielstil, als sie ohnehin schon ohne Verbund produzieren?

Ferner denke ich auch an die Möglichkeiten innerhalb der GUIs.
Das ist ein Feld an dem sich GUI Programmierer mit Features und spannenden Funktionen regelrecht austoben können.

Lc0 ist z. B. im positionellen Spiel echt eine Marke.
Das gebe ich mittlerweile, nach meinem Test auf der der RTX 3070-Ti, gerne zu.

Das sollte uns aber nicht lähmen!
Stillstand ist kein Fortschritt!

Viele Grüße
Frank
Parent - By Thorsten Czub Date 2022-06-28 19:08
Warum sollte ein mehrhirn NICHT funktionieren?!

Ist nur ne frage der Entscheider Software.
Parent - - By Frank Quisinsky Date 2022-06-10 18:24
Hallo Peter,

ich muss passen.
Ich kenne nunmal nicht alles!

Habe Nucleus nie ausprobieret!

Nun ist Ferdinand derzeit aktiv und scheint richtig Lust zu haben etwas zu tun.
Das Thema an dem er dran ist, ist viel komplizierter als es oberflächlich ausschaut.

Würde Ferdy eine private Message in TalkChess senden, vielleicht nicht heute oder morgen.
Selbst hatte ich seit FEOBOS im Jahr 2016 keinen E-Mail Kontakt zu ihm.

Wir ergänzen uns oftmals nur bei Denkanstössen zu sinnvollen Tools (aus meiner Sicht).
Es sind schon sehr schöne Tools dabei herausgekommen.

Bin also nicht der richtige Ansprechpartner um Ferdinand auf Nucleus anzusprechen!
Schaue mir Nucleus aber die Tage an, hast mich neugierig gemacht.

Viele Grüße
Frank
Parent - By Peter Martan Date 2022-06-10 18:36
Alles klar, Frank.
Parent - - By Peter Martan Date 2022-06-28 09:20
Das war ich noch schuldig zu dem Thema, erst nachdem ich Ferdy geschrieben hatte (ich glaube, er hat's noch gar nicht gelesen, ist jedenfalls immer noch in der Outbox im CCC unter meinen PMs) bin ich draufgekommen, dass er ohnehin schon ein Update von Nucleus gemacht hatte, die Engine heißt jetzt Aiquiri (ein AI- Cocktail sozusagen )

http://talkchess.com/forum3/viewtopic.php?p=763449#p763449

Da kann man in einer Konfigurationsdatei alle möglichen UCI- Optionen der Engines, die als Slaves und Master fungieren, einstellen, unter anderem beliebig viel Hash zuteilen.
Funktioniert von den 3 GUIs, in denen ich's bisher probiert habe (Fritz, Shredder und) nur in Arena, da aber prima, was ich bisher gesehen habe.
Neurlich danke an Ferdinand Mosca, der Mann hat wirklich schon sehr viel fürs Computerschach geleistet.
Parent - By Frank Quisinsky Date 2022-06-28 14:26 Upvotes 1
Hi Peter,

vor allem sein Verständnis und seine Auffassungsgabe etwas umzusetzen.
Man könnte sagen Ferdi ist wirklich in der Lage wie eine Maschine zu denken oder in kurzer Zeit eher spielend etwas umzusetzen.

Sicherlich auch viele andere Programmierer aber für mich ist Ferdi ein Genie dieser Zeit.

Schade das es nur in Arena funktioniert.
Habe die GUI seit dem Ende der Zusammenarbeit mit Martin glaube ich nur 1x kurz wieder ausgekramt.

Viele Grüß
Frank
Parent - - By Thomas Plaschke Date 2022-06-28 16:39 Upvotes 1
Danke für die Info!

Es funktioniert recht unkompliziert dank der Konfigurationsdatei, die in der Syntax den CB-.uci Dateien gleicht (kann man direkt hineinkopieren).

Ein "master" wählt aus den bestmoves der "slaves" den Zug Aiquiris aus. Nach erstem Experimentieren empfehle ich, zu überprüfen, ob die ausgewählten Engines auch arbeiten. Ich hatte Critter und Fizbo als "slaves" und Gull als "master" bestimmt (Critter als Taktiker, Fizbo für "ungewöhnliche" Züge und Gull als Allrounder - man sollte Engines wählen, die sich im Stil aber möglichst nicht viel in der Spielstärke unterscheiden, denke ich). Bei einem Blick in den Taskmanager stellte ich fest, dass Fizbo für seinen Vorschlag kaum gerechnet haben dürfte (und der Zeitverbrauch Aiquiris unlogisch war). Fizbo2 funktionierte nicht richtig mit Aiquiri. Gegen Laser ausgetauscht war die Funktionsweise nachzuvollziehen. Alles nicht besonders aufwändig und sehr interessant (wenn man nicht gerade einen Haufen Stockfish-Kopien dafür nutzt).

Vele Grüße
Th. Plaschke
Parent - - By Stefan Pohl Date 2022-06-30 06:51 Edited 2022-06-30 06:57 Upvotes 1
Thomas Plaschke schrieb:

Danke für die Info!

Es funktioniert recht unkompliziert dank der Konfigurationsdatei, die in der Syntax den CB-.uci Dateien gleicht (kann man direkt hineinkopieren).

Ein "master" wählt aus den bestmoves der "slaves" den Zug Aiquiris aus. Nach erstem Experimentieren empfehle ich, zu überprüfen, ob die ausgewählten Engines auch arbeiten. Ich hatte Critter und Fizbo als "slaves" und Gull als "master" bestimmt (Critter als Taktiker, Fizbo für "ungewöhnliche" Züge und Gull als Allrounder - man sollte Engines wählen, die sich im Stil aber möglichst nicht viel in der Spielstärke unterscheiden, denke ich). Bei einem Blick in den Taskmanager stellte ich fest, dass Fizbo für seinen Vorschlag kaum gerechnet haben dürfte (und der Zeitverbrauch Aiquiris unlogisch war). Fizbo2 funktionierte nicht richtig mit Aiquiri. Gegen Laser ausgetauscht war die Funktionsweise nachzuvollziehen. Alles nicht besonders aufwändig und sehr interessant (wenn man nicht gerade einen Haufen Stockfish-Kopien dafür nutzt).

Vele Grüße
Th. Plaschke


Nucleus kannte ich, aiquiri bisher nicht (Asche auf mein Haupt)
aiquiri läuft mit cutechess-cli mit Blitz plus Inkrement Zeitkontrollen, was ja heutzutage die übliche Methode ist (alles, was in cutechess-cli nicht läuft, kann man sowieso vergessen). Zu Beginn hatte ich mit vielen timelosses zu kämpfen. Nach einigen Tests klappt es nun aber gut: Ich habe in cutechess-cli die timemargin auf 2000 erhöht und die Bedenkzeit-Aufteilung in aiquiri folgendermassen eingestellt:
slave1 und slave 2 jeweils auf 35, master auf 15 (also 85% insgesamt) (default ist 40/40/20). Stand jetzt habe ich in knapp 4000 Partien einen timeloss gehabt - vernachlässigbar.

Jetzt mache ich für meine Website zum ersten Mal ein großes 3Hirn Experiment:

Ich nutze 2 sehr aggressive (gemäß meiner EAS-Rangliste, die es ja erstmals möglich macht Aggressivität wirklich zu messen!) aber schwächere (relativ gesehen!) Engines gleicher Stärke:
Velvet 3.3.0 (3305 SPCC-Elo) und Pedone 3 (3341 SPCC-Elo)
und 2 sehr solide (gemäß meiner EAS-Rangliste) spielende und deutlich stärkere Engines:
Berserk 9 (3644 SPCC-Elo) und Koivisto 8.13 (ebenfalls 3644 SPCC-Elo)

Damit habe ich nun 2 verschiedene 3Hirne erstellt:
Dreihirn 1: master: Berserk 9, slave 1: Pedone 3, slave 2: Velvet 3.3.0
Dreihirn 2: master: Velvet 3.3.0, slave 1: Berserk 9, slave 2: Koivisto 8.13

Ideen dabei: Kann Dreihirn 1 an Eloleistung (dank des starken Masters, verglichen mit den schwächeren Slaves) zulegen, ohne dabei an Aggressivität (zu viel) einzubüssen (wegen des solide spielenden Masters)?
Und kann Dreihirn 2 an Aggressivität zulegen (dank des aggressiv spielenden Masters), ohne zuviel Elo zu verlieren (weil der (schwächere) Master deutlich weniger Elo als die (stärkeren) Slaves hat).
Dies werde ich nun statitisch zweiflesfrei feststellen, indem jedes der beiden Dreihirne einen vollen Testrun unter SPCC-Ranglisten Bedingungen machen wird. Jeweils 9000 Partien, singlethread, 3min+1sec Bedenkzeit.
aiquiri ist ja übrigens ein klassisches Dreihirn: Der Master wählt nur den vermeintlich besseren der beiden Slave-Züge (falls sich die beiden Slave-Züge unterscheiden), spielt aber keine eigenen Züge aus.

Ich zweifle nachwievor daran, daß auch nur eine der Ideen wirklich funktionieren wird, da ich diesen klassischen Dreihirnansatz nachwievor für nicht sinnvoll halte. Aber wirklich ernsthaft geprüft, mit statistisch relevant vielen Partien, wurde das bisher meines Wissens nach noch nie. Vielleicht liege ich ja auch falsch und das Dreihirn funktioniert? Mal sehen.
Die beiden Testruns laufen auf meinen beiden 12core Notebooks momentan. Ergebnis vorausichtlich am Wochenende in der "Experiments"-Sektion meiner Website. Ich bin gespannt!
Parent - - By Thomas Plaschke Date 2022-06-30 07:31
Ich bin gespannt auf das Ergebnis. Gedanklich spiele ich noch die Variante zweier schwächerer slave-Engines mit einer Spitzenengine als master durch. Der master müsste immer wieder zwischen, von ihm erkannt objektiv schlechteren Zügen wählen. Welche Einfluss auf die Spielstärke mag das haben? Und eigentlich dürfte das Aiquiri-Dreihirn wegen des Bedenkzeit-Mankos nicht mithalten können. Aber mal sehen, was Du herausfindest.

Viele Grüße
Th. Plaschke
Parent - - By Stefan Pohl Date 2022-06-30 07:56 Upvotes 1
Thomas Plaschke schrieb:

Ich bin gespannt auf das Ergebnis. Gedanklich spiele ich noch die Variante zweier schwächerer slave-Engines mit einer Spitzenengine als master durch. Der master müsste immer wieder zwischen, von ihm erkannt objektiv schlechteren Zügen wählen. Welche Einfluss auf die Spielstärke mag das haben? Und eigentlich dürfte das Aiquiri-Dreihirn wegen des Bedenkzeit-Mankos nicht mithalten können. Aber mal sehen, was Du herausfindest.

Viele Grüße
Th. Plaschke


Dreihirn 2 geht leider nicht. Weder Koivisto 8.13 noch (alternativ) Ethereal 13.75 laufen unter aquiri laut taskmanager. Schade. Das muß ich abbrechen.
Dreihirn 1 geht aber geht, das lasse ich laufen. Und das ist ja die von dir genannte Variante ("zweier schwächerer slave-Engines mit einer Spitzenengine als master"), nämlich zwei schwächere (aber aggressive) Engines (Velvet 3.3.0 und Pedone 3) und eine viel stärkere Masterengine (Berserk 9). Auch, wenn Berserk nicht ganz "Spitze" ist, ist er doch viel viel stärker als die slaves (gute +300 Elo!)
Parent - By Stefan Pohl Date 2022-06-30 08:24
Update:
Dreihirn 2 habe ich mit zwei neuen (leider erheblich schwächeren) Engines als slaves gestartet, die auch sehr solide (=passiv) spielen (schlechter EAS-Score), nämlich Igel 3.1.0 und Clover 3.1. Beide sind aber etwa gleich stark (3448 und 3401 SPCC-Elo) und gute 100 Elo besser als Velvet 3.3.0 (der aggressive Master). Dieses Dreihirn scheint zu laufen.
Daumen drücken
Parent - - By Stefan Pohl Date 2022-07-03 13:32
Die Ergebnisse sind nun online. Da ich in Eile bin, kann ich sie hier jetzt nicht noch mal "beschreiben".
Ergebnisse, Download der 16000 Testpartien und Erläuterungen auf meiner Website:

https://www.sp-cc.de/experiments.htm
Parent - - By Thomas Plaschke Date 2022-07-03 16:24
Ein ernüchterndes Ergebnis. Wie es aussieht, bietet die Kombination mehrerer Engines auf diese Weise in keiner Hinsicht einen Vorteil.

Schönen Dank und viele Grüße
Th. Plaschke
Parent - By Lothar Jung Date 2022-07-03 17:21
Es gibt andere Ansätze:

Chimera
BanksiaGUI
A/B-Helper (Lc0)
Parent - By Stefan Pohl Date 2022-07-03 19:16
Thomas Plaschke schrieb:

Ein ernüchterndes Ergebnis. Wie es aussieht, bietet die Kombination mehrerer Engines auf diese Weise in keiner Hinsicht einen Vorteil.

Schönen Dank und viele Grüße
Th. Plaschke


Gerne. Ich hatte das Ergebnis auch so erwartet. Wäre natürlich gerne positiv überrascht worden.
Vielleicht mache ich demnächst noch mal einen Versuch mit einem aggressiven und einem solid spielenden Slave. Aber momentan brauche ich beide Testmaschinen für die Revenge 3.0 und Velvet 4.0.0 Testruns.
Parent - - By Peter Martan Date 2022-07-03 20:03 Edited 2022-07-03 20:12
Danke neuerlich für die Tests, Stefan, wenngleich ich das auf diese Art (siehe mein langes Posting dazu direkt drunter) schon auch irgendwie nach wie vor und jetzt erst recht als selffulfilling prophecy bezeichnen würde
Parent - - By Stefan Pohl Date 2022-07-04 09:37
Peter Martan schrieb:

Danke neuerlich für die Tests, Stefan, wenngleich ich das auf diese Art (siehe mein langes Posting dazu direkt drunter) schon auch irgendwie nach wie vor und jetzt erst recht als selffulfilling prophecy bezeichnen würde



Das stimmt natürlich gewissermaßen. Trotzdem hätte das Ergebnis ja auch unerwartet sein können.
Bezüglich auf dein "langes" Posting muß ich mal etwas korrigierend eingreifen: Der master pondert nicht. Was er macht, steht ja im readme-File von aiquiri:
master engine time is divided by 2 because, the master will search 2 times, first it will search for bestmove after making the slave1 bestmove, second it will search for bestmove after making the slave2 bestmove.
Deswegen ist die Bedenkzeit per default in aquiri für den Master auch nur halb so groß wie für die Slaves, weil er ja beide slave-moves erst auf dem Brett ausführt und dann rechnet. Dadurch hat der Master ja einen ply mehr Tiefe als die Slaves, insofern ist es absolut sinnvoll, die Zeit des masters deutlich kleiner zu wählen. Ich mußte, um timelosses zu minimieren, die Zeiten sogar nochmal leicht zurücknehmen:
Slaves hatten bei mir 35% (default 40%) und der master 15% (default 20%).

Deinen Ansatz, also SF sowohl als Master als auch als Slave zu nutzen, ist aber durchaus gar nicht uninteressant, hier müßte man dann wohl in der Tat dem Master mehr Zeit geben, im Verhältnis zu den Slaves. Andererseits ist das natürlich ein klarer "Bruch" des eigentlichen Dreihirnkonzepts in seiner ursprünglichen Form. Das wäre also ein neues Experiment. Im Moment habe ich keine freien Kapazitäten dafür.

Was ich aber prinzipiell immer machen/empfehlen würde, ist, beide Slaves so zu wählen, daß diese 2 Engines zumindest in etwa gleiche Spielstärke haben. Sonst macht der ganze Master/Slave-Ansatz, so wie er in aiquiri realisiert wurde (also das Dreihirnkonzept in seiner ursprünglichen "Reinform"), keinen Sinn, denke ich.
Parent - - By Peter Martan Date 2022-07-04 09:49 Edited 2022-07-04 10:29
Stefan Pohl schrieb:

Bezüglich auf dein "langes" Posting muß ich mal etwas korrigierend eingreifen: Der master pondert nicht.

Wo habe ich das behauptet, Stefan?
Ich schrieb, dass sein Hashlernen dadurch, dass er die Stellung aus der Sicht des Gegners nach dem virtuellen Ausühren der beiden slave- Züge mit Hasheinträgen füllt, auch gegenüber einer slave- Engine, die dieselbe ist wie der master, verbessert wird oder es jedenfalls die Chance dazu bekommt. Das ist für mich das Wesentliche dieses 3Hirns. Auch und gerade dann, wenn's nur 2 Engines sind, weil das dritte Hirn mehr oder jedenfalls etwas anderes leistet, selbst wenn's dieselbe Engine wie einer der slaves ist.
Stefan Pohl schrieb:

Deswegen ist die Bedenkzeit per default in aquiri für den Master auch nur halb so groß wie für die Slaves, weil er ja beide slave-moves erst auf dem Brett ausführt und dann rechnet. Dadurch hat der Master ja einen ply mehr Tiefe als die Slaves, insofern ist es absolut sinnvoll, die Zeit des masters deutlich kleiner zu wählen.

Das kann man so sehen bzw. machen, muss man aber eben auch nicht. Meiner Meinung nach ist gerade im Fall der Doppelbesetzung von master und slave die Rechenzeit für die master- Engine dann die wertvollste, wenn sie einen anderen als den "eigenen" Zug auch abwägen soll im Vergleich, sollte also (eventuell, muss man eben alles in den jeweiligen Kombis und nach den jeweiligen Stellungen eigens ausprobieren) ruhig auch am längsten sein. Damit spart die Kombi übrigens sowieso auch am meisten Zeit insgesamt ein, weil der master gar nicht rechnet, wenn die Kandidaten dieselben sind von den beiden slaves.
Stefan Pohl schrieb:

Deinen Ansatz, also SF sowohl als Master als auch als Slave zu nutzen, ist aber durchaus gar nicht uninteressant, hier müßte man dann wohl in der Tat dem Master mehr Zeit geben, im Verhältnis zu den Slaves. Andererseits ist das natürlich ein klarer "Bruch" des eigentlichen Dreihirnkonzepts in seiner ursprünglichen Form. Das wäre also ein neues Experiment. Im Moment habe ich keine freien Kapazitäten dafür.

Macht ja nix, Stefan, freut mich aber, dass du meiner Sicht durchaus auch ihren Sinn abgewinnst. Wie gesagt muss da jeder User sein eigenes Interesse für die eigenen positions of interest und für die eigenen Engine- Kombis und die eigenen Zeitaufwendungen testen.
Und was das "eigentliche Dreihirnkonzept" angeht, da müsste man Prof. Althöfer fragen, was die allgemeine Spieltheorie angeht und seine praktische Erfahrung, die er damit im Schach gesammelt hat vor vielen Jahren auf eigenen offenen Turnieren mit Schachcomputer- Beteiligung. Ich glaube mich zu erinnern, dass er zeitweise auch "einfach" die Methode angewendet hat, von einem einzelnen Rechner und Programm jeweils nicht nur einen Zug, sondern auch den zweitbesten anzeigen zu lassen und danach dann die Auswahl selbst zu treffen, wenn das Ranking der Züge ähnlich war. Dass MultiPV- Mode für sich auch schon ein Drei- bzw. Mehrhirn- Ansatz ist, der viel verwendet wird, sei auch nur so am Rande erwähnt, dass sogar eine einzelne Engine auf diese Art, dass sie mehrere non primary lines in der Berechnung und Bewertung zu primaries erhebt, was die Pruning- Parameter angeht, und dass man so bei manchen Stellungen immer wieder mal time to solution sparen kann, das bewährt sich ja bei der A-B-Suche auch immer wieder mal erstaunlich gut.

An und für sich ist die Idee vom Dreihirn schachlich so alt und vielschichtig, wie es Kiebitze beim Schach gibt.

Stefan Pohl schrieb:

Was ich aber prinzipiell immer machen/empfehlen würde, ist, beide Slaves so zu wählen, daß diese 2 Engines zumindest in etwa gleiche Spielstärke haben. Sonst macht der ganze Master/Slave-Ansatz, so wie er in aiquiri realisiert wurde (also das Dreihirnkonzept in seiner ursprünglichen "Reinform"), keinen Sinn, denke ich.

D'accord.
Parent - - By Thomas Plaschke Date 2022-07-04 12:04
Peter Martan schrieb:

... das "eigentliche Dreihirnkonzept" ...
... gab dem Dreihirn mehr Rechenleistung, indem zwei Schachcomputer gleichzeitig rechneten (Aiquiri-lässt die Komponenten nacheinander arbeiten). Zusätzlich war ein menschlicher Entscheider, während er auf die Zugvorschläge wartete, nicht "abgeschaltet". Er machte sich zwangsläufig Gedanken über die sinnvollste Fortsetzung. Ich kann mich nicht erinnern, dass diese Problematik in den 80ern, als das Dreihirn-Konzept diskutiert wurde, eine Rolle gespielt hat (außer, dass die (slave-)Schachcomputer zugunsten des Entscheiders mit etwas geringerer Bedenkzeit auskommen mussten). Heute könnte man eine annähernd vergleichbare Ausgangslage schaffen, indem man die master+slaves-Engine mit 2 bis 3 Threads rechnen lässt, um eine ähnliche Rechenleistung wie der (Engine-)Gegner zu haben. Ich würde darin aber eine Wettbewerbsverzerrung sehen.

Im Übrigen will mir nicht einleuchten, warum eine starke Engine (Stockfish) als master und als einer der slaves Aiqiuri zu etwas anderem bringen soll, als idR genau zu den Zügen dieser Engine. Der master wird fast immer die HV des identischen slaves bestätigen (einerseits weil er stärker ist als die Engine des zweiten slaves (er erkennt die Nachteile der Züge des anderen slaves) und andererseits, weil seine Programmlogik identisch mit der eines der slaves ist und er grundsätzlich dasselbe spielen würde). Abweichen wird er daher vermutlich nur bei Fehlern, die der andere slave zuerst mal erkennen und dann die master Engine auch noch nachvollziehen muss. Praktisch würde das nur zu einem Spiel mit Zeithandicap für die master+slave-Engine führen.

Viele Grüße
Th. Plaschke
Parent - By Peter Martan Date 2022-07-04 12:18 Edited 2022-07-04 13:05
Probier mal ein bisschen mehr rum, als du's bisher getan hast und befreie dich von Vorstellungen "wie ein Dreihirn zu funktionieren habe", damit es dem entspricht, was sich der und jener schachlich darunter vorstellt, Thomas. Wie gesagt, der Einzige, der dazu wirklich mehr zu sagen hätte, wäre Prof. Althöfer, auf den der Begriff ja auch im allgemein schachlichen Gebrauch zurückgeht.

Was ich übers Hashlernen schrieb, leuchtet dir nicht ein?
Dass Marco Costalbas Double Blind Test von anno dazumal (ich glaube, ich habe dir den schon in der voletzten Diskussion über die Sache als Beispiel gebracht, weißt du inzwischen schon, was das war und wie es funktioniert hat?) genau dieses Prinzip für eine Engine allein mit einer eigenen kleinen batch- Datei automatisiert abwickeln hat lassen, kannst du dich daran noch erinnern? Ich such' das schon auch nochmal im CCC heraus, wenn's sein muss, aber ich zweifle, dass es dich wirklich soo brennend interessiert, ansonsten hast du's eh schon selbst gefunden.

Den Sinn, wenn eine Engine aus der Sicht des Gegners den einen eigenen Zug mit dem vergleicht, den eine andere Engine vorschlägt, dass sie dann danach den anderen Zug (des slaves oder zum leuchtenden Beispiel den einer kniffligen taktischen best move- Lösung nach Zug- Eingabe, wenn sie ihn selbst bis dahin noch nicht gefunden hat, danach auch selbst besser findet), den kannst du leicht ganz ohne Aiquiri immer wieder mal erfüllt sehen. Und mit Aiquiri natürlich auch.

Ich kehre, wobei ich's anfangs eigentlich auch belassen wollte, zum ersten Satz zurück, probier' mal ein bisschen mehr rum, Thomas. Grau ist hier alle Theorie im Vergleich zum praktischen Aha- Moment, wenn du siehst, wie selbst oder wie gerade Engines wie SF (leider nicht wie LC0, weil das, was es mit dem Hash und dem NN-Cache bisher macht, nichts mit dem zu tun hat, was A-B-Engines durch Forward- Backward an Hashlernen als eine ihrer größten Leistungen schlechthin für mich schon lange konnten und immer besser können) durch Eingeben eines Zuges, auf den sie nicht gleich selbst kommen, reagieren, wenn er tatsächlich besser ist als der eigene und sie genug Hard- und Software- Zeit haben (die dann aber sehr oft sehr viel kürzer sein kann als die Rechenzeit mit leerem Hash einen Halbzug früher) das zu erkennen
Parent - By Peter Martan Date 2022-06-30 09:38 Edited 2022-06-30 10:02
Danke für den Test, Stefan, auch gut zu wissen, dass Aiquiri in cutechess funktioniert und auch mit Inkrement, in diesem GUI hatte ich's noch nicht probiert, hingegen auch noch im HCE und in Banksia, in den beiden läuft er auch nicht.

Wenn du dir das schon antust, das statistisch überprüfen zu wollen, gebe ich bei der Nucles (Aiquiri)- Idee nur noch folgendes zu bedenken: die master- engine kann nur aus den den beiden Vorschlägen der slaves wählen, sind die gleich, kommt sie gar nicht zum Einsatz.

Jetzt die "stärkste" Engine als master (allein) einzusetzen, verschwendet meiner Meinung nach eigentlich ihre Spielstärke insofern, als sie gar keine eigenen Vorschläge macht.
Ich habe die besten Erfolge mit 2 Engines, von denen eine sowohl slave als auch master ist, z.B. LC0 und SF als slave 1 und 2. SF nocheinmal als master, so hat SF (je nach Zeiteinteilung, bei mir z.B. 30-30-40) entscheidend mehr Rechenzeit, wenn es 2 Kandidaten gibt, und eine zweite Gelegenheit über den Gegenzug der beiden Vorschläge zu pondern, bevor er dann die Wahl trifft. Allein schon das Rechnen aus der Gegnersicht ist ein zusätzlicher Informationsgewinn. Damit wird das Prinzip von Marco Costalbas Double Blind Test, der prinzipiell genau so funktioniert hat aber nur mit SF allein (eine batch- Datei hat automatisiert rechnen Lassen, Lösungszug Ausspielen, noch einmal zur Ausgangsstellung zurück und wieder Rechnen, so konnte SF die Suite "Poor Stockfish", die Marco eigens aus für den damaligen Fisch besonders schweren Stellungen gesammelt hatte, zu einem weit größeren Anteil lösen, was auch nicht weiter wundert, was hingegen getestet werden sollte, war die Fähigkeit der Engine durch eine Minimalform vom Hashlernen aus einem anderen Zug als dem, der selbstständig gefunden wurde, zu profitieren).

Für den einen Fall, dass LC0 einen Zug findet oder favorisiert, den SF nicht von sich aus spielen würde, kann SF das vermutlich besser "anerkennen'" als die meisten anderen Engines, ist sein Zug ohnehin gleich dem von LC0, wird die master- Rechenzeit eingespart. LC0 als master hätte den Nachteil, dass die Engine nicht das kann, was bei den A-B-Suchern als Hashlernen bezeichnet wird. Das mag beim einzelnen Zug mit leerem Hash gestartet, noch egal sein, nachdem der aber im Lauf der Partie bei A-B weiterverwendet wird, kann SF auch bei den Folgezügen noch von Vorschlägen von LC0 profitieren, selbst wenn er sie zunächst gar nicht wählt.

Das Ganze ist natürlich eine große und sehr bunte Spielwiese, wollte man aber ernsthafte "Spielstärke"- Vergleiche in Bereichen anstellen, in denen es wirklich interessant wäre (nichts gegen deine geplanten Versuche, aber ob Berserk besser mit Pedone und Velevet oder mit Kovisto abschneidet, wird halt wieder sehr stark von der TC, der Einteilung der Rechenzeiten und davon abhängen, welche Rolle welche Engine übernimmt, mal von den Eröffnungen auch wieder abgesehen, die hier wahrscheinlich eine noch größere Rolle spielen werden als sonst) sollte man meiner Meinung nach den Mehrhirnen mehr Rechenzeit zuteilen. Was mich also z.B. stark interessieren würde (halt wieder nicht so stark, dass ich die dazu vermutlich doch wieder sehr großen Partiezahlen ausspielen ließe), wäre Aiquiri in der geschilderten Konstellation von LC0-SF-SF gegen SF allein, und für Aiquiri doppelt soviel Rechenzeit (die er zu einem großen Teil ohnehin gar nicht nutzen würde bei Fixzeit/Zug- Zuteilung), bei STC nützt das vielleicht auch noch immer nichts, wird bei schnellem Blitz vermutlich sogar immer noch schaden, vermuten würde ich aber auch, dass vielleicht ab 5"/Zug für SF und 10 für Aiquiri auf guter Hardware der Vorteil anfangen könnte, nachweisbar zu werden. Ich würde das ja mal mit Stellungstest probieren, leider kann Aiquiri den (go infinite) auch in Arena nicht automatisiert abwickeln. Außerdem wäre der Vergleich zu allein laufenden Engines erst recht sehr eine Frage der Rechenzeit, die man zuteilte.

Aber das ist natürlich dann alles wieder ein ganz spezielles eigenes Interesse, das jeder einzelne User großteils für sich selbst allein haben wird
Parent - By Peter Martan Date 2022-06-06 14:53 Edited 2022-06-06 15:02
Das Minimum (aber auch schon für den zeitlichen Mehraufwand, den es für die Zugwahl braucht, möglicherweise das Optimum) an sinnvoller Zusammenarbeit zwischen 2 (oder auch mehreren) Engines sehe ich nach wie vor in Nucleus von Ferdinand Mosca. Schade, dass er ihn nicht mehr weiterentwickelt. Alles was essentiell fehlt, ist ein automatisches Ziehen mit anderen als Fixzeit/Zug- Vorgaben und mehr Hash für die Engines einstellbar.

https://forum.computerschach.de/cgi-bin/mwf/topic_show.pl?pid=147097#pid147097
Up Topic Hauptforen / CSS-Forum / Synergy chess ... wenn Engines miteinander verheiratet werden!

Powered by mwForum 2.29.3 © 1999-2014 Markus Wichitill