
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. | |
| BACP (BACP &bacp) | |
| Constructor for copying bacp. | |
| virtual Space * | copy (void) |
| Copy during cloning. | |
| virtual IntVar | cost (void) const |
| Return solution cost. | |
| virtual void | print (std::ostream &os) const |
| Print solution. | |
| Public Member Functions inherited from Gecode::Driver::ScriptBase< Driver::IgnoreStepOption< IntMinimizeSpace > > | |
| 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. | |
| Public Member Functions inherited from Gecode::Driver::IgnoreStepOption< BaseSpace > | |
| IgnoreStepOption (const Options &) | |
| Constructor. | |
| IgnoreStepOption (BaseSpace &e) | |
| Constructor used for cloning. | |
Static Public Member Functions | |
| static int | load (const Space &home, IntVar x, int) |
| Value selection function for load branching. | |
| static int | load_rev (const Space &home, IntVar x, int) |
| Value selection function for reverse load branching. | |
| Static Public Member Functions inherited from Gecode::Driver::ScriptBase< Driver::IgnoreStepOption< IntMinimizeSpace > > | |
| static std::ostream & | select_ostream (const char *sn, std::ofstream &ofs) |
| Choose output stream according to sn. | |
| static void | run (const Options &opt, Script *s=NULL) |
Protected Attributes | |
| const Curriculum | curr |
| The curriculum to be scheduled. | |
| IntVarArray | l |
| Academic load for each period. | |
| IntVar | u |
| Maximum academic load. | |
| IntVarArray | q |
| Number of courses assigned to a period. | |
| IntVarArray | x |
| Period to which a course is assigned. | |
Related Symbols | |
(Note that these are not member symbols.) | |
| int | main (int argc, char *argv[]) |
| Main-function. | |
Parameters for balanced academic curriculum | |
| const Course | courses8 [] |
| Courses for first example. | |
| const char * | prereqs8 [] |
| Prerequisites for first example. | |
| const Course | courses10 [] |
| Courses for second example. | |
| const char * | prereqs10 [] |
| Prerequisites for second example. | |
| const Course | courses12 [] |
| Courses for third example. | |
| const char * | prereqs12 [] |
| Prerequisites for third example. | |
| const Curriculum | curriculum [] |
| The example specifications. | |
| const unsigned int | n_examples = sizeof(curriculum) / sizeof(Curriculum) |
| The number of examples. | |
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.
| anonymous enum |
|
inline |
|
inline |
|
inlinevirtual |
|
inlinevirtual |
|
inlinevirtual |
Print solution.
Reimplemented from Gecode::Driver::ScriptBase< Driver::IgnoreStepOption< IntMinimizeSpace > >.
|
Courses for first example.
|
The example specifications.
|
|
protected |
|
protected |
|
protected |
|
protected |