Date of this Version
We present SOLVER, a Java applet that uses Constraint Processing (CP) techniques to assist human users in solving Sudoku puzzles. We also showcase CONSTRUCTOR, another applet that allows users to enter and store puzzles, which they can then load in SOLVER. These applets are available from sudoku.unl.edu/Solver and sudoku. unl.edu/Constructor. Our goals are as follows:
• To the public: Illustrate the power of CP techniques in the context of a popular easily approachable puzzle.
• For the research: Investigate how to use CP to interactively support and guide human players.
• For education: Use the Sudoku puzzle as a means to teach basic and advanced constraint propagation techniques.
• For insight in human reasoning: and understand how it differs from algorithmic approaches.
SOLVER is built to maximize the interactions between the human users and CP techniques. It allows users to apply various consistency algorithms to specific constraints or the entire puzzle, and interactively make assignments and domain reductions. We also designed a ‘hint’ functionality that uses increasingly complex propagation algorithms in a controlled manner to guide and train the users to play the game.