# Genetic Algorithms and Sudoku

Save this PDF as:

Size: px
Start display at page:

## Transcription

1 Genetic Algorithms and Sudoku Dr. John M. Weiss Department of Mathematics and Computer Science South Dakota School of Mines and Technology (SDSM&T) Rapid City, SD MICS 2009 Abstract Sudoku is a number placement puzzle that has achieved remarkable popularity in the past few years. Traditional generate-and-test solution strategies work very well for the classic form of the puzzle, but break down for puzzle sizes larger than 9x9. An alternative approach is the use of genetic algorithms (GAs). GAs have proved effective in attacking a number of NP-complete problems, particularly optimization problems such as the Travelling Salesman Problem. However, GAs prove remarkably ineffective in solving Sudoku. GA performance in Sudoku suffers from slow convergence, inability to escape from local minima, and a variety of other problems. Our experience with Sudoku suggests that this is a GA-hard problem.

2 Introduction Sudoku [1] is a number placement puzzle that has achieved remarkable popularity in the past few years. In its classic form, the objective is to fill a 9x9 grid with the digits 1 to 9, subject to the following constraints: each row, each column, and each of the nine 3x3 subgrids must contain a permutation of the digits from 1 to 9. The initial puzzle configuration provides a partially completed grid, such as the example grid illustrated below left. The Sudoku solver must fill in the remaining grid elements to obtain a solution like the one given on the right. Sudoku is a special case of the Latin Square [2], with an additional constraint imposed by the permutation of digits inside each subgrid. Sudoku may be generalized to allow grid sizes other than 9x9. The most convenient sizes are perfect squares (4,9,16, ), since these contain square subgrids (2x2,3x3,4x4, ), but other variations (such as a 12x12 grid with 4x3 subgrids) are possible. In general, an NxN grid is filled with the digits 1 to N. The standard approach to computer-based Sudoku solvers is a generate-and-test solution using backtracking [3]. This strategy works extremely well for smaller grid sizes (including the standard 9x9 grid configuration), but becomes computationally intractable for larger sizes. In fact, the general problem of solving NxN Sudoku puzzles is known to be NP-complete [4]. An alternate solution strategy for Sudoku puzzles uses a genetic algorithm. Genetic algorithms (GAs) [5,6,7,8,10,11] are a class of evolutionary algorithms that achieved popularity through the efforts of John Holland in the 1970 s [7,8]. GAs are based on the fundamental concepts of evolution in biology. The classic GA starts with a random population of initial solutions, encoded as bit strings. These strings are ranked by a fitness function that determines the goodness of a solution. Better solution strings are selected and recombined using a process analogous to crossover in DNA recombination: the first part of one bit string is concatenated with the last part 1

3 of a second bit string. A low level of mutation is then applied, by randomly flipping solution bits. The new solution strings, together with the most fit individuals from the previous generation, comprise the population in the next generation. The process continues until a good enough solution has been generated, or no further progress can be made. Many variations are possible, and some are necessary for problems such as Sudoku. The bit-level encoding of solution strings may need modification to account for higher structure in the data. In Sudoku, for example, it makes sense to represent each subgrid (or row, or column) as a permutation of the digits Crossover points exist only between subgrids, not at each bit in the solution string. Mutations should not randomly flip bits, but should generate a different permutation of digits within a subgrid. Predetermined positions (either given in the initial configuration, or with only one possible digit) should not be allowed to mutate. Implementation A computer program was written in C++ to solve Sudoku using a GA. This program reads in an initial grid configuration from a text file, given as a command-line argument. Genetic algorithm parameters are specified as optional arguments, including the number of initial solution strings, the maximum number of generations, percent of current population used for reproduction, and mutation rate. Program usage permits command-line specification of an input file that contains the Sudoku puzzle to be solved, and various GA parameters (population size, maximum number of generations, selection rate, mutation rate, etc.). The input file format specifies the grid size followed by the initial grid configuration. Hyphens indicate blank grid elements, and white space (space, tab, new line) separates all text file components. For the sample Sudoku problem above, the input file would contain: The GA runs until a solution is found, or the maximum number of generations is reached. The best (minimum) and worst (maximum) cost function results are output for each generation. The 2

4 final grid configuration is printed, using a format similar to the input file format, when the program completes. Incomplete solutions are indicated by placing asterisks at the end of each row or column to indicate duplicate digits. Solution Outline Filling in predetermined cells Some initial positions specify a unique Sudoku solution, while others do not. As few as 19 cells on a 9x9 grid may be sufficient to uniquely specify a solution. In general, some of the cells may be filled in using simple techniques that do not involve search. For example, if 8 cells (out of 9) in a row, column, or subgrid are filled in, the remaining cell is obviously predetermined. For easy Sudoku puzzles, this approach may be sufficient for finding a solution. Even for harder puzzles, it is worth filling in predetermined cells such as these, in order to reduce the dimensionality of the problem. With this in mind, there are two phases to solving Sudoku using GAs. The first phase fills in predetermined cells, and may partially or completely solve the puzzle. The second phase starts with the filled-in grid, and attempts to evolve a complete solution to the puzzle. Only two simple approaches were employed to detect predetermined cells; in particular, filling cells hidden and naked single cells. This is most commonly done using a pencil marking approach: each cell has a 9-element bool array to track available digits initially each cell may contain any digit (all true) for each cell (at row r, column c, subgrid s) in the puzzle { if the cell contains digit d { cross off (set to false) the digit d for each cell in row r cross off (set to false) the digit d for each cell in column c cross off (set to false) the digit d for each cell in subgrid s } } Cells that contain only one available digit (so-called naked singles) may now be filled in with that digit. Cells that contain a digit that appears only once in the row, column, and subgrid ( hidden singles) are also filled in. When grid cell(s) are filled in, the digit arrays must be updated, and the filling in process repeated. No attempt was made to employ more sophisticated algorithms that consider pairs or triplets of cells to fill in the puzzle grid. At this point the GA was allowed to work its magic. 3

5 Running the GA Evolutionary algorithms encompass a variety of biologically-inspired problem solving approaches. Genetic algorithms encode a population of solutions, rank them with a fitness function, and apply computational analogues of selection, recombination, and mutation to evolve better solutions. GAs have been successfully employed to solve a wide variety of optimization problems, and from a naïve perspective, it would appear that Sudoku is an ideal application for this approach. Encoding: Solution strings are encoded as 1-D arrays (or lists) of symbols. By limiting the maximum grid size to 256x256, the symbols can be represented with 1-byte chars. Each solution string for an nxn grid is broken into n segments of n symbols, with each segment representing one subgrid. For a 9x9 grid, each 3x3 subgrid is represented with a 9-element array, and there are 9 of these subgrid arrays. Initial Population: For each initial solution string, a random permutation of the digits from 1 to n is placed in each segment. This ensures that the subgrids (at least) are correct. Some additional bookkeeping is required to handle the fixed elements in the initial grid. The simplest approach is to go ahead and randomize the digits, then swap the fixed elements back into their correct places. Fitness Function: Solution strings are evaluated by counting the number of duplicate symbols in rows or columns. Fewer duplicates presumably means a better solution string. Selection: The entire population of solution strings is ranked by the fitness function, and a certain percentage is selected for survival and reproduction. The best solutions are selected probabilistically, so that even lower-ranked solutions have a small but finite chance of reproducing. Genetic Operators: crossover may take place at any point between subgrids. For a 9x9 Sudoku grid, there are 8 possible crossover points. Mutation causes two elements of a subgrid to swap positions. Fixed and predetermined elements may not be swapped out of position. 4

6 Evolutionary Algorithm: generate initial population repeat rank the solutions, and retain only the percentage specified by selection rate repeat randomly select two unused solution strings from the population randomly choose a crossover point recombine the solutions to produce two new solution strings apply the mutation operator to the solutions until a new population has been produced until a solution is found or the maximum number of generations is reached Restart Heuristics: The GA is restarted with a new set of random solution strings if it gets stuck in a local minimum. This is controlled by a restart command-line parameter. When the best fitness value does not change for restart generations, the GA starts over from scratch. The top few solutions from each generation are stored after each restart. When enough top solutions accumulate, a new population is created from these best solutions, and used as an initial population when the GA is restarted. Reducing Search: In addition to fixed digits that are predetermined by the initial position, it is often possible to determine other cells that can only have one possible digit. At the very least, it makes sense to fill in grid elements that are constrained by the initial position to contain only one possible digit. Results Results of running the GA on Sudoku were disappointing, at least in the sense of obtaining an optimal solution in a reasonable amount of time. A naïve implementation did not always solve a given Sudoku problem. Allowing longer run times (more generations) did not usually change matters. Once stuck in a local minimum, the GA was seldom able to jump out and find the best solution. Restarting the GA when it got stuck often worked, although it might take many restarts before getting the correct solution. An optimal restart strategy, using the best solutions from a number of generations, had a better chance of finding the correct solution, but did not always do so. In general, changing the fundamental GA parameters (population size, selection rate, and mutation rate) had a profound impact upon performance, but it was not obvious how to generalize results from one problem instance to the next. As expected, larger populations of solutions were helpful. This problem was given as a programming assignment in the Artificial Intelligence class in Spring 2009 at SDSM&T. The best student results will be presented at MICS

7 Here is sample output from a successful run of the program: Sudoku: med3.txt population size = number of generations = 1000 selection rate = 0.5 mutation rate = 0.05 restart threshold = 100 Initial configuration (9x9 grid): Filling in predetermined squares: Generation 0: best score = 15, worst score = 43 Generation 1: best score = 15, worst score = 41 Generation 2: best score = 15, worst score = 37 Generation 3: best score = 13, worst score = 35 Generation 4: best score = 13, worst score = 35 Generation 5: best score = 11, worst score = 33 Generation 6: best score = 11, worst score = 33 Generation 7: best score = 10, worst score = 33 Generation 8: best score = 9, worst score = 30 Generation 9: best score = 9, worst score = 30 Generation 10: best score = 8, worst score = Generation 25: best score = 2, worst score = 20 Generation 26: best score = 2, worst score = 23 Generation 27: best score = 2, worst score = 18 Generation 28: best score = 2, worst score = 17 Generation 29: best score = 2, worst score = 13 Generation 30: best score = 0, worst score = 15 Best solution:

8 Discussion Why is Sudoku so easy to solve via conventional backtracking algorithms, but seemingly so intractable for GAs? It is possible that Sudoku is inherently a GA-hard problem. The theory of GA-hard problems is not well understood, but other researchers have also found that GAs are inefficient at solving Sudoku [9]. The nature of the problem, in which solution states occupy discrete quanta rather than a continuum of possibilities, undoubtedly makes it harder to optimize. The search space is likely to have a high density of local minima, at least with the naïve fitness function used in this study. A better fitness function would introduce finer granularity between solutions, and permit optimization to proceed more effectively. Conclusions A GA-based Sudoku solver is discussed in this paper. The GA approach performs poorly in relation to standard backtracking algorithms, at least for a 9x9 grid. By choosing large enough population sizes, and reasonable settings for other GA parameters, it is able to solve most Sudoku problems. However, the Sudoku solver oftens gets stuck in local minima and requires restarts in order to successfully find the problem solution. Reasons for poor GA performance with Sudoku are perplexing, since this appears to be an optimization problem that is well suited for evolutionary strategies. Nonetheless, Sudoku proved to be an entertaining (and challenging) way to introduce GAs in an Artificial Intelligence class. Students enjoyed the assignment, and were generally successful in getting it to work properly. References [1] [2] [3] [4] [5] [6] Goldberg, David. Genetic Algorithms in Search, Optimization, and Machine Learning. Addison-Wesley,

9 [7] Holland, John. Genetic algorithms, Scientific American, July 1992, pp [8] Holland, John, Adaptation in Natural and Artificial Systems, MIT Press, [9] Timo Mantere and Janne Koljonen, Solving and Rating Sudoku Puzzles with Genetic Algorithms, New Developments in Artificial Intelligence and the Semantic Web, Proceedings of the 12th Finnish Artificial Intelligence Conference, [10] Mitchell, Melanie. An Introduction to Genetic Algorithms. MIT Press, [11] Riccardo Poli, William B. Langdon, Nicholas Freitag McPhee, A Field Guide to Genetic Programming, Lulu Enterprises, UK Ltd,

### Behind the scenes of Sudoku: Application of genetic algorithms for the optimal fun.

Behind the scenes of Sudoku: Application of genetic algorithms for the optimal fun. Thomas Bridi Thomas.bridi@studio.unibo.it Abstract. This work discusses about algorithms belonging to the branch of artificial

### Understanding 31-derful. Abstract

Understanding 31-derful Emily Alfs Mathematics and Computer Science Doane College Crete, Nebraska 68333 emily.alfs@doane.edu Abstract Similar to Sudoku, 31-derful is a game where the player tries to place

### A Sudoku Solver. CSC 242: Artificial Intelligence. Mike Schermerhorn

A Sudoku Solver CSC 242: Artificial Intelligence Mike Schermerhorn Introduction The standard Sudoku puzzle consists of a nine by nine grid, broken into nine three by three boxes. Each of the eighty one

### Optimizing CPU Scheduling Problem using Genetic Algorithms

Optimizing CPU Scheduling Problem using Genetic Algorithms Anu Taneja Amit Kumar Computer Science Department Hindu College of Engineering, Sonepat (MDU) anutaneja16@gmail.com amitkumar.cs08@pec.edu.in

### Enumerating possible Sudoku grids

Enumerating possible Sudoku grids Bertram Felgenhauer Department of Computer Science TU Dresden 00 Dresden Germany bf@mail.inf.tu-dresden.de Frazer Jarvis Department of Pure Mathematics University of Sheffield,

### Sudoku Puzzles Generating: from Easy to Evil

Team # 3485 Page 1 of 20 Sudoku Puzzles Generating: from Easy to Evil Abstract As Sudoku puzzle becomes worldwide popular among many players in different intellectual levels, the task is to devise an algorithm

### Cracking the Sudoku: A Deterministic Approach

Cracking the Sudoku: A Deterministic Approach David Martin Erica Cross Matt Alexander Youngstown State University Center for Undergraduate Research in Mathematics Abstract The model begins with the formulation

### Creating Sudoku Puzzles

Page 1 of 15 Control # 2883 Creating Sudoku Puzzles Control # 2883 February 19, 2008 Abstract We consider the problem of generating well-formed Sudoku puzzles. Weighing the benefits of constructing a problem

### What is Artificial Intelligence?

Introduction to Artificial Intelligence What is Artificial Intelligence? One definition: AI is the study of how to make computers do things that people generally do better Many approaches and issues, e.g.:

### PARALLELIZED SUDOKU SOLVING ALGORITHM USING OpenMP

PARALLELIZED SUDOKU SOLVING ALGORITHM USING OpenMP Sruthi Sankar CSE 633: Parallel Algorithms Spring 2014 Professor: Dr. Russ Miller Sudoku: the puzzle A standard Sudoku puzzles contains 81 grids :9 rows

### Sudoku Solution on Many-core Processors

Acceleration of Genetic Algorithms for Sudoku Solution on Many-core Processors Yuji Sato* 1, Naohiro Hasegawa* 1, Mikiko Sato* 2 * 1 : Hosei University, * 2 : Tokyo University of A&T 0 Outline Background

### Memory Allocation Technique for Segregated Free List Based on Genetic Algorithm

Journal of Al-Nahrain University Vol.15 (2), June, 2012, pp.161-168 Science Memory Allocation Technique for Segregated Free List Based on Genetic Algorithm Manal F. Younis Computer Department, College

### Genetic Algorithm an Approach to Solve Global Optimization Problems

Genetic Algorithm an Approach to Solve Global Optimization Problems PRATIBHA BAJPAI Amity Institute of Information Technology, Amity University, Lucknow, Uttar Pradesh, India, pratibha_bajpai@rediffmail.com

### Each value (1 through 9) must appear exactly once in each row. Each value (1 through 9) must appear exactly once in each column.

INTRODUCTION TO COMPUTER SCIENCE I PROJECT 6 Sudoku! 1 The game of Sudoku Sudoku is a popular game giving crossword puzzles a run for their money in newspapers. 1 It s a game well suited for computers

### A Review of Sudoku Solving using Patterns

International Journal of Scientific and Research Publications, Volume 3, Issue 5, May 2013 1 A Review of Sudoku Solving using Patterns Rohit Iyer*, Amrish Jhaveri*, Krutika Parab* *B.E (Computers), Vidyalankar

### Solving Sudoku with Dancing Links

Solving Sudoku with Dancing Links Rob Beezer beezer@pugetsound.edu Department of Mathematics and Computer Science University of Puget Sound Tacoma, Washington USA Stellenbosch University October 8, 2010

### Mathematics of Sudoku I

Mathematics of Sudoku I Bertram Felgenhauer Frazer Jarvis January, 00 Introduction Sudoku puzzles became extremely popular in Britain from late 00. Sudoku, or Su Doku, is a Japanese word (or phrase) meaning

### A Non-Linear Schema Theorem for Genetic Algorithms

A Non-Linear Schema Theorem for Genetic Algorithms William A Greene Computer Science Department University of New Orleans New Orleans, LA 70148 bill@csunoedu 504-280-6755 Abstract We generalize Holland

### Holland s GA Schema Theorem

Holland s GA Schema Theorem v Objective provide a formal model for the effectiveness of the GA search process. v In the following we will first approach the problem through the framework formalized by

### Rating and Generating Sudoku Puzzles Based On Constraint Satisfaction Problems

Rating and Generating Sudoku Puzzles Based On Constraint Satisfaction Problems Bahare Fatemi, Seyed Mehran Kazemi, Nazanin Mehrasa Abstract Sudoku is a logic-based combinatorial puzzle game which people

### A very brief introduction to genetic algorithms

A very brief introduction to genetic algorithms Radoslav Harman Design of experiments seminar FACULTY OF MATHEMATICS, PHYSICS AND INFORMATICS COMENIUS UNIVERSITY IN BRATISLAVA 25.2.2013 Optimization problems:

### Sudoku, logic and proof Catherine Greenhill

Sudoku, logic and proof Catherine Greenhill As you probably know, a Sudoku puzzle is a 9 9 grid divided into nine 3 3 subgrids. Some of the cells in the grid contain a symbol: usually the symbols are the

### Sudoku Tips & Guides as described by Neil Pomerleau on sudokusource.mabuhaynet.com

Sudoku Tips & Guides as described by Neil Pomerleau on sudokusource.mabuhaynet.com Introduction to Sudoku Contrary to what many people believe, Sudoku didn't actually originate in Japan. The game was first

### Genetic Algorithms. Part 2: The Knapsack Problem. Spring 2009 Instructor: Dr. Masoud Yaghini

Genetic Algorithms Part 2: The Knapsack Problem Spring 2009 Instructor: Dr. Masoud Yaghini Outline Genetic Algorithms: Part 2 Problem Definition Representations Fitness Function Handling of Constraints

### Rating Logic Puzzle Difficulty Automatically in a Human Perspective

Rating Logic Puzzle Difficulty Automatically in a Human Perspective Hao Wang National Chiao Tung University, Department of Computer Science 1001, Ta Hsieh Road, Hsinchu City, Taiwan wanghau.ms89@gmail.com

### A Robust Method for Solving Transcendental Equations

www.ijcsi.org 413 A Robust Method for Solving Transcendental Equations Md. Golam Moazzam, Amita Chakraborty and Md. Al-Amin Bhuiyan Department of Computer Science and Engineering, Jahangirnagar University,

### Sudoku: Bagging a Difficulty Metric & Building Up Puzzles

Sudoku: Bagging a Difficulty Metric & Building Up Puzzles February 18, 2008 Abstract Since its inception in 1979, Sudoku has experienced rapidly rising popularity and global interest. We present a difficulty

### A Sudoku-Solver for Large Puzzles using SAT

Uwe Pfeiffer, Tomas Karnagel and Guido Scheffler Technische Universitt Dresden (TUD), Germany {Uwe.Pfeiffer,Tomas.Karnagel}@mailbox.tu-dresden.de, guido.scheffler@email.de Abstract Sudoku puzzles can be

### This chapter introduces the sudoku-solving ground rules,

hapter Simplifying Sudoku This chapter introduces the sudoku-solving ground rules, giving you all the tools you need to approach each puzzle with the best strategy. It also shows you how to take your sudoku-solving

### Kenken For Teachers. Tom Davis tomrdavis@earthlink.net http://www.geometer.org/mathcircles June 27, 2010. Abstract

Kenken For Teachers Tom Davis tomrdavis@earthlink.net http://www.geometer.org/mathcircles June 7, 00 Abstract Kenken is a puzzle whose solution requires a combination of logic and simple arithmetic skills.

### Using a Sudoku Lab to Motivate Students in an Introductory Course

Using a Sudoku Lab 1 Using a Sudoku Lab to Motivate Students in an Introductory Course Melanie Butler Mount St. Mary s University 1 Fred Butler University of Baltimore 2 Abstract: This paper describes

### Product Geometric Crossover for the Sudoku Puzzle

Product Geometric Crossover for the Sudoku Puzzle Alberto Moraglio Dept. of Computer Science University of Essex, UK amoragn@essex.ac.uk Julian Togelius Dept. of Computer Science University of Essex, UK

### Difficulty Rating of Sudoku Puzzles by a Computational Model

Difficulty Rating of Sudoku Puzzles by a Computational Model Radek Pelánek Masaryk University Brno, Czech Republic Abstract We discuss and evaluate metrics for difficulty rating of Sudoku puzzles. The

### (Refer Slide Time: 01:35)

Artificial Intelligence Prof. Sudeshna Sarkar Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur Lecture - 6 Informed Search -2 Today we start our 6 th lecture. This

### Comparison of Optimization Techniques in Large Scale Transportation Problems

Journal of Undergraduate Research at Minnesota State University, Mankato Volume 4 Article 10 2004 Comparison of Optimization Techniques in Large Scale Transportation Problems Tapojit Kumar Minnesota State

### You ve seen them played in coffee shops, on planes, and

Every Sudoku variation you can think of comes with its own set of interesting open questions There is math to be had here. So get working! Taking Sudoku Seriously Laura Taalman James Madison University

### Alpha Cut based Novel Selection for Genetic Algorithm

Alpha Cut based Novel for Genetic Algorithm Rakesh Kumar Professor Girdhar Gopal Research Scholar Rajesh Kumar Assistant Professor ABSTRACT Genetic algorithm (GA) has several genetic operators that can

### Sudoku as a SAT Problem

Sudoku as a SAT Problem Inês Lynce IST/INESC-ID, Technical University of Lisbon, Portugal ines@sat.inesc-id.pt Joël Ouaknine Oxford University Computing Laboratory, UK joel@comlab.ox.ac.uk Abstract Sudoku

### Solving Single-digit Sudoku Subproblems

Solving Single-digit Sudoku Subproblems David Eppstein Int. Conf. Fun with Algorithms, June 2012 Sudoku An ab ab array of cells, partitioned into a b blocks, partially filled in with numbers from 1 to

### Original Article Efficient Genetic Algorithm on Linear Programming Problem for Fittest Chromosomes

International Archive of Applied Sciences and Technology Volume 3 [2] June 2012: 47-57 ISSN: 0976-4828 Society of Education, India Website: www.soeagra.com/iaast/iaast.htm Original Article Efficient Genetic

### College of information technology Department of software

University of Babylon Undergraduate: third class College of information technology Department of software Subj.: Application of AI lecture notes/2011-2012 ***************************************************************************

### New Modifications of Selection Operator in Genetic Algorithms for the Traveling Salesman Problem

New Modifications of Selection Operator in Genetic Algorithms for the Traveling Salesman Problem Radovic, Marija; and Milutinovic, Veljko Abstract One of the algorithms used for solving Traveling Salesman

### EFFICIENT GENETIC ALGORITHM ON LINEAR PROGRAMMING PROBLEM FOR FITTEST CHROMOSOMES

Volume 3, No. 6, June 2012 Journal of Global Research in Computer Science RESEARCH PAPER Available Online at www.jgrcs.info EFFICIENT GENETIC ALGORITHM ON LINEAR PROGRAMMING PROBLEM FOR FITTEST CHROMOSOMES

### Skill-based Resource Allocation using Genetic Algorithms and Ontologies

Skill-based Resource Allocation using Genetic Algorithms and Ontologies Kushan Nammuni 1, John Levine 2 & John Kingston 2 1 Department of Biomedical Informatics, Eastman Institute for Oral Health Care

### Effect of Using Neural Networks in GA-Based School Timetabling

Effect of Using Neural Networks in GA-Based School Timetabling JANIS ZUTERS Department of Computer Science University of Latvia Raina bulv. 19, Riga, LV-1050 LATVIA janis.zuters@lu.lv Abstract: - The school

### Selection Procedures for Module Discovery: Exploring Evolutionary Algorithms for Cognitive Science

Selection Procedures for Module Discovery: Exploring Evolutionary Algorithms for Cognitive Science Janet Wiles (j.wiles@csee.uq.edu.au) Ruth Schulz (ruth@csee.uq.edu.au) Scott Bolland (scottb@csee.uq.edu.au)

### Using a Genetic Algorithm to Solve Crossword Puzzles. Kyle Williams

Using a Genetic Algorithm to Solve Crossword Puzzles Kyle Williams April 8, 2009 Abstract In this report, I demonstrate an approach to solving crossword puzzles by using a genetic algorithm. Various values

### Solving Sudoku Puzzles with Particle Swarm Optimisation

Solving Sudoku Puzzles with Particle Swarm Optimisation Sean McGerty ITEC808 student Macquarie University Sydney, Australia sean.mcgerty@sudents.mq.edu.au McGerty_Sean_FinalReport.doc June 5th, 2009 10:00

### CELLULAR AUTOMATA AND APPLICATIONS. 1. Introduction. This paper is a study of cellular automata as computational programs

CELLULAR AUTOMATA AND APPLICATIONS GAVIN ANDREWS 1. Introduction This paper is a study of cellular automata as computational programs and their remarkable ability to create complex behavior from simple

### Numerical Research on Distributed Genetic Algorithm with Redundant

Numerical Research on Distributed Genetic Algorithm with Redundant Binary Number 1 Sayori Seto, 2 Akinori Kanasugi 1,2 Graduate School of Engineering, Tokyo Denki University, Japan 10kme41@ms.dendai.ac.jp,

### Keywords: Travelling Salesman Problem, Map Reduce, Genetic Algorithm. I. INTRODUCTION

ISSN: 2321-7782 (Online) Impact Factor: 6.047 Volume 4, Issue 6, June 2016 International Journal of Advance Research in Computer Science and Management Studies Research Article / Survey Paper / Case Study

### AIMA Chapter 3: Solving problems by searching

AIMA Chapter 3: Solving problems by searching Ana Huaman January 13, 2011 1. Define in your own words the following terms: state, state space, search tree, search node, goal, action, transition model and

### NUMB3RS Activity: Sudoku Puzzles. Episode: All s Fair

Teacher Page 1 NUMBRS Activity: Sudoku Puzzles Topic: Sudoku Puzzles Grade Level: 8-10 Objective: Explore sudoku puzzles and Latin squares Time: 60-90 minutes Introduction In All s Fair, Alan, Larry, and

### Sudoku an alternative history

Sudoku an alternative history Peter J. Cameron p.j.cameron@qmul.ac.uk Talk to the Archimedeans, February 2007 Sudoku There s no mathematics involved. Use logic and reasoning to solve the puzzle. Instructions

### Department of Computer Science What is Computer Science? # 10. Artificial Intelligence through Search: Solving Sudoku Puzzles

Department of Computer Science www.cs.bris.ac.uk What is Computer Science? # 10 Artificial Intelligence through Search: Solving Sudoku Puzzles Tim Kovacs November 12, 2008 Tim Kovacs Artificial Intelligence

### Genetic Algorithms commonly used selection, replacement, and variation operators Fernando Lobo University of Algarve

Genetic Algorithms commonly used selection, replacement, and variation operators Fernando Lobo University of Algarve Outline Selection methods Replacement methods Variation operators Selection Methods

### Introduction To Genetic Algorithms

1 Introduction To Genetic Algorithms Dr. Rajib Kumar Bhattacharjya Department of Civil Engineering IIT Guwahati Email: rkbc@iitg.ernet.in References 2 D. E. Goldberg, Genetic Algorithm In Search, Optimization

### Introduction to Genetic Programming

Introduction to Genetic Programming Matthew Walker October 7, 2001 1 The Basic Idea Genetic Programming (GP) is a method to evolve computer programs. And the reason we would want to try this is because,

### A Review And Evaluations Of Shortest Path Algorithms

A Review And Evaluations Of Shortest Path Algorithms Kairanbay Magzhan, Hajar Mat Jani Abstract: Nowadays, in computer networks, the routing is based on the shortest path problem. This will help in minimizing

### Volume 3, Issue 2, February 2015 International Journal of Advance Research in Computer Science and Management Studies

Volume 3, Issue 2, February 2015 International Journal of Advance Research in Computer Science and Management Studies Research Article / Survey Paper / Case Study Available online at: www.ijarcsms.com

### Module 2. Problem Solving using Search- (Single agent search) Version 1 CSE IIT, Kharagpur

Module 2 Problem Solving using Search- (Single agent search) Lesson 6 Informed Search Strategies-II 3.3 Iterative-Deepening A* 3.3.1 IDA* Algorithm Iterative deepening A* or IDA* is similar to iterative-deepening

### Sudoku puzzles and how to solve them

Sudoku puzzles and how to solve them Andries E. Brouwer 2006-05-31 1 Sudoku Figure 1: Two puzzles the second one is difficult A Sudoku puzzle (of classical type ) consists of a 9-by-9 matrix partitioned

### STUDY ON APPLICATION OF GENETIC ALGORITHM IN CONSTRUCTION RESOURCE LEVELLING

STUDY ON APPLICATION OF GENETIC ALGORITHM IN CONSTRUCTION RESOURCE LEVELLING N.Satheesh Kumar 1,R.Raj Kumar 2 PG Student, Department of Civil Engineering, Kongu Engineering College, Perundurai, Tamilnadu,India

### Evolutionary Data Mining With Automatic Rule Generalization

Evolutionary Data Mining With Automatic Rule Generalization ROBERT CATTRAL, FRANZ OPPACHER, DWIGHT DEUGO Intelligent Systems Research Unit School of Computer Science Carleton University Ottawa, On K1S

### A Study of Crossover Operators for Genetic Algorithm and Proposal of a New Crossover Operator to Solve Open Shop Scheduling Problem

American Journal of Industrial and Business Management, 2016, 6, 774-789 Published Online June 2016 in SciRes. http://www.scirp.org/journal/ajibm http://dx.doi.org/10.4236/ajibm.2016.66071 A Study of Crossover

### ARTIFICIAL INTELLIGENCE Edge Matching Puzzle

ARTIFICIAL INTELLIGENCE Edge Matching Puzzle Anirudha Sahu Gangaprasad Koturwar Mentor- Prof. Amit Mukherjee Indian Institute of technology, Kanpur April 4, 2012 Anirudha Sahu Gangaprasad Koturwar Mentor-

### Biological Cybernetics 9 Springer-Verlag 1988

Biol. Cybern. 60,139-144 (1988) Biological Cybernetics 9 Springer-Verlag 1988 An Evolutionary Approach to the Traveling Salesman Problem D. B. Fogel ORINCON Corporation, 9363 Towne Centre Dr., San Diego,

### Differential Evolution Particle Swarm Optimization for Digital Filter Design

Differential Evolution Particle Swarm Optimization for Digital Filter Design Bipul Luitel, and Ganesh K. Venayagamoorthy, Abstract In this paper, swarm and evolutionary algorithms have been applied for

### International Journal of Software and Web Sciences (IJSWS) www.iasir.net

International Association of Scientific Innovation and Research (IASIR) (An Association Unifying the Sciences, Engineering, and Applied Research) ISSN (Print): 2279-0063 ISSN (Online): 2279-0071 International

### An Indian Journal FULL PAPER ABSTRACT KEYWORDS. Trade Science Inc. XML data mining research based on multi-level technology

[Type text] [Type text] [Type text] ISSN : 0974-7435 Volume 10 Issue 13 BioTechnology 2014 An Indian Journal FULL PAPER BTAIJ, 10(13), 2014 [7602-7609] XML data mining research based on multi-level technology

### Lecture 20: Clustering

Lecture 20: Clustering Wrap-up of neural nets (from last lecture Introduction to unsupervised learning K-means clustering COMP-424, Lecture 20 - April 3, 2013 1 Unsupervised learning In supervised learning,

### Lab 4: 26 th March 2012. Exercise 1: Evolutionary algorithms

Lab 4: 26 th March 2012 Exercise 1: Evolutionary algorithms 1. Found a problem where EAs would certainly perform very poorly compared to alternative approaches. Explain why. Suppose that we want to find

### 14.10.2014. Overview. Swarms in nature. Fish, birds, ants, termites, Introduction to swarm intelligence principles Particle Swarm Optimization (PSO)

Overview Kyrre Glette kyrrehg@ifi INF3490 Swarm Intelligence Particle Swarm Optimization Introduction to swarm intelligence principles Particle Swarm Optimization (PSO) 3 Swarms in nature Fish, birds,

### Project Ideas in Computer Science. Keld Helsgaun

Project Ideas in Computer Science Keld Helsgaun 1 Keld Helsgaun Research: Combinatorial optimization Heuristic search (artificial intelligence) Simulation Programming tools Teaching: Programming, algorithms

### Lecture 11: Graphical Models for Inference

Lecture 11: Graphical Models for Inference So far we have seen two graphical models that are used for inference - the Bayesian network and the Join tree. These two both represent the same joint probability

### A Binary Model on the Basis of Imperialist Competitive Algorithm in Order to Solve the Problem of Knapsack 1-0

212 International Conference on System Engineering and Modeling (ICSEM 212) IPCSIT vol. 34 (212) (212) IACSIT Press, Singapore A Binary Model on the Basis of Imperialist Competitive Algorithm in Order

### Evolutionary SAT Solver (ESS)

Ninth LACCEI Latin American and Caribbean Conference (LACCEI 2011), Engineering for a Smart Planet, Innovation, Information Technology and Computational Tools for Sustainable Development, August 3-5, 2011,

### ISSN: 2319-5967 ISO 9001:2008 Certified International Journal of Engineering Science and Innovative Technology (IJESIT) Volume 2, Issue 3, May 2013

Transistor Level Fault Finding in VLSI Circuits using Genetic Algorithm Lalit A. Patel, Sarman K. Hadia CSPIT, CHARUSAT, Changa., CSPIT, CHARUSAT, Changa Abstract This paper presents, genetic based algorithm

### arxiv:1403.7373v1 [cs.ai] 28 Mar 2014

Difficulty Rating of Sudoku Puzzles: An Overview and Evaluation Radek Pelánek Faculty of Informatics, Masaryk University Brno arxiv:1403.7373v1 [cs.ai] 28 Mar 2014 Abstract. How can we predict the difficulty

### In a previous paper we (Weiss and Rasmussen 2007) demonstrated lessons that can be learned by formulating

Vol. 7, No. 3, May 2007, pp. 228 237 issn 1532-0545 07 0703 0228 informs I N F O R M S Transactions on Education doi 10.1287/ited.7.3.228 2007 INFORMS Advanced Lessons on the Craft of Optimization Modeling

### Evolution, Natural Selection, and Adaptation

Evolution, Natural Selection, and Adaptation Nothing in biology makes sense except in the light of evolution. (Theodosius Dobzhansky) Charles Darwin (1809-1882) Voyage of HMS Beagle (1831-1836) Thinking

### Sudoku Madness. Team 3: Matt Crain, John Cheng, and Rabih Sallman

Sudoku Madness Team 3: Matt Crain, John Cheng, and Rabih Sallman I. Problem Description Standard Sudoku is a logic-based puzzle in which the user must fill a 9 x 9 board with the appropriate digits so

### Determining Degree Of Difficulty In Rogo, A TSP-based Paper Puzzle

Determining Degree Of Difficulty In Rogo, A TSP-based Paper Puzzle Dr Nicola Petty, Dr Shane Dye Department of Management University of Canterbury New Zealand {shane.dye,nicola.petty}@canterbury.ac.nz

### SUDOKUBE USING GENETIC ALGORITHMS TO SIMULTANEOUSLY SOLVE MULTIPLE COMBINATORIAL PROBLEMS DAVID ISAAC WATERS. B.S. Electrical Engineering

SUDOKUBE USING GENETIC ALGORITHMS TO SIMULTANEOUSLY SOLVE MULTIPLE COMBINATORIAL PROBLEMS By DAVID ISAAC WATERS B.S. Electrical Engineering Oklahoma State University Stillwater, OK 2005 Submitted to the

### A Parallel Processor for Distributed Genetic Algorithm with Redundant Binary Number

A Parallel Processor for Distributed Genetic Algorithm with Redundant Binary Number 1 Tomohiro KAMIMURA, 2 Akinori KANASUGI 1 Department of Electronics, Tokyo Denki University, 07ee055@ms.dendai.ac.jp

### Sudoku Puzzles and How to Solve Them

1 258 NAW 5/7 nr. 4 december 2006 Sudoku Puzzles and How to Solve Them Andries E. Brouwer Andries E. Brouwer Technische Universiteit Eindhoven Postbus 513, 5600 MB Eindhoven aeb@win.tue.nl Recreational

### A Fast Computational Genetic Algorithm for Economic Load Dispatch

A Fast Computational Genetic Algorithm for Economic Load Dispatch M.Sailaja Kumari 1, M.Sydulu 2 Email: 1 Sailaja_matam@Yahoo.com 1, 2 Department of Electrical Engineering National Institute of Technology,

### that simple hill-climbing schemes would perform poorly because a large number of bit positions must be optimized simultaneously in order to move from

B.2.7.5: Fitness Landscapes: Royal Road Functions Melanie Mitchell Santa Fe Institute 1399 Hyde Park Road Santa Fe, NM 87501 mm@santafe.edu Stephanie Forrest Dept. of Computer Science University of New

### Genetic algorithms. Maximise f(x), xi Code every variable using binary string Eg.(00000) (11111)

Genetic algorithms Based on survival of the fittest. Start with population of points. Retain better points Based on natural selection. ( as in genetic processes) Genetic algorithms L u Maximise f(x), xi

### GENETIC ALGORITHMS. Introduction to Genetic Algorithms

Introduction to genetic algorithms with Java applets Introduction to Genetic Algorithms GENETIC ALGORITHMS Main page Introduction Biological Background Search Space Genetic Algorithm GA Operators GA Example

### KNOWLEDGE MANAGEMENT, ORGANIZATIONAL INTELLIGENCE AND LEARNING, AND COMPLEXITY - Vol. I - Genetic Algorithms - Calabretta R.

GENETIC ALGORITHMS Calabretta R. Institute of Cognitive Sciences and Technologies, National Research Council, Italy Keywords: Simulation, computational models of evolution, evolutionary computation, evolutionary

### New binary representation in Genetic Algorithms for solving TSP by mapping permutations to a list of ordered numbers

Proceedings of the 5th WSEAS Int Conf on COMPUTATIONAL INTELLIGENCE, MAN-MACHINE SYSTEMS AND CYBERNETICS, Venice, Italy, November 0-, 006 363 New binary representation in Genetic Algorithms for solving

HYBRID GENETIC ALGORITHMS FOR SCHEDULING ADVERTISEMENTS ON A WEB PAGE Subodha Kumar University of Washington subodha@u.washington.edu Varghese S. Jacob University of Texas at Dallas vjacob@utdallas.edu

### Sudoku A Constraint Satisfaction Problem

Sudoku A Constraint Satisfaction Problem Holger Findling, Senior Member, IEEE Abstract Research has shown that some NP complete problems with finite domains can be solved effectively using constraint reasoning.

### Ian Stewart on Minesweeper

Ian Stewart on Minesweeper It's not often you can win a million dollars by analysing a computer game, but by a curious conjunction of fate, there's a chance that you might. However, you'll only pick up

### Solving Timetable Scheduling Problem by Using Genetic Algorithms

Solving Timetable Scheduling Problem by Using Genetic Algorithms Branimir Sigl, Marin Golub, Vedran Mornar Faculty of Electrical Engineering and Computing, University of Zagreb Unska 3, 1 Zagreb, Croatia

### An Optical Sudoku Solver

An Optical Sudoku Solver Martin Byröd February 12, 07 Abstract In this report, a vision-based sudoku solver is described. The solver is capable of solving a sudoku directly from a photograph taken with

### Memoization/Dynamic Programming. The String reconstruction problem. CS125 Lecture 5 Fall 2016

CS125 Lecture 5 Fall 2016 Memoization/Dynamic Programming Today s lecture discusses memoization, which is a method for speeding up algorithms based on recursion, by using additional memory to remember