Elements de Reponse Du
Elements de Reponse Du
Elements de Reponse Du
Université de Lorraine
TP2 : Ce TP2 sera évalué et la note comptera comme la 3ième note de CC.
ELEMENTS DE REPONSE DU
CC - TD2- Gr.1 IA 28 fevrier 2022 - L3
On dispose de trois cubes A, B et C, d’une table et d’un bras robotisé à programmer.
Le but recherché est de passer de l’état initial (a) à l’état final (b) (figure ci-dessous).
Tous les états du système peuvent être décrits par les prédicats suivants :
LIBRE( X ) : Exprime le fait que le cube X est libre et qu’il n’a donc aucun cube au-dessus de
lui, qu’il n’est pas tenu par le bras du robot, etc. (¬LIBRE( X ) exprimera le contraire de LIBRE(
X ) ).
SUR ( X , Y ) : Exprime le fait que le cube X et sur le cube Y (exemple SUR (C , A)).
SURTABLE ( X ) : Exprime le fait que le cube X est sur la table
BRASVIDE : Exprime le fait que le bras du robot est vide ( ¬BRASVIDE exprimera le contraire
de BRASVIDE ).
4 règles de production permettent de programmer le robot pour modéliser les actions TENIR
et DEPOSER les cubes. L’application de ces règles permettront de partir de l’état initial (a) et
d’arriver à la solution (état final (b)).
Voici une description informelle de ces 4 règles de production R1, R2, R3 et R4.
On exprime l’action de tenir un cube au moyen des deux règles suivantes :
R1 : SI le bras du robot est libre (vide) et si le cube X est libre et que X se trouve sur la table
ALORS le robot va tenir le cube X et mettre à jour l’état du système à la suite de cette action.
R2 : SI le bras du robot est libre et qu’un cube X est sur un cube Y et que le cube X est libre
ALORS le robot va tenir le cube X et mettre à jour l’état du système à la suite de cette action.
On exprime l’action de poser un cube au moyen des deux règles suivantes :
R3 : SI Le robot tient le cube X (TENIR ( X ) ) ALORS, mettre à jour l’état du système pour
exprimer l’action de poser le cube X sur la table et les conséquences sur l’état du système.
R4 : SI Le robot tient le cube X ET le cube Y est libre ALORS mettre à jour l’état du système
pour exprimer l’action de poser le cube X sur le cube Y et les conséquences sur l’état du
système.
NB : la conclusion de chaque règle doit mettre à jour l’état du système (bras, cubes, …) en
fonction des états cités plus haut.
Question 1 : Donner, au moyen des 4 prédicats cités plus haut, les descriptions de l’état
initial et de l’état final du système.
Eléments de réponse*
Ces états sont donnés à titre indicatif et peuvent être modélisées autrement.
Brasvide Brasvide
Libre (C)
Question 2 : Sachant qu’on désire représenter le problème par une approche espace d’états,
définir la définition formelle des 4 règles de production proposées en précisant (dans la
partie condition de la règle) les conditions d’application de chaque opérateur et (dans la
partie conclusion de la règle) les résultats de leurs applications sur l’encodage.
Une règle est de la forme SI C1 ET C2 … ALORS A1 ET A2 ET ¬A3 …
Eléments de réponse*
Ces règles sont données à titre indicatif et peuvent être modélisées autrement.
Consignes
- Formez des groupes de 2 étudiants.
- Utilisez le langage de votre choix, toutefois, je préférerais que Python soit utilisé.
- Votre code devrait être paramétrable et l’exécution peut porter sur des données
différentes de celles proposées dans le sujet (placement des cubes).
- Votre code doit être commenté (10% du code doit être des commentaires :
obligatoire).
- L’évaluation ainsi que le rendu se feront lors de la dernière séance de TP.
- L’évaluation consistera à faire l’exécution du code ainsi qu’un éventuel code review.
Rendu
- Un mini rapport de TP (pdf) décrivant en détail votre codage, vos choix de
développement, les fonctions choisies…
- Votre fichier de code source.