Documentation du code

class moteur_psc_planification.axiomecadre.ContrainteAxiomeCadre(var_pre, ops, var_post)

Bases: moteur_psc.contrainte.Contrainte

Contrainte forçant l’utilisation d’opérateurs pour agir sur les variables d’un problème.

ContrainteAxiomeCadre.__init__(var_pre, ops, var_post)
Paramètres:
  • var_pre – la variable au début de l’état - prop(Si).
  • var_ops (list) – les variables correspondant aux opérateurs qui ont prop comme postcondition.
  • var_post – la variable à la fin de l’état - prop(Si+1).
ContrainteAxiomeCadre.dimension()
Retourne:le nombre de variables concernées par la contrainte.
ContrainteAxiomeCadre.est_valide(var, val)

Evalue la validité de la contrainte pour une valeur de variable donnée.

L’évaluation est paresseuse : si au moins une variable n’est pas instanciée, on retourne True. Sinon, si la variable change de valeur, alors au moins une variable d’opérateur doit être True.

Paramètres:
  • var – la variable à laquelle assigner la valeur val.
  • val – la valeur à assigner à var.
Retourne:

True si la contrainte est valide pour la paire variable/valeur passée en paramètre.

ContrainteAxiomeCadre.propage(var)

Propage la nouvelle valeur d’une variable afin de vérifier que la contrainte est toujours satisfaisable.

La propagation est paresseuse: elle retourne True si plus d’une variable n’a pas encore la valeur None.

Paramètres:var – la variable ayant reçu une nouvelle valeur.
Retourne:True si la contrainte peut encore être satisfaite.
ContrainteAxiomeCadre.reviser()

Réviser n’est pas définie pour les contraintes n-aires.

Retourne:False.
class moteur_planification.etat.Etat(no_etat, propositions, operateurs, etat_prec=None)

Un état du plan.

__init__(no_etat, propositions, operateurs, etat_prec=None)
Paramètres:
  • no_etat – numéro de l’état dans le plan.
  • propositions (list) – liste des propositions de planification.
  • operateurs (list) – liste des opérateurs applicables dans le plan.
  • etat_prec – l’état précédent.
construire_vars_operateurs(ops)

Construit les variables de l’état représentant l’utilisation des opérateurs.

construire_vars_propositions(props)

Construit les variables de l’état représentant les propositions.

Les variables initiales sont les variables finales de l’état précédent sauf lorsqu’il n’en existe pas.

variables()

La liste des variables de l’état (variables initiales, finales et variables d’opérateurs).

Retourne:une liste de variables.
class moteur_planification.operateur.Operateur(nom, precond, postcond)

Opérateur de planification.

__init__(nom, precond, postcond)
Paramètres:
  • nom (str) – nom représentant l’opérateur.
  • precond (list) – liste de propositions nécessaires à l’opération.
  • postcond (list) – liste de propositions résultant de l’opération.