Which piece is stronger, a bishop or a knight? And which combination of minor pieces is the strongest? I did some research with the help of scid and a database of 1.93 million games. All games were played by players with at least 2000 elo. I decided to create statistics for the middlegame and the endgame.
Middlegame All games where the piece constellation appeared with both queens and all four rooks on the board
Endgame All games where the piece constellation appeared with no queens and no rooks on the board
Except from the minor pieces the material is equal for both colors. The piece constellation appears two full moves on the board.
| || || ||Score Middlegame||Score Endgame||Games Middlegame||Games Endgame
|1 Bishop||vs.||1 Knight||48.5%||48%||114179||32754
|1 Bishop + 1 Knight||vs.||2 Knights||48.8%||50%||88116||6007
|2 Bishops||vs.||2 Knights||55.8%||64%||24540||1642
|2 Bishops||vs.||1 Bishop + 1 Knight||55.5%||64.2%||178402||13345
|2 Bishops + 1 Knight||vs.||1 Bishop + 2 Knights||52.7%||62%||469732||4345
Recently I bought a book with about 1000 chess puzzles. But many puzzles were just incorrect. It is frustrating to spend alot of time to find a solution and later you recognize there is no solution. Then I got the idea to write a program that generates correct puzzles from a game database. But what makes a good chess puzzle? In my opinion a position is a good chess puzzle if
- the best move is clearly the best, that means
- the best move is winning and the second best move is not winning
- or the best move is not losing and the second best move is losing
- the best move is not abvious, that means
- the best move was not played in that game
- and the best move is not found by a chess engine at very low depth
To decide which move is winning or losing Stockfish is used.
Surprisingly with these simple rules I could find only one puzzle in about 200 games. Nevertheless my program generated already many thousends of puzzles.
I decided to create a simple Webapp on top of this puzzle database. The link is