100 likes | 275 Views
Schedule Optimizer. End-of-Semester Presentation Robin. Project Overview. Automating the creation of schedule for writing center ( ie solving a scheduling problem for which tutors are assigned to which shifts)
E N D
Schedule Optimizer End-of-Semester Presentation Robin
Project Overview • Automating the creation of schedule for writing center (ie solving a scheduling problem for which tutors are assigned to which shifts) • Takes data from forms that tutors submit online with preferences for shifts and number of shifts per week • Uses a linear programming model and optimization engine to get optimal solution • Displays the schedule online for tutors and administrators to view
Nonfunctional Requirements • Access: • School network • Server: • MySQL database, with Tutor table • COIN optimization software • Using HTML, PHP, SQL
Functional Requirements • Format • Home page, where user can get to form, schedule, and optimizer • Access • Page that prompts user to start optimization will be password protected, and can log out when finished • Preference Form • Tutors will enter their first and last names, number of preferred shifts, and top 8 shifts, all of which are mandatory except their last 2 choices (tutors will be notified if not all mandatory data is filled out) • Upon submittal, data will be dumped into database (tutor table) • Overwrite data in database if same person submits form more than once • Notifies user if two choices are the same shift
Functional Requirements • Optimization Constraints • Model should not let tutors be scheduled in back-to-back tutoring shifts • Tutors should be scheduled based on their top 8 choices (shouldn’t be scheduled for shift not in top 8 choices, and first choice should get first preference • Tutors should not be scheduled for more than specified number of shifts • There should be 2-3 tutors per shift, with only one receptionist per shift • One tutor can either tutor or be receptionist on any shift
Functional Requirements • Optimization • Administrator will run optimization, which will prompt application to write data from database to an LP file • LP file will be passed to optimization engine • Infeasible Solution • Relax constraint and rerun • Schedule Display • Application will take output from optimization engine and display in easy-to-read table format on a page accessible from homepage • End of Semester • Administrator will clear the database table to make room for next semester’s preference submittals, as well as remove schedule from webpage
Progress • First half of the project: • Data collection • Allows tutors to enter preferences and puts data in database • Administrator access • Page is password protected • Creation of LP file to pass to optimization engine • Once administrator pushes button, starts writing data to LP file • Struggles: • Lack of familiarity with technology • Figuring out best way to pass model to optimization engine • What if the solution is infeasible?
Progress www.mathcsdev.dickinson.edu/writingcenter/home.html
Next Semester • Optimization using the optimization engine • Handle output • Create schedule in legible and easy-to-understand format • Improvements: • Make administrator page more secure • Handle scenario where tutor submits a form with 2 choices listed as the same shift • Handle scenario where tutor submits a form a second time