Documentation du code¶
Fonctions utilitaires pour gérer des facteurs de certitude.
-
moteur_avec_variables_fc.facteurs_certitude.fc_et(fc1, fc2)¶ Calcule le facteur de certitude d’une conjonction de faits.
-
moteur_avec_variables_fc.facteurs_certitude.fc_ou(fc1, fc2)¶ Calcule le facteur de certitude d’une disjonction de faits.
-
class
moteur_avec_variables_fc.regle_avec_variables_fc.RegleAvecVariables_FC(conditions, conclusion, fc=1.0)¶ Représentation d’une règle d’inférence pour le chaînage avec variables.
-
__init__(conditions, conclusion, fc=1.0)¶ Construit une règle étant donné une liste de conditions, une conclusion et un facteur de certitude associé.
Paramètres: - conditions (list) – une collection de propositions (pouvant contenir des variables) nécessaires à déclencher la règle.
- conclusion – la proposition (pouvant contenir des variables) résultant du déclenchement de la règle.
- fc – le facteur de certitude associé.
-
__repr__()¶ Représentation d’une règle sous forme de string.
-
depend_de(fait, methode)¶ Vérifie qu’un fait fait partie, sous réserve de substitution, des conditions de la règle.
Paramètres: - fait – un fait qui doit faire partie des conditions de déclenchement.
- methode –
FiltreouUnificateur, détermine le type de pattern match à appliquer.
Retourne: un dictionnaire qui attribue un environnement à chaque condition qui peut être satisfaite par le fait pasée en paramètre.
Falsesi aucune condition n’est satisfaite par le fait.
-
satisfaite_par(faits, cond, env, env_fc, methode)¶ Vérifie que des faits suffisent, sous réserve de substitution, à déclencher la règle.
Paramètres: - faits (list) – une liste de faits.
- cond – la condition qui a donné lieu à
envpar le pattern match. - env (dict) – un environnement de départ déjà établi par
depend_de. - env_fc – le facteur de certitude associé à
env. - methode –
FiltreouUnificateur, détermine le type de pattern match à appliquer.
Retourne: une liste d’environnements qui correspondent à toutes les substitutions possibles entre les conditions de la règle et les propositions. On retourne une liste vide si au moins une condition ne peut être satisfaite.
-
-
class
moteur_avec_variables_fc.connaissance_fc.BaseConnaissances_FC¶ Une base de connaissances destinée à contenir les faits et les règles d’un système de chaînage avec facteurs de certitude.
-
__init__()¶ Construit une base de connaissances.
-
ajoute_faits(faits)¶ Ajoute une liste de faits dans la base de connaissances.
Paramètres: faits (list) – une liste de faits.
-
ajoute_regles(descriptions)¶ Ajoute des règles dans la base de connaissance.
L’argument est une liste de descriptions, chacune composée d’une liste de conditions, d’une conséquence et optionnellement d’un facteur de certitude.
Paramètres: descriptions (list) – une liste de descriptions de règles.
-
ajoute_un_fait(fait)¶ Ajoute un fait dans la base de connaissances.
Un fait est un tuple composé du fait proprement dit, c’est-à-dire une proposition sans variable, et optionnellement d’un scalaire représentant son facteur de certitude.
Paramètres: fait – un fait.
-
ajoute_une_regle(description)¶ Ajoute une règle dans la base de connaissances étant donné sa description.
Une règle est décrite par une liste (ou un tuple) de deux ou trois éléments: une liste de conditions, une conclusion et un facteur de certitude optionnel.
Les conditions et la conclusion doivent être des propositions.
Paramètres: description – une description de règle.
-
-
class
moteur_avec_variables_fc.chainage_avant_avec_variables_fc.ChainageAvantAvecVariables_FC(connaissances, methode=None)¶
Bases: moteur_sans_variables.chainage.Chainage
Un moteur d’inférence à chaînage avant avec variables.
ChainageAvantAvecVariables_FC.__init__(connaissances, methode=None)¶
Paramètres: methode – FiltreouUnificateur, détermine le type de pattern match à appliquer.Filtrepar défaut.
ChainageAvantAvecVariables_FC.affiche_solutions(indent=None)¶Affiche les solutions d’un chaînage après l’appel à
chaine.
Paramètres: indent (str) – l’identation souhaitée au début de chaque ligne (quatre espaces par défaut).
ChainageAvantAvecVariables_FC.affiche_trace(indent=None)¶Affiche la trace d’un chaînage après l’appel à
chaine.
Paramètres: indent (str) – l’identation souhaitée au début de chaque ligne (quatre espaces par défaut).
ChainageAvantAvecVariables_FC.chaine()¶Effectue le chaînage avant sur les faits et les règles contenus dans la base de connaissances.
ChainageAvantAvecVariables_FC.instancie_conclusion(regle, envs_et_fcs)¶Instancie la conclusion d’une règle pour tous les environnements.
Paramètres:
- regle – la règle dont la conclusion doit être instanciée.
- envs_et_fcs (list) – une liste de paires d’environnements et de facteurs de certitude servant à instancier la conclusion de la règle.
Retourne: une liste de propositions correspondant aux différentes instanciations de la conclusion.
ChainageAvantAvecVariables_FC.reinitialise()¶Réinitialise le moteur.
La trace et les solutions sont à nouveau vides après l’appel à cette méthode.