Comet is an object-oriented language supporting a constraint-based architecture for local search. This paper presents a collection of abstractions, inspired by constraint-based schedulers, to simplify scheduling algorithms by local search in Comet. The main innovation is the computational model underlying the abstractions. Its core is a precedence graph which incrementally maintains a candidate schedule at every computation step. Organized around this precedence graph are differentiable objects, e.g., resources and objective functions, which support queries to define and evaluate local moves. The abstractions enable Comet programs to feature declarative components strikingly similar to those of constraint-based schedulers and search components expressed with high-level modeling objects and control structures. Their benefits and performance are illustrated on two applications: minimizing total weighted tardiness in a job-shop and cumulative scheduling.


Local Search Local Move Precedence Constraint Local Search Algorithm Feasible Schedule 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Cesta, A., Oddi, A., Smith, S.F.: Iterative flattening: A scalable method for solving multi-capacity scheduling problems. In: AAAI/IAAI, pp. 742–747 (2000)Google Scholar
  2. 2.
    Di Gaspero, L., Schaerf, A.: Optimization Software Class Libraries, chapter Writing Local Search Algorithms Using Easy Local++. Kluwer, Dordrecht (2002)Google Scholar
  3. 3.
    Kreipl, W.: A large step random walk for minimizing total weighted tardiness in a job shop. Journal of Scheduling 3, 125–138 (2000)CrossRefMathSciNetzbMATHGoogle Scholar
  4. 4.
    Laborie, P.: Algorithms for propagating resource constraints in ai planning and scheduling: Existing approaches and new results. AIJ 143(2), 151–188 (2003)MathSciNetzbMATHGoogle Scholar
  5. 5.
    Laburthe, F., Caseau, Y.: SALSA: A Language for Search Algorithms. In: Maher, M.J., Puget, J.-F. (eds.) CP 1998. LNCS, vol. 1520, Springer, Heidelberg (1998)CrossRefGoogle Scholar
  6. 6.
    Dell’Amico, M.: andM. Trubian. Applying Tabu Search to the Job-Shop Scheduling Problem. Annals of Operations Research 41, 231–252 (1993)CrossRefzbMATHGoogle Scholar
  7. 7.
    Mastrolilli, M., Gambardella, L.: Effective neighborhood functions for the flexible job shop problem. Journal of Scheduling 3(1), 3–20 (2000)CrossRefMathSciNetzbMATHGoogle Scholar
  8. 8.
    Michel, L., Van Hentenryck, P.: Localizer. Constraints 5, 41–82 (2000)CrossRefGoogle Scholar
  9. 9.
    Michel, L., Van Hentenryck, P.: A constraint-based architecture for local search. In: OOPSLA 2000, Seattle, WA (2002)Google Scholar
  10. 10.
    Michel, L., Van Hentenryck, P.: Maintaining longest path incrementally. In: Rossi, F. (ed.) CP 2003. LNCS, vol. 2833, Springer, Heidelberg (2003)CrossRefGoogle Scholar
  11. 11.
    Michel, L., Van Hentenryck, P.: Iterative relaxations for iterative flattening in cumulative scheduling. In: ICAPS 2004, Whistler, BC, Canada (2004)Google Scholar
  12. 12.
    Nowicki, E., Smutnicki, C.: A fast taboo search algorithm for the job shop problem. Management Science 42(6), 797–813 (1996)CrossRefzbMATHGoogle Scholar
  13. 13.
    Nuijten, W., Le Pape, C.: Constraint-based job shop scheduling with ilog scheduler. Journal of Heuristics 3, 271–286 (1998)CrossRefzbMATHGoogle Scholar
  14. 14.
    Nuijten, W.P.M., Aarts, E.H.L.: A computational study of constraint satisfaction for multiple capacitated job shop scheduling. EJOR 90(2), 269–284 (1996)CrossRefzbMATHGoogle Scholar
  15. 15.
    Shaw, P., De Backer, B., Furnon, V.: Improved local search for CP toolkits. Annals of Operations Research 115, 31–50 (2002)CrossRefMathSciNetzbMATHGoogle Scholar
  16. 16.
    Singer, M., Pinedo, M.: A computational study of branch and bound techniques for minimizing the totalweighted tardiness in job shops. IIE Scheduling and Logistics 30, 109–118 (1997)Google Scholar
  17. 17.
    Singer, M., Pinedo, M.: A shifting bottleneck heuristic for minimizing the totalweighted tardiness in job shops. Naval Research Logistics 46(1), 1–17 (1999)CrossRefMathSciNetzbMATHGoogle Scholar
  18. 18.
    Van Hentenryck, P., Michel, L.: Control abstractions for local search. In: Rossi, F. (ed.) CP 2003. LNCS, vol. 2833, Springer, Heidelberg (2003) (Best Paper Award)CrossRefGoogle Scholar
  19. 19.
    Voss, S., Woodruff, D.: Optimization Software Class Libraries. Kluwer, Dordrecht (2002)zbMATHGoogle Scholar
  20. 20.
    Walser, J.: Integer Optimization by Local Search. Springer, Heidelberg (1998)Google Scholar
  21. 21.
    Werner, F., Winkler, A.: Insertion Techniques for the Heuristic Solution of the Job Shop Problem. TR, Technical Universitaet Magdebourg (1992)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2004

Authors and Affiliations

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

Personalised recommendations