Yes. Computer chess enthusiasts have created a rating list known as CCRL that covers chess engines ranging from the strongest ones we have to somewhat simple amateur-developed chess engines. Most of the engines on that list are open-source.
Two catches:
The weakest engines on the list still exceed random play by a substantial margin.
Implementing some chess engines to fill that gap won’t be difficult, since libraries are available for move generation, and you don’t need efficient search techniques if you’re trying to make a weak chess engine.
CCRL games are typically played from openings that give a small advantage (usually around +1.0) to White, rather than directly from the starting position. Two games are played for each opening, with the engines switching colors between the two games. Unequal openings are used because in high level engine play, playing games from the starting position will result in too many draws.
If you have questions about basic chess programming, please feel free to ask me. I recently started work on a chess engine (as a personal project) and thus am familiar with some of the concepts.
Yes. Computer chess enthusiasts have created a rating list known as CCRL that covers chess engines ranging from the strongest ones we have to somewhat simple amateur-developed chess engines. Most of the engines on that list are open-source.
Two catches:
The weakest engines on the list still exceed random play by a substantial margin.
Implementing some chess engines to fill that gap won’t be difficult, since libraries are available for move generation, and you don’t need efficient search techniques if you’re trying to make a weak chess engine.
CCRL games are typically played from openings that give a small advantage (usually around +1.0) to White, rather than directly from the starting position. Two games are played for each opening, with the engines switching colors between the two games. Unequal openings are used because in high level engine play, playing games from the starting position will result in too many draws.
If you have questions about basic chess programming, please feel free to ask me. I recently started work on a chess engine (as a personal project) and thus am familiar with some of the concepts.