Gecode::FlatZinc Namespace Reference
Interpreter for the FlatZinc language. More...
Namespaces | |
namespace | AST |
Abstract syntax trees for the FlatZinc interpreter. | |
Classes | |
class | IntBoolVarBranch |
Which integer or Boolean variable to select for branching. More... | |
class | MeritMaxAFC |
Select by maximal AFC. More... | |
class | MeritMaxAFCSize |
Select by maximal AFC over size. More... | |
class | MeritMaxAction |
Select by maximal Action. More... | |
class | MeritMaxActionSize |
Select by maximal Action over size. More... | |
class | MeritMaxCHB |
Select by maximal CHB. More... | |
class | MeritMaxCHBSize |
Select by maximal CHB over size. More... | |
class | PosIntChoice |
Choice storing position and value More... | |
class | IntBoolBrancherBase |
Base-class for brancher for integer and Boolean views. More... | |
class | IntBoolBrancher |
Brancher for integer and Boolean views. More... | |
class | ConExpr |
Abstract representation of a constraint. More... | |
class | AuxVarBrancher |
Branching on the introduced variables. More... | |
class | BranchInformationO |
class | FlatZincSpaceInitData |
class | GistEngine |
Traits class for search engines. More... | |
class | GistEngine< DFS< S > > |
Specialization for DFS. More... | |
class | GistEngine< BAB< S > > |
Specialization for BAB. More... | |
class | FZPrintingInspector |
An inspector for printing simple text output. More... | |
class | FZPrintingComparator |
class | FlatZincGetInfo |
struct | Option |
Optional value. More... | |
class | OutputOrder |
Strict weak ordering for output items. More... | |
class | SymbolEntry |
Entries in the symbol table. More... | |
class | ParserState |
State of the FlatZinc parser More... | |
class | Registry |
Map from constraint identifier to constraint posting functions. More... | |
class | SymbolTable |
Symbol table mapping identifiers (strings) to values. More... | |
class | Alias |
Alias for a variable specification More... | |
class | VarSpec |
Base class for variable specifications. More... | |
class | IntVarSpec |
Specification for integer variables. More... | |
class | BoolVarSpec |
Specification for Boolean variables. More... | |
class | FloatVarSpec |
Specification for floating point variables. More... | |
class | SetVarSpec |
Specification for set variables. More... | |
class | Printer |
Output support class for FlatZinc interpreter. More... | |
class | FlatZincOptions |
Options for running FlatZinc models More... | |
class | BranchInformation |
class | FlatZincSpace |
A space that can be initialized with a FlatZinc model. More... | |
class | Error |
Exception class for FlatZinc errors More... | |
Typedefs | |
typedef std::pair< std::string, Option< std::vector< int > * > > | intvartype |
typedef std::pair< std::string, VarSpec * > | varspec |
Enumerations | |
enum | SymbolType { ST_INTVAR, ST_BOOLVAR, ST_FLOATVAR, ST_SETVAR, ST_INTVARARRAY, ST_BOOLVARARRAY, ST_SETVARARRAY, ST_FLOATVARARRAY, ST_INTVALARRAY, ST_BOOLVALARRAY, ST_SETVALARRAY, ST_FLOATVALARRAY, ST_INT, ST_BOOL, ST_SET, ST_FLOAT } |
Types of symbols. More... | |
Functions | |
void | branch (Home home, const IntVarArgs &x, const BoolVarArgs &y, IntBoolVarBranch vars, IntValBranch vals) |
Branch function for integer and Boolean variables. | |
BoolValBranch | i2b (const IntValBranch &ivb) |
Map respective integer value selection to Boolean value selection. | |
template<class Var > | |
void | varValPrint (const Space &home, const Brancher &b, unsigned int a, Var, int i, const int &n, std::ostream &o) |
void | varValPrintF (const Space &home, const Brancher &b, unsigned int a, FloatVar, int i, const FloatNumBranch &nl, std::ostream &o) |
IntSet | vs2is (IntVarSpec *vs) |
int | vs2bsl (BoolVarSpec *bs) |
int | vs2bsh (BoolVarSpec *bs) |
TieBreak< IntVarBranch > | ann2ivarsel (AST::Node *ann, Rnd rnd, double decay) |
IntValBranch | ann2ivalsel (AST::Node *ann, std::string &r0, std::string &r1, Rnd rnd) |
IntAssign | ann2asnivalsel (AST::Node *ann, Rnd rnd) |
TieBreak< BoolVarBranch > | ann2bvarsel (AST::Node *ann, Rnd rnd, double decay) |
BoolValBranch | ann2bvalsel (AST::Node *ann, std::string &r0, std::string &r1, Rnd rnd) |
BoolAssign | ann2asnbvalsel (AST::Node *ann, Rnd rnd) |
SetVarBranch | ann2svarsel (AST::Node *ann, Rnd rnd, double decay) |
SetValBranch | ann2svalsel (AST::Node *ann, std::string r0, std::string r1, Rnd rnd) |
TieBreak< FloatVarBranch > | ann2fvarsel (AST::Node *ann, Rnd rnd, double decay) |
FloatValBranch | ann2fvalsel (AST::Node *ann, std::string r0, std::string r1) |
void | flattenAnnotations (AST::Array *ann, std::vector< AST::Node * > &out) |
void | printIntVar (std::ostream &os, const std::string name, const Int::IntView &x) |
void | printBoolVar (std::ostream &os, const std::string name, const BoolVar &b) |
void | printFloatVar (std::ostream &os, const std::string name, const Float::FloatView &f) |
SymbolEntry | se_iv (int i) |
Construct integer variable entry. | |
SymbolEntry | se_bv (int i) |
Construct Boolean variable entry. | |
SymbolEntry | se_fv (int i) |
Construct float variable entry. | |
SymbolEntry | se_sv (int i) |
Construct set variable entry. | |
SymbolEntry | se_iva (int i) |
Construct integer variable array entry. | |
SymbolEntry | se_bva (int i) |
Construct Boolean variable array entry. | |
SymbolEntry | se_fva (int i) |
Construct float variable array entry. | |
SymbolEntry | se_sva (int i) |
Construct set variable array entry. | |
SymbolEntry | se_i (int i) |
Construct integer entry. | |
SymbolEntry | se_b (bool b) |
Construct Boolean entry. | |
SymbolEntry | se_s (int i) |
Construct set entry. | |
SymbolEntry | se_f (int i) |
Construct float entry. | |
SymbolEntry | se_ia (int i) |
Construct integer array entry. | |
SymbolEntry | se_ba (int i) |
Construct Boolean array entry. | |
SymbolEntry | se_sa (int i) |
Construct set array entry. | |
SymbolEntry | se_fa (int i) |
Construct float array entry. | |
Registry & | registry (void) |
Return global registry object. | |
GECODE_FLATZINC_EXPORT FlatZincSpace * | parse (const std::string &fileName, Printer &p, std::ostream &err=std::cerr, FlatZincSpace *fzs=NULL, Rnd &rnd=defrnd) |
Parse FlatZinc file fileName into fzs and return it. | |
GECODE_FLATZINC_EXPORT FlatZincSpace * | parse (std::istream &is, Printer &p, std::ostream &err=std::cerr, FlatZincSpace *fzs=NULL, Rnd &rnd=defrnd) |
Parse FlatZinc from is into fzs and return it. | |
Variables | |
Rnd | defrnd (0) |
Uninitialized default random number generator. | |
| |
IntBoolVarBranch | INTBOOL_VAR_AFC_MAX (double d=1.0) |
Variable selection for both integer and Boolean variables. | |
IntBoolVarBranch | INTBOOL_VAR_AFC_MAX (IntAFC ia, BoolAFC ba) |
Select variable with largest accumulated failure count. | |
IntBoolVarBranch | INTBOOL_VAR_ACTION_MAX (double d=1.0) |
Select variable with highest action. | |
IntBoolVarBranch | INTBOOL_VAR_ACTION_MAX (IntAction ia, BoolAction ba) |
Select variable with highest action. | |
IntBoolVarBranch | INTBOOL_VAR_CHB_MAX (double d=1.0) |
Select variable with largest CHB Q-score. | |
IntBoolVarBranch | INTBOOL_VAR_CHB_MAX (IntCHB ic, BoolCHB bc) |
Select variable with largest CHB Q-score. | |
IntBoolVarBranch | INTBOOL_VAR_AFC_SIZE_MAX (double d=1.0) |
Select variable with largest accumulated failure count divided by domain size. | |
IntBoolVarBranch | INTBOOL_VAR_AFC_SIZE_MAX (IntAFC ia, BoolAFC ba) |
Select variable with largest accumulated failure count divided by domain size. | |
IntBoolVarBranch | INTBOOL_VAR_ACTION_SIZE_MAX (double d=1.0) |
Select variable with largest action divided by domain size. | |
IntBoolVarBranch | INTBOOL_VAR_ACTION_SIZE_MAX (IntAction ia, BoolAction ba) |
Select variable with largest action divided by domain size. | |
IntBoolVarBranch | INTBOOL_VAR_CHB_SIZE_MAX (double d=1.0) |
Select variable with largest CHB Q-score divided by domain size. | |
IntBoolVarBranch | INTBOOL_VAR_CHB_SIZE_MAX (IntCHB ic, BoolCHB bc) |
Select variable with largest CHB Q-score divided by domain size. |
Detailed Description
Interpreter for the FlatZinc language.
The Gecode::FlatZinc namespace contains all functionality required to parse and solve constraint models written in the FlatZinc language.
Typedef Documentation
typedef std::pair<std::string,Option<std::vector<int>* > > Gecode::FlatZinc::intvartype |
typedef std::pair<std::string, VarSpec*> Gecode::FlatZinc::varspec |
Enumeration Type Documentation
Function Documentation
GECODE_FLATZINC_EXPORT void Gecode::FlatZinc::branch | ( | Home | home, | |
const IntVarArgs & | x, | |||
const BoolVarArgs & | y, | |||
IntBoolVarBranch | vars, | |||
IntValBranch | vals | |||
) |
Branch function for integer and Boolean variables.
IntBoolVarBranch Gecode::FlatZinc::INTBOOL_VAR_AFC_MAX | ( | double | d = 1.0 |
) | [inline] |
Variable selection for both integer and Boolean variables.
Select variable with largest accumulated failure count
Definition at line 114 of file branch.hpp.
IntBoolVarBranch Gecode::FlatZinc::INTBOOL_VAR_AFC_MAX | ( | IntAFC | ia, | |
BoolAFC | ba | |||
) | [inline] |
Select variable with largest accumulated failure count.
Definition at line 118 of file branch.hpp.
IntBoolVarBranch Gecode::FlatZinc::INTBOOL_VAR_ACTION_MAX | ( | double | d = 1.0 |
) | [inline] |
Select variable with highest action.
Definition at line 122 of file branch.hpp.
IntBoolVarBranch Gecode::FlatZinc::INTBOOL_VAR_ACTION_MAX | ( | IntAction | ia, | |
BoolAction | ba | |||
) | [inline] |
Select variable with highest action.
Definition at line 126 of file branch.hpp.
IntBoolVarBranch Gecode::FlatZinc::INTBOOL_VAR_CHB_MAX | ( | double | d = 1.0 |
) | [inline] |
Select variable with largest CHB Q-score.
Definition at line 130 of file branch.hpp.
IntBoolVarBranch Gecode::FlatZinc::INTBOOL_VAR_CHB_MAX | ( | IntCHB | ic, | |
BoolCHB | bc | |||
) | [inline] |
Select variable with largest CHB Q-score.
Definition at line 134 of file branch.hpp.
IntBoolVarBranch Gecode::FlatZinc::INTBOOL_VAR_AFC_SIZE_MAX | ( | double | d = 1.0 |
) | [inline] |
Select variable with largest accumulated failure count divided by domain size.
Definition at line 138 of file branch.hpp.
IntBoolVarBranch Gecode::FlatZinc::INTBOOL_VAR_AFC_SIZE_MAX | ( | IntAFC | ia, | |
BoolAFC | ba | |||
) | [inline] |
Select variable with largest accumulated failure count divided by domain size.
Definition at line 142 of file branch.hpp.
IntBoolVarBranch Gecode::FlatZinc::INTBOOL_VAR_ACTION_SIZE_MAX | ( | double | d = 1.0 |
) | [inline] |
Select variable with largest action divided by domain size.
Definition at line 146 of file branch.hpp.
IntBoolVarBranch Gecode::FlatZinc::INTBOOL_VAR_ACTION_SIZE_MAX | ( | IntAction | ia, | |
BoolAction | ba | |||
) | [inline] |
Select variable with largest action divided by domain size.
Definition at line 150 of file branch.hpp.
IntBoolVarBranch Gecode::FlatZinc::INTBOOL_VAR_CHB_SIZE_MAX | ( | double | d = 1.0 |
) | [inline] |
Select variable with largest CHB Q-score divided by domain size.
Definition at line 154 of file branch.hpp.
IntBoolVarBranch Gecode::FlatZinc::INTBOOL_VAR_CHB_SIZE_MAX | ( | IntCHB | ic, | |
BoolCHB | bc | |||
) | [inline] |
Select variable with largest CHB Q-score divided by domain size.
Definition at line 158 of file branch.hpp.
BoolValBranch Gecode::FlatZinc::i2b | ( | const IntValBranch & | ivb | ) | [inline] |
Map respective integer value selection to Boolean value selection.
Definition at line 421 of file branch.hpp.
void Gecode::FlatZinc::varValPrint | ( | const Space & | home, | |
const Brancher & | b, | |||
unsigned int | a, | |||
Var | , | |||
int | i, | |||
const int & | n, | |||
std::ostream & | o | |||
) | [inline] |
Definition at line 340 of file flatzinc.cpp.
void Gecode::FlatZinc::varValPrintF | ( | const Space & | home, | |
const Brancher & | b, | |||
unsigned int | a, | |||
FloatVar | , | |||
int | i, | |||
const FloatNumBranch & | nl, | |||
std::ostream & | o | |||
) |
Definition at line 348 of file flatzinc.cpp.
IntSet Gecode::FlatZinc::vs2is | ( | IntVarSpec * | vs | ) |
Definition at line 356 of file flatzinc.cpp.
int Gecode::FlatZinc::vs2bsl | ( | BoolVarSpec * | bs | ) |
Definition at line 376 of file flatzinc.cpp.
int Gecode::FlatZinc::vs2bsh | ( | BoolVarSpec * | bs | ) |
Definition at line 388 of file flatzinc.cpp.
TieBreak<IntVarBranch> Gecode::FlatZinc::ann2ivarsel | ( | AST::Node * | ann, | |
Rnd | rnd, | |||
double | decay | |||
) |
Definition at line 400 of file flatzinc.cpp.
IntValBranch Gecode::FlatZinc::ann2ivalsel | ( | AST::Node * | ann, | |
std::string & | r0, | |||
std::string & | r1, | |||
Rnd | rnd | |||
) |
Definition at line 449 of file flatzinc.cpp.
IntAssign Gecode::FlatZinc::ann2asnivalsel | ( | AST::Node * | ann, | |
Rnd | rnd | |||
) |
Definition at line 500 of file flatzinc.cpp.
TieBreak<BoolVarBranch> Gecode::FlatZinc::ann2bvarsel | ( | AST::Node * | ann, | |
Rnd | rnd, | |||
double | decay | |||
) |
Definition at line 518 of file flatzinc.cpp.
BoolValBranch Gecode::FlatZinc::ann2bvalsel | ( | AST::Node * | ann, | |
std::string & | r0, | |||
std::string & | r1, | |||
Rnd | rnd | |||
) |
Definition at line 552 of file flatzinc.cpp.
BoolAssign Gecode::FlatZinc::ann2asnbvalsel | ( | AST::Node * | ann, | |
Rnd | rnd | |||
) |
Definition at line 603 of file flatzinc.cpp.
SetVarBranch Gecode::FlatZinc::ann2svarsel | ( | AST::Node * | ann, | |
Rnd | rnd, | |||
double | decay | |||
) |
Definition at line 621 of file flatzinc.cpp.
SetValBranch Gecode::FlatZinc::ann2svalsel | ( | AST::Node * | ann, | |
std::string | r0, | |||
std::string | r1, | |||
Rnd | rnd | |||
) |
Definition at line 659 of file flatzinc.cpp.
TieBreak<FloatVarBranch> Gecode::FlatZinc::ann2fvarsel | ( | AST::Node * | ann, | |
Rnd | rnd, | |||
double | decay | |||
) |
Definition at line 689 of file flatzinc.cpp.
FloatValBranch Gecode::FlatZinc::ann2fvalsel | ( | AST::Node * | ann, | |
std::string | r0, | |||
std::string | r1 | |||
) |
Definition at line 733 of file flatzinc.cpp.
void Gecode::FlatZinc::flattenAnnotations | ( | AST::Array * | ann, | |
std::vector< AST::Node * > & | out | |||
) |
Definition at line 1022 of file flatzinc.cpp.
void Gecode::FlatZinc::printIntVar | ( | std::ostream & | os, | |
const std::string | name, | |||
const Int::IntView & | x | |||
) |
Definition at line 1760 of file flatzinc.cpp.
void Gecode::FlatZinc::printBoolVar | ( | std::ostream & | os, | |
const std::string | name, | |||
const BoolVar & | b | |||
) |
Definition at line 1779 of file flatzinc.cpp.
void Gecode::FlatZinc::printFloatVar | ( | std::ostream & | os, | |
const std::string | name, | |||
const Float::FloatView & | f | |||
) |
Definition at line 1786 of file flatzinc.cpp.
SymbolEntry Gecode::FlatZinc::se_iv | ( | int | i | ) | [inline] |
SymbolEntry Gecode::FlatZinc::se_bv | ( | int | i | ) | [inline] |
SymbolEntry Gecode::FlatZinc::se_fv | ( | int | i | ) | [inline] |
SymbolEntry Gecode::FlatZinc::se_sv | ( | int | i | ) | [inline] |
SymbolEntry Gecode::FlatZinc::se_iva | ( | int | i | ) | [inline] |
SymbolEntry Gecode::FlatZinc::se_bva | ( | int | i | ) | [inline] |
SymbolEntry Gecode::FlatZinc::se_fva | ( | int | i | ) | [inline] |
SymbolEntry Gecode::FlatZinc::se_sva | ( | int | i | ) | [inline] |
SymbolEntry Gecode::FlatZinc::se_i | ( | int | i | ) | [inline] |
SymbolEntry Gecode::FlatZinc::se_b | ( | bool | b | ) | [inline] |
SymbolEntry Gecode::FlatZinc::se_s | ( | int | i | ) | [inline] |
SymbolEntry Gecode::FlatZinc::se_f | ( | int | i | ) | [inline] |
SymbolEntry Gecode::FlatZinc::se_ia | ( | int | i | ) | [inline] |
SymbolEntry Gecode::FlatZinc::se_ba | ( | int | i | ) | [inline] |
SymbolEntry Gecode::FlatZinc::se_sa | ( | int | i | ) | [inline] |
SymbolEntry Gecode::FlatZinc::se_fa | ( | int | i | ) | [inline] |
GECODE_FLATZINC_EXPORT Registry & Gecode::FlatZinc::registry | ( | void | ) |
Return global registry object.
GECODE_FLATZINC_EXPORT FlatZincSpace* Gecode::FlatZinc::parse | ( | const std::string & | fileName, | |
Printer & | p, | |||
std::ostream & | err = std::cerr , |
|||
FlatZincSpace * | fzs = NULL , |
|||
Rnd & | rnd = defrnd | |||
) |
Parse FlatZinc file fileName into fzs and return it.
Creates a new empty FlatZincSpace if fzs is NULL.
GECODE_FLATZINC_EXPORT FlatZincSpace* Gecode::FlatZinc::parse | ( | std::istream & | is, | |
Printer & | p, | |||
std::ostream & | err = std::cerr , |
|||
FlatZincSpace * | fzs = NULL , |
|||
Rnd & | rnd = defrnd | |||
) |
Parse FlatZinc from is into fzs and return it.
Creates a new empty FlatZincSpace if fzs is NULL.
Variable Documentation
GECODE_FLATZINC_EXPORT Rnd Gecode::FlatZinc::defrnd |
Uninitialized default random number generator.
Definition at line 420 of file flatzinc.hh.