Chapter 4. Using Tablix

Table of Contents
Introduction to genetic algorithms
Tablix master process
Tablix timetabling model
Setting weights
Configuration file format

Introduction to genetic algorithms

Tablix uses a modified genetic algorithm to solve timetabling problems. Genetic algorithm works by first evaluating a large number of random timetables (this group of timetables is called a population). It assigns a fitness value to each timetable. This fitness value indicates how well the timetable satisfies the restrictions given in the definition of the timetabling problem. Lower fitness values mean a better solution and fitness value 0 indicates a perfect solution. The type of genetic algorithm Tablix uses maintains a separate population on each computing node.

Note: Fitness value 0 indicates a perfect solution, but solutions with fitness values greater than 0 may also be acceptable, depending on the problem description).

Genetic algorithm leaves the part of the population with lower fitness values unmodified and replaces the part of the population with higher fitness values with new timetables that are based on the first part. One such step of the algorithm (evaluation and replacement of the worse part of the population) is a called a generation.

When an acceptable solution is found in the population, Tablix writes it into a file and exits.

There are several important points you should keep in mind when using Tablix: