17
P.T. S3T 2012/2013 - Belote Joueur virtuel (Lot 2) Modélisation des cartes

P.T. S3T 2012/2013 - Belote Joueur virtuel (Lot 2) Modélisation des cartes

Embed Size (px)

Citation preview

Page 1: P.T. S3T 2012/2013 - Belote Joueur virtuel (Lot 2) Modélisation des cartes

P.T. S3T 2012/2013 - Belote

Joueur virtuel (Lot 2)Modélisation des cartes

Page 2: P.T. S3T 2012/2013 - Belote Joueur virtuel (Lot 2) Modélisation des cartes

Le noyau de raisonnement

Fonctionnalités principales à assurer

• acquisition de la situation initiale de jeu• prise de décision pour prendre• choix (éventuel) de la couleur• mises à jour de la situation de jeu• analyse de la situation courante de jeu• désignation de la carte courante à poser

Page 3: P.T. S3T 2012/2013 - Belote Joueur virtuel (Lot 2) Modélisation des cartes

Modélisation de chaque carte

Identifiée comme une entité du jeu

• la couleur• le symbole porté• le status vis-à-vis de l’atout• la valeur comptable• l’emplacement courant• …

Page 4: P.T. S3T 2012/2013 - Belote Joueur virtuel (Lot 2) Modélisation des cartes

Base de connaissances – V 0.0.0

Description très limitée

• la couleur de chaque carte• le symbole porté par chaque carte

Page 5: P.T. S3T 2012/2013 - Belote Joueur virtuel (Lot 2) Modélisation des cartes

Questions pertinentes (1)

Le référentiel est le paquet complet de cartes

• y a t-il des carreaux ?• y a t-il des rois ?• y a t-il des valets de trèfle ?• …

Les questions sont limitées à la clé principale.

Page 6: P.T. S3T 2012/2013 - Belote Joueur virtuel (Lot 2) Modélisation des cartes

Description formelle (buts Prolog)

Via le prédicat carte/2

• ?- carte(X, carreau).• ?- carte(roi, X).• ?- carte(valet, trefle).• ?- …

Page 7: P.T. S3T 2012/2013 - Belote Joueur virtuel (Lot 2) Modélisation des cartes

Questions pertinentes (2)

Listes et dénombrements

• quelle est la liste des symboles (des cartes) ?• quelle est la liste des couleurs ?• combien y a-t-il de symboles différents ?• combien y a-t-il de couleurs différentes ?• combien y a-t-il de coeurs ?• combien y a-t-il d’as ?• …

Page 8: P.T. S3T 2012/2013 - Belote Joueur virtuel (Lot 2) Modélisation des cartes

Description formelle (buts Prolog)

Via les prédicats prédéfinis setof et length

• ?- setof(X, carte(X, _), L).• ?- setof(X, carte(_, X), L).• ?- setof(X, carte(X, _), L), length(L, N).• ?- setof(X, carte(_, X), L), length(L, N).• ?- setof(X, carte(X, coeur), L), length(L, N).• ?- setof(X, carte(as, X), L), length(L, N).• …

Page 9: P.T. S3T 2012/2013 - Belote Joueur virtuel (Lot 2) Modélisation des cartes

Base de connaissances – V 0.1.0

Listes natives et relations

• introduction de l’ensemble des couleurs• introduction de l’ensemble des symboles• modélisation des cartes par une relation• description de la valeur par une relation

Page 10: P.T. S3T 2012/2013 - Belote Joueur virtuel (Lot 2) Modélisation des cartes

Questions pertinentes (3)

Le référentiel reste le paquet de cartes

• quelle est la valeur de l’as de trèfle ?• quelle est la valeur d’un roi ?• quels éléments du paquet ont 10 pour valeur ?• s’agit il d’une carte ?• …

Page 11: P.T. S3T 2012/2013 - Belote Joueur virtuel (Lot 2) Modélisation des cartes

Description formelle (buts Prolog)

Via le prédicat valeur/2

• ?- valeur([as, trefle], V).• ?- valeur([roi, _], V), !.• ?- valeur(X, 10).• ?- …

Page 12: P.T. S3T 2012/2013 - Belote Joueur virtuel (Lot 2) Modélisation des cartes

Base de connaissances – V 0.2.0

Introduction de la couleur d’atout

• modification de la relation valeur• mise en œuvre du prédicat assert

Pour pouvoir fixer dynamiquement la couleur de l’atout, le prédicat assert n’est pas mis en œuvre dans la BdC. Il doit être exécuté comme un but (directement sous l’interpréteur).

?- assert(couleur_atout(carreau)).

Page 13: P.T. S3T 2012/2013 - Belote Joueur virtuel (Lot 2) Modélisation des cartes

Questions pertinentes (4)

Impact sur les valeurs des cartes

• quelle est la couleur des atouts ?• quelle est la valeur du neuf de carreau• quelle est la valeur du neuf d’atout ?• quel élément du modèle a 20 pour valeur ?• s’agit il d’un atout ?• …

Page 14: P.T. S3T 2012/2013 - Belote Joueur virtuel (Lot 2) Modélisation des cartes

Description formelle (buts Prolog)

Via les prédicats couleur_atout et valeur

• ?- couleur_atout(C).• ?- valeur([neuf, carreau], V).• ?- couleur_atout(_), valeur([neuf, _], V).• ?- valeur(X, 20).• ?- valeur([_, _], 20), couleur_atout(_).• ? …

Page 15: P.T. S3T 2012/2013 - Belote Joueur virtuel (Lot 2) Modélisation des cartes

Base de connaissances – V 1.0.0

Mise en œuvre des foncteurs

• simplification de la relation valeur• meilleure lisibilité de cette relation• introduction de la relation atout• introduction de la relation atouts

Page 16: P.T. S3T 2012/2013 - Belote Joueur virtuel (Lot 2) Modélisation des cartes

Questions pertinentes (5)

Impact sur la modélisation des valeurs

• quelle carte a 14 pour valeur ?• quelle est l’ensemble de tous les atouts ?• combien y a-t-il d’atouts au total ?• …

Page 17: P.T. S3T 2012/2013 - Belote Joueur virtuel (Lot 2) Modélisation des cartes

Description formelle (buts Prolog)

Via les prédicats valeur et atouts

• ?- valeur(X, 14).• ?- atouts(L).• ?- atouts(L), length(L,N).• ? …