Employee scheduling with SAT-based pseudo-boolean constraint solving

The aim of this paper is practical: to show that, for at least one important real-world problem, modern SAT-based technology can beat the extremely mature branch-and-cut solving methods implemented in well-known state-of-the-art commercial solvers such as CPLEX or Gurobi. The problem of employee sch...

Descripción completa

Detalles Bibliográficos
Autores: Nieuwenhuis, Robert Lukas Mario|||0000-0002-6489-2138, Oliveras Llunell, Albert|||0000-0002-5893-1911, Rodríguez Carbonell, Enric|||0000-0003-1061-3954, Rollón Rico, Emma|||0000-0001-8021-9464
Tipo de recurso: artículo
Fecha de publicación:2021
País:España
Institución:Universitat Politècnica de Catalunya (UPC)
Repositorio:UPCommons. Portal del coneixement obert de la UPC
Idioma:inglés
OAI Identifier:oai:upcommons.upc.edu:2117/355638
Acceso en línea:https://hdl.handle.net/2117/355638
https://dx.doi.org/10.1109/ACCESS.2021.3120597
Access Level:acceso abierto
Palabra clave:Production planning
Production scheduling
Employee scheduling
0-1 integer linear program
Propositional satisfiability
Producció -- Planificació
Àrees temàtiques de la UPC::Informàtica::Aplicacions de la informàtica
Descripción
Sumario:The aim of this paper is practical: to show that, for at least one important real-world problem, modern SAT-based technology can beat the extremely mature branch-and-cut solving methods implemented in well-known state-of-the-art commercial solvers such as CPLEX or Gurobi. The problem of employee scheduling consists in assigning a work schedule to each of the employees of an organization, in such a way that demands are met, legal and contractual constraints are respected, and staff preferences are taken into account. This problem is typically handled by first modeling it as a 0-1 integer linear program (ILP). Our experimental setup considers as a case study the 0-1 ILPs obtained from the staff scheduling of a real-world car rental company, and carefully compares the performance of CPLEX and Gurobi with our own simple conflict-driven constraint-learning pseudo-Boolean solver.