- Research
- Open access
- Published:
Triangle structure diagrams for a single machine batching problem with identical jobs
Advances in Difference Equations volume 2014, Article number: 71 (2014)
Abstract
The problem of batching identical jobs on a single machine to minimize the completion time is studied by employing the difference analysis technique. Constant processing times and batch setup times are assumed. We first establish the relation between the optimal solution and the first-order difference of the optimal objective function in terms of the number of jobs and investigate the properties of the first-order difference. Then we obtain the triangle structure diagram of the batching problem in time at most by using the permutation of some numbers which describe the character of the first-order difference. The diagrams enable us to see clearly the specific expressions of optimal solutions for the n-jobs batching problem and any m-jobs batching problem simultaneously, where . Also, we show that the result proposed by Santos (MSc thesis, 1984) and Santos and Magazine (Oper. Res. Lett. 4:99-103, 1985) is a special case of our result.
MSC:90B30, 90B35.
1 Introduction
Consider the problem of scheduling identical jobs on a single machine, in which the jobs are processed in batches, with a setup time for each batch. The completion time of a job coincides with the completion time of the last scheduled job in its batch and all jobs in this batch have the same completion time. For a given number of jobs, we want to choose batch sizes so as to minimize the sum of the completion times of the jobs. There is a trade-off between keeping the number of setups incurred small, by having large batches, and keeping small the time each job waits for its batch to finish, by having small batches.
Formally, there is a set of n jobs with identical processing time, , to be processed on a single machine. In a given schedule, for each job , we denote by its completion time. The problem is, given job processing time p and setup time S, to find the number of batches k, and batch sizes , such that , so as to minimize . The problem is referred to as .
There are several different versions of solving the problem . Coffman et al. [1] propose a backward dynamic programming algorithm, running in time. A faster solution algorithm is given Naddef and Santos [2], running in time. Another is given by Coffman, Nozari and Yannakakis [3], running in time. Shallcross [4] presents an optimal solution of the form where c and l can be determined by the algorithm running in . However, Potts and Kovalyov [5] point out that the algorithm by Shallcross [4] is rather intricate. All of the optimal solutions mentioned above are not of the specific expression. Potts and Kovalyov [5] point out that a key to the development of a polynomial algorithm is provided by Santos [6] and Santos and Magazine [7] who analyze a continuous relaxation in which batch sizes are not constrained to be integer. Specifically, they show that the optimal number of batches is and the optimal batch sizes are for .
The results by Santos [6] and Santos and Magazine [7] are important because the specific expressions of the optimal solutions are given, which contributes so as not only to be much easier to implement in solving the problem than other algorithms, but also it entails a proof of the complexity for other scheduling problems. For example, Albers and Brucker [8] give the NP-hardness proofs of two batching problems by using the expression by Santos [6] and Santos and Magazine [7]. One slightly regrets that the specific expressions of the optimal solutions are only appropriate for some of the problem instances. One would like to know whether there is a specific solution formula that applies to all of the problem instances. This is the reason for studying the problem here. In this paper, we first establish the relation between the optimal solution and the first-order difference of the optimal objective function in terms of the number of jobs and we investigate the properties of the first-order difference. Then, we obtain the triangle structure diagram of the batching problem in time at most by using the permutation of some numbers which describe the character of the first-order difference. The diagrams enable us to see clearly the specific expressions of optimal solutions for the n-jobs batching problem and any m-jobs batching problem simultaneously, where .
This paper is organized as follows. In Section 2 we build the relation between the optimal solution and the first-order difference of the optimal objective function in terms of the number of jobs and investigate the properties of the first-order difference. The triangle structure diagrams are shown in the case in Section 3 and in the case in Section 4, respectively, where v and are integers. Section 5 contains a conclusion and a discussion of some possible extensions.
2 Properties of the first-order difference
In this section, we introduce the concept of differences of the optimal objective function in terms of the number of jobs, and we show that the first-order difference sequence is strictly monotone increasing and each term in the second-order difference sequence, that is, each increment of the first-order difference terms, is between p and 2p. Using the properties, we can reduce the batch sizing problem to finding some interval such that some fixed number exactly fall in it, where the interval consists of two adjacent terms in the first-order difference sequence.
For ease of presentation, we sequence the jobs according to nonincreasing indices. Any solution of problem is of the form
where k is the number of batches,
and the batch sizes are . Every solution BS corresponds to an objective function value
where .
In order to solve the batch sizing problem, we obviously have to find a constant k and a sequence of indices
such that the above objective function value is minimized. Clearly, problem is a trivial matter when . We have the following result.
Theorem 1 If , then for problem there exists an optimal solution in which and for , that is, .
By Theorem 1, we assume that hereafter.
Let denote the minimum the sum of the completion times for the j-jobs batching problem containing jobs . Coffman et al. [1] propose a backward dynamic programming algorithm. The initialization is
and the recursion for is
Under the most natural implementation, the algorithm requires time. Below we do further research into the recursion formula, so as to determine completely the optimal successor t of j, that is, an integer t with such that
holds.
For , set
Thus, we have
Let denote the first-order difference sequence of the optimal objective function in terms of the number of jobs, where for  . The relation stating that is better (worse) than i as a successor of j is equivalent to
To break ties when choosing the successor, we assume that if , that is, , then is better than i as a successor of j. Thus, if the sequence is strictly monotone increasing, the determining optimal successor of j problem can be reduced to finding a nonnegative integer t such that , where we define . We denote by the optimal successor of j hereafter.
Proposition 1 Assume that the sequence is strictly monotone increasing and for  . Then for each j there is a unique with such that and .
Proof We first prove the existence by induction. When , we have and . Now suppose that it holds when for some positive integer h, i.e. there is with such that . For , by the proposition and induction assumptions, we have . Thus, the existence holds for , and it follows that is a partition of .
Due to the fact that is a partition of again, the uniqueness holds.
Since the inequalities imply that is better than , better than better than 0 in order and the inequalities imply that is better than , better than better than in order as a successor of j, we have . □
Now we give the key properties of the first-order difference.
Proposition 2 If , then the sequence is strictly monotone increasing and for  .
Proof We prove this proposition by induction. Simple calculations yield
and
Now suppose that it holds when for some positive integer h, i.e. and for . We need to show that it holds when .
By the induction assumption and Proposition 1, we may assume that , where and . Since and , we see that the optimal successor of h is either or and . Noting the fact that and , along with for , we have . Thus, the optimal successor of is between 0 and h. By similar arguments for h, we see that the optimal successor of is either or and . There are four cases to consider: (a) , (b) , , (c) , , (d) , , .
Case (a) . In this case,
Thus, we have
Case (b) , . In this case,
Thus, we have
Since , the inequalities hold. This implies . Noting the fact that , by the induction assumption, we have .
Case (c) , . In this case,
Thus, we have
Since , the inequalities hold. This implies . Also, we have . Otherwise, implies . This contradicts with the fact that .
Case (d) , , . In this case,
Thus, we have
Since , along with the induction assumption, the inequalities hold. □
These two propositions, as well as the four formulas yielded in the proof of Proposition 2, are very important for our batch sizing problem. Proposition 1 ensures that the problem can be reduced to finding the interval formed by the first-order difference problem. Proposition 2 and the four formulas make it possible to determine exactly the first-order difference sequence. implies that each nonnegative integer must be the optimal successor of one or two positive integers, and by the monotonicity each positive integer has a unique nonnegative integer as its optimal successor. Based on the successor membership between these integers, we can obtain a partition of the set of positive integers. We define for  , called the k-batches case set of numbers of jobs, and the sequence of integers in is in increasing natural order. Then is a partition of the set of position integers. Let for . Then . We define for and , called the i th periodic set of , and the sequence of integers in is in increasing natural order. Then and is a partition of the set of position integers. Based on the successor membership between these periodic sets, we now give a basic diagram of the batching problem as follows, where the nodes in the diagram consist of the integers in (see Figure 1).
In the following sections, we determine exactly the number of integers in and the optimal successor membership between the integers.
3 The triangle structure diagram in the case
In this section we present a specific diagram of the batching problem with , which can be obtained in constant time. Since the diagram consists of v triangles in the shape, we call it a triangle structure diagram. Using the optimal successor membership between the integers presented by the diagram, we give the specific expression of the optimal solution for an any-number-jobs batching problem with , and show that the result proposed by Santos [6] and Santos and Magazine [7] is a special case of our result.
The diagram depends exactly on the first-order difference sequence. To compute the sequence, we can first obtain values by simple calculations. Then using the results of the previous section and the special properties of the first-order difference in the case , which will be given below, we can determine the first-order difference of the integers in . Generally, we can compute the first-order difference of the integers in if those in are already known. The following two propositions describe the special properties of the first-order difference in the case .
Proposition 3 Assume . Then , if j and have the same optimal successor and otherwise for  .
Proof Since and , we have . Suppose , where .
When , by (2), we have .
When and , it follows from Proposition 1 that
Due to and , where , is an integer for  . Thus, is an integer for  . By equation (6), . So, we have , following from equation (4).
When , and , it follows from Proposition 1 that
Since both and are integers, along with equation (5), equation (7) implies .
When and , it follows from Proposition 1 that
Since both and are integers, along with equation (3), equation (8) implies . □
Proposition 4 Assume . Then:
-
(i)
for  .
-
(ii)
for .
-
(iii)
For , if j is the last integer of for , otherwise.
Proof We prove this proposition by induction. Clearly, all these results hold when . Now suppose that they hold when for some positive integer h, i.e. , for and for , if j is the last integer of for ; otherwise. We need to show that they hold when . For any , by the induction assumption, we assume , where a is a given positive integer, and we have
and
Due to Proposition 1, if and only if
Noting the fact that is a positive integer, the number of positive integers satisfying equation (9) must be . Thus, we have and , where . Since , we have for . Since , we have . Thus,
and
which follows from Proposition 3. By the arbitrariness of i, result (i), result (ii) and result (iii) hold for . □
We define and denote by the node in Figure 1 instead of integer j in . Now we can give the triangle structure diagram in constant time in the case (see Figure 2).
To use the information provided by the diagram, we denote by the w th integer in the i th periodic set of the k th batch case set , i.e. under . For example, if . Since is a partition of the set of position integers, we may write every position integer as , where all k, i, and w with , and are integers. We define . Now we give one of our main results.
Theorem 2 Assume . Then for an arbitrary positive integer , the following hold and are decided in constant time:
-
(i)
-
(ii)
the optimal solution of -jobs batch sizing problem
(10)
where all k, i, and w with , , and are integers.
Proof For any n, we can give another kind of expression in constant time. Also, the optimal successor and can be decided in constant time. Thus, the specific expression of the optimal solution is decided in constant time.
In the case , . This implies . By Proposition 1, . In the case , result (i) clearly follows from Proposition 4 or Figure 2. Due to result 1,
Thus,
for ,
for ,
 □
For example, we consider an instance of the batch sizing problem with 100 jobs and . 100 can be written as . By the triangle structure diagram in the case , we can obtain the successor relation between the number of jobs: . Thus, the optimal solution is . Of course, we may take the optimal solution by (10). For example, for a problem with jobs and , by , the optimal solution as follows from (10).
We recall the solving formula by Santos [6] and Santos and Magazine [7]: for , where . The validity of the formula depends on whether , for , are integers. First, it is necessary that is an integer, i.e. , which is the same as the case considered by us in this section. Noting the fact in the solving formula , it follows from the triangle structure diagram in the case that and/or . If , then = = = . Clearly, when , is not an integer otherwise. Case can be reduced to the case ; if , then = = is an integer. Thus, the solving formula by Santos [6] and Santos and Magazine [7] is appropriate for the problem with and , where k, v, and are positive integers.
4 The triangle structure diagram in the case
In this section we present a specific diagram of the batching problem with that can be obtained in time, where and v are integers. Since the diagram consists of v the same triangles and has a triangle-like shape, we call it a triangle structure diagram. Using the optimal successor membership between integers presented by the diagram, we give the specific expression of the optimal solution for the any-number-jobs batching problem with .
Noting the fact that , we have . We rewrite as for  .
The diagram depends on the first-order difference sequence. Similar to the process in the last section, we first explore the properties of the first-order difference and then give the triangle structure diagram. The proposition below shows that the increments of the first-order difference for the first kv integers in are of periodicity. Using this property, we can reduce the calculated amount of determining the first-order difference.
Proposition 5 Assume , where and v are integers, and let . Then:
-
(i)
for .
-
(ii)
for .
-
(iii)
= for and .
Proof We prove this proposition by induction. Clearly, all these results hold when . Now suppose that they hold when for some positive integer h. We need to show that they hold when . For any , by result (ii) with : , and it follows from Proposition 1 that the result (i) holds when .
Now we may write as , where . By Proposition 2, every integer in must be the optimal successor of some integer in and there is an integer, say , where , in such that it is the optimal successor of two integers in . Thus, we have
By equation (5),
for .
By equation (3),
By equation (4),
By equation (5),
for . Equations (11), (12), (13), and (14), along with the induction assumption, imply , i.e. the result (ii) holds when .
By the induction assumption, we see that for, , the position of the integer in each such that it is the optimal successor of two integers in is the same, respectively. Using a similar argument as in the proof of result (ii), we may obtain the respective formulas (11), (12), (13), and (14) for each . The difference between them is that there are different a and b for different formulas. By comparing those formulas, along with the induction assumption, we see that result (iii) holds when . □
The proposition below shows the number of integers in and the first-order difference of the last integer in . We define . In view of the fact that is an integer multiple of and the fact that all results above relative to the first-order difference hold if we replace ‘’ by ‘Q’ and remove ‘p’, we call still as the first-order difference at j. For example, the sequence is strictly monotone increasing, equation (3) becomes and implies . We denote by the maximal integer less than the rational number x. Clearly, , for example, and .
Proposition 6 Assume and , where and v are integers. Then for
-
(i)
,
-
(ii)
,
-
(iii)
,
where is the last integer in .
Proof We prove this proposition by induction. is known. Since , we have . This implies that the results (i) and (ii) hold when . By Proposition 5, . Since , and , by (4), we have . This implies that result (iii) holds when . Now suppose that they hold when for some positive integer h. We need to show that they hold when . We know that or . By Proposition 5 and the induction assumption,
and
By and , we see that the minimal positive integer greater than or equal to is , and the maximal positive integer less than is . Thus,
This implies result (i) holds. Due to Proposition 5, we have
This implies result (i) holds. To prove result (iii) with , we consider two cases: (a1) , and (b1) .
Case (a1) . In this case, we have . This implies that all the optimal successors of integers in are different. By equation (5), . This, along with the induction assumption and Proposition 5, implies that
Case (b1) . In this case, we have . By similar arguments as used in the proof of Proposition 5, . By the same argument as in Case (a1), we have
This ends the proof for result (iii). □
The proposition below shows that the optimal successor membership between numbers of jobs is exactly determined by the coefficients of ε in the expression of the first-order difference. To determine the optimal successor membership between the numbers of jobs, by Proposition 5, we assume . We denote by the w th integer of and by the w th integer of . We define and , respectively. denotes the coefficient of ε in for , or the coefficient of for short. We set .
Proposition 7 Assume and , where and v are integers. Then for  :
-
(i)
is a permutation of .
-
(ii)
If , then ; if , then .
-
(iii)
Triangle rule:
(15)(16)(17)
Proof Since , and for  , is a linear function of ε. Now we prove this proposition by induction. Simple calculations yield
if and
if . This implies that all results hold when and . Now suppose that they hold when for some positive integer . We need to show that they hold when .
Now we prove result (i). There are two cases to consider: (a3) , and (b3) .
Case (a3) . By equation (3), . Due to the induction assumption, and . Thus, we have .
By equation (4), . Thus, we have .
By equation (5), . Thus, we have . Similarly, we have for . Thus,
This, along with the induction assumption, implies that is a permutation of . Thus, result (i) holds in the case.
Case (b3) . We assume , where . By equation (5), . Due to the induction assumption, . Similarly, we have for .
By equation (3), . Thus, we have .
By equation (4), . Thus, we have . Similarly, we have for . Thus,
This, along with the induction assumption, implies that is a permutation of . Thus, result (i) holds in the case.
By the same arguments as in the proof of result (i), we have
if ;
if , where . Due to equations (18), (19), (20), and (21), result (ii) holds when .
Before other results are proved, we give an assertion, as follows.
Assume that and are the coefficients of ε corresponding to and respectively, where and . Then
(∗) j is the optimal successor of two integers if ;
(∗∗) j is the optimal successor of one integer if .
We prove this assertion by contradiction. We write and as and , respectively, where a and b are integers. Clearly, is the minimal integer greater than or equal to and the maximal positive integer less than . Suppose that result (∗) does not hold. Then we have . By , , i.e. . This contradicts Proposition 2.
Suppose that result (∗∗) does not hold. Then . If , using a similar argument as in the proof of result (∗), we can deduce that . This contradicts Proposition 2. If , then . In the case , this, along with Proposition 5, implies for an arbitrary with . And then we have . Since , we have . This contradicts . In the case , contradicts the fact that and for any integer i.
This assertion, along with the arguments used in the proof of result (i), implies that is exactly determined by and .
We proceed with our proof. Note the fact that the coefficient permutations of the optimal successors corresponding to and are and , respectively. By the induction assumption, we have and both are the same permutation of . This, along with the assertion, implies that either
(a4) for
or
(b4) for , and for , where and .
Since both and are permutations of , along with result (ii) and the fact that is a permutation of , we have , in the case (a4) and in the case (b4). Thus, equation (15) holds when .
Now we prove equation (16). There are two cases to consider: (a5) and (b5) .
Case (a5) . By equation (20), for . By the induction assumption, for . This, along with and the assertion, implies that for . Thus, equation (16) holds in the case.
Case (b5) . By equation (21), for , and for , where If , using similar arguments as in Case (a5), we find that equation (16) holds in the case. If , then . This, along with equation (15), implies that is a permutation of and . Using similar arguments as in Case (a5), we find that for . It follows from is a permutation of that . Thus, equation (16) holds in the case.
Equation (17) has been proven in Proposition 6. □
We denote by the coefficient of ε corresponding to integer j the node in Figure 1 instead of the integer j in . Using the triangle rule in Proposition 7, we may give a triangle structure diagram in the case .
We now show that the triangle structure diagram can be decided in time. By the triangle rule in Proposition 7, we see that given the permutation of the numbers in the front row, the permutation of the numbers in the back row can be decided in constant time. The total of the permutations of k rows needs to be decided and the permutation of the first row is known. Because the number of batches in an optimal solution turns out to be , the triangle structure diagram can be decided in time.
In order to better understand the characters of the triangle structure diagram, we give an example. Given and , then , and the triangle structure diagram of the batching problem is given in Figure 3
From the arguments above, we see clearly that the optimal successor membership between the numbers of jobs can exactly be determined by the position of ‘1’ in and . We denote by and the positions in and where 1 lies, respectively. We define if there is not 1 in , and . Using the triangle rule, a recursion for determining the position of 1 may be formulated as follows:
for  ,
for  .
Now we show that the recursion is correct. When , by equation (16), . By equation (15), . When , by equation (16), . By equation (16), . Thus, equation (22) holds for  . Equation (23) follows from equation (16) for  .
By the recursion above, we see that the positions of ‘1’ in each row can be decided in constant time. The total of the positions of ‘1’ in k rows needs to be decided and the position of ‘1’ in the first row is known. Thus, all of the positions of ‘1’ in the triangle structure diagram can be decided in time.
We denote by and the th integer in the i th periodic set of the k th batch case set , and the th integer in , respectively, i.e. and . Now we give the last result as follows.
Theorem 3 Assume with . Then for arbitrary positive integers and , the following hold and are decided in time:
-
(i)
-
(ii)
-
(iii)
The optimal solution of the -jobs batch sizing problem is
(24)
for , where is given by equation (22), and if and if for .
-
(iv)
The optimal solution of -jobs batch sizing problem is
(25)
for , where is given by equation (23), and if and if for .
Proof For any , given and , we can decide its the optimal successor and in constant time. Since and can be decided in time, the specific expression of the optimal solution is decided in time.
In the case , . By Proposition 1, . In the case , result (i) clearly follows from Proposition 7 or Figure 3. Similarly, result (ii) holds.
Now we show result (iii) for the case with . When , due to result (i), . Thus,
When , due to result (i), . Thus,
The result for can be proved similarly. The result for is
This finishes the proof of result (iii).
Using similar arguments as in the proof of result (iii), result (iv) can be proved. □
For example, we consider the instance of a batch sizing problem with 105 jobs, and . Since 105 can be written as . By the triangle structure diagram in the case , we can obtain the successor relation between the number of jobs: , i.e., . Thus, the optimal solution is . Of course, we may have the optimal solution by equation (24). However, before we solve the instance, we need to go to computer , , and as follows:
Using equation (24), we have
by , and ;
by , and ;
by , and ;
by , and ;
by , and ;
by , and ;
by , and ;
by , ;
.
If n is chosen , then using equation (25), similarly we have .
5 Conclusions
In this paper the problem of batching identical jobs on a single machine to minimize the completion time is studied by employing the difference analysis technique. We first establish the relation between the optimal solution and the first-order difference of the optimal objective function in terms of the number of jobs and investigate the properties of the first-order difference. Then, we obtain the triangle structure diagram of the batching problem in time at most by using the permutation of some numbers which describe the character of the first-order difference. The diagrams enable us to see clearly the specific expressions of optimal solutions for the n-jobs batching problem and any m-jobs batching problem simultaneously, where . The difference analysis technique employed by us should be used for solving other batching problems. Analysis of many batching problems shows that, in some cases, the sequencing and batching of jobs can be decoupled. Once a sequence of jobs is known, dynamic programming is often adopted to solve the batching problem. In the case the difference expression of the optimal solution function may be obtained. It become possible that the solving algorithm may be improved by employing the difference analysis technique. The difference analysis technique should be a better tool for solving discrete mathematics problems.
References
Coffman EG Jr., Yannakakis M, Magazine MJ, Santos CA: Batch sizing and job sequencing on a single machine. Ann. Oper. Res. 1990, 26: 135–147. 10.1007/BF02248589
Naddef D, Santos C: One-pass batching algorithms for the one-machine problem. Discrete Appl. Math. 1988, 21: 133–145. 10.1016/0166-218X(88)90049-2
Coffman EG Jr., Nozari A, Yannakakis M: Optimal scheduling of products with two subassemblies on a single machine. Oper. Res. 1989, 37: 426–436. 10.1287/opre.37.3.426
Shallcross D: A polynomial algorithm for a one machine batching problem. Oper. Res. Lett. 1992, 11: 213–218. 10.1016/0167-6377(92)90027-Z
Potts CN, Kovalyov MY: Scheduling with batching: a review. Eur. J. Oper. Res. 2000, 120: 228–249. 10.1016/S0377-2217(99)00153-8
Santos, CA: Batching and sequencing decisions under lead time considerations for single machine problems. MSc thesis, Department of Management Sciences, University of Waterloo, Canada (1984)
Santos CA, Magazine M: Batching in single operation manufacturing systems. Oper. Res. Lett. 1985, 4: 99–103. 10.1016/0167-6377(85)90011-2
Albers S, Brucker P: The complexity of one-machine batching problems. Discrete Appl. Math. 1993, 47: 87–107. 10.1016/0166-218X(93)90085-3
Acknowledgements
This research was supported in part by the Zhejiang Natural Science Foundation of China Grant Y6110054, the Shanxi Scholarship Council of China, and the Hong Kong Polytechnic University Research Grant J-BB7D and The Hong Kong CERG Research Fund 5515/10H.
Author information
Authors and Affiliations
Corresponding author
Additional information
Competing interests
The authors declare that they have no competing interests.
Authors’ contributions
All authors contributed equally to the manuscript and typed, read, and approved the final manuscript.
Authors’ original submitted files for images
Below are the links to the authors’ original submitted files for images.
Rights and permissions
Open Access This article is distributed under the terms of the Creative Commons Attribution 2.0 International License (https://creativecommons.org/licenses/by/2.0), which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.
About this article
Cite this article
Li, S., Li, M. & Yan, H. Triangle structure diagrams for a single machine batching problem with identical jobs. Adv Differ Equ 2014, 71 (2014). https://doi.org/10.1186/1687-1847-2014-71
Received:
Accepted:
Published:
DOI: https://doi.org/10.1186/1687-1847-2014-71