Interval-Based Language for Modeling Scheduling Problems: An Extension to Constraint Programming

IBM ILOG CP Optimizer (CPO) provides a scheduling language supported by a robust and efficient automatic search. This paper summes up the major language constructs and shed some lights on their propagations. Among the main constructs it introduces the notion of interval variable which enable reasoning on conditional time-intervals representing activities or tasks that may or may not be executed in the final schedule. In Constraint-Based Scheduling, those problems are usually handled by defining new global constraints over classical integer variables. This dual perspective facilitates an easy modeling process while ensuring a strong constraint propagation and an efficient search in the engine. The approach forms the foundations of the new generation of scheduling model and algorithms provided in CPO. Small examples are provided at the end of the language construct, however at the end of the paper three larger/real life examples recently studied in the scheduling literature are presented along some computational results illustrating both the expressivity of the modeling language and the robustness of the automatic search. Interestingly all three problems can easily be modeled with the language in only a few dozen lines (the complete models are provided) and on average the automatic search outperforms existing problem specific approaches.

[1]  Roman Barták,et al.  Temporal Networks with Alternatives: Complexity and Model , 2007, FLAIRS.

[2]  Petr Vilím,et al.  Global Constraints in Scheduling , 2007 .

[3]  Stephen F. Smith,et al.  Understanding Performance Tradeoffs in Algorithms for Solving Oversubscribed Scheduling , 2007, AAAI.

[4]  Philippe Baptiste,et al.  Constraint-based scheduling , 2001 .

[5]  Andrew V. Goldberg,et al.  Shortest paths algorithms: Theory and experimental evaluation , 1994, SODA '94.

[6]  D. Godard,et al.  Self-Adapting Large Neighborhood Search: Application to Single-Mode Scheduling Problems , 2007 .

[7]  L. Darrell Whitley,et al.  A Comparison of Genetic Algorithms for the Static Job Shop Scheduling Problem , 2000, PPSN.

[8]  Stephen F. Smith,et al.  Generating Robust Schedules through Temporal Flexibility , 2004, ICAPS.

[9]  Philippe Laborie,et al.  Reasoning with Conditional Time-Intervals , 2008, FLAIRS.

[10]  Edward P. K. Tsang,et al.  Constraint Based Scheduling: Applying Constraint Programming to Scheduling Problems , 2003, J. Sched..

[11]  Ronen I. Brafman,et al.  A simplifier for propositional formulas with many binary clauses , 2001, IEEE Transactions on Systems, Man, and Cybernetics, Part B (Cybernetics).

[12]  Philippe Baptiste,et al.  Constraint - based scheduling : applying constraint programming to scheduling problems , 2001 .

[13]  Christian Bessiere,et al.  Arc Consistency for General Constraint Networks: Preliminary Results , 1997, IJCAI.

[14]  Martha E. Pollack,et al.  Augmenting Disjunctive Temporal Problems with Finite-Domain Constraints , 2005, AAAI.

[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]  Ioannis Refanidis,et al.  Managing Personal Tasks with Time Constraints and Preferences , 2007, ICAPS.

[17]  Petr Vilím,et al.  Reasoning with Conditional Time-Intervals. Part II: An Algebraical Model for Resources , 2009, FLAIRS.

[18]  J. Christopher Beck,et al.  Scheduling Alternative Activities , 1999, AAAI/IAAI.

[19]  Upendra Dave,et al.  Heuristic Scheduling Systems , 1993 .

[20]  Amedeo Cesta,et al.  Gaining efficiency and flexibility in the simple temporal problem , 1996, Proceedings Third International Workshop on Temporal Representation and Reasoning (TIME '96).