Generated on Mon Jul 6 18:09:24 2009 for Gecode by doxygen 1.5.9

Branching
[Using finite integer sets]


Enumerations

enum  Gecode::SetVarBranch {
  Gecode::SET_VAR_NONE = 0, Gecode::SET_VAR_RND, Gecode::SET_VAR_DEGREE_MIN, Gecode::SET_VAR_DEGREE_MAX,
  Gecode::SET_VAR_MIN_MIN, Gecode::SET_VAR_MIN_MAX, Gecode::SET_VAR_MAX_MIN, Gecode::SET_VAR_MAX_MAX,
  Gecode::SET_VAR_SIZE_MIN, Gecode::SET_VAR_SIZE_MAX, Gecode::SET_VAR_SIZE_DEGREE_MIN, Gecode::SET_VAR_SIZE_DEGREE_MAX
}
 Which variable to select for branching. More...
enum  Gecode::SetValBranch {
  Gecode::SET_VAL_MIN_INC, Gecode::SET_VAL_MIN_EXC, Gecode::SET_VAL_MED_INC, Gecode::SET_VAL_MED_EXC,
  Gecode::SET_VAL_MAX_INC, Gecode::SET_VAL_MAX_EXC, Gecode::SET_VAL_RND_INC, Gecode::SET_VAL_RND_EXC
}
 Which values to select first for branching. More...

Functions

void Gecode::branch (Space &home, const SetVarArgs &x, SetVarBranch vars, SetValBranch vals, const VarBranchOptions &o_vars=VarBranchOptions::def, const ValBranchOptions &o_vals=ValBranchOptions::def)
 Branch over x with variable selection vars and value selection vals.
void Gecode::branch (Space &home, const SetVarArgs &x, const TieBreakVarBranch< SetVarBranch > &vars, SetValBranch vals, const TieBreakVarBranchOptions &o_vars=TieBreakVarBranchOptions::def, const ValBranchOptions &o_vals=ValBranchOptions::def)
 Branch over x with tie-breaking variable selection vars and value selection vals.

Enumeration Type Documentation

Which variable to select for branching.

Enumerator:
SET_VAR_NONE  First unassigned.
SET_VAR_RND  Random (uniform, for tie breaking).
SET_VAR_DEGREE_MIN  With smallest degree.
SET_VAR_DEGREE_MAX  With largest degree.
SET_VAR_MIN_MIN  With smallest minimum unknown element.
SET_VAR_MIN_MAX  With largest minimum unknown element.
SET_VAR_MAX_MIN  With smallest maximum unknown element.
SET_VAR_MAX_MAX  With largest maximum unknown element.
SET_VAR_SIZE_MIN  With smallest unknown set.
SET_VAR_SIZE_MAX  With largest unknown set.
SET_VAR_SIZE_DEGREE_MIN  With smallest domain size divided by degree.
SET_VAR_SIZE_DEGREE_MAX  With largest domain size divided by degree.

Definition at line 967 of file set.hh.

Which values to select first for branching.

Enumerator:
SET_VAL_MIN_INC  Include smallest element.
SET_VAL_MIN_EXC  Exclude smallest element.
SET_VAL_MED_INC  Include median element (rounding downwards).
SET_VAL_MED_EXC  Exclude median element (rounding downwards).
SET_VAL_MAX_INC  Include largest element.
SET_VAL_MAX_EXC  Exclude largest element.
SET_VAL_RND_INC  Include random element.
SET_VAL_RND_EXC  Exclude random element.

Definition at line 983 of file set.hh.


Function Documentation

void Gecode::branch ( Gecode::Space home,
const SetVarArgs &  x,
SetVarBranch  vars,
SetValBranch  vals,
const Gecode::VarBranchOptions o_vars,
const Gecode::ValBranchOptions o_vals 
)

Branch over x with variable selection vars and value selection vals.

Definition at line 95 of file post-view.cpp.

void Gecode::branch ( Gecode::Space home,
const SetVarArgs &  x,
const Gecode::TieBreakVarBranch< SetVarBranch > &  vars,
SetValBranch  vals,
const Gecode::TieBreakVarBranchOptions o_vars,
const Gecode::ValBranchOptions o_vals 
)

Branch over x with tie-breaking variable selection vars and value selection vals.

Definition at line 185 of file post-view.cpp.