| Title: | TOGA Installation Guide |
|---|---|
| Author: | Dave Haynes |
| Organization: | Thuswise Ltd, UK |
| Contact: | toga@thuswise.co.uk |
| Version: | 0.01.002 |
| Date: | 8th August 2003 |
TOGA is written in a language called Python. This means it can run on many platforms and operating systems, including Linux and Windows.
You can download the TOGA source code under a free licence.
TOGA is not yet available as a single executable (.exe) for Windows, although this is planned for the future.
Install Python on your system, if it is not there already.
TOGA requires version 2.2 or later of Python to work properly. Download and install Python from http://www.python.org
Download TOGA.
TOGA is available from http://www.thuswise.co.uk. You may choose one of two files:
toga-src-0-01-002.zip toga-src-0-01-002.tar.gz
means the file contains Python source code
is the major version number
is the minor version number
is the build number
means the file is a zip file which may be extracted using the WinZip program or GNU unzip
is a zipped tape archive, native to UNIX systems
NB: Modern versions of WinZip will be able to work with either format.
Unpack the TOGA source into a convenient location on your computer.
The directory structure should look like this:
+- toga-src-0-01-002
|
+- docs
|
+- nsga2
|
+- test
|
+- tools
|
COPYING
README
Table.py
TogaEngine.py
test.py
toga.py
TOGA comes with a test suite to make sure its basic operation is sound. To check your copy is working correctly:
Change your working directory to the TOGA directory.
From the command line, enter:
python test.py
The test suite will run, and print a report of how it went.
The tools directory contains some utilities to automatically create problem data.
This script generates a school timetable at random, subject to some parameters which may be found in the file demogen.cfg.
Change your working directory to the TOGA tools directory.
Alter demogen.cfg with a text editor if necessary
From the command line, enter:
python DemoGenerator.py
The timetable will be generated and stored along with its documentation in a special directory. The path to this directory may be defined in the configuration file. Also in this directory is a batch file which you may pass to TOGA to process the data and try to generate an optimised timetable, eg:
python toga.py -b ./demogen/my_timetable/run_my_timetable
This script may be used to convert data from the 2002 PATAT Timetabling Competition into TOGA .csv files. This script has hard-coded paths, so you will need to consult the code if you want to use it.
To use TOGA for your own timetabling task, you will need to become familiar with its concepts and structures. The following are essential reading: