Work schedule modelling for a team

Swedbank problem for the First Estonian Study Group with Industry, ESGI151Sponsor_Swedbank

Consider the working schedules of support and servicing teams who have to complete incoming tasks in real time during fixed working hours longer than nominal 40-hour week. The task flows for these teams vary over time and can be unevenly scattered in weeks and days. The team leads and managers need to plan and design the work schedules of these teams so that robust task completion is guaranteed throughout the official servicing hours of the teams, even if the servicing hours are longer than usual 8 hour shifts or if they involve weekends. Moreover, the team leads will surely face several real world complications and constraints, such as unexpected illnesses or vacation seasons.


ESGI was asked to model the work schedule of such teams under real world inspired constraints. The aim of the task was to provide team lead with a helper tool for compiling the individual work schedules of their team members based on task flow forecasts. The work schedules should maximise employee wellbeing, while providing robust performance and resilience to unexpected shocks. Workgroup was provided with an example description of real world complications and constraints, as well as, synthetic task flow data of two model teams for testing your methodology.

The given problem was modeled as Mixed Integer Programming Problem. The objective function chosen in linear form,

min aTx


where a is the vector of priorities for time delays and x is the vector of time delays. The mixed IP model simulation flow is described in Figure below.




The Python environment was used for developing the scripts. Pyomo package was used for the development of the algebraic model. The GLPK solver (open- source) was used to solve the model. However, a range of solvers can be used to solve the model. In a future development, new constraints such as the employee efficiency can be considered in the model as additional constraint.

The project is available on GitHub platform publically as “Swedbank employee scheduling”.