37 #ifndef GUM_LEARNING_STRUCTURAL_CONSTRAINT_TABU_LIST_H 38 #define GUM_LEARNING_STRUCTURAL_CONSTRAINT_TABU_LIST_H 47 #define GUM_STRUCTURAL_CONSTRAINT_TABU_LIST_DEFAULT_SIZE 2 198 #ifndef DOXYGEN_SHOULD_SKIP_THIS 202 # define GUM_CONSTRAINT_CLASS_NAME StructuralConstraintTabuList 204 # undef GUM_CONSTRAINT_CLASS_NAME 205 #endif // DOXYGEN_SHOULD_SKIP_THIS 220 #ifndef GUM_NO_INLINE
Copyright 2005-2019 Pierre-Henri WUILLEMIN et Christophe GONZALES (LIP6) {prenom.nom}_at_lip6.fr.
The class for notifying learning algorithms of new arc additionsThis class is convenient to know at c...
void setTabuListSize(Size new_size)
sets the size of the tabu list
The class for notifying learning algorithms of arc removalsThis class is convenient to know at compil...
bool checkModificationAlone(const GraphChange &change) const
checks whether the constraints enable to perform a graph change
the base class for all structural constraints
Copyright 2005-2019 Pierre-Henri WUILLEMIN et Christophe GONZALES (LIP6) {prenom.nom}_at_lip6.fr.
virtual ~StructuralConstraintTabuList()
destructor
NodeId _TabuList__offset
the index of the oldest element
void setGraphAlone(const DiGraph &graph)
sets a new graph from which we will perform checkings
bool checkArcReversalAlone(NodeId x, NodeId y) const
checks whether the constraints enable to reverse arc (x,y)
StructuralConstraintTabuList & operator=(const StructuralConstraintTabuList &from)
copy operator
void modifyGraphAlone(const ArcAddition &change)
notify the constraint of a modification of the graph
Copyright 2005-2019 Pierre-Henri WUILLEMIN et Christophe GONZALES (LIP6) {prenom.nom}_at_lip6.fr.
bool checkArcDeletionAlone(NodeId x, NodeId y) const
checks whether the constraints enable to remove arc (x,y)
Base class for all oriented graphs.
Set of pairs of elements with fast search for both elements.
Bijection< GraphChange, NodeId > _TabuList__changes
the tabu list
bool isAlwaysInvalidAlone(const GraphChange &change) const
indicates whether a change will always violate the constraint
The class for notifying learning algorithms of arc reversalsThis class is convenient to know at compi...
The class imposing a N-sized tabu list as a structural constraints for learning algorithms.
Copyright 2005-2019 Pierre-Henri WUILLEMIN et Christophe GONZALES (LIP6) {prenom.nom}_at_lip6.fr.
std::size_t Size
In aGrUM, hashed values are unsigned long int.
StructuralConstraintTabuList()
default constructor
bool checkArcAdditionAlone(NodeId x, NodeId y) const
checks whether the constraints enable to add arc (x,y)
Size NodeId
Type for node ids.
Copyright 2005-2019 Pierre-Henri WUILLEMIN et Christophe GONZALES (LIP6) {prenom.nom}_at_lip6.fr.