Scheduling with multi-attribute setup times

Scheduling with multi-attribute setup times

Computers & Industrial Engineering 63 (2012) 494–502 Contents lists available at SciVerse ScienceDirect Computers & Industrial Engineering journal h...

500KB Sizes 2 Downloads 121 Views

Computers & Industrial Engineering 63 (2012) 494–502

Contents lists available at SciVerse ScienceDirect

Computers & Industrial Engineering journal homepage: www.elsevier.com/locate/caie

Scheduling with multi-attribute setup times q Cheng-Hsiung Lee a, Ching-Jong Liao b,⇑, Chien-Wen Chao b a b

Graduate Institute of Management, National Taiwan University of Science and Technology, Taipei 106, Taiwan Department of Industrial Management, National Taiwan University of Science and Technology, Taipei 106, Taiwan

a r t i c l e

i n f o

Article history: Received 20 December 2010 Received in revised form 14 April 2012 Accepted 20 April 2012 Available online 1 May 2012 Keywords: Scheduling Single machine Multi-attribute setup times Heuristic

a b s t r a c t In this paper we address a scheduling problem with multi-attribute setup times originated from the manufacturing plant of a company producing PVC sheets. In the considered scheduling problem, each job has a number of attributes and each attribute has one or more levels. Because there is at least one different level of attribute between two adjacent jobs, it is necessary to make a setup adjustment whenever there is a switch to a different job. The objective of the problem is to determine a processing sequence so as to minimize the total setup time on a single machine. We develop a constructive heuristic based on several theorems for the problem. The heuristic has been evaluated by comparing with an existing constructive heuristic, a tabu search heuristic and a dynamic programming approach, and its efficiency and effectiveness have been demonstrated. The computational results show that the proposed heuristic outperforms the current scheduling method used by the case plant with a significant improvement. Ó 2012 Elsevier Ltd. All rights reserved.

1. Introduction In this paper we address a real-life scheduling problem related to the production of Polyvinyl Chloride sheet (hereafter referred to as PVC sheet), a typical continuous process industry. PVC is a thermoplastic polymer which has been one of the most widely produced plastics. Because PVC is cheap, durable, and easy to assemble, PVC sheet products have extensive applications including inflatable toy, curtain, tape, stationery, vacuum forming sheet, ceiling foil, tile and table cloth. PVC sheet production is a highly capital intensive industry. The production process of PVC sheet includes the main machine calender and some peripheral equipment such as super mixer, planetary extruder, mixing mill, cooling unit, b-ray thickness detector, and auto winder (see Fig. 1). There are twelve calenders in the considered PVC sheet plant, each producing a different PVC sheet product. In the production process, the materials supplying system provides PVC resin with a proper formula, and produces different specifications of PVC sheet products through the calenders. The capacity of the PVC sheet production system is determined by the calenders which become the bottleneck in such a system. Calender is a series of hard pressure rollers used to unify the specifications and to make the product surface smooth. To fully utilize the expensive equipments, the considered PVC sheet plant runs

q

This manuscript was processed by Area Editor Maged M. Dessouky.

⇑ Corresponding author. Address: Department of Industrial Management, National Taiwan University of Science and Technology, 43 Keelung Road, Section 4, Taipei 106, Taiwan. Tel.: +886 2 2737 6337. E-mail address: [email protected] (C.-J. Liao). 0360-8352/$ - see front matter Ó 2012 Elsevier Ltd. All rights reserved. http://dx.doi.org/10.1016/j.cie.2012.04.012

three shifts, eight hours per shift, and seven days a week. Since the bottleneck is on the calender, the aggregate productivity cannot be increased by working overtime or employing more workers. The effective scheduling is considered as a useful tool to increase the productivity. The PVC sheet plant receives purchase orders from different customers. Each purchase order contains a request to produce a number of PVC sheet products with five attributes: marking, color, hardness, width and thickness. Each attribute has a corresponding attribute setup time and usually has several different levels. A PVC sheet product of a purchase order is called a job, which is the basic unit on the scheduling operation. The processing time of each job normally takes a few hours to several days, and the production is scheduled once a week. The PVC sheet products with all same levels of the five attributes are always grouped into a single job in order to eliminate the setup times. Because there is at least one different level of attribute between two adjacent jobs, it is necessary to make a setup adjustment whenever there is a switch to a different job. Each calender is handled by an operator, who can adjust only one level of attribute at a time. For example, if the levels of marking and hardness are different between two adjacent jobs, there is a need to adjust the two levels of marking and hardness on the calender. This results in a setup time equal to the sum of the attribute setup times of marking and hardness. Therefore, the setup time between two adjacent jobs is determined by summing up those attribute setup times with different levels of attributes. In this paper, we explore how to increase the efficiency of the PVC sheet production on the single calender machine by an effective scheduling approach. The scheduling problem in the PVC sheet

495

C.-H. Lee et al. / Computers & Industrial Engineering 63 (2012) 494–502

Fig. 1. Production flow line of PVC sheet plant.

production involves processing jobs on a single calender to minimize the total setup time, or equivalently the makespan. A constructive heuristic will be developed for the real-life scheduling problem with multi-attribute setup times. The proposed heuristic will be compared with the current scheduling method, an existing constructive heuristic, a tabu search heuristic and a dynamic programming approach.

2. Literature review In this section we briefly review the related research. Scheduling a single machine problem to minimize the total setup time can be modeled as a traveling salesman problem (TSP; Baker, 1974). There exist some well-known constructive heuristics for the solution of large-scale TSP, such as nearest neighbor algorithm and insertion procedure algorithm (Rosenkrantz, Stearns, & Lewis, 1974), convex hull heuristic (Eilon, Watson-Gandy, & Christofides, 1971), Christofides’ heuristic (Christofides, 1976) and partitioning algorithm (Karp, 1977). These classical heuristics are meant to quickly provide good solutions, and they have been broadly referred by many researchers. In the past decade, a multitude of more refined TSP algorithms have been proposed. For example, Choobineh, Mohebbi, and Khoo (2006) proposed a multi-objective tabu search heuristic for sequencing jobs on a single machine with sequence-dependent setup times. They also formulated a mixed integer linear program to obtain the optimal solution and to evaluate the heuristic. Ausiello, Escoffier, Monnot, and Paschos (2009) addressed a re-optimization version of the TSP. They studied the case where nodes are inserted in or deleted from the graph and proposed a heuristic to show that the re-optimization problem for TSP with the metric distance matrix is approximate within ratio 4/3. They also proposed a 4/5-approximation heuristic for the re-optimization version of TSP for all kinds of graphs. There is some research discussing the application of continuous process industry in the scheduling literature. Liao and Yu (1996) developed two heuristics to generate near-optimal solutions for a biaxially oriented polypropylene film production system. The heuristics were evaluated by a branch and bound algorithm and their performance was shown to be better than the current method. Bridging the gap between theory and practice, Gravel, Price, and Gagné (2002) presented an ant colony optimization meta-heuristic for the solution of an industrial scheduling problem in an aluminum casting plant that takes account of a number of important objectives. They had incorporated the proposed methods into software that has been implemented in the plant. Chen (2009) presented a heuristic for a sequence-dependent setup time problem with machine maintenance in a textile company. The objective is to minimize the total setup time subject to periodic maintenance and due dates. The performance of the heuristic was evaluated by comparing its solution with the solution of the branch-andbound algorithm. Abreu, May, Spangler, and Vargas (2008) used

an intelligent decision support system (DSS) to heuristically find a satisfying solution to the production scheduling problem in a large chemical plant. They showed that the DSS can lead to measurable improvements over humanly-designed plans, where the quality of the schedule was measured using the mathematical formulation of the problem. There also exists some related research considering the scheduling problems with multi-stage (or multi-class, multi-attribute) setup times. The problem of minimizing mean flow time with job classes was probably first considered by Gupta (1984) who proposed a polynomically bounded algorithm for solving the problem with two job classes. Liao and Liao (1997) considered the problem with major and minor setups and solved the problem to optimality by dynamic programming. They also developed a heuristic for a two-class problem. Computational results showed that the heuristic produces solutions that deviate about 0.1% from the optimum. Using the criterion of minimum makespan, Tang (1990) developed a heuristic to schedule jobs on parallel machines with major and minor setup times. He derived two lower bounds to evaluate the efficiency of the heuristic. To coordinate a two-stage setup in furniture production, Agnetis, Detti, Meloni, and Pacciarelli (2001) proposed a constructive heuristic and a meta-heuristic for the problem that considers two objectives: minimizing the total number of setups and minimizing the maximum number of setups. The heuristic approaches allowed to solve a set of real-life instances and performed satisfactorily on a large sample of experimental data. For the same problem, Mansouri (2005) proposed a multiobjective genetic algorithm (MOGA), and shortly after Mansouri (2006) presented a better multi-objective simulated annealing algorithm (MOSA). Comparative experiments showed that MOSA is very well-performing in large problems and that it outperforms MOGA in terms of quality of solutions. Recently, Liao, Shyu, and Tseng (2009) presented a constructive heuristic called least flexibility first heuristic (LFFH), which combines a least flexibility first principle and a greedy search, for the setup coordination problem. They had demonstrated that LFFH performs better than MOSA of Mansouri (2006), and extended LFFH from the two-stage to the three-stage supply chain. 3. Current scheduling method The standard attribute setup times proclaimed by the case PVC sheet plant are shown in Table 1. The scheduler in the case plant tries to schedule jobs with more same levels together to decrease the setup times incurred. Marking is the most important attribute and has the longest attribute setup Table 1 Standard attribute setup times in the plant. Attribute

Marking

Color

Hardness

Width

Thickness

Setup time (min)

60

15

20

15

10

496

C.-H. Lee et al. / Computers & Industrial Engineering 63 (2012) 494–502

Table 2 A real case with 13 jobs. Attribute

Marking Width Thickness Hardness Color

Job

Setup time

1

2

3

4

5

6

7

8

9

10

11

12

13

001 48 0.8 8 9

191 62 0.8 8 1

001 70 1.8 18 1

001 42 0.9 8 2

001 48 0.9 9 1

002 48 0.8 7 1

002 52 0.8 7 1

001 42 0.8 8 2

191 30 0.8 8 2

001 50 1.0 10 9

001 50 1.0 10 13

001 50 0.8 8 2

002 48 1.0 10 2

60 15 10 20 15

Table 3 Solution by implementing the current scheduling method.

time, so the scheduler tries to reduce the marking setup as less as possible. The scheduler believes that the key decision is to determine the priority of the five attributes, which leads to the following scheduling method currently employed in the PVC sheet plant: Step 1. Determine the priority of attributes in non-increasing order of attribute setup times. The obtained priority order is marking, hardness, width, color and thickness. Step 2. Group jobs with the same level of marking together. Sequence the groups of jobs in non-decreasing order of levels of marking. Step 3. For jobs with the same level of marking, sequence them in no-increasing order of levels of hardness. Step 4. According to the priority order of attributes in Step 1, implement the sequencing procedure, as in Step 3, one by one. Sequence jobs in non-decreasing order of levels of color but in non-increasing order of levels of width and thickness.

3.1. Example 1 A real case from the considered PVC sheet plant with 13 jobs is given in Table 2. We use this real case to explain the current scheduling method. In Step 1, the priority order is determined as follows: marking, hardness, width, color and thickness. In Step 2, based on the same level of marking, we group the jobs {J1, J3, J4, J5, J8, J10, J11, J12} with marking number 001, {J6, J7, J13} with marking number 002 and {J2, J9} with marking number 191. In Step 3, for jobs with marking number 001, we obtain the sequence (J3, J10, J11, J5, J1, J4, J8, J12) based on non-increasing order of levels of hardiness, 18, 10, 9 and 8. Similarly, we obtain the sequences (J13, J6, J7) and (J2, J9) for the other two groups of jobs. Continuing the scheduling procedure

with respect to width, color and thickness, we obtain a final schedule (J3, J10, J11, J5, J12, J1, J4, J8, J13, J7, J6, J2, J9) with the total setup time S = 580 min. The complete scheduling process is shown in Table 3.

4. Problem formulation Consider the scheduling problem where there are n jobs to be processed on a single machine. All the n jobs are available at time zero and no preemption is allowed. We assume that the initial setup time is zero when a job is available for processing at time zero. Following the three-field notation, the problem can be denoted by 1/sij/Cmax, where 1 designates the single machine, sij represents the sequence-dependent setup time, and Cmax denotes the makespan. When the machine switches the production from a job Ji(i = 1, . . . , n) to another job Jj (j = 1, . . . , n, j – i), a setup time sij > 0 is required. The setup time matrix is symmetric for the problem since sij = sji. The objective of the problem is to determine a processing sequence to minimize the makespan which is equivalent to minimize the total setup times. The following notation is used throughout the paper: n U Ji J[k] |A| Aa NLa La(Ji) Na(Ji)

Number of jobs Set of jobs Job i, i = 1, . . . , n Job scheduled in the kth position, k = 1, . . . , n Number of attributes Attribute a, a = 1, . . . , |A| Number of different levels of attribute a throughout the job set, a = 1, . . . , |A| Level of attribute a for Ji Number of jobs with the same level of attribute a as Ji

497

C.-H. Lee et al. / Computers & Industrial Engineering 63 (2012) 494–502

wa sij S

The ath attribute setup time, a = 1, . . . , |A| Setup time between two adjacent jobs i and j, and job j scheduled immediately after job i, i, j = 1, . . . , n, i – j Total setup time of a schedule

Since the scheduling problem 1/sij/Cmax in the PVC sheet plant is a special case of the Traveling Salesman Problem (TSP), we can formulate this problem as a typical TSP. Because the objective is to find the minimal total setup time of a schedule, equivalent to finding a shortest path, we need to introduce a dummy job J0 as the base node into the TSP formulation, and set s0j = si0 = 0 (i, j = 1, . . . , n). It is known that TSP is a typical NP-hard optimization problem and difficult to solve optimally. According to the related literature given in Section 2, although there exist some heuristics proposed for the problem with sequence-dependent setup times, no previous work has directly addressed the scheduling problem with multi-attribute setup times. Since the scheduler in real world can easily pay more attention to the attributes with longer attribute setup times, it is advantageous to preserve the characteristic of multi-attribute setup times in scheduling. The scheduler does not want to lose the characteristic of multi-attribute for solving scheduling problems. Multi-attribute setup times are not only the most important characteristic of the real-life scheduling problem but also the main interest of our research. Consequently, we need to develop a heuristic that can solve directly the problem with the characteristic of multi-attribute setup times. 5. Proposed heuristic In this section, we will propose a constructive heuristic for the scheduling problem with multi-attribute setup times.

Theorem 2. Consider an n-job problem with |A| (|A| P 2) attributes. The number of an attribute’s different levels is from 1 to n, i.e., 1 6 NLa 6 n, and one level may correspond to one or more jobs. If there exists an attribute a having one or n levels (i.e., NLa = 1 or n), then the problem can be reduced to a problem with |A|  1 attributes. Proof. In the stated problem, if there exists Aa with only one level, wa will not be incurred for any schedule. If there exists Aa with n levels, each level must correspond to each one of the n jobs. Thus, all the levels of Aa are different and (n  1)wa will be incurred for any schedule. Therefore, the problem can be reduced to a problem with |A|  1 attributes without considering Aa. h Theorem 3. Consider an n-job problem with only two attributes A1 and A2 where w1 > w2. The jobs with the same level of A1 must be sequenced consecutively in an optimal schedule. Proof. By contradiction, suppose there exists an optimal schedule Q in which jobs with the same level of A1 are not sequenced consecutively. Let A1 contain m levels. For A1 in Q, the attribute setup time w1 must be incurred at least m times. In addition, if the level of A1 is the same between two adjacent jobs, the level of A2 must be different for the jobs, and vice versa. The attribute setup time w2 will be incurred at least n  m  1 times. Therefore, when w1 is incurred the minimal m times, the total setup time of Q will be S = mw1 + (n  m  1)w2. Let Q0 be another schedule obtained from Q by sequencing jobs with the same level of A1 consecutively. The attribute setup time w1 must be incurred m  1 times and w2 is incurred n  m times. The total setup time of Q0 will be S0 = (m  1)w1 + (n  m)w2. If Q is a contradiction, we have S0 < S since w1 > w2, and hence Q0 is better than Q. h

5.1. Adjacent index We combine the least flexibility first principle (Liao et al., 2009) and the attribute setup times into a single index, called Adjacent Index. The adjacent index of a job Ji, denoted by AI(Ji), is defined as follows:

AIðJ i Þ ¼

jAj X wa  N a ðJ i Þ a¼1

where wa denotes the attribute setup time a, and Na(Ji) denotes the number of jobs, with the same level of attribute a as Ji, in the remaining unassigned jobs. This adjacent index considers both job flexibility and setup times simultaneously, and the values of attribute setup times can be regarded as the weights of flexibility. Based on the adjacent index, we can develop the following theorem which will be used in the proposed heuristic. Theorem 1. There exists an optimal schedule in which a job with AI(Ji) = 0, if it exists, is scheduled at the beginning or at the end of the schedule. Proof. A job i with AI(Ji) = 0, if it exists, implies that all the levels of its attributes are different from those of other jobs. The setup time between Ji and its adjacent jobs, both the left and the right, will be incurred twice, i.e., 2 sij. Suppose we have an optimal schedule Q in which Ji is not scheduled at the beginning or at the end of Q. Let Q0 be another schedule obtained from Q by sequencing Ji to either J[1] or J[n]. The setup time cannot increase in passing from Q to Q0 . This is because at most a setup time sij will be incurred in the original position while a setup time sij will be reduced. h The following theorems are also useful in the proposed heuristic.

Theorem 4. Consider an n-job problem with |A| (|A| > 2) attributes. P Suppose wr P wr+1 P    P w|A|. If wr P 2 jAj1 a¼rþ1 wa is held, there exists an optimal schedule in which jobs with the same level of Ar must be sequenced consecutively. Proof. By contradiction, suppose there exists an optimal schedule Q in which jobs with the same level of Ar are not sequenced consecutively. Let Ar contain m levels. For Ar with the longest attribute setup time in Q, the attribute setup time wr will be incurred at least m times. For the remaining Ar+1, . . . , A|A|, if the level of Ar is the same between two adjacent jobs, at least one level of Ar+1, . . . , A|A| will be different for the jobs. To minimize setup time, the level of A|A| must be different but the levels of Ar+1, . . . , A|A|1 may be the same between the two adjacent jobs. In addition, since an attribute cannot have only one level, Ar+1, . . . , A|A|1 must contain at least two different levels. That is, these attribute setup times wr+1, . . . , w|A|1 will be incurred at least one time. Therefore, the minimal total setup time of Q will be S = mwr + wr+1 +    + w|A|1 + (n  m  1)w|A|. Let Q0 be another schedule obtained from Q by sequencing jobs with the same level of Ar consecutively. The attribute setup time wr must be incurred m  1 times. wr+1, . . . , w|A|1 will be incurred three times and w|A| will remain incurred n  m  1 times. So, we can obtain the minimal total setup time of Q0 as S0 = (m  1)wr + 3(wr+1 + wr+2 +    + w|A|1) + (n  m  1)w|A|. If Q0 is better than or equal to Q, the following condition must be satisfied:

S0  S ¼ wr þ 2

jAj1 X a¼rþ1

wa 6 0 ) wr P 2

jAj1 X a¼rþ1

wa



498

C.-H. Lee et al. / Computers & Industrial Engineering 63 (2012) 494–502

Theorem 5. Consider an n-job problem with |A| (|A| > 2) attributes. PjAj Suppose wr P wr+1 P    P w|A|. If wr P a¼rþ1 wa is held, there exists an optimal schedule in which jobs with the same level of Ar as J[1] (or J[n]) must be sequenced consecutively with J[1] (or J[n]). Proof. By contradiction, suppose there exists an optimal schedule Q in which jobs with the same level of Ar are not sequenced consecutively. Same as Theorem 4, the minimal total setup time of Q will be S = mwr + wr+1 +    + w|A|1 + (n  m  1)w|A|. Consider a job which is not sequenced consecutively with those jobs with the same level of Ar in Q. Let Q0 be another schedule obtained from Q by sequenced the job consecutively with those jobs with same level of Ar, and it must sequence either at the beginning or the end of Q0 . Similar to the proof of Theorem 4, the minimal total setup time of Q0 is S0 = (m  1)wr + 2(wr+1 + wr+2 +    + w|A|1) + (n  m)w|A|. If Q0 is better than or equal to Q, the following condition must be satisfied:

S0  S ¼ wr þ

jAj X a¼rþ1

wa 6 0 ) wr P

jAj X

wa



a¼rþ1

P In the specific situation wr P jAj a¼rþ1 wa , we know that the sum of at least q (1 6 q 6 |A|  1) attribute setup times, including the P longest one, will satisfy the inequality wr P 2 jAj1 a¼rþ1 wa in Theorem 4 (i.e., the sum of at least q attribute setup times can be regarded as wr) or Theorem 3. Therefore, two jobs that have q same levels of attributes must be sequenced consecutively. Further, the following two flexibility indices will be used in the heuristic: fm(Ji). Flexibility index f, which is defined as the number of jobs with the same levels of m attributes in the remaining unassigned jobs, including the longest attribute setup time, as Ji . gm(Ji). Flexibility index g, which is defined as the number of jobs with the levels of m attributes in the remaining unassigned jobs, excluding the longest attribute setup time, same as Ji. The flexibility index g is used when there are no more jobs with the same level of the longest attribute as Ji in the remaining unassigned jobs. These two indices are the same if all attribute setup times are the same. Otherwise, they have different applications in the heuristic. 5.2. Example 2 We use the real case (see Table 2) to explain the flexibility indices f and g. For J8, we have f4(J8) = 2 because there are two jobs (i.e., J4 and J12) with the same levels of 4 attributes, including marking, as J8. Also, f3(J8) = 1 because there is only one job (i.e., J1) with the same levels of 3 attributes, including marking, as J8. As to another flexibility index g, when there has been no more jobs with the same level of marking as J13 in the remaining unassigned jobs, we have g2(J13) = 2 because there are two jobs (i.e., J10 and J11) with the same levels of 2 attributes, excluding marking, as J13. 5.3. Least adjacent index first heuristic We can now develop a constructive heuristic called Least Adjacent Index First (hereafter referred to as LAIF) heuristic to generate a near optimal solution for the considered problem. It is assumed throughout that attributes have been arranged in nonincreasing order of attribute setup time, i.e., w1 P w2 P    P w|A|. The detailed steps of the LAIF heuristic are given below:

Step 1. Determine q. Set k = 1, U = {J1, J2, . . . , Jn}. Compute AI(Ji) for all Ji in U. Determine J[k] in U such that AI(J[k]) 6 AI(Ji) for all Ji in U. Delete J[k] from U. Step 2. Set m = |A|  1. Step 3. Compute fm(J[k]). Step 3.1. If fm(J[k]) = 0, set m = m  1. If m P q, restart Step 3. Otherwise, go to Step 4. Step 3.2. If fm(J[k]) P 1, compute AI(Ji) of the considered jobs. Choose the two jobs with the smallest and the second smallest AI(Ji) and assign them to J[k+1] simultaneously (In case of only one job, choose it directly). Then go to Step 6. Step 4. Set m = q  1. Compute fm(J[k]). Step 4.1. If fm(J[k]) = 0, set m = m  1. If m P 1, restart Step 4. Otherwise, go to Step 5. Step 4.2. If fm(J[k]) P 1, perform the same process as Step 3.2. Step 5. Set m = |A|  1. Compute gm(J[k]). Step 5.1. If fm(J[k]) = 0, set m = m  1. If m P 1, restart Step 5. Otherwise, go to Step 1. Step 5.2. If gm(J[k]) P 1, perform the same process as Step 3.2. Step 6. Delete J[k+1] from U. If k = n  2, assign the last job to J[n] and stop. Otherwise, set k = k + 1 and go to Step 2. Step 7. Select the schedule with the minimal total setup time as the final solution. Now we briefly explain the above steps. We first determine q in order to calculate the sum of q attribute setup times. According to Theorem 1, we compute the adjacent indices of all jobs and then assign the job with minimal AI(Ji) to the first position. We also initialize the iteration number k in this step. In Step 2, we set the initial number of attributes as |A|  1, this is because there can be at most the same |A|  1 levels of attribute between two adjacent jobs. Therefore, according to Theorem 2, any attribute cannot have only one or n levels in an instance. In Step 3, we compute the flexibility index fm(J[k]) of the current job. If f|A|1(J[k]) = 0, it implies that no job will incur only one attribute setup time (excluding w1) by assigning to the next position. In Step 3.1, if f|A|1(J[k]) = f|A|2(J[k]) =    = fq(J[k]) = 0, there is no job with q or more levels of attributes same as J[k]. Thus, we cannot assign any job to the next position according to Theorems 3 and 4. In Step 3.2, if fm(J[k]) P 1, we need to compute AI(Ji) of the considered jobs and assign the two jobs with the smallest and the second smallest AI(Ji) simultaneously to the next position according to Theorems 4 and 5. We can assign the considered job directly if fm(J[k]) = 1. In Step 4.1, that fq1(J[k]) = fq2(J[k]) =    = f1(J[k]) = 0 implies there are no jobs with the same level of A1 as J[k]. In Step 4.2, when fm(J[k]) P 1, we have to compute AI(Ji) of the jobs with L1(Ji) same as J[k]. Because no jobs satisfy Theorem 4, we assign the two jobs with the smallest and the second smallest AI(Ji) to J[k+1]. In Step 5.1, that g|A|1(J[k]) = g|A|2(J[k]) = ... = g1(J[k]) = 0 implies there are no jobs with any same level of attributes as J[k]. In Step 5.2, that gm(J[k]) P 1 implies there is no job with L1(Ji) same as J[k]. Thus, if a job has more levels of attributes same as J[k], it is preferable to be assigned to the next position. In the LAIF heuristic, the job with the smallest AI(Ji) is not always the best choice. So we consider assigning the two jobs with the smallest and the second smallest AI(Ji) simultaneously to increase the opportunity of improving the solution. In Step 6, we delete the assigned job and return to Step 2 if there are still remaining jobs to be assigned, and then check whether the specified number of iterations has been met. In Step 7, the schedule with minimal total setup time is selected as the final solution. 5.4. Example 3 Referring to the data in the case plant (see Table 2), the longest attribute setup time is marking (60 min). The condition in

C.-H. Lee et al. / Computers & Industrial Engineering 63 (2012) 494–502

Theorem 5 is satisfied since it is equal to the sum of the remaining attribute setup times. Applying the LAIF heuristic yields the following steps: Step 1. q = 3. Set k = 1, U = {J1, J2, . . . , J13}. Compute AI(Ji) as follows:

AI(J1) = 640 AI(J5) = 535 AI(J9) = 280 AI(J13) = 285

AI(J2) = 280 AI(J6) = 305 AI(J10) = 525

AI(J3) = 480 AI(J7) = 260 AI(J11) = 510

AI(J4) = 605 AI(J8) = 655 AI(J12) = 670

J[1] = J7 since J7 has the smallest adjacent index. Delete J7 from U. Step 3.2. f4(J[1] = J7) = 1. J[2] = J6 since it has four levels of attributes same as J7. Step 6. Delete J6 from U. k = 1 < 13  2 = 11; k = k + 1 = 2. Step 4.2. f2(J[2] = J6) = 1. J[3] = J13 since it is the only job with the same two levels of A1 as J6. Step 6. Delete J13 from U. k = 2 < 11; k = k + 1 = 3. Step 5.2. g2(J[3] = J13) = 2.Compute AI(Ji) and obtain AI(J11) = 480 and AI(J10) = 495. J[4] = J10 and J11. Step 6. Delete J10 from U; k = 3 < 11; k = k + 1 = 4. Delete J11 from U; k = 3 < 11; k = k + 1 = 4. Step 3.2. f4(J[4] = J10) = 1; J[5] = J11. f4(J[4] = J11) = 1; J[5] = J10. Step 6. Delete J11 from U; k = 4 < 11; k = k + 1 = 5. Delete J10 from U; k = 4 < 11; k = k + 1 = 5. Step 4.2. For J11, f2(J[5] = J11) = 1. Compute AI(Ji) of the jobs with the same L1(J11) as follows: AI(J1) = 455 AI(J5) = 355

AI(J3) = 330 AI(J8) = 500

AI(J4) = 470 AI(J12) = 485

The two smallest AI(J3) = 330 and AI(J5) = 355. J[6] = J3 and J5. For J10, f2(J[5] = J10) = 2. Compute AI(Ji) of the jobs with the same L1(J10) as follows: AI(J1) = 455 AI(J5) = 355

AI(J3) = 330 AI(J8) = 500

AI(J4) = 470 AI(J12) = 485

The two smallest AI(J3) = 330 and AI(J5) = 355. J[6] = J3 and J5. Step 6. Delete J3 from U; k = 5 < 11; k = k + 1 = 6. Delete J5 from U; k = 5 < 11; k = k + 1 = 6. Continuing the procedure, we obtain the final schedule (J7, J6, J13, J11, J10, J3, J5, J1, J12, J8, J4, J9, J2) with total setup time S = 485 min, which is optimal verified by a dynamic programming approach. Now we compare the LAIF heuristic with the current scheduling method of the studied PVC sheet plant. Recall that in Example 1 the current scheduling method generates a schedule (J3, J10, J11, J5, J12, J1, J4, J8, J13, J7, J6, J2, J9) with the total setup time S = 580 min. Therefore, the solution (S = 485) derived by the LAIF heuristic is significantly better than the solution of the current scheduling method used in the PVC sheet plant. The percentage improvement is about 16.38%. 6. Computational results The effectiveness of the proposed LAIF heuristic is evaluated by a comparison with a classical dynamic programming approach (Held & Karp, 1962). Due to the memory limitation in the computer, the dynamic programming approach can solve the problem to optimality with up to n = 20. To demonstrate the performance of LAIF heuristic, it is also compared with the current method of the case plant, a tabu search heuristic, and Christofides’ heuristic (Christofides, 1976), a classical well-known constructive heuristic. The Christofides’ heuristic is briefly introduced as follows:

499

Step 1. Find a minimal spanning tree T. Step 2. Identify all the odd degree nodes in T. Solve a minimum cost perfect matching on the odd degree nodes using the original matrix of setup times. Add the branches from the matching solution to the branches already in T, obtaining an Euler cycle. Step 3. Remove polygons over the nodes with degree greater than 2 and transform the Euler cycle into a Hamiltonian cycle. Step 4. Delete the longest arc (setup time) from the Hamiltonian cycle to obtain a simple path by bypassing all visited nodes as a feasible solution. All the algorithms were coded in C++ except that the dynamic programming approach was coded in JAVA, and they were implemented on an Intel Core 2 CPU (1.86 GHz) with 1.99 GB RAM. The considered problem can be solved optimally by dynamic programming approach, but large-size problems cannot be solved practically due to the memory limitation. Therefore, three sets of experiments were conducted: The first experiment was to compare the three algorithms (current method, Christofides’, and LAIF) with the dynamic programming approach for small-size problems. The second one was to compare the current method and Christofides’ heuristic with LAIF for large-size problems. The third experiment was to compare LAIF with a tabu search, a general purpose TSP heuristic. In the real-life production system with multi-attribute setup times, it was quite common that one of the attributes is particularly important and it has a much longer setup time than others. For example, the PVC sheet industry in this paper was a typical case. Therefore, we studied three different situations of P attribute setup times: (i) no restriction, (ii) w1 P jAj a¼2 wa , and PjAj1 (iii) w1 P 2 a¼2 wa . The attribute setup times of all the test problems were generated from three discrete uniform distributions [1, 30], [1, 60], and [1, 90] which are corresponding to situation (i), (ii), and (iii) respectively. The number of levels was randomly generated from a discrete uniform distribution [2, 5]. For each combination, 20 replications were run to obtain an average value by the current method (hereafter referred to as CM in this section), the Christofides’ heuristic (CH), the dynamic programming (DP) approach, a tabu search heuristic, and the proposed LAIF heuristic. 6.1. Experiment 1: Comparison for small-size problems In this experiment, the small-size problems were generated with number of jobs n = 10, 15, 20. The percentage deviations (PD1) were calculated as:

PD1 ¼

ðsolution of CM; CH or LAIFÞ  ðsolution of DPÞ  100% solution of DP

Further, for CM and CH, we used PICM and PICH to calculate the percentage improvements of LAIF as:

PICM ¼ ðPD1 of CMÞ  ðPD1 of LAIFÞ PICH ¼ ðPD1 of CHÞ  ðPD1 of LAIFÞ A positive PICM or PICH indicated that the LAIF heuristic was better than the compared algorithms. The computational times (in seconds), percentage deviations and percentage improvements were summarized in Table 4. It can be observed from Table 4 that all PICM and PICH values are positive, which implies that LAIF is more effective than CM and CH. The averages of PICM are calculated from 14.40 to 24.38 for the three situations, and from 4.13 to 6.49 for PICH. The percentage deviations PD1 of CM and CH increase significantly when the number of jobs increases for all the test problems. For LAIF, the averages of PD1 are stable and they are no greater than 3.87 for all the situations. Also, we notice that PD1 of LAIF in situation (i) is larger than those in situations (ii) and (iii). This is mainly because the struc-

500

C.-H. Lee et al. / Computers & Industrial Engineering 63 (2012) 494–502

Table 4 Comparative results for small-size problems. n

CM Time

CH PD1

Improvement

Time

PD1

Time

PICM

PICH

0.00 0.00 0.01

4.35 3.36 3.90

0.02 1.21 78.01

20.14 24.46 28.55

2.47 4.38 6.07

Avg

0.00

3.87

26.41

24.38

4.31

PjAj (ii) Attribute setup times: w1 P a¼2 wa 10 0.00 16.37 0.01 6.35 0.00 15 0.00 20.28 0.01 6.21 0.00 20 0.00 27.72 0.02 7.12 0.01

1.99 2.53 2.76

0.02 1.25 78.42

14.38 17.75 24.96

4.36 3.68 4.36

Avg

0.00

2.43

26.56

19.03

4.13

PjAj1 P 2 a¼2 wa 8.04 0.00 8.72 0.00 10.67 0.00

2.76 2.58 2.63

0.02 1.24 78.28

10.99 13.46 18.75

5.28 6.14 8.04

2.66

26.51

14.40

6.49

0.00

28.25

21.46

0.01

0.01

(iii) Attribute setup times: w1 10 0.00 13.72 0.01 15 0.00 16.04 0.01 20 0.00 21.38 0.03 Avg

0.00

17.05

0.02

PD1

DP

(i) Attribute setup times: No restriction 10 0.00 24.49 0.01 6.82 15 0.00 27.82 0.01 7.74 20 0.00 32.45 0.02 9.97 0.00

Time

LAIF

8.18

6.56

9.14

0.00

tures of attribute setup times of the test problems, in situations (ii) and (iii), are more likely to satisfy the conditions specified in Theorems 4 and 5. This result shows that LAIF can produce better solutions for the case where a problem has an attribute setup time much larger than the remaining attribute setup times. LAIF has better performance in situations (ii) and (iii), and hence the percentage deviations between CH and LAIF will be enlarged. With respect to the computational time, DP’s increases significantly as the number of jobs increases. The average computational times of LAIF are similar to those of CM and CH. They take almost no time for all the small-size problems. 6.2. Experiment 2: Comparison for large-size problems In this experiment, the test problem sizes were generated with number of jobs n = 40, 60, 80, 100. The percentage deviations (PD2) were calculated as:

PD2 ¼

ðsolution of CM or CHÞ  ðsolution of LAIFÞ  100% solution of LAIF

The computational times (in seconds) and percentage deviations were summarized in Table 5. It can be observed from Table 5 that the LAIF heuristic is more effective than CM and CH since all the values of PD2 are positive. The LAIF heuristic makes significant improvements in percentage deviations for all the large-size test problems. Regarding the CM, the percentage deviations increase significantly as the number of jobs increases. To compare LAIF with CM, the improvements are almost similar for the three situations (about 30–38%). But, to compare LAIF with CH, the improvements in situations (ii) and (iii) are significantly larger than those in situations (i). This is mainly because the structures of attribute setup times of the test problems are more likely to satisfy the conditions specified in the proposed theorems. Moreover, it is obvious that LAIF can obtain more significant improvements when the problem size is getting larger. The computational time of LAIF is stably and slightly increased as the number of jobs increases. Although CM and CH take almost no time, the LAIF obtains great improvements for solving large-size problems with acceptable computational time. For problems with 100 jobs, LAIF takes less than 15 s; and for all of the large-size problems, it takes about 8 s on average. Therefore, the LAIF heuristic is appropriate to be applied for large problems.

6.3. Experiment 3: Comparison with tabu search for large-size problems To further investigate the performance of the proposed LAIF heuristic, it is compared with a tabu search (TS), a general purpose TSP heuristic. TS, proposed by Glover (1989), is one of the most popular meta-heuristics for a large number of combinational problems. It can be applied in various problems such as TSP, vehicle routing problem and scheduling problem. The idea of TS is to chase a local optimum by allowing a non-improving move. In general, TS contains six elements: initial solution, stopping criterion, neighborhood structure, aspiration criteria, tabu size and long-term search strategy. TS starts from an initial solution until stopping criterion is fulfilled. The neighborhood structure is defined as a space of all feasible solutions. The aspiration criterion is used to revoke a tabu list when there is an attractive tabu move. Tabu size is utilized to escape from local optimum and cycling search. The long-term search strategy is employed as a searching strategy in the solution space.

Table 5 Comparative results for large-size problems. n

CM Time

CH PD2

Time

TS PD2

Time

LAIF PD3

Min. PD3

Max. PD3

Time

(i) Attribute setup times: No restriction 40 0.00 37.35 60 0.00 38.39 80 0.00 38.92 100 0.00 40.66

0.03 0.04 0.08 0.13

1.63 5.03 7.32 1.19

8.21 18.01 32.97 51.66

0.10 5.04 6.03 7.67

-2.07 2.40 3.79 5.36

1.93 7.27 8.24 9.67

2.54 7.11 9.63 13.36

Avg

0.07

3.79

27.71

4.71

2.37

6.78

8.16

PjAj (ii) Attribute setup times: w1 P a¼2 wa 40 0.00 32.45 60 0.00 34.11 80 0.00 38.74 100 0.00 44.32

0.03 0.05 0.06 0.11

31.79 7.28 21.71 19.75

9.23 19.69 36.54 57.79

3.14 7.97 9.26 10.90

-0.60 1.70 3.81 6.17

7.68 13.12 13.76 14.80

2.58 6.67 8.95 13.68

Avg

0.00

0.00

30.08

0.06

20.13

30.81

7.82

2.77

12.34

7.97

PjAj1 (iii) Attribute setup times: w1 P 2 a¼2 wa 40 0.00 24.93 60 0.00 30.32 80 0.00 36.87 100 0.00 45.23

0.03 0.04 0.07 0.10

47.25 40.85 33.89 41.68

8.88 20.22 36.50 59.51

12.83 15.98 23.67 33.71

1.21 3.64 13.08 25.41

26.64 26.69 32.85 41.73

2.63 7.35 9.08 14.35

Avg

0.06

40.92

31.28

21.55

10.84

31.98

8.35

0.00

37.41

34.34

C.-H. Lee et al. / Computers & Industrial Engineering 63 (2012) 494–502

Here we refer the TS of Knox (1994) which is developed for solving the symmetric traveling salesman problem. In this TS, the initial solution is generated arbitrarily, the neighborhood is the set of all the sequences obtained by the current sequence by exchanging the position of two jobs in all possible ways, the stopping criterion is to use a fixed number of iterations (10,000) or the best solution is not improved within 1000 iterations, the aspiration criterion is to accept a solution better than the incumbent best solution even if the solution is generated by a tabu move, the tabu size is 3 n, and the pair interchange is used to improve the solution. The structure of the TS is described as follows: Step 1. Generate an initial solution arbitrarily. Step 2. Obtain neighborhood sequences from the current sequence by exchanging the position of two jobs in all possible ways. Step 2.1. Consider all the neighborhood sequences. If the tabu move exists in the tabu list, then the sequence is not considered as a candidate sequence unless it is better than the incumbent best solution. Otherwise, the neighborhood sequence is considered as a candidate sequence. Step 2.2. Let the sequence with the minimum solution as the current sequence from all the candidate sequences. Step 2.3. Add the tabu move of the current sequence in the tabu list. Step 2.4. If the solution of the current sequence is better than the incumbent best sequence, then update the incumbent best sequence. Step 2.5. If the number of iterations exceeds the pre-set maximum number, then continue. Otherwise, go to Step 2. Step 3. Obtain the best solution from all the current sequences. 6.4. Example 4 As an illustration, we use the real case in Example 1 to demonstrate the steps of TS as follows: Step 1. Generate an initial sequence arbitrarily as (J3, J10, J11, J5, J12, J1, J4, J8, J13, J7, J6, J2, J9)withS = 580. Step 2. Iteration 1: Candidates of tabu move are (1, 2), (1, 3), (1, 4), . . ., (12, 13). Choose the best tabu move (3, 11) and obtain a neighborhood sequence (J11, J10, J3, J5, J12, J1, J4, J8, J13, J7, J6, J2, J9) with S = 565. Add the tabu move (3, 11) in the tabu list {(3, 11)}. Since 565 < 580, update the incumbent sequence (S = 580) with the current sequence (S = 565).Iteration 2: Choose the best tabu move (1, 8) and obtain a neighborhood sequence (J11, J10, J31, J5, J12, J8, J4, J1, J13, J7, J6, J2, J9) with S = 550. Add the tabu move (1, 8) in the tabu list {(3, 11), (1, 8)}. Since 550 < 565, update the incumbent sequence with the current sequence (S = 550). Repeat Step 2 until the maximum number of iterations is reached. Step 3. Choose the sequence with the minimum solution (S = 485) as the final solution, which is the same as the solution derived by the LAIF heuristic. In this experiment, the test problem sizes were also generated with number of jobs n = 40, 60, 80, 100. The percentage deviations (PD3) were calculated as:

PD3 ¼

ðsolution of TSÞ  ðsolution of LAIFÞ  100% solution of LAIF

The computational times and percentage deviations are also shown in Table 5. It can be observed that the LAIF heuristic apparently performs better than the TS since all the values of PD3 are positive. The percentage deviations increase significantly as the number of jobs increases for all the test problems. To further investigate the mini-

501

mum and maximum of PD3 (Min. PD3 and Max. PD3), it is found that LAIF is not always better than TS for n = 40 due to the negative values of Min. PD3 in situations (i) and (ii). However, LAIF outperforms TS for all the situations when n P 60. The averages of PD3 are calculated from 4.71 to 21.55 for the three situations. Especially, the values of PD3 in situation (iii) are significantly larger than those in situations (i) and (ii). This is also mainly because the structures of attribute setup times of the test problems are more likely to satisfy the condition specified in Theorem 4. Moreover, the computational times of LAIF are always less than those of TS. For problems with 100 jobs, TS takes about 60 s, compared to about 14 s by LAIF; and for all of the large-size problems, TS takes about 30 s on average, compared to about 8 s by LAIF. To sum up, the LAIF heuristic is more effective and efficient than TS. In summary, the LAIF heuristic can make a significant improvement over the current scheduling method with a reasonable computational time. The main reason is that the current method used by the PVC sheet plant focuses only on the attribute setup times but ignores the importance of frequency (flexibility). The current method is basically an intuitive procedure, and there is a lack of a well-defined sequencing rule to be used to systematically improve the schedule. The scheduler cannot prove whether the method is efficient or not and has no idea to improve it. The LAIF heuristic considers both setup times and flexibility simultaneously, and establishes the constructive dispatching steps according to the developed theorems.

7. Conclusions and future research In this paper we have addressed a scheduling problem with multi-attribute setup times originated from the manufacturing plant of a company producing PVC sheets. The objective is to generate a schedule of the jobs on the single machine so as to minimize the total setup times of the system. In many continuous process industries, scheduling with multi-attribute setup times becomes a common practice. No previous work has dealt with the problem and the current scheduling method of the plant cannot generate a satisfactory solution. Therefore, there is a need to develop a heuristic to provide a near-optimal solution for the problem. The main contributions of this paper are to model the problem with multi-attribute setup times and to develop a constructive heuristic based on several developed theorems. The proposed heuristic has a conceptually easy design and can be used to solve large-size problems in a reasonable computational time. The computational results show that the heuristic is quite efficient and effective in finding good schedules than the current method with an average improvement of 22.25% for small-size problem and 33.94% for large-size problems. Furthermore, a tabu search heuristic is applied to evaluate the proposed heuristic and the results show that the heuristic performs better than the tabu search heuristic in terms of both solution quality and computational times for solving large-size problems. From an application viewpoint, the main advantage of LAIF is to preserve the characteristic of multi-attribute in scheduling. Therefore, the scheduler can easily pay more attention to the attributes with longer attribute setup times. The management of the case plant is currently developing an aggregate production management system, which includes order treatment, scheduling, inventory control, forecasting, and capacity planning modules. As the management is satisfied with the result of the heuristic, it will be used in the scheduling module and implemented in the near future. Further research may be conducted to consider some other factors in the practical production system, such as due date. It is also worthwhile to develop a heuristic for the parallel machine problem which also exists in the case plant.

502

C.-H. Lee et al. / Computers & Industrial Engineering 63 (2012) 494–502

Acknowledgements We are grateful to our colleagues in the case PVC sheet plant for their great assistance and full cooperation in making this research possible. We are also heartily thankful to the anonymous referees for their valuable suggestions and comments. References Abreu, C. F., May, J. H., Spangler, W. E., & Vargas, L. G. (2008). Conflict identification and reconciliation in a collaborative manufacturing scheduling task. International Journal of Information Technology and Decision Making, 7, 147–174. Agnetis, A., Detti, P., Meloni, C., & Pacciarelli, D. (2001). Set-up coordination between two stages of a supply chain. Annals of Operation Research, 107, 15–32. Ausiello, G., Escoffier, B., Monnot, J., & Paschos, V. (2009). Reoptimization of minimum and maximum traveling salesman’s tours. Journal of Discrete Algorithms, 7, 453–463. Baker, K. R. (1974). Introduction to sequencing and scheduling. NY: John Wiley. Chen, W. J. (2009). Scheduling with dependent setups and maintenance in a textile company. Computers & Industrial Engineering, 57, 867–873. Choobineh, F. F., Mohebbi, E., & Khoo, H. (2006). A multi-objective tabu search for a single-machine scheduling problem with sequence-dependent setup times. European Journal of Operational Research, 175, 318–337. Christofides, N. (1976). Worst-case analysis of a new heuristic for the travelling salesman problem. Management sciences research report no. 388. Carnegie-Mellon University. Eilon, S., Watson-Gandy, C., & Christofides, N. (1971). Distribution management: Mathematical modeling and practical analysis. London: Griffin. Glover, F. (1989). Tabu search – Part I. ORSA Journal on Computing, 1, 190–206.

Gravel, M., Price, W. L., & Gagné, C. (2002). Scheduling continuous casting of aluminum using a multiple objective ant colony optimization metaheuristic. European Journal of Operational Research, 143, 218–229. Gupta, J. N. D. (1984). Optimal schedules for single facility with classes. Computers & Operations Research, 11, 409–413. Held, M., & Karp, R. M. (1962). A dynamic programming approach to sequencing problems. Journal of the Society for Industrial and Applied Mathematics, 10, 196–210. Karp, R. (1977). Probabilistic analysis of partitioning algorithms for the traveling salesman problem in the plane. Mathematics of Operations Research, 2, 209–224. Knox, J. (1994). Tabu search performance on the symmetric traveling salesman problem. Computers & Operations Research, 21, 867–876. Liao, C. J., & Liao, L. M. (1997). Single facility scheduling with major and minor setups. Computers & Operations Research, 24, 169–178. Liao, C. J., Shyu, C. C., & Tseng, C. T. (2009). A least flexibility first heuristic to coordinate setups in a two- or three-stage supply chain. International Journal of Production Economics, 117, 127–135. Liao, C. J., & Yu, W. C. (1996). Sequencing heuristics for dependent setups in a continuous process industry. Omega, 24, 649–659. Mansouri, S. A. (2005). Coordination of set-ups between two stages of a supply chain using multi-objective genetic algorithms. International Journal of Production Research, 43, 3163–3180. Mansouri, S. A. (2006). A simulated annealing approach to a bi-criteria sequencing problem in a two-stage supply chain. Computers & Industrial Engineering, 50, 105–119. Rosenkrantz, D., Stearns, R., & Lewis, P. (1974). Approximate algorithms for the traveling salesperson problem. Proceedings of the 15th annual IEEE symposium on switching and automata theory (pp. 33–42). Tang, C. S. (1990). Scheduling batches on parallel machines with major and minor set-ups. European Journal of Operational Research, 46, 28–37.