A CP Method for the Scheduling of Multiproduct ...

4 downloads 47068 Views 532KB Size Report
focuses on those campaigns that seem to be more demanding in terms of ..... The adopted one was the strategy that exhibited the best performance for the.
16th European Symposium on Computer Aided Process Engineering and 9th International Symposium on Process Systems Engineering W. Marquardt, C. Pantelides (Editors) © 2006 Published by Elsevier B.V.

A CP Method for the Scheduling of Multiproduct Continuous Plants with Resource Constraints Luis J. Zeballos and Gabriela P. Henning INTEC (Universidad Nacional del Litoral -CONICET), Güemes 3450- 3000 Santa Fe – Argentina

Abstract This contribution presents advances in relation to a prior Constraint Programming (CP) formulation that addresses the scheduling problem of a multiproduct plant that has continuous stages and a limited number of intermediate storage tanks. The proposed approach is able to handle production rates of intermediate products which can be greater or lower than the rates of their corresponding consumption campaigns. In addition, the formulation includes a domain specific search strategy which aims at speeding-up the solution process and making problems tractable. The search strategy focuses on those campaigns that seem to be more demanding in terms of storage and equipment requirements and resorts to a domain reduction specific procedure. The proposed approach has rendered very good results for various test problems. Keywords: Scheduling, Multiproduct continuous facilities, Constrained resources, Constraint Programming.

1. Introduction The short-term scheduling of multiproduct continuous plants, having storage tanks of finite capacity between consecutive stages is a problem of practical interest. Tanks allow increasing plant productivity and operational efficiency. This type of problem has received some attention during the last decade. Early publications have addressed it by means of mathematical programming formulations (Zhang and Sargent, 1998; Méndez and Cerdá, 2002). However, these approaches exhibit some disadvantages; specially when industrial problems are considered. First, large-size models, which become hard to solve, are obtained. Moreover, the large number of campaigns generated for each production task gives as result non-realistic schedules. On the other hand, some formulations introduce hard assumptions about the problem. For instance, if two consecutive stages are considered, certain approaches assume that the rate at which a given intermediate product (IP) is produced is always greater than the rate at which it is consumed. This assumption does not always occur in practice. This paper presents advances into a prior Constraint Programming (CP) formulation proposed by the same authors (Zeballos and Henning, 2005), that addresses the scheduling problem of multiproduct continuous plants. CP (Brailsford and Potts, 1999) is a relatively new approach, originated in the computer science and artificial intelligence communities. However, it has already been adopted in the Process Systems Engineering field (Maravelias and Grossmann, 2004). The specific goal of this contribution is to extend such previous CP formulation by both including an extra set of constraints and incorporating a search strategy (SS) that allows reducing the computational load. In order to evaluate the performance of the improved formulation, different case studies were successfully addressed. Results allow to point out the benefits of the proposed approach.

1961

1962

L.J. Zeballos and G.P. Henning

2. Problem Statement The scheduling problem refers to a resource constrained multiproduct plant involving two continuous stages, in which the set of processing units able to execute each production campaign is known. The plant also involves tanks of limited capacity for the temporary storage of IPs. The problem objective is to find: (i) the optimal sequence of production runs to be executed in every continuous unit; (ii) campaign starting and completion times; as well as (iii) the assignment of IPs to tanks and the sequencing of those products allocated to the same tank, in order to minimize makespan. The model assumptions are the following: (i) final product (FP) requirements are known in advance, (ii) the number of production runs (campaigns) for each intermediate and final product is predefined and taken as problem data, iii) any campaign manufacturing an IP supplies it to several campaigns demanding such product; iv) production rates depend on the material to be produced; v) IPs can be stored in tanks or directly transferred to the following stage; vi) any IP must be stored in just one tank (no split is allowed); vii) changeover-times associated to processing units and storage tanks are sequence dependent; viii) the initial inventory of any IP is equal to zero. ix) the available storage capacity for FPs is unlimited; x) production rates of IPs can take any arbitrary value in relation to the consumption rates of such IPs by means of a set of FP campaigns.

3. Constraint Programming Model In order to address the problem described above, a CP model has already been proposed (Zeballos and Henning, 2005). It is based on the OPL constraint programming language supported by ILOG Solver (2004) and employs some specific scheduling constructs available in the ILOG Scheduler (2004). The model relies on the representation of several types of activities: (i) tasks modeling the manufacture of intermediate and final products (which are referred as intermediate and final runs), as well as (ii) tasks modeling the storage of IPs (that are referred as storage tasks). These task modeling elements are characterized by means of starting, duration and completion time variables, which are dependent among themselves. This contribution extends such model by including a new set of material balance constraints, that does not require the definition of new variables. The new constraints are posed for each final run consuming an IP. Each constraint enforces the amount of the IP stored in a given tank, at the starting time of each associated final run that consumes such product, to be less than or equal to the associated tank capacity. In other words, at the moment a FP campaign begins, the amount of its associated IP that has been manufactured up to such point, minus the amount that has been transferred to other consuming campaigns up to such moment, must not exceed the capacity of the allocated tank. Unfortunately, due to lack of space the whole model cannot be presented in this contribution. Readers are referred to Zeballos and Henning (2005) for further details.

4. Search Strategy Most of the CP systems allow users to easily define SSs. This functionality can lead to performance increases by implementing search schemes adapted to particular domains. This work proposes a SS for the scheduling problem described in Section 2, which was previously tackled (Zeballos and Henning, 2005) with the default strategies included in the ILOG Solver. The one presented in the rest of this section attempts to improve the computational performance by resorting to a variables´ domain reduction (DR) approach and also to an intelligent assignment of equipment to production campaigns, that guides the movement through the search space. One of the characteristics of the

A CP Method for the Scheduling of Multiproduct Continuous Plants

1963

proposed search scheme is that it focuses on those sets of associated campaigns that “a priori” seem to be more demanding in terms of resources; i.e., the ones that demand more usage time to equipment units and tanks. Therefore, “the most constrained first” principle is applied during the SS. Moreover, taking into account that the pursued objective is makespan, the proposed scheme performs a DR approach on the completion times of those campaigns that manufacture FPs. Since one of the assumptions of the addressed problem is that the manufacturing rates of both intermediate and final products do not depend on the assigned equipment items, these two components of the SS (DR and equipment-campaign assignment phases) are almost decoupled. In order to focus on those sets of campaigns that are more demanding in terms of productive resources a campaign ordering procedure is done as the first step of the proposed strategy. This procedure first generates clusters of campaigns. Each cluster contains a campaign that manufactures an IP as well as all the FP campaigns that consume such IP. For each cluster, the ordering procedure calculates its associated total processing time just by adding the times required by all the campaigns. Afterwards, clusters are organized in a decreasing order of processing times; moreover, for each of the identified clusters, campaigns manufacturing FPs are also arranged in a decreasing order of processing times. Having performed such arrangement of campaigns, the Bounding_Procedure (see Fig. 1) can start. It is a recursive procedure that resorts to other procedures. Bounding_Procedure operates on the domains of the completion time variables associated to the FP campaigns. The domains of such variables are characterized by two extreme points: the earliest end and the latest end times (EET & LET). The proposed DR approach performs the pruning by adopting lower values for the EETs. It begins by assigning the least possible value to the completion time of the FP campaign that belongs to the first cluster and has the highest production time. If such variable instantiation succeeds, it proceeds likewise with the next FP campaign in the first cluster ordered set. It continues in a similar way until all the domains of the FP campaigns associated with the first cluster have been tried. Then, the procedure continues in the same fashion with the remaining clusters by taking them in the order that was previously found. If an infeasible solution is found, backtracking takes place and domains are relaxed. In order to verify if the values adopted for the completion times of the FP campaigns are feasible, Bounding_Procedure resorts to the Partial_Satisfiable procedure. Assuming that the DR step has been successful, the Equipment_Assignment (see Fig. 2) strategy can start. It is a recursive procedure that guides the assignment of equipment to FP campaigns. It again resorts to the Partial_Satisfiable one, that verifies if the proposed equipment assignments are feasible. The Equipment_Assignment strategy performs the assignment of campaigns in the same order that was previously established. If a given partial assignment becomes infeasible, backtracking takes place. As a result, a new unit would be checked. If all the available units associated to a given campaign fail during this assignment step, the backtracking step will be more significant. The procedure will jump back to the previously assigned campaign, will break such assignment and will try a new unit. If during the first assignment step a set of feasible assignments cannot be found for the whole set of FP campaigns, the backtracking step will be even more severe and will reach the DR phase. It will result into to a domain enlargement of the completion time variable that was last pruned. If all FP campaigns have successfully been assigned, the Tank_Assignment (see Fig. 3) procedure begins. It is another recursive procedure that guides the assignment of storage

L.J. Zeballos and G.P. Henning

1964

units to IP campaigns. This second assignment step is carried out under the same philosophy. IP campaigns are organized in a decreasing order of processing times. Thus, the procedure will attempt to assign the processing run having the longest time to the first available storage tank. Once again, after each campaign-tank assignment is done, model constrains are checked by the Partial_Satisfiable procedure. If during this second assignment step a set of feasible assignments cannot be found for the set of IP campaigns, the backtracking step will move further and reach the previous assignment stage. In such situation, the last assigned FP campaign will be freed of its associated unit and a different one, not tried yet, will be attempted. On the other hand, if this second step of the assignment phase succeeds, a new feasible solution is found. Its associated makespan will be taken as a new bound on the latest end times of the FP campaigns. The procedure will continue in an iterative fashion by attempting a further reduction on the EETs associated to the completion times variables corresponding to the FP campaigns. Thus, the whole cycle will start again by trying a new DR phase and afterwards, a new assignment one. The strategy will finish when a further DR step turns out to be infeasible.

Fig. 1. Bounding procedure ╪

Fig. 2. Equipment assignment procedure ╪ ╪

Fig. 3. Tank assignment procedure ╪

For simplicity reasons, procedure arguments are not included

5. Computational Results In order to examine the effectiveness of the proposed CP model and of the corresponding SS, a set of test problem instances based on a fast moving consumer

A CP Method for the Scheduling of Multiproduct Continuous Plants

1965

goods manufacturing plant (Schilling and Pantelides, 1996) was solved. The plant has two processing stages (mixing and packing) and finite intermediate storage facilities between them. Specifically, the plant comprises three parallel mixers operating in a continuous way, three storage tanks of limited capacity and five continuous packing lines. The mixing stage produces seven IPs from three different base materials and the packing stage manufactures fifteen FPs from the seven intermediate ones. The adopted scheduling criterion was the makespan (Mk) minimization. Compared with a previous test problem based on the same plant (Zhang and Sargent, 1998), the problem instances that were adopted in this work have some differences. First, the production rates of the IPs can be less than, equal to or greater than the rates of their associated consumption campaigns. Moreover, there are no campaign-machine forbidden assignments, though the model can handle this type of situation. Therefore, the problem instances that were chosen in this contribution are more complex than the original one and exhibit a higher dimensionality. Problem instances were split in three classes. The first one (Problem Class I) includes case studies having rates of manufacture of IPs that are lower than the sum of the rates of the associated consumption campaigns. The second class (Problem Class II) considers case studies with production rates of IPs which are greater than the sum of the rates of the associated consumption runs. Finally, the third case (Problem Class III) involves a mixed case in which production and consumption rates can exhibit any arbitrary relationship. This group includes problem instances in which IPs are manufactured with production rates that are smaller or greater than the sum of rates of their associated consumption runs. This classification was made because the different classes imply different production patterns, that might have an effect on the performance of the SS. Several SSs were tested before accepting the one that was described in the previous section. The adopted one was the strategy that exhibited the best performance for the three classes of problems. In fact, it was the one that presented the best computational time-solution quality relationship. Tables I to III include some results obtained with both the proposed approach and the prior formulation (Zeballos and Henning, 2005) for Problem Classes I to III, respectively. Problem instances within each of the classes differ among themselves only on the values of the production rates and on the capacity of the three tanks. Therefore, all examples have the same dimensionality. Their associated models have 665 variables and 572 constraints. The time limit to obtain solutions was fixed into 500 seconds of CPU time. All the reported results correspond to good quality feasible solutions; in other words, in none of the cases an optimal solution could be obtained in less than 500 seconds. An analysis of the results reflects the fact that the proposed approach allows reducing the computational load. In addition, the CP approach, as well as the mathematical programming one, is quite sensitive to problem data. Solutions belonging to the same class of problem may demand CPU times that differ in two orders of magnitude (see Tables I and II). It may also be observed that good quality solutions are reached in low CPU times. Results were found with ILOG OPL Studio 3.7.1 and the embedded Scheduler Optimizer 6.1 release (ILOG, 2004). The computations were carried out on a Pentium IV 2.8 GHz, PC with 1 Gbyte of RAM memory. Fig. 4 schematically shows the best solution found (in less than 500 seconds of CPU time) corresponding the case study # 7. It depicts the Gantt diagram corresponding to the units’ workload and, in its lower part, the associated inventory levels. It shows the sequence of IP campaigns assigned to the storage tanks and the temporal variation of the intermediates’ inventory during the scheduling horizon.

1966

L.J. Zeballos and G.P. Henning

Table I. Results for Problem Class I Problem Instance

This Approach Prior Approach Makespan Makespan / /CPU Time* CPU Time* Case Study # 1 996 / 12.6 1046 / 32.3 Case Study # 2 948 / 342.0 995 / 353.7 Case Study # 3 996 / 166.0 1021/ 334.7

Table II. Results for Problem Class II Problem Instance

This Approach Prior Approach Makespan Makespan / /CPU Time* CPU Time* Case Study # 4 972 / 193.8 --Case Study # 5 919 / 138.6 --Case Study # 6 927 / 349.6 ---

Table III. Results for Problem Class III This Approach Prior Approach Makespan / Makespan CPU Time* /CPU Time* Case Study # 7 1014 / 11.44 1130 / 2475 Case Study # 8 996 / 199.8 --Case Study # 9 1320 / 484.86 --Problem Instance

* Time required in order to obtain the best solution within 500 seconds of CPU time. --- No solution was found

Fig. 4. Diagram showing the best solution obtained for problem instance # 7

6. Conclusions An improved CP approach that addresses the scheduling of a resource constrained multiproduct plant having continuous stages and storage facilities has been proposed. The problem formulation comprises a CP model and also a domain specific SS. The model admits any type of relation between the rates of production and consumption of the intermediate and final product campaigns. The SS resorts both to a variables´ DR approach and to an intelligent assignment of equipment to production campaigns. The proposal allows obtaining good quality suboptimal solutions with a low computational load. Future work includes extending the model in order to consider a higher number of processing stages of both batch and continuous types.

Acknowledgments. Authors acknowledge financial support from ANPCyT under grant 11-14717, from CONICET under grant PIP 5915 and “Universidad Nacional del Litoral”, under grant PI 003-14 (CAI+D 2005).

References Brailsford, S.C. and C.N. Potts, 1999, Europen Journal of Operational Research, 119, 557-581. ILOG, 2004, OPL Studio 3.7.1- Scheduler 6.0. User s Manuals. Maravelias, C.T. and I.E. Grossman, 2004, Computers and Chemical Engineering, 28,1921-1949. Méndez, C. and J. Cerdá, 2002, Computers and Chemical Engineering, 26, 687-695. Schilling, G, and C.C. Pantelides, 1996, AICHE Annual Meeting, paper no. 171d. Zeballos, L.J. and G.P. Henning, 2005, In proceedings of ENPROMER, Rio de Janeiro, Brasil, August 14-18. Zhang, X. and R.W.H. Sargent, 1998, Computers and Chemical Engineering, 22, 1287-1295.

Suggest Documents