Перейти к содержимому

IT5082 Optimization Methods OM Assignment

seyon r

0:00 / 0:00

IT5082 Optimization Methods OM Assignment

1 просмотр · 10 дней назад
seyon r
1 просмотр · 10 дней назад
DESCRIPTION: Programming Assignment submission for IT5082 – Optimization Methods. MSc in Artificial Intelligence Sri Lanka Institute of Information Technology (SLIIT) ───────────────────────────────────── Group Members ───────────────────────────────────── Ramalingham Seyon MS26912516 Kekulawala Vidanalage Dhammika Kekulawala MS26902784 ───────────────────────────────────── Project Overview ───────────────────────────────────── This project solves the Nurse / Staff Rostering problem: deciding, for every nurse and every day of a planning period, which shift (if any) they work, while satisfying labour rules, covering staffing requirements, and respecting nurses' own shift requests as far as possible. Dataset: https://schedulingbenchmarks.org/nrp/ (Nurse Rostering Benchmark Instances 1-24, Curtois & Qu) Methods used: • Exact method - Integer Linear Programming, Branch and Bound / Branch and Cut via PuLP and the CBC solver (Ramalingham Seyon) • Heuristic method - Genetic Algorithm with a penalty-method fitness function, via DEAP (Kekulawala Vidanalage Dhammika Kekulawala) Both methods are scored by the same independent roster evaluator and compared on six benchmark instances spanning a 150x range in problem size, by solution quality, runtime, scalability and feasibility. ───────────────────────────────────── Tools & Technologies ───────────────────────────────────── Python | Jupyter Notebook | PuLP | CBC | DEAP | pandas | NumPy | Matplotlib