
Example: The balanced academic curriculum problem More...
Classes | |
| class | ValBestLoad |
| Custom value selection class for a view-value branching. More... | |
Public Types | |
| enum | { BRANCHING_NAIVE, BRANCHING_LOAD, BRANCHING_LOAD_REV } |
| Branching variants. More... | |
Public Member Functions | |
| BACP (const SizeOptions &opt) | |
| Actual model. | |
| BACP (bool share, BACP &bacp) | |
| Constructor for copying bacp. | |
| virtual Space * | copy (bool share) |
| Copy during cloning. | |
| virtual IntVar | cost (void) const |
| Return solution cost. | |
| virtual void | print (std::ostream &os) const |
| Print solution. | |
Protected Attributes | |
| 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. | |
Static Protected Attributes | |
| const Curriculum | curr |
| The curriculum to be scheduled. | |
Related Functions | |
(Note that these are not member functions.) | |
| 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 |
| BACP::BACP | ( | const SizeOptions & | opt | ) | [inline] |
| BACP::BACP | ( | bool | share, |
| BACP & | bacp | ||
| ) | [inline] |
| virtual Space* BACP::copy | ( | bool | share | ) | [inline, virtual] |
| virtual IntVar BACP::cost | ( | void | ) | const [inline, virtual] |
| virtual void BACP::print | ( | std::ostream & | os | ) | const [inline, virtual] |
Print solution.
Reimplemented from Gecode::Driver::ScriptBase< BaseSpace >.
{
{"dew100", 1},
{"fis100", 3},
{"hcw310", 1},{"iwg101", 2},{"mat190", 4},{"mat192", 4},{"dew101", 1},
{"fis101", 5},{"iwi131", 3},{"mat191", 4},{"mat193", 4},{"fis102", 5},{"hxwxx1", 1},
{"iei134", 3},{"iei141", 3},{"mat194", 4},
{"dewxx0", 1},{"hcw311", 1},{"iei132", 3},{"iei133", 3},{"iei142", 3},{"iei162", 3},
{"iwn170", 3},{"mat195", 3},{"hxwxx2", 1},{"iei231", 4},{"iei241", 4},{"iei271", 3},{"iei281", 3},{"iwn261", 3},
{"hfw120", 2},{"iei233", 4},{"iei238", 3},{"iei261", 3},{"iei272", 3},{"iei273", 3},{"iei161", 3},{"iei232", 3},
{"iei262", 3},{"iei274", 3},{"iwi365", 3},{"iwn270", 3},{"hrw130", 2},{"iei218", 3},{"iei219", 3},{"iei248", 3},
{0,0}
}
Courses for first example.
const char* prereqs8[] [related] |
const char* prereqs10[] [related] |
const char* prereqs12[] [related] |
const Curriculum curriculum[] [related] |
const unsigned int n_examples = sizeof(curriculum) / sizeof(Curriculum) [related] |
| int main | ( | int | argc, |
| char * | argv[] | ||
| ) | [related] |
const Curriculum BACP::curr [static, protected] |
IntVarArray BACP::l [protected] |
IntVarArray BACP::q [protected] |
IntVarArray BACP::x [protected] |