Learning to Solve Sudoku Essay
This report details the work undertaken in producing computer software capable of teaching a user how to play Sudoku. The report details the functionality of the system and the background reading that was carried out before the design and implementation phases. Also contained in the report are the objectives of the project, including the need for the program to be able to model the learner, as well as increase the learnerís Sudoku ability. Another aim of the project described in the report is the need for a comprehensive dialogue between the user and the program using natural language processing concepts. These aims were achieved and comprehensive evaluation is detailed in the report.
Sudoku has been extremely popular for a number of years now. It is a logic-based numberfilling game which was first made popular in 1979 when it was published in an American magazine . Typically a player is presented with a 9x9 grid of cells, divided into smaller 3x3 regions, which are partially filled with values. It is then the playerís job to attempt to fill in all the empty cells with the numbers 1-9. They must ensure that each row, column and region have only one instance of each number.
Sudoku is played by all ages and races, throughout the world, and the simplicity of the game allows anyone to pick it up and attempt to fill in a grid. Like any puzzle, Sudoku varies in difficulty from one game to the next, requiring a certain ability in order to complete it. If the player does not have the ability or the background knowledge that is necessary, then they will fail to complete a puzzle.
The main objective of the Sudoku teacher is to increase a learnerís ability to play Sudoku. This is carried out, in part, through a comprehensive and clear dialogue between the learner and the teacher whenever they require help during game play. The teacher also offers manuals, which include interactive examples, for the learner to read in their own time about how to use specific Sudoku techniques.
To achieve this goal of increasing a learnerís Sudoku ability it is important for the teacher to have a clear model of the learnerís current ability at any one time. This includes knowing the learnerís strengths and weaknesses so that the teacher can decide which grid-filling techniques to improve upon and how to go about improving them.
Another goal of the project is the implementation of a testing facility which is available to the learner. This allows the learner to test themselves on their current performance and receive advice on what areas they should attempt to improve upon.
Reason for carrying out Project
This project has been undertaken due to the huge popularity of Sudoku and the current lack of tools available for players who want to improve their Sudoku ability. There are currently many programs available that solve Sudoku puzzles, but very few that are able to take a user through the steps necessary to do so. We will discuss in greater detail the Sudoku software which is available in ĎChapter 3: Backgroundí.