Présentation ludique de la recherche opérationnelle pour la fête de la science 2007 DONG...

Preview:

Citation preview

Présentation ludique de la recherche opérationnelle pour la fête de la science 2007

DONG XiaoguangHONG Liang

OULDBABA FadelWANG 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 

• Jeu « 8-Dames »

• Jeu « Noël » (problème couplage)

• Jeu « Quinze » (jeu de Nim)

• Jeu « Supermarché » (problème sac à dos)

Quatre jeux à réaliser

Spécifications techniques

• JAVA

• PHP + MySQL

Schéma de l’interface web

Organisation du travail

• Organisation du projet Comprendre les problèmes du projetAnalyse du projet ( les jeux, la conception

du site)

• Organisation du groupe Travail individuelTravail commun

Organisation du groupe

Groupe 2 (notre groupe)Problème Couplage Problème Sac à dosN reinesLes jeux de Nim

Groupe 1Plus court cheminVoyageur de commerceColoration de grapheSudoku

Groupe 1 et Groupe 2Définition de l’architecture technique et spécifications techniqueConception des interfaces graphiquesModélisation un base de donnéesMise 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• 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

AlgorithmePseudo code

A chaque tour:

Parcourir toutes les lignesSi 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 jeuProblè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 :

,

1,2,...,I n

ii I

p P

0 1ix

1,i i

i n

x p P

1,

max i ii n

x a

Génération des données

Données Intervalle Contrainte

Poids ( )

poids(lait) poids(viande) poids(légume) poids(gâteau)

Valeur( )

Poids maximal

iP

ia

1 1

2 3

3 4

n n

i ii i

p p

1;6 5

2;12

Description du jeu

Légume

Viande

Lait

Gâteau

Chariot

Valeur €

PoidsKg

Poids maximal

Planning

Conclusion

Recommended