Abstract
We present an integer programming model for the ferry scheduling problem, improving existing models in various ways. In particular, our model has reduced size in terms of the number of variables and constraints compared to existing models by a factor of approximately O(n), with n being the number of ports. The model also handles efficiently load/unload time constraints, crew scheduling and passenger transfers. Experiments using real world data produced high quality solutions in 12 hours using CPLEX 12.4 with a performance guarantee of within 15 % of optimality, on average. This establishes that using a general purpose integer programming solver is a viable alternative in solving the ferry scheduling problem of moderate size.
Similar content being viewed by others
Notes
Our notations follow several simple rules. The ports are usually denoted by k, s or p. Ferries are usually denoted by f. The superscript is used for either port or ferry and subscripts for other indices.
We assume that such arcs exist.
References
Bixby RE (2010) Mixed integer programming: it works better than you may think. Gurobi Optimization. http://www.ferc.gov/eventcalendar/Files/20100609110044-Bixby,%20Gurobi%20Optimization.pdf
Ceder A (2003) Designing public transport network and routes. In: Lam W, Bell M (eds) Advanced modeling for transit operations and service planning. Elsevier, Amsterdam
Christiansen M, Fagerholt K, Ronen D (2004) Ship routing and scheduling: status and perspectives. Transp Sci 38(1):1–18
Christiansen M, Fagerholt K, Nygreen B, Ronen D (2007) Maritime transportation. In: Barnhart C, Laporte G (eds) Handbook in operations research and management science, vol 14. Elsevier, Amsterdam, pp 189–284
Gopalan R, Talluri KT (1998) Mathematical models in airline schedule planning: a survey. Ann Oper Res 76:155–185
Hvattum LM, Lokketangen A, Glover F (2012) Comparisons of commercial MIP solvers and an adaptive memory (tabu search) procedure for a class of 0-1 integer programming problems. Algorithmic Oper Res 7:13–20
Koch T, Achterberg T, Anderson E, Bastert O, Berthold T, Bixby RE, Danna E, Gamrath G, Gleixner AM, Heinz S, Lodi A, Mittelmann H, Ralphs T, Salvagnin D, Steffy DE, Wolter K (2011) MILP 2010—mixed integer programming library version 5. Math Program Comput 3:103–163
Lai MF, Lo HK (2004) Ferry service network design: optimal fleet size, routing, and scheduling. Transp Res, Part A, Policy Pract 38:305–328
Linderoth JT, Lodi A (2000) MILP software. In: Cochrane JJ (ed) Wiley encyclopedia of operations research and management science. Wiley, New York
Lodi A (2008) MIP computation and beyond. Technical report arrival-tr-0229
Mitrovic-Minic S, Punnen AP (2011) Routing and scheduling of a heterogeneous fleet of re-configurable ferries: a model, a heuristic, and a case study. In: International conference on operations research, Zurich, Switzerland
Wang DZW, Lo HK (2008) Multi-fleet ferry service network design with passenger preferences for differential services. Transp Res, Part B, Methodol 42:798–822
Wang ZW, Lo H, Lai MF (2008) Mixed-fleet ferry routing and scheduling. In: Hickman M, Mirchandani P, Voss S (eds) Computer-aided systems in public transport. Lecture notes in economics and mathematical systems, vol 600. Springer, Berlin, pp 181–194
Yan S, Chen C-H, Chen H-Y, Lou T-C (2007) Optimal scheduling models for ferry companies under alliances. J Mar Sci Technol 15:53–66
Zaimi WMKAW, Abu MS, Junoh AK, Ariffin WNM (2011) Ferry scheduling model using linear programming technique. In: Proc of the 3rd international conference on computer research and development (ICCRD), vol 4, pp 337–341
Author information
Authors and Affiliations
Corresponding author
Additional information
This research work was supported by BC Ferries and MITACS.
Rights and permissions
About this article
Cite this article
Karapetyan, D., Punnen, A.P. A reduced integer programming model for the ferry scheduling problem. Public Transp 4, 151–163 (2013). https://doi.org/10.1007/s12469-012-0058-0
Published:
Issue Date:
DOI: https://doi.org/10.1007/s12469-012-0058-0