Go home now Header Background Image
Search
Submission Procedure
share: |
 
Follow us
 
 
 
 
Volume 23 / Issue 5

available in:   PDF (204 kB) PS (340 kB)
 
get:  
Similar Docs BibTeX   Write a comment
  
get:  
Links into Future
 
DOI:   10.3217/jucs-023-05-0479

 

Solving a Large Real-world Bus Driver Scheduling Problem with a Multi-assignment based Heuristic Algorithm

Ademir Aparecido Constantino (Universidade Estadual de Maringá, Brazil)

Candido Ferreira Xavier de Mendonca Neto (Universidade Estadual de São Paulo, Brazil)

Silvio Alexandre de Araujo (Universidade Estadual Paulista, Brazil)

Dario Landa-Silva (University of Nottingham, United Kingdom)

Rogério Calvi (Universidade Estadual de Maringá, Brazil)

Allainclair Flausino dos Santos (Universidade Estadual de Maringá, Brazil)

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, large real-world instances, transportation

Categories: F.2.1, G.1, I.1.2, I.2.8, I.6