Understanding how CPQ Works Using Sudoku puzzles
A quick Sudoku history
Do you know the history behind Sudoku? I will admit when I checked the Wikipedia page about Sudoku I thought I would read a story about Sudoku being a 2,000-year-old numbers game invented by Japanese monks or the likes of it. It turns out the story behind Sudoku is, of course, far from that. Instead, this popular game is a fairly modern puzzle that first appeared in 1979 but was made popular by the Japanese puzzle company Nikoli (who named the game Sudoku, meaning "single-digit") and nowadays, you see people solving Sudoku puzzles virtually everywhere.
The configuration of Sudoku
The CPQ nerd in me cannot help to think of the configuration aspects of this intriguing game - but is Sudoku really a good example of configuration? A genuine Sudoku game only has one solution and as such, it could not be considered a configuration problem per se, since a configuration problem usually has several solutions instead of just one. Creating a new Sudoku puzzle from scratch is, however, more of a configuration problem and not all that easy to do by hand. In fact, Wayne Gould who created software to easily create new Sudoku puzzles made a great impact on the popularization of the game. With it, every newspaper in the world could easily offer their readers a new Sudoku every day.
Creating a new solvable Sudoku puzzle is something any configurator should be able to easily solve. A normal Sudoku has a given set of variables: 9x9 squares, each holding a number. Each square also belongs to a row, a column and one of the 9 quadrants of the game.
The rules are simple:
1. Each square must hold one single-digit number between 1 and 9
2. The number in each square in a row must be different from the other in that row.
3. The number in each square in a column must be different from the other in that column.
4. The number in each square in a quadrant must be different from the other in that quadrant.
When you start creating a Sudoku game from scratch, there are millions of possible solutions.
Every time you lock a number you subsequently limit the solutions (configurations) possible. The interesting thing here is that, from the configurator's perspective, the puzzle is always "solved" during the creation process. When you lock the first number, the rules propagate throughout each square and create a new solution based on that lock. There is still not one unique solution - but it remains solved, from a configurator's point of view.
From a human perspective, it is of course very difficult to try to solve a puzzle with only one clue.
Not only is it difficult but there are also several solutions that disqualify it from being a genuine Sudoku game. At a certain point, which apparently is 17 clues, there is one unique solution to the puzzle. The locked numbers can now be used to create a puzzle for a magazine or the likes of it. At this point, it goes from being a rather interesting configuration problem to a fun puzzle for humans to continue to solve. Every clue you add to the game after that will only be used to assist the player and make it easier to solve.
If you are ready for a challenge, we present to you:
The Tacton Sudoku Solver where you can create your own Sudoku game from scratch. You lock your own number to create the "clue numbers" and can see how the full table continues to be solved while doing so. Feel free to play around, perhaps you can break the code and find a unique solution with only 16 clues!