Solver-Independent Large Neighbourhood Search
The combination of large neighbourhood search (LNS) methods with complete search methods has proved to be very effective. By restricting the search to (small) areas around an existing solution, the complete method is often able to quickly improve its solutions. However, developing such a combined method can be time-consuming: While the model of a problem can be expressed in a high-level solver-independent language, the LNS search strategies typically need to be implemented in the search language of the target constraint solvers. In this paper we show how we can simplify this process by (a) extending constraint modelling languages to support solver-independent LNS search definitions, and (b) defining small solver extensions that allow solvers to implement these solver-independent LNS searches. Modellers can then implement an LNS search to be executed in any extended solver, by simply using the modelling language constructs. Experiments show that the resulting LNS searches only introduce a small overhead compared to direct implementations in the search language of the underlying solvers.
This research was partly sponsored by the Australian Research Council grant DP180100151.
- 2.Chu, G.: Improving Combinatorial Optimization. Department of Computing and Information Systems, University of Melbourne (2011)Google Scholar
- 4.Danna, E., Perron, L.: Structured vs. Unstructured Large Neighborhood Search: A Case Study on Job-Shop Scheduling Problems with Earliness and Tardiness Costs. In: Rossi, F. (ed.) CP 2003. LNCS, vol. 2833, pp. 817–821. Springer, Heidelberg (2003). https://doi.org/10.1007/978-3-540-45193-8_59CrossRefGoogle Scholar
- 7.Gecode Team: Gecode: A Generic Constraint Development Environment (2016). http://www.gecode.org
- 8.Google: or-tools (2017). https://developers.google.com/optimization/
- 10.Nethercote, N., Stuckey, P.J., Becket, R., Brand, S., Duck, G.J., Tack, G.: MiniZinc: towards a standard CP modelling language. In: Bessière, C. (ed.) CP 2007. LNCS, vol. 4741, pp. 529–543. Springer, Heidelberg (2007). https://doi.org/10.1007/978-3-540-74970-7_38
- 11.OscaR Team: OscaR: Scala in OR (2012). https://bitbucket.org/oscarlib/oscar
- 12.Pacino, D., Van Hentenryck, P.: Large neighborhood search and adaptive randomized decompositions for flexible jobshop scheduling. In: Proceedings of the Twenty-Second International Joint Conference on Artificial Intelligence - Volume Three. IJCAI 11, pp. 1997–2002. AAAI Press, Barcelona (2011)Google Scholar
- 16.Prud’homme, C., Fages, J.-G., Lorca, X.: Choco documentation. TASC - LS2N CNRS UMR 6241, COSLING S.A.S. (2017). http://www.choco-solver.org
- 24.Van Hentenryck, P.: The OPL Optimization Programming Language. MIT Press, Cambridge (1999)Google Scholar