Algorithm for Holton-Arms School to schedule single-section classes. Accepts a spreadsheet of course requests and attempts to schedule students into all of their requested courses, keeping in mind the minimum and maximum number of students permitted per class.
This project uses the OR-Tools library's CP-SAT Solver to generate potential schedules that satisfy student course requests and outside restraints such as room and teacher availability.