ITC 2007 Solver Execution
java -Xmx256m -jar itc2007.jar problem input output [timeout] [seed]
  • problem ... problem either ctt, tim, or exam
    • ctt for Curriculum based Course Timetabling (track 3)
    • tim for Post Enrollment based Course Timetabling (track 2)
    • exam for Examination Timetabling (track 1)
  • input ... input file
  • output ... output file (or folder when an output file is to be saved, output file is named input_seed.ext where input is the name of the input instance, seed is the random seed that was used and ext is the problem specific solution extension (out or sln))
  • timeout .. time limit in seconds, optional (default is 276 seconds, that is for MacOS X 3GHz server)
  • seed .. random seed, optional (randomly generated by default)
Additional Options
Following options can be passed as Java system variables (-Dvariable=value just after java command, e.g., java -Dverbose=info -Xmx256m -jar itc2007.jar ...)
  • verbose ... verbose level (none, info, or debug) -- a log file is created in the output folder if verbose level is info or debug
  • timeout ... time limit (if not passed as parameter)
  • seed ... random seed (if not passed as parameter)
java -Dseed=12453312 -Dtimeout=445 -Xmx256m -jar itc2007.jar ctt comp01.ctt comp01.out
File input.csv (comma separated values, readable e.g. by Micsoroft Excel) is created in the output folder (where input is the name of the input instance). After each run, a line is added into this file containing seed, time limit, time and iteration in which the best solution was found, value of the best solution, and values of problem specific parameters:
  • CTT: rc for room capacity penalty, md for minimum working days penalty, cc for curriculum compactness penalty, and rs for room stability penalty
  • TIM: df for distance to feasibility, pv for violated precedence constraints, av for violated slot availabilities, nr for assignments without room, 1d for one event a day, lt for use of last time of a day, 3+ for more three or more events consecutively
  • EXAM: bv for binary constraint violations, dc for direct conflicts, 2r for two exams in a row penalty, 2d for two exams in a day penalty, ps for period spread penalty, mx for mixed durations penalty, fl for front load penalty, rp for room penalty, and pp for period penalty
Java Runtime Environment (JRE) or Java SE Development Kit preferably from Sun, version 1.5 or later, can be downloaded and installed from

Curriculum based Course Timetabling, 445 seconds time limit, seed 12453312
java -Xmx256m -jar itc2007.jar ctt comp01.ctt comp01.out 445 12453312

Post Enrollment based Course Timetabling, 350 seconds time limit, no seed
java -Xmx256m -jar itc2007.jar tim comp-2007-2-1.tim comp-2007-2-1.sln 350

Examination Timetabling, 499 seconds time limit, seed 555
java -Xmx256m -jar itc2007.jar exam exam_comp_set1.exam exam_comp_set1.sln 499 555
  © 2024 Tomáš Müller