A UCI chess engine written in C. Feel free to challenge me on Lichess!
Rank #5
Version | Elo | TC |
---|---|---|
3.2.1 | 2935 | 40/15 |
4.2.0 | 3131 | 40/15 |
4.2.0 (4CPU) | 3224 | 40/15 |
4.5.1 | 3294 | 40/15 |
6 | 3327 | 40/15 |
6 (4CPU) | 3395 | 40/15 |
7 | 3387 | 40/15 |
7 (4CPU) | 3435 | 40/15 |
Rank #14
Version | Elo | TC |
---|---|---|
1.2.2 | 2160 | 2'+1" |
2.0.0 | 2546 | 2'+1" |
3.2.0 | 2896 | 2'+1" |
4.1.0 | 3117 | 2'+1" |
4.4.0 | 3316 | 2'+1" |
4.4.0 (8CPU) | 3467 | 2'+1" |
6 | 3436 | 2'+1" |
6 (8CPU) | 3559 | 2'+1" |
7 | 3488 | 2'+1" |
Version | Elo | TC |
---|---|---|
2.0.0 | ~2600 | 15' |
3.0.0 | 2818 | 15' |
3.2.0 | 2901 | 15' |
4.0.0 | 3027 | 15' |
4.1.0 | 3085 | 15' |
4.2.0 | 3143 | 15' |
4.3.0 | 3248 | 15' |
4.4.0 | 3314 | 15' |
4.5.0 | 3344 | 15' |
5 | 3371 | 15' |
6 | 3446 | 15' |
- Bitboards
- In combiniation with Magic bitboards
- Legal Move Gen
- It is Staged
- Negamax and Quiescence
- PVS
- Transposition Table
- Iterative Deepening
- Aspiration Windows
- Null Move Pruning
- Delta Pruning
- The version in Berserk is a mix of Delta Pruning and Futility Pruning
- Reverse Futility Pruning
- LMR
MVV-LVA- Berserk uses history for sorting
- SEE
- Killer Heuristic
- Countermove Heuristic
- Extensions
- NNUE
- "Half KS" shallow network
- 2x(768 -> 512) -> 1
At this time Berserk only supports gcc
$ git clone https://github.com/jhonnold/berserk
$ cd src
$ make
$ ./berserk
This engine could not be written without some influence and they are...
- chess22k
- bbc
- Martin Sedlak
- Very nice and helpful in later development of Berserk
- Vice
- Weiss
- Stockfish
- Ethereal
- This has been especially helpful as it introduced me to OpenBench
- CPW
- Open Bench
- TalkChess Forum
- CCRL
- JCER
- Cute Chess
- Arena
- Lars in Graham's CCRL rooms for a nice engine list
- Koivisto authors for advice and assistance on OpenBench