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
Log in or sign up for Devpost to join the conversation.