CIRDL / Shaman

Platform that optimizes course plans for undergraduate college students.
0 stars 0 forks source link

Shaman

Platform that optimizes course plans for undergraduate college students.

Optimization

The optimization model is essentially minimizing a single decision variable that each linear combination of classes per semester is set less than or equal to, all while satisfying a few constraints.

Decision Variables

Constraints

Objective Function

The model is minimizing the bound decision variable while modifying the bound and sched matrix variables. In English (kind of), the objective function is trying to minimize the hours for the semester with the most amount of hours while meeting the constraints.

ingest_data.py

The idea is to ingest the data from (eventually) extract.py. That way I can abstract the backend optimization model from the front end data pipeline.

extract.py

This will scrape the OU webpage for data on each major.