Constraint-Based Scheduling: An Introduction for Newcomers (original) (raw)

Constraint-Based Scheduling : A Tutorial

2005

Given a set of resources with given capacities, a set of activities with given processing times and resource requirements, and a set of temporal constraints between activities, a “pure” scheduling problem consists of deciding when to execute each activity, so that both temporal constraints and resource constraints are satisfied. Most scheduling problems can easily be represented as instances of the constraint satisfaction problem (Kumar, 1992): given a set of variables, a set of possible values (domain) for each variable, and a set of constraints between the variables, assign a value to each variable, so that all the constraints are satisfied.

Constraint logic programming and scheduling problems

1996 IEEE International Conference on Systems, Man and Cybernetics. Information Intelligence and Systems (Cat. No.96CH35929)

Classical approaches f o r the resolution of combinatorial problems are of two kinds: exact methods or approximate ones. Scheduling problems enter in this framework. Up to now, Operational Research tools were proposed to consider such problems. Recently, new resolution methods were developped. This is the case for the familly of stochastic methods or genetic algorithms. But, real life problem that come from the industrial environment require more jlexible tools. This is the purpose of Constraint Logic Programming approach. It allows one to ally versatility and eficiency. We will show in this paper, why this new generation of tools seems to be interesting for solving scheduling problems.

Constraint-based scheduling

Proceedings of the 2001 American Control Conference. (Cat. No.01CH37148), 2001

Constraint-based scheduling has become the dominant form of modeling and solving scheduling problems. Recently, due to ever more powerful embedded processors, it has become possible to embed and run constraint-based schedulers on-line even for fast processes such as product assembly sequencing. This makes constraint-based scheduling interesting to the control community as a new tool for system control, distributed and reconfigurable control, and the integration of various planning, scheduling, and control tasks. This tutorial gives a brief introduction to constraint-based scheduling, generic constraint programming techniques for modeling and solving scheduling problems, and a concrete real-time application example. *

Constraint Analysis and Heuristic Scheduling Methods

2000

Scheduling is one of the main problems that need to be solvedby high-level hardware and software compilers. Existing heuristics are oftenincapable of finding feasible solutions for practical examples, becausethe tight time and resource constraints make the feasible-solution subspacevery small compared to the size of the full search space. For that reason,constraint-analysis techniques that help the scheduler find feasible solutionsare nowadays

Constraint programming: In pursuit of the holy grail

Proceedings of WDS99 (invited lecture), Prague, June, 1999

Constraint programming (CP) is an emergent software technology for declarative description and effective solving of large, particularly combinatorial, problems especially in areas of planning and scheduling. It represents the most exciting developments in programming languages of the last decade and, not surprisingly, it has recently been identified by the ACM (Association for Computing Machinery) as one of the strategic directions in computer research. Not only it is based on a strong theoretical foundation but it is attracting widespread commercial interest as well, in particular, in areas of modelling heterogeneous optimisation and satisfaction problems. In the paper, we give a survey of constraint programming technology and its applications starting from the history context and interdisciplinary nature of CP. The central part of the paper is dedicated to the description of main constraint satisfaction techniques and industrial applications. We conclude with the overview of limitations of current CP tools and with outlook of future directions.

Constraint-based scheduling: principles and application

IEE Colloquium on Intelligent Planning and Scheduling Solutions, 1996

Welcome to Prague Technology Information Day, the next event from the series of Technology Information Days organized by the PLANET Network of Excellence (http://www.planet-noe.org). The goal of these information days is to show practical applicability of the planning and scheduling technology and to promote the transfer of the technology with some emphasis to local community. The Prague event will not differ from this tradition. Speakers both from industry and academia have been invited; all of them have deep experience with solving reallife projects all over the world.

New trends in constraint satisfaction, planning, and scheduling: a survey

The Knowledge Engineering Review, 2010

During recent years the development of new techniques for constraint satisfaction, planning, and scheduling has received increased attention, and substantial effort has been invested in trying to exploit such techniques to find solutions to real life problems. In this paper, we present a survey on constraint satisfaction, planning and scheduling from the Artificial Intelligence point of view. In particular, we present the main definitions and techniques, and we discuss possible ways of integrating such techniques. We also analyze the role of constraint satisfaction in planning and scheduling, and we hint at some open research issues related to planning, scheduling and constraint satisfaction. 2 ROMAN BARTÁK, MIGUEL A. SALIDO, FRANCESCA ROSSI very useful to prune the search space. We then present three families of search techniques: Look-Back, Look-Ahead, and local search. Finally, we discuss some variable and value ordering heuristics, that can improve the efficiency of the previous techniques.

Three mechanisms for managing resource constraints in a library for constraint-based scheduling

Proceedings 1995 INRIA/IEEE Symposium on Emerging Technologies and Factory Automation ETFA 95 ETFA-95, 1995

ILOG SCHEDULE is a C++ library aimed at simplifying the development of industrial scheduling applications. SCHEDULE is based on SOLVER, a generic tool for object-oriented constraint programming. SCHEDULE includes three categories of predefined constraints: temporal constraints, capacity constraints, and resource utilization constraints. Three distinct mechanisms are available to deal with resource utilization constraints. The first mechanism relies on explicit time-tables to maintain information about the variations of resource utilization and resource availability over time. The second mechanism relies on a generic disjunctive constraint which ensures that incompatible activities (for example, activities which require a common resource of capacity 1) cannot overlap in time. The third mechanism, known as edge-finding, considers arbitrary tuples {A 1 ... A n } of activities to prove that some activity A i must execute first, or must execute last, among {A 1 ... A n }. The edge-finding mechanism is a priori more CPU-time consuming than the two other mechanisms, but results in the assignment of more precise earliest and latest start and end times to activities. Each of the three mechanisms is useful, as the time-table and disjunctive mechanisms enable the expression of wider classes of constraints, while edge-finding is in general the most effective in pruning the search space.

A constraint-posting framework for scheduling under complex constraints

Proceedings 1995 INRIA/IEEE Symposium on Emerging Technologies and Factory Automation. ETFA'95, 1995

Scheduling in many practical industrial domains is complicated by the need to account for diverse and idiosyncratic constraints. Quite often these requirements are at odds with the techniques and results produced by the scheduling research community, which has focused in large part on solutions to more idealized, canonical problems. Recent research in temporal reasoning and constraint satisfaction has produced problem solving models that operate with respect to much more general representational assumptions. These frameworks o er possibilities for developing scheduling technologies that naturally extend to accommodate the peculiarities of various application domains. One critical issue, of course, is whether such generality can be obtained without sacri cing scheduling performance. In this paper, we i n vestigate this issue through application of a previously developed constraint satisfaction problem solving CSP model for deadline scheduling to a complicated, multi-product hoist scheduling problem encountered in printed circuit board PCB manufacturing. The goal is to maximize throughput of an automated PCB electroplating facility while ensuring feasibility with respect to process, capacity and material movement constraints. Building from a heuristic procedure generically referred to as PCP precedence constraint posting, which relies on a temporal constraint graph representation of the problem, we straightforwardly de ne an extended solution procedure for minimizing makespan. In a series of comparative experiments, our procedure is found to signi cantly outperform previously published procedures for solving this hoist problem across a broad range of input assumptions.