Télécharger le livre blanc au format PDF

Transcription

Télécharger le livre blanc au format PDF
Les livres blancs de la méthodologie
Jouons au SUDOKU
Félix Guillemot.
Les livres blancs de la méthodologie FLX - Jouons au Sudoku
2
Table de matières
Qu’est-ce que le SUDOKU ? .................................................. 3
Construction de la tresse méthodique : ................................... 4
Réflexion méthodologique...................................................... 6
Comment formaliser la question ? .......................................... 7
1. PHASE DE POSE DES HYPOTHESES ........................ 7
2. PHASE DE RESOLUTION............................................ 8
Conclusion ............................................................................ 15
Copyright © FLX 2009 - All rights reserved
www.flx.fr
Les livres blancs de la méthodologie FLX - Jouons au Sudoku
3
Qu’est-ce que le SUDOKU ?
Vous en avez sans doute entendu parler, le Sudoku est un jeu très populaire qui fait le bonheur
des passagers du métro qui cherchent à tuer le temps mais qui fait aussi l’objet de
compétitions car ce jeu qui fait travailler l’intellect présente plusieurs niveaux de difficultés.
En effet, on peut acheter dans le commerce sous forme papier ou encore trouver gratuitement
sur Internet des milliers de grilles de Sudoku allant du niveau « débutant » à « Diabolique »
ou « très difficile », les adjectifs variant selon les fournisseurs.
Ce qui est certain, c’est qu’il représente un véritable business et un centre d’intérêt
incontestable et très populaire.
Le joueur de Sudoku peut passer quelques minutes ou des heures à résoudre une grille. Le
temps qu’il mettra à résoudre une grille n’est pas connu à l’avance. Il se peut qu’il « bloque »
arrivé à un stade de la résolution pour trouver une solution ou peut être jamais…
Même s’il n’est qu’un jeu, et que son intérêt réside certainement dans ce challenge que
représente sa résolution improbable, il image parfaitement de nombreuses problématiques que
l’on rencontre tous les jours. En effet, nous sommes régulièrement impliqués dans des projets
dont on ne peut évaluer la date de fin avec certitude parce que complexes. Lorsqu’il ne s’agit
pas d’un jeu, être face à un problème sans savoir comment le résoudre à coup sûr avec une
obligation de résultat induit un stress : incapables d’implanter un drapeau de fin sur l’axe
temporel, nous sommes placés dans un mode irrationnel, et donc potentiellement anxiogène.
Si nous possédons un jeu de méthodes qui permet de résoudre le problème auquel nous
faisons face d’une façon assurée, sans hésitation avec la certitude de la résolution, nous
passons d’un mode irrationnel à un mode rationnel et pouvons retrouver notre sérénité,
accélérant de surcroit nos performances.
Même une grille de Sudoku, si complexe soit-elle, devra s’incliner devant la tresse de
méthodes que nous allons construire.
La grille de Sudoku réputée comme la plus difficile à résoudre au monde aurait été fabriquée
par Arto Inkala, un mathématicien finlandais, un chantier de trois mois de modélisation à
l’aide d’un ordinateur et l’examen de trois milliards de possibilités. Pourtant, un simple
programme informatique qui applique bêtement un jeu de méthodes la résout en quelques
fractions de secondes…
Comment cela est-il possible ?
Copyright © FLX 2009 - All rights reserved
www.flx.fr
Les livres blancs de la méthodologie FLX - Jouons au Sudoku
4
Construction de la tresse méthodique
Nous proposons dans ce qui suit d’expliquer comment construire cette tresse méthodique.
Rappelons en rapidement les règles, qui sont très simples à comprendre :
Le Sudoku est en général une grille de 9 * 9 cellules. La grille est fractionnée en « régions »,
chaque région représentée par une sous-partie de la grille : une sous grille de 3 * 3 cellules.
1 2 3 4 5 6 7 8 9
9 4 5
8 7 6
7
6
5
4
3
2
Le but du jeu est de remplir toute les cellules de la grille, chaque cellule contenant un chiffre.
La « pose » d’un chiffre doit obéir à trois règles :
- La ligne contenant ce chiffre ne doit contenir qu’une seule fois ce chiffre,
- La colonne contenant à ce chiffre ne doit contenir qu’une seule fois ce chiffre,
- La région contenant ce chiffre ne doit contenir qu’une seule fois ce chiffre.
Lorsque l’on découvre une grille de Sudoku à résoudre, elle présente des chiffres déjà posés
dans des cellules, la grille a des conditions de départ qui sont imposées, des constantes à
respecter qui constituent le scénario imposé.
7 9
4
3 1
6
3
4
9
3
8
3
9
7
4 1
3
1
5
6
5 8
9
7
7 8 4
7
Copyright © FLX 2009 - All rights reserved
www.flx.fr
Les livres blancs de la méthodologie FLX - Jouons au Sudoku
5
Pour répondre de ces conditions, il existe une ou plusieurs combinaisons de chiffres pour le
remplissage de la grille.
On admettra aisément que si la grille ne présente aucune condition de départ, c'est-à-dire si
elle est vide, il existerait une multitude de combinaisons de chiffres répondant aux règles du
jeu.
A l’inverse, plus il y a de conditions imposées, plus cela restreint le nombre de solutions.
C’est entre autre ce qui fait qu’une grille de Sudoku est difficile à résoudre : plus elle
comporte de chiffres au départ, plus les déductions sont évidentes et plus il est simple de
résoudre la grille.
Nous écrivons « entre autre » car le nombre de chiffres de départ ne fait pas toute la
difficulté : pour un même nombre de chiffres de départ, disposés de façon différente, deux
grilles de Sudoku ne présentent pas le même niveau de difficulté.
Les grilles de Sudoku de qualité sont celles qui n’offrent qu’une possibilité de résolution tout
en étant difficiles à résoudre.
La grille AI Escargot est un bon exemple de complexité :
1
7
3
9
2
8
9 6
5
5 3
9
1
8
6
2
4
3
1
4
7
7
3
Copyright © FLX 2009 - All rights reserved
www.flx.fr
Les livres blancs de la méthodologie FLX - Jouons au Sudoku
6
Réflexion méthodologique
Lorsque l’on formalise les règles du jeu du Sudoku, revient souvent le mot « résoudre ».
En effet, on « résout » une grille, comme on résoudrait une équation.
Une équation pose une obligation, tout comme le Sudoku :
2x - 4 = 0
x vaut obligatoirement 2.
C’est une déduction évidente, tout comme dans le cas suivant :
1 2 3 4 5 6 7 8 ?
Le chiffre que l’on cherche est forcément 9 d’après les règles du Sudoku. C’est une équation à
une seule inconnue.
La résolution d’une grille de Sudoku se fait par une suite de déductions évidentes qui
découlent de déductions précédentes.
La grille de Sudoku est donc un système d’équations à n inconnues, la seule différence est
dans la forme dont est présenté ce système d’équations.
Soit le système d’équations suivant :
5x – 4y = 0
7x + y = 0
Les équations sont formalisées, et nous appliquons une méthode bien établie pour résoudre le
système : la question est clairement posée et nous avons la méthode pour y répondre.
Si nous voulons résoudre la grille de Sudoku en appliquant une méthode, nous allons devoir
clairement formaliser cette question, ce qui n’est pas le cas dans les grilles que l’on propose
aux joueurs.
Copyright © FLX 2009 - All rights reserved
www.flx.fr
Les livres blancs de la méthodologie FLX - Jouons au Sudoku
7
Comment formaliser la question ?
Dans un système d’équation, les hypothèses sont posées, ce qui permet d’avoir une lecture
évidente de l’équation : ax + by + cz = d
Même si on ne connaît pas encore x, y et z, la question est clairement posée sous forme d’une
équation : x y et z sont les inconnues et a, b, c et z les constantes connues.
Pour la grille de Sudoku, il nous faut faire apparaître ses équations avec ses différents
membres : constantes et inconnues. Pour cela, nous pouvons poser les chiffres possibles dans
chacune des cellules, ce que nous appellerons la pose des hypothèses.
1. PHASE DE POSE DES HYPOTHESES
Dans un premier temps, poser toutes les hypothèses ou (ou possibilités restantes).
Exemple :
468
3
468
478
1
9
5
679
2678
145689
149
45689
2
45678
4567
1489
3
146789
2
149
7
458
3
456
1489
16
14689
1469
8
3
459
456
146
7
2
169
14679
12479
2469
3
467
12467
19
8
5
1679
5
269
789
678
1267
3
4
169
3
6
1
457
9
457
248
7
2478
4789
2479
2489
6
47
3
12489
5
124789
4579
4579
459
1
2
8
6
9
3
Copyright © FLX 2009 - All rights reserved
www.flx.fr
Les livres blancs de la méthodologie FLX - Jouons au Sudoku
8
La pose des hypothèses nous offre une grille de lecture complètement nouvelle : nous
voyons clairement apparaître des cellules qui ne présentent qu’une seule hypothèse
possible : nous venons de transformer des inconnues en constantes.
De même, la grille fait apparaître des zones avec plus ou moins d’incertitudes, ce qui va
diriger nos recherches.
Ces hypothèses étant posées, la grille de Sudoku se présente à présent comme un système
d’équations à résoudre. Comment pouvions nous résoudre ce système d’équation sans
avoir ces équations sous nos yeux ?
2. PHASE DE RESOLUTION
Dans un second temps, on applique une série de méthodes qui permettent de faire des
déductions et ainsi de réduire au maximum le nombre d’hypothèses en les transformant en
certitudes.
1) Méthode N°1 : dans une région : si un chiffre est seul dans sa cellule, il est LE
chiffre de la cellule
C’est le cas pour le 7 dans cet exemple :
124
7
124
12489
5
12479
6
94
3
2) Méthode N° 2 : dans une région : si un chiffre est dans une cellule et dans aucune
autre comme le 7 ici :
1248
2478
1248
12489
5
12489
6
94
3
Copyright © FLX 2009 - All rights reserved
www.flx.fr
Les livres blancs de la méthodologie FLX - Jouons au Sudoku
9
3) Méthode N° 3 : à chaque fois qu’un chiffre est posé, retirer toutes les hypothèses
qui s’éliminent logiquement dans la même colonne, la même ligne, et la même
région.
Ici par exemple, on a posé un 9 :
468
3
468
478
1
9
5
679
2678
145689
149
45689
2
45678
4567
1489
3
146789
2
149
7
458
3
456
1489
16
14689
1469
8
3
459
456
146
7
2
169
14679
12479
2469
3
467
12467
19
8
5
1679
5
269
789
678
1267
3
4
169
3
6
1
457
9
457
248
17
2478
4789
2479
2489
6
47
3
12489
5
124789
4579
4579
459
1
2
8
6
9
3
Copyright © FLX 2009 - All rights reserved
www.flx.fr
Les livres blancs de la méthodologie FLX - Jouons au Sudoku
10
4) Méthode N°4 : prendre région par région les hypothèses qui sont en ligne ou en
colonnes.
Ici, les 6 sont en colonnes :
5
67
2678
1489
3
146789
1489
16
14689
7
2
169
19
8
5
3
4
169
248
7
2478
1248
5
12478
6
9
3
Ici, les 6 sont sur une seule et même colonne, donc ils éliminent tous les 6 de la même
colonne de la région voisine.
Copyright © FLX 2009 - All rights reserved
www.flx.fr
Les livres blancs de la méthodologie FLX - Jouons au Sudoku
11
Autre exemple :
3
6
1
457
9
457
248
7
2478
4789
2479
2489
6
47
3
1248
5
12478
457
457
45
1
2
8
6
9
3
5
67
278
1489
3
14789
1489
16
1489
7
2
169
19
8
5
3
4
169
248
7
2478
148
5
1478
6
9
3
Ici, le 7 évident de la région du bas élimine l’hypothèse du 7 de la première ligne, révélant
ainsi un 6 évident.
Copyright © FLX 2009 - All rights reserved
www.flx.fr
Les livres blancs de la méthodologie FLX - Jouons au Sudoku
5
6
278
1489
3
14789
1489
16
1489
12
Le 6 posé élimine les autres 6 du même carré créant ainsi le 1 évident qui va s’impacter sur le
reste du jeu, etc.
Autre exemple :
5
6
278
489
3
4789
489
1
489
La région vient d’être débarrassée des hypothèses de 1 et de 6.
On voit que le 2 n’a plus qu’une seule place possible dans ce carré (méthode N° 2).
Copyright © FLX 2009 - All rights reserved
www.flx.fr
Les livres blancs de la méthodologie FLX - Jouons au Sudoku
5
6
2
489
3
4789
489
1
489
7
2
169
19
8
5
3
4
169
248
7
248
148
5
148
6
9
3
13
Dans la plupart des cas de Sudoku, cette phase de réduction des hypothèses permet de
résoudre le jeu entièrement : les déductions se cascadent les unes les autres en appliquant les 4
méthodes vues précédemment jusqu’à remplir totalement la grille.
C’est le cas de la plupart des jeux de Sudoku que l’on trouve dans le commerce, qu’ils soient
désignés comme difficile ou non. Si l’on cherche à résoudre à la main avec un crayon une
grille de Sudoku en employant une telle méthodologie, c’est la pose des hypothèses et la
rigueur exigée qui peut éventuellement poser problème ainsi que la lisibilité des hypothèses
notées à la main sur la grille. En revanche, un programme informatique qui applique
« bêtement » ces méthodes résout 99% des grilles de Sudoku proposées dans le commerce de
façon instantanée, tout simplement parce que le système d’équations que revêt la grille de
Sudoku présente suffisamment de constantes pour en déduire de façon évidente toutes les
inconnues.
Copyright © FLX 2009 - All rights reserved
www.flx.fr
Les livres blancs de la méthodologie FLX - Jouons au Sudoku
14
Il existe pourtant une variété de grilles de Sudoku d’un niveau de difficulté supérieur, parce
que les méthodes énoncées précédemment lorsque l’on les applique conduisent à une situation
où il subsiste des « hypothèses à deux têtes », c'est-à-dire des cellules non résolues parce
qu’elles peuvent à un certain stade de la résolution comporter deux voire plusieurs chiffres
possibles.
C’est le cas dans la grille nommée AI Escargot.
Les méthodes de déduction vues précédemment ne nous permettent plus d’avancer dans la
résolution de la grille.
Copyright © FLX 2009 - All rights reserved
www.flx.fr
Les livres blancs de la méthodologie FLX - Jouons au Sudoku
15
Il va falloir étudier plusieurs scénarios : poser l’hypothèse par exemple que la case C2 ou (3 ,
2) contient un 4 alors qu’actuellement 4 et 6 sont possibles.
Ensuite, nous appliquerons les différentes méthodes de résolutions vues précédemment afin
de voir si la résolution finale de la grille est possible, c'est-à-dire en accord avec les règles du
jeu.
Si c’est le cas, la grille est résolue, dans le cas contraire, nous essaierons le scénario dans
lequel la case C2 contiendrait un 6.
Dans le cas de la grille AI Escargot, l’exploration du premier scénario nous conduit à un autre
« embranchement » qui oblige à une nouvelle digression, et ainsi de suite. Ainsi, le nombre
d’explorations à effectuer explosent de façon exponentielle, ce qui fait de cette grille un cas
inextricable. Difficile pour un être humain, le petit logiciel qui explore les différents scénarios
lancé sur mon ordinateur met quelques fractions de secondes car l’exploration de chaque
scénario est excessivement rapide grâce à son « intelligence » que lui procure la tresse
méthodique. L’exploration arborescente des différents scénarios constitue une méthode en soi,
à l’intérieur de laquelle on applique le jeu de quatre méthodes de déduction.
Conclusion
L’éventuelle difficulté à résoudre une grille de Sudoku vient du fait que les « questions » ou
encore équations ne sont pas formalisées, ce qui ne permet pas de passer à une phase de
résolution systématique.
La phase de résolution systématique s’opère grâce à une série de méthodes qui appliquées les
unes après les autres, dans un certain ordre et de façon répétée nous permettent de solutionner
la grille de Sudoku. On appellera la combinaison de ces méthodes entrelacées entre elles une
tresse ou un toron de méthodes :
La pose des hypothèses suivie de la phase de résolution constitue un fil méthodologique qui
nous permet d’arriver à la solution en partant de la problématique en adoptant une attitude
systématique qui nous évite toute hésitation, blocage, ou autre défaillance qui ramènerait la
résolution du problème à un temps incertain. Ce fil méthodologique et comparable au fil
d’Ariane si on considère la résolution de la grille de Sudoku comme un labyrinthe.
Notons également que le programme informatique qui modélise cette méthodologie résout
TOUTES les grilles de façon systématique, y compris AI Escargot, ce qui, en soi, représente
un résultat consistant.
Copyright © FLX 2009 - All rights reserved
www.flx.fr
Les livres blancs de la méthodologie FLX - Jouons au Sudoku
16
Egalement, ajoutons pour les joueurs de Sudoku que cette démonstration n’enlève en rien
l’intérêt du Sudoku car rien ne nous oblige à être méthodique…
Vous pouvez télécharger le logiciel « FLX Sudoku Solver» réalisé en Delphi à l’adresse
suivante : www.flx.fr/files/sudokusolver.zip
Copyright © FLX 2009 - All rights reserved
www.flx.fr

Documents pareils