- Data input and control
- Individual and groups handling
- Automatic solution search
- Substituting module
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
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 …
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 requires the data:
- subject type
- number of hours per week
- group size
- Working time – hours / days
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)