36#ifndef GECODE_FLOAT_BRANCH_HH
37#define GECODE_FLOAT_BRANCH_HH
197namespace Gecode {
namespace Float {
namespace Branch {
205namespace Gecode {
namespace Float {
namespace Branch {
278namespace Gecode {
namespace Float {
namespace Branch {
312 std::ostream& o)
const;
319namespace Gecode {
namespace Float {
namespace Branch {
323 ValSelCommitBase<FloatView,FloatNumBranch>*
Class for AFC (accumulated failure count) management.
Class for action management.
Class for CHB management.
Which values to select for assignment.
Value description class for branching.
Which values to select for branching first.
Which variable to select for branching.
double operator()(const Space &home, FloatView x, int i)
Return AFC over size as merit for view x at position i.
void dispose(Space &home)
Dispose view selection.
bool notice(void) const
Whether dispose must always be called (that is, notice is needed).
MeritAFCSize(Space &home, const VarBranch< Var > &vb)
Constructor for initialization.
bool notice(void) const
Whether dispose must always be called (that is, notice is needed).
void dispose(Space &home)
Dispose view selection.
Action action
Action information.
MeritActionSize(Space &home, const VarBranch< Var > &vb)
Constructor for initialization.
double operator()(const Space &home, FloatView x, int i)
Return action over size as merit for view x at position i.
bool notice(void) const
Whether dispose must always be called (that is, notice is needed).
void dispose(Space &home)
Dispose view selection.
double operator()(const Space &home, FloatView x, int i)
Return CHB Q-score over size as merit for view x at position i.
MeritCHBSize(Space &home, const VarBranch< Var > &vb)
Constructor for initialization.
MeritDegreeSize(Space &home, const VarBranch< Var > &vb)
Constructor for initialization.
double operator()(const Space &home, FloatView x, int i)
Return degree over size as merit for view x at position i.
double operator()(const Space &home, FloatView x, int i)
Return maximum as merit for view x at position i.
MeritMax(Space &home, const VarBranch< Var > &vb)
Constructor for initialization.
double operator()(const Space &home, FloatView x, int i)
Return minimum as merit for view x at position i.
MeritMin(Space &home, const VarBranch< Var > &vb)
Constructor for initialization.
MeritSize(Space &home, const VarBranch< Var > &vb)
Constructor for initialization.
double operator()(const Space &home, FloatView x, int i)
Return size as merit for view x at position i.
NGL * ngl(Space &home, unsigned int a, FloatView x, FloatNumBranch n) const
Create no-good literal for alternative a.
ModEvent commit(Space &home, unsigned int a, FloatView x, int i, FloatNumBranch n)
Commit view x at position i to value n for alternative a.
void print(const Space &home, unsigned int a, FloatView x, int i, FloatNumBranch n, std::ostream &o) const
Print on o the alternative with view x at position i and value n.
ValCommitLqGq(Space &home, const ValBranch< Var > &vb)
Constructor for initialization.
FloatNumBranch val(const Space &home, FloatView x, int i)
Return value of view x at position i.
ValSelGq(Space &home, const ValBranch< Var > &vb)
Constructor for initialization.
FloatNumBranch val(const Space &home, FloatView x, int i)
Return value of view x at position i.
ValSelLq(Space &home, const ValBranch< Var > &vb)
Constructor for initialization.
FloatNumBranch val(const Space &home, FloatView x, int i)
Return value of view x at position i.
bool notice(void) const
Whether dispose must always be called (that is, notice is needed).
ValSelRnd(Space &home, const ValBranch< Var > &vb)
Constructor for initialization.
void dispose(Space &home)
Delete value selection.
Rnd r
The used random number generator.
Float view for float variables.
MeritBase(Space &home, const VarBranch< Var > &vb)
No-good literal recorded during search.
Value branching information.
ValCommit(Space &home, const ValBranch< Var > &vb)
Base class for value selection and commit.
ValSel(Space &home, const ValBranch< Var > &vb)
Variable branching information.
Abstract class for view selection.
#define GECODE_FLOAT_EXPORT
ValSelCommitBase< FloatView, FloatNumBranch > * valselcommit(Space &home, const FloatValBranch &svb)
Return value and commit for float views.
ViewSel< FloatView > * viewsel(Space &home, const FloatVarBranch &fvb)
Return view selectors for float views.
Gecode toplevel namespace
int ModEvent
Type for modification events.