iTimeTable is smart – it thinks?

32 ponders steer to the optimal result, so that all participants are most satisfied.  All ponders are user adjustable at any moment.

Demo version of the program is available here (4 MB). Download flyer and user manual.

The Program ALGiT iTimeTable consists of several modules:

  • Data input and control
  • Individual and groups handling
  • Automatic solution search
  • Substituting module
  • Daycare


This is the hardest phase for the user. He has to enter data, which is required to calculate timetable. The user must be careful and accurate, but he can always change data, if he finds he forgot something. The user enters/imports the necessary data, requests and priorities. The input data are roughly these:

Penalties What is bad or wrong in a schedule to occur. Over 30 user pondered items.
Metas User defined variables
Hours The hours when the courses are permitted and/or are a must
Days Days of the week or a shorter/longer period when the schedule is going to be
Locations, equipment Locations and tools to be used. Priority list supported, capacities and more.
Teachers Teachers, their (non)fixed working time, the day amount of teaching and more.
Classes Classes of students with their availability times..
Students Each individual student has a part or the whole curriculum individually designed. Along with the time of the availability
Courses Courses with all the parameters such as time, amount, teachers, students, locations and more
Extras A special section, where almost every peculiarity of the school process can be expressed for the program to process it during the schedule calculation time

After the above data has been provided to the program, a totally automatic calculation begins. Everything what is now expressed as a condition will be met by the machine, if logically possible. Otherwise a change of the initial conditions will be signaled as necessary. The penalty ponders are the main way to leverage the output. A change of the requests and conditions are also possible at any stage.

iTimeTable is a program, which calculates an optimal timetable independently, without human assistance. User runs the program, monitors the process, if he wants and waits for result, if it exists. If a solution does not exist, it is needed to change input parameters and run calculations again. This prevents situations, where a timetable would be 95% complete, but a human user would have to search for the remaining 5.

Schedule preprocessing means optimal groups calculation. In this first phase students are assigned to different groups according to their wishes and abilities. iTimeTable tries to achieve maximal group parallelization.

Evolutionary artificial intelligence calculates a few thousand mutations per second in searching for the best solution. The duration of this search depends of the complexity of the requirements and of data volume. iTimeTable looks for a consistent solution first, then improves it further.

Substitution is intended to instantly find a suitable replacement teacher. It also create a database for all the replacements.

You can always choose another teacher than the one suggested by the program. iTimeTable takes several factors into account to find the best choice.

Elective subjects process:

  • teachers offer
  • student history data
  • offer for each student and ranking subjects
  • calculating the optimal subjects

Teachers offer
Enter list of potential subjects with teachers, define group size and subject dependences.

Student history data
We need to specify which courses a students already attended, for the program to know what it can offer to each student.

Offer for each student and ranking subjects
Students have to rank the subjects they wish to attend.

Calculating the optimal subjects
iTimeTable calculates optimal subjects and groups regarding all the ponders.

The Portal allows the publication of your schedule. By publishing schedule on the portal you have the opportunity to review the sections, rooms and teachers, as well as the possibility for various exports as XML export schedules, hours of teachers …

Documents about ALGiT iTimeTable

User manual


Comparision of schedulling programs

Short description

Long description




Requirements for teacher hours

  • minimum / maximum number of hours per week
  • free hours per day (at most)
  • required breakhour after x hours of teaching
  • minimum work hours per day
  • maximum work hours per day

If required check box is set, then these conditions must be met, otherwise the schedule is not consistent.

Teacher’s working time is determined separately.

Subject entry

Subject requires the data:

  • code
  • subject type
  • number of hours per week
  • teacher(s)
  • class(es)
  • group size
  • Working time – hours / days
  • location(s)
  • difficulty

Various time entries

  • for classes select the required and possibles weekly hours
  • teachers availability time
  • for students select the required and possibles weekly hours
  • possible weekly hours for each subjec (optionaly first, last or midle hours)