Présentation ludique de la recherche opérationnelle pour la fête de la science 2007 DONG Xiaoguang HONG Liang OULDBABA Fadel WANG Min Tuteur : Audrey Dupont
Plan Présentation du projet Organisation du travail Les différents jeux à réaliser Planning prévisionnel Conclusion Jeu «8-Dames» Jeu « Noël » (problème couplage) Jeu « Quinze » (jeu de Nim) Jeu « Supermarché » (problème sac à dos)
Présentation Objectif du projet Intérêt du projet Spécifications techniques JAVA PHP + MySQL Schéma de l’interface web
Quatre jeux à réaliser Jeu « 8-Dames » Jeu « Noël » (problème couplage) Jeu « Quinze » (jeu de Nim) Jeu « Supermarché » (problème sac à dos)
Spécifications techniques JAVA PHP + MySQL
Schéma de l’interface web
Organisation du travail Organisation du projet Comprendre les problèmes du projet Analyse du projet ( les jeux, la conception du site) Organisation du groupe Travail individuel Travail commun
Organisation du groupe Groupe 2 (notre groupe) Problème Couplage Problème Sac à dos N reines Les jeux de Nim Groupe 1 Plus court chemin Voyageur de commerce Coloration de graphe Sudoku Groupe 1 et Groupe 2 Définition de l’architecture technique et spécifications technique Conception des interfaces graphiques Modélisation un base de données Mise en place des jeux
Jeu «8-Dames» Présentation du problème Modélisation “CSP ” du problème Algorithme: le Backtracking Difficultés de cette technique Résolution du CSP par recherche locale
Présentation du jeu
Modélisation CSP du jeu Variables: X={X1,X2,X3,X4,X5,X6,X7,X8}. Domaines : D(X1) = D(X2) = D(X3) = D(X4) = D(X5) = D(X6) = D(X7) = D(X8) = {1, 2, 3, 4, 5, 6, 7,8} Contraintes : 1-les reines doivent être sur des lignes différentes: Clig = {Xi ≠ Xj | i,j∈{1,2; 3; 4; 5; 6; 7; 8}; i≠ j} 2-les reines doivent être sur des diagonales montantes différentes: Cdm = { Xi+i ≠ Xj + j | i; j ∈{1; 2; 3; 4; 5; 6; 7; 8} i ≠ j} 3-es reines doivent être sur des diagonales descendantes différentes:Cdd ={Xi-i ≠ Xj-j | i, j ∈ {1; 2; 3; 4; 5; 6; 7; 8} i ≠ j}
Algorithme: le Backtracking
Résolution par recherche locale algorithme Min Conflit
Jeu « Noël » Description du jeu Génération de données Algorithme du problème couplage
Description du jeu
Couplages dans un Graphe biparti On suppose que le graphe G=(X,E) est biparti c’est à dire qu’il exist une Partition des sommets en deux sous ensembles Y et Z tels que toute arête a une extrémité dans Y et l’ autre dans Z Le problème se ramène alors à un problème de flot sur un réseau construit à partir de G On ajoute deux sommets s et t on relie s à tous les sommets de Y et tous les Sommets de Z à t, on oriente les arêtes de Y vers Z, la capacité est de 1 pour tous Les arcs.
FORD-FULKERSON Initialisation Étape 1 Étape 2 Démarrer du flot nul Étape 1 Chercher par Marquage une chaîne améliorante Étape 2 S'il existe une chaîne améliorante, augmenter le flot suivant la chaîne, retour à l'étape 1. Étape 3 : STOP, le flot obtenu est OPTIMAL
Jeu «Quinze» Description du jeu Interface du jeu Algorithme
Description du jeu Deux joueurs doivent choisir tour à tour un nombre dans l'ensemble : 1, 2, 3, 4, 5, 6, 7, 8, 9. Le premier joueur qui obtient exactement le total 15, en additionnant trois de ses nombres, gagne.
Interface du jeu
Algorithme Pseudo code A chaque tour: Parcourir toutes les lignes Fin Si le nombre 5 est disponible alors l’ordinateur le prend premièrement Si le joueur a pris 2 nombres de la même ligne alors l’ordinateur prend le nombre reste de la ligne sinon l’ordinateur prend le nombre dans la ligne où il possède les plus nombres Si un joueur arrive à aligner ses 3 nombres alors la partie est fini Fin
Jeu « Supermarché » Description du jeu Problème du sac à dos Règles du jeu Algorithme du problème sac à dos Génération des données
Algorithme approché simple On cherche tel que ai soit maximum tout en satisfaisant : Ou de manière équivalente des entiers tels que : ,
Génération des données Intervalle Contrainte Poids ( ) poids(lait) poids(viande) poids(légume) poids(gâteau) Valeur( ) Poids maximal
Description du jeu Chariot Poids maximal Valeur € Poids Kg Légume Viande Lait Valeur € Poids Kg Gâteau
Planning
Conclusion