New Solver & Helper for Standard/Killer/Clueless Puzzles

If you have written the best solver, generator, or helper, we should know about it
rcbroughton
Expert
Expert
Posts: 143
Joined: Wed Nov 15, 2006 1:45 pm
Location: London

Post by rcbroughton »

Jean-Christophe wrote:I suggested this when solving all steps, the button with '>>'. I was surpized to see SS trying every technique on the first sub-grid, including very complex ones like bowman bingo, before switching to the second sub-grid. The puzzle looks like it's a real insane, whereas the same puzzle can be solved using singles only.
Here's where I'm getting to based on a variety of inputs:
  1. I've included a new function to exhaustively process the current grid in a clueless
    I'm modifying the current solving routine for clueless to try simple techniques across all grids before moving on to more advanced techniques
    I'm modifying the current solving routine for clueless to improve the way in which it decides which grid to switch to (rather than simple sequential processing of each grid)
    I'm building additional routines to provide better inter-grid restrictions - starting with candidates locked in the clueless cells
    I've modified the extended puzzle navigation to make it a lot simpler to move around
    I've modified some of the internal logic to facilitate more generic Gattai puzzle types rather than just Clueless Special/Explosion and Samurai
mhparker
Grandmaster
Grandmaster
Posts: 345
Joined: Sat Jan 20, 2007 10:47 pm
Location: Germany

Post by mhparker »

I wrote:Therefore, whilst having the capability proposed by J-C would be highly desirable, it would also be important to be able to manually "lock down" the current subgrid in order to prevent these automatic subgrid switches from occuring.
rcbroughton wrote:I've included a new function to exhaustively process the current grid in a clueless
Richard, I almost forgot to say that the reason I mentioned a "lock down" option (for a specific grid) is that it would also apply when single-stepping through the puzzle. If I understand you correctly, your exhaustive processing option for the current grid would only apply when solving all steps at once (">>" option), and the implicit grid switching would still always occur when single-stepping.

The situation seems comparable to setting the processor affinity in the Windows Task Manager, where it's possible to explicitly specify which processors a particular program should run on.

BTW, that's an impressive list of features you've got lined up for release there! :D
Cheers,
Mike
Oscar
Regular
Regular
Posts: 28
Joined: Wed Jan 16, 2008 10:31 am
Location: Montesson

Post by Oscar »

I have become used to the navigation of CluelessHelper, and find it really simple and fast when eliminating candidates in the clueless variants when you have to deal with more than nine sudokus. So I propose to retain some functionalities as:
Changing from one highlight digit to another with keyboard ( >, <).
Enabling and disabling candidates, at the cell and of the digit highlighted, with the space bar.

I have problems selecting a specific digit in a cell, often acting a neighbor number and have to undo the wrong placement, a feedback on which number is the cursor pointing would be helpfull. But of course I also need to update my lenses graduation :wink:

I find it a very good program, which allows to discover and upgrade the solving level through the different variations, good work! :D
Nothing can both be and not be
rcbroughton
Expert
Expert
Posts: 143
Joined: Wed Nov 15, 2006 1:45 pm
Location: London

Post by rcbroughton »

HI All

nearly there with the new version

Just to whet your appetite, here's a screenshot. Hopefully I'll get the new version releasedf for the start of May

Image

Rgds
Richard
nj3h
Gold Member
Gold Member
Posts: 111
Joined: Mon Jul 10, 2006 12:58 pm
Location: Virginia / USA

Post by nj3h »

Richard,
Your new solver looks very nice!!

I hope someone will develop a generator that will allow the creation of the clueless, explosion, and samurai variants with the capability to set the solving techniques that could be contained in the puzzle. This is like SudoCue, which allows certain techniques to be selected.

Personally, I would really love to see the samurai generator as a top priority if someone has the time to take on this task.

I must say, one of the features of SC that I like the most is the ability to select techniques. I really hope someone can do the Samurai like this.

Thanks so much.

Regards,
George
jsmif
Regular
Regular
Posts: 17
Joined: Tue Sep 18, 2007 2:44 am
Location: brooklyn

Post by jsmif »

Wow! Yay! Looking forward to it!
nj3h
Gold Member
Gold Member
Posts: 111
Joined: Mon Jul 10, 2006 12:58 pm
Location: Virginia / USA

Post by nj3h »

All,
I was hoping that someone might comment on having a generator for samurai (and other variants) with selectable techniques as discussed in my message above.

Apparently there are some programming experts on this forum that have the skills to do this.

Any chance? (See me begging) LOL

Regards,
George
Glyn
Major Major Major
Major Major Major
Posts: 92
Joined: Tue Jan 16, 2007 1:00 pm
Location: London

Post by Glyn »

nj3h

I think it may be a matter of trial and error much the same as with Sudocue where valid grids have then to be solved with a limited subset of logical techniques. The number of grids increases the complexity of coming up with the requisite level. Note the problems that Borge is having at the moment re Clueless and Clueless Explosions.

Richards program is a Solver/Helper only, please correct me if I am wrong.

JSudoku would probably be the easiest to convert, but JC would have to call the solver automatically for the puzzle following generation and you would have to be prepared for multiple trials. :roll:
I have 81 brain cells left, I think.
Børge
Master
Master
Posts: 157
Joined: Sat Aug 11, 2007 7:22 pm

Post by Børge »

JC could do what I am doing.

Clueless:

1)
Generate a puzzle that has Naked Singles only, with givens for all the clueless cells.

2)
Determine one set of givens(out of many possible sets), excluding the givens in the clueless cells, which can be removed such that the puzzle still has one solution only including the givens in the clueless cells.
At this point I have not yet removed the givens in the clueless cells.

3)
Remove the givens in the clueless cells.

4)
Make the puzzle stepwise more difficult and for each step (removing a given in the set determined in step 2 based on a secret algorithm) run the result through the logical solver, and if the result requires not selected techniques or has more than one solution, backtrack and try the next clue in the set that my secret algorithm picks.

5)
Continue until all givens in the set determined in step 2) are exhausted.


Samurai:

1)
Generate a puzzle for the center grid that has Naked Singles only.

2)
Solve it but fill the solution into the 4 shared blocks only.

3)
For each of the grids 1, 2, 4 and 5 generate a puzzle that has Naked Singles only including the 9 givens in the shared block.

4)
Determine one set of givens(out of many possible sets), which can be removed such that the puzzle still has one solution only.

5)
Make the puzzle stepwise more difficult and for each step (removing a given in the set determined in step 4 based on a secret algorithm) run the result through the logical solver, and if the result requires not selected techniques, backtrack and try the next clue in the set that my secret algorithm picks.

6)
Continue until all givens in the set determined in step 4) are exhausted.
Hilsener i fra vikingen :viking: Børge
rcbroughton
Expert
Expert
Posts: 143
Joined: Wed Nov 15, 2006 1:45 pm
Location: London

Post by rcbroughton »

Hi All

I've just posted the new version 3.0.3 of SudokuSolver here http://www.rcbroughton.co.uk/sudoku/SudokuSolver.msi with a new help file http://www.rcbroughton.co.uk/sudoku/Sud ... erHelp.msi

The website http://www.rcbroughton.co.uk/sudoku/ has also been updated with the new program features.

The program has an array of new features - the full change log is shown below.

Enjoy!

Rgds
Richard

Code: Select all

Version 3.0.3
   1. Change to puzzle loading - Description taken from file name if no description is included in the file
   2. Allowed for more generalised Gattai puzzles
   3. Extensive change to extended puzzle locator for Gattai puzzles
          * Gattai locator can be expanded and reduced using double click or context menu in the locator image
          * Candidate display in the Gattai locator can be controlled from the context menu in the locator image
          * Extended puzzles larger than the display area can be scrolled by grabbing and dragging with the mouse 
   4. Modified Locked Candidates Box/Line routine to also lock in overlapping grids in a Gattai puzzle
   5. Modified solving steps for Gattai puzzles&#58;
          * The solver will try simple techniques on the current grid until there are no further eliminations
          * The solver will then switch to another grid with the most pending changes and look for simple eliminations
          * When there are no more simple step to be found, the solver will look for a single advanced step on the current grid and switch grids until an advanced step is found
          * The solver will then start looking for simple steps again, and the process repeats until the puzzle is solved or there are no more advanced eliminations found 
   6. Allowed more flexibility over Gattai solver steps
          * Single simple step in the current grid only
          * All simple steps in the current grid only
          * Single step in the current grid - including advanced techniques
          * All steps in the current grid only - including advanced techniques
          * Single step through the puzzle
          * All steps through the puzzle 
   7. Fixed bug in Empty Rectangle routine missing XY-chain eliminations
   8. Fixed bugs in 45 Rule routines missing Single Outies and using incorrect complexity algorithms
   9. Added a new check to 45 Rule routines to identify locked candidates
  10. Fixed problem in 45 Rule checks missing some simple eliminations in double cells
  11. Fixed problem in Empty Rectangle eliminations where incorrect elimination were being made
  12. Added Killer Quads and modified Cage Info to display quad blockers
  13. Modified Hidden Killer Pairs to find more general eliminations and added Hidden Killer Triples and Hidden Killer Quads
  14. Modified Forced Killer Pairs to find more general eliminations and added Forced Killer Triples
  15. Added Implied Cage Blocker routine
  16. Fixed bug where puzzle description was being lost when resetting a puzzle
  17. Fixed bug in Naked Triangle finding invalid eliminations
  18. Added more flexibility in 45 Rule checks - two new complexity variants included
  19. Added search box in Solver Options window to more quickly located solver routines in the scrolling window
  20. Improved clarity of log reporting for Cage Placement eliminations 

Version 3.0.2 &#40;Unreleased&#41;
   1. Modified the user interface to feedback the digit under the cursor in the current cell
   2. Changed Cell Digit highlighting to provide more flexibility
          * Single click on the digit panel sets/unsets only that digit for highlighting
          * Ctrl-Click on the digitpanel adds/removes that digit from the group of highlighted digits
          * Highlight Type controls candidate selection in the highlighting. For example, if &#123;123&#125; are selected in the digit panel&#58;
                o "All Digits", will highlight cells with 1 and 2 and 3
                o "Any Digits" will highlight cell with 1 or 2 or 3
                o "Only Digits will highlight cells with 1 or 2 or 3 and no other digits 
          * Cell Types controls whether the maximum number of candidates in a cell to be highlighted
                o "Marks Only" will not highlight singles
                o "Marks & Singles" will highlight any matching cells
                o "Singles Only" will highlight any matching single cells
                o "Pairs", "Triples" and "Quads" will highlight any matching tuple cells - if no digits are selected, all cells with the tuple are highlighted 
   3. Introduced some additional keyboard shortcuts&#58;
          * When the cell highlighter has been used to highlight a candidate, the candidate can be placed in the current cell by pressing &#40;space bar&#41;
          * Current Highlight digit can be changed using Ctrl and &#40;up&#41;, &#40;down&#41;, &#40;right&#41;, &#40;left&#41; 
   4. Added menu option to place all singles 

Version 3.0.1 &#40;Limited Release&#41;
   1. Fixed display problem for PCs using ClearType 
Post Reply