jennyzeng / CourseScheduling

CS-H198 Honor Research Project on algorithms. The course scheduling algorithm can generate a four year plan or a partial plan for UCI students.

Home Page:https://github.com/jennyzeng/CourseScheduling/wiki/Milestone

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Course Scheduling

Introduction

Course Scheduling is a 2 quarters ICS honor research project at University of California, Irvine, and was finalized in June 2017. Zhaohua (Jenny) Zeng is the student and Professor David Eppstein is the advisor for this project. The course scheduling algorithm was inspired by the Coffman-Graham algorithm and the Hu's Algorithm. This algorithm can generate a four-year plan or a partial plan for students at University of California, Irvine, considering the course prerequisites, quarters that a course will be offered, Univ/major/specialization requirements, etc..

Examples

You can refer to the example.py to see how the data is loaded to the course scheduling graph and how to generate a schedule. Instead of using txt files to store data, it is also possible to build a database, and input preprocessed data into the Course Scheduling API.

Recent Update

I formed a team after I finalized the research project. Now we are working on building a website for the course scheduling algorithm, and the expected release time is late-August, 2017. If you have any suggestions, feel free to email me. Website development code is in the repository: CourseScheduling-Web

Reports

Final Report

In the final report, there is an introduction to two related algorithms, the Coffman-Graham algorithm and the Hu's algorithm, as well as a detailed explanation about how the algorithm works.

Initial Plan

In my initial plan, I illustrated my main idea of the course scheduling project, described the Coffman-Graham algorithm that I will be working on, and some difficulties as well as interesting points. research-initial-plan.pdf

About

CS-H198 Honor Research Project on algorithms. The course scheduling algorithm can generate a four year plan or a partial plan for UCI students.

https://github.com/jennyzeng/CourseScheduling/wiki/Milestone

License:GNU General Public License v3.0


Languages

Language:Python 100.0%