Gecode::FlatZinc::FlatZincSpace Class Reference
A Space that can be initialized with a FlatZinc model. More...
#include <flatzinc.hh>
Public Types | |
| enum | Meth { SAT, MIN, MAX } |
Public Member Functions | |
| FlatZincSpace (int intVars, int boolVars, int setVars) | |
| Construct problem with given number of variables. | |
| void | newIntVar (IntVarSpec *vs) |
| Create new integer variable from specification. | |
| void | newBoolVar (BoolVarSpec *vs) |
| Create new Boolean variable from specification. | |
| void | newSetVar (SetVarSpec *vs) |
| Create new set variable from specification. | |
| void | postConstraint (const ConExpr &ce, AST::Node *annotation) |
| Post a constraint specified by ce. | |
| void | solve (AST::Array *annotation) |
| Post the solve item. | |
| void | minimize (int var, AST::Array *annotation) |
| Post that integer variable var should be minimized. | |
| void | maximize (int var, AST::Array *annotation) |
| Post that integer variable var should be maximized. | |
| void | run (std::ostream &out, const Printer &p, const FlatZincOptions &opt, Gecode::Support::Timer &t_total) |
| Run the search. | |
| void | print (std::ostream &out, const Printer &p) const |
| Produce output on out using p. | |
| Meth | method (void) |
| Return whether to solve a satisfaction or optimization problem. | |
| virtual void | constrain (const Space &s) |
| Implement optimization. | |
| virtual Gecode::Space * | copy (bool share) |
| Copy function. | |
Public Attributes | |
| Gecode::IntVarArray | iv |
| The integer variables. | |
| std::vector< bool > | iv_introduced |
| Indicates whether an integer variable is introduced by mzn2fzn. | |
| Gecode::BoolVarArray | bv |
| The Boolean variables. | |
| std::vector< bool > | bv_introduced |
| Indicates whether a Boolean variable is introduced by mzn2fzn. | |
| Gecode::SetVarArray | sv |
| The set variables. | |
| std::vector< bool > | sv_introduced |
| Indicates whether a set variable is introduced by mzn2fzn. | |
Protected Member Functions | |
| void | parseSolveAnn (AST::Array *ann) |
| Parse the solve annotations and create corresponding branchings. | |
| FlatZincSpace (bool share, FlatZincSpace &) | |
| Copy constructor. | |
Protected Attributes | |
| int | intVarCount |
| Number of integer variables. | |
| int | boolVarCount |
| Number of Boolean variables. | |
| int | setVarCount |
| Number of set variables. | |
| int | _optVar |
| Index of the integer variable to optimize. | |
| Meth | _method |
| Whether to solve as satisfaction or optimization problem. | |
Detailed Description
A Space that can be initialized with a FlatZinc model.
Definition at line 211 of file flatzinc.hh.
Member Enumeration Documentation
Definition at line 213 of file flatzinc.hh.
Constructor & Destructor Documentation
| Gecode::FlatZinc::FlatZincSpace::FlatZincSpace | ( | bool | share, | |
| FlatZincSpace & | f | |||
| ) | [protected] |
Copy constructor.
Definition at line 182 of file flatzinc.cpp.
| Gecode::FlatZinc::FlatZincSpace::FlatZincSpace | ( | int | intVars, | |
| int | boolVars, | |||
| int | setVars | |||
| ) |
Construct problem with given number of variables.
Definition at line 193 of file flatzinc.cpp.
Member Function Documentation
| void Gecode::FlatZinc::FlatZincSpace::parseSolveAnn | ( | AST::Array * | ann | ) | [protected] |
Parse the solve annotations and create corresponding branchings.
Definition at line 301 of file flatzinc.cpp.
| void Gecode::FlatZinc::FlatZincSpace::newIntVar | ( | IntVarSpec * | vs | ) |
Create new integer variable from specification.
Definition at line 210 of file flatzinc.cpp.
| void Gecode::FlatZinc::FlatZincSpace::newBoolVar | ( | BoolVarSpec * | vs | ) |
Create new Boolean variable from specification.
Definition at line 220 of file flatzinc.cpp.
| void Gecode::FlatZinc::FlatZincSpace::newSetVar | ( | SetVarSpec * | vs | ) |
Create new set variable from specification.
Definition at line 231 of file flatzinc.cpp.
Post a constraint specified by ce.
Definition at line 276 of file flatzinc.cpp.
| void Gecode::FlatZinc::FlatZincSpace::solve | ( | AST::Array * | annotation | ) |
Post the solve item.
Definition at line 391 of file flatzinc.cpp.
| void Gecode::FlatZinc::FlatZincSpace::minimize | ( | int | var, | |
| AST::Array * | annotation | |||
| ) |
Post that integer variable var should be minimized.
Definition at line 397 of file flatzinc.cpp.
| void Gecode::FlatZinc::FlatZincSpace::maximize | ( | int | var, | |
| AST::Array * | annotation | |||
| ) |
Post that integer variable var should be maximized.
Definition at line 408 of file flatzinc.cpp.
| void Gecode::FlatZinc::FlatZincSpace::run | ( | std::ostream & | out, | |
| const Printer & | p, | |||
| const FlatZincOptions & | opt, | |||
| Gecode::Support::Timer & | t_total | |||
| ) |
Run the search.
Definition at line 554 of file flatzinc.cpp.
| void Gecode::FlatZinc::FlatZincSpace::print | ( | std::ostream & | out, | |
| const Printer & | p | |||
| ) | const |
Produce output on out using p.
Definition at line 588 of file flatzinc.cpp.
| FlatZincSpace::Meth Gecode::FlatZinc::FlatZincSpace::method | ( | void | ) |
Return whether to solve a satisfaction or optimization problem.
Definition at line 583 of file flatzinc.cpp.
| void Gecode::FlatZinc::FlatZincSpace::constrain | ( | const Space & | s | ) | [virtual] |
Implement optimization.
Definition at line 568 of file flatzinc.cpp.
| Space * Gecode::FlatZinc::FlatZincSpace::copy | ( | bool | share | ) | [virtual] |
Member Data Documentation
int Gecode::FlatZinc::FlatZincSpace::intVarCount [protected] |
Number of integer variables.
Definition at line 220 of file flatzinc.hh.
int Gecode::FlatZinc::FlatZincSpace::boolVarCount [protected] |
Number of Boolean variables.
Definition at line 222 of file flatzinc.hh.
int Gecode::FlatZinc::FlatZincSpace::setVarCount [protected] |
Number of set variables.
Definition at line 224 of file flatzinc.hh.
int Gecode::FlatZinc::FlatZincSpace::_optVar [protected] |
Index of the integer variable to optimize.
Definition at line 227 of file flatzinc.hh.
Meth Gecode::FlatZinc::FlatZincSpace::_method [protected] |
Whether to solve as satisfaction or optimization problem.
Definition at line 230 of file flatzinc.hh.
The integer variables.
Definition at line 245 of file flatzinc.hh.
| std::vector<bool> Gecode::FlatZinc::FlatZincSpace::iv_introduced |
Indicates whether an integer variable is introduced by mzn2fzn.
Definition at line 247 of file flatzinc.hh.
The Boolean variables.
Definition at line 249 of file flatzinc.hh.
| std::vector<bool> Gecode::FlatZinc::FlatZincSpace::bv_introduced |
Indicates whether a Boolean variable is introduced by mzn2fzn.
Definition at line 251 of file flatzinc.hh.
The set variables.
Definition at line 254 of file flatzinc.hh.
| std::vector<bool> Gecode::FlatZinc::FlatZincSpace::sv_introduced |
Indicates whether a set variable is introduced by mzn2fzn.
Definition at line 256 of file flatzinc.hh.
The documentation for this class was generated from the following files:
- gecode/flatzinc.hh (Revision: 9995)
- gecode/flatzinc/flatzinc.cpp (Revision: 9995)
