-
Notifications
You must be signed in to change notification settings - Fork 0
Wiki Sinergy Chess
Synergy-Chess was born from the idea of limiting the errors that can derive from the positional analysis of a single chess engine and, in this regard, the aforementioned program brings together a group of 8 NNUE chess engines each with an ELO value of over 3400 (June 2022).
Synergy-Chess is free, open source, works in Windows environment, requires the presence of the free Python program + python-chess library and must be installed on the free Arena 3.5.1 chess GUI because it has been extensively tested on this.
Before describing the Synergy-Chess logistic system, let's revisit the opinions of detractors who contest this chess system of collective analysis and consider an alternative theory :
detractors of collegiate analytic systems such as Synergy-Chess rightly argue that a single chess engine will always have greater depth of analysis because it uses all available CPU power, while collective analysis systems must necessarily divide CPU processing power among multiple chess engines involved in the analysis, and the graph published above highlights the accuracy of their statements, however there are some intermediate details that alter this logistics, and now we let's go to explore them ;
So, summing up, we have 1 single opponent chess engine with over 3400 ELO points which in 5 seconds analyzes a position with a depth of, suppose, 80, and then we have 8 opponent chess engines each with over 3400 ELO points which, again in 5 seconds, analyze a position with a depth of 10
Now let's imagine organizing a tournament in which Synergy-Chess plays against a single chess engine with an ELO score greater than 3400 and that the 2 competitors are assigned a time of 15, 20 or 30 minutes per game.
The tournament takes place on a single and modern PC that houses the 2 chess engines and the CPU used is an Intel i7 with 6 Cores 64 GB of Ram
Each chess engine has its own custom parameters, but the opening book, hash memory, the ending tablesas, CPU core usage, and Ponder parameter are the same for both competitor chess engines.
a) - every chess machine devotes more or less time to analysis based on the complexity of the position and the playing time available, then in simple or forced situations the chess engine analyzes with minimum depth and time and in this way saves precious seconds that can be spent in more complicated positions, therefore in these game phases the greater depth of analysis of the single chess engine is irrelevant.
b) - in electronic chess it is impossible to analyze all the combinations, it would take too long, but with modern CPUs it is now possible to obtain in-depth analyzes in a few seconds or at most in a few minutes in extremely complex positions.
c) - therefore, by virtue of the seconds saved and accumulated in the simplest situations in which analytical depth is not necessary and thanks to the processing speed of modern CPUs, it is now possible to constantly reach and exceed the Minimum Threshold relating to the depth of analysis it generates a high-level quality of responses and in a short time.
d) - so, even if the single chess engine can have a greater depth of analysis, in a game of 15, 20 or 30 minutes this advantage is not decisive for the outcome of the duel for the theoretical reasons described above.
Obviously all of this is not officially certified by the chess authorities, however the Synergy-Chess program is available for free on Github for anyone wishing to test the aforementioned theory and its performance - https://github.com/scacchig/Synergy-Chess
Summary of the logistics functions of Synergy-Chess
to choose a single move to send to the chess GUI, the program imposes a series of conditions positioned in chronological order, so that when it encounters a match condition, the system chooses that move and the subsequent conditions are ignored.
The verification of absolute majority of equal moves among the first 7 chess engines has tha prioity, then eventually the secondary verification of the absolute majority takes place which also provides the result of the chess engine number 8
If the 2 levels of absolute majority fail, the system scans all the combinations generated by the first 7 chess engines consisting of 3 and 2 chess engines with identical moves and if it finds a match it chooses the move of the group with the highest positional score.
Finally, if the first 7 chess engines all give different answers, in this case the move of the number 8 chess engine is rewarded, which in any case has a respectable ELO score, over 3400 ; this situation is possible, but it is very unlikely to occur
Conclusion my tests give excellent results, but I invite the readers of this article and all chess enthusiasts to try the free and open source program Synergy-Chess, also, if any chess GUI author wanted to test the system and then implement it in their GUI it would be great because this simplifies the use of the system and makes it accessible even to inexperienced computer users.