Go to the documentation of this file.
45 template<
class _View,
class _Val>
174 template<
class View,
class Val>
177 template<
class View,
class Val>
180 template<
class View,
class Val>
185 template<
class View,
class Val>
194 :
MeritBase<View,double>(home,vb),
f(vb.merit()) {
206 typename View::VarType
y(
x.
varimp());
208 return f()(home,
y,
i);
227 :
MeritBase<View,unsigned int>(home,vb) {}
231 :
MeritBase<View,unsigned int>(home,md) {}
272 :
MeritBase<View,double>(home,vb), action(vb.action()) {}
276 :
MeritBase<View,double>(home,ma), action(ma.action) {}
298 :
MeritBase<View,double>(home,vb), chb(vb.chb()) {}
302 :
MeritBase<View,double>(home,ma), chb(ma.chb) {}
unsigned int degree(void) const
Return degree (number of subscribed propagators and advisors)
Class for action management.
Action action
Action information.
Post propagator for SetVar x
Post propagator for SetVar SetOpType SetVar y
double operator()(const Space &home, View x, int i)
Return degree as merit for view x at position i.
View::VarType Var
Corresponding variable type.
MeritAFC(Space &home, const VarBranch< Var > &vb)
Constructor for initialization.
BranchTraits< Var >::Merit Function
Corresponding merit function type.
double operator()(const Space &home, View x, int i)
Return AFC as merit for view x at position i.
Merit class for user-defined merit function.
unsigned int operator()(const Space &home, View x, int i)
Return degree as merit for view x at position i.
Class for CHB management.
void dispose(Space &home)
Dispose view selection.
bool notice(void) const
Whether dispose must always be called (that is, notice is needed)
double operator()(const Space &home, View x, int i)
Return action as merit for view x at position i.
MeritCHB(Space &home, const VarBranch< Var > &vb)
Constructor for initialization.
#define GECODE_VALID_FUNCTION(f)
Assert that a function is valid.
bool notice(void) const
Whether dispose must always be called (that is, notice is needed)
MeritDegree(Space &home, const VarBranch< Var > &vb)
Constructor for initialization.
Variable branching information.
Gecode toplevel namespace
SharedData< Function > f
The user-defined merit function.
VarImp * varimp(void) const
Return variable implementation of variable.
double operator()(const Space &home, View x, int i)
Return action as merit for view x at position i.
Base-class for merit class.
MeritFunction(Space &home, const VarBranch< Var > &vb)
Constructor for initialization.
MeritAction(Space &home, const VarBranch< Var > &vb)
Constructor for initialization.
void dispose(Space &home)
Dispose view selection.
void dispose(Space &home)
Dispose view selection.
bool notice(void) const
Whether dispose must always be called (that is, notice is needed)
bool notice(void) const
Whether dispose must always be called (that is, notice is needed)
MeritBase(Space &home, const VarBranch< Var > &vb)
Constructor for initialization.
bool notice(void) const
Whether dispose must always be called (that is, notice is needed)
Class for AFC (accumulated failure count) management.
Exception: invalid function
MeritBase(Space &home, MeritBase &mb)
Constructor for cloning.
Post propagator for f(x \diamond_{\mathit{op}} y) \sim_r z \f$ void rel(Home home
void dispose(Space &home)
Delete view merit class.
Gecode::IntArgs i({1, 2, 3, 4})
double afc(void) const
Return accumulated failure count.
void dispose(Space &home)
Delete view merit class.