Package solvers
Class ArcConsistency
- java.lang.Object
-
- solvers.ArcConsistency
-
public class ArcConsistency extends java.lang.ObjectCette classe décrit une arc-consistence locale sur des contraintes.
-
-
Constructor Summary
Constructors Constructor Description ArcConsistency(java.util.Set<Constraint> constraints)Constructeur par défaut.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanaddConstraint(Constraint... constraints)Ajoute des contraintes à l'ensemble de contraintesconstraints.static booleanenforce(Constraint constraint, java.util.Map<Variable,java.util.Set<java.lang.Object>> domains)Rend tous les domaines arc-cohérents.booleanenforceArcConsistency(java.util.Map<Variable,java.util.Set<java.lang.Object>> domains)Rend tous les domaines arc-cohérents avec les contraintes stockées dans l'attributconstraints.static booleanfilter(Variable var1, java.util.Set<java.lang.Object> var1Domain, Variable var2, java.util.Set<java.lang.Object> var2Domain, Constraint constraint)Supprime les valeurs qui ne sont pas arc-cohérente avec la contrainteconstraint.java.util.Set<Constraint>getConstraints()Récupère l'ensemble des contraintes de l'instance.booleanremoveConstraint(Constraint... constraints)Enlève des contraintes à l'ensemble de contraintesconstraints.
-
-
-
Constructor Detail
-
ArcConsistency
public ArcConsistency(java.util.Set<Constraint> constraints)
Constructeur par défaut.- Parameters:
constraints- ensemble de contraintes
-
-
Method Detail
-
filter
public static boolean filter(Variable var1, java.util.Set<java.lang.Object> var1Domain, Variable var2, java.util.Set<java.lang.Object> var2Domain, Constraint constraint)
Supprime les valeurs qui ne sont pas arc-cohérente avec la contrainteconstraint.- Parameters:
var1- première variablevar1Domain- domain de la première variablevar2- seconde variablevar2Domain- domain de la seconde variableconstraint- contrainte qui porte sur les deux variablesvar1etvar2- Returns:
- booléen qui détermine si le domaine a changé
-
enforce
public static boolean enforce(Constraint constraint, java.util.Map<Variable,java.util.Set<java.lang.Object>> domains)
Rend tous les domaines arc-cohérents.- Parameters:
constraint- contraintedomains- domaines des variables concernées par la contrainte- Returns:
- booléen qui détermine si au moins un des domaines a été modifié
-
enforceArcConsistency
public boolean enforceArcConsistency(java.util.Map<Variable,java.util.Set<java.lang.Object>> domains)
Rend tous les domaines arc-cohérents avec les contraintes stockées dans l'attributconstraints.- Parameters:
domains- domaines des variables concernées par la contrainte- Returns:
- booléen qui détermine si au moins un des domaines a été modifié
-
getConstraints
public java.util.Set<Constraint> getConstraints()
Récupère l'ensemble des contraintes de l'instance.- Returns:
- ensemble des contraintes de l'instance
- See Also:
constraints
-
addConstraint
public boolean addConstraint(Constraint... constraints)
Ajoute des contraintes à l'ensemble de contraintesconstraints.- Parameters:
constraints- contraintes à ajouter
-
removeConstraint
public boolean removeConstraint(Constraint... constraints)
Enlève des contraintes à l'ensemble de contraintesconstraints.- Parameters:
constraints- contraintes à enlever
-
-