behind the scenes of sudoku - application of genetic algorithms for the optimal fun

13

Upload: thomas-bridi

Post on 26-May-2015

285 views

Category:

Technology


3 download

DESCRIPTION

This work discusses about algorithms belonging to the branch of artificial intelligence for the generation of Sudoku puzzle. It will be demonstrated how the use of algorithms related to the constraint programming and genetic algorithms can improve the generation of puzzles in order to make the game more competitive and therefore more attractive to the public. In particular, it will be used an algorithm similar to the forward checking for the generation of a population of deterministic puzzles with a feasible solution and then will be used a genetic algorithm to evolve the population in order to optimize a function that rates the difficulty of their resolution. http://ceur-ws.org/Vol-860/paper2.pdf

TRANSCRIPT

  • 1. Behind the scenes ofSudokuApplication of genetic algorithmsfor the optimal funThomas [email protected] S

2. Sudoku: il gioco S Gioco di logica S Dominio e vincoli S Sudoku probabiliatici S Sudoku deterministici 3. Lobbiettivo S Generare Sudoku deterministici S Creare puzzle sempre pi difficili 4. Inizialmente S Mappare il problema della generazione come un CSP S Creare un algoritmo ad-hoc per la propagazione dei domini S Risolutore che mima le tecniche di soluzione usate dalluomo per identificare un puzzle deterministico 5. Il problema S La difficolt del puzzle non garantita a causa del risolutore: la difficolt dipende dal numero di tecniche implementate ma pu capitare che un puzzle generato possa essere risolto usando solamente tecniche semplici S Lagoritmo riconosce solo un sottoinsieme di puzzle deterministici 6. Una possibile soluzione S Generare una popolazione di Sudoku e farli evolvere utilizzando unalgoritmo genetico per ottenere puzzle sempre pi difficili 7. Lapproccio (1) S Viene creato un genotipo in base alle celle selezionatedurante la creazione e al valore inserito Genotype: 8. Lapproccio (2) S Una funzione di fitness (da ottimizzare) basata su quante volte una tecnica (con un determinato peso di difficlt) viene utilizzata S Viene generata una popolazione iniziale di puzzle S Vengono applicate operazioni come mutazione, incrocio e selezione naturale 9. Lambiente S Ambiente molto selettivo S Tutti i membri della popolazione vengono incrociati con tutti glialtri pi volte S Tutti i membri vengono mutati S Tutti i genitori muiono nella generazione successiva S La popolazione viene mantenuta costante dalla selezionenaturale S Possibilit di estinzione 10. Performance e risultati (1) S Solo l8,24% delle griglie porta con successo a un puzzle deterministico prima del fallimento dellalgoritmo spiegato in precedenza S La percentuale di mutazioni che porta a griglie pi difficili il 35,88% S Lalgoritmo richiede circa 3 ore per generare e mutare 10000 puzzle (20000 Sudoku differenti) 11. Performance e risultati (2)Andamento della difficolt media e massima su una popolazione costante di100 puzzle mutati, incrociati e selezionati1600140012001000 800Difficolt media 600Difficolt massima 400 200 0 0 1 2 34 5 6 7