## 4 Computational Results  
The proposed algorithms were coded in C++ and run on i7-4770, 3.40 GHz and 16 GB of RAM, under the Windows 7 (64 bit) OS. All results presented in this section were accomplished using the same set of PSO parameters' values for the PSO algorithm and the same set of AFS parameters' values for the AFS algorithm. This was adopted in order to have a fair comparison of both algorithm's efficiency and performance. Both algorithms use the same encoding described in Section 3.1 and 3.2. The population size was set to 15 for the PSO algorithm and to 24 for the AFS algorithm. The fitness function used for both algorithms is the one presented in [20], incorporates all hard and soft constraints listed in Section 2 and has the following form:  
\(f\)= _cases_of_teachers'_unavailability_\(\times\)_HCW_\(\times\)_BASE\({}^{3}\)  
\(+\)_cases_of_classes'_empty_periods_\(\times\)_HCW_\(\times\)(2\(\times\)_BASE\()^{BASE}\)  
\(+\)_cases_of_parallel_teaching_\(\times\)_HCW_\(\times\)_BASE\({}^{k}\)  
\(+\)_cases_of_wrong_co-teaching_\(\times\)_HCW_\(\times\)(2\(\times\)_BASE\()^{BASE}\)  
\(+\)_cases_of_class_lessons'_dispersion_\(\times\)_ICDW_\(\times\)_HOURS_\(\times\)_BASE\({}^{DATS}\)  
\(+\)_cases_of_teachers'_empty_spaces_\(\times\)_TEPW_\(\times\)_HOURS_\(\times\)_BASE\({}^{DATS}\)  
\(+\)_cases_of_teacher_lessons'_dispersion_\(\times\)_ITDW_\(\times\)_absolute_error_\(\times\)_BASE\({}^{DATS}\)  
Moreover, all hard and soft constraints weights used in it have the exact same values as the ones used in [20] and are described as follows:  
* Hard Constraints' Weight (_HCW_). This weight is utilized by the algorithm in order to distinguish feasible and infeasible timetables. Its value is set to 10. * Ideal Classes' Dispersion Weight (_ICDW_). This weight is relevant to the classes' lessons dispersion and its value is set to 0.95. * Teachers' Empty Periods Weight (_TEPW_). This weight relates to teachers' idle hours during any working day and its value is set to 0.06. * Ideal Teachers' Dispersion Weight (_ITDW_). This weight is relevant to the teachers' teaching hours' dispersion and its value is set to 0.6. Apart from the above weights, another major parameter that affects the behavior of the evaluation function is the exponential rise base (BASE). This is a real number (typically between 1 and 2) that is used as a base for the exponential rise of the sub-costs corresponding to violations of a certain constraints in a timetable. For all experiments conducted, its value was set to 1.3. In order to demonstrate the performance and efficiency of both computational intelligence algorithms, their experimental results are compared with the respective results of four different heuristics that have been applied to the school timetabling problem in the literature [19,20,25,26]. The approach presented in [19] is a simulated annealing (SA)-based algorithm with a newly-designed neighborhood structure. Its main innovation is that, in search for the best neighbor, the heuristic performs a sequence of swaps between pairs of timeslots, instead of swapping two assignments, as in the standard simulated annealing. The algorithm presented in [25] is an evolutionary one (EA). The algorithm uses linear ranking selection, two mutation operators, and an elitism schema, while, on the other hand, it does notuse any crossover operator. The third algorithm presented in [20] comprises a hybrid particle swarm optimization (PSO)-based algorithm. It consists of a main PSO algorithm and a refining local search procedure which is applied in order to improve the best solution found by the main PSO algorithm. Finally, the fourth algorithm is a genetic algorithm selection perturbative hyper-heuristic (GASPHH) [26]. It comprises a two-phase approach, with the first phase focusing on hard constraints and the second phase on soft constraints. Both phases employ the same genetic algorithm selection perturbative hyper-heuristic, with the low-level heuristics differing for each phase.