Upcoming SlideShare
×

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

463 views

Published on

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

Published in: Technology
0 Likes
Statistics
Notes
• Full Name
Comment goes here.

Are you sure you want to Yes No
• Be the first to comment

• Be the first to like this

Views
Total views
463
On SlideShare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
3
0
Likes
0
Embeds 0
No embeds

No notes for slide

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

1. 1. Behind the scenes ofSudokuApplication of genetic algorithmsfor the optimal fun Thomas Bridi Thomas.bridi@studio.unibo.it S
2. 2. Sudoku: il gioco S Gioco di logica S Dominio e vincoli S Sudoku probabiliatici S Sudoku deterministici
3. 3. L’obbiettivo S Generare Sudoku deterministici S Creare puzzle sempre più difficili
4. 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 dall’uomo per identificare un puzzle deterministico
5. 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 L’agoritmo riconosce solo un sottoinsieme di puzzle deterministici
6. 6. Una possibile soluzione S Generare una popolazione di Sudoku e farli evolvere utilizzando un’algoritmo genetico per ottenere puzzle sempre più difficili
7. 7. L’approccio (1) S Viene creato un genotipo in base alle celle selezionate durante la creazione e al valore inserito Genotype:
8. 8. L’approccio (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. 9. L’ambiente S Ambiente molto selettivo S Tutti i membri della popolazione vengono incrociati con tutti gli altri più volte S Tutti i membri vengono mutati S Tutti i genitori muiono nella generazione successiva S La popolazione viene mantenuta costante dalla selezione naturale S Possibilità di estinzione
10. 10. Performance e risultati (1) S Solo l’8,24% delle griglie porta con successo a un puzzle deterministico prima del fallimento dell’algoritmo spiegato in precedenza S La percentuale di mutazioni che porta a griglie più difficili è il 35,88% S L’algoritmo richiede circa 3 ore per generare e mutare 10000 puzzle (20000 Sudoku differenti)
11. 11. Performance e risultati (2)Andamento della difficoltà media e massima su una popolazione costante di100 puzzle mutati, incrociati e selezionati1600140012001000 800 Difficoltà media 600 Difficoltà massima 400 200 0 0 1 2 3 4 5 6 7