We are proud to see amazing results for the timetabling problem. As stated in the section before, that the maximum time for satisfying essential hard constraints was 15 minutes. This time is good enough, but in worse cases, the performance will be worse of course. This is why we introduce a new area for improvement in future – we would consider that it may be really efficient if we define and implement new heuristics within the HeuristicSwitcher, which might help us a lot in finding solution faster.
The second notice is that the values of the all the parameters might be not crisp values, but some fuzzy values. This idea directly introduces the concept of integrating this system with some fuzzy system to describe the Heuristic used, and may also be used to provide feedback about teachers, courses, rooms and times.
A big field of improvement may be to consider some swapping techniques, or procedures that can be done to improve the schedule. We don’t mean here just to set some parameters in order to create a Heuristic for working with Ordinary CrossOver and Mutation or Smart CrossOver, but we mean here that some set of steps might be applied on each algorithm in order to become more efficient, without the need to apply complex, and relatively random CrossOver and Mutation techniques.
And finally, the Genetic Algorithm Implementation was a great part of project. We have discovered new ways and understood it, and modified it to accommodate our needs, introducing Heuristics, SmartCrossOvers, Mutation By and some other components, to make the Algorithm smarter, in order to obtain the results we have just seen in a good time like this.