
Example: Finding optimal Golomb rulers More...
Public Member Functions | |
| GolombRuler (const SizeOptions &opt) | |
| Actual model. | |
| virtual IntVar | cost (void) const |
| Return cost. | |
| virtual void | print (std::ostream &os) const |
| Print solution. | |
| GolombRuler (GolombRuler &s) | |
| Constructor for cloning s. | |
| virtual Space * | copy (void) |
| Copy during cloning. | |
Public Member Functions inherited from Gecode::Driver::ScriptBase< BaseSpace > | |
| ScriptBase (const Options &opt) | |
| Constructor. | |
| ScriptBase (ScriptBase &e) | |
| Constructor used for cloning. | |
| virtual void | compare (const Space &home, std::ostream &os) const |
| Compare with s. | |
Protected Attributes | |
| IntVarArray | m |
| Array for ruler marks. | |
Related Symbols | |
(Note that these are not member symbols.) | |
| int | main (int argc, char *argv[]) |
| Main-function. | |
Additional Inherited Members | |
Static Public Member Functions inherited from Gecode::Driver::ScriptBase< BaseSpace > | |
| static std::ostream & | select_ostream (const char *sn, std::ofstream &ofs) |
| Choose output stream according to sn. | |
| template<class Script , template< class > class Engine, class Options > | |
| static void | run (const Options &opt, Script *s=NULL) |
Example: Finding optimal Golomb rulers
The script makes use of two lower bounds taken from: Barbara Smith, Kostas Stergiou, Toby Walsh, Modelling the Golomb Ruler Problem. In IJCAI 99 Workshop on Non-binary Constraints, 1999.
See also problem 6 at http://www.csplib.org/.
The upper bound used is from the trivial construction where distances between consecutive marks are increasing powers of two.
Note that "Modeling and Programming with Gecode" uses this example as a case study.
Definition at line 62 of file golomb-ruler.cpp.
|
inline |
Actual model.
Definition at line 68 of file golomb-ruler.cpp.
|
inline |
Constructor for cloning s.
Definition at line 114 of file golomb-ruler.cpp.
|
inlinevirtual |
Return cost.
Definition at line 103 of file golomb-ruler.cpp.
|
inlinevirtual |
Print solution.
Reimplemented from Gecode::Driver::ScriptBase< BaseSpace >.
Definition at line 109 of file golomb-ruler.cpp.
|
inlinevirtual |
Copy during cloning.
Definition at line 120 of file golomb-ruler.cpp.
|
related |
Main-function.
Definition at line 129 of file golomb-ruler.cpp.
|
protected |
Array for ruler marks.
Definition at line 65 of file golomb-ruler.cpp.