Link to Demo

https://www.youtube.com/watch?v=-4pYefesXfw

Inspiration

During course enrollment season, our group usually spends a lot of time looking for that last class or two, but we are often not sure what is available. We consult Faculty Course Evaluations but it is quite slow, and it is hard to compare classes across departments. So we thought we would create a program that would do it all and recommend classes based on past FCE data and the user's academic audit, current schedule, and inputted preferences.

What it does

All you have to do is input your academic audit, your class schedule, and your preferences and we'll give you a list of classes that best fit what you're looking for. We used three machine learning models:

Unsupervised Learning: K-Means Clustering, PCA, Mini-Batch Independent Component Analysis

Decision Tree: Mathematical Models

Recommender System: Collaborative Filtering

Compiling the results from these three models via a parliamentary classification system, we predicted the most optimal classes for the user based on their course history and preferences for difficulty, ratings, and general education requirements. These predictions were presented in table and graph form.

How I built it

Pygame for UI

Scikit-Learn for Machine Learning

Pandas for Data Management/Cleansing

NumPy for Linear Algebra

Matplotlib for Data Visualization

ScottyLabs API for Schedule of Classes

ics.py for Calender Scraping

What's next for Schedulize

Interactive Graphs

Filters for Hours, Ratings

Description of Predicted Courses

Built With

Share this project:

Updates