I held off posting the latest hardest with ER (and new -q1 from my solver) ratings

because for the longest time I couldn't factor out isomorphisms from the proposition logic

after stepping away from it for a week it became clear that knee-jerk coding optimizations were the culprit

i.e., the more optimizations the more the rating algorithms became susceptable to

differences between isomorphic puzzle permutations

its still not perfect (some differences still surface between isomorphic permutations)

but the differences seem to be under 1%

as with the inferior and superior step counting threads from last year, batching moves

(eliminations and placements) plays a big part in counting steps across equivalent puzzles

the harder puzzles require single propositions to solve

and more recently the hardest puzzles require paired propositions with singles and

box-line (locked candidate) constraints

here is the -q1 rating setup:

first, let the

degree of a candidate be the number of choices the candidate is part of

e.g., the degree of a clue (given) is 1, the degree of each candidate in a bivalue cell is 2,

the degree of a candidate at one end of a strong link is 2

the degree of each candidate in a cell with

n candidates is at most

n, but may

be less depending on the links to each candidate

when singles fail to progress the solution:

1-candidate propositions using singles are attempted for all candidates with degree 2

if that fails to progress the solution then degrees 3 .. 9 are tried in order

stopping at the degree that progresses the solution and restarting with singles

(stepping by degree is the backtrack tree search heuristic that explores the most

constrained paths first with the hopes of early pruning -- without this ordering, counting all

propositions for the hardest puzzles would explode)

if 1-candidate propositions fail to progress the solution:

2-candidate propositions (paired/nested) using singles are attempted for all candidates with degree 2

2x3, 2x4, ..., 3x3, 3x4, ..., 9x9 and so on until paired candidates with degrees

d,e progress the solution

if 2-candidate propositions using singles fail to progress the solution:

the whole process is restarted with propositions using singles and box-line constraints

(the hardest of the recent hardest fall to propositions using singles and box-line)

the rating counts singles steps as in the inferior and superior threads, and counts

all proposition constraint iterations, with some extra weight for box-line constraints

constraint iterations counts the number of times the basic constraints (singles box-line)

are reapplied, after an initial candidate placement, to reach steady state

i.e., after a placement the singles constraints may induce more placements, and those more placements, and so on

eventually reapplication of the constraints will either solve the puzzle or stop making new placements

but nobody solves with just singles and box-line!

true, but observing how puzzles react to singles (box-line) with 1 and 2 candidate propositions

precipitates the puzzles into strata that reasonably match the progression of hardness

we've seen in this forum

I've compiled the 651 puzzles in CSV form with a #! schema header so it can be run back through my solver

- Code: Select all
`#!sudoku -c4,Q1,ER,XR,puzzle,label,Q1time,ERtime,stats`

Q1 my solver -q1 rating

ER SE rating

XR dukosu's suexrat rating

puzzle the puzzle

label puzzle label / author / date

Q1time the elapsed time to compute Q1 @ 3.2Ghz

ERtime the elapsed time to compute ER @ 2.0 Ghz

one took 10h58m!stats the constraint stats listed by %#c#/q in my solver

of interest for the hardest are the

P (proposition) constraint stats:

P0 number of times propositions were applied

P1 number of moves (placements/eliminations) for all propositions

P2 total number of propositions

P3 total number of proposition solutions

P4 total number of proposition contradictions

P5 total number of proposition constraint iterations

P6 maximum single proposition constraint interation

P7 maximum proposition candidate degree

P8 1: single proposition, 2: nested (paired) proposition

the Q1 rating counts simple steps, P5, and the total number of box-line moves (including

those used by propositions) x 1000

- Code: Select all
`-R'I0+P5+B*1000'`

you can try your own ratings with a -R expression after the -q1 option

the Q is for quick -- ~4min to rate the 651 @ 3.2Ghz

I'm fairly satisfied with the spread

the singles backdoor size 3 (conjecture breakers) puzzles are at the top

there will be disagreement with SE because it weights the single hardest move over all others,

and Q1 takes into account

all moves (within the given constraints and proposition logic)

the data file is

here