Is there any software that would take a puzzle, solve it step by step and extract the 'hardest' grid from the solution? More precisely, I want the SE pearl rating of the original puzzle = the SE diamond rating of the grid that is output.
Context: I've been training a neural net to solve Sudoku step-by-step. Surprisingly, the bottleneck is not training but periodically evaluating progress. If you solve 1000 puzzles to evaluate progress, that's actually around 60,000 board states that need to be processed by the net; most of those states are so easy that they don't tell you anything. I want to take my 1000 puzzles, solve them step by step and extract 1000 intermediate grids that need 'hard' steps to progress; then I only need to test whether the net can make the first move correctly on each grid, which will make evaluation 60x faster.