TCEC Season 20 Rules

From TCEC wiki
Jump to: navigation, search
This is a temporary version!! The page below is not yet final.


TCEC Season 20 - Rules

Season 20 flowchart of promotions (and relegations)

Rules

1. Season

  1. The Top Chess Engine Championship (TCEC) Season 20 is the premier championship for chess software.
  2. TCEC Season 20 is a tournament, between engines with ELO 3000+, and it is divided into 6 Events, consisting of four Leagues, the Premier Division and the Superfinal.
  3. Each of the Leagues, the Premier Division and the Superfinal, is hereafter called: an Event.
  4. TCEC Season 20 runs 24/7 until all its games have been played. One game is played at a time - the next one starts automatically.
  5. As soon as an Event starts, it will run 24/7 until all its games have been played. One game is played at a time - the next one starts automatically.
  6. There will be a short break between the Events, to test and make sure everything is ok with the TCEC game server and to prepare for the next Event.
  7. For all TCEC Events, engines will be invited by the organizers.

2. Qualification League

  1. The Qualification League is the first Event of TCEC Season 20.
  2. For the Qualification League Event, engines will be invited by the organizers.
  3. The Qualification League or QL consists of 12 engines recently submitted by their authors, all of which are under active development.
  4. It is a 1x double round robin at TC 30+5 with a randomized 2-move opening book by Nelson Hernandez (Book A).
  5. The top 2 engines promote to League 3.

3. League 3

  1. The League 3 is the second Event of TCEC Season 20.
  2. For the League 3 Event, engines will be invited by the organizers.
  3. League 3 or L3 consists of 10 engines including the 2 promotions from QL.
  4. It is a 1x double round robin at TC 30+5 with a randomized 4-move opening book by Nelson Hernandez (Book B).
  5. The bottom 2 engines relegate and the top 2 promote to League 2.

4. League 2

  1. The League 2 is the third Event of TCEC Season 20.
  2. For the League 2 Event, engines will be invited by the organizers.
  3. League 2 or L2 consists of 10 engines including the 2 promotions from L3.
  4. It is a 1x double round robin at TC 30+5 with a consecutive various depth opening book by Eduardo Sauceda (Book C).
  5. The bottom 2 engines relegate and the top 2 promote to League 1.

5. League 1

  1. The League 1 is the fourth Event of TCEC Season 20.
  2. For the League 1 Event, engines will be invited by the organizers.
  3. League 1 or L1 consists of 10 engines including the 2 promotions from L2.
  4. It is a 1x double round robin at TC 45+5 with a randomized 8-move opening book by Nelson Hernandez (Book D).
  5. The bottom 2 engines relegate and the top 2 promote to Premier Division.

6. Premier Division

  1. The Premier Division is the fifth Event of TCEC Season 20.
  2. For the Premier League Event, engines will be invited by the organizers.
  3. Premier Division or DivP consists of 8 engines including the 2 promotions from L1.
  4. It is a 3x double round robin at TC 90+10 with a randomized 8-move opening book by Nelson Hernandez (Book E).
  5. The top 2 engines promote to the Superfinal and the bottom 2 engines are relegated to League 1.

8. Superfinal

  1. The Superfinal consists of a 2 engine 50DRR, 100 games at TC 120+10, with a consecutive various depth opening book by Jeroen Noomen (Book F).
  2. If the match is theoretically won for one side before game 100, the match will still continue until all 100 games have been played.
  3. In the case of a drawn match there will be a rapid match of 16 games with a time control of 25' + 10" with random openings selected from earlier in the same Season.
  4. In case it is still tied there will be sets of Blitz matches of 8 games each, with a time control of 3' + 2" until a winner is found.
  5. When the Superfinal is over, the current Season ends.

9. The TCEC Grand Champion

  1. The winner of the Superfinal will be crowned the TCEC Grand Champion and will keep this title until there is a winner in the next Superfinal.
  2. There is no automatic qualification for the reigning Grand Champion, it will have to go all the way through the Premier Division of the next Season for it to be able to defend the title.

10. Time control

  1. Different classical time controls will be used throughout the season and the time control is increased as the season progresses.
  2. For the Qualification League, League 3 and League 2 Events, the time control is 30 minutes + 5 seconds added per move for the whole game.
  3. For League 1 Event, the time control is 45 minutes + 5 seconds added per move for the whole game.
  4. For Premier Division, the time control is 90 minutes + 10 seconds added per move for the whole game.
  5. For the Superfinal, the time control is 120 minutes + 10 seconds added per move for the whole game.

11. Game adjudication

  1. A game can be drawn by the normal 3-fold repetition rule or the 50-move rule.
  2. However, a game can also be drawn at move 35 or later if the eval from both playing engines are within +0.15 to -0.15 pawns for the last 5 moves, or 10 plies. If there is a pawn advance, or a capture of any kind, this special draw rule will reset and start over. On the GUI interface, this rule is shown as "TCEC draw rule" with a number indicating how many plies there are left until it becomes official.
  3. A game will be adjudicated as won for one side if both playing engines have an eval of at least 10.00 pawns (or -10.00 in case of a black win) for 5 consecutive moves, or 10 plies - this rule is in effect as soon as the game starts. On the GUI interface, this rule is shown as "TCEC win rule" with a number indicating how many plies there are left until it becomes official.
  4. Cutechess will automatically adjudicate endgame positions with 6-men Syzygy tablebases.

12. Tiebreaks

  1. If necessary, tiebreaks shall be used to determine advancement, based on the final standings of a League or Division. For all Events except the Superfinal, the following criteria will be used, in the order as presented below:
    1. In case of engines being tied, then the direct encounter(s) between the tied engines decides first.
    2. r-mobility tiebreak is the second criterion.
    3. The third criterion is the greatest number of wins.
    4. The Sonneborn-Berger is the fourth criterion.
    5. In the unlikely event they are even then still tied, then the tournament organizers will decide which engine gets the promotion or relegation.

13. Engine Updates

  1. All engines that promote to the next Event are allowed to update their engine, engine parts, and/or settings before the next Event's submission deadline.
  2. Except when promoting from QL to L3 and from L2 to L1, all engines that promote to the next Event are allowed to update before the Event's submission deadline, no matter if it is to fix bugs uncovered during the previous Event, or to submit a better version. To summarize:
    1. No testing will be done and provided, nor is updating allowed, between Qualification League and League 3.
    2. No testing will be done and provided, nor is updating allowed, between League 2 and League 1.
    3. Testing will be done and provided, and updating allowed, between League 3 and League 2.
    4. Testing will be done and provided, and updating allowed, between League 1 and Premier Division.
    5. Testing will be done and provided, and updating allowed, between Premier Division and Superfinal.
  3. The deadline for engine submission is the last game of the current Event unless the programmer is given a specific deadline from the Tournament Director - the goal is to be able to start the next Event as soon as possible without any significant delay.
  4. Note that despite testing between certain Events will be provided, engine authors update at their own risk.
  5. Once an Event is being played, no updates are allowed during it.

14. Engine Ratings

  1. The TCEC engine ratings can be found at https://tcec-chess.com/bayeselo.txt
  2. This list is updated live after every official game and includes all games, including rapid or faster time control games from current and previous season.
  3. Most testing games with sufficiently long time control are also used.
  4. Version numbers are ignored and all games are included, including games lost on time or due to crash.
  5. New engines are assigned a temporary rating based on testing, until an official rating can be calculated after they played in an Event.

15. Crashes

  1. If an engine loses on time, the result will not be changed or the game replayed.
  2. In case of a server disconnect, or time loss due to lag, or other interruptions not caused by the engines there are five possible scenarios:
    1. If the web server crashes, the game continues unaffected, and broadcasting will be resumed as soon as possible;
    2. If at the moment of game server interruption the evaluation of both engines is more than +10, or if the evaluation of both engines is less than -10, the game is scored as a win;
    3. If the evaluation of both engines is less than ABS(0.15) at the moment of game server interruption, and both engines have completed 35 moves, the game is scored as a draw;
    4. If a game interrupts with 7 pieces on the board, position on the board at the instant of game server interruption will be adjudicated according to 7-man EGTB;
    5. In all other cases the game is restarted from the position that the two engines reached before the disconnect, with time compensation to fill up the cache.
  3. An engine that crashes 3 times during an Event is disqualified and all its game results (points) will be annulled, also for its opponents.
  4. In case of disqualification crashes are counted for all engines until the end of an Event.
  5. Crash counting is only reset at the next Event.
  6. Crashes during the Superfinal are counted as losses.

Additional exceptional ruling

...

Guidelines

TCEC operates in good faith of the authors' providing information about their engines and versions proposed, and the following guidelines are used, when needed, to the discretion of TCEC.

  1. Guidelines for use of NNUE at TCEC:
    1. NNUE code can be used and considered as if it was a library (even if it is not literally one).
    2. Custom modifications to the basic NNUE code are strongly encouraged, it should be considered rather like a starting point.
    3. All NNUE training data should be generated by the unique engine's own search and/or eval code.
    FAQ: Do the NNUE guidelines apply outside NNUE technology?
    > No, of course not.
  2. ...

Further information

See also TCEC Season 20 Further information.