Generated on Fri Mar 20 15:56:36 2015 for Gecode by doxygen 1.6.3

Branching
[Using integer set variables and constraints]

Classes

class  Gecode::SetAFC
 Recording AFC information for set variables. More...
class  Gecode::SetActivity
 Recording activities for set variables. More...
class  Gecode::SetVarBranch
 Which variable to select for branching. More...
class  Gecode::SetValBranch
 Which values to select for branching first. More...
class  Gecode::SetAssign
 Which value to select for assignment. More...

Modules

 Selecting set variables
 Value selection for set variables
 Assigning set variables

Typedefs

typedef bool(* Gecode::SetBranchFilter )(const Space &home, SetVar x, int i)
 Branch filter function type for set variables.
typedef double(* Gecode::SetBranchMerit )(const Space &home, SetVar x, int i)
 Branch merit function type for set variables.
typedef int(* Gecode::SetBranchVal )(const Space &home, SetVar x, int i)
 Branch value function type for set variables.
typedef void(* Gecode::SetBranchCommit )(Space &home, unsigned int a, SetVar x, int i, int n)
 Branch commit function type for set variables.

Functions

BrancherHandle Gecode::branch (Home home, const SetVarArgs &x, SetVarBranch vars, SetValBranch vals, SetBranchFilter bf=NULL, SetVarValPrint vvp=NULL)
 Branch over x with variable selection vars and value selection vals.
BrancherHandle Gecode::branch (Home home, const SetVarArgs &x, TieBreak< SetVarBranch > vars, SetValBranch vals, SetBranchFilter bf=NULL, SetVarValPrint vvp=NULL)
 Branch over x with tie-breaking variable selection vars and value selection vals.
BrancherHandle Gecode::branch (Home home, SetVar x, SetValBranch vals, SetVarValPrint vvp=NULL)
 Branch over x with value selection vals.
BrancherHandle Gecode::assign (Home home, const SetVarArgs &x, SetAssign vals, SetBranchFilter bf=NULL, SetVarValPrint vvp=NULL)
 Assign all x with value selection vals.
BrancherHandle Gecode::assign (Home home, SetVar x, SetAssign vals, SetVarValPrint vvp=NULL)
 Assign x with value selection vals.
BrancherHandle Gecode::branch (Home home, const SetVarArgs &x, SetVarBranch vars, SetValBranch vals, const Symmetries &syms, SetBranchFilter bf=NULL, SetVarValPrint vvp=NULL)
 Branch over x with variable selection vars and value selection vals with symmetry breaking.
BrancherHandle Gecode::branch (Home home, const SetVarArgs &x, TieBreak< SetVarBranch > vars, SetValBranch vals, const Symmetries &syms, SetBranchFilter bf=NULL, SetVarValPrint vvp=NULL)
 Branch over x with tie-breaking variable selection vars and value selection vals with symmetry breaking.

Typedef Documentation

typedef bool(* Gecode::SetBranchFilter)(const Space &home, SetVar x, int i)

Branch filter function type for set variables.

The variable x is considered for selection and i refers to the variable's position in the original array passed to the brancher.

Definition at line 1102 of file set.hh.

typedef double(* Gecode::SetBranchMerit)(const Space &home, SetVar x, int i)

Branch merit function type for set variables.

The function must return a merit value for the variable x. The value i refers to the variable's position in the original array passed to the brancher.

Definition at line 1114 of file set.hh.

typedef int(* Gecode::SetBranchVal)(const Space &home, SetVar x, int i)

Branch value function type for set variables.

Returns a value for the variable x that is to be used in the corresponding branch commit function. The integer i refers to the variable's position in the original array passed to the brancher.

Definition at line 1126 of file set.hh.

typedef void(* Gecode::SetBranchCommit)(Space &home, unsigned int a, SetVar x, int i, int n)

Branch commit function type for set variables.

The function must post a constraint on the variable x which corresponds to the alternative a. The integer i refers to the variable's position in the original array passed to the brancher. The value n is the value computed by the corresponding branch value function.

Definition at line 1139 of file set.hh.


Function Documentation

BrancherHandle Gecode::branch ( Home  home,
const SetVarArgs &  x,
SetVarBranch  vars,
SetValBranch  vals,
SetBranchFilter  bf,
SetVarValPrint  vvp 
)

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

BrancherHandle Gecode::branch ( Home  home,
const SetVarArgs &  x,
TieBreak< SetVarBranch >  vars,
SetValBranch  vals,
SetBranchFilter  bf,
SetVarValPrint  vvp 
)

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

BrancherHandle Gecode::branch ( Home  home,
SetVar  x,
SetValBranch  vals,
SetVarValPrint  vvp 
)

Branch over x with value selection vals.

BrancherHandle Gecode::assign ( Home  home,
const SetVarArgs &  x,
SetAssign  sa,
SetBranchFilter  bf,
SetVarValPrint  vvp 
)

Assign all x with value selection vals.

BrancherHandle Gecode::assign ( Home  home,
SetVar  x,
SetAssign  sa,
SetVarValPrint  vvp 
)

Assign x with value selection vals.

BrancherHandle Gecode::branch ( Home  home,
const SetVarArgs &  x,
SetVarBranch  vars,
SetValBranch  vals,
const Symmetries &  syms,
SetBranchFilter  bf,
SetVarValPrint  vvp 
)

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

BrancherHandle Gecode::branch ( Home  home,
const SetVarArgs &  x,
TieBreak< SetVarBranch >  vars,
SetValBranch  vals,
const Symmetries &  syms,
SetBranchFilter  bf,
SetVarValPrint  vvp 
)

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