Article pubs.acs.org/IECR
Rule-Based Scheduling of Single-Stage Multiproduct Batch Plants with Parallel Units Bin Shi,† Lie-Xiang Yan,† and Wei Wu*,‡ †
School of Chemical Engineering, Wuhan University of Technology, Wuhan 430070, China Department of Chemical Engineering, National Cheng Kung University, Tainan 70101, Taiwan
‡
ABSTRACT: A new rule-based model for single-stage multiproduct scheduling problem (SMSP) in batch plants with parallel units is proposed. The scheduling problem is decomposed into two subproblems of order assignment and order sequencing. A group of order assignment rules are introduced to select suitable units for customer orders. While flexible constraint handling strategies are proposed to eliminate the constraints of forbidden units and unit release times and convert the hard constraint of forbidden sequences to a soft one, leading to any arbitrary order sequence can be synthesized into a legal schedule. The line-up competition algorithm (LUCA) is presented to obtain optimal order sequence and order assignment rule, which can minimize makespan, total tardiness, or total cost. Through comparative study, the proposed approach has demonstrated its effectiveness for solving a large size SMSP.
1. INTRODUCTION Batch process is widely practiced in the modern chemical industry. The major factors that favor batch production are volatile product demands, short product life cycles, seasonal demand for certain products, and the need to manufacture products to specific customer requirements. Typical examples of batch process are the processing of food, fine chemicals, and pharmaceuticals.1 The scheduling problem concerned in batch plants involves the assignment of customer orders to processing units, and the sequencing of orders in each unit in such a way that the availability of limited resources is never surpassed and the customer orders are mostly fulfilled on time.1 In the past decades, the research on batch process scheduling has received great attention from academia and industry.2−8 A simple situation occurs when there is only one processing stage in a batch process, in addition to being of interest in themselves (eg, parallel units), single-stage problems often apply to more complex problems, either because a single (“bottleneck”) stage dominates or because multiple stage problems can be decomposed (exactly or approximately) into independent or loosely coupled single-stage problems. Many studies on the single-stage multiproduct scheduling problem (SMSP) have been reported in literature. The main solution methods for SMSP is to establish mixedinteger linear programming (MILP) model first, including objective function and a set of equality and inequality constraints, then solve the model using commercial solvers (e.g.,CPLEX, XPRESS, OSL).9 Cerda, Henning, and Grossmann10 proposed a continuoustime MILP model for SMSP. Based on the concept of job predecessor and successor, the proposed model is able to effectively handle the constraints of sequence-dependent changeover time; therefore, the optimal allocation of orders to various processing units could be determined so as to minimize the total tardiness, the makespan, or the number of tardy orders. To deal with real-world problems, they proposed heuristics, such as the order preordering, to partially prune the set of feasible © 2012 American Chemical Society
predecessors for each order, reducing the size of the MILP problem representation. Hui and Gupta1 presented a general formulation for SMSP on the basis of time slot.11 They adopted three sets of bi-index variables to handle the order sequence-dependent constraints either with or without imposing preordering heuristics. The main advantage of this formulation compared to the other previously proposed formulations is the significant reduction in the number of binary variables and consequently shortening the solution time. Chen et al.12 developed a MILP model for SMSP using the continuous-time domain representation and the notation of time slot. In their model, two sets of binary variables were adopted to represent the allocation of orders and units to time slots. By introducing some rational heuristic rules, not only could the size of model be cut down but also the optimality of the scheduling problem was ensured. The authors claimed their model involved fewer variables than any other model based on the notation of time slot and could be used to optimize several types of objective functions. Based on the resource task network (RTN)13 representations, Castro and Grossmann14 presented a multiple-time grid continuous-time MILP model for SMSP. The model used different time grids for each unit, instead of a single time grid for all events taking place, and presented new constraints that allowed the consideration of both release and due dates in a general way. The new formulation was shown to perform much better than other continuous-time MILP formulations and standalone constrain-programming models of Jain and Grossmann,15 and it was comparable to the hybrid MILP/CP algorithm of Maravelias and Grossmann16 on a set of example problems where the objective was either the minimization of Received: Revised: Accepted: Published: 8535
January 25, 2012 June 7, 2012 June 7, 2012 June 7, 2012 dx.doi.org/10.1021/ie300217a | Ind. Eng. Chem. Res. 2012, 51, 8535−8549
Industrial & Engineering Chemistry Research
Article
Figure 1. Schematic diagram of single-stage multiproduct batch process.
different complex constraints in contrast to other methods, such as MILP and GA. The rest of this paper is organized as follows. Section 2 details the scheduling model based on heuristic rules and flexible constraint handling strategies. Section 3 presents the LUCA and its computational strategies for SMSP. In Section 4, problems from the literature are solved to illustrate the performance of the proposed approach. Finally, the conclusions are given in Section 5.
total cost or total earliness. However, this model did not consider changeovers between products. Hence, Castro et al.17 later presented two new multiple-time grid continuous time formulations for SMSP, where equipment units were subject to sequence-dependent changeovers, product orders were subject to both release and due dates, and the objective was either the minimization of total cost, total earliness, or makespan. Further details about the above-mentioned and other available approaches for batch plants scheduling can be found in the reviews of Mendez et al.18 and Floudas and Lin.19 Most of the reported methods for SMSP used MILP formulation to solve the problem. With the problem size increasing, the computational effort of MILP increases greatly. It is difficult for MILP models to solve large-size SMSP. Although some researchers1,20 claimed their MILP models suitable for large size problems, the solutions to large size problems were far from the optimality, even if the algorithm ran for long time. An important advance was introduced by He and Hui,21−23 who presented a heuristic rule-based genetic algorithm (GA) for SMSP. The authors claimed that although the GA could not guarantee a global optimum, it could achieve the near-optimal solutions to large-size problems that were very difficult for MILP models to solve within moderate computing time. In fact, from a practical point of view, guaranteeing global optimality may not be relevant in many industrial scenarios, mainly due to the very short time available to generate a solution and send it to the plant floor, and the optimality is also easily lost because of the highly dynamic nature of industrial environments.7 In this paper, we propose a new scheduling model for SMSP based on a group of heuristic rules. This model can handle SMSP subject to order release times and due dates, unit release times, both sequence- and unit-dependent changeover times and the cases with forbidden sequences and units. According to the nature of the proposed model, line-up competition algorithm (LUCA) is presented to evolve a set of random solutions. The biggest advantage of this method is that it can easily find the optimal solutions for small size problems, and furthermore, it can also obtain acceptable solutions for large size problems with
2. SCHEDULING MODEL FOR SMSP 2.1. Problem Definition. In this paper, the scheduling problem of single-stage multiproduct batch plants with parallel units is considered. In SMSP, a set of customer orders is to be processed on a set of dissimilar parallel machines (as shown in Figure 1). The features of this process are as follows: (1) Each order involves a single product requiring a single processing stage. (2) Each order has a predetermined release time and due date. (3) Each order can only be processed in a subset of the given units. This means that there may be forbidden units for each order. The processing time of order is unit-dependent. (4) A processing unit processes only one order at a time. When one order changes over to another order, time for unit cleaning and preparing is required. The changeover times are sequence-dependent or both sequence- and unit-dependent. (5) Because of flavor and/or color incompatibilities, some order sequences are forbidden at any equipment item. (6) Some units are not available at the beginning of the production. They need time for setup or preparing, this kind of time is called unit release time. Given all the above features, the scheduling problem to be tackled involves determining (i) the allocation of orders to units, (ii) sequencing orders in each unit, and (iii) timing each order so that all scheduling constraints are taken into account 8536
dx.doi.org/10.1021/ie300217a | Ind. Eng. Chem. Res. 2012, 51, 8535−8549
Industrial & Engineering Chemistry Research
Article
production time for each order in the selected unit, where decision (i) is the key step for problem solving. Many published MILP models in the literature1,4,10,11,14 adopted binary variables to represent the assignment relationship between orders and units. This may incur large model size and make it intractable. To reduce the size of the conventional MILP models, some heuristic rules have been used.1,4,13 According to the given rule, orders are sequenced in decreasing priority order and then one by one assigned to the processing units. In this work, based on the features of scheduling objectives, a group of 12 heuristic order assignment rules are presented to assign orders,23 where Rules 1−8 are used for time-based objectives, makespan, and total tardiness, and Rules 9−12 are used for total cost minimization. The rules are described as follows: (1) Rule 1: Assign order to the first available unit (FAU). (2) Rule 2: Assign order to the unit that makes the order’s changeover time in the unit to be the shortest, namely, shortest changeover time (SCT). (3) Rule 3: Assign order to the unit that makes the order’s start time as early as possible, namely, earliest start time (EST). (4) Rule 4: Assign order to the unit that makes the order’s processing time in the unit to be the shortest, namely, shortest processing time (SPT). (5) Rule 5: Assign order to the unit that makes the order’s completion time to be as early as possible, namely, earliest completion time (ECT). (6) Rule 6: Assign order to the unit that makes the sum of the order’s changeover time and processing time in the unit to be the shortest, simplified by SCTP. (7) Rule 7: Assign order to the unit that makes the sum of the unit’s first available time and processing time in the unit to be the shortest, simplified by SATP. (8) Rule 8: Assign order to a randomly selected unit. (9) Rule 9: Assign order to the unit that makes the order’s processing cost in the unit to be the lowest, namely, lowest processing cost (LPC). (10) Rule 10: Assign order to the unit in which the sum of processing costs of the finished orders to be the lowest, simplified by LTU. (11) Rule 11: Assign order to the unit that makes the total processing cost of the finished orders and the currently processed order to be the lowest, simplified by LTCU. (12) Rule 12: Assign order to the unit that has the smallest amount of finished orders, simplified by SAFO. Figure 2 is the illustration of how Rule 1 works. Other rules work similarly. Giving a random order sequence P = {4, 2, 5, 8,
and, at the same time, some measure of the customer satisfaction and/or the plant performance is optimized. The following assumptions are used to derive the scheduling formulation for SMSP:10,12 (1) All the model parameters are deterministic. (2) Materials of each order are constant throughout the process, no material loss. (3) Once the processing of an order starts, it must not be interrupted during the process. (4) No resource constraints except the unit are considered. (5) The storage of raw material and final products is not considered. 2.2. Scheduling Objectives. Three typical scheduling objectives, makespan, total tardiness and total cost,24 are chosen to be minimized. Makespan (Cmax): min Cmax
(1)
Cmax = max{C1 , C2 , ..., C NI}
(2)
where Cmax is the completion time of the last order to leave the system, namely, the completion time of the entire order production. Ci (i = 1, 2, ..., NI) is the completion time of order i. Total tardiness (T): (3)
min T NI
T=
∑ max{Ci − di , 0} i=1
(4)
where T is the sum of the tardiness of all orders and di is the due date of order i. Total cost (TC): min TC
(5)
NI
TC =
∑ Ei i=1
(6)
s.t. T=0
(7)
where TC is the sum of processing costs of all orders and Ei (i = 1, 2, ..., NI) is the processing cost of order i. This objective is to minimize the total cost under the premise of no tardy order exists. 2.3. Heuristic Order Assignment Rules. To achieve the scheduling objectives, two decisions must be made sequentially: (i) assigning unit for each order and (ii) arranging the
Figure 2. Schematic diagram of order assignment based FAU: (a) assignment of former six orders; (b) assigning order 3 based FAU. 8537
dx.doi.org/10.1021/ie300217a | Ind. Eng. Chem. Res. 2012, 51, 8535−8549
Industrial & Engineering Chemistry Research
Article
7, 1, 3, 6}, which is going to be assigned over three parallel units 1−3. Assuming that the former six orders, {4, 2, 5, 8, 7, 1}, have already been assigned to units, as shown in Figure 2a. It is time to select a processing unit for order 3. According to Rule 1, order 3 should be assigned to the unit that is earliest available for it. As can be seen from Figure 2a, after the former six orders are processed, unit 2 is the earliest available unit for order 3, so order 3 should be assigned to unit 2, as shown in Figure 2b. 2.4. Flexible Constraint Handling Strategies. As the forbidden sequences and units exist in SMSP, applying above order assignment rules may incur infeasible scheduling schemes that violate these constraints. To overcome this drawback, a group of flexible constraint handling strategies is presented as follows: (i) Handling forbidden sequences: Giving the changeover time between any two forbidden sequences a sufficiently large positive number, CTi , i ′ = NC,
∀ (i , i′) ∈ FS
its earliest available time to process order, MCTj = URj. Setting a virtual order 0 as the latest order finished in each unit, MCPj = 0; setting both the total number and the total processing cost of finished orders in each unit to zero, MCNj = 0 and MCCj = 0. (2) Sequentially take out the order pi from order sequence P, and selecting a unit j ̃ from order pi’s available units set Jpi according to the given rule R. The switch/case statements in Figure 3 describe this process, where Rules 1−12 are used as candidate rules. For example, if R = 4, according to the switch/case statements, case 4 will be implemented, which means the processing time of order pi in all its available units will be evaluated, and the one that makes its processing time to be the shortest is selected as processing unit. Here, f J(•)is a function that returns the unit which makes the input of function to be minimal, j ̃ is the selected unit determined by f J(•). (3) Calculate the completion time TEpi,j ̃ and the start time TSpi,j ̃ of order pi in unit j.̃ (4) Recording TEpi,j ̃ as the completion time of order pi, CPi = TEpi,j.̃ (5) Taking the processing cost of order pi in unit j,̃ PCpi,j,̃ as its ultimate processing cost, EPi = PCpi,j.̃ (6) Taking the completion time of order pi in unit j ̃ as unit j’s̃ current available time, MCTj ̃ = TEpi,j.̃ (7) Updating the total processing cost of finished orders in unit j,̃ MCCj ̃ = MCCj ̃ + PCpi,j;̃ (8) Updating the latest finished order in unit j ̃ with order pi, MCPj ̃ = pi. (9) Updating the total number of finished orders in unit j,̃ MCNj ̃ = MCNj ̃ + 1. (10) If pi is the final order in order sequence P, then the order assignment procedure is finished, if not, go to step (2) for the next order. Through these steps, any given order sequence can generate a corresponding scheduling scheme without constraint violations of forbidden units and unit release times. Although some order sequences may produce schedules in which forbidden sequences exist, these order sequences can be treated the same as those without forbidden sequences. This is because the scheduling objective (i.e., makespan, total tardiness, or total cost) is used as criterion for given scheduling schemes, if they have forbidden sequences, the corresponding objective values of them will be very large by using the above forbidden sequences handling strategy. These schemes will compete with those without constraint violations during the computing process, and only the ones that have small objective values can be preserved. Hence, the solution for SMSP with parallel units can be transformed to determine optimal order sequence combined with proper order assignment rule to minimize makespan, total tardiness, or total cost.
(8)
where CTi,i′ is the changeover time between order i and order i′, FS is the set of forbidden sequences, and NC is a large positive number. When a pair of forbidden orders (i,i′) is assigned to be processed consecutively in the same unit, changing the processing cost of order i′ to a sufficient large positive number, not only will the ultimately calculated makespan or total tardiness be very large due to the large changeover time between forbidden orders but also the total processing cost will be enlarged due to the large processing cost of forbidden orders. Additionally, this kind of scheduling schemes, which have poor objectives, can be automatically discarded during the optimization process, and they do not affect the final optimization results. (ii) Handling forbidden units: Using a units set, Ji (i ∈ {1, 2, ..., NI}), to record all the units that can process order i. When selecting processing unit for order i according to selected rule, only the units that belong to Ji can be used as candidates. Hence, assigning an order to its forbidden units is avoided. (iii) Handling unit release times: Using variable MCTj (j ∈ {1, 2, ..., NJ}) to record the completion time of the latest finished order in unit j during the order assignment procedure. Taking MCTj as unit j’s earliest available time to process next order. The release time of each unit is treated as the earliest available time to process the first order assigned to it. Through these strategies, the constraint violations of forbidden units and unit release times are cleverly avoided, while the forbidden sequences are handled flexibly. Hence, giving a random order sequence, and then one by one assigning the orders to the processing units according to the selected rule, a corresponding scheduling scheme can be always obtained. 2.5. Order Assignment Procedure. Based on the above order assignment rules and constraint handling strategies, for arbitrary order sequence, P = {p1, p2, ..., pNI}, the processing units and processing times of orders can be determined easily. Figure 3 gives the pseudo-code of the order assignment procedure. As can be seen from Figure 3, all orders in order sequence P are sequentially assigned to units in a for-loop through the given order assignment rule R. The detailed procedure can be described as follows: (1) At the beginning of the order assignment procedure, setting release time of each unit j (∀ j ∈ {1, 2, ..., NJ}) as
3. LINE-UP COMPETITION ALGORITHM FOR SMSP It is obvious that the determining of optimal order sequence and order assignment rule is a typical combinatorial optimization problem. Because of the complexity of this problem, the line-up competition algorithm (LUCA) is presented to minimize the alternative scheduling objectives, makespan, total tardiness, and total cost. LUCA is a population-based global search algorithm that is inspired by the Darwinian principle of survival. It has experienced increasing application for numerical 8538
dx.doi.org/10.1021/ie300217a | Ind. Eng. Chem. Res. 2012, 51, 8535−8549
Industrial & Engineering Chemistry Research
Article
Figure 3. Pseudo-code of order assignment procedure.
optimization and combinatorial optimization, such as Knapsack problem, traveling salesman problem, separation sequence synthesis problem, and unsteady operation problem, and it has shown great promising performance in many industrial engineering areas.25−28 In LUCA for SMSP, a group of candidate order sequences and order assignment rules are given randomly at the beginning of the search, and then through the effective evolutionary mechanism in LUCA, the optimal or near-optimal scheduling scheme can be obtained ultimately. The detailed procedures are described as follows. 3.1. Adaptive Selecting Order Assignment Rule. In our approach for SMSP, the order assignment rule is one of the key points to achieve optimal scheduling. A suitable rule can improve the solution quality dramatically. In order to get the optimal rule, the traditional rule-based scheduling methods test the rules one by one and then select an optimum,22,23 which may undoubtedly result in a huge computational burden. To overcome this drawback, we use an arbitrary order sequence and a random selected order assignment rule to compose a candidate solution for SMSP. All orders in the order sequence are one by one assigned to units according to the selected rule, and then the
corresponding scheduling scheme and objective are obtained. During the computing process of LUCA, the order sequence and order assignment rules will be changed iteratively; therefore, the optimal rule that leads to best solution can be automatically determined. 3.2. Family Representation of LUCA for SMSP. In LUCA for SMSP, the families, which represent candidate solutions for given scheduling objective, are coded directly by order sequences and order assignment rules. Simply, the natural numbers 1, 2, 3, ..., NI and 1, 2, 3, ..., NR are used to denote NI orders and NR order assignment rules, respectively. The individual family is described as follows: Q = {P , R } P = {p1 , p2 , ..., pNI }, i = 1, 2, ..., NI,
(9)
pi ∈ {1, 2, ..., NI}, R ∈ {1, 2, ..., NR}
(10)
where Q is a combined sequence, P is the order sequence, and pi is a natural number that denotes an order. R is the selected order assignment rule. All orders in the same order sequence use the same rule to select units. 8539
dx.doi.org/10.1021/ie300217a | Ind. Eng. Chem. Res. 2012, 51, 8535−8549
Industrial & Engineering Chemistry Research
Article
The parameter k/m is the mutation probability assigned for the kth family in the ordered queue, and Rand represents the operation to randomly generated a probability threshold that between 0 and 1. Swap(•) and Reverse(•) represent implementing respectively swap mutation and reverse mutations to a given order sequence in order to generate a new order sequence. It is evident that the mutation probability of each family increases linearly with its position. Hence, from a statistical point of view, for the former families in the queue, there are higher probabilities for the inequality of Rand > k/m to hold as compared to those of families in the back of the queue. Correspondingly, the former families have more opportunity to implement swap mutation, and the back families mainly use reverse mutation. Therefore, the mutation degrees of the families increase gradually from the front to the back of the queue. The former families mutate slightly, leading to the new generated families migrate not far from the original families in the search space, so that a carefully exploring of local search can be enhanced. In contrast, increasing the mutation degree of the back families will produce vast diversity new families distributed far from the original ones, so that these new families have more chances to “jump out” from local optima to find better solutions. In LUCA, the hybrid mutation strategy is suitable for the mutation of order sequence. For the order assignment rule, as the candidate values of rules are discrete integers that belong to a set of natural number (i.e., there are in total 12 rules in our approach for SMSP, so the candidate values of a given rule are arbitrary integers between 1 to 12), the currently used rule is replaced by a randomly selected rule from the given rule set, where every single rule has an equal probability to be selected. Hence, all the rules in rule set will be evaluated during the search process of LUCA. Ultimately, the optimal rule that can conduct LUCA to find best solution is obtained. The mutation strategies make each family in different position of the queue play the same important role during the search process; meanwhile, the local search and global search in the search space can be well balanced. 3.5. Termination Criterion. For a combinatorial optimization problem, LUCA usually terminates at a predefined generation. However, the total generation number of evolution is difficult to determine. Too many evolution generations may lead to a large amount of invalid repeat calculations after the algorithm has converged to optimal. On the contrary, the algorithm may be trapped in many local optima. In this work, the search of LUCA will terminate ahead of the predefined generation when the best objective value has no further improvement during the recent generations. With the algorithm running, the differences among families tend to be null and the best solution remains unchanged for a long time, which means no further improvement on the best solution has been found, so the algorithm should terminate. 3.6. Procedure of LUCA for Solving SMSP. Figure 6 illustrates the procedure of LUCA for solving SMSP. It consists of the following steps:
Assuming that a process has 4 parallel units to process 10 customer orders and Rules 1−12 are used as candidate rules, a possible family in LUCA can be {5 8 10 6 7 2 3 1 9 4 3}, where, the former 10 numbers denote order sequence, and the last number, 3, indicates the selected rule is Rule 3 (EST). All the orders in order sequence should be one by one assigned over units according to the Rule 3 (EST). At the beginning of the search, m combined sequences, {Q1, Q2, ..., Qm}, are randomly generated to form the first generation families, X(1) = {Q1, Q2, ..., Qm}, of LUCA. These families are synthesized into m scheduling schemes in accordance with the procedures described in Section 2.5, and then corresponding scheduling objectives, Y(1) = {f(Q1), f(Q2), ...,f(Qm)}, of these families are calculated. 3.3. Ordering. Letting Y(t) = {f(Qt1), f(Qt2), ..., f(Qtm)} denotes the set of objective values of m families X(t) = {Qt1, Qt2, ..., Qtm} in the tth generation. Based on the objective values, the elements in Y(t) form a new ascending queue Y′(t) = {f(Q′t1), f(Q′t2), ..., f(Q′tm)}. The minimal objective value is located in the first place of the queue, while the largest one is placed in the end of the queue. Similarly, the m families X(t) = {Qt1, Qt2, ..., Qtm} form a new ordered set X′(t) = {Q′t1, Q′t2, ..., Q′tm} corresponding to Y′(t) = {f(Q′t1), f(Q′t2), ..., f(Q′tm)}. 3.4. Mutation. The role of mutation is to assign different evolutionary driving forces to families in order to avoid families being trapped in local optima with poor values. For solving combinatorial optimization problem, the driving force in LUCA can be expressed as mutation level for each family. The best one in the first place of the queue is allocated minimal mutation level, which can speed up local search for exploring optimal solution quickly. While the other families in the queue mutate more and more severely according to their locations, the migration range of families in the search space increase gradually, and then, the global search may be achieved. According to the principle of allocating evolutionary driving force, a hybrid mutation strategy consisting of swap mutation and reverse mutation is proposed to mutate the order sequence in each family. Figure 4 illustrates the process of these two kinds
Figure 4. Illustration of the mutation process: (a) swap mutation; (b) reverse mutation.
of mutations. For swap mutation, two orders in order sequence are selected randomly, then exchanging their positions to form a new order sequence, and for reverse mutation, two orders in order sequence are also selected randomly, however, different from swap mutation, all orders’ positions between the selected two orders are reversed, it is obvious that the degree of swap mutation is relatively small as compared to the reverse mutation. In our proposed hybrid mutation strategy, the two mutations, each with different probability, are applied alternatively to the families in different positions of the queue. The concrete mutation process is given in Figure 5. There are two loops in the mutation process, the outer loop means m ordered families one by one produce their offspring through mutation. The inner loop represents generating n offspring for each family.
(1) Generating m combined sequences that consist of order sequences and order assignment rules to form the initial generation families X = {Q1, Q2, ..., Qm} of LUCA. (2) Calculating the scheduling objectives Y = {f(Q1), f(Q2), ..., f(Qm)} corresponding to the m combined sequences X = {Q1, Q2, ..., Qm}. Based on the objective values, the m 8540
dx.doi.org/10.1021/ie300217a | Ind. Eng. Chem. Res. 2012, 51, 8535−8549
Industrial & Engineering Chemistry Research
Article
Figure 5. Pseudo-codes of family mutation process.
4. CASE STUDY In this section, the performance of the proposed approach for SMSP with parallel units is illustrated through the solutions of five typical examples from the literature. These examples were widely used to test the effectiveness of different scheduling models and algorithms,1,4,10,11 now they have been the benchmark problems for SMSP. To compare the performance with MILP, random search (RS), and GA, which have been used in literature, our approach is adopted to solve different size instances of these examples, from 3-order/2-unit up to 50-order/5-unit. As the time-based scheduling objectives are used in Examples 1−4, Rules 1−8 are selected as candidate rules for order assignment. For Example 5, which has a costbased objective, Rules 9−12 are used. The following criteria are used to evaluate the performance of the algorithms: (i) the best solution obtained by the algorithm; (ii) the mean objective value of the computational tests; (iii) the standard deviation of solutions of the computational tests. In order to accurately test the performance of our approach, 10 independent tests are performed for each instance. All of the following scheduling problems are solved on Intel Core i7 CPU and 4GB of memory using the MATLAB 7.9 language environment. In some works in the literature, the computational time of algorithm is also adopted as a criterion for performance test. However, because the computer hardware and software used in our approach have differences with the ones used in the literature, it makes no sense to compare the absolute computational time directly. In this paper, the number of average evolution generations required for obtaining the best solution in each 10 tests is used instead of the absolute computational time. According to the pre-experiment experience, Table 1 lists the parameter configurations of LUCA for SMSPs with different sizes.
Figure 6. Flowchart of LUCA.
combined sequences in X are reordered as an ascending queue. (3) Applying the hybrid mutation strategy and random selection method to mutate the order sequence and order assignment rule, respectively. For each combined sequence Qi (i = 1,2...m) in X, the corresponding n new combined sequences {Qoffsi,1, Qoffsi,2, ..., Qoffsi,n} are generated as its offspring. (4) One by one, comparing each Qi and its offspring and conserving the one that has minimal objective to evolve in the next generation. (5) Testing the termination conditions, if they are satisfied, then terminating the search process, and outputting the best family in current generation as the final solution found by LUCA; if not, go to (2) for continuing evolution.
Table 1. Parameter Configurations of LUCA termination criteria N N N N
size
family no.
offspring no.
generations
ratioa
≤ ≤ ≤ ≤
5 5 10 20
5 10 10 15