Research Article  Open Access
Wei Ding, "The Problem of Scheduling Multiple Groups of Jobs on Multiple Processors at Different Speeds", Advances in Operations Research, vol. 2012, Article ID 748597, 9 pages, 2012. https://doi.org/10.1155/2012/748597
The Problem of Scheduling Multiple Groups of Jobs on Multiple Processors at Different Speeds
Abstract
We mainly study the problem of scheduling n groups of jobs on n specialpurpose processors and m generalpurpose processors at different speeds provided that the setup time of each job is less than times of its processing time. We first propose an improved LS algorithm. Then, by applying this new algorithm, we obtain two bounds for the ratio of the approximate solution to the optimal solution T* under two different conditions.
1. Introduction
It is a wellstudied problem to minimize the makespan in scheduling jobs on identical machines , where processing job immediately after needs a setup time . As it is NPhard (cf. [1]), quite a few authors have made their efforts to its approximate and heuristic algorithms, as well as the corresponding worstcase analysis.
In 1969, Graham [2] showed in his fundamental paper that the bound of this scheduling problem is as under the LS (List Scheduling) algorithm and the tight bound is under the LPT (Longest Processing Time) algorithm. In 1993, Ovacik and Uzsoy [3] proved that the bound is as , where is the processing time of the job , under the LS algorithm. In 2003, Imreh [4] studied the online and offline problems on two groups of identical processors at different speeds, presented the LG (Load Greedy) algorithm, and showed that the bound about minimizing the makespan is and the bound about minimizing the sum of finish time is , where and are the numbers of two groups of identical processors. Gairing et al. [5] proposed a simple combinatorial algorithm for the problem of scheduling jobs on processors at different speeds to minimize a cost stream and showed that it is effective and of low complexity.
Besides the above wellstudied scheduling problem, one may face the problem of scheduling multiple groups of jobs on multiple processors in real production systems, such as, the problem of processing different types of yarns on spinning machines in spinning mills. Recently, the problem of scheduling multiple groups of jobs on multiple processors at same or different speeds were studied provided that each job has no setup time. In 2006, Ding [6] studied the problem of scheduling groups of jobs on one specialpurpose processor and generalpurpose processors at same speeds under an improved LPT algorithm. In 2008, Ding [7] investigated the problem of scheduling groups of jobs on specialpurpose processors and generalpurpose processors at same speeds under an improved LPT algorithm. In 2009, Ding [8] presented an improved LS algorithm for the scheduling problem on generalpurpose processors and two specialpurpose processors. In 2010, Ding [9] studied a heuristic algorithm of the problem on multitasks with uniform processors. In the same year, Ding and Zhao [10] discussed an improved LS algorithm for the problem of scheduling multiple groups of jobs on multiple processors at the same speed provided each job has a setup time.
Recently, Ding and Zhao [11] investigated an improved LS algorithm for the problem of scheduling multiple jobs on multiple uniform processors at different speeds provided that each job has a setup time. However, if each job has a setup time, then the problem of scheduling multiple groups of jobs on multiple processors at different speeds has not been studied yet. Note that the LPT algorithm and the improved LPT algorithm are not effective ways to deal with such a problem if each job has a setup time. Meanwhile, the classical LS algorithm is only useful to solve the problem of scheduling one group of jobs on multiple processors at same or different speeds. Therefore, our purpose of this study is to propose an improved LS algorithm based on the classical LS algorithm and the fact that the optimal solution is bigger than the average finish time of all processors, see the inequality (3.6) below, and to use this new algorithm to analyze this problem of scheduling multiple groups of jobs on multiple processors at different speeds provided that each job has a setup time.
The remainder of the paper is organized as follows. In Section 2, we proposed an improved LS algorithm for this scheduling problem. In Section 3, we obtain two bounds for the ratio of the approximate solution to the optimal solution under the improved algorithm.
Notation 1. As above and henceforth, we let () denote the th group of jobs, and let () and () denote the set of jobs on the th specialpurpose processor and the set of jobs on the th generalpurpose processor, respectively. Let () denote the number of jobs in the th group. We then use (; ) to denote the th job of the th group and use (; ) to denote the processing time of . Let () denote the set of the processing time (). Moreover, we denote by () the speed of the specialpurpose processor and by () the speed of the generalpurpose processor , respectively.
Note that the speeds of generalpurpose processors are less than those of specialpurpose processors in real production systems. For simplicity, we take () and assume (). If the job (; ) is processed after the job (; ), then we use to denote the setup time the processor needs.
If the job is assigned to the processor (), then we write . Let stand for the set of jobs being processed to the processor and let
Then, we use to denote the actual finish time of the processor . Next, we write as the actual latest finish time of processors under the improved algorithm and as the actual latest finish time of processors under the optimal algorithm, respectively. We finally denote by the approximate solution under the improved algorithm, by the bound of a scheduling problem under the improved LS algorithm.
2. An Improved LS Algorithm
In the section, we will propose an improved LS algorithm for the problem of scheduling multi groups of jobs on multi processors at different speeds provided that each job has a setup time.
The algorithm is defined by the fact that whenever a processor becomes idle for assignment, the first job unexecuted is taken from the list and assigned to this processor. If there are no less than one processor being idle, then the algorithm chooses the processor with the smallest index. If the processor is a specialpurpose processor for some group, then the first job unexecuted in this group is assigned to the processor. If the processor is a generalpurpose processor, then the job with the smallest second index is assigned to the processor. If there are several groups of jobs with the same second index, then the job with the smallest first index is assigned. In addition, there is an arbitrary order for any job in any group at the beginning of being processed.
The steps of the improved algorithm are the following.
Step 1 (Initialization). Set , , , , , .
Step 2 (Choose the first idle processor). If for some , , then set (i.e., all jobs in the group have been assigned). If , then go to Step 5 (i.e., all jobs in all groups have been assigned). Set , (i.e., seek the first idle processor).
Step 3 (Choose the job). If , then set , , (i.e., the specialpurpose processor is the first idle processor, then the first job waiting for assignment in the th group is assigned). If (i.e., the generalpurpose processor is the first idle processor), then set (i.e., the job with the smallest second index in nonempty groups is assigned), , , .
Step 4. Update the assignment and the latest finish time of the processor . Set and . Then go to Step 2.
Step 5. Output the assignment , , for every processor and the latest finish time
3. Analysis of the Improved LS Algorithm
In the section, we obtain two bounds for the ratio of the approximate solution to the optimal solution under two different conditions.
Theorem 3.1. Consider the problem of scheduling groups of jobs on specialpurpose processors and generalpurpose processors at different speeds provided each job has a setup time. Assume that for all . If the optimal solution is bigger than the processing time of the latest finish job , then the bound of this scheduling problem under the improved algorithm is for any , where is the speed of the latest finish processor.
Proof. Based on the improved algorithm, we may assume that some processor is the latest finish processor and the latest finish job is . Then on the processor , we have On other processors, we have By the assumption , , (3.2) and (3.3), we get Thus On the other hand, since is the optimal solution, it follows that In view of the assumption and (3.6), we deduce Using (3.5) and (3.7), we have This yields Therefore This completes the proof of the theorem.
Example 3.2. Consider the following scheduling problem. Assume that there are three groups of jobs and each group separately owns two specialpurpose processors and jointly owns three generalpurpose processors. Assume further that , , , , , , (see Tables 1 and 2).

The schedule for this example under the improved algorithm is found in Table 3.

The schedule for this example under the optimal algorithm is arranged as follows. found in Table 4.

In this example, we have , , and . Thus, we get which is consistent with the conclusion of Theorem 3.1.
If we do not know whether or not is bigger than the processing time of the latest finish job , then we have the following result.
Theorem 3.3. Consider the scheduling problem in Theorem 3.1. Assume that for all . Then the bound of this scheduling problem under the improved algorithm is for any , where is the speed of the latest finish processor.
Proof. Based on the improved algorithm, we may assume that some processor is the latest finish processor and the latest finish job is . Then on the processor , we have On other processors, we have By the assumption , , (3.13) and (3.14), we get Thus On the other hand, since is the optimal solution, it follows that In view of the assumption and (3.17), we deduce Using (3.16) and (3.18), we have This yields Therefore This completes the proof of the theorem.
Acknowledgments
This work was partially supported by NSFC (No. 10971234). The author thanks the referee for the valuable comments and suggestions.
References
 P. Schuurman and G. J. Woeginger, “Polynomial time approximation algorithms for machine scheduling: ten open problems,” Journal of Scheduling, vol. 2, no. 5, pp. 203–213, 1999. View at: Publisher Site  Google Scholar  Zentralblatt MATH
 R. L. Graham, “Bounds on multiprocessing timing anomalies,” SIAM Journal on Applied Mathematics, vol. 17, pp. 416–429, 1969. View at: Publisher Site  Google Scholar  Zentralblatt MATH
 I. M. Ovacik and R. Uzsoy, “Worstcase error bounds for parallel machine scheduling problems with bounded sequencedependent setup times,” Operations Research Letters, vol. 14, no. 5, pp. 251–256, 1993. View at: Publisher Site  Google Scholar  Zentralblatt MATH
 C. Imreh, “Scheduling problems on two sets of identical machines,” Computing, vol. 70, no. 4, pp. 277–294, 2003. View at: Publisher Site  Google Scholar  Zentralblatt MATH
 M. Gairing, B. Monien, and A. Woclaw, “A faster combinatorial approximation algorithm for scheduling unrelated parallel machines,” Theoretical Computer Science, vol. 380, no. 12, pp. 87–99, 2007. View at: Publisher Site  Google Scholar  Zentralblatt MATH
 W. Ding, “A type of scheduling problem on generalpurpose machinery and n group tasks,” OR Transactions, vol. 10, no. 4, pp. 122–126, 2006. View at: Google Scholar
 W. Ding, “A type of scheduling problem on $m$ generalpurpose machines and $n$groups of tasks with uniform processors,” Acta Scientiarum Naturalium Universitatis Sunyatseni, vol. 47, no. 3, pp. 19–22, 2008. View at: Google Scholar
 W. Ding, “An improved LS algorithm for the ${Q}_{m+2}/{r}_{j}/{C}_{max}$ scheduling problem on $m$ generalpurpose machines and two specialpurpose machines,” Communication on Applied Mathematics and Computation, vol. 23, no. 2, pp. 26–34, 2009. View at: Google Scholar
 W. Ding, “Heuristic algorithm for the $\text{Q}//{\text{C}}_{max}$ problem on multitasks with uniform processors,” Acta Scientiarum Naturalium Universitatis Sunyatseni. Zhongshan Daxue Xuebao. Ziran Kexue Ban, vol. 49, no. 1, pp. 5–8, 2010. View at: Google Scholar
 W. Ding and Y. Zhao, “An improved LS algorithm for the problem of scheduling multi groups of jobs on multi processors at the same speed,” Algorithmic Operations Research, vol. 5, no. 1, pp. 34–38, 2010. View at: Google Scholar
 W. Ding and Y. Zhao, “An analysis of LS algorithm for the problem of scheduling multiple jobs on multiple uniform processors with ready time,” Pacific Journal of Optimization, vol. 7, no. 3, pp. 551–564, 2011. View at: Google Scholar  Zentralblatt MATH
Copyright
Copyright © 2012 Wei Ding. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.