Université de Monastir A.U.
: 2023-2024
Faculté des Sciences de Monastir Matière : Fondements de l'intelligence
artificielle (programmation IA)
Département des Sciences de l'Informatique
TP4 : Résolution de Problèmes
Exercice 1 :
Objectif
Construisez un système en Prolog pour gérer un agenda personnel. Ce programme devra
permettre de lister des événements par date, de rechercher des événements par nom et de trouver
des événements se produisant avant ou après une date spécifique.
Contexte
Vous avez un agenda personnel électronique qui contient une série d'événements, chacun
associé à une date spécifique et un nom. Le but est de fournir un moyen de naviguer facilement
dans cet agenda pour planifier ou modifier vos activités.
Base de Données
L'agenda contient, par exemple, les entrées suivantes :
• Événement: 'Rendez-vous chez le dentiste', Date: '2024-03-15'.
• Événement: 'Anniversaire de Mariage', Date: '2024-06-07'.
• Événement: 'Entretien d'embauche', Date: '2024-04-22'.
1. Développez des requêtes pour afficher les événements organisés par date.
2. Créez une fonction permettant de trouver un événement en utilisant son nom.
3. Implémentez des méthodes pour identifier les événements se déroulant avant ou après
une date donnée.
Page 1 / 2
Exercice 2 :
Développer un système en Prolog qui recommande des films à un utilisateur en fonction de ses
genres préférés. La base de données se compose de deux éléments clés décrits ci-dessous :
• Films et leurs Genres : Notre collection comprend divers films, chacun étant associé à
une combinaison spécifique de genres. Parmi les exemples notables, nous avons 'Inception', qui
se distingue par son mélange de genres incluant l'action, la science-fiction et le thriller.
'Interstellar' est reconnu pour ses thèmes de science-fiction et de drame. 'Le Seigneur des
Anneaux' nous transporte dans un univers de fantaisie et d'aventure, tandis que 'The Social
Network' explore les genres du drame et de la biographie.
• Préférences des Utilisateurs : Les goûts cinématographiques de nos utilisateurs sont
également enregistrés, mettant en avant leurs genres de films favoris. Par exemple, Alice montre
une préférence marquée pour la science-fiction et la fantaisie, tandis que Bob a un penchant
pour le drame et la biographie, illustrant la diversité des intérêts au sein de notre audience.
Avec ces informations en main, nous abordons les questions suivantes pour mettre en pratique
et tester notre système de recommandation :
1. Lancez une requête pour obtenir les genres associés au film 'Inception'.
2. Formulez une requête qui énumère tous les films appartenant au genre 'drame'.
3. Concevez une règle recommanderFilm(Utilisateur, Film) pour suggérer des films à un
utilisateur, en fonction de l'intersection entre ses genres préférés et les genres des films
disponibles.
Page 2 / 2