net.sf.cpsolver.coursett
Class Test

java.lang.Object
  extended by net.sf.cpsolver.coursett.Test
All Implemented Interfaces:
SolutionListener

public class Test
extends Object
implements SolutionListener

A main class for running of the solver from command line.

Usage:
java -Xmx1024m -jar coursett1.1.jar config.properties [input_file] [output_folder]

See http://www.unitime.org for example configuration files and banchmark data sets.

The test does the following steps:

Also, a log and a CSV (comma separated text file) is created in the output folder.

Version:
CourseTT 1.1 (University Course Timetabling)
Copyright (C) 2006 Tomáš Müller
muller@unitime.org
Lazenska 391, 76314 Zlin, Czech Republic

This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version.

This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA

Constructor Summary
Test(String[] args)
          Solver Test
 
Method Summary
 void bestCleared(Solution solution)
          Called by the solution when method Solution.clearBest() is called.
 void bestRestored(Solution solution)
          Called by the solution when method Solution.restoreBest() is called.
 void bestSaved(Solution solution)
          Called by the solution when method Solution.saveBest() is called.
 void getInfo(Solution solution, Dictionary info)
          Called by the solution when it is asked to produce info table, see Solution.getInfo().
 void getInfo(Solution solution, Dictionary info, Vector variables)
          Called by the solution when it is asked to produce info table, see Solution.getInfo().
static String getVersionString()
          Current version
 void init(Solver solver)
          Solver initialization
static void main(String[] args)
           
 void notify(Solution solution)
          Add a line into the output CSV file when a enw best solution is found.
static void printClassInfo(PrintWriter pw, TimetableModel model)
          Class information
static void printRoomInfo(PrintWriter pw, TimetableModel model)
          Print room utilization
static void printSomeStuff(Solution solution)
          Create info.txt with some more information about the problem
static void saveOutputCSV(Solution s, File file)
           
 void solutionUpdated(Solution solution)
          Called by the solution when it is updated, see Solution.update(double).
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Test

public Test(String[] args)
Solver Test

Parameters:
args - command line arguments
Method Detail

getVersionString

public static String getVersionString()
Current version


init

public void init(Solver solver)
Solver initialization


main

public static void main(String[] args)

bestCleared

public void bestCleared(Solution solution)
Description copied from interface: SolutionListener
Called by the solution when method Solution.clearBest() is called.

Specified by:
bestCleared in interface SolutionListener
Parameters:
solution - source solution

bestRestored

public void bestRestored(Solution solution)
Description copied from interface: SolutionListener
Called by the solution when method Solution.restoreBest() is called.

Specified by:
bestRestored in interface SolutionListener
Parameters:
solution - source solution

bestSaved

public void bestSaved(Solution solution)
Description copied from interface: SolutionListener
Called by the solution when method Solution.saveBest() is called.

Specified by:
bestSaved in interface SolutionListener
Parameters:
solution - source solution

getInfo

public void getInfo(Solution solution,
                    Dictionary info)
Description copied from interface: SolutionListener
Called by the solution when it is asked to produce info table, see Solution.getInfo(). A listener can also add some its info into this table.

Specified by:
getInfo in interface SolutionListener
Parameters:
solution - source solution
info - produced info table

getInfo

public void getInfo(Solution solution,
                    Dictionary info,
                    Vector variables)
Description copied from interface: SolutionListener
Called by the solution when it is asked to produce info table, see Solution.getInfo(). A listener can also add some its info into this table.

Specified by:
getInfo in interface SolutionListener
Parameters:
solution - source solution
info - produced info table
variables - only variables from this set are included

solutionUpdated

public void solutionUpdated(Solution solution)
Description copied from interface: SolutionListener
Called by the solution when it is updated, see Solution.update(double).

Specified by:
solutionUpdated in interface SolutionListener
Parameters:
solution - source solution

notify

public void notify(Solution solution)
Add a line into the output CSV file when a enw best solution is found.


printRoomInfo

public static void printRoomInfo(PrintWriter pw,
                                 TimetableModel model)
Print room utilization


printClassInfo

public static void printClassInfo(PrintWriter pw,
                                  TimetableModel model)
Class information


printSomeStuff

public static void printSomeStuff(Solution solution)
                           throws IOException
Create info.txt with some more information about the problem

Throws:
IOException

saveOutputCSV

public static void saveOutputCSV(Solution s,
                                 File file)