
Example: The balanced academic curriculum problem More...
Public Types | |
| enum | { BRANCHING_NAIVE, BRANCHING_LOAD, BRANCHING_LOAD_REV } |
| Branching variants. More... | |
Public Member Functions | |
| BACP (const SizeOptions &opt) | |
| Actual model. More... | |
| BACP (bool share, BACP &bacp) | |
| Constructor for copying bacp. More... | |
| virtual Space * | copy (bool share) |
| Copy during cloning. More... | |
| virtual IntVar | cost (void) const |
| Return solution cost. More... | |
| virtual void | print (std::ostream &os) const |
| Print solution. More... | |
Public Member Functions inherited from Gecode::Driver::ScriptBase< BaseSpace > | |
| ScriptBase (const Options &opt) | |
| Constructor. More... | |
| ScriptBase (bool share, ScriptBase &e) | |
| Constructor used for cloning. More... | |
| virtual void | compare (const Space &home, std::ostream &os) const |
| Compare with s. More... | |
Static Public Member Functions | |
| static int | load (const Space &home, IntVar x, int) |
| Value selection function for load branching. More... | |
| static int | load_rev (const Space &home, IntVar x, int) |
| Value selection function for reverse load branching. More... | |
Static Public Member Functions inherited from Gecode::Driver::ScriptBase< BaseSpace > | |
| static std::ostream & | select_ostream (const char *name, std::ofstream &ofs) |
| Choose output stream according to name. More... | |
| template<class Script , template< class > class Engine, class Options > | |
| static void | run (const Options &opt, Script *s=NULL) |
Protected Attributes | |
| const Curriculum | curr |
| The curriculum to be scheduled. More... | |
| IntVarArray | l |
| Academic load for each period. More... | |
| IntVar | u |
| Maximum academic load. More... | |
| IntVarArray | q |
| Number of courses assigned to a period. More... | |
| IntVarArray | x |
| Period to which a course is assigned. More... | |
Related Functions | |
(Note that these are not member functions.) | |
| int | main (int argc, char *argv[]) |
| Main-function. More... | |
Parameters for balanced academic curriculum | |
| const Course | courses8 [] |
| Courses for first example. More... | |
| const char * | prereqs8 [] |
| Prerequisites for first example. More... | |
| const Course | courses10 [] |
| Courses for second example. More... | |
| const char * | prereqs10 [] |
| Prerequisites for second example. More... | |
| const Course | courses12 [] |
| Courses for third example. More... | |
| const char * | prereqs12 [] |
| Prerequisites for third example. More... | |
| const Curriculum | curriculum [] |
| The example specifications. More... | |
| const unsigned int | n_examples = sizeof(curriculum) / sizeof(Curriculum) |
| The number of examples. More... | |
Example: The balanced academic curriculum problem
This is problem 030 from http://www.csplib.org/.
A custom value selection from "A CP Approach to the Balanced Academic Curriculum Problem", J.N. Monette, P. Schaus, S. Zampelli, Y. Deville, and P. Dupont is available.
|
inline |
|
inline |
|
inlinevirtual |
|
inlinevirtual |
|
inlinevirtual |
Print solution.
Reimplemented from Gecode::Driver::ScriptBase< BaseSpace >.
|
related |
Courses for first example.
|
related |
|
related |
|
related |
|
related |
|
related |
|
related |
|
related |
|
related |
|
protected |
|
protected |
|
protected |
|
protected |