Aquilante, la malabestia

La home page personale di Marco Liverani, ovvero una raccolta di manuali, note ed altre informazioni

A proposito del Sudoku

Il gioco del Sudoku è un rompicapo giapponese che sta riscuotendo un successo notevole nel cosiddetto "grande pubblico": pur essendo un gioco di tipo combinatorio e dunque con un background logico-matematico, riesce ad appassionare anche quanti non hanno competenze specifiche in questo settore della matematica.

Il motivo di questo enorme successo credo risieda principalmente nella grande semplicità delle regole del gioco, affiancate dal fatto che effettivamente a fronte di regole assai semplici, la soluzione del problema è tutt'altro che banale e propone una sfida intellettuale divertente, in grado di dare qualche soddisfazione al giocatore vincitore. Sono convinto che alcuni dei problemi più belli della Matematica siano proprio quelli che tutti possono comprendere con poco sforzo e poche nozioni di base, ma che solo pochi (in alcuni casi ancora nessuno!) riescono a risolvere; spesso accade infatti che gli strumenti matematici necessari per risolvere problemi apparentemente assai semplici siano invece estremamente avanzati e sofisticati e dunque, proprio per questo, inaccessibili ai più.

Il problema da risolvere in una partita di Sudoku può essere riassunto nei seguenti termini: riempire una griglia di 9×9 elementi, in modo tale che ogni riga, ogni colonna ed ognuna delle nove sotto-griglie 3×3 contenga le cifre da 1 a 9.

In questa pagina ho riportato i link ad alcuni miei appunti in cui provo a riassumere alcuni dei problemi algoritmici e combinatori interessanti che possono emergere da una analisi più attenta del gioco, insieme ad un pacchetto con un programma in linguaggio C per la soluzione del gioco a partire da una qualsiasi configurazione iniziale e ad alcuni link interessanti relativi al Sudoku e ad alcuni aspetti "di contorno" interessanti dal punto di vista matematico.

Appunti sul Sudoku
Alcuni appunti (ancora in bozza) sul gioco del Sudoku e su alcuni problemi di analisi combinatoria relativi allo stesso gioco; in questi appunti ho sintetizzato l'algoritmo ricorsivo per la ricerca esaustiva delle soluzioni (4/12/2005).
Programma SudokuSolve
Pacchetto contenente il programma in linguaggio C per la soluzione del Sudoku, alcuni esempi e le istruzioni per la compilazione e l'uso del programma (4/12/2005).
Link a risorse esterne sul Sudoku