En studie om styrkor och svagheter hos sudokulösande algoritmer
Independent thesis Basic level (degree of Bachelor), 10 credits / 15 HE creditsStudent thesis
Sudoku is a popular game of logic in the form of a puzzle. Sudoku puzzles are printed daily in Swedish newspapers. The challenge of solving these puzzles have inspired many programmers to develop Sudokusolving algorithms. These algorithms use different approaches in order to quickly and efficiently solve the puzzles. One such approach is the use of logical strategies initially developed for human players. The purpose of this project is to benchmark and compare different approaches and algorithms. The results of the benchmarks is then used to evaluate the strength and weaknesses of each algorithm. The benchmark is performed with 12000 Sudoku puzzles of varying difficulty. The study shows that Dancing Links is the best performing algorithm in general. Dancing Links excels in each comparison criteria, one of which is solving speed. An algorithm that does not impress is Backtracking. The algorithm consistently takes the most time to solve a puzzle. The solving speed of the algorithm also varies greatly depending on the number of clues in the puzzle. This makes the algorithm less suitable for applications were solving speed is of concern. Only the strategy-based algorithm fails to solve all the puzzles. However the algorithm did manage to solve the easier puzzles and is consistently faster than Backtracking. A trend was observed where the algorithm’s speed was negatively affected by an increasing difficulty.
Place, publisher, year, edition, pages
, UMNAD, 988
Engineering and Technology
IdentifiersURN: urn:nbn:se:umu:diva-92801OAI: oai:DiVA.org:umu-92801DiVA: diva2:743440
Bachelor of Science Programme in Computing Science