Generating subproblems in branch and bound algorithms for parallel machines scheduling problem

Generating subproblems in branch and bound algorithms for parallel machines scheduling problem

Computers & Industrial Engineering 57 (2009) 1150–1153 Contents lists available at ScienceDirect Computers & Industrial Engineering journal homepage...

483KB Sizes 0 Downloads 35 Views

Computers & Industrial Engineering 57 (2009) 1150–1153

Contents lists available at ScienceDirect

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

Short Communication

Generating subproblems in branch and bound algorithms for parallel machines scheduling problem q Sang-Oh Shim Department of Business Administration, Hanbat National University, Daejeon, South Korea

a r t i c l e

i n f o

Article history: Received 30 July 2008 Received in revised form 2 February 2009 Accepted 27 February 2009 Available online 9 March 2009 Keywords: Scheduling Branch and bound algorithm Parallel machines Branching

a b s t r a c t A branch and bound algorithm (B&B) has been widely used in various discrete and combinatorial optimization fields. To obtain optimal solutions as soon as possible for scheduling problems, three tools, which are branching, bounding and dominance rules, have been developed in the B&B algorithm. One of these tools, a branching is a method for generating subproblems and directly determines size of solution to be searched in the B&B algorithm. Therefore, it is very important to devise effective branching scheme for the problem. In this note, a survey of branching schemes is performed for parallel machines scheduling (PMS) problems with n independent jobs and m machines and new branching schemes that can be used for identical and unrelated PMS problems, respectively, are suggested. The suggested branching methods show that numbers of generated subproblems are much smaller than that of other methods developed earlier and therefore, it is expected that they help to reduce a lot of CPU time required to obtain optimal solutions in the B&B algorithm. Ó 2009 Elsevier Ltd. All rights reserved.

1. Introduction This note focuses on a method for generating subproblems during the B&B algorithm for the problem of scheduling n jobs on m parallel machines. In conventional PMS problems, each job can be processed on only one machine during processing and no preemption is allowed. The objective of the PMS problem is to find optimal (or near optimal) schedules which satisfy the customers’ various demands such as maximizing throughput and minimizing total tardiness of jobs (Alidaee & Rosa, 1997; Barnes & Brennan, 1977; Bruno, Coffman, & Sethi, 1974; Cheng & Chen, 1994; Dogramaci, & Surkis, 1979; Gupta, Ruiz-Torres, & Webster, 2003; Ho & Chang, 1991; Horn, 1973). Generally, parallel machines can be classified into three types depending on the processing time of a job on a machine (Liaw, Lin, Cheng, & Chen, 2003; Pinedo, 1995; Shim & Kim, 2007a). If processing times of a job are the same on different machines, they are called identical and denoted as Pm. On the other hand, the processing times of jobs on a machine are proportional to a ratio given for the machine on the uniform parallel machines (Qm). If processing times of a job on different machines are arbitrary, the machines are called unrelated (Rm). In this note, we consider scheduling problems on the identical and unrelated parallel machines.

q

This manuscript was processed by Area Editor Maged M. Dessouky. E-mail address: [email protected]

0360-8352/$ - see front matter Ó 2009 Elsevier Ltd. All rights reserved. doi:10.1016/j.cie.2009.02.013

As shown in several studies (Du & Leung, 1990; Garey & Johnson, 1979; Koulamas, 1994; Lenstra, Rinnooy Kan, & Brucker, 1977), many PMS problems are known to be NP-hard. Therefore, to obtain optimal solutions, B&B algorithm or dynamic programming has been usually developed. Azizoglu and Kirca (1998), Shim and Kim (2007b) and Yalaoui and Chu (2002) find dominance properties and effective bounds and present B&B algorithms using them in identical PMS problems with the objective of minimizing total tardiness. On the other hand, for unrelated parallel machines, Azizoglu and Kirca (1999) study the B&B algorithm to minimize total weighted flow time. Also, Liaw et al. (2003) and Shim and Kim (2007a) suggest B&B algorithms using newly suggested dominance rules and bounding schemes for minimizing total tardiness of jobs. Since introduced by Land and Doig (1960) first, B&B algorithm has been widely used for solving discrete and combinatorial optimization problems. Since B&B algorithm is based on the total enumeration method which evaluates every feasible solution to the problem and select the best, one may be necessary to fathom unpromising nodes (and not to generate unpromising nodes) effectively for finding optimal solutions in a reasonable time. Three tools, which are branching, bounding and dominance rules, have been usually used in the scheduling problems to reduce the CPU time required to obtain optimal solution in the B&B algorithm. One of the tools, branching scheme is the method for generating subproblems (or candidate problems) and directly determines size of solution domain (i.e. the set of subproblems) which would be searched during the algorithm if no node is pruned by dominance rules and bounds during the algorithm.

1151

S.-O. Shim / Computers & Industrial Engineering 57 (2009) 1150–1153

Since there may be several branching schemes even for the same problem, sizes of the solution domain might be different. Some branching schemes might generate redundant and meaningless feasible subproblems. In other words, even though better dominance rules and bounding schemes are developed and used in the B&B algorithm, it may take too much time to check dominance rules and compute bounds repeatedly due to bad branching schemes. Therefore, proposing a good branching scheme/method is very essential as well as suggesting better dominance rules and bounds (lower and upper). In this paper, after some branching schemes for PMS problems are introduced, we suggest two new branching schemes that can help to reduce much time required to obtain optimal solutions in the B&B algorithm for the identical and unrelated PMS problems. In this note, we suggest two effective branching schemes for identical and unrelated PMS problems, respectively. The remainder of this paper is organized as follows. In the next section, some branching schemes developed earlier are introduced with numerical examples. In the succeeding section, we present new branching methods, and the paper is concluded with a short summary and discussions on possible extensions. 2. Survey of branching schemes Consider a branching scheme of the problem with n independent jobs and m parallel machines, where n and m are the number of jobs and the number of machines, respectively. Each node in the B&B tree represents a partial schedule, and a node in the ith level of the tree corresponds to a partial schedule in which i jobs are scheduled at the front part of a complete schedule. Then, m(n  i) child nodes are generated from each parent node by assigning one of the unscheduled jobs to each of the m machines. Without being fathomed by any dominance properties and any bounds, the total number of complete schedules, which is represented by the last generated nodes in the last level, i.e. level n, to be generated is mnn!. Here, let us denote this branching scheme as a full enumeration branching. Fig. 1 shows an example of a B&B tree for a problem with two machines and two jobs by using this method. Each node represents a pair of indexes of a job to be scheduled and a machine to be assigned at the front part of a complete schedule, respectively (a, b in the node implies that job a is scheduled on machine b in the front part of the complete schedule). This method seems to be very natural; however, it can be seen that this B&B tree includes redundant schedules, as can be seen in Fig. 1. For example, nodes N7 and N12 (in which job 1 and 2 are assigned to the machine 1 and 2, respectively) represent the same schedules and nodes N8 and N11 also do. Consequently, if this method is used in the B&B algorithm for PMS problems, it may take much time to find optimal solutions since redundant schedules should be checked repeatedly.

2.1. Branching method for Rm||Rf(Ci) To avoid generation of redundant nodes, Shim and Kim (2007a) develop a new branching scheme for the unrelated parallel machines for minimizing total regular costs, i.e. a total regular cost is a function of job completion time and increases only if at least one of the job completion times in the schedule increases (Baker, 1974). From the three fields notation (Pinedo, 1995), this problem can be referred to as Rm||Rf(Ci), where f(Ci) is a non-decreasing function of Ci which is a completion time of job i. In this scheme, a new job associated with a certain node is assigned to a machine whose index is not less than that of the machine associated with the parent node. With n independent jobs and m unrelated  PMS problem, the number of complete schedules nþm1 n! and let us call this scheme an Rm branching. is n Fig. 2 shows the B&B tree obtained by this scheme with the same problem instance of Fig. 1. 2.2. Branching method for Rm||RwiFi Azizoglu and Kirca (1999) suggest the branching scheme for the unrelated parallel machines with the objective of minimizing total weighted flow time, i.e. Rm||RwiFi. Based on the optimal solution property (suggested by Smith (1956)) in which jobs on each machine should be ordered by the weighted shortest processing time (WSPT) rule, for each parent node, m child nodes are generated and each child node k represents the first unscheduled jobs ordered by WSPT rule on a machine k. A node at the ith level corresponds to a partial schedule with i jobs scheduled. This method generates only mn complete schedules and in this study, we call this branching scheme an Rm WSPT branching. Fig. 3 shows a branching tree with two machines and three jobs, whose weights are the same and whose processing times on each machine are 1, 2 and 3 on machine 1 and 3, 2 and 1 on machine 2, respectively. Although this method has a strong point in which only dominant schedules are generated for the considered problem, it may generate redundant schedules. For example, schedules represented by nodes N9, N10 and N12 are the same ones (Also, nodes N11, N13 and N14 are the same). 2.3. Branching method for Pm||RTi For the identical parallel-machine scheduling problems with the objective of minimizing total regular costs, i.e. Pm||Rf(Ci), an active schedule, in which no job can be started earlier without delaying any other job, is dominant in the problem (Baker, 1974). Therefore, a dominant schedule with a permutation of jobs may be obtained. Thus, from a permutation of jobs, one can construct a schedule by assigning each job to a machine with the earliest start time while ties are broken by choosing a machine with the lowest index. Azizoglu and Kirca (1998), Shim and Kim (2007b) and Yalaoui and Chu (2002) use this branching scheme for solving their prob-

Root Root

1, 1

1, 2

2, 1

2, 2 1, 1

2, 1

2, 2

2, 1

2, 2

1, 1

1, 2

1, 1

2, 1

2, 2

2, 2 2, 1

Fig. 1. A B&B tree obtained by the full enumeration branching.

1, 2

2, 2

2, 2

1, 1

1, 2

Fig. 2. A B&B tree obtained by the Rm branching.

1, 2

1152

S.-O. Shim / Computers & Industrial Engineering 57 (2009) 1150–1153

Root

1, 1

3, 2

2, 1

3, 1

3, 2

3, 2

2, 1

1, 1

2, 2

2, 1

2, 2

2, 2

1, 1

1, 2

that the index of a job associated with the certain node should be greater than that of previous square-shaped nodes in a branch and the number of generated square-shaped node in a path should be equal   to the number of machines. This scheme generates n  1 n! complete schedules. Here, let us call this branching m  1 m! scheme as Pm non-redundant branching. For the same problem instance of Fig. 4, a branching tree when using this method is shown in Fig. 5. It can be seen that redundant schedules are not generated while Pm dominant branching may generate redundant ones. However, non-dominant schedules may be generated by this method. For example, it could be found easily that schedules represented by node N10, N11 and N14 are not dominant for minimizing total regular costs when jobs 1, 2 and 3 have 1, 2 and 3 as processing times, respectively.

Fig. 3. A B&B tree obtained by the Rm WSPT branching.

lems with n independent jobs and m identical parallel machines to minimize total tardiness of jobs, i.e. Pm||RTi. This method generates n! complete schedules in the B&B algorithm. Here, this branching scheme is called a Pm dominant branching. Fig. 4 shows a branching tree in case of two machines and three jobs in which their processing times are 1, 2 and 3 on each machine, respectively. Although these schedules are dominant, this scheme may generate redundant schedules. That is, schedules by nodes N11 and N13 seem to be the different schedules. However, these schedules can be considered as the same since machines are homogeneous (identical). Also, nodes N12 and N15 mean the same schedules and nodes N14 and N16 are the same ones. 2.4. Branching method for Pm||Rf(Ci) Using a characteristic in which identical parallel machines are homogeneous, Brah and Hunsuchker (1991) suggest a branching scheme for their B&B algorithm for the scheduling problems of hybrid flowshop with identical parallel processors. Their branching method might be good for the identical PMS problem with n jobs and m machines for minimizing total regular costs, i.e. Pm||Rf(Ci). Each node represents index of the scheduled job, and a squareshaped (h) node implies that the associated job is assigned to the new machine, which now becomes a current machine. That is, the associated job in the square-shaped node is the first scheduled job on each machine, and the number of square-shaped nodes to be generated in each branch should be equivalent to the number of machines. Additionally, a circle-shaped (s) node means that a job is scheduled on a current machine. In level 1, only squareshaped nodes with the job index 1 through n  m + 1 are generated, and from level 2 to level n, square-shaped and circle-shaped nodes are generated. For generating square-shaped nodes, notice

3. Suggested branching schemes In this chapter, we suggest two branching schemes; one can be used for the problem with the objective of minimizing total weighted flow time of jobs in unrelated parallel machines, the other can be used for the objective of minimizing total regular costs in identical parallel machines. 3.1. Minimizing weighted flow time of jobs in unrelated parallel machines For the B&B algorithm of the problem of unrelated PMS to minimize total weighted flow time of jobs, we develop new branching scheme by combining the result of Azizoglu and Kirca (1999) and Shim and Kim (2007a). It is the same for using the same concept of the Rm WSPT branching except that only child nodes with the index of machine not less than that of the parent node should be generated (Note that this idea is motivated by Rm branching). By using this method, we can search only dominant schedules as well as not generating redundant schedules for the considered problem.  Also, the number of total complete schedules to be gen nþm1 erated is which is a significant reduction compared   n nþm1 n n! (Shim & Kim to m (Azizoglu & Kirca 1999) and n 2007a). Let us use this suggested scheme as a new Rm WSPT branching. Fig. 6 shows a reduced B&B tree with the same problem of the Fig. 3. It can be seen that the suggested method generates only dominant and unique schedules. 3.2. Minimizing total regular costs in identical parallel machines In a similar way as described above, using the Pm dominant (Azizoglu & Kirca, 1998; Shim & Kim, 2007b; Yalaoui & Chu, 2002) and

Root

1, 1

Root

2, 1

3, 1

1

2

2, 2

3, 2

1, 2

3, 2

1, 2

2, 2

2

3

2

3

3

1

3, 1

2, 1

3, 2

1, 1

2, 2

1, 2

3

2

3

2

1

3

Fig. 4. A B&B tree obtained by the Pm dominant branching.

Fig. 5. A B&B tree obtained by the Pm non-redundant branching.

S.-O. Shim / Computers & Industrial Engineering 57 (2009) 1150–1153

Root

1, 1

2, 1

3, 1

3, 2

3, 2

3, 2

2, 2

2, 2

1, 2

Fig. 6. A B&B tree obtained by new Rm WSPT branching.

Root

1, 1

2, 2

3, 1

3, 2

2, 1

1153

of jobs in unrelated parallel machines and the other can be used in identical PMS problems to minimize total regular costs. It is shown that the numbers of generated subproblems by the suggested methods are much smaller than that of other methods which may generate non-dominant and redundant ones. It means that it is not necessary to compute bounds and check dominance rules in unpromising nodes, which are time consuming processing, and much computer memory is not required to store the checked schedules. Consequently, they can help to reduce the required time to find optimal solutions in the B&B algorithm even though bounding schemes and dominance rules are not used. For further research, one may needs to perform computational experiments with the B&B algorithm including the suggested branching methods, and also it is necessary to develop useful dominance properties and efficient bounding schemes with those branching methods. In addition, it may be required to develop a branching method for another PMS problem, such as uniform ones. Acknowledgement

2, 1

This work was supported by the Korea Research Foundation Grant funded by the Korean Government (MOEHRD). KRF-2007357-D00271.

3, 2

References

1, 1

Fig. 7. A B&B tree obtained by the new Pm branching.

the Pm non-redundant (Brah & Hunsuchker, 1991) branching methods, a new one is suggested for identical PMS problem for the objective of minimizing total regular costs. Each node represents an index of the scheduled job, and a square-shaped node implies the first job scheduled on each machine. From level 1 to level m, only square-shaped nodes are generated, and in level 1, square-shaped nodes with the job index 1 through n  m + 1 are generated. From level m + 1 to n, only circle-shaped nodes are generated by following Pm dominant branching. In other words, with a permutation of the remaining n  m jobs in level m + 1, construct a schedule by assigning each job on a machine with the smallest start time. Since this method generates only dominant and unique schedules, the number of complete schedules to be generated can be reduced to n!=m!  which  is much n  1 n! by the less than n! by the Pm dominant branching and m  1 m! Pm non-redundant branching. Let us denote this method as a new Pm branching. Fig. 7 shows a result obtained by using this method with the same problem instance of Figs. 4 and 5. Note that the index of machine to which a job is assigned might not be important since machines are homogeneous as described earlier. However, during this branching procedure, a job should be assigned to the machine with the earliest start time in circle-shaped nodes. 4. Conclusions In this note, we focus on the developing branching scheme which is a method for generating subproblems in the B&B algorithm and which is one of three tools (branching, bounding and dominance rules) for reducing CPU time to obtain optimal schedules. For PMS problems, two branching schemes, which avoid generating redundant schedules (subproblems) as well as generating only dominant schedules, are suggested. One can be used for the problem with the objective of minimizing total weighted flow time

Alidaee, B., & Rosa, D. (1997). Scheduling parallel machines to minimize total weighted and unweighted tardiness. Computers and Operations Research, 24, 775–788. Azizoglu, M., & Kirca, O. (1998). Tardiness minimization on parallel machines. International Journal of Production Economics, 55, 163–168. Azizoglu, M., & Kirca, O. (1999). Scheduling jobs on unrelated parallel machines to minimize regular total cost functions. IIE Transactions, 31, 153–159. Baker, K. R. (1974). Introduction to sequencing and scheduling. New York: Wiley. Barnes, J., & Brennan, J. J. (1977). An improved algorithm for scheduling jobs on identical machines. AIIE Transactions on Computing, 9, 25–31. Brah, S. A., & Hunsuchker, J. L. (1991). Branch and bound algorithm for the flow shop with multiple processors. European Journal of Operational Research, 51, 88–o99. Bruno, L. G., Coffman, E. G., & Sethi, R. (1974). Scheduling independent tasks to reduce mean finishing time. Communications of the ACM, 17, 382–387. Cheng, T. C. E., & Chen, Z. L. (1994). Parallel-machine scheduling problems with earliness and tardiness penalties. Journal of the Operational Research Society, 45, 685–695. Dogramaci, A., & Surkis, J. (1979). Evaluation of a heuristic for scheduling independent jobs on parallel identical processors. Management Science, 25, 1208–1216. Du, J., & Leung, J. Y. T. (1990). Minimizing total tardiness on one machine is NP-hard. Mathematics of Operations Research, 15, 483–495. Garey, M. R., & Johnson, D. S. (1979). Computers and intractability: A guide to the theory of NP-completeness. San Francisco: Freeman. Gupta, J. N. D., Ruiz-Torres, A. J., & Webster, S. (2003). Minimizing maximum tardiness and number of tardy jobs on parallel machines subject to minimum flow-time. Journal of the Operational Research Society, 54, 1263–1274. Ho, J. C., & Chang, Y. L. (1991). Heuristics for minimizing mean tardiness for m parallel machines. Naval Research Logistics, 38, 367–381. Horn, W. A. (1973). Minimizing average flow time with parallel machines. Operations Research, 21, 846–847. Koulamas, C. (1994). The total tardiness problem: Review and extensions. Operations Research, 42, 1025–1041. Land, A. H., & Doig, A. G. (1960). An automatic method for solving discrete programming problems. Econometrika, 28, 497–520. Lenstra, J. K., Rinnooy Kan, A. H. G., & Brucker, P. (1977). Complexity of machine scheduling problems. Annals of Discrete Mathematics, 1, 343–362. Liaw, C. F., Lin, Y. K., Cheng, C. Y., & Chen, M. (2003). Scheduling unrelated parallel machines to minimize total weighted tardiness. Computers and Operations Research, 30, 1777–1789. Pinedo, M. (1995). Scheduling: Theory algorithms and systems. New Jersey: Prentice Hall. Shim, S. O., & Kim, Y. D. (2007a). Minimizing total tardiness in an unrelated parallelmachine scheduling problem. Journal of the Operational Research Society, 58, 346–354. Shim, S. O., & Kim, Y. D. (2007b). Scheduling on parallel identical machines to minimize total tardiness. European Journal of Operational Research, 177, 135–146. Smith, W. E. (1956). Various optimizers for single stage production. Naval Research Logistics, 3, 59–66. Yalaoui, F., & Chu, C. (2002). Parallel machine scheduling to minimize total tardiness. International Journal of Production Economics, 76, 265–279.