A Mixed-Integer Linear Programming Model for Short-Term

Feb 1, 1997 - del Litoral), Guemes 3450, 3000 Santa Fe, Argentina ... An important industrial problem is the short-term scheduling of batch multiprodu...
0 downloads 0 Views 218KB Size
Ind. Eng. Chem. Res. 1997, 36, 1695-1707

1695

A Mixed-Integer Linear Programming Model for Short-Term Scheduling of Single-Stage Multiproduct Batch Plants with Parallel Lines Jaime Cerda´ * and Gabriela P. Henning Instituto de Desarrollo Tecnolo´ gico para la Industria Quı´mica, INTEC (CONICETsUniversidad Nacional del Litoral), Guemes 3450, 3000 Santa Fe, Argentina

Ignacio E. Grossmann† Department of Chemical Engineering, Carnegie-Mellon University, Pittsburgh, Pennsylvania 15213

An important industrial problem is the short-term scheduling of batch multiproduct facilities where a wide range of products are manufactured in small amounts that must be satisfied at certain due dates during the given time horizon. This paper presents a new MILP mathematical formulation for the batch scheduling problem involving a single processing stage for every product to be delivered. Based on a continuous representation of the time domain and the concept of job predecessor and successor to effectively handle changeovers, the proposed model is able to determine the optimal allocation of jobs to lines/units, the sequence of jobs on every line/unit, and their starting and completion times so as to minimize one of the following problem objectives: the overall tardiness, the schedule makespan, or the number of tardy orders. Facilities having nonidentical parallel units/lines, sequence-dependent changeovers, finite release times for units and orders, and restrictions on the types of orders that can be manufactured in each equipment can easily be handled. To deal with real world single-stage scheduling problems, a successful strategy for expediting the problem solution that relies on the use of heuristics is also reported. These heuristics allow one to partially prune the set of feasible predecessors for each customer order, reducing the size of the MILP problem representation. Examples involving up to 20 orders and 4 units were successfully solved with an advanced branch-and-bound code requiring reasonable CPU time. 1. Introduction In the last decade, there has been a growing interest in the design and short-term scheduling of multiproduct batch plants. A review of research advances in this area can be found in Reklaitis (1991). A large number of multiproduct industrial facilities can be scheduled by solving the so-called parallel flowshop problem. This problem regards each production line or unit as a separate entity featuring a production rate or time that changes with both the line/unit and the customer order being manufactured. Once the processing of a customer order starts on a production line, it cannot be transferred to another one even if a more suitable line becomes available for use. The objective function usually accounts in some way for the time at which each order is satisfied like the optimum makespan, the optimum total completion time, and the optimum tardiness (Gooding et al., 1994). The problem goal is the assignment of customer orders to production lines, the sequencing of jobs on each line, and the scheduling of every order (starting and completion times) in such a way that the availability of limited resources is never surpassed and the customer orders are mostly fulfilled on time. Musier and Evans (1989) studied the singlestage parallel flowshop problem for chemical process industries. They remarked that a large research effort has been devoted to the development of solution algorithms for the scheduling problem but only a few are actually used in the chemical industry. * Author to whom correspondence should be addressed. e-mail: [email protected]. Telephone: 54 42 559175. Fax: 54 42 550944. † e-mail: [email protected]. S0888-5885(96)00549-0 CCC: $14.00

Also, the most significant similarity among different types of industries reported by Musier and Evans (1989) was the problem objective that usually focused on meeting customer’s due dates. However, a particular flowshop problem that remains largely unsolved is the one of minimizing customer tardiness in a single-stage batch multiproduct plant with nonidentical parallel units/lines, sequence-dependent changeovers, finite release times for units and orders, and constraints on the types of orders that can be manufactured in each equipment. A new MILP mathematical formulation for such a scheduling problem is presented in this paper. The nature of the demands greatly influences the way most multiproduct plants are operated. If customer orders are satisfied through product inventories and long-term demand forecasts are available, a cyclic operation mode can be adopted. In such a case, each production line processes the same sequence of products in cycles having a fixed length of time. Moreover, the notion of order is no longer necessary, and batches of the same product to be delivered to different customers are consecutively produced in the same campaign to replenish product inventories. Several scheduling algorithms for multistage multiproduct plants that assume a cyclic production strategy have been published (Sahinidis and Grossmann, 1991; Voudoris and Grossmann, 1993; Pinto and Grossmann, 1994; Papageorgiou and Pantelides, 1996a,b). However, in multiproduct facilities, like polymer and specialty chemicals plants, where a wide range of tailor-made products are each manufactured in small amounts for few customers, a cyclic schedule is not appropriate because demands cannot be effectively satisfied with product inventories. Thus, the short-term scheduling is driven by individual © 1997 American Chemical Society

1696 Ind. Eng. Chem. Res., Vol. 36, No. 5, 1997

customer orders that are to be satisfied during the planning period. Consequently, a nonregular production pattern must be followed, and this paper deals precisely with this type of multiproduct plant. A successful scheduling technique that assumes a nonregular production pattern is the one proposed by Kondili et al. (1993). These authors presented a general framework for solving many different scheduling problems arising in multiproduct/multipurpose chemical plants. Batch processes are represented through a State Task Network (STN), where the state nodes stand for the feeds, intermediates, and product materials and the task nodes represent the processing steps. Events can only occur at the boundaries of the time intervals. The problem is formulated and solved as a mixedinteger linear program (MILP) based on a uniform discretization of the time domain. The model is able to handle different storage modes, processing of orders in parallel, mixing and splitting of materials between stages, limited availability of raw materials and utilities, etc. Its major drawback is the large number of integer variables and linear constraints it comprises when problems of industrial size are considered. Another approach based on discretization of the time domain has been reported by Gooding et al. (1994), who posed the parallel flowshop scheduling as a constrained traveling salesman problem and used an enumerative branch-and-bound algorithm to solve it. No resource constraints were considered in their formulation. Earlier contributions for the scheduling of batch plants with a nonregular production pattern are due to Rich and Prokopakis (1986) and Egli and Rippin (1986). A rather general continuous-time version of the STN model has been proposed by Zhang and Sargent (1994). The basic idea relies on using time events which coincide with the start of one or more operations as problem variables. In its original form, the model is an MINLP which can be reformulated as a large scale MILP that is very expensive to solve, thereby restricting its application to small problems. Recently, Reklaitis and Mockus (1995) have developed a somewhat similar formulation. Also, Schilling and Pantelides (1996) proposed a continuous-time version for the resource task network (RTN) model. In previous work, Zentner and Reklaitis (1992) presented an approach to reduce the computational cost of the MILP by an a-priori identification of the time events, while Tsirukis et al. (1993) developed a decomposition strategy for handling resource constraints. Pinto and Grossmann (1995) studied the problem of short-term scheduling of multistage batch plants to determine the optimal production policy for satisfying the demands of a significant number of products at certain due dates and/or at the end of a given time horizon. They developed a MILP model with continuous-time domain representation that relies on the use of parallel time axes for units and tasks. Since the CPU time requirement greatly increases for largescale multistage problems, then heuristic preordering constraints were used and the resulting mathematical formulation was solved by applying a decomposition scheme to obtain in a reasonable time a good production schedule. Problems up to 50 orders and 25 machines in 5 stages were solved. More recently, Pinto and Grossmann (1996) presented an alternate model where the preordering restrictions are no longer handled as an additional constraint set, but they are embedded in the underlying model. In this way, a simpler formulation and shorter solution times were achieved.

The most widely used techniques for solving the parallel flowshop scheduling problem are of heuristic nature. Musier and Evans (1989) developed an approximate method for single-stage multiproduct batch processes with nonidentical parallel units, sequencedependent cleanups, unit/product-dependent processing times, and order-to-unit assignment constraints. They chose the minimum total tardiness as the objective function. Using heuristics, an initial solution is first generated and then improved by searching for pairwise interchanges of orders that further reduce the total tardiness. Problems involving up to 12 units and up to l00 customer orders were solved. The purpose of this paper is the development of a mathematical model for the short-term scheduling of single-stage parallel-line multiproduct plants that accounts for the following issues: (i) operation of several nonidentical production lines or units in parallel; (ii) changeover times between orders depending on both the type of equipment and the job sequence; (iii) handling of equipment with different batch sizes, i.e., the number of batches for a given order depends on the type of unit assigned to it; (iv) variation of the processing rate or time with the type of equipment and/or the job; (v) release times for jobs and equipment items; (vi) handling of constraints often found in industry that prevent one from processing a certain customer order before or after another one, and (vii) use of the makespan, the global tardiness that may include job weight coefficients, or the number of tardy orders as the problem objective. The handling of resource constraints and maintenance considerations as well as multiple processing stages will be addressed in a future paper. The proposed mathematical formulation corresponds to a mixed-integer linear programming problem (MILP) based on a continuous-time domain representation that determines the allocation of jobs to lines/units, their sequence on every line/unit, and their starting and completion times. The model is solved by using the branch-and-bound code OSL (IBM, 1991). In addition, a strategy for expediting the problem solution based on the use of heuristics is also reported. These heuristics allow the elimination of a subset of feasible predecessors for each customer order, reducing the model size. 2. Problem Definition The short-term scheduling problem for multiproduct batch plants involving a single processing stage and several in-phase parallel units to be tackled in this paper has the following features: (a) Each customer order or job only involves a single product. (b) A due date for each customer order has been specified. The manufacture of a product for inventory without a particular due date is also made possible by assigning to it the last day of the planning horizon as a fictitious due date. (c) Each order can be manufactured in a subset of the available equipment items. (d) Batches of the same order are successively processed in the same unit; i.e., the production is organized by campaigns. (e) Each order comprises an integer number of fullsize batches of the same size. This is the usual policy in specialty chemical plants in order to operate equipment at maximum capacity. (f) The processing time for order Oi at unit/line l (TPil) depends on both the nature of the order Oi and the type

Ind. Eng. Chem. Res., Vol. 36, No. 5, 1997 1697

of unit/line l. Also, the maximum batch size (Bil) for the product involved in the order Oi varies with the unit l. (g) To begin another task in a processing line or unit, the current one should have been completed, i.e., nonpreemptive operation mode. (h) Before starting a new campaign, a changeover period for cleaning and equipment setup is usually needed. The changeover time for a pair of orders Om and Oi (TCLmi) depends on both the nature of such orders and the job sequence (Om, Oi). (i) Because of flavor and/or color incompatibilities, some job sequences are forbidden at any equipment item. (j) Some of the units/lines are not available from the beginning of the time horizon of interest, i.e., finite unit release times. Also, the production of some orders cannot be started at the beginning of the period, i.e., finite job release times. (k) Due to limited storage capacity, new shippings of raw materials may be received during the scheduling period. Limitations on the availability of raw materials, utilities, or manpower may prevent one from using some otherwise feasible production schedules. Resource constraints related to raw material availability, limited manpower, or maintenance periods will indeed be considered in a future paper. Given all the above features, the scheduling problem consists of determining (i) the allocation of orders to lines/units, (ii) the job sequence at each equipment item, and (iii) the campaign timetable so that all scheduling constraints are taken into account and, at the same time, some measure of the customer satisfaction (e.g., overall tardiness, number of tardy orders) and/or the plant performance (e.g., makespan) is optimized. 3. Mathematical Model A MILP mathematical formulation for the singlestage parallel-unit multiproduct plant scheduling problem will be developed in this section. It will be assumed that a single campaign can be run for every customer order, despite the fact that it comprises either one or several batches of the same product. In the latter case, all the batches will be consecutively processed before starting the campaign for another order. The main features of the proposed model described below are (i) the use of a continuous-time representation and (ii) the handling of decision variables not only for the allocation of jobs to units but also for job sequencing at every equipment item. As will be shown, the formulation can easily account for changeovers and some other real constraints found in industry. 3.1. Definition of Sets and Parameters. To write the proposed mathematical formulation, the set and parameters listed below are first to be introduced. (a) Problem Sets I ) set of orders to be processed Il ) set of orders that can be processed in unit l L ) set of available units Li ) set of available units for Oi (Li ⊂ L) Lik ) set of available units for the pair of orders (Oi, Ok) PRil ) set of customer orders that can be processed just before Oi in unit l, i.e., feasible predecessors of Oi in unit l PRi ) whole set of predecessors of order Oi (PRi ) ∪ PRil, l ∈Li)

SUil ) set of customer orders that can be processed immediately after Oi in unit l, i.e., the feasible successors to Oi in unit l SUi ) set of feasible successors to order Oi (SUi ) ∪ SUil, l ∈ Li) PSi ) set of orders that can be processed either just before or immediately after Oi (PSi ) PRi ∩ SUi) (b) Order Parameters NO ) number of orders to be manufactured in the period Qi ) size of order Oi to be fulfilled in the period (RTO)i ) release time of order Oi τi ) due date for order Oi ∆τi ) tolerance on the due date for order Oi MAXTi ) upper bound on the tardiness of order Oi (c) Unit Parameters NL ) number of available processing units (RTE)l ) release time of unit l (d) Order/Unit Parameters NBil ) number of batches of Oi to be processed when the unit l is assigned to Oi TPil ) processing time of a batch of Oi in unit l Γil ) total processing time of order Oi in unit l TCLikl ) cleaning time for the ordered pair of jobs (Oi, Ok) in unit l

3.2. Problem Variables. To generate a production schedule, several operational decisions are to be made concerning (i) the assignment of orders to units and (ii) the sequencing of orders in each equipment item. Such decisions are represented by the following sets of binary variables: Ximl ) binary variable denoting that the processing of order Oi takes place in unit l just before the campaign for Om XFil ) binary variable denoting that order Oi is the first being processed in unit l XLi ) binary variable denoting that order Oi is a tardy order

In addition, several nonnegative continuous variables associated with each order campaign or with the whole schedule are to be introduced. They define the campaign timetable and are as follows: TiF ) completion time of the unique campaign for Oi TiS ) starting time of the unique campaign for Oi Di ) delay in the delivery of order Oi H ) makespan

Let us analyze Figure 1, where the feasible schedule for a six-order batch scheduling problem involving a couple of parallel lines is depicted. Such a figure also shows the associated values of the model decision variables describing the assignment of orders to units and the job sequencing. Thus, XF12 ) 1 indicates that order O1 is the first being processed in unit E2. In turn, O2 is processed in unit E1 immediately after O3 (X321 ) 1). 3.3. Problem Constraints. (a) Every Order Oi Has at Most a Unique Predecessor Om Being Manufactured Just before in the Same Unit. Let Oi be one of the orders to be satisfied during the current period. Then, Oi should be allocated to some proper unit. Since the orders assigned to a particular equipment item are to be processed one at a time, then Oi can be manufactured either in first place or after another job Om, here called its predecessor. This implies that every order Oi will at most feature a single predecessor. In the schedule shown in Figure 1, O3 is

1698 Ind. Eng. Chem. Res., Vol. 36, No. 5, 1997

(c) Exactly One Single Order Must Be First Processed in Each Equipment Item. Assuming that at least a single customer order is processed at any available unit l, then

XFil ) 1, ∑ i∈I

l∈L

(3)

l

In Figure 1, O1 is the unique order first processed in unit E2 (XF12 ) 1). Then, XFi2 ) 0, for any order Oi different from O1. (d) Both the Predecessor and the Successor to a Given Order Oi Must Be Manufactured in the Same Processing Unit. If the predecessor of Oi is processed in unit l, then the successor to Oi can never be manufactured in another equipment item s. Therefore,

XFil +



Xmil +

m∈PRil

Figure 1. Interpretation of (a) 0-1 sequencing variables and (b) continuous variables.

the unique predecessor of order O2 in unit E1. In turn, O1 has no predecessor at all as long as it is the first being processed in unit E2. Let Xmil be a binary variable that is equal to 1 when the order Om precedes Oi in the job sequence of unit l. Otherwise, it is zero. In the same way, the binary variable XFil denotes that the job Oi is processed first in the unit l when it takes the value 1. Then,

∑ ∑

Xmil +

l∈Li m∈PRil

∑ XFil ) 1,

i ) 1, ..., NO (1)

l∈Li

Since O3 precedes O2 in unit E1 (see Figure 1a), then X321 ) 1 and the subset of binary variables Xi2l (i * O2, O3; l ) E1, E2), XF2l (l ) E1, E2) and X322 are all equal to zero. (b) Every Order Oi Presents at Most a Unique Successor Ok in the Job Sequence of the Assigned Unit. As discussed before, an order Oi can be either last processed or manufactured just before another one Ok in the assigned equipment item, here called its successor. As a result, Oi will feature at most one single successor,

∑ ∑ Xikl e 1, l∈L k∈SU i

i ) 1, ..., NO

∑ ∑ Xiks e 1,

s∈Li k∈SUil s*l

l ∈ Li, i ) 1, 2, ..., NO (4)

Note that the above constraint forbids the choice of a successor to Oi in the job sequence of unit s whenever Oi is processed first (XFil ) 1) or after Om in unit l (Xmil ) 1). In these cases, the inequality (4) drives the set of binary variables {Xiks} for Oi in unit s * l to zero. In Figure 1a, O3 precedes order O2 in the job sequence of unit E1. If X321 ) 1, then XF21 ) 0, XF22 ) 0, and X2k2 ) 0 for any order k * O2, because of constraint (4). (e) Definition of Start and Completion Times for Order Oi. We define the nonnegative continuous variables TiS and TiF as the start and completion times of order Oi. Then, the starting time of the campaign for Oi can be derived from its completion time TiF through the following equation:

TiS ) TiF -

∑ TPilNBil[m∈PR ∑ Xmil + XFil],

l∈Li

il

i ) 1, 2, ..., NO (5) where the number of batches to be produced for order Oi in unit l is given by

( ) ( )

NBil ) CEIL

Qi Qi g , Bil Bil

l ∈ L, i ) 1, 2, ..., NO (6)

(2)

il

Derivation of SUil from the sets of feasible predecessors PRkl , k ∈ Il, can easily be performed by considering that the order Oi ∈ PRkl can be succeeded by Ok in the job sequence of unit l. Constraint (2) is posed as an inequality to account for the customer order Oi being last processed at a particular equipment item l. If this is the case, the order Oi has no successor and the summation over all of the elements in SUil will be equal to zero. A similar situation arises when Oi is the unique job assigned to unit l. In Figure 1a, O2 is the unique successor to order O3 in unit E1 (X321 ) 1), while O6 features no successor at all since it is the last being processed in unit E2. In turn, O4 is preceded by O1 (X142 ) 1) and succeeded by O6 (X462 ) 1) in unit E2.

In the above equation CEIL(Qi/Bil) is the lowest integer greater than Qi/Bil. Since Qi and Bil are problem data, then the number of batches of order Oi to be processed at unit l (NBil) can be computed beforehand. Moreover,

TiS g (RTO)i,

i ) 1, 2, ..., NO

(7)

According to the feasible schedule depicted in Figure 1, where O1 is the first order being processed in unit E2, it holds that XF12 ) 1, XF11 ) 0, and Xk11 ) Xk12 ) 0 for any k * O1. As a result, the restriction (5) for O1 reduces itself to T1S ) T1F - TP12NB12. (f) Relation of Completion Times of Orders Oi and Om. Given the parameter TCLmil, the completion times of Oi and Om are related by

Ind. Eng. Chem. Res., Vol. 36, No. 5, 1997 1699

TiF g TmF +

∑ ∑

(TCLmil + TPilNBil)Xmil +

l∈Li m∈PRil

[

∑ Xmil - 1]M,

m ∈ PRi,

i ) 1, 2, ..., NO (8)

l∈Lim

where PRi ) ∪l∈LiPRil and M is a sufficiently large positive number. Provided O1 is the predecessor of O4, as shown in Figure 1, eq 8 for the pair (O1, O4) becomes

Figure 2. Graph representation of infeasible subtours for constraints (15) and (16).

individual and the overall tardiness.

T4F g T1F + (TCL142 + TP42NB42) since X142 ) 1, Xi41 ) Xi42 ) 0 (for any i * O1, O4) and X141 ) 0. Note that the above is a “big-M” constraint that is enforced only if Om precedes Oi. Furthermore, the value of TiF must satisfy

TiF g

∑ [Max[(RTE)l,(RTO)i] + TPilNBil]XFil,

l∈Li

i ) 1, 2, ..., NO (9) in case the order Oi is the one being first processed in unit l. (g) Tardiness in the Completion of Oi (See Figure 1b). The nonnegative continuous variable Di denotes the delay in the delivery of order Oi to the customer,

Di e MAXTT ∑ i∈I Di e MAXTi,

k ∈ PSil, i ) 1, 2, ..., NO

l∈Lik

Di g 0,

i ) 1, 2, ..., NO

TiF - Min[(RTE)l,(RTO)i] ∈ H,

i ) 1, 2, ..., NO l ∈ L (11)

The subtracting term on the left-hand side of constraint (11) will be equal to zero if at least one of the orders having a release time equal to zero can be processed in one of the units available at the beginning of the period. (i) Tardy Orders. Let XLi be a binary variable that is equal to 1 when the completion time of order Oi exceeds its due date. Otherwise, it is zero. Thus, tardy orders are identified by means of the following constraint:

Di - XLi

M e 0,

i ) 1, 2, ..., NO

(15)

(10)

(h) Makespan Definition (H). Let H be the time needed to complete the production requirements of the current period, i.e., the makespan. The definition of H should be included as a problem restriction when the minimization of the makespan is chosen as the problem objective. The value of H is determined as the difference between the largest campaign completion time and the earliest campaign starting time.

(12)

When problems with a significant number of orders are solved, the chances of finding alternative optimal solutions exhibiting the same number of tardy orders increase. These solutions may be of very poor quality since they may feature a minimum number of tardy orders but a relatively high total tardiness. Therefore, the following constraints are to be added to bound the

(14)

where MAXTT is a bound on the schedule’s overall tardiness and MAXTi represents a bound on the tardiness of order Oi. Of course, the parameters MAXTT and MAXTi, i ) 1, 2, ..., NO can be selected by somewhat relaxing the least total tardiness and the highest individual tardiness found by minimizing the objective function (10), respectively. 3.4. Additional Constraints. The following additional constraints are indeed redundant, but their inclusion in the problem formulation frequently accelerates the convergence to the optimal solution, especially the set of constraints (15) to be presented below. (a) A Job Cannot Be Simultaneously Both the Predecessor of and the Successor to Another One.

∑ (Xikl + Xkil) e 1,

Di g TiF - τi

i ) 1, 2, ..., NO

(13)

(b) An Order Oi Cannot Be Processed Just before the Order Ok and Immediately after the Successor to Ok.

∑ [Xikl + Xkwl + Xwil] e 2,

k ∈ SUil,

l∈Likw

w ∈ [SUkl ∩ PRil], i ) 1, 2, ..., NO (16) where Likw ) subset of equipment items where orders Oi, Ok, and Ow can all be processed. Constraints (15) and (16) correspond to subtour elimination constraints that avoid subcycles such as the ones shown in Figure 2. From our computational experience there is no need to include such subtour elimination constraints in the proposed model to define the problem feasibility region. As will be shown in the Results and Discussion section, however, the use of these constraints may expedite the solution of largesize scheduling problems. In most of the cases, only inequalities (15) seem to yield a better computational performance. 3.5. The Objective Function. The alternative scheduling criteria that have been chosen are (i) the production schedule makespan, (ii) the total/weighted tardiness, and (iii) the number of tardy orders. (a) The Minimum Makespan.

Min H

(17)

(b) Minimum Total Tardiness.

Min

RiDi ∑ i∈I

(18)

where Ri is the weight coefficient for Oi. When Ri ) 1

1700 Ind. Eng. Chem. Res., Vol. 36, No. 5, 1997

for any order i ∈ I, the total tardiness becomes the problem objective function. On the other hand, if no due date is specified for order Ok, then τk will be given by the end of the planning horizon and Rk will be assigned a low value. (c) Minimum Number of Tardy Orders.

Min

XLi ∑ i∈I

(19)

3.6. Remarks. The proposed MILP model is given by (i) objective function (17) subject to constraints (1)(9) and (11) if the makespan is minimized, (ii) objective function (18) subject to constraints (1)-(10) if total tardiness is minimized, or (iii) objective function (19) subject to constraints (1)-(10) and (12)-(14) if the number of tardy orders is minimized, with constraints (15) and (16) being optional in all cases. The different problem formulations involve a reasonable number of 0-1 variables and linear constraints for a relatively modest number of orders and units (e.g., 10 orders, 3 units). When both the number of customer orders and units increase, the problem dimensionality becomes much larger. In practice, however, the magnitude of the increase in the problem size is less than expected since there are often many constraints on the assignment of orders to equipment and on the job sequencing at every unit. Examples of these constraints are those restraining either the set of units available for processing a given order Oi or the set of predecessors and successors for Oi based on their chemical, flavor, or color affinity, as usually happens in industrial scheduling problems. As for the choice of the objective function, minimizing the total tardiness seems to be somewhat less expensive to solve than the makespan, particularly if the due dates specified for the set of orders render a low value of the overall tardiness objective. This result can be expected as long as the due dates are usually selected by qualified personnel with a good knowledge on the plant capacity and its variation with the product mix to be manufactured. If this is not the case, it is better to specify for each order Oi a due date τi with a certain tolerance ∆τi on its delivery to the customer. In order to account for the uncertainty in the choice of τi, the constraint (10) becomes

Di g TiF - (τi + ∆τi),

i ) 1, 2, ..., NO (10′)

The introduction of (10′) not only accounts for a more realistic industrial situation but also can reduce the required CPU time, as will be shown in the Results and Discussion section. As was mentioned before, the sole minimization of the total number of tardy orders does not seem to be a relevant objective either from a practical point of view (the optimal solution may include orders with an excessive tardiness) or from a computational performance perspective, since it renders relatively high CPU times. The introduction of constraints (13) and (14) aids to overcome both problems. Nevertheless, MAXTT and MAXTi should still be carefully estimated. A good way of doing it is by minimizing the overall tardiness first. Based on the solution of this problem, MAXTT can be selected as the least total tardiness plus a certain small tolerance ∆ξ. Similarly, both customer knowledge and the maximum individual tardiness found when minimizing the overall tardiness should be taken as guidelines for the selection of MAXTi. If all the customers

were equally important, the maximum allowed individual tardiness MAXTi can be specified as

MAXTi ) MAXD + ∆δ

(20)

where MAXD ) Max(Di*) is the largest individual tardiness at the optimal solution for the objective (18). In turn, ∆δ is the tolerance in meeting the bound MAXD to further reduce the number of tardy orders, perhaps at the expense of a small increase in the total tardiness. Given the unstructured form of the MILP formulation, general purpose LP-based branch-and-bound methods have been used (e.g., OSL and SCICONIC). The solution of these problems can be significantly expedited by applying heuristic criteria either (i) to reduce the dimensionality of the problem by pruning the set of feasible predecessors associated to each order or (ii) to generate preordering constraints ensuring a relative order of jobs fixed beforehand and leaving to the model the decision of what orders to assign to which unit. While the latter situation was addressed by Pinto and Grossmann (1995, 1996), the former case will be treated in this paper. 4. Heuristic Criteria In the past 3 decades numerous dispatching rules have been proposed in the field of sequencing and scheduling (Morton and Pentico, 1993; Blackstone et al., 1982). A dispatching rule is generally used to select the next job to be processed from a set of jobs waiting to be scheduled. Examples are the earliest due date (EDD) rule minimizing the maximum tardiness, the shortest slack time (SSLT) rule minimizing the mean tardiness, and the shortest processing time (SPT) rule minimizing the mean lateness, for single processor facilities. However, they can still be applied to scheduling problems involving multiple processors. In this paper, such heuristic rules reported in the literature have been applied with a different purpose. They are not employed to establish a job preordering sequence but just to reduce the problem modeling size by pruning the set of feasible predecessors of order Oi in unit l, i.e., the set PRil. In this way the set of predecessors for Oi is reduced by selecting those that are likely to render a good schedule. Nevertheless, the model can still decide upon the assignment and sequencing of orders in each unit. Although optimality cannot be guaranteed, this particular use of heuristics generates a model with a larger feasible region and superior chances to find better solutions when compared with the case where heuristics are applied to simply derive preordering constraints. This is particularly true for problems having sequence-dependent cleanup times, where the strict application of sequencing heuristics may generate poor solutions even for the simplest case of one processor. The definitions of the proposed heuristics involve the following parameters: RF ) reduction factor that bounds the total processing time of the low-size orders to be kept as feasible predecessors when applying heuristic V TOLDD1 ) lower limit of the time window around the order due date TOLDD2 ) upper limit of the time window around the order due date TOLPTl ) tolerance factor for relaxing the shortest processing time (SPT) rule when applied to unit l

Ind. Eng. Chem. Res., Vol. 36, No. 5, 1997 1701

dependent on the unit by using the average processing time at unit l, 〈Γl〉. (b) Heuristic II. The set of predecessors of order Oi is pruned by considering only those feasible predecessors Ok featuring a processing time either shorter or at most a bit higher than the one of Oi. In other words, this heuristic corresponds to a relaxed SPT criterion (see Figure 3b). If Γil stands for the processing time of order Oi in unit l, i.e.

Γil ) NBilTPil Then, PRilII is given by

PRilII ) {Ok/Ok ∈ PRil and Γkl e (Γil + TOLPTl), l ∈ Lik} (22) where TOLPTl is a tolerance parameter that depends on the type of unit l. Although a unique value of this parameter could be chosen, it seems more reasonable to assign lower values to units having below average processing times and higher values to the ones with processing times above average. It is suggested to choose TOLPTl equal to 〈Γl〉. According to (22), any order Ok featuring an overall processing time Γkl satisfying Γkl e Γil + TOLPTl can still precede Oi in the job sequence of unit l. (c) Heuristic III. The set of predecessors of order Oi is determined by selecting those orders that fulfill the requirements of both heuristics I and II. Figure 3. (a) Time window within which due dates of the predecessors of Oi in unit l are to be located (heuristic I). (b) Bound on the processing times of the predecessors of Oi in unit l (heuristic II). (c) Bound on the slack times of the predecessors of Oi in unit l (heuristic IV).

TOLSTl ) tolerance factor for relaxing the shortest slack time (SSLT) rule when applied to unit l 〈Γ〉 ) average processing time for the whole set of orders 〈Γl〉 ) average processing time at unit l

(a) Heuristic I. The set of predecessors of order Oi is pruned by considering only those feasible predecessors Ok having within some limits a due date earlier than the one specified for Oi or a due date later but close to τi. As seen in Figure 3a, this criterion behaves as a relaxed EDD ordering rule that establishes a time window within which the due dates of the allowable predecessors of Oi are to be located. The limits TOLDD1 and TOLDD2 are the specified tolerances defining the lower and upper limits of the time window around τi, and the set PRilI is defined as follows:

PRilI ) {Ok/Ok ∈ PRil and (τi - TOLDD1) e τk e (τi + TOLDD2)} (21) Therefore, any order Ok featuring a due date within the time window (τi - TOLDD1; τi + TOLDD2) can still precede Oi in the job sequence of unit l; i.e., k ∈ PRil. Values for TOLDD1 and TOLDD2 are chosen in such a way that TOLDD1 > TOLDD2, with TOLDD1 ≈ 0.35(time horizon) and TOLDD2 ≈ 0.15(time horizon). Lower values for these parameters speed up the convergence of the solution algorithm, often at the expense of degrading the quality of the solution found. If 〈Γ〉 stands for the average order processing time, it can be alternatively chosen that TOLDD1 ) 1.5〈Γ〉 and TOLDD2 ) 0.5〈Γ〉. We can even make TOLDD1 and TOLDD2

PRilIII ) {Ok/Ok ∈ PRilI ∩ PRilII,

l ∈ Lik} (23)

Therefore, Ok can precede Oi in the job sequence of unit l only if τi - TOLDD1 e τk e τi + TOLDD2 and Γkl e Γil + TOLPTl. (d) Heuristic IV. The set of predecessors of order Oi in unit l should feature either a shorter or at most a somewhat higher slack time than Oi. The slack time SLTil for order Oi in unit l is defined as the latest date at which the processing of Oi is to be started to meet the order’s deadline, i.e.

SLTil ) τi - Γil Then, the set PRilIV is defined as

PRilIV ) {Ok/Ok ∈ PRil and SLTkl e SLTil + TOLSLl, l ∈ Lik} (24) where TOLSLl is a tolerance parameter that depends on the average processing time of unit l (see Figure 3c). Thus, this heuristic corresponds to a relaxed SSLT rule to prune the set of feasible predecessors for each order. It is suggested to assign 〈Γl〉 as the value of TOLSLl. (e) Heuristics V (a, b, c). The set of predecessors of order Oi is defined by expanding the set of predecessors found through the application of heuristics I, III, or IV, by also including feasible predecessors not fulfilling such heuristic requirements but featuring a much shorter processing time than Oi. First, the subset PRilV is defined as follows:

PRilV ) {Ok/Ok ∈ PRil and Γkl e (Γil RF),

l ∈ Lik} (25)

where RF is a reduction factor that bounds the total processing time of the additional orders to be kept as

1702 Ind. Eng. Chem. Res., Vol. 36, No. 5, 1997 Table 1. Maximum Product Batch Size (kg/batch) for Every Unit unit order

E1

O1 O2 O3 O4 O5 O6 O7 O8 O9 O10 O11 O12 O13 O14 O15 O16 O17 O18 O19 O20

100

E2

E3 210 170

140 280

120 90 210

130 390

200 250

E4

290 120

270 190 140 155

120 115 130

150 145

185 110 155

RTEla

165 160 205 120

170

3

2

0

aEquipment

145 3

release time (days).

unit E1

O1 O2 O3 O4 O5 O6 O7 O8 O9 O10 O11 O12 O13 O14 O15 O16 O17 O18 O19 O20

1.7

E2

2.4

E3

1.7 1.4 1.8

0.85 1.05

1.6 2.6

E4

0.9 1.1

1.25

1.65 2.1

1.9 0.55 0.85 1.0

1.75 1.60 1.48

0.7 1.39

1.3 0.65 1.2

1.05 1.45 1.85 1.2

order

feasible predecessors

O1 O2 O3 O4 O5 O6 O7 O8 O9 O10 O11 O12 O13 O14 O15 O16 O17 O18 O19 O20

O3, O6, O9, O10, O13, O18 O3, O7, O11, O13, O16, O19 O2, O6, O9, O10, O12, O13, O16, O17 O5, O6, O10, O14, O15, O18, O20 O4, O7, O10, O12, O14, O17, O18, , O19 O1, O5, O9, O13, O14, O15, O17, O19 O3, O5, O8, O12, O13, O15, O17, O19, O20 O5, O7, O12, O15, O17, O20 O1, O3, O6, O10, O13, O18 O1, O3, O4, O9, O13, O14, O15, O17, O18, O20 O2, O3, O7, O12, O13, O19 O3, O5, O7, O8, O11, O13, O15, O16, O19 O1, O2, O6, O9, O10, O11, O16, O17 O4, O5, O6, O10, O15, O18, O19, O20 O4, O6, O8, O10, O12, O14, O17, O18, O19 O2, O3, O7, O11, O12, O13, O19 O3, O6, O7, O9, O10, O12, O13, O15, O18 O1, O4, O5, O9, O10, O14, O15, O17, O19 O2, O5, O6, O7, O11, O12, O13, O14, O16, O18 O4, O6, O7, O8, O10, O14, O17, O18

TOLDD2, TOLPTl, and TOLSTl can be adopted without further degrading the schedule found. 5. Results and Discussion

Table 2. Order Processing Times (days/batch) order

Table 3. Set of Feasible Predecessors for Each Order

0.95 1.3

feasible predecessors for Oi. Values below 0.5 for RF have been selected in this paper. Therefore,

PRilVa ) {Ok/Ok ∈ PRilI} ∪ PRilV PRilVb ) {Ok/Ok ∈ PRilII} ∪ PRilV PRilVc ) {Ok/Ok ∈ PRilIV} ∪ PRilV

(26)

The rationale behind this rule is to incorporate into the set of predecessors of Oi those orders featuring a much shorter processing time even though they do not satisfy the relaxed EDD, “combined EDD-SPT”, or SSLT rules because of a later due date. Such additional low-size orders do not really act as bottleneck jobs to the subsequent ones on the assigned processing line. By taking them into account, new alternative good solutions can be generated that take advantage of fitting within the schedule orders with short processing times. Moreover, lower values for the tolerance factors TOLDD1,

The application of the proposed MILP formulation will be illustrated by finding both the minimum-tardiness and the minimum-makespan schedules for a singlestage multiproduct batch plant comprising four parallel production lines. The minimization of the number of tardy orders will also be considered later. Eight to twenty production orders depending on the example problem, each one involving a different product, are to be manufactured. In Table 1, the maximum product batch sizes (given in mass of final product per batch) for each unit are given, while Table 2 lists the order processing times per batch. An analysis of such tables indicates that order O1 can only be processed in unit E1, order O2 in unit E3, order O3 in the equipment items E1 and E3, and so on. Generally, there are few options for each order as long as every production line or unit in industry is normally assigned to the production of one or two families of products. Moreover, the number of batches to be manufactured to meet a customer order will change with the assigned unit. In this way, the example tries to resemble the scenario usually found in practice. The set of feasible predecessors for each order Oi based on their chemical affinity, color similarity, and so on is presented in Table 3, and the cleaning or transition time for every ordered pair of jobs is included in Table 4. 5.1. Small-Size Example Problems. Three different small-size scheduling example problems involving the first eight, nine, and ten jobs listed in Tables 1-3, respectively, have been solved. They are called examples 1-3, respectively. For each of them, two different cases were studied: null release times (case a) and nonzero release times (case b) for both processing units and orders. The last row in Table 1 shows the equipment release times, while Table 5 includes the order release times to be considered in case b. In addition, Table 5 presents the order sizes and due dates. Note that the overall product demand remains constant though the number of orders increases from eight in example 1 to ten in example 3 (see Table 5). The computational performance and the corresponding sizes of the proposed MILP problem formulation for examples 1-3, including the optional inequalities (15),

Ind. Eng. Chem. Res., Vol. 36, No. 5, 1997 1703 Table 4. Cleaning Times (days) between Pairs of Orders order O1 O1 O2 O3 O4 O5 O6 O7 O8 O9 O10 O11 O12 O13 O14 O15 O16 O17 O18 O19 O20 order O1 O2 O3 O4 O5 O6 O7 O8 O9 O10 O11 O12 O13 O14 O15 O16 O17 O18 O19 O20

O2

O3

O4

O5

O6

O7

O8

0.65

O9

O10

0.30

1.6

0.05 1.4

0.30 0.70

0.3 1.8

0.2 0.5

0.70 0.90 0.60 1.2 0.85

0.45 1.65

2.1 1.5

1.25 0.80 0.6 0.75 0.50

0.65 0.7

0.95 0.80 0.3 0.55 1.3 0.25 1.05 0.8 0.4

O11

O12

0.25 0.5 0.75 0.90 1.0

0.6 1.4

0.7

0.40

1.0 0.2 1.30 1.55 1.45 0.80 0.50 0.2 0.4 1.20 0.3

0.25 1.15 0.35 0.80

0.3 0.9 1.1 0.5 0.75 0.45 0.35 0.6 0.65 0.85 0.80 0.15 0.55 0.45 0.4

0.5 0.7 O13

O14

O15

0.35 0.70 0.70 0.45 0.80 1.20 0.55 0.20

1.10 1.05

O16

O17

O18

O19

O20

0.65 0.25 0.9 0.60

0.3 0.5 0.7

0.35 0.80 0.5

0.10 0.85 1.15 1.30 0.95 0.15 0.15 0.35 1.30 1.0 0.40 0.5 0.75 0.30 1.05 0.85 0.20 0.45 0.2 0.65 0.55 0.9 0.5 1.05 0.75 0.4

example 1

0.85 0.4

1.1 1.0 0.15

Table 5. Order Sizes (kg), Due Dates (days), and Release Times (days) for Examples 1-3

0.75 1.3 0.9 0.8

0.8 0.25 0.3

0.15 1.2 0.4 1.0

1.25 0.2 0.8 0.95 0.25 0.35 0.55 0.5 0.65 0.6 0.3 0.15 0.15 0.3 0.30 0.6 0.45 0.45 0.4

are shown in Table 6. The number of binary variables ranges from 29 to 47, while the number of linear constraints varies from 92 to 136. As seen, two different objective functions were used, i.e., the total tardiness and the schedule makespan. To implement the problem model and the solution method, the modeling system GAMS version 2.25 was used (Brooke et al., 1992). All the case studies were solved with OSL (IBM, 1991) to optimality on a SiliconGraphics Indy R4000 (100 MHz) workstation. Note that the two alternative objective functions show a rather similar computational performance for small-size problems (8 orders or less). However, the makespan becomes computationally more

example 2

example 3

order

Qi

τi

RTOi

Qi

τi

RTOi

Qi

τi

RTOi

O1 O2 O3 O4 O5 O6 O7 O8 O9 O10

700 1050 900 1000 650 1350 950 850

10 22 25 20 28 30 17 23

0 5 0 6 0 2 3 0

700 850 900 900 500 1350 950 850 450

10 22 25 20 28 30 17 23 30

0 5 0 6 0 2 3 0 2

550 850 700 900 500 1050 950 850 450 650

10 22 25 20 28 30 17 23 30 30

0 5 0 6 0 2 3 0 2 6

Q total

7450

7450

7450

expensive as the number of orders NO increases, especially if no release times for orders and units are specified (case a). In fact, the required CPU time was 3-6 times larger than the one needed for minimizing the total tardiness with the higher factor arising for case a. Although the computational performance of the proposed MILP scheduling algorithm becomes worse as NO rises, the magnitude of the degradation is less than expected. In the worst case for the total tardiness as the problem objective (example 3b), the optimal solution was found in 1952 iterations and in 7.2 s of CPU time. The least total tardiness was always finite, ranging from 0.20 (example 3a) to 4.85 (example 1b). Tables 7-9 present the optimal production schedules corresponding to minimizing the total tardiness for the six case studies (examples 1-3, cases a and b). These tables show the best job sequence in each unit as well as the starting and completion times, the individual tardiness, the processing time, and the slack time for every order. While the optimal job sequences for some examples could be generated by adhering to a strict EDD heuristic rule (Tables 7a and 8b), a strict SPT rule (Table 7 b), or a “pure” SSLT rule (Table 7a), the results do not follow a precise ordering rule in the remaining case studies. See, for instance, the job timetable in unit E4 at Table 7b where O5 is processed before O8 though it, features a later due date. This is so because O8 is not a feasible predecessor of O5, but it can be its successor. An adequate relaxation of the EDD rule will permit one to generate a variety of job sequences in each unit, with the customer orders not strictly arranged by increasing due dates as happens in Table 7b. Nonetheless, the sequence O5-O8 perfectly obeys the SPT rule. Therefore, production schedules like those shown in Tables 7-9 may be generated by considering a proper combination of relaxed EDD, SSLT, and SPT rules just as the heuristics III-V previously proposed. A further

Table 6. Computational Results for Examples 1 to 3: Null Release Times (Case a) and Finite Release Times (Case b) example 1a 1b 2a 2b 3a 3b a

binary vars, cont. vars, rows

objective function

objective value

CPU timea

nodes

iterations

29, 25, 92 29, 18, 92 29, 25, 92 29, 25, 92 36, 28, 111 36, 26, 111 36, 28, 111 36, 20, 111 47, 31, 136 47, 22, 136 47, 31, 136 47, 22, 136

total tardiness makespan total tardiness makespan total tardiness makespan total tardiness makespan total tardiness makespan total tardiness makespan

1.90 24.55 4.85 24.65 2.25 26.90 2.3 29.90 0.20 23.90 1.0 26.25

0.83 1.27 1.12 0.99 1.56 9.02 1.97 7.76 1.36 33.70 7.24 23.05

27 51 40 35 61 424 76 363 38 1337 267 882

146 249 242 198 317 1890 420 1652 248 7487 1952 4987

Seconds on Silicon Graphics Indy R4000 (100 Mhz) with GAMS/OSL.

1704 Ind. Eng. Chem. Res., Vol. 36, No. 5, 1997 Table 7. Optimal Production Schedules Corresponding to Example 1 unit order E1 E2 E3 E4 E1 E2 E3 E4

starting completion due processing time time date time

slack time

tardiness

O1 O6 O4 O5 O7 O2 O3 O8

0.00 12.55 0.00 15.35 0.00 4.95 10.55 0.00

(a) Example 1a 11.90 10 24.55 30 15.30 20 26.55 28 3.15 17 9.45 22 17.15 25 16.80 23

11.90 12.00 15.30 3.15 4.50 6.60 4.25 16.80

-1.90 18.00 4.70 23.85 13.85 17.50 18.40 6.20

1.90 0.00 0.00 0.00 0.00 0.00 0.00 0.00

O1 O6 O4 O7 O2 O3 O5 O8

0.00 12.55 6.00 3.00 7.95 13.55 3.00 7.85

(b) Example 1b 11.90 10 24.55 30 21.30 20 6.15 17 12.45 22 20.15 25 7.25 28 24.65 23

11.90 12.00 15.30 3.15 4.50 6.60 4.25 16.80

-1.90 18.00 4.70 13.85 17.50 18.40 23.75 6.20

1.90 0.00 1.30 0.00 0.00 0.00 0.00 1.65

Table 8. Optimal Production Schedules Corresponding to Example 2 unit order E1 E2 E3 E4

E1 E2 E3 E4

starting completion due processing time time date time

slack time

tardiness

O1 O9 O6 O4 O3 O7 O2 O5 O8

0.00 12.75 18.35 0.00 0.00 6.90 17.50 0.00 4.00

(a) Example 2a 11.90 10 17.55 30 30.35 30 13.60 20 6.60 25 10.05 17 22.00 22 3.4 28 20.80 23

11.90 4.80 12.00 13.60 6.60 3.15 4.50 3.40 16.80

-1.90 25.20 18.00 6.40 18.40 13.85 17.50 24.60 6.20

1.90 0.00 0.35 0.00 0.00 0.00 0.00 0.00 0.00

O1 O9 O6 O4 O5 O7 O2 O3 O8

0.00 12.75 18.35 6.00 19.65 3.00 7.95 13.55 3.00

(b) Example 2b 11.90 10 17.55 30 30.35 30 19.60 20 28.05 28 6.15 17 12.45 22 20.15 25 19.80 23

11.90 4.80 12.00 13.60 8.40 3.15 4.50 6.60 16.80

-1.90 25.20 18.00 6.40 19.60 13.85 17.50 18.40 6.20

1.90 0.00 0.35 0.00 0.00 0.00 0.00 0.00 0.00

Table 9. Optimal Production Schedules Corresponding to Example 3 unit order E1 E2 E3 E4

E1 E2 E3 E4

starting completion due processing time time date time

slack time

tardiness

O1 O9 O6 O4 O10 O2 O3 O7 O5 O8

0.00 11.05 16.65 0.00 14.10 0.00 5.60 11.40 0.00 4.00

(a) Example 3a 10.20 10 15.85 30 26.25 30 13.60 20 19.80 30 4.50 22 11.10 25 14.55 17 3.4 28 20.80 23

10.20 4.80 9.60 13.60 5.70 4.50 5.50 3.15 3.40 16.80

-0.20 25.20 20.40 6.40 24.30 17.50 19.50 13.85 24.60 6.20

0.20 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00

O1 O6 O9 O4 O10 O7 O2 O3 O5 O8

0.00 10.85 21.65 6.00 20.10 3.00 7.95 13.55 3.00 7.00

(b) Example 3b 10.20 10 20.45 30 26.45 30 19.60 20 25.80 30 6.15 17 12.45 22 19.05 25 6.4 28 23.80 23

10.20 9.60 4.80 13.60 5.70 3.15 4.50 5.50 3.40 16.80

-0.20 20.40 25.20 6.40 24.30 13.85 17.50 19.50 24.60 6.20

0.20 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.80

analysis of Tables 7-9 confirms the goodness of a common rule-of-thumb applied in industry favoring the assignment of a larger workload to the equipment item exhibiting the lowest average processing time. This is

Figure 4. (a) Optimal scheduling for example 3a. (b) Optimal scheduling for example 3b. Table 10. Order Sizes (kg), Due Dates (days), and Release Times (days) example 4

example 5

order

Qi

τi

RTOi

Qi

τi

RTOi

O1 O2 O3 O4 O5 O6 O7 O8 O9 O10 O11 O12 O13 O14 O15 O16 O17 O18 O19 O20

350 550 450 600 500 650 550 750 450 650 300 450 200 700 300

10 22 25 20 28 30 17 23 30 21 30 28 15 29 12

0 5 0 6 0 2 3 0 2 6 0 1.5 0 0 5.5

350 350 450 320 300 300 450 650 250 330 300 450 200 500 300 350 430 370 450 350

10 22 25 20 28 30 17 23 30 21 30 28 15 29 12 19 30 27 30 24

0 5 0 6 0 2 3 0 2 6 0 1.5 0 0 5.5 0 2 1.5 0 1

Q total

7450

7450

the case of unit E3 processing three customer orders in the six case studies and systematically featuring a much higher total workload. For instance, it presents a workload of 2900 kg in example 1a compared with 2050, 1650, and 850 kg assigned to units E1, E2, and E4, respectively. Despite that, the makespan for E3 is significantly lower than the ones for the other units. The Gantt chart representations of the optimal schedules for examples 3a and 3b are shown in parts a and b of Figure 4, respectively. Release times for units and orders as well as the job individual tardiness, if required, are also shown in those figures. 5.2. Large-Size Example Problems. Use of the Proposed Heuristics. Let us now consider a couple

Ind. Eng. Chem. Res., Vol. 36, No. 5, 1997 1705 Table 11. Computational Results for Example 4 heuristic

binary vars, cont. vars, rows

objective valuea

CPU timeb

nodes

iterations

III,c TOLDD1 ) 24, TOLPT ) 7 III,c TOLDD1 ) 12, TOLPT ) 3 IV, TOLSL ) 4 IV, TOLSL ) 2.5 Va,d TOLDD1 ) 24, TOLDD2 ) 7 Va,d TOLDD1 ) 12, TOLDD2 ) 3 no heuristic

83, 46, 203 70, 46, 184 79, 46, 193 75, 46, 183 85, 46, 210 68, 46, 181 108, 46, 268

1.54 1.54 1.54 1.54 1.54 1.54 15.14e

111.78 6.93 25.35 13.01 107.4 11.54 >500

2538 161 612 330 2431 324 >10000

30398 1862 6388 3501 26857 2839 >100000

a Objective function corresponds to total tardiness. b Seconds on Silicon Graphics Indy R4000 (100 MHz) with GAMS/OSL. c TOLDD 2 ) 7. d RF ) 0.3. e Non-optimal solution.

Table 12. Computational Results for Example 5

example III,c TOLDD1 ) 24 III,c TOLDD1 ) 12 IV, TOLSL ) 2.5 IV, TOLSL ) 2 Va,d TOLDD1 ) 24 Va,d TOLDD1 ) 12 no heuristic a

binary vars, cont. vars, objective rows valuea 123, 61, 271 108, 61, 256 129, 61, 280 125, 61, 270 123, 61, 271 116, 61, 240 194, 61, 446

0.69 0.69 0 0 0.69 0.69 12.08e

CPU timeb

Table 13. Optimal Production Schedule for Example 4 unit order

nodes iterations

120.84 1951 29261 73.31 1269 19339 382.35 5009 94268 19.57 200 5569 120.84 1951 29261 5.75 74 1577 >600 >6000 >100000

E1

E2 E3

b

Objective function corresponds to total tardiness. Seconds on Silicon Graphics Indy R4000 (100 MHz) with GAMS/OSL. c TOLDD2 ) 2, TOLPT ) 3. d TOLDD2 ) 2, RF ) 0.3. e Non-optimal solution.

of much larger example problems involving 15 and 20 orders, respectively. The number of processing units is still equal to 4. The problems will be referred to as examples 4 and 5, respectively, and their specific data are presented in Table 10. Since the number of orders has increased, the individual size of each has then been reduced so as to keep the overall workload constant. The computational performance and the sizes of the MILP problem formulations for examples 4 and 5 are given in Tables 11 and 12, respectively. The number of binary variables/linear constraints now ranges from 108/268 at example 4 to 194/446 at example 5 if no heuristic rule is applied to reduce the model size. Such figures drop to approximately 80/190 and 125/270, respectively, when one of the proposed heuristics III-V is being used. This represents an important size reduction, especially in the number of linear restrictions. As before, the MILP models were solved by using OSL to optimality on a SiliconGraphics Indy R4000 (100 MHz) workstation. The last row in both tables indicates that the optimal solutions to examples 4 and 5 cannot be found in less than 500-600 s if heuristics are not applied. Note also that a low-quality intermediate integer solution to the nonheuristic formulation was found before stopping the computer run. For example 4, the truly optimal total tardiness differs from the one provided by the heuristic approach by at most 1.54. The first column in Tables 11 and 12 indicates the type of heuristic that was applied as well as the values of the associated parameters required for relaxing and/ or combining job sequential rules. Three different heuristics (III, IV, and Va) were used, and all have exhibited an excellent computational performance at examples 4 and 5. By excluding the less promising predecessors for every job, such heuristics significantly reduce the number of binary variables and problem constraints and thus render up to 2 orders of magnitude reduction in the CPU time needed to find the problem optimum. To further accelerate the convergence of the MILP scheduling algorithm, a proper tightening of bounds and tolerances related to the heuristic criterion is made, especially on the value of TOLDD1 (see Tables 11 and 12). The higher the associated heuristic param-

E4

O1 O10 O9 O6 O15 O4 O14 O3 O2 O13 O7 O11 O8 O12 O5

starting completion due processing time time date time 0.00 7.20 15.70 21.30 5.50 10.14 19.34 2.00 5.45 8.85 12.40 15.50 3.00 22.10 24.60

6.80 15.00 20.50 28.50 9.94 18.64 30.54 5.30 8.15 10.85 14.50 16.60 17.70 24.20 28.00

10 21 30 30 12 20 29 25 22 15 17 30 23 28 28

6.80 7.80 4.80 7.20 4.44 8.50 11.20 3.30 2.70 2.00 2.10 1.10 14.70 2.10 3.40

slack time

tardiness

3.20 13.20 25.20 22.80 7.56 11.50 17.80 21.70 19.30 13.00 14.90 28.90 8.30 25.90 24.60

0.00 0.00 0.00 0.00 0.00 0.00 1.54 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00

eters, the larger the schedule feasible space generated by the rule and the resulting model size. We start with a rather high value for TOLDD1, as long as the time horizon is around 30, i.e., 0.8 times the time horizon. A reduction of TOLDD1 from 24 to 12 in the definition of heuristics III and Va decreases the required CPU time by a factor of 10-15 at example 4 (see Table 11) and 3-20 at example 5 (see Table 12) without degrading the quality of the solution found. In fact, the use of heuristics not only diminishes the CPU time but also accelerates the finding of good intermediate integer solutions during the execution of the branch-and-bound procedure. The true optimal solution to example 5 featuring a zero total tardiness was found in 19.6 s by applying the relaxed SSLT rule (heuristic IV) with the parameter TOLSLl ) 2 (approximately half of the average processing time) for any unit l. On the contrary, the best production schedule provided by the complete MILP formulation before stopping the solution procedure implies a total tardiness in the fulfillment of the customer orders as large as 12.1. The least tardiness schedules found for examples 4 and 5 are better described in Tables 13 and 14, respectively. In such tables, the sequence of jobs at each unit, the starting and completion times, the processing and slack times, and the individual tardiness for every order have been reported. The corresponding Gantt chart representations are shown in parts a and b of Figure 5, respectively. In both cases, the job sequences at the “slow” units (E1, E2, E4) follow the EDD rule and a weakly relaxed SSLT criterion. From such units, the critical one is E2 processing the only customer order O14 being completed after the assigned due date. Similarly to examples 1-3, both the larger workload and the higher number of orders are again allocated to the faster unit E3. As previously mentioned, the short-term scheduling problem formulation applied to examples 1-5 included the optional inequalities (15). Such constraints seem to be more effective when tackling large-size problems

1706 Ind. Eng. Chem. Res., Vol. 36, No. 5, 1997 Table 15. Best Production Schedule Found for Example 6 unit order E1

E2 E3

E4

Figure 5. (a) Optimal scheduling for example 4. (b) Optimal scheduling for example 5. Table 14. Optimal Production Schedule for Example 5 unit order E1

starting completion due processing time time date time

O1 O10 O18 O9 O6 O17 O15 O4 O20 O14 O13 O7 O16 O3 O2 O11 O19 O8 O12 O5

E2

E3

E4

0.00 7.20 13.40 17.35 21.35 26.50 5.50 10.14 15.99 19.99 2.00 5.55 8.45 12.10 15.55 17.60 18.90 3.00 16.65 19.15

6.80 12.40 17.00 20.55 26.15 29.10 9.94 15.24 19.59 27.99 4.00 7.65 11.05 15.40 17.35 18.70 21.75 15.60 18.75 21.70

10 21 27 30 30 30 12 20 24 29 15 17 19 25 22 30 30 23 28 28

6.80 5.20 3.60 3.20 4.80 2.60 4.44 5.10 3.60 8.00 2.00 2.10 2.60 3.30 1.80 1.10 2.85 12.60 2.10 2.55

slack time

tardiness

3.20 15.80 23.40 26.80 25.20 27.40 7.56 14.90 20.40 21.00 13.00 14.90 16.40 21.70 20.20 28.90 27.15 10.40 25.90 25.45

0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00

like examples 4 and 5. For instance, the elimination of the inequalities (15) from the problem modeling at example 4 produces a sizable increase in the CPU time from 6.93 to 25.35 s, although the number of constraints diminishes from 184 to 164. A similar effect was found at example 5. 5.3. Impact of a Poor Selection of the Due Dates. Deadlines Relaxation. Another important remark is the worsening of the MILP algorithm computational efficiency for increasing values of the least total tardi-

O1 O10 O9 O3 O6 O4 O14 O2 O13 O7 O11 O15 O8 O12 O5

starting completion due processing time time date time 0.00 7.20 15.70 21.75 3.00 10.90 20.10 5.00 8.40 11.95 15.05 5.50 9.97 25.72 28.22

6.80 15.00 20.50 26.75 10.20 19.40 31.30 7.70 10.40 14.05 16.15 9.67 24.67 27.82 31.62

10 12 25 25 14 18 29 10 15 17 25 12 23 25 28

6.80 7.80 4.80 5.00 7.20 8.50 11.20 2.70 2.00 2.10 1.10 4.17 14.70 2.10 3.40

slack time

tardiness

3.20 4.20 20.20 20.00 6.80 9.50 17.80 7.30 13.00 14.90 23.90 7.83 8.30 22.90 24.60

0.00 3.00 0.00 1.75 0.00 1.40 2.30 0.00 0.00 0.00 0.00 0.00 1.67 2.82 3.62

ness. This obviously happens when the plant scheduler selects improperly the order deadlines due perhaps to a lack of complete understanding of the impact of the product mix to be processed on the plant capacity. To study the effect of a poor choice of due dates τi, i ) 1, 2, ..., NO, on the required CPU time, some modifications in the values of τi’s for examples 1-3 have been made. Such changes were usually accompanied with a doubling of the CPU time needed to reach the optimal solution. As the number of orders increases, the impact of a bad selection of due dates becomes more important. These conclusions have been confirmed when industrial-size problems were tackled. Let us now consider example 6 derived from example 4 by simply anticipating the selected due dates as shown in Table 15. To reduce the model size, heuristic III was applied using the tolerances reported in the second row of Table 11. The optimal schedule of the resulting problem formulation now features an overall tardiness of 16.56 and the CPU time required to find it steps from 6.93 s for example 4 to 80.95 s for example 6. Moreover, it exhibits a maximum individual tardiness of 3.62 and 7 tardy orders. In order to diminish the computer time requirements, a relaxation of the job deadlines by replacing the constraints (10) by (10′) and adopting a tolerance ∆τi equal to 1 for every order due date was subsequently made. Despite that, the same production schedule has been found but such a simple relaxation originated a reduction in the CPU time from 80.95 to 46.9 s. Obviously, the least total tardiness drops to 9.56, i.e., lower than the previous value by a factor of 7. 5.4. Minimization of the Number of Tardy Orders. After finding the least total tardiness in example 6, the minimum number of tardy orders was pursued. The new problem formulation involves the objective function (19) subject to constraint sets (1)-(10) and (12)-(14). In order to choose the values of the parameters MAXTT and MAXTi (i ) 1, 2, ..., NO) defining the maximum allowed total and individual tardiness, respectively, we take into account the corresponding least values already found at example 6. Table 16 presents the results for two different sets of values for the abovethe-minimum tolerances ∆ξ and ∆δ. In the first case, ∆ξ ) 1 and ∆δ ) 1 are adopted. As shown, a reduction

Table 16. Computational Results for Example 6: Number of Tardy Orders as the Problem Objective (MAXTT ) 16.92, MAXD ) 3.62) ∆ξ

∆δ

no. of tardy orders

tardy orders

maximum individual tardiness

total tardiness

CPUa time

0 1 1.25

0 1 1.25

7 6 6

O4, O14, O8, O12, O5, O10, O3 O4, O14, O8, O12, O5, O9 O4, O14, O8, O12, O5, O3

3.62 3.85 3.85

16.56 16.56 16.81

53.70 15.05 20.73

a

Seconds on Silicon Graphics Indy R4000 (100 MHz) with GAMS/OSL.

Ind. Eng. Chem. Res., Vol. 36, No. 5, 1997 1707

in the number of tardy orders was achieved without any increase in the overall tardiness, i.e., an alternative optimal solution to the short-term scheduling problem with the total tardiness as the objective function. Obviously, the average individual tardiness increases. In the second case (∆ξ ) 1.25 and ∆δ ) 1.25) an alternative solution featuring 6 tardy orders and a somewhat higher total tardiness has been found. Note that the CPU times reported on the last column of the table significantly drop in both cases. 6. Conclusions A new MILP mathematical formulation has been developed for the short-term scheduling of a single-stage batch multiproduct plant with nonidentical parallel units/lines. The objectives that can be handled are minimizing the total tardiness, makespan, and number of tardy jobs. The new MILP approach is based on a continuous-time domain representation that determines the allocation of jobs to lines/units, the job sequence on every line/unit, and their starting and completion times. The proposed model accounts for sequence-dependent changeovers, finite release times for units and orders, and restrictions on the type of jobs that can be manufactured in each equipment. In addition, a successful strategy for expediting the problem solution through a heuristic reduction of the model size has been reported. The heuristic rules permit pruning the set of feasible predecessors for each customer order by discarding those that are likely to render nonoptimal schedules. Thus, the model size can be significantly reduced but the assignment and the sequencing of orders in each unit remain decision variables. In addition to accounting for many constraints usually found in real industrial problems, the examples discussed in the paper demonstrate that the proposed approach has a good computational performance. However, it is not good enough to solve large-size scheduling problems in a reasonable CPU time. Fortunately, the branch-and-bound solution algorithm not only exhibits a remarkable computational performance when applied to the heuristic-based problem modeling but also provides high-quality production schedules even for real world multiproduct plants. The model simplicity makes possible the extension to handling resource constraints due to raw material availability, manpower limitation, or maintenance periods, as will be shown in a forthcoming paper. Acknowledgment The authors acknowledge financial support from CONICET under Grant 1683/92, from NSF under Grant INT-9216758, and from “Universidad Nacional del Litoral” under C.A.I.+D 048. Literature Cited Blackstone, J. H.; Phillips, D. T.; Hogg, G. L. A State-of-the-Art Survey of Dispatching Rules for Manufacturing Job Shop Operations. Int. J. Prod. Res. 1982, 20, 27. Brooke, A.; Kendrick, D.; Meeraus, A. GAMSsA User’s Guide (Release 2.25); The Scientific Press: San Francisco, CA, 1992.

Egli, U. M.; Rippin, D. W. T. Short Term Scheduling for Multiproduct Batch Chemical Plants. Comput. Chem. Eng. 1986, 10, 303. Gooding, W. B.; Pekny, J. F.; McCroskey, P. S. Enumerative Approaches to Parallel Flowshop Scheduling via Problem Transformation. Comput. Chem. Eng. 1994, 18, 909. IBM. OSL (Optimization Subroutine Library) Guide and Reference, Release 2; Kingston, NY, 1991. Kondili, E.; Pantelides, C. C.; Sargent, R. W. H. A General Algorithm for Short Term Scheduling of Batch OperationssI. MILP Formulation. Comput. Chem. Eng. 1993, 17, 211. Morton, T. E.; Pentico, D. W. Heuristic Scheduling Systems; Wiley-Interscience: New York, 1993. Musier, R. F. H.; Evans, L. B. An Approximate Method for the Production Scheduling of Industrial Batch Processes with Parallel Units. Comput. Chem. Eng. 1989, 13, 229. Papageorgiou, L. G.; Pantelides, C. C. Optimal Campaign Planning/Scheduling of Multipurpose Batch/Semicontinuous Plants. 1. Mathematical Formulation. Ind. Eng. Chem. Res. 1996a, 35, 488. Papageorgiou, L. G.; Pantelides, C. C. Optimal Campaign Planning/Scheduling of Multipurpose Batch/Semicontinuous Plants. 2. A Mathematical Decomposition Approach. Ind. Eng. Chem. Res. 1996b, 35, 510. Pinto, J. M.; Grossmann, I. E. Optimal Cyclic Scheduling of Multistage Continuous Multiproduct Plants. Comput. Chem. Eng. 1994, 18, 797. Pinto, J. M.; Grossmann, I. E. A Continuous Time Mixed Integer Linear Programming Model for Short Term Scheduling of Multistage Batch Plants. Ind. Eng. Chem. Res. 1995, 34, 3037. Pinto, J. M.; Grossmann, I. E. A Continuous Time MILP Model for Short Term Scheduling of Batch Plants with Pre-Ordering Constraints. Comput. Chem. Eng. 1996, 20, S1197. Reklaitis, G. V. Perspectives on scheduling and planning of process operations. In Proceedings of the Fourth International Symposium on Process Systems Engineering, Montreal, Canada, 1991. Reklaitis, G. V.; Mockus, L. Mathematical Programming Formulation for Scheduling of Batch Operations Based on Nonuniform Time Discretization. Acta Quim. Slov. 1995, 42, 81. Rich, S. H.; Prokopakis, G. J. Scheduling and Sequencing of Batch Operations in a Multipurpose Plant. Ind. Eng. Chem. Process Des. Dev. 1986, 25, 979. Sahinidis, N. V.; Grossmann, I. E. MINLP Model for Cyclic Multiproduct Scheduling on Continuous Parallel Lines. Comput. Chem. Eng. 1991, 15, 85. Schilling, G.; Pantelides, C. C. A Simple Continuous-Time Process Scheduling Formulation and a Novel Solution Algorithm. Comput. Chem. Eng. 1996, 20S-B, S1221. Tsirukis, A. G.; Papageorgaki, S.; Reklaitis, G. V. Scheduling of Multipurpose Batch Chemical Plants with Resource Constraints. Ind. Eng. Chem. Res. 1993, 32, 3037. Voudouris, T. V.; Grossmann, I. E. Optimal Synthesis of Multiproduct Batch Plants with Cyclic Scheduling and Inventory Considerations. Ind. Eng. Chem. Res. 1993, 32, 1962. Zentner, M. G.; Reklaitis, G. V. An Interval-based Mathematical Model for the Scheduling of Resource-Constrained Batch Chemical Processes. Proceedings of the NATO ASI on Batch Processing Systems Engineering, Antalya, Turkey, 1992. Zhang, X.; Sargent, R. W. H. The Optimal Operation of Mixed Production FacilitiessA General Formulation and Some Solution Approaches for the Solution. In Proceedings of the 5th International Symposium on Process Systems Engineering, Kyongju, Korea, 1994; p 171.

Received for review September 6, 1996 Revised manuscript received December 26, 1996 Accepted December 27, 1996X IE9605490 X Abstract published in Advance ACS Abstracts, February 1, 1997.