Can skfr replace SE in Patterns Game?

Interactive on-site game threads go here

Can skfr replace SE in Patterns Game?

Postby dobrichev » Tue Feb 28, 2012 7:06 pm

Hi all Sudoku Players,

Let discuss in this topic the benefits of replacement of the currently used Sudoku Explainer with SKFR.

Currently a special build of Sudoku Explainer 1.2.1 by Nicolas Juillerat is in use. The link to the special build and details on its functionalities are explained in the opening post of the Patterns Game topic.

SKFR is alternative rating program written by Gerard Penet. Its source in C++ is available at http://code.google.com/p/skfr-sudoku-fast-rating/ and there is open discussion in this forum at http://forum.enjoysudoku.com/cloning-sudoku-explainer-thru-tagging-t30132.html.

Known facts:
  • Sudoku Explainer is de facto standard in Sudoku Puzzle Rating.
  • Sudoku Explainer is written in Java.
  • Sudoku Explainer source is available.
  • Sudoku Explainer has known bugs.
  • Sudoku Explainer can rate any known puzzle.
  • Sudoku Explainer's clone has conditional rating abilities.
  • Sudoku Explainer is very slow for hardest puzzles.
  • The author of Sudoku Explainer is inactive from years.
  • There are clones of SE implemented by some authors in their code. Some of them have source code available for public use.
  • There is database with puzzles played in past games which directly affect players score (rarity).
  • Out of the scope of Patterns Game, a huge number of rated puzzles exists and they are spread in many personal collections.
  • SKFR in general follows the rating rules of Sudoku Explainer.
  • SKFR in written in C++ but not ANSI C++.
  • SKFR source is available.
  • SKFR has its known bugs which don't intentionally follow the Sudoku Explainer's bugs.
  • SKFR has conditional rating abilities.
  • SKFR is at least 100 times faster than Sudoku Explainer.
  • SKFR is currently not 100% ready to replace SE and that is confirmed by its author.

Any comment from players, former and future players, and non-players is welcome.
dobrichev
2016 Supporter
 
Posts: 1850
Joined: 24 May 2010

Re: Can skfr replace SE in Patterns Game?

Postby champagne » Tue Mar 06, 2012 12:56 pm

I thought Glenn who asked for that thread would bring in quickly some thoughts.

May be I can add several points to what mladen wrote.

a) This is not any more my code. Significant parts of the code come form Mladen and Patrice.
And a big part of the performance is due to the code using 128 bits instructions.

b) Nicolas Juillerat made a fantastic job if we go back to the time when Sudoku Explainer was written.
Sudoku Explainer was mainly an on-line solver easy to handle et offering good explanations on the moves.
At that time, there were nearly no sample file, and no way to compare results with another program.

What has been achieved is just remarkable even if many bugs have been found.

c) As it is, skfr is not ready to replace serate, but there is not that much to do to be in that position;

skfr as serate solves any puzzle out of the bug described below.

rating for the pattern game should be done on the canonical form to avoid any risk of variation in the rating for morphs

skfr generates some false eliminations analysing BUGs. We have not yet decided if the best way would be to fix the bug or to try to copy serate code, knowing that serate misses some BUGs

I have in my file a bug in the back search of a chain in nested mode, but due to what I explain in the next point, fixing of that bug is also in a wait state.


d) There are still a lot of room for improvement in skfr.

First shot of skfr has been done out of the code of my solver.
It appeared that matching the tagging strategy and serate attack of a puzzle was extremely hard.

In the current version of skfr, nearly nothing of the original code remains, but this is still a downgrading view of the tagging approach.

I started a value analysis of skfr towards serate process and found new ways to implement the code going generally closer to serate strategy.

It is too early to tell what will be the final performance, but I am optimistic that we will get good results.



At the end, if we had an urgent request to replace serate, I would say that the priority would be to fix the 2 bugs.
Without any pressure (which seems the case), I would be in favour to first create a new release including all pending ideas that appear to be of value.


champagne
champagne
2017 Supporter
 
Posts: 7357
Joined: 02 August 2007
Location: France Brittany

Re: Can skfr replace SE in Patterns Game?

Postby ronk » Tue Mar 06, 2012 1:21 pm

champagne wrote:skfr generates some false eliminations analysing BUGs. We have not yet decided if the best way would be to fix the bug or to try to copy serate code, knowing that serate misses some BUGs

This bug, not to be confused with BUG, should be easy to fix, but to be clear, are you talking about a bug in skfr that is not in Explainer?
ronk
2012 Supporter
 
Posts: 4764
Joined: 02 November 2005
Location: Southeastern USA

Re: Can skfr replace SE in Patterns Game?

Postby champagne » Tue Mar 06, 2012 2:49 pm

ronk wrote:
This bug, not to be confused with BUG, should be easy to fix,


yes it has been postponed for 2 reasons:

a) such puzzles (1 out of several millions) are of poor interest in current uses of skfr
b) as I wrote, we have an alternative project which is to copy strictly serate's code including the bugs existing in serate's code.
The BUG exit for complex BUG patterns IMO is as easy and much safer to solve through chains for a player.

ronk wrote:
to be clear, are you talking about a bug in skfr that is not in Explainer?


this is a bug specific to skfr.

champagne
champagne
2017 Supporter
 
Posts: 7357
Joined: 02 August 2007
Location: France Brittany


Return to Interactive games