abulmo2 wrote: ↑Sat Nov 18, 2023 1:33 am
A few numbers about Othello
The number of games is approximately 6,5 10⁵⁴ (and not 10⁵⁸ as written many places from a gross but false approximation given by Victor Allis). The number of position is less than 2⁴ * 3⁶⁰ = 6,7 10²⁹ and can be reduce to about 10²⁸ when taking into account symmetries. This is also a large upper limit as it does not take into account that all discs should be connected and that some disc patterns are unreachable (for example XOXOXOXO on an edge). My guess is than the number of position is more likely around 10²⁴.
On my computer (a ryzen 9 5950x with 16 cores running at 4.2 Ghz) the speed of Edax integrated benchmark is 708 million nodes/s.
The work done by Hiroki Takizawa is remarkable by the computation power used having Edax searched 1,5 10¹⁸ positions on a super computer.
I suppose you consider the claims in the paper to be believable?
https://arxiv.org/pdf/2310.19387.pdf
Apparently there are 2,958,551 positions reachable after 5 moves (10 plies), i.e. with 50 empty squares, but white and black each have drawing strategies that guarantee that only 2587 of those positions occur (i,e. white can force such a position to occur whatever black plays, and black can force such a position to occur whatever white plays). I guess one should indeed expect something in the order of the square root of the number of positions (size of minimal tree should be about 2*sqrt(total_positions).)
As far as I understand, Takizawa identifies those 2587 positions by evaluating each of the 2,958,551 positions using your engine and classifying each as one of "likely drawn", "perhaps win for white", "perhaps win for black", and then doing a 10-ply search from the initial position to find a minimal tree that gives white a strategy to reach a likely draw and a minimal tree that gives black a strategy to reach a likely draw. The leaf positions of those trees correspond to the 2587 positions. Now all that is left is to prove that each of those 2587 positions is indeed a draw.
He then repeats the exercise for each of those positions but now searches 7 moves (14 plies) ahead to positions with 36 empty squares. The relevant positions with 36 empty squares are then proven by an exhaustive (alpha-beta) search. (I have no idea if a 36-ply full-width search is feasible in Othello, but I guess it is?)
It would be nice if Takizawa had stored the proof trees to a depth which can be verified in, say, about 100ms of searching (or some other amount of time that keeps the size of the trees within reasonable proportions).
Back to chess
According to Wikipedia, the number of games is about 10¹²³ and the number of position 8 10⁴⁵.
The speed of Stockfish on my computer is 46254607 nodes/s (46 millions nodes/s) using its integrated benchmark.
Note also that for solving purpose, Edax disables any pruning losing information (mainly probcut) in its last stage, the full board is stored in the hashtable, and its access is locked. All this should be done in Stockfish which would surely impaired its performance.Actually, what is needed is not a stockfish like engine, but a fast mate finder.
So basically the effort is several order of magnitude harder for chess than for Othello. I guess the computational effort should be a at least a billion time harder than for Othello. I do not think we are going to see a solution any time soon.
The Wikipedia numbers might not mean too much. Losing/suicide chess should have about the same number of positions (actually it has more), but it has been solved (white wins). This is because losing chess has a very small branching factor.
Chess has a much larger branching factor with many moves that do not "obviously" lose (and even for moves that do "obvioulsy" lose it is very difficult to actually prove that they lose). Also, chess has repetitions which is very annoying for proving a draw (no practical limit on the length of a game, infinite headaches caused by GHI problems, etc.). In Othello each move makes progress towards the end of the game simply because of the rules of the game.
One advantage of chess is that endgame tablebases make sense, but they quickly become too large.
What seems to have been of decisive help for Othello's proof is that your engine could reliably predict the outcome of enough positions with 50 empty squares that it was possible to find those 2587 positions. Apparently all these predictions turned out to be correct.
Congratulations on your contribution to the soltuion!