Once the Greedy and Simulated Annealing models were generated, we compared our results using four metrics: fairness, class diversity, stability and feasibility.
Fairness: which model is most likely to minimize variance of utilities, so what is the difference between the student that is most well-off and the student least well-off. In this case, 'well-off' is defined as the addition of the student's utilities for their three assigned classes based on the ranking they provided. Since our algorithm's main objective is to maximize the total utility of the entire student population, the variance in utilities will be minimal. However, in the greedy algorithm, classes are filled using a first come first serve method, so the students who are last to pick their classes will almost always find issues selecting the classes they intended to take. For this reason, the Simulated Annealing model is more likely to generate a fair class schedule for the entire student population.
Class Diversity: which model results in classes being most diverse in terms of student's years. Since the current scheduling system provides older student's the opportunity to select classes first, courses with the highest demand will be filled by those who have priority. Since our model does not prioritize older students, it will automatically generate classes with student's from a variety of years. For this reason, the Simulated Annealing model is more likely to generate class diversity.
Stability: would any pair of students be made better off by switching schedules with one another. We found that both of our algorithms would create a pareto optimal outcome, so no pair of student's would be better off. Since the simulated annealing algorithm maximizes the utility of student's, if two student's were to exchange their class schedules, we would no longer be at the optimal maximum. Similarly, it would not be of best interest for student's who received an earlier time slot to switch class schedules with a student with a later time slot, unless they were unaware or accidentally selected a different class.
Feasibility: which model provides a schedule that is less complicated to generate. If we were to input a larger sample into the simulated annealing model, it would take a while to create a schedule that maximizes utility since the model repeats the greedy algorithm multiple times. Students are also less likely to submit a ranking of their courses before a specific deadline; and in a larger sample, the model might not place all students in classes if we cap the student's rankings to 20 classes for example. For this reason, the greedy algorithm is a more effective alternative.
Although our algorithm can perform better in the majority of our metrics, it does not mean we created a better alternative to the current scheduling system, as we were biased when creating the metrics and did not include all possible measures. However, we did see that there are advantages to other models, which is why we recommend further research into other scheduling systems, as the current model does not take into account student's utilities.