ele263.zip - Exécutable Win32
Solutionneur du problème du tour du chevalier - 02/04/1998
Le problème du tour du chevalier consiste à faire visiter toutes les cases d'un jeu
d'échec à un chevalier sans jamais retourner sur une case déjà visitée.
Le mathématicien
Gauss a solutionné ce problème à l'age de 4 ans !!! J'ai écrit ce programme
dans le cadre d'un cours d'algorithmie à l'université. Le but du lab était d'écrire
un service de pile mais je trouvais que c'était un peu trop facile alors j'ai trouvé
ce problème à résoudre pour montrer une des applications des piles. C'est un problème
qui se résout bien avec une méthode de "backtracking". Cette méthode consiste à essayer
une combinaison en insérant chaque élément de la combinaison dans une pile jusqu'à ce
que la solution soit trouvée ou bien que le programme se retrouve dans une impasse.
Lorsque le programme se retrouve dans une impasse, il revient en arrière en retirant
le dernier élément inséré dans la pile et ensuite essait un autre élément de l'ensemble
de valeurs possibles pour la solution.
Je voulais aussi mettre en évidence qu'il est parfois utile d'aider le programme a choisir
l'élément suivant. En effet, le programme offre à l'usager de tenter de résoudre le
problème brutalement ou en favorisant les cases qui sont le plus difficiles d'accès
(ex.: Les coins sont moins accessibles que le centre de l'échiquier).
Sans avoir les chiffres exacts, je pense qu'il est plus rapide de casser une transmission
DES avec une clef privée à 56 bits que de trouver la réponse de ce problème avec la force brutale (à moins
d'être chanceux :). J'ai même laissé ce programme en mode force brutale fonctionner durant plus d'une semaine
sur un Pentium 200 MHz sans succès :(.
knight.zip - Exécutable Win32 console
Les fichiers source de ce programme sont disponibles
Reconnaissance vocale - 03/24/1998
Le programme fonctionne en extrayant des paramètres du signal à analyser.
Ensuite, il les compare avec d'autres paramètres contenus dans les fichiers BNK pour
déterminer de quel type de signal il sagit. La partie du programme dont je suis le plus
fier, c'est la façon dont le programme trouve le paramètre des banques de paramètres le
plus proche du paramètre provenant du signal traité. Le programme utilise la méthode des chaines
monotones sur le diagramme de Voronoi des paramètres de la banque. En fait, les
diagrammes de Voronoi sont précalculés et contenus dans les fichiers BNK. Je pense qu'il
aurait été difficile de faire un programme plus efficace.
recon.zip - Exécutable Win32 console
Les fichiers source de ce programme sont disponibles