With engines getting stronger, draws are becoming a problem in tournaments that start from the normal starting position. Here is an idea I have been thinking about.
After the tournament, pick one or two evaluation engines at random (say Stockfish, lc0, or whatever) and use them to evaluate every position in each drawn game at a fixed depth and fixed settings (threads, hash). Sum up the evaluations for each side across all moves. The engine with the higher cumulative evaluation wins the tiebreak. Optionally add a threshold (e.g. 0.30 pawns) so that near-equal positions do not contribute noise.
The random choice of evaluator matters: it makes the system hard to game because you cannot optimize your play specifically for the evaluator you will be judged by. But the principle holds regardless of which strong engine you pick: if your position was consistently better according to an "independent judge", you were playing better chess. Obviously this requires equal numbers of white and black games.
Curious what people think. Main objections I can anticipate: evaluator dependency, opening bias (some openings just evaluate higher for one side), and the question of whether cumulative eval actually correlates with playing strength. Happy to be told this is a terrible idea.
Tiebreak idea for engine tournaments with lots of draws
Moderator: Ras
-
Hamster
- Posts: 33
- Joined: Sat May 25, 2013 6:38 pm
- Location: Wien
-
Bo Persson
- Posts: 265
- Joined: Sat Mar 11, 2006 8:31 am
- Location: Malmö, Sweden
- Full name: Bo Persson
Re: Tiebreak idea for engine tournaments with lots of draws
The objection is of course that you didn't play better chess, if you didn't win.
The objective isn't to play "better", but to mate the opponent. Sacrificing pieces is an old way of getting there.
-
Ferdy
- Posts: 4857
- Joined: Sun Aug 10, 2008 3:15 pm
- Location: Philippines
Re: Tiebreak idea for engine tournaments with lots of draws
A related idea is to just go for material advantage. No need to run eval judge.
Material points can be Pawn=1, 3, 3, 5, 9
Except for stalemate, draws such as repetition, fifty-move and insufficient material will be decided by material and color if material is equal.
KvK is +1 for black and -1 for white
KPvK with defending king infront of the pawn would result to a stalemate. Some of the current engines might just give away the pawn in this case instead of delivering a stalemate.
Material points can be Pawn=1, 3, 3, 5, 9
Code: Select all
Draws // TB points
Stalemate // Stalemating side +3, other side −3
One side ahead by 2+ points // Side ahead +2, other side −2
One side ahead by 1 point // Side ahead +1, other side −1
Material exactly equal // Black +1, White −1KvK is +1 for black and -1 for white
KPvK with defending king infront of the pawn would result to a stalemate. Some of the current engines might just give away the pawn in this case instead of delivering a stalemate.
-
MOBMAT
- Posts: 422
- Joined: Sat Feb 04, 2017 11:57 pm
- Location: USA
Re: Tiebreak idea for engine tournaments with lots of draws
I think we all have thought about this from time to time.
Some draws, such as insufficient material (at the root level) would be declared a true draw (1/2, 1/2). But the draw has to be seen at the root, not 30 moves ahead. This will allow for blunders.
Draws such as perpetual check (both sides giving up), draw by repetition, 50 moves, will result in a outcome of (-1/2, -1/2).
That's right, both sides get punished. This will force engines to reevaluate their play in an attempt to avoid a draw.
The draw value could be a UCI parameter so that the engines can play either style (human or AI).
Perhaps the (-1/2) system should be tried in human v human games. It would make things more exciting.
Some draws, such as insufficient material (at the root level) would be declared a true draw (1/2, 1/2). But the draw has to be seen at the root, not 30 moves ahead. This will allow for blunders.
Draws such as perpetual check (both sides giving up), draw by repetition, 50 moves, will result in a outcome of (-1/2, -1/2).
That's right, both sides get punished. This will force engines to reevaluate their play in an attempt to avoid a draw.
The draw value could be a UCI parameter so that the engines can play either style (human or AI).
Perhaps the (-1/2) system should be tried in human v human games. It would make things more exciting.
i7-6700K @ 4.00Ghz 32Gb, Win 10 Home, EGTBs on PCI SSD
Benchmark: Stockfish15.1 NNUE x64 bmi2 (nps): 1277K
Benchmark: Stockfish15.1 NNUE x64 bmi2 (nps): 1277K