Home |
## Col's Free Sudoku Solver## Generate & Solve Sudoku Puzzles! |

Col's Sudoku Solver is a freely downloadable program that helps you solve Sudoku puzzles. It gives you full, interactive control over the solving process, and explains everything it's doing every step of the way.

Download v4.1 here (64k)

This .zip archive contains a Windows executable (exe) file plus a selection of sample problems and a ReadMe with instructions for use.

Take a look at this site for a detailed explanation. Also occasionally spelled "su doku", "su do ku" or "sudoko". The name is taken from the Japanese for 'Single Number'. It is sometimes known in the USA as "Number Place". You can find out more, plus chat with fans, on Michael Mepham's site.

Pretty much everything. Here's the Progress file.

Using two very simple logical tricks, and a permission matrix. Recent versions use a few complex algorithms that are outlined in the ReadMe File.

For each of the 81 squares in the grid, it works out which of the numbers 1-9 could be in that square. It does this by crossing off any numbers which are already found in the current row, column or 3x3 cell.

In English, they amount to "Which cells could only be one number?" and "which numbers could only be in one cell?"

Firstly, it calculates the permission matrix (see above) and then looks to see if any cells have only one legal value. If this is true then it fills them in right away.

The second method is similar. You can choose to apply it to either a 3*3 cell, a row or a column. Within those nine squares, it checks to see if there is only one square which can possibly contain a specific number. If this is the case, then it fills it in.

That's it! There are some really difficult problems for which these two methods aren't enough. For those you have to manually remove permission values according to specific clever tricks. I've implemented loads of those now, too. Everything is explained in the ReadMe file.

As of version v4.0, I've implemented Constrictions; Disjoint subsets; Unique subsets; Neighbour pairs; X-Wing; Swordfish; Nishio; Forcing chains. Those algorithms are sufficient to solve any (solvable) Sudoku puzzle I've ever found. Plus I've implemented a depth-first search routine based on Donald Knuth's "Dancing Links" algorithm, which can solve around 1,000 puzzles per second!

No, but as of version v4.0 it can export the puzzles to text, HTML or PostScript formats. These can all be easily printed. If you want a postscript viewer then you can find one here

When you click on any of the buttons, the programme shows you in grey the numbers that it was able to calculate using that method. These numbers are absolutely 100% correct, not guesses. As soon as you have checked through them, and understand how they were derived, you can then accept them using the 'Update Board' button. Then it fills them in in blue, and recalculates the new permission matrix using these values.

You can also highlight the squares which are legal positions for specific numbers. Try clicking the numbers towards the bottom of the control pad dialog box. This shades out squares where the specified number could not be placed.

Plus, from v4.0 onwards, you now also have a textual explanation box, accessed from the "Help" menu. This explains exactly why the SuDoku solver has made every single choice.

Yes, in a simple 9*9 matrix format. See the example data files that I included with the .zip distribution for how to do this. It's really easy.

How unfortunate. I suggest you employ a very expensive lawyer with an excellent sense of humour.

Certainly. I can be contacted at colin@frayn.net.

I gave out some source code to earlier versions, but I'm keeping a lid on the newer versions, I'm afraid. Hey, I'm giving the helper away for free, what more do you want?

Well the best thing you can do is to link to my page. If you own a Weblog, or any other kind of website, just put in a text link to this page so that more people can find out about my program. That would be great!

If you particularly want to send me money, you can do so through PayPal. And it's totally secure.

You can use Col's Free Sudoku Solver to produce as many free sudoku puzzles as you want! You no longer need another source!

Well, if you're a fan of OCaml, then check out Jon Harrop's SuDoku solver in 19 lines of code. Though it may hurt your brain.

I work at Cercia, primarily on data mining and visualisation technologies. Please visit the homepage of my colleague Andy Pryke, to learn more about data mining.

This page last updated : 10/Apr/2007