Auf Software- und Hardwareseite wurden neue Verfahren der Realisierung von Parallelitäten im Computerschach ermöglicht bzw. entwickelt:
1. Hardware: Durch die Verknüpfung von CPUs und GPUs.
2. Engines: A/B und/oder MCTS sowie Netze Lc0/NNUE und heuristische Bewertung.
3. GUIs: Berechnung der Partie/Position durch zwei verknüpfte Engines.
Bisher sind mir folgende Ansätze bekannt:
1. Hardware:
a) Ceres benutzt stärker als andere Lc0-Engines CPU-Kerne und GPUs.
b) Systeme mit Mehrkern-CPUs und GPUs können LC0 und A/B-Engines nebeneinander einsetzen (Ponder On und oder Testläufe).
2. a) Lc0-A/B-Helper indem eine gemischte MCTS-A/B-Suche angewendet wird.
b) Ceres 0.95 verwendet zur Bewertung zwei Lc0-Netze: 30b und 40b.
c) ShashChess läßt die Wahl bei der Suche zwischen A/B und MCTS.
d) Scorpio verwendet einige parallele Programmieransätze #)
3) Shredder, BanksiaGUI und Nibbler stellen Verknüpfungen bei den Engines zur Verfügung:
a) Shredder, BanksiaGUI und Nibbler bei der Analyse.
b) BanksiaGUI bei der Verkapselung von zwei Engines mit verschiedenen Bedingungen.
c) Das Tool Chimera ermöglicht es zwei verschiedene Engines zu verknüpfen (Züge/Figuren).
Bestimmt kann man diese Aufstellung noch ergänzen und verfeinern.
Lothar
#) Die Scorpio Engine hat sich in letzter Zeit stark weiterentwickelt und geht eigene Wege:
https://github.com/dshawul/Scorpio The main goals of Scorpio are:
Parallel : Experiments with parallel search algorithms such as YBW and ABDADA algorithms both on shared memory (SMP) and non-uniform memory access (NUMA) systems. Also distributed parallel search on a loosely coupled cluster of computers is done using YBW.
MCTS : Experiments with montecarlo tree search (MCTS) for chess. It supports alpha-beta rollouts with LMR and null move in the tree part of the search, coupled with standard MCTS rollouts or standard alpha-beta search.
Neural Networks : Experiments with neural network evaluation ala AlaphaZero.