We advise you to make use of the following solution checking program in order to make sure that you have understood the constraints (and also to check that there are no bugs in your program).
The solution checking program takes a command line parameter giving the name of the program and the associated problem and solution file. For example, the command
>> checksln3b input1
will read in the problem file input1.tim, and the solution file input1.sln and will then calculate the quality of the timetable. (Obviously, the current directory should contain both the problem and solution files.) The solution file produced by your algorithm should be in the format described in the Output Format section.
The numbering of the items referred to in the report produced by checksln3 is the position of the items in the problem file, with numbers starting at zero. So, for example, if the report refers to "room 5" then this will be the sixth room in the problem file.
The output produced by this program will be sent to the standard output. First, the algorithm will check to see if your timetable contains any violations of the hard constraints. If it does then these will be reported. Next, the program will then list any unplaced events and the number of students who attend these events. Next, the program will then list any violations of the soft constraints that are occurring. Finally, the program produces a summary of the solution and exits.
The source for the program (written in c++) can be found here. Our checking program has been extensively tested, but may of course still have bugs. If you are having problems compiling this please contact us. Please note that the program is a windows command line executable file. The .exe can be downloaded here.
Last Updated: Thursday, August 23, 2007 12:52 PM