make
./timetabler data/input/ITC-2019/OriginalProblem.xml -formula=1 -verbosity=0 -algorithm=6 -pb=0 -opt-allocation -opt-stu -opt-cons [options]
This will generate a valid solution in the output folder. The results is encoded using ITC-2019 XML format.
Note that, to solve Minimal Perturbation Problem one needs to have a solution for the original problem in the folder data/output/ITC-2019/solution-OriginalProblem.xml
.
This program is based on [TT-Open-WBO-INC]. The following options are available:
-opt-allocation (default: off)
-opt-cons (default: off)
-opt-stu (default: off)
invalid-time (default: on)
invalid-time-p = <int32> [ 0 .. 100] (default: 21%)
invalid-room (default: on)
invalid-room-p = <int32> [ 0 .. 100] (default: 25%)
-formula = <int32> [ 0 .. 1] (default: 0)
-print-model, -no-print-model (default on)
-print-unsat-soft = <output-file>
-verbosity = <int32> [ 0 .. 1] (default: 1)
-algorithm = <int32> [ 0 .. 1] (default: 5)
-bmo,-no-bmo (default on)
-pb = <int32> [ 0 .. 1] (default: 1)
-amo = <int32> [ 0 .. 0] (default: 0)
-cardinality = <int32> [ 0 .. 2] (default: 1)
-weight-strategy = <int32> [ 0 .. 2] (default: 2)
-symmetry, -no-symmetry (default on)
-symmetry-limit = <int32> [ 0 .. imax] (default: 500000)
-graph-type = <int32> [ 0 .. 2] (default: 2)
-partition-strategy = <int32> [ 0 .. 2] (default: 2)
TT-Open-WBO-INC solver and c++ compiler.
The folders data/input/IST
and data/output/IST
contain the data sets from Instituto Superior Técnico (IST).
The folders data/input/ITC-2007
and data/output/ITC-2007
contain the data sets from ITC-2007 Curriculum based timetabling track. The results were obtained from Lindahl et al..
The folder data/input/ITC-2019
contains some data sets from ITC-2019.
The folder data/Disruption/profiles/
contains disruptions learn from the timetables of the last 5 years of IST.
This solver has been placed among the five finalists of ITC-2019. The folder papers/
contains the related papers.
For an integer programming approach see Journal of Scheduling release. Note that, integer programming approach is not based on open source software.