Class NoGoodsCollector<T extends IntVar>

  • All Implemented Interfaces:
    ExitChildListener<T>, ExitListener, TimeOutListener

    public class NoGoodsCollector<T extends IntVar>
    extends java.lang.Object
    implements ExitChildListener<T>, TimeOutListener, ExitListener
    NoGoodCollector collects no-goods from search when timeout has occurred. As time-out is executed the search will exit from deeper search levels and no-goods collector will collect neccessary information to create no-goods when finally exiting the search. The no-goods will be immmediately imposed when collector is informed about exiting the search.
    Version:
    4.7
    • Field Detail

      • noGoodsVariables

        java.util.List<java.util.List<T extends IntVar>> noGoodsVariables
      • noGoodsValues

        java.util.List<java.util.List<java.lang.Integer>> noGoodsValues
      • timeOut

        public boolean timeOut
        It specifies if the timeout has occurred and search is being terminated.
    • Constructor Detail

      • NoGoodsCollector

        public NoGoodsCollector()
    • Method Detail

      • executedAtTimeOut

        public void executedAtTimeOut​(int noSolutions)
        It is executed right after time out is determined.
        Specified by:
        executedAtTimeOut in interface TimeOutListener
        Parameters:
        noSolutions - number of solutions found before the timeout occurred.
      • leftChild

        public boolean leftChild​(T var,
                                 int value,
                                 boolean status)
        It is executed after exiting left child. Status specifies if the solution is found or not. The return parameter specifies if the search should continue according to its course or be forced to exit the parent node of the left child.
        Specified by:
        leftChild in interface ExitChildListener<T extends IntVar>
        Parameters:
        var - variable used in the choice point.
        value - value used in the choice point.
        status - true if the solution was found in the child subtree, false otherwise.
        Returns:
        true if the search should continue undisturbed, false if it should exit the current node with false
      • leftChild

        public boolean leftChild​(PrimitiveConstraint choice,
                                 boolean status)
        Description copied from interface: ExitChildListener
        It is executed after exiting the left child.
        Specified by:
        leftChild in interface ExitChildListener<T extends IntVar>
        Parameters:
        choice - primitive constraint used as the base of the choice point.
        status - true if the solution was found in the child subtree, false otherwise.
        Returns:
        true if the search should continue undisturbed to the right node, false if it should exit the current node with false
      • rightChild

        public void rightChild​(T var,
                               int value,
                               boolean status)
        Description copied from interface: ExitChildListener
        It is executed after exiting the right child.
        Specified by:
        rightChild in interface ExitChildListener<T extends IntVar>
        Parameters:
        var - variable used in the choice point.
        value - value used in the choice point.
        status - true if the solution was found in the child subtree, false otherwise. exit the current node with false
      • rightChild

        public void rightChild​(PrimitiveConstraint choice,
                               boolean status)
        Description copied from interface: ExitChildListener
        It is executed after exiting the right child.
        Specified by:
        rightChild in interface ExitChildListener<T extends IntVar>
        Parameters:
        choice - primitive constraint used as the base of the choice point.
        status - true if the solution was found in the child subtree, false otherwise. exit the current node with false
      • executedAtExit

        public void executedAtExit​(Store store,
                                   int solutionsNo)
        Description copied from interface: ExitListener
        It is executed right after time out is determined.
        Specified by:
        executedAtExit in interface ExitListener
        Parameters:
        store - store in the context of which the search took place.
        solutionsNo - the number of solutions found.
      • setChildrenListeners

        public void setChildrenListeners​(ExitListener[] children)
        Description copied from interface: ExitListener
        It sets the children of this exit listener.
        Specified by:
        setChildrenListeners in interface ExitListener
        Parameters:
        children - an array containing the children.
      • setChildrenListeners

        public void setChildrenListeners​(ExitListener child)
        Description copied from interface: ExitListener
        It sets one child listener.
        Specified by:
        setChildrenListeners in interface ExitListener
        Parameters:
        child - the only child listener used by this listener.
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object