Preview

Presenting the Test Cell Algorithm for Solving Sudoku Puzzles

Powerful Essays
Open Document
Open Document
2204 Words
Grammar
Grammar
Plagiarism
Plagiarism
Writing
Writing
Score
Score
Presenting the Test Cell Algorithm for Solving Sudoku Puzzles
Presenting the Test Cell Algorithm for Solving Sudoku Puzzles
Tom Kigezi Department of Electrical and Computer Engineering, Makerere University, Kampala, Uganda
Abstract— Sudoku, the logic based combinatorial numberplacement puzzle has gained worldwide fame among mathematicians and scientists alike in the field of Computational Game Theory. Notably, a vast majority of computer-based algorithms available for solving these puzzles try to mimic human logic in their implementation, making them liable to errors from puzzle inconsistencies. This paper presents a straightforward computer-based algorithm for solving Sudoku puzzles, hereafter called the Test Cell algorithm. It utilizes a highly efficient backtracking technique that is easy to implement in most available computer programming languages. Test runs of the algorithm, implemented using the C++ computer programming language, have been successful for essentially all valid puzzle difficulty categories. Keywords— Sudoku puzzle, Sudoku algorithms, Easy Cell method, Test Cell tend to require multiple hand-developed solving strategies that may not be easily integrated into a single logically sound and efficient computer-based algorithm. This is a fundamental challenge in writing Sudoku puzzle solving programs that the Test Cell algorithm overcomes.

2. The Test Cell Algorithm
The Test Cell algorithm developed for solving Sudoku puzzles does not mimic human logic or hand-developed algorithms. It is a straightforward, easy to implement, consistent and efficient computer-based algorithm that employs Test Cells - special testing cells determined by a specific criterion, that guide to the ultimate puzzle solution. While absent in typical easy puzzles (as a solution is reached without a need to identify them), Test Cells begin to appear as the difficulty of the puzzle is raised. Though only tested on 9X9 Sudoku grids, the Test Cell algorithm can ideally be scaled to other puzzle dimensions.

1. Introduction
Introduced



References: [1] Delahaye, Jean-Paul, “The Science Behind Sudoku”, Scientific American magazine, June 2006. [2] J.F. Crook, “A Pencil-and-Paper Algorithm for Solving Sudoku Puzzles” Retrieved December 20, 2010, from the World Wide Web: http://www.ams.org/notices/200904/rtx090400460p.pdf [3] Kim, Scott, “The Science of Sudoku", 2006 In a well-written program, the algorithm exhaustively explores all possible hypotheses and finally determnines the solution, if one indeed exists. Figure 9 shows a challenging puzzle that can be solved with the extended Test Cell algorithm. [4] Mike, Adams, “Sudoku Puzzle Secrets: Learn How to Solve Sudoku Puzzles With Little Effort”, 2007 Author Tom Kigezi is a third-year student of BSc. Electrical Engineering at Makerere University. He is a student researcher with an online laboratories project iLabs@MAK and has a keen interest in robotics, artificial intelligence and automated systems. Figure 9: A challenging puzzle that can be solved with extended Test Cell algorithm

You May Also Find These Documents Helpful

  • Good Essays

    4. Create subset: At this stage using an intelligent approach and non-coincidentally, answer that need to be combined are identified from the members of reference set. One advantage of this step is creating a subset that unlike genetic algorithms are not necessarily only has two members. This approach allows the solution space simultaneously affect more compounds for searching. So the probability of reaching better solutions increases.…

    • 623 Words
    • 3 Pages
    Good Essays
  • Good Essays

    Nt1420 Unit 6

    • 1145 Words
    • 5 Pages

    INSTRUCTIONS: 1. THERE ARE SIX (6) QUESTIONS IN THIS PAPER. 2. ANSWER FIVE (5) QUESTIONS ONLY. Question 1 Arrays are used when storing a large number of values. You are required to create an array named a and answer the following questions regarding array manipulation. a. Write a method fillRandom(int[] a, int min, int max), fill the array a with a random integer value. (Note: Math.random() returns a double in the range of 0.0 and 1.0, therefore it is cast to an integer number, between the minimum and maximum value). [6 marks] b. Write the Bubble sort method to sort array a into descending order. [10 marks] c. In the quicksort, an algorithm an element is chosen from the unsorted list. This element is called the…

    • 1145 Words
    • 5 Pages
    Good Essays
  • Satisfactory Essays

    Nt1330 Unit 9 Quiz

    • 1332 Words
    • 6 Pages

    Any problem that can be solved by building circuitry (AND, OR, NOT, XOR circuits) can also be solved by implementing the solution in a computer program.…

    • 1332 Words
    • 6 Pages
    Satisfactory Essays
  • Better Essays

    Pow Write-Up 1

    • 1175 Words
    • 5 Pages

    When I first saw the POW, I thought that finding the solution would be fairly easy, by just plugging different numbers into the boxes and play around with them. I soon discovered that that wasn’t the case. So using deductive reasoning, I began off by acknowledging that there couldn’t be any number over four in the boxes, because if it was above four, it wouldn’t be the right solution. If I put a five in any box, I knew that there would only be four boxes left, which wouldn’t work. So I ruled out any number over four.…

    • 1175 Words
    • 5 Pages
    Better Essays
  • Satisfactory Essays

    RC II 8

    • 95 Words
    • 1 Page

    This activity will be achieved by placing unassembled large floor puzzle on the floor. We will encourage two or three children to work together to put the puzzle together.…

    • 95 Words
    • 1 Page
    Satisfactory Essays
  • Good Essays

    Martin Davis suggests that in order to prove whether or not the algorithm existed or not, Alan Turing analyzed and simplified how a human goes through the problem when using a pencil and paper. (Davis 1) Turing’s thought process while inventing made him unlike other mathematicians because he was the only one to consider basing his code on the human thought process. Jim Holt acknowledges that in the machine “over this tape a little scanner travels back and forth, one square at a time writing and erasing 0’s and 1’s. The scanners action at any moment depends on the symbol in the square it’s over and the state it is in--its “state of mind,” so to speak.”…

    • 1445 Words
    • 6 Pages
    Good Essays
  • Satisfactory Essays

    Chinese room: A thought experiment, devised by John Searle, to show that computers lack intentionality.…

    • 464 Words
    • 2 Pages
    Satisfactory Essays
  • Good Essays

    Matlab vs Excel

    • 1013 Words
    • 5 Pages

    * It uses matrix based algorithms hence each element or data values are treated in an m row by n column, such that a single integer is considered a matrix of one row and one column.…

    • 1013 Words
    • 5 Pages
    Good Essays
  • Good Essays

    * By: KIM, KEEHYUNG; CHOI, HYUKGEUN; McKAY, RI (BOB). International Journal on Artificial Intelligence Tools. Apr2011, Vol. 20 Issue 2, p349-366. 18p. 8 Diagrams, 6 Charts.…

    • 892 Words
    • 4 Pages
    Good Essays
  • Powerful Essays

    Department of Computer Science, National Pingtung University of Education. No.4-18, Minsheng Rd., Pingtung City, Pingtung County 900, Taiwan (R.O.C.)…

    • 943 Words
    • 4 Pages
    Powerful Essays
  • Powerful Essays

    Datasets by Weka

    • 3263 Words
    • 14 Pages

    References: 1.Mooney, R., Shalvik, J., and Towell, G. (1991): Symbolic and Neural Learning Algorithms - An experimental comparison, in Machine Learning 6, pp. 111-143. 2. Michalski, R.S., & Chilausky, R.L. (1980): Learning by being told and learning from examples - An experimental comparison of two methods of knowledge acquisition in the context of developing an expert system for soybean disease diagnosis, in Policy Analysis and Information Systems, 4, pp. 125-160. 3. Quinlan, J.R. (1983): Learning efficient classification procedures and their application to chess end games in R.S. Michalski, J.G. Carbonell, & T.M. Mitchell (Eds.), in Machine learning: An artificial intelligence approach (Vol. 1). Palo Alto, CA: Tioga. 4. Sejnowski, T.J., & Rosenberg, C. (1987): Parallel networks that learn to pronounce English text, in Complex Systems, 1, pp. 145-168. 5. Tesauro, G., & Sejnowski, T.J. (1989): A parallel network that learns to play backgammon, in Artificial Intelligence, 39, pp. 357-390. 6. Quinlan, J.R. (1986): Induction on Decision Trees, in Machine Learning 1, 1 7. Quinlan, J.R. (1993): C4.5 – Programs for Machine Learning. San Mateo: Morgan Kaufmann.…

    • 3263 Words
    • 14 Pages
    Powerful Essays
  • Powerful Essays

    heuristic searching techniques are applied. However, this introduces inaccuracy in the search result, causing the selection of sub-optimal results.…

    • 1564 Words
    • 7 Pages
    Powerful Essays
  • Powerful Essays

    TOY CRITIQUE ASSIGNMENT

    • 3926 Words
    • 13 Pages

    I chose to critique Memo Locomotive Puzzle for this assignment because it is a toy that my family members had played with for few years and children really loves it. I have learned that play is not only enjoyable, but it has a value to learning and development as well.…

    • 3926 Words
    • 13 Pages
    Powerful Essays
  • Satisfactory Essays

    Hum111

    • 616 Words
    • 3 Pages

    Visualize the solution- seeing the problem and visualizing it. You can see an assignment as a problem, you have to do it, and you can visualize what it will look like when you are done.…

    • 616 Words
    • 3 Pages
    Satisfactory Essays
  • Good Essays

    6.1 Testing Principles

    • 1118 Words
    • 5 Pages

    White-box testing of software is predicated on close examination of procedural detail. Logical paths through the software are tested by providing test cases that exercise specific sets of conditions and/ loops. A limited number of logical paths can be selected and exercised. Important data structures can be probed for validity. Whit-box also sometimes called glass box testing is a design method that uses the control structure of procedural design to derive test cases.…

    • 1118 Words
    • 5 Pages
    Good Essays

Related Topics