Hybrid algorithms combining local and systematic search often use nondeterminism in fundamentally different ways. They may differ in the strategy to explore the search tree and/or in how computation states are represented. This paper presents nondeterministic control structures to express a variety of hybrid search algorithms concisely and elegantly. These nondeterministic abstractions describe the search tree and are compiled in terms of first-class continuations. They are also parameterized by search controllers that are under user control and specify the state representation and the exploration strategy. The resulting search language is thus high-level, flexible, and directly extensible. The abstractions are illustrated on a jobshop scheduling algorithm that combines tabu search and a limited form of backtracking. Preliminary experimental results indicate that the control structures induce small, often negligible, overheads.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Balas, A., Vazacopoulos, E.: Guided Local Search with Shifting Bottleneck for Job Shop Scheduling. Management Science 44(2), 262–275 (1998)MATHCrossRefGoogle Scholar
  2. 2.
    Bent, R., Van Hentenryck, P.: A Two-Stage Hybrid Local Search for the Vehicle Routing Problem with Time Windows. Transportation Science 8(4), 515–530 (2004)CrossRefGoogle Scholar
  3. 3.
    de Givry, S., Jeannin, L.: Tools: A library for partial and hybrid search methods. In: CPAIOR 2003, Montreal, Canada (2003)Google Scholar
  4. 4.
    Laburthe, F., Caseau, Y.: SALSA: A Language for Search Algorithms. In: Maher, M.J., Puget, J.-F. (eds.) CP 1998. LNCS, vol. 1520, p. 310. Springer, Heidelberg (1998)CrossRefGoogle Scholar
  5. 5.
    Michel, L., Van Hentenryck, P.: A Constraint-Based Architecture for Local Search. In: Oopsla 2002, Seattle, WA, USA, November 4-8, pp. 101–110 (2002)Google Scholar
  6. 6.
    Michel, L., Van Hentenryck, P.: A Decomposition-Based Implementation of Search Strategies. ACM Transactions on Computational Logic 5(2), 351–383 (2004)CrossRefMathSciNetGoogle Scholar
  7. 7.
    Nowicki, E., Smutnicki, C.: A Fast Taboo Search Algorithm for the Job Shop Problem. Management Science 42(6), 797–813 (1996)MATHCrossRefGoogle Scholar
  8. 8.
    Perron, L.: Search Procedures and Parallelism in Constraint Programming. In: Jaffar, J. (ed.) CP 1999. LNCS, vol. 1713, pp. 346–361. Springer, Heidelberg (1999)Google Scholar
  9. 9.
    Rousseau, L.M., Gendreau, M., Pesant, G.: Using Constraint-Based Operators to Solve the Vehicle Routing Problem with Time Windows. Journal of Heuristics 8, 43–58 (2002)MATHCrossRefGoogle Scholar
  10. 10.
    Schulte, C.: Programming Constraint Inference Engines. In: Smolka, G. (ed.) CP 1997. LNCS, vol. 1330, pp. 519–533. Springer, Heidelberg (1997)CrossRefGoogle Scholar
  11. 11.
    Schulte, C.: Comparing Trailing and Copying for Constraint Programming. In: ICLP 1999, Las Cruces, NM, USA, November 1999, pp. 275–289 (1999)Google Scholar
  12. 12.
    Shaw, P.: Using Constraint Programming and Local Search Methods to Solve Vehicle Routing Problems. In: Maher, M.J., Puget, J.-F. (eds.) CP 1998. LNCS, vol. 1520, pp. 417–431. Springer, Heidelberg (1998)CrossRefGoogle Scholar
  13. 13.
    Van Hentenryck, P.: The OPL Optimization Programming Language. The MIT Press, Cambridge (1999)Google Scholar
  14. 14.
    Van Hentenryck, P., Michel, L.: Control Abstractions for Local Search. In: Rossi, F. (ed.) CP 2003. LNCS, vol. 2833, pp. 65–80. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  15. 15.
    Van Hentenryck, P., Michel, L.: Scheduling Abstractions for Local Search. In: Régin, J.-C., Rueher, M. (eds.) CPAIOR 2004. LNCS, vol. 3011, pp. 319–334. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  16. 16.
    Van Hentenryck, P., Michel, L., Liu, L.: Constraint-based Combinators for Local Search. In: Wallace, M. (ed.) CP 2004. LNCS, vol. 3258, pp. 47–61. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  17. 17.
    Van Hentenryck, P., Perron, L., Puget, J.-F.: Search and Strategies in OPL. ACM Transactions on Computational Logic 1(2), 1–36 (2000)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2005

Authors and Affiliations

  • Pascal Van Hentenryck
    • 1
  • Laurent Michel
    • 2
  1. 1.Brown UniversityProvidenceUSA
  2. 2.University of ConnecticutStorrsUSA

Personalised recommendations