Here, we delve into two other examples of course scheduling implementation. The first comes from the University of Chicago, which fulfills three basic requirements:
Currently, UChicago utilizes an auction system not much different from the auction we used in class. A student is awarded 8000 bidding points to begin, with an additional 2000 points every time they successfully complete a course. Whoever bids the most points for a class is placed first in the queue. Similar to the in-class auction, however, unsuccessful bids (i.e., if a student does not get into the desired class or if the class does not fill up) do not cost points. This auction system has a 93% success rate in terms of a student being assigned a course section - this means the algorithm has managed to find combinations of courses that fulfill the students' desired bids. 75% of students also receive their first-choice bid, resulting in a high satisfactory rate.
Pictured below is an example of a bidden schedule for User 10176. If they do not get into their primary choice class, they can opt to enter an alternative class. For the line marked as 'omit', this user is stating that if they do not gain access to this class, to simply get rid of it from future bids.
The second example originates from the University of Pennsylvania's Wharton Business School. Here, students report their course preferences by assigning classes a utility on a scale from 1-100. The course match system then establishes clearing prices for each course and 'buys' schedules for each student. A feature of CourseMatch that is different from UChicago's implementation is that this takes into account combinations. For example, if a student assigns course A a utility of 100 and course B a utility of 60, he or she can also state that this combination has an additional positive utility of a certain number, thus increasing the likelihood that they receive this combination. Likewise, they can also assign combinations negative utilities to lower the chances of receiving this schedule. Below is an example of a schedule - we can see that the CourseMatch system successfully assigned the student classes that had low clearing prices, therefore maximizing the student's utility.
It is important to note that for both of these course scheduling methodologies, there are three requirements that the algorithms must fulfill: