Test framework to determine engine playing strength.
Basically, we need a set of fast, measurable, automated tests to determine whether modifications we make to the SharpChess engine, make it stronger or weaker at winning games of chess.
One way to achieve this is by using a set of "test" chess positions, where the "best move" (answer) for each position is specified with each test. We can then develop a set…
Basically, we need a set of fast, measurable, automated tests to determine whether modifications we make to the SharpChess engine, make it stronger or weaker at winning games of chess.
One way to achieve this is by using a set of "test" chess positions, where the "best move" (answer) for each position is specified with each test. We can then develop a set of test that load these test position, and instruct SharpChess to solve them. We'll need to measure whether a) SharpChess finds the correct move, or not; and b) measure how long it takes for SharpChess to find the correct move.
Once we have run all the tests we'll then have pass or fail data, and also timings for each test. Then we can work on improving the SharpChess engine, to pass more tests, and improve the timings.
A list of test chess positions can be found at the link below. They'll likely be many more test positions that can be found on the internet.