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.

[1]  Peter J. Stuckey,et al.  The MiniZinc Challenge 2008-2013 , 2014, AI Mag..

[2]  Agostino Dovier,et al.  A Multi-paradigm Tool for Large Neighborhood Search , 2013, Hybrid Metaheuristics.

[3]  Peter J. Stuckey,et al.  MiniZinc with Functions , 2013, CPAIOR.

[4]  Warwick Harvey,et al.  Essence: A constraint language for specifying combinatorial problems , 2007, Constraints.

[5]  Geoffrey Chu,et al.  Improving combinatorial optimization , 2011 .

[6]  Peter J. Stuckey,et al.  MiniZinc: Towards a Standard CP Modelling Language , 2007, CP.

[7]  Pascal Van Hentenryck,et al.  The Objective-CP Optimization System , 2013, CP.

[8]  Pascal Van Hentenryck,et al.  Large Neighborhood Search and Adaptive Randomized Decompositions for Flexible Jobshop Scheduling , 2011, IJCAI.

[9]  Pascal Van Hentenryck,et al.  OPL Script: Composing and Controlling Models , 1999, New Trends in Constraints.

[10]  David Pisinger,et al.  An Adaptive Large Neighborhood Search Heuristic for the Pickup and Delivery Problem with Time Windows , 2006, Transp. Sci..

[11]  Pascal Van Hentenryck,et al.  The Comet Programming Language and System , 2005, CP.

[12]  Xavier Lorca,et al.  Explanation-based large neighborhood search , 2014, Constraints.

[13]  Pascal Van Hentenryck The OPL optimization programming language , 1999 .

[14]  Laurent Perron,et al.  Propagation Guided Large Neighborhood Search , 2004, CP.

[15]  Laurent Perron,et al.  Structured vs. Unstructured Large Neighborhood Search: A Case Study on Job-Shop Scheduling Problems with Earliness and Tardiness Costs , 2003, CP.

[16]  David Pisinger,et al.  Large Neighborhood Search , 2018, Handbook of Metaheuristics.

[17]  Peter J. Stuckey,et al.  MiniSearch: A Solver-Independent Meta-Search Language for MiniZinc , 2015, CP.

[18]  David Pisinger,et al.  A general heuristic for vehicle routing problems , 2007, Comput. Oper. Res..

[19]  Paul Shaw,et al.  Using Constraint Programming and Local Search Methods to Solve Vehicle Routing Problems , 1998, CP.

[20]  Brian W. Kernighan,et al.  AMPL: a mathematical programming language , 1989 .

[21]  Luca Di Gaspero,et al.  The balanced academic curriculum problem revisited , 2012, J. Heuristics.

[22]  Peter J. Stuckey,et al.  Philosophy of the MiniZinc challenge , 2010, Constraints.