Constraints Propagation Techniques in Batch Plants Planning and Scheduling



Similar documents
Integrated support system for planning and scheduling /4/24 page 75 #101. Chapter 5 Sequencing and assignment Strategies

Optimal Planning of Closed Loop Supply Chains: A Discrete versus a Continuous-time formulation

4.2 Description of the Event operation Network (EON)

A joint control framework for supply chain planning

An Interactive Train Scheduling Tool for Solving and Plotting Running Maps

System-Dynamics modelling to improve complex inventory management in a batch-wise plant

A Beam Search Heuristic for Multi-Mode Single Resource Constrained Project Scheduling

Scheduling Resources and Costs

Goals of the Unit. spm adolfo villafiorita - introduction to software project management

A MILP Scheduling Model for Multi-stage Batch Plants

An improved on-line algorithm for scheduling on two unrestrictive parallel batch processing machines

OPTIMIZATION MODEL OF EXTERNAL RESOURCE ALLOCATION FOR RESOURCE-CONSTRAINED PROJECT SCHEDULING PROBLEMS

Leaving Certificate Technology. Project Management. Teacher Notes

Clustering and scheduling maintenance tasks over time

Abstract Title: Planned Preemption for Flexible Resource Constrained Project Scheduling

Ontologies for Enterprise Integration

Problems, Methods and Tools of Advanced Constrained Scheduling

Scheduling Algorithm with Optimization of Employee Satisfaction

A GUIDE TO NETWORK ANALYSIS by MICHAEL C GLEN

A Computer Application for Scheduling in MS Project

A Flexible Mixed Integer Programming framework for Nurse Scheduling

A Slot Representation of the Resource-Centric Models for Scheduling Problems

Branch-and-Price Approach to the Vehicle Routing Problem with Time Windows

Solving the chemotherapy outpatient scheduling problem with constraint programming

Leaving Certificate Technology. Project Management. Student Workbook

Multiproduct Batch Plant Scheduling

Dimensioning an inbound call center using constraint programming

A. O. Odior Department of Production Engineering University of Benin, Edo State.

An Integer Programming Model for the School Timetabling Problem

Criticality of Schedule Constraints Classification and Identification Qui T. Nguyen 1 and David K. H. Chua 2

A batch scheduling problem arising in the chemical industry. C. Gicquel, L. Hege, M. Minoux Centrale Recherche S.A.

A New Approach for Efficient Rescheduling of Multiproduct Batch Plants

Integrated maintenance scheduling for semiconductor manufacturing

Alternative Job-Shop Scheduling For Proton Therapy

A Generalized PERT/CPM Implementation in a Spreadsheet

Models for Incorporating Block Scheduling in Blood Drive Staffing Problems

Backward Scheduling An effective way of scheduling Warehouse activities

Project Scheduling: PERT/CPM

jobs that obey the norms must ensure the load balancing qualities. Load balancing should be interpreted as releasing a balanced mix of jobs to the

A Continuous-Time Formulation for Scheduling Multi- Stage Multi-product Batch Plants with Non-identical Parallel Units

A Shift Sequence for Nurse Scheduling Using Linear Programming Problem

The Trip Scheduling Problem

Resource Allocation and Scheduling

Future Generation Computer Systems. Deadline-constrained workflow scheduling algorithms for Infrastructure as a Service Clouds

Simulation-based Optimization Approach to Clinical Trial Supply Chain Management

Scheduling Intermediate Storage Multipurpose Batch Plants Using the S-Graph

Optimal Maintenance Scheduling of a. Gas Engine Power Plant. using Generalized Disjunctive Programming

Vehicle Routing and Job Shop Scheduling: What s the difference?

Constraint-Based Scheduling: A Tutorial

1 st year / / Principles of Industrial Eng. Chapter -3 -/ Dr. May G. Kassir. Chapter Three

BATCH SCHEDULING IN TiO 2 PRODUCTION

Batch Production Scheduling in the Process Industries. By Prashanthi Ravi

Network analysis: P.E.R.T,C.P.M & Resource Allocation Some important definition:

Dynamic Models Towards Operator and Engineer Training: Virtual Environment

Analyzing the Procurement Process in a Simplified Version of the TAC SCM Game

University of British Columbia Co director s(s ) name(s) : John Nelson Student s name

Overview of Industrial Batch Process Scheduling

Use of a distributed simulation environment for training in Supply Chain decision making

Choosing Planning & Scheduling solutions for Metals

State-of-the-art review of optimization methods for short-term scheduling of batch processes

Guidance on Critical Path Analysis

Logistics Management Inventory Cycle Inventory. Özgür Kabak, Ph.D.

Supply Chain Planning Considering the Production of Defective Products

Energy Management for Heat Intensive Production Plants using Mixed Integer Optimization

Project and Production Management Prof. Arun Kanda Department of Mechanical Engineering Indian Institute of Technology, Delhi

300 Scheduling and Budgeting

ANT COLONY OPTIMIZATION ALGORITHM FOR RESOURCE LEVELING PROBLEM OF CONSTRUCTION PROJECT

Factors to Describe Job Shop Scheduling Problem

Lecture Outline Overview of real-time scheduling algorithms Outline relative strengths, weaknesses

Management and optimization of multiple supply chains

On-line scheduling algorithm for real-time multiprocessor systems with ACO

Importance of Project Schedules. matter what happens on a project. projects, especially during the second half of projects

Optimal Scheduling for Dependent Details Processing Using MS Excel Solver

Integrating Benders decomposition within Constraint Programming

Analytics for Performance Optimization of BPMN2.0 Business Processes

A Tool for Generating Partition Schedules of Multiprocessor Systems

Information Theory and Coding Prof. S. N. Merchant Department of Electrical Engineering Indian Institute of Technology, Bombay

Real Time Scheduling Basic Concepts. Radek Pelánek

On-line Scheduling of Real-time Services for Cloud Computing

Likelihood Approaches for Trial Designs in Early Phase Oncology

Workforce Planning and Scheduling for the HP IT Services Business

Multi-layer MPLS Network Design: the Impact of Statistical Multiplexing

Brillig Systems Making Projects Successful

Project Time Management

Resources Management

Design, synthesis and scheduling of multipurpose batch plants via an effective continuous-time formulation

JUST-IN-TIME SCHEDULING WITH PERIODIC TIME SLOTS. Received December May 12, 2003; revised February 5, 2004

Speech at IFAC2014 BACKGROUND

Real-Time Scheduling (Part 1) (Working Draft) Real-Time System Example

Scheduling Constraints and Disjunctive Constraints

ME 407 Mechanical Engineering Design Spring 2016

Generate optimal production schedules to maximize profitability and meet service levels

The Multi-Item Capacitated Lot-Sizing Problem With Safety Stocks In Closed-Loop Supply Chain

Classification - Examples

Information Logistics for Supply Chain Management within Process Industry Environments

PROJECT EVALUATION REVIEW TECHNIQUE (PERT) AND CRITICAL PATH METHOD (CPM)

Operations Management OPM-301-TE

How To Plan Production

Appendix A of Project Management. Appendix Table of Contents REFERENCES...761

Operations Management

Transcription:

European Symposium on Computer Arded Aided Process Engineering 15 L. Puigjaner and A. Espuña (Editors) 2005 Elsevier Science B.V. All rights reserved. Constraints Propagation Techniques in Batch Plants Planning and Scheduling Maria Teresa M. Rodrigues a and Luis Gimeno b* State University of Campinas a DESQ/FEQ, b DCA/FEEC UNICAMP 13083-970 Campinas S.P., Brasil Abstract The problem considered is make to order situations where products due dates and raw materials delivery times are constraints that the user must try to satisfy or negotiate. Those constraints, coupled with recipe and resource constraints, can be conveniently handled through constraints propagation techniques both in planning and scheduling. An interactive planning system is discussed where the user gets, after each decision, a feedback in terms of batches processing time windows, equipment units load and estimated resources utilization. APS-like scheduling heuristics exploit these measures to implement internal procedures to select batches in the sequential scheduling procedure. Keywords: Constraints propagation, Planning, Scheduling 1. Introduction In planning and scheduling problems any solution must respect some set of hard constraints and additionally the user would like some other set of soft constraints to be satisfied or violated to some acceptable extent. Typically the user will begin with the full set of constraints and if no feasible solution is obtained will proceed to relax some constraints evaluating the cost of its violation. Scheduling techniques have always dealt with constraints enforcement in the form of constraints formulation in mathematical programming approaches or logical conditions to be enforced in direct search approaches. In a mathematical programming approach constraints must be formulated as equations before the problem is solved, so that they must be valid equations no matter what decisions are taken during the solve procedure. This can be a difficult or heavy task as for example when cumulative resources constraints must be introduced. On the other side direct search procedures like Branch & Bound, metaheuristics or other heuristics can trigger a specific constraint analysis only when a decision involved in the constraint is taken, e.g. capacity on a specific equipment unit is analyzed only if a task is scheduled on that unit. Combination of the two approaches, called hybrid approaches, has been an active field of research. Time constraints are a very frequent type of constraints in planning and scheduling problems, they impose time limits within which a task can be processed, defining task s earliest starting time (est) and latest finishing time (lft) or in other terms a time window for task processing (e.g. input materials arrival, due dates, equipment units maintenance). Moreover some other constraints can have some of its consequences translated in constraints on tasks time window limits as far as they impose some * Author to whom correspondence should be addressed: maite@desq.feq.unicamp.br

ordering among tasks. This is the case for example with shared unary resources which can handle only one task at a time like equipment units or limited intermediate storage units. Shared cumulative resources like manpower can also impose constraints on time windows. In this work direct and indirect time constraints are utilized both in planning and scheduling problems. At the planning phase they allow to analyze equipment units load and plan feasibility in terms of planned due dates and input materials availability. For scheduling purposes an APS-like scheduling heuristic is proposed which utilizes updated time windows to select and schedule a task at each step. Constraints analysis and propagation is a maintenance procedure of tasks time window limits to be all together coherent. In planning problems this procedure enforces constraints on equipment units utilization and intermediate storage and transfer policies. During the scheduling procedure it is a maintenance procedure of time window, which modifies its limits to be coherent with the scheduling decisions already made. The term constraints propagation emphasizes that a task time window modification can trigger modifications on other tasks time windows if its consequences are conveniently propagated. The objective of this paper is to discuss some of the propagation mechanisms and constraints analysis tools existing in the literature, basically constrained based search literature in the computer science area, and present some new propagation mechanisms developed by the authors. Those propagation mechanisms, coupled with tools for estimating equipment units load, have been implemented in an interactive planning & scheduling system for short term batch problems and in an APS-like scheduling system utilized in a chemical industrial plant. 2. Constraints propagation procedures Constraints propagation techniques over tasks time windows have been developed by several authors (Erschler et al., 1976; Fox, 1983; Keng et al., 1988; Sadeh, 1991; Caseau et al, 1994; Cheng et al., 1997) and have been utilized in commercial software systems (ILOG, 1997). Main mechanisms are discussed below. In a scheduling problem its utilization supposes that a previous planning system has determined all the batches that have to be scheduled, precedence relationship among them, equipment unit(s) assigned to each batch and an initial time window for each batch (that can be the entire scheduling horizon). In this way each batch b of a task t has a time window given by its earliest starting time est(t,b) and its latest finishing time lft(t,b) and a processing time pt(t,b). For two batches one can have to precede the other by mass balance constraints prec(t 1,b 1,t 2,b 2 )=true. Two time instants in a batch time window are derived from est and lft: its earliest finishing time eft = est + pt and latest starting time lst = lft pt. 2.1 Constraints induced by precedences. (Erschler et al., 1976) If there is a precedence between two batches, prec(t 1,b 1,t 2,b 2 )=true then the following conditions must be enforced: est(t 2,b 2 ) eft(t 1,b 1 ) and lft(t 1,b 1 ) lst(t 2,b 2 ). If any of such conditions is not satisfied est(t 2,b 2 ) has to be increased and/or lft(t 1,b 1 ) has to be reduced thus reducing respective time windows. A similar constraint propagation can be enforced over batches of the same task assigned to the same equipment to avoid equivalent solutions. Obligatory precedence relationships are deduced from mass balance considerations. The user as is usual in constrained based search may establish other precedence relations.

2.2 Constraints induced by zero wait transfer policies. (Rodrigues et al.,2000) If there is a zero wait transfer policy between two batches (t 1,b 1 ) and (t 2,b 2 ) then the following conditions hold: eft(t 1,b 1 ) est(t 2,b 2 ) and lst(t 2,b 2 ) lft(t 1,b 1 ). If any of such conditions is not satisfied est(t 1,b 1 ) has to be increased and/or lft(t 2,b 2 ) has to be reduced thus reducing respective time windows. 2.3 Constraints induced by limited intermediate storage. (Rodrigues et al.,2000) Time windows for batches producing and consuming an intermediate with limited storage capacity can be utilized to calculate storage time profiles in two limiting scenarios: i) production time allocation at eft and consumption at est and ii) production time allocation at lft and consumption at lst. In the first case if storage capacity is exceeded some production batches have to be delayed through est increases, in the second some consumption batches must be anticipated through lft reductions (which will reduce lst consumption times). Which batches must have its time windows reduced is not entirely fixed but starting with the first/last batches involved in the problem allow producing lower reductions. 2.4 Constraints induced by equipment units. If a batch (t,b) is assigned to an equipment unit its time window can induce a forced occupation during a time interval. In Sadeh, 1991, the concept of slot of total reliance is introduced as the time interval (lst, eft) which necessarily will be utilized by the task if eft > lst that is if the time window is lower than twice the processing time. Intervals of total reliance (by a batch) are not allowed to other batches assigned to the same equipment unit. This hole in a time window would make necessary to work with multiple disjoint time windows, which is not supported by actual constraint propagation mechanism. Nevertheless they can be taken into account in special conditions, for example when heads and/or tails originated by intervals of total reliance are useless because their extent is lower than processing time; in this case they can be eliminated thus leading to time windows reductions. In Caseau et al.,1994, conditions are presented in order to analyze in which situations a set of batches assigned to the same equipment unit lead to obligatory precedence relationships among some of them. Given a set S of batches i and a batch (t,b) not contained in S, conditions are obtained to conclude if (t,b) does not precede the entire set S, does not follow the entire set S, precedes S or is preceded by S. Earliest starting time (ests) and latest finishing time (lfts) for set S are defined as minimum est and maximum lft among the batches in the set, set processing time pts as the sum of batches processing times. If lfts est < pts + pt then (t,b) does not precede the entire set and the condition est min(eft i ) holds, if additionally lfts ests < tps + tp then (t,b) cannot be processed among tasks i and it follows that S precedes (t,b) so that the condition est ests + tps can be imposed. In the same way if lft ests < pts + pt then (t,b) does not follow the entire set and the condition lft max(lst i ) holds, if additionally lfts ests < tps + tp then (t,b) cannot be processed among tasks i and it follows that (t,b) precedes S so that the condition lft lfts - tps can be imposed. 2.5 Equipment units load imposed by time windows. In Keng et al., 1988 and Sadeh, 1991 similar concepts are presented to represent the load imposed on an equipment unit by the batches assigned to it. Keng defines batch criticality as the ratio between processing time and time window span, and equipment unit cruciality function as a time function obtained summing up batches criticalities. Sadeh introduces the batch individual demand as a time function representing the likelihood that a discretized time interval be used by the batch, and the equipment unit

aggregated demand summing up batches individual demands. Both authors utilize these concepts to guide constrained based search scheduling algorithms. These time functions are related to slack measures utilized by Cheng et al., 1997. The authors have proposed to utilize equipment units load as useful insight in the planning phase to evaluate plant loading and possible bottlenecks (Rodrigues et al.,2000). On the other side it can be used during the scheduling procedure to reduce the burden of the constraint propagation mechanisms, which look for possible ordering among batches in the same equipment unit discussed in the previous section. In fact forced ordering among batches is likely to occur when equipment unit load is high or in the time intervals where load is higher. Equipment unit load has been used to filter out units and time intervals where the constraint propagation mechanism is launched reducing significantly the computer effort. 3. Simple planning problem A very simple planning problem is used to illustrate time windows utilization. Four products A, B, C and D are manufactured through two stages (tasks) each. First tasks A1 and B1 share the same equipment unit U1. Tasks A2 and B2 utilize U3, C1 and D1 utilize U2, C2 and D2 utilize U4. Demand for products B, C and D is located at the end of the horizon (t = 432). There are three demands on product A at times 144, 288 and 432. Raw materials are available at t = 0. Given batchsizes the planning system leads to 8 batches for tasks A1 and A2 and 3 batches for all the other tasks. Tasks processing times are: A1(31), A2(33), B1(32), B2(32), C1(27), C2(16), D1(21) and D2(19). Batches time windows and equipment units load (aggregated demand) are given in Figure 1. A1 A2 B1 B2 C1 C2 D1 D2 demands for product A at: 144 288 432 Figure 1. Equipment units load and batches time windows. Intermediate demands for product A lead to shorter time windows for initial batches of tasks A1 and A2 which leads to higher load on units U1 and U3 at the beginning of the horizon. Suppose that the user wants to analyze if product B can be scheduled after product A as far as its batches time windows are large. With this objective earliest starting time - est of the first batch of task B1, B1/1 is modified from t = 0 to t = 280. Constraints propagation leads to the scenario of Figure 2. It can be observed that the increase in est

of B1/1 is propagated to the other batches of B1 and to the batches of the second task B2 as could be expected. What is less evident is that that same increase leads to reductions in lft of all the batches of tasks A1 and A2. This results from propagation of capacity constraints in the utilization of equipment units U1 and U3. Some other time windows modifications by the user can be introduced. For example as load in units U2 and U4 are low the user may want to analyze if products C and D can be delivered early or started later with a postponed delivery of raw materials. Figure 3 shows the result when due date of product C is reduced to t = 160 and for product D raw materials are made available at t = 160 and due date is reduced to t = 300. A1 A2 B1 B2 C1 C2 D1 D2 Figure 2. Scenario after modification of est of the first batch of task B1 Figure 3. Scenario after modification of due date (C) and delivery time (D) 4. Time windows based scheduling heuristic Many existing scheduling heuristics have been introduced in recent years into commercial Advanced Planning and Scheduling systems (APS). In general they utilize a constructive or simulation approach where, at each step, a batch is selected and a start time is defined. The constructive approach of the Gantt chart allows taking into account a great number of plant and recipe constraints as far as the actual situation of the plant is known at each step. In this way a convenient/feasible start time can be defined. The A1 A2 B1 B2 C1 C2 D1 D2

main problem is batch selection. Selection often relies on a batch/task priority order defined by the user from the beginning of the scheduling procedure and/or a priority order in the choice of equipment units to treat bottlenecks first. Again bottlenecks are selected at the beginning. Batches time windows, and its maintenance through constraints propagation, allow developing scheduling heuristics with internal batch selection based on characteristics such as batches criticality, equipment units load and time interval spanned by each batch time window. Heuristics focusing on bottlenecks can benefit from updated equipment units load thus selecting at each step the unit and time interval where batches scheduling is likely to be harder. Heuristics aimed to schedule batches as soon/late as possible select the batch considering the batches whose time windows start/end earlier/later, without using the time instants where equipment units become available as the unique information for batch selection. This selection procedure coupled with candidate batches criticality allow picking up first batches with lower schedule possibilities. This in turn reduces the possibility of undesirable solutions, in the sense that some batches cannot be scheduled inside their time windows, thus implying that some due dates will not be fulfilled or raw materials deliveries must be anticipated. A heuristic aimed to schedule batches as soon as possible has been developed. The procedure utilizes a rolling time horizon and unscheduled batches criticality. Rolling horizon starts at the minimum earliest starting time est among the unscheduled batches and has a duration established by the user. Batches with est inside the rolling horizon are candidate batches for selection. One batch is selected according to equipment units load and batch criticality. After batch allocation time windows are updated through constraints propagation as well as equipment units load. For the scenario in Figure 3 computer time was 5 seconds and all the batches were allocated inside its time windows. 5. Conclusions Interactive and/or heuristic planning and scheduling techniques in short term problems can benefit from constraints propagation over batches processing time windows. They allow to visualize and take into account the consequences of decisions that often are complex and difficult to infer. References Erschler J., Roubellat, F., and Vernhes J.P.,1976, Finding Some Essential Characteristics of the Feasible Solutions for a Scheduling Problem. Operations. Research., 24(4). Fox M.S.,1983, Constraint-directed search: a case study in job shop scheduling. Ph.D.Thesis, Carnegie Mellon University, Computer Science Department, Pittsburgh, USA. Caseau Y., and Laburthe F.,1994, Improved CLP Scheduling with Tasks Intervals. Proceedings Eleventh International Conference on Logic Programming. Santa Margherita Ligure, Italy. Keng N.P., Yun D.Y.Y., and Rossi M.,1988, Interaction Sensitive Planning System for Job-Shop Scheduling, in Expert Systems and Intelligent Manufacturing, Ed. M.D.Oliff. Elsevier. Sadeh N.,1991, Look-Ahead Techniques for Micro-Opportunistic Job Shop Scheduling. Ph.D. Dissertation, CMU-CS-91-102, School of Computer Science, Carnegie Mellon University. Cheng C., Smith S.F.,1997, Applying constraint satisfaction techniques to job shop scheduling. Annals of Operations Research (70). ILOG,1997, ILOG Solver White Paper. ILOG Inc.,Mountain View, CA, USA. Rodrigues M.T.M., Latre L.G., Rodrigues C.A.,2000, Production Planning Using Time Windows for Short-Term Multipurpose Batch Plants Scheduling Problems. Ind Eng Chem. Res., 39.