Package examples

Class HouseSolver


  • public class HouseSolver
    extends java.lang.Object
    Démonstration d'un solveur de contraintes sur un exemple précis d'une maison pour le fil rouge.
    • Field Summary

      Fields 
      Modifier and Type Field Description
      static int LENGTH
      Largeur et longueur par défaut pour cette classe là uniquement.
      static int WIDTH
      Largeur et longueur par défaut pour cette classe là uniquement.
    • Constructor Summary

      Constructors 
      Constructor Description
      HouseSolver()  
    • Method Summary

      All Methods Static Methods Concrete Methods 
      Modifier and Type Method Description
      static void main​(java.lang.String[] args)
      Méthode principale.
      static void printHousePlan​(java.util.Map<Variable,​java.lang.Object> results, java.lang.String houseName, HouseExample house, java.util.Map<java.lang.String,​Variable> pieces)
      Méthode permettant d'afficher proprement les pièces de la maison.
      static void printResults​(java.util.Map<Variable,​java.lang.Object> results, java.lang.String houseName)
      Affiche les résultats du solveur.
      static java.util.Map<Variable,​java.lang.Object> solveWithBacktrack​(HouseExample house)
      Résout le problème de maison avec l'algorithme "backtrack".
      static java.util.Map<Variable,​java.lang.Object> solveWithHeuristicMAC​(HouseExample house)
      Résout le problème de maison avec l'algorithme "MAC" disposant d'heuristiques de variable et de valeur.
      static java.util.Map<Variable,​java.lang.Object> solveWithHeuristicMAC​(HouseExample house, VariableHeuristic variableHeuristic, ValueHeuristic valueHeuristic)
      Résout le problème de maison avec l'algorithme "MAC" disposant d'heuristiques de variable et de valeur.
      static java.util.Map<Variable,​java.lang.Object> solveWithMAC​(HouseExample house)
      Résout le problème de maison avec l'algorithme "MAC".
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • WIDTH

        public static final int WIDTH
        Largeur et longueur par défaut pour cette classe là uniquement.
        See Also:
        Constant Field Values
      • LENGTH

        public static final int LENGTH
        Largeur et longueur par défaut pour cette classe là uniquement.
        See Also:
        Constant Field Values
    • Constructor Detail

      • HouseSolver

        public HouseSolver()
    • Method Detail

      • solveWithBacktrack

        public static final java.util.Map<Variable,​java.lang.Object> solveWithBacktrack​(HouseExample house)
        Résout le problème de maison avec l'algorithme "backtrack".
        Parameters:
        house - maison
        Returns:
        solution
      • solveWithMAC

        public static final java.util.Map<Variable,​java.lang.Object> solveWithMAC​(HouseExample house)
        Résout le problème de maison avec l'algorithme "MAC".
        Parameters:
        house - maison
        Returns:
        solution
      • solveWithHeuristicMAC

        public static final java.util.Map<Variable,​java.lang.Object> solveWithHeuristicMAC​(HouseExample house)
        Résout le problème de maison avec l'algorithme "MAC" disposant d'heuristiques de variable et de valeur.
        Parameters:
        house - maison
        Returns:
        solution
      • solveWithHeuristicMAC

        public static final java.util.Map<Variable,​java.lang.Object> solveWithHeuristicMAC​(HouseExample house,
                                                                                                 VariableHeuristic variableHeuristic,
                                                                                                 ValueHeuristic valueHeuristic)
        Résout le problème de maison avec l'algorithme "MAC" disposant d'heuristiques de variable et de valeur.
        Parameters:
        house - maison
        Returns:
        solution
      • main

        public static void main​(java.lang.String[] args)
        Méthode principale.
        Parameters:
        args - arguments passés au terminal lors de l'exécution de cette classe
      • printResults

        public static final void printResults​(java.util.Map<Variable,​java.lang.Object> results,
                                              java.lang.String houseName)
        Affiche les résultats du solveur.
        Parameters:
        results - résultats
        houseName - nom de la maison
      • printHousePlan

        public static final void printHousePlan​(java.util.Map<Variable,​java.lang.Object> results,
                                                java.lang.String houseName,
                                                HouseExample house,
                                                java.util.Map<java.lang.String,​Variable> pieces)
        Méthode permettant d'afficher proprement les pièces de la maison.
        Parameters:
        results - résultats
        houseName - nom de la maison
        house - maison
        pieces - dictionnaire de pièces pour faciliter la récupération des pièces