Joueur virtuel (Lot 2) Modélisation des cartes 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
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 …
Base de connaissances – V 0.0.0 Description très limitée la couleur de chaque carte le symbole porté par chaque carte
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.
Description formelle (buts Prolog) Via le prédicat carte/2 ?- carte(X, carreau). ?- carte(roi, X). ?- carte(valet, trefle). ?- …
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 ? …
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). …
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
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 ? …
Description formelle (buts Prolog) Via le prédicat valeur/2 ?- valeur([as, trefle], V). ?- valeur([roi, _], V), !. ?- valeur(X, 10). ?- …
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)).
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 ? …
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(_). ? …
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
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 ? …
Description formelle (buts Prolog) Via les prédicats valeur et atouts ?- valeur(X, 14). ?- atouts(L). ?- atouts(L), length(L,N). ? …