Bike sharing systems need to be properly rebalanced to meet the demand of users and to operate successfully. However, the problem of Balancing Bike Sharing Systems (BBSS) is a demanding task: it requires the design of optimal tours and operating instructions for relocating bikes among stations to maximally comply with the expected future bike demands. In this paper, we tackle the BBSS problem by means of Constraint Programming (CP). First, we introduce two different CP models for the BBSS problem including two custom branching strategies that focus on the most promising routes. Second, we incorporate both models in a Large Neighborhood Search (LNS) approach that is adapted to the respective CP model. Third, we perform an experimental evaluation of our approaches on three different benchmark sets of instances derived from real-world bike sharing systems. We show that our CP models can be easily adapted to the different benchmark problem setups, demonstrating the benefit of using Constraint Programming to address the BBSS problem. Furthermore, in our experimental evaluation, we see that the pure CP (branch & bound) approach outperforms the state-of-the-art MILP on large instances and that the LNS approach is competitive with other existing approaches.
This is a preview of subscription content, access via your institution.
Buy single article
Instant access to the full article PDF.
Tax calculation will be finalised during checkout.
Subscribe to journal
Immediate online access to all issues from 2019. Subscription will auto renew annually.
Tax calculation will be finalised during checkout.
Benchimol, M., Benchimol, P., Chappert, B., De la Taille, A., Laroche, F., Meunier, F., & Robinet, L. (2011). Balancing the stations of a self service bike hire system. RAIRO – Operations Research, 45(1), 37–61.
Bent, R., & Van Hentenryck, P. (2004). A two-stage hybrid local search for the vehicle routing problem with time windows. Transportation Science, 38(4), 515–530.
Birattari, M., Yuan, Z., Balaprakash, P., & Stützle, T. (2010). F-Race and iterated F-Race: An overview. Experimental methods for the analysis of optimization algorithms, pp. 311–336.
Chemla, D., Meunier, F., & Calvo, R.W. (2013). Bike sharing systems: Solving the static rebalancing problem. Discrete Optimization, 10(2), 120–146.
Contardo, C., Morency, C., & Rousseau, L.M. (2012). Balancing a Dynamic Public Bike-Sharing System. Tech. Rep. CIRRELT-2012-09. Montreal: CIRRELT. Submitted to Transportation Science.
Dell’Amico, M., Hadjicostantinou, E., Iori, M., & Novellani, S. (2014). The bike sharing rebalancing problem: mathematical formulations and benchmark instances. Omega, 45(0), 7–19.
Dell’Amico, M., Hadjicostantinou, E., Iori, M., & Novellani, S. (2014). The bike rebalancing problem - benchmark collection. Available from http://www.or.unimore.it/BRP/brp.html.
Di Gaspero, L., Rendl, A., & Urli, T. (2013). Constraint-based approaches for balancing bike sharing systems. In CP 2013, Lecture Notes in Computer Science, (pp. 758–773). Springer.
Di Gaspero, L., Rendl, A., & Urli, T. (2013). A hybrid aco+cp for balancing bicycle sharing systems. In Hybrid Metaheuristics, Lecture Notes in Computer Science (pp. 198–212). Springer.
Gecode Team (2014). Gecode: generic constraint development environment. Available from http://www.gecode.org.
Kilby, P., & Shaw, P. (2006). Vehicle routing In Rossi, F., Beek, P.v., Walsh, T. (Eds.), Handbook of constraint programming, chap. 23, (pp. 799–834). New York: Elsevier Science Inc.
Kloimüllner, C., & Rainer-Harbach, M. (2014). Citybike Wien instances for Balancing Bike Sharing Systems. . Available from https://www.ads.tuwien.ac.at/w/Research/Problem_Instances.
Rainer-Harbach, M., Papazek, P., Hu, B., & Raidl, G.R. (2013). Balancing bicycle sharing systems: A variable neighborhood search approach In Middendorf, M., & Blum, C. (Eds.), Evolutionary computation in combinatorial optimization, lecture notes in computer science, Vol. 7832, (pp. 121–132). Berlin: Springer.
Raviv, T., Tzur, M., & Forma, I.A. (2013). Static repositioning in a bike-sharing system: models and solution approaches. EURO Journal on Transportation and Logistics, 2, 187–229.
Rousseau, L.M., Gendreau, M., & Pesant, G. (2002). Using constraint-based operators to solve the vehicle routing problem with time windows. Journal of Heuristics, 8(1), 43–58.
Rudloff, C., & Lackner, B. (2014). Modeling demand for bicycle sharing systems - neighboring stations as a source for demand and a reason for structural breaks. In TRB 93rd Annual Meeting 2014.
Schuijbroek, J., Hampshire, R., & van Hoeve, W.J. (2013). Inventory rebalancing and vehicle routing in bike sharing systems: Tech. Rep. 2013-E1, Tepper School of Business, Carnegie Mellon University.
Shaw, P. (1998). Using Constraint Programming and Local Search Methods to Solve Vehicle Routing Problems In Maher, M.J., & Puget, J.F. (Eds.), Principles and Practice of Constraint Programming - CP98, 4th International Conference, Pisa, Italy, October 26-30, 1998, Proceedings, Lecture Notes in Computer Science, Vol. 1520, (pp. 417–431): Springer.
Urli, T. (2013). Balancing bike sharing systems (BBSS): instance generation from the CitiBike NYC data. Tech. Rep., University of Udine. arXiv:1312.3971.
Urli, T. (2013). CitiBike NYC Instance Generator. Available from https://bitbucket.org/tunnuz/citibike-nyc-instance-generator.
Urli, T. (2013). CitiBike NYC Instances from September 2013. Available from https://bitbucket.org/tunnuz/citibike-nyc-sept-13.
About this article
Cite this article
Gaspero, L.D., Rendl, A. & Urli, T. Balancing bike sharing systems with constraint programming. Constraints 21, 318–348 (2016). https://doi.org/10.1007/s10601-015-9182-1
- Constraint programming
- Hybrid meta-heuristics
- Large neighborhood search
- Vehicle routing