Scheduling Abstractions for Local Search

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.

[1]  G. P. McKeown,et al.  Optimization Software Class Libraries , 2002, Operations Research/Computer Science Interfaces Series.

[2]  Mauro Dell'Amico,et al.  Applying tabu search to the job-shop scheduling problem , 1993, Ann. Oper. Res..

[3]  E. Nowicki,et al.  A Fast Taboo Search Algorithm for the Job Shop Problem , 1996 .

[4]  Luca Maria Gambardella,et al.  Effective Neighborhood Functions for the Flexible Job Shop Problem , 1998 .

[5]  David L. Woodruff,et al.  Optimization software class libraries , 2002 .

[6]  Claude Le Pape,et al.  Constraint-Based Job Shop Scheduling with IILOG SCHEDULER , 1998, J. Heuristics.

[7]  Michael Pinedo,et al.  A computational study of branch and bound techniques for minimizing the total weighted tardiness in job shops , 1998 .

[8]  Pascal Van Hentenryck,et al.  Localizer , 2004, Constraints.

[9]  Joachim P. Walser Integer Optimization by Local Search , 2000, Lecture Notes in Computer Science.

[10]  Frank Werner,et al.  Insertion Techniques for the Heuristic Solution of the Job Shop Problem , 1995, Discret. Appl. Math..

[11]  Michael Pinedo,et al.  A shifting bottleneck heuristic for minimizing the total weighted tardiness in a job shop , 1999 .

[12]  Luca Di Gaspero,et al.  Writing Local Search Algorithms Using Easylocal , 2003 .

[13]  Pascal Van Hentenryck,et al.  Control Abstractions for Local Search , 2003, CP.

[14]  Pascal Van Hentenryck,et al.  A constraint-based architecture for local search , 2002, OOPSLA '02.

[15]  Philippe Laborie,et al.  Algorithms for propagating resource constraints in AI planning and scheduling: Existing approaches and new results , 2003, Artif. Intell..

[16]  Pascal Van Hentenryck,et al.  Maintaining Longest Paths Incrementally , 2003, CP.

[17]  Vincent Furnon,et al.  Improved Local Search for CP Toolkits , 2002, Ann. Oper. Res..

[18]  Ehl Emile Aarts,et al.  A computational study of constraint satisfaction for multiple capacitated job shop scheduling , 1996 .

[19]  Pascal Van Hentenryck,et al.  Iterative Relaxations for Iterative Flattening in Cumulative Scheduling , 2004, ICAPS.

[20]  S. Kreipl A large step random walk for minimizing total weighted tardiness in a job shop , 2000 .

[21]  Stephen F. Smith,et al.  Iterative Flattening: A Scalable Method for Solving Multi-Capacity Scheduling Problems , 2000, AAAI/IAAI.

[22]  François Laburthe,et al.  SALSA: A Language for Search Algorithms , 1998, Constraints.