Skip to content

lksudoku SE fixes

SudokuMonster edited this page Sep 6, 2019 · 2 revisions

lksudoku has detailed some of the fixes on new sudoku players forum which can traced by following the discussion in this thread http://forum.enjoysudoku.com/post204460.html

The fixes are in a file called FIXED14SudokuExplainer.jar which can be found on this page with source code: https://sites.google.com/site/sefixshare/files

Quoting the exact posts mentioning the fixes:

I have fixed the following bugs of SE version 1.2.1

a.
UL/UR sometimes not found, see puzzle
1..........34..2...2..5..3..1.3.6.....4.2.7.....5...8..3..6..9...2..78..........4

b.
UR Type 3 Hidden Set sometimes not found, see puzzles
....2......74.69...8.....3.2.......1.3.9.5.4...8...6...5..1..9...2...4......9....
or
..1...2.....3.2...4...1...3.6.7.8.5...4...9...8.6.4.2.9...6...7...8.7.....5...1..

c.
The same puzzle can have different ratings and solve paths (rare) for dynamic
contradiction forcing chains, see puzzle
2..3....5.....473.....9..1......1.9.....7.4...6.8....34.5......6..5......79.....8

Two more fixes to SE:

d. UR/UL type 3 hidden set rating is now increased to match that of UR/UL type 3
naked set of the same size

e. Sometimes SE chose a higher rating BUG type 3 move while there were other
BUG type 3 moves with lower ratings, see puzzles
..9..6..3.3.....7.1...5.8.....6.3..2..6...9..3..7.4.....1.8...5.6.....2.8..2..1..
or
.1...2...34.........5.36......7..8.9..2...3..9.6..5......19.7.........43...8...5.

Another updated version,
This change is more of an enhancement than a fix

f.
Added a command line option for serate to rate puzzles in batch mode, where all
lowest rating hints of same rating are applied concurrently, to use this mode add
the argument -b or --batch to serate command line

command line option description:

  -b, --batch
      Batch mode rating, apply all lowest rating hints of same rating
      concurrently intead of applying one lowest rating hint step only.

This mode show over 13% runtime improvement when running on all pattern games with
rating <6.5 on my computer

The mode also gives lower ratings in cases where one UR/UL destroys another UR/UL when
applied, see puzzles
..1.36..4.6.8....37...........3...8..2..9..6..7...2...........85....1.9.4..95.1..
6.7.8.9.3.........3..2.4..5..5...4..7...2...1..9...7..9..5.2..7.........1.8.7.5.6
.1.......2.....3.....4.567...38.61.............57.29...826.1.....7....5.........9
9....2.7...58..2...2..9...6.4.....8...3.7...15.....9...8...34..7..9....3..1.8..5.
.1...9...34.........2.45......8..6.5..6...7..8.5..2......17.8.........43...6...2.
....8......23.45...6.....9.4.......6.3.....1...87.53...1..6..4.7...9...2.........
...........43.92...125.736..43...95...........57...18..754.183...97.25...........
9.8...4...6...3...4...7...3...1.2.3...5...1...4.3.9...6...9...1...7...8...2...3.4
.....47...2..9..1.4..2.....5...8.4...6.3.9.8...1.6...9.....1..3.1..7..6...54.....
..1..2..3.2..1.4..3..9...7...6.....4.1..9..3.8.....9...3...4..7..4.5..9.6..7..2..

In addition, batch mode seems to solve the problem of different isomorphs having
different rating, see the following two transposed puzzles:
.1...2...34.........2.57......3..1.7..9...4..1.5..8......69.3.........62...7...9.
.3...1...14.........2.95......3..6.7..5...9..2.7..8......14.3.........69...7...2.

This change only effects serate, and only when the new -b or --batch command argument
is used

Another updated version of serate,

This update is an enhancement for serate that allows for overall time measurement and
choosing a set of techniques to be disabled or enabled while rating

The following command line options were added
g.

  -t, --time
      Time the runtime,
      display total runtime to screen after rating is completed

h.

  --techs=TECHSTRING
      Specific techniques only, set which techniques to use
      the techniques string TECHSTRING is a string consisting of the letters
      '0' and '1',where '1' means the technique should be used and '0' means
      it should not be used
      To see which technique is in which letter, and how many techniques are
      there, just type --techs= without any string after the = in TECHSTRING.

This change only effects serate, and only when the new -t, --time or --techs command
arguments are used

3 more fixes/enhancements to serate

i.
Fix serate parsing of command line input arguments, there was a bug causing it to skip
arguments appearing after a one letter command switch that has no argument, fixed in this
version

j.
"run-time options in effect" was added as part of each run's output to the screen

k.
Added a command line option to output serate solving steps, the steps description is the
same as the description appearing in the GUI version under the hints classification tree,
use -l or --log to view the steps

For batch mode, each batch step lists all the hints done for the batch group of moves

  -l, --log
      log the steps done while rating, print the technique moves done while
      rating the puzzle

The update only effects serate


2 more fixes/enhancements to Sudoku Explainer and serate

l.
Fixed a bug in SE causing it not to identify some BUG type 2 patterns, see the following
puzzles:
..4..6..5.1..8.6..5..4...9...5.....9.9..2..7.7.....2...7...2..6..8.6..1.4..8..7..
and
1.2...3.......2.4.5...6...2...3...7...6.5.8...8...9...4...1...5.3.8.......7...9.6

m.
Re-inserted the serate command line options introduced at serate version 1.2.1.3

  -d, --diamond
      Terminate rating if the puzzle is not a diamond.
  -p, --pearl
      Terminate rating if the puzzle is not a pearl.

Another fix/enhancement to Sudoku Explainer and serate

n.
Improved the way SE searches for chains so that it can find shorter chains than before
in some cases thus reducing the rating of some puzzles, this fix also solves some of the
cases where relabeling clues changed the rating

The following puzzles are examples that can be solved with shorter chains in this version

..12......3...45..6......7.2..1...8.....2.....9......3.5......9..76...1......34.7
1..2..3......1..4...5..6..78.....2...3..9..8...4.....12..8..7...1..5......3..4..6
..1..23...4..5..6.7.......8...5.......5.4.9.......8...8.......7.6..9..4...31..2..

The following puzzles are an example for relabeling rating change bug fix

5.....2...9.3.....8.6.....17..2......8..9......4..1.6..7.5..3....2.8..4.4....27.9
5.....2...1.3.....8.6.....97..2......8..1......4..9.6..7.5..3....2.8..4.4....27.1