- Code: Select all
` Case JS: Guess Nodes Time`

--------------------------------------------------------

Tarek "Unsolvable #42" 38 110450415 240s

Wecoc Sample puzzle #1 35 182765067 409s

Wecoc Sample puzzle #2 39 254326421 455s

Tarek "Unsolvable #41" 36 337230898 762s

Puzzle

rating is a notoriously complex and inexact science. Puzzle

ranking using a particular solver is the best we can do with these puzzles, I think.

Wecoc wrote:On the Ruby-based solver I made a few ago for default sudoku , I kind of solved this by defining which ones should be looked first.

It sorts the cells by the number of candidates they have, starting with the lowest. That also accelerates the process a bit.

Many cells will have the same number of possible candidates: in that case those are still ordered by coordinate so it's not totally fixing the problem, but it may considerably reduce the variability between isomorphs.

Most DFS (depth-first search) use some form of this. The problem of "which cell next?" (the next cell selection strategy) is itself an area of complexity, even for standard Sudoku. What to do when you have many cells with the least NPV (number of possible values)?

Your puzzles start with one given, which eliminates a single value in row and column. Some other single eliminations can be made from the 2-cell cages, but we still wind up with 29 choices for "best cell" candidate, each with NPV = 8.

With Killers, much like Kakuro, we need to look beyond single cell candidates. Tarek's #41 puzzle offers more candidate eliminations, but it has no small cages. A cage of size 2 will always be better because you know any guess will immediately force 2 values, so the next cell strategy needs to be more subtle.

The isomorphic variations Tarek mentioned above will always occur when there is more than one cell with minimum NPV. Most solvers will simply take the first cell in the list, there being no other way to distinguish between them. Rotating/reflecting the original puzzle will result in an essentially-different cell being chosen, and this might be a better choice, or a worse one.