École Internationale des Sciences du Traitement de l'Information TIPE Les dames chinoises Ecole Internationale des Sciences du Traitement de l'Information Les dames chinoises Intelligence artificielle Programme informatique Point sur l’avancement du projet 2 École Internationale des Sciences du Traitement de l'Information Les dames chinoises 3 École Internationale des Sciences du Traitement de l'Information Le jeu de dames chinoises Le jeu de dames chinoises : • Première apparition en Europe vers 1880 • Jeu familial 1. Pouvant se jouer de 2 à 6 joueurs 2. Règles du jeu très simple et accessible 3. Parties de durée assez courte (entre 30 et 45 min) 4 École Internationale des Sciences du Traitement de l'Information Le jeu de dames chinoises Les règles : • Dix pions d’une même couleur par joueur • Placés dans une maison en début de partie 5 École Internationale des Sciences du Traitement de l'Information Le jeu de dames chinoises Le but du jeu : Transférer tous ses pions dans la maison opposée à la sienne Les règles : • Le choix de sa maison dépend du nombre de joueurs • Déplacement d’un seul pion par tour de jeu • Les tours s’effectuent dans le sens anti-horaire 6 École Internationale des Sciences du Traitement de l'Information Le jeu de dames chinoises Les déplacements autorisés : • Dans un trou vide contigu à sa position de départ. • Franchir un pion en sautant par dessus celui-ci, pour se placer dans un trou attenant (on peut franchir des pions tant que les possibilités de saut le permettent). 7 École Internationale des Sciences du Traitement de l'Information Intelligence artificielle 8 École Internationale des Sciences du Traitement de l'Information Intelligence artificielle (I.A.) • Définition : Science qui permet aux ordinateurs d’effectuer des tâches qui nécessitent une intelligence humaine • Deux points importants : 1. Recherche des coups jouables 2. Évaluation de ces coups (trouver lequel est le meilleur) 9 Ecole Internationale des Sciences du Traitement de l'Information Intelligence artificielle (I.A.) Différents algorithmes : • Systèmes experts • Logique floue • Algorithmes génétiques • Algorithme minimax et alpha-beta • … 10 École Internationale des Sciences du Traitement de l'Information Intelligence artificielle (I.A.) Les systèmes experts : Principe : Fournir à l’ordinateur les connaissances d’un expert humain, grâce à une base de données. Domaines d’application : Domaines où l’expertise humaine est indispensable ex : diagnostiques médicaux Inconvénients : • Nécessite un expert pour créer la base de données • Non applicable aux dames chinoises 11 École Internationale des Sciences du Traitement de l'Information Intelligence artificielle (I.A.) Logique floue : Principe : Son but est combler les lacunes de la logique booléenne en introduisant la notion de continuité entre les états. 12 École Internationale des Sciences du Traitement de l'Information Intelligence artificielle (I.A.) Logique floue : Domaines d’application : • Surtout l’automatisme et la robotique • Météorologie • Diagnostiques médicaux Inconvénients : De petites erreurs de conception nombreuses erreurs aberrantes Non applicable aux dames chinoises 13 École Internationale des Sciences du Traitement de l'Information Intelligence artificielle (I.A.) Algorithmes génétiques : Principe : Basé sur la théorie de l’évolution et des recombinaisons génétiques 14 École Internationale des Sciences du Traitement de l'Information Intelligence artificielle (I.A.) Algorithmes génétiques : Domaines d’application : • Résolution des problèmes de type NP-Complet • Utilisable dans notre programme pour la fonction d’évaluation Inconvénients : • Pas de garantie de résultat • Très coûteux en temps de calcul 15 Ecole Internationale des Sciences du Traitement de l'Information Intelligence artificielle (I.A.) Le MiniMax : • S’applique aux jeux à somme nulle • Aussi applicable aux dames chinoises Nécessités de l’algorithme : • Déterminer tous les coups jouables à partir d’une position • Évaluer la qualité d’une position 16 Ecole Internationale des Sciences du Traitement de l'Information Intelligence artificielle (I.A.) 17 Ecole Internationale des Sciences du Traitement de l'Information Intelligence artificielle (I.A.) 18 Ecole Internationale des Sciences du Traitement de l'Information Intelligence artificielle (I.A.) 19 École Internationale des Sciences du Traitement de l'Information Intelligence artificielle (I.A.) 20 Ecole Internationale des Sciences du Traitement de l'Information Intelligence artificielle (I.A.) 21 Ecole Internationale des Sciences du Traitement de l'Information Intelligence artificielle (I.A.) 22 Ecole Internationale des Sciences du Traitement de l'Information Intelligence artificielle (I.A.) 23 Ecole Internationale des Sciences du Traitement de l'Information Intelligence artificielle (I.A.) Avantages : • Mise en œuvre assez facile • Algorithme basé sur un arbre Inconvénient : • Effet horizon 24 École Internationale des Sciences du Traitement de l'Information Intelligence artificielle (I.A.) Alpha-beta : • Amélioration du minimax • Aussi applicable aux dames chinoises Avantages : • Moins de calcul que le minimax • Mise en œuvre reste facile Inconvénient : • Effet horizon (plus important que pour minimax) 25 École Internationale des Sciences du Traitement de l'Information Intelligence artificielle (I.A.) 26 École Internationale des Sciences du Traitement de l'Information Programme informatique 27 École Internationale des Sciences du Traitement de l'Information Intelligence artificielle (I.A.) Fonction de recherche des coups jouables : • Test si les positions adjacentes sont libres • Test si les positions adjacentes sont occupé et la suivante vide Fonction récursive 28 École Internationale des Sciences du Traitement de l'Information Intelligence artificielle (I.A.) Fonction d’évaluation des coups : • Test de la position du pion sur le plateau • Test de la position par rapport aux autres pions Gérer l’ensemble des pions et non un élément isolé 29 École Internationale des Sciences du Traitement de l'Information Interface graphique Interface codée en GTK 30 Ecole Internationale des Sciences du Traitement de l'Information Conclusion 31 Ecole Internationale des Sciences du Traitement de l'Information Travaux en cours : Développement du moteur du jeu Reste à : Coder en C les fonctions : • Fonction de test des coups jouables • Fonction d’évaluation • Implémentation du minimax et alpha-beta 32