Generated on Thu Mar 22 10:39:49 2012 for Gecode by doxygen 1.6.3

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_AFC_MIN, Gecode::SET_VAR_AFC_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, Gecode::SET_VAR_SIZE_AFC_MIN, Gecode::SET_VAR_SIZE_AFC_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 (Home 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 (Home 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.
void Gecode::branch (Home home, SetVar x, SetValBranch vals, const ValBranchOptions &o_vals=ValBranchOptions::def)
 Branch over x with 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_AFC_MIN 

With smallest accumulated failure count.

SET_VAR_AFC_MAX 

With largest accumulated failure count.

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.

SET_VAR_SIZE_AFC_MIN 

With smallest domain size divided by accumulated failure count.

SET_VAR_SIZE_AFC_MAX 

With largest domain size divided by accumulated failure count.

Definition at line 1062 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 1082 of file set.hh.


Function Documentation

void Gecode::branch ( Gecode::Home  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.

void Gecode::branch ( Gecode::Home  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.

void Gecode::branch ( Home  home,
SetVar  x,
SetValBranch  vals,
const ValBranchOptions &  o_vals 
)

Branch over x with value selection vals.