JUCS - Journal of Universal Computer Science 23(5): 479-504, doi: 10.3217/jucs-023-05-0479
Solving a Large Real-world Bus Driver Scheduling Problem with a Multi-assignment based Heuristic Algorithm
expand article infoAdemir Aparecido Constantino, Candido Ferreira Xavier De Mendonca Neto§, Silvio Alexandre De Araujo|, Dario Landa-Silva, Rogério Calvi, Allainclair Flausino dos Santos
‡ Universidade Estadual de Maringá, Maringá, Brazil§ Universidade Estadual de São Paulo, São Paulo, Brazil| Universidade Estadual Paulista, São Jose do Rio Preto, Brazil¶ University of Nottingham, Nottingham, United Kingdom
Open Access
Abstract
The bus driver scheduling problem (BDSP) under study consists in finding a set of duties that covers the bus schedule from a Brazilian public transportation bus company with the objective of minimizing the total cost. A deterministic 2-phase heuristic algorithm is proposed using multiple assignment problems that arise from a model based on a weighted multipartite graph. In the first phase, the algorithm constructs an initial feasible solution by solving a number of assignment problems. In the second phase, the algorithm attempts to improve the solution by two different procedures. One procedure takes the whole set of duties and divides them in a set of partial duties which are recombined. The other procedure seeks to improve single long duties by eliminating the overtime time and inserting it into another duty. Computational tests are performed using large-scale real-world data with more than 2,300 tasks and random instances extracted from real data. Three different objective functions are analyzed. The overall results indicate that the proposed approach is competitive to solve large BDSP.
Keywords
bus driver scheduling, crew management, heuristic, transportation, large real-world instances