Next Article in Journal
Wirelength of Enhanced Hypercube into Windmill and Necklace Graphs
Next Article in Special Issue
Discrete Optimization: Theory, Algorithms, and Applications
Previous Article in Journal
Cutting Convex Polytopes by Hyperplanes
Previous Article in Special Issue
Two-Machine Job-Shop Scheduling with Equal Processing Times on Each Machine
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

The Optimality Region for a Single-Machine Scheduling Problem with Bounded Durations of the Jobs and the Total Completion Time Objective

by
Yuri N. Sotskov
* and
Natalja G. Egorova
United Institute of Informatics Problems, National Academy of Sciences of Belarus, Surganova Street 6, 220012 Minsk, Belarus
*
Author to whom correspondence should be addressed.
Mathematics 2019, 7(5), 382; https://doi.org/10.3390/math7050382
Submission received: 28 February 2019 / Revised: 18 April 2019 / Accepted: 19 April 2019 / Published: 26 April 2019
(This article belongs to the Special Issue Discrete Optimization: Theory, Algorithms, and Applications)

Abstract

:
We study a single-machine scheduling problem to minimize the total completion time of the given set of jobs, which have to be processed without job preemptions. The lower and upper bounds on the job duration is the only information that is available before scheduling. Exact values of the job durations remain unknown until the completion of the jobs. We use the optimality region for the job permutation as an optimality measure of the optimal schedule. We investigate properties of the optimality region and derive O ( n ) -algorithm for calculating a quasi-perimeter of the optimality set (i.e., the sum of lengths of the optimality segments for n given jobs). We develop a fast algorithm for finding a job permutation having the largest quasi-perimeter of the optimality set. The computational results in constructing such permutations show that they are close to the optimal ones, which can be constructed for the factual durations of all given jobs.

1. Introduction

A lot of real-life scheduling problems involve different forms of uncertainties. For dealing with uncertain scheduling problems, several approaches have been developed in the literature. In a stochastic approach, job durations are assumed to be random variables with the specific probability distributions known before scheduling [1,2]. If there is no sufficient information to determine the probability distribution for each random duration of the given job, other approaches have to be used [3,4,5]. In the approach of seeking a robust schedule [3,6], a decision-maker prefers a schedule that hedges against the worst-case scenario. A fuzzy approach [7,8,9] allows a scheduler to find best schedules with respect to fuzzy durations of the given jobs. A stability approach [10] is based on the stability analysis of the optimal schedules to possible variations of the job durations. In this paper, we apply the stability approach to the single-machine scheduling problem with interval durations of the given jobs.
In Section 2, we present settings of the uncertain scheduling problems, the related literature and closed results. In Section 3, we investigate properties of the optimality region for the job permutation, which is used for processing given jobs. Efficient algorithms for calculating a quasi-perimeter of the optimality region are derived in Section 4. In Section 5, we show how to find a job permutation with the largest quasi-perimeter of the optimality region and develop algorithm for finding an approximate solution for the uncertain scheduling problem. In Section 6, we report on the computational results for finding solutions for the tested instances. The paper is concluded in Section 7.

2. Problem Descriptions, The Related Literature and Closed Results

There is given a set of jobs J = { J 1 , J 2 , , J n } to be processed on a single machine. The duration p i of the job J i J can take any real value from the given segment [ p i L , p i U ] , where the inequalities p i U p i L > 0 hold. The exact value p i [ p i L , p i U ] of the job duration remains unknown until the completion time of the job J i J .
Let R + n denote a set of all non-negative n-dimensional real vectors, R + n R n , where R n is space of n-dimensional real vectors. The set of all vectors ( p 1 , p 2 , , p n ) = p R + n of the feasible durations is presented as the Cartesian product of the segments [ p i L , p i U ] :
T = [ p 1 L , p 1 U ] × [ p 2 L , p 2 U ] × × [ p n L , p n U ] = { p : p R + n , p i L p i p i U , i { 1 , 2 , , n } } .
A vector p T of the job durations is called a scenario. Let S = { π 1 , π 2 , , π n ! } denote a set of all permutations π k = ( J k 1 , J k 2 , , J k n ) of the given jobs J .
Given a scenario p T and a permutation π k S , let C i = C i ( π k , p ) denote the completion time of the job J i in the schedule determined by the permutation π k . The criterion C i denotes the minimization of the following sum of the completion times:
J i J C i ( π t , p ) = min π k S J i J C i ( π k , p ) ,
where the permutation π t = ( J t 1 , J t 2 , , J t n ) S is optimal. From the equality (1), it follows that only semi-active schedule [11] may be optimal. Each permutation π k S determines exactly one semi-active schedule.
The above uncertain scheduling problem is denoted as 1 | p i L p i p i U | C i using the three-field notation α | β | γ [12], where α denotes the processing system, β characterizes conditions for processing the jobs and γ determines the criterion.

2.1. The Related Literature

If a scenario p T is fixed before scheduling (i.e., the equality [ p i L , p i U ] = [ p i , p i ] holds for each job J i J ), then the uncertain problem 1 | p i L p i p i U | C i is turned into the deterministic one 1 | | C i . In what follows, we use the notation 1 | p | C i to indicate an instance of the deterministic problem 1 | | C i with scenario p T . Any instance 1 | p | C i is solvable in O ( n log n ) time [13] due to the following necessary and sufficient condition for the optimality of the job permutation π k S .
Theorem 1.
The job permutation π k = ( J k 1 , J k 2 , , J k n ) S is optimal for the instance 1 | p | C i if and only if the following inequalities hold:
p k 1 p k 2 p k n .
If the strict inequality p k u < p k v holds, then the job J k u precedes the job J k v in any optimal job permutation π k .
Since the scenario p T is not fixed in the uncertain problem 1 | p i L p i p i U | C i , the completion time C i of the job J i J cannot be determined for the permutation π k S before completing the job J i . Thus, the value of the objective function J i J C i ( π t , p ) for the permutation π k remains uncertain until all jobs J have been completed. Since for the uncertain problem α | p i L p i p i U | γ , there does not usually exist an optimal schedule for all feasible scenarios p from the set T, an additional objective or some agreements are used in the literature.
A robust schedule minimizing the worst-case regret has been developed in [3,8,14,15,16,17,18]. For any permutation π k S and any feasible scenario p T , the difference γ p k γ p t = : r ( π k , p ) is called the regret for the permutation π k . In the above notation r ( π k , p ) , the objective function γ is equal to γ p k for the permutation π k under scenario p and the optimal value of the objective function γ is equal to γ p t for the optimal permutation π k under scenario p. The value of Z ( π k ) = max { r ( π k , p ) : p T } is called the worst-case absolute regret. The value of Z ( π k ) = max { r ( π k , p ) γ p t : p T } is called the worst-case relative regret.
While the deterministic problem 1 | | C i is polynomially solvable [13], finding a permutation π t S minimizing the worst-case absolute regret Z ( π k ) or the relative regret Z for the problem 1 | p i L p i p i U | C i are binary NP-hard even for two possible scenarios { p 1 , p 2 } [3,17,19]. Discrete sets { p 1 , p 2 , , p m } of the uncertain scenarios have been investigated in [3,17,19].
The complexity of minimizing the total flow time with continues data T is characterized in [20], where it is proven that finding a permutation π t S minimizing the worst-case absolute regret Z ( π k ) for the problem 1 | p i L p i p i U | C i is binary NP-hard. For a special case of this problem, where all intervals of uncertainty have the same center, it is shown that this problem can be solved in O ( n log n ) time if the number of jobs is even, and remains NP-hard if the number of jobs is odd [20]. In [6], a branch-and-bound algorithm was developed for finding a permutation π k minimizing the absolute regret for the problem 1 | p i L p i p i U | w i C i , where the jobs J i J have different weights w i > 0 . The computational experiments showed that the developed algorithm is able to find such a permutation π k for the instances with up to 40 jobs.
The fuzzy scheduling technique was used in [7,8,9,21] to develop a fuzzy analogue of dispatching rules or to solve mathematical programming problems to determine a schedule that minimizes a fuzzy-valued objective function.
In [22], several heuristics were developed for the problem 1 | p i L p i p i U | w i C i . The computational experiments including different probability distributions of the job durations showed that there was at least one heuristic among all performing heuristics with the error 1.1 % of the optimal objective function value w i C i obtained after completing the given jobs when their factual durations became known.
In Section 3, Section 4, Section 5 and Section 6, we adopt the stability approach [5,10,23,24,25] to the uncertain problem 1 | p i L p i p i U | C i with the additional criterion of maximizing a quasi-perimeter of the optimality region introduced in Section 3.

2.2. The Stability Approach to Single-Machine Scheduling Problems

Let M denote a subset of the set N = { 1 , 2 , , n } . In [23,24], an optimality box for the job permutation π k S for the uncertain problem 1 | p i L p i p i U | C i is defined as follows.
Definition 1.
The maximal rectangular box OB ( π k , T ) = × k i M [ l k i , u k i ] T is called an optimality box for the permutation π k = ( J k 1 , J k 2 , , J k n ) S (with respect to T), if the permutation π k being optimal for the instance 1 | p | C i with the scenario p = ( p 1 , p 2 , , p n ) T remains optimal for the instance 1 | p | C i with any scenario p OB ( π k , T ) { × k j N M [ p k j , p k j ] } . If there does not exist a scenario p T such that the permutation π k is optimal for the instance 1 | p | C i , it is assumed that OB ( π k , T ) = .
In Section 3, we use the following remark for the definition of the optimality segment for the job J k i J in the permutation π k = ( J k 1 , J k 2 , , J k n ) S .
Remark 1.
Any variation p k i of the duration p k i of the job J k i J within the maximal segment [ l k i , u k i ] indicated in Definition 1 cannot violate the optimality of the permutation π k S provided that the inclusion p k i [ l k i , u k i ] holds. The non-empty maximal segment [ l k i , u k i ] indicated in Definition 1 with the inequality l k i u k i and the length u k i l k i 0 is called an optimality segment for the job J k i J in the permutation π k . We denote the optimality segment as follows: [ l k i o p t , u k i o p t ] .
If the maximal segment [ l k i , u k i ] indicated in Definition 1 is empty for the job J k i J , we say that this job has no optimality segment in the permutation π k . It is clear that if the job J k i has no optimality segment in the permutation π k , then the strict inequality l k i > u k i holds. In [23,24], it is shown that for calculating the optimality box OB ( π k , T ) , one can calculate the optimality box for the modified instance 1 | p ^ i L p i p ^ i U | w i C i , where the segments [ p i L , p i U ] for the possible job durations p i are reduced, [ p ^ i L , p ^ i U ] [ p i L , p i U ] , based on the following formulas:
w i p ^ i L = min 1 j i n w j p j L , w i p ^ i U = max 1 i j n w j p j U .
The following theorem has been proven in [24].
Theorem 2.
The optimality box for the permutation π k S for the problem 1 | p i L p i p i U | C i is equal to the optimality box for the same permutation π k for the problem 1 | p ^ i L p i p ^ i U | C i with the feasible segments [ p ^ i L , p ^ i U ] , J i J , determined in (3).
In [23], it is shown that Theorem 2 remains correct for the problem 1 | p i L p i p i U | w i C i with the different weights w i > 0 prescribed to the jobs J i J .
Following [23,24], the notion of a block for the jobs J is determined for the problem 1 | p i L p i p i U | C i as follows.
Definition 2.
A maximal subset B r = { J r 1 , J r 2 , , J r | B r | } of the set J , for which the inequality max J r i B r p r i L min J r i B r p r i U holds, is called a lock. The segment [ b r L , b r U ] , where equalities b r L = max J r i B r p r i L and b r U = min J r i B r p r i U hold, is called a core of the block B r .
The following claim was proven in [23].
Lemma 1.
For the problem 1 | p i L p i p i U | w i C i , the set B = { B 1 , B 2 , , B m } of all blocks can be uniquely determined in O ( n log n ) time.
If the job J i J belongs to a single block, we say that the job J i is fixed in this block. We say that the block B v is virtual, if there is no fixed job in this block. We say that the job J k is non-fixed, if the job J k J belongs to two or more blocks and at least one of these blocks is not virtual.
Remark 2.
Any permutation π k S determines a distribution of all non-fixed jobs to the blocks. Due to such fixings of the positions of the non-fixed jobs, some virtual blocks from the set B may be destroyed for the fixed permutation π k . Furthermore, the cores of some non-virtual blocks may be increased in the permutation π k .
Each block in the set B has the following properties proven in [23].
Lemma 2.
At most two jobs in the block B r B may have optimality segments in the permutation π k S .
Lemma 3.
If OB ( π k , T ) , then any two jobs J v B r and J w B s , which are fixed in different blocks, r < s , must be ordered in the permutation π k S with decreasing left bounds (and right bounds as well) of the cores of their blocks, i.e., the permutation π k looks as follows: π k = { , J v , , J w , } , where the inequality b r L < b s L holds.
In what follows, we assume that all blocks in the set B = { B 1 , B 2 , , B m } are numbered according to decreasing left bounds of their cores, i.e., the strict inequality b v L < b u L implies the strict inequality v < u . Due to Definition 2, each block B r = { J r 1 , J r 2 , , J r | B r | } may include jobs of the four types as follows.
If p r i L = b r L and p r i U = b r U , we say that job J r i is a core job in the block B r . If p r i L < b r L , we say that job J r i is a left job in the block B r . If p r i U > b r U , we say that job J r i is a right job in the block B r . Let B r denote the set of all core jobs. The set B r (the set B r + ) is the set of all left (right) jobs in the block B r . Some jobs J r i B r may be left-right jobs in the block B r , since it is possible that condition B { B r B r B r + } holds.
The jobs J v and J w are identical if both equalities p v L = p w L and p v U = p w U hold. If the set B r B is a singleton, | B r | = 1 , then the equality B r = B r holds. The following theorem was proven in [24].
Theorem 3.
For the problem 1 | p i L p i p i U | C i , any permutation π k S has an empty optimality box, OB ( π k , T ) = , if and only if for each block B r B , either condition | B r | = | B r | 2 holds or condition B r = B r B r + holds and all jobs in the set B r (in the set B r + ) are identical and both inequalities | B r | 2 and | B r + | 2 hold.
The following criterion was proven in [23].
Theorem 4.
Let all jobs from the set J be fixed in their blocks from the set B. Then the permutation π k with the largest optimality box OB ( π k , T ) may be constructed in O ( n log n ) time.
The rest of this paper is devoted to an optimality set (it is called an optimality region), which is a superset of the optimality box OB ( π k , T ) for the same permutation π k .

3. The Optimality Region

For the permutation π k S , we formally define the optimality region OR ( π k , T ) such that the inclusion OB ( π k , T ) OR ( π k , T ) holds.
Definition 3.
The maximal closed subset OR ( π k , T ) T of the set R + n is called the optimality region for the permutation π k = ( J k 1 , J k 2 , , J k n ) S (with respect to T) if the permutation π k is optimal for the instance 1 | p | C i with any scenario p = ( p 1 , p 2 , , p n ) OR ( π k , T ) . If there does not exist a scenario p T such that the permutation π k is optimal for the instance 1 | p | C i , it is assumed that OR ( π k , T ) = .
We demonstrate the above definitions and notions on the instance of the problem 1 | p i L p i p i U | C i with n = 8 jobs. The segments [ p i L , p i U ] defining all possible durations of the jobs J i J = { J 1 , J 2 , , J 8 } are given in Table 1. The segments [ p i L , p i U ] of the job durations are also represented in a coordinate system in Figure 1 for the permutation π 1 = ( J 1 , J 2 , , J 8 ) S . The abscissa axis indicates the segments [ p i L , p i U ] determining durations of the jobs. The ordinate axis indicates all jobs J . There are three blocks in this instance. The jobs J 1 , J 2 , J 3 , J 4 , J 5 and J 7 belong to the block B 1 . The segment [ 6 , 7 ] is a core of the block B 1 . The jobs J 2 , J 3 , J 4 , J 5 , J 6 and J 7 belong to the block B 2 . The one-point segment [ 8 , 8 ] is a core of the block B 2 . The jobs J 4 , J 5 , J 6 , J 7 and J 8 belong to the block B 3 . The segment [ 10 , 11 ] is a core of the block B 3 . The jobs J 2 , J 3 , J 4 , J 5 , J 6 and J 7 are non-fixed jobs. The jobs J 1 and J 8 are fixed in their blocks.
Due to the optimality criterion (2) for the permutation π k S given in Theorem 1, one can distinguish three types of segments for each job J k r J , which characterize a possibility for the permutation π k = ( J k 1 , J k 2 , , J k n ) to be optimal, namely:
the segment of optimality [ l k r o p t , u k r o p t ] [ p k r L , p k r U ] ;
the segment of conditional optimality [ l k r c o p t , u k r c o p t ] [ p k r L , p k r U ] ;
and the segment of non-optimality [ l k r n o n , u k r n o n ] [ p k r L , p k r U ] .
The segment of optimality [ l k r o p t , u k r o p t ] for the job J k r in the permutation π k is formally determined in Definition 1 and Remark 1.
The segment of non-optimality for the job J k r in the permutation π k = ( J k 1 , J k 2 , , J k n ) S is a maximal (with respect to the inclusion) segment [ l k r n o n , u k r n o n ] [ p k r L , p k r U ] such that for any point p k r ( l k r n o n , u k r n o n ) , the permutation π k = ( J k 1 , J k 2 , , J k n ) cannot be optimal for an instance 1 | p | C i with any scenario p = ( , p k r , ) T . Thus, due to the necessary and sufficient condition (2) for the permutation π k S to be optimal for the instance 1 | p | C i , we conclude that either there exists a job J k v J such that the inequality r < v holds along with the following condition:
p k v U = l k r n o n < p k r U = u k r n o n
or there exists a job J k w J such that w < r and the following condition holds:
l k r n o n = p k r U < u k r n o n = p k w L .
Furthermore, due to Definition 1, the segment [ l k r n o n , u k r n o n ] of non-optimality for the job J k r in the permutation π k = ( J k 1 , J k 2 , , J k n ) has no common point with the open interval ( l k r o p t , u k r o p t ) of optimality for the job J k r :
[ l k r n o n , u k r n o n ] ( l k r o p t , u k r o p t ) = .
In Figure 1, the segments of non-optimality for all jobs J i J in the permutation π 1 = ( J 1 , J 2 , , J 8 ) are double-shaded.
The segment of conditional optimality for the job J k r in the permutation π k = ( J k 1 , J k 2 , , J k n ) S is a maximal (with respect to the inclusion) segment [ l k r c o p t , u k r c o p t ] [ p k r L , p k r U ] such that each point p k r [ l k r c o p t , u k i c o p t ] does not belong to the open interval of non-optimality, p k r ( l k r n o n , u k r n o n ) , and there exists a job J k d J , d r , with the following inclusion: p k r [ p k d L , p k d U ] . Thus, one can conclude that for some points p k u [ l k r c o p t , u k r c o p t ] , the permutation π k S is optimal for the instance 1 | p | C i , where p = ( , p k u , ) T , while for other points p k v [ l k r c o p t , u k r c o p t ] , the permutation π k S cannot be optimal for the instance 1 | p | C i , where p = ( , p k v , ) T .
The segment [ l k r c o p t , u k r c o p t ] of conditional optimality for the job J k r in the permutation π k = ( J k 1 , J k 2 , , J k n ) S has no common point with the open interval of optimality ( l k r o p t , u k r o p t ) and no common point with the open interval of non-optimality ( l k r n o n , u k r n o n ) :
[ l k r c o p t , u k r c o p t ] ( l k r o p t , u k r o p t ) = ;
[ l k r c o p t , u k r c o p t ] ( l k r n o n , u k r n o n ) = .
If the segment [ l k r c o p t , u k r c o p t ] of conditional optimality is empty for the job J k r J , we say that this job J k r has no conditional optimality in the permutation π k .
In Figure 1, all segments of conditional optimality for the jobs J i J in the permutation π 1 = ( J 1 , J 2 , , J 8 ) are shaded.
Remark 3.
Due to Theorem 1, for each job J i J in the permutation π k S , there may exist at most one segment of optimality, at most two segments of conditional optimality and at most two segments of non-optimality.
In Figure 1, job J 4 has one segment [ 4 , 6 ] of non-optimality and one segment of conditional optimality [ 6 , 11 ] . Job J 5 has two segments of non-optimality [ 2 , 6 ] and [ 11 , 14 ] and one segment of conditional optimality [ 6 , 11 ] .
The following claim is based on Remark 3 and the above definitions of the segments of optimality, non-optimality and conditional optimality.
Lemma 4.
Each segment [ p k r L , p k r U ] of possible durations of the job J k r J is the union of the segments of optimality, non-optimality and conditional optimality for the job J k r in the permutation π k = ( J k 1 , J k 2 , J k n ) S .
We next show that for constructing the optimality region OR ( π k , T ) for the permutation π k = ( J k 1 , J k 2 , , J k n ) S , it is sufficient to construct the optimality region for the instance 1 | p ^ i L p i p ^ i U | C i with the reduced segments of job durations: [ p ^ i L , p ^ i U ] [ p i L , p i U ] . To construct the reduced segments for the permutation π k = ( J k 1 , J k 2 , , J k n ) S , we use the equalities (9) for all jobs J k r { J k 1 , J k 2 , , J k n } = J :
p ^ k r L = max 1 j r n p k j L , p ^ k r U = min 1 r j n p k j U .
We denote T ^ = [ p ^ 1 L , p ^ 1 U ] × [ p ^ 2 L , p ^ 2 U ] × × [ p ^ n L , p ^ n U ] . One can prove the following claim similarly to the proof of Theorem 2 proven in [24].
Theorem 5.
The optimality region for the permutation π k = ( J k 1 , J k 2 , , J k n ) S for the instance 1 | p i L p i p i U | C i is equal to the optimality region for the same permutation for the instance 1 | p ^ i L p i p ^ i U | C i with the reduced segments [ p ^ i L , p ^ i U ] of the possible durations of jobs J i J determined in (9).
Figure 2 represents the segments of non-optimality and conditional optimality for jobs J i J in the permutation π 2 = ( J 1 , J 2 , J 4 , J 5 , J 6 , J 8 , J 7 , J 3 ) S for the instance 1 | p i L p i p i U | C i with the input data T given in Table 1.
From Definition 3 and Theorem 5, one can directly derive the following claim.
Lemma 5.
For the instance 1 | p ^ i L p i p ^ i U | C i with the reduced segments [ p ^ i L , p ^ i U ] , J i J , of the job durations determined in (9), the open interval of optimality ( l k r o p t , u k r o p t ) for the job J k r in the permutation π k S has no common point with the segment [ p k d L , p k d U ] of possible durations of any job J k d J , d r , i.e., the following equality holds:
( l k r o p t , u k r o p t ) [ p k d L , p k d U ] = .
We next prove a criterion for the extreme case when the equality OR ( π k , T ) = holds.
Theorem 6.
The optimality region OR ( π k , T ) for the permutation π k = ( J k 1 , J k 2 , , J k n ) S is empty, if and only if there exists at least one job J k r J with the inequality p k r L < p k r U in the permutation π k , which has no segment of optimality and no conditional optimality.
Proof. 
Sufficiency. Let there exist a job J k r J in the permutation π k = ( J k 1 , J k 2 , , J k n ) , which has no segment of optimality and no conditional optimality. Due to the inequality p k r L < p k r U and Lemma 4, the relations [ l k r n o n , u k r n o n ] = [ p k r L , p k r U ] hold, and either there exists a job J k v J such that r < v and the condition (4) holds or there exists a job J k w J such that w < r and the condition (5) holds.
In the former case, the inequality p k v < p k r holds for each duration p k r [ p k r L , p k r U ] of the job J k r and for each duration p k v [ p k v L , p k v U ] of the job J k v . In the latter case, the inequality p k w > p k r holds for each duration p k r [ p k r L , p k r U ] of the job J k r and for each duration p k w [ p k w L , p k w U ] of the job J k w .
Due to Theorem 1, in both cases the permutation π k cannot be optimal for the instance 1 | p | C i with any scenario p T . Hence, the optimality region for the permutation π k = ( J k 1 , J k 2 , , J k n ) S is empty: OR ( π k , T ) = . Sufficiency is proven.
Necessity. We prove necessity by a contradiction. Let the equality OR ( π k , T ) = hold. However, we assume that there is no job J k r J with the inequality p k r L < p k r U in the permutation π k = ( J k 1 , J k 2 , , J k n ) S , which has no segment of optimality and no conditional optimality.
Due to Definition 3, the equality OR ( π k , T ) = means that there is no scenario p T such that the permutation π k is optimal for the instance 1 | p | C i with the scenario p.
However, we show next how to construct a scenario p T ^ with the inclusion p OR ( π k , T ^ ) . If the segment [ l k i o p t , u k i o p t ] of optimality of the job J k i in the permutation π k is not empty, then there exists a point p k i [ l k i o p t , u k i o p t ] . We choose the value of p k i as the duration of the job J k i .
If the segment [ l k j o p t , u k j o p t ] of optimality of the job J k j in the permutation π k is empty, then due to the above assumption, the segment [ l k j c o p t , u k j c o p t ] of conditional optimality for the job J k j in the permutation π k is not empty. We choose the value of l k j c o p t as the duration of the job J k j , i.e., p k j = l k j c o p t . Thus, we determine the scenario p = ( p k 1 , p k 2 , , p k n ) . From the equalities (7) and (8) and Lemma 5 with the equality (10), it follows that the permutation π k is optimal for the instance 1 | p | C i with the scenario p . Thus, p OR ( π k , T ^ ) and the relations OR ( π k , T ^ ) = OR ( π k , T ) hold contradicting to our assumption that OR ( π k , T ) = . The proof of Theorem 6 is completed. □
From Theorem 6, one can directly derive the following claim.
Corollary 1.
If the condition OR ( π k , T ) holds, then the dimension of the optimality region OR ( π k , T ) is equal to n.
In Figure 1, there is no job J i J in the permutation π 1 = ( J 1 , J 2 , , J 8 ) S , which has no segment of optimality and no conditional optimality. Thus, due to Theorem 6, the optimality region for the permutation π 1 S is not empty, i.e., OR ( π 1 , T ) .
In Figure 2, for the segment [ l 3 n o n , u 3 n o n ] = [ 6 , 9 ] of non-optimality for the job J 3 in the permutation π 2 = ( J 1 , J 2 , J 4 , J 5 , J 6 , J 8 , J 7 , J 3 ) , the following equalities [ l 3 n o n , u 3 n o n ] = [ 6 , 9 ] = [ p 3 L , p 3 U ] hold. Thus, there exists a job J 3 = J k r J in the permutation π 2 = π k = ( J k 1 , J k 2 , , J k n ) S , which has no segment of optimality and no conditional optimality. Due to Theorem 6, one can conclude that the optimality region for the permutation π 2 = ( J 1 , J 2 , J 4 , J 5 , J 6 , J 8 , J 7 , J 3 ) S is empty, i.e., OR ( π 2 , T ) = .
We next prove a criterion for another extreme case for the optimality region OR ( π k , T ) , namely, we prove the necessary and sufficient condition for the equality OR ( π k , T ) = T when the optimality region is maximally possible.
Theorem 7.
The optimality region for the permutation π k = ( J k 1 , J k 2 , , J k n ) S is maximally possible (i.e., the equality OR ( π k , T ) = T holds), if and only if for each job J k r J in the permutation π k the following equality holds:
[ l k r o p t , u k r o p t ] = [ p k r L , p k r U ] .
Proof. 
Sufficiency. Let the equality (11) hold for each job J k r J in the permutation π k = ( J k 1 , J k 2 , , J k n ) .
Due to Definition 1 and Remark 1, the following equalities hold: OB ( π k , T ) = × k r M [ l k r , u k r ] = × k r M [ l k r o p t , u k r o p t ] = × k r M [ p k r L , p k r U ] = T , where M = { 1 , 2 , , n } . From Definition 1, it follows that the permutation π k is optimal for the instance 1 | p | C i with any scenario p OB ( π k , T ) = T . Thus, due to Definition 3, we obtain the desired equality OR ( π k , T ) = T . Sufficiency is proven.
Necessity. Let the equality OR ( π k , T ) = T hold. However, we assume that there is a job J k r J in the permutation π k = ( J k 1 , J k 2 , , J k n ) Π such that the equality (11) does not hold.
Due to Lemma 4, either there exists a segment of non-optimality [ l k r n o n , u k r n o n ] or a segment of conditional optimality [ l k r c o p t , u k r c o p t ] for job J k r J in the permutation π k = ( J k 1 , J k 2 , , J k n ) . In the former case, the equality (6) holds. In the latter case, the equality (8) holds.
Thus, in both cases, there exists a scenario p = ( , p k r , ) T , where p k r ( l k r n o n , u k r n o n ) ( l k r c o p t , u k r c o p t ) , such that the permutation π k is not optimal for the instance 1 | p | C i with the scenario p T . Hence, due to Definition 3 we obtain a contradiction OR ( π k , T ) T with the above assumption. This contradiction completes the proof of Theorem 7. □
In the rest of this paper, we show how to use the above results for solving the uncertain scheduling problem 1 | p i L p i p i U | C i approximately.

4. Algorithms for Calculating a Quasi-Perimeter of the Optimality Region for the Fixed Permutation

We next present Algorithm 1 for testing the equality OR ( π k , T ) = . If it appears that the optimality region is not empty for the permutation π k , i.e., OR ( π k , T ) , then Algorithm 1 constructs an instance 1 | p ^ i L p i p ^ i U | C i with the reduced segments T ^ of possible durations for the jobs J .
Algorithm 1: Construction of the instance with the reduced segments of possible durations
Input: The segments [ p i L , p i U ] for all jobs J i J ;
    the permutation π k = ( J k 1 , J k 2 , , J k n ) S .
Output: The reduced segments [ p ^ i L , p ^ i U ] for all jobs J i J if OR ( π k , T ) .
Step 1: 
Set p ^ k 1 L = p k 1 L , t L = p k 1 L , r = 2 ;
Step 2: 
IF p k r U t L THENGOTO step 3 ELSE [ l k r n o n , u k r n o n ] = [ p k r L , p k r U ] ;
GOTO step 6;
Step 3: 
IF p k r L > t L THEN Set t L = p k r L , p ^ k r L = t L , r : = r + 1 ;
ELSE Set p ^ k r L = t L , r : = r + 1 ;
Step 4: 
IF r n THEN GOTO step 2 ELSE Set p ^ k n U = p k n U , t U = p k n U ;
Step 5: 
FOR r = n 1 to 1 STEP -1 DO
IF p k r U < t U THEN Set t U = p k r U , p ^ k r U = t U ELSE Set p ^ k r U = t U ;
END FOR STOP
Step 6: 
OR ( π k , T ) = STOP.
In steps 1, 2, 3 and 6 of Algorithm 1, the equality OR ( π k , T ) = is tested. If OR ( π k , T ) , then the problem 1 | p ^ i L p i p ^ i U | C i with the reduced segments T ^ of the feasible durations of the jobs J is constructed in steps 2–5. It takes O ( n ) time to realize Algorithm 1.

4.1. A Quasi-Perimeter of the Optimality Region OR ( π k , T )

Due to Theorem 5, the optimality region for the permutation π k S for the problem 1 | p i L p i p i U | C i coincides with the optimality region for the same permutation π k for the problem 1 | p ^ i L p i p ^ i U | C i with the reduced segments T ^ of the feasible durations of the jobs J . Therefore, in what follows, we consider the problem 1 | p ^ i L p i p ^ i U | C i instead of the problem 1 | p i L p i p i U | C i .
Definition 4.
A maximal permutation s v π k = ( J k v , J k v + 1 , , J k m v ) , where 1 v m v n and | s v π k | = m v , is called a section of the permutation π k S , if for each real number d ( p ^ k v L , p ^ k m v U ) , there exists a job J k i with i { v , v + 1 , , m v } such that the inclusion d ( p ^ k i L , p ^ k i U ) holds. The segment [ p ^ k v L , p ^ k m v U ] is called a scope of the section s v π k . The section s v π k consisting of a single job, s v π k = ( J k v ) , is called a trivial section.
It is clear that for each fixed permutation π k S , a set of all sections { s 1 π k , s m 1 + 1 π k , , s w π k } = : S ( π k ) is uniquely determined. Note that index w in the last section s w π k coincides with index w of the job J k w , which is the first job in the section s w π k = ( J k w , J k w + 1 , , J k m w ) of the permutation π k .
Remark 4.
Definition 4 implies that each job J k i J either belongs to a single section of the permutation π k or this job does not belong to any section of the permutation π k . Furthermore, if there exists at least one job J k i J , which does not belong to any section from the set S ( π k ) , then this job has no segment of optimality and no conditional optimality and, due to Theorem 6, the equality OR ( π k , T ) = holds.
From Remark 4 and Theorem 6, one can derive the following claim.
Corollary 2.
The condition OR ( π k , T ) holds if and only if π k = ( s 1 π k , s m 1 + 1 π k , , s w π k ) .
If the section s v π k S ( π k ) is trivial, i.e., the equality s v π k = ( J k v ) holds, then [ p ^ k v L , p ^ k v U ] is a scope of the section s v π k . If the section s j π k S ( π k ) is not trivial and OR ( π k , T ) , then we partition the scope [ p ^ k j L , p ^ k m j U ] of the section s j π k S ( π k ) into the maximal (with respect to the inclusion) semi-intervals of the optimality and conditional optimality:
[ p ^ k j L , p ^ k m j U ] = [ l 1 j ( s j π k ) , u 1 j ( s j π k ) ) [ l 2 j ( s j π k ) , u 2 j ( s j π k ) ) [ l n ( j ) j ( s j π k ) , u n ( j ) j ( s j π k ) ] .
In the equality (12), the semi-intervals [ l i j ( s j π k ) , u i j ( s j π k ) differ one from another in a way such that for different subsets J i j = { J k i , J k i + 1 , , J k | J i j | } of the set of jobs { J k j , J k j + 1 , , J k m j } , where j i m j , the inclusion [ l i j ( s j π k ) , u i j ( s j π k ) ] [ p ^ k r L , p ^ k r U ] holds for each job J k r J i j . Let J ^ i j = ( J k i , J k i + 1 , , J k | J i j | ) denote a permutation of all jobs from the set J i j = { J k i , J k i + 1 , , J k | J i j | } . Note that the permutation J ^ i j is a part of the permutation π k , where index i in the permutation J ^ i j coincides with index i of the job J k i , which is the first job in the permutation J ^ i j .
Let the condition OR ( π k , T ) hold. We can calculate a quasi-perimeter of the optimality region OR ( π k , T ) . We define a quasi-perimeter P e r ( π k , T ) of the optimality region OR ( π k , T ) as a sum of all lengths (cardinalities) of the segments (sets) O S ( J k r , π k ) , where jobs J k r J occupy optimal positions in the permutation π k :
P e r ( π k , T ) = r = 1 n O S ( J k r , π k ) .
A sum of the lengths (of the cardinalities) O S ( J k r , π k ) for the job J k r J in the permutation π k may be calculated as follows:
O S ( J k r , π k ) = ( u k r o p t l k r o p t ) + O S k r c o p t ,
where the value of ( u k r o p t l k r o p t ) is a length of the segment [ l k r o p t , u k r o p t ] of the optimality for the job J k r in the permutation π k . In the equality (14), the value of O S k r c o p t determines a cardinality of the optimality subset, which is based on a single segment [ l k r c o p t , u k r c o p t ] or on both segments [ l k r c o p t , u k r c o p t ] and [ l k r ( c o p t ) , u k r ( c o p t ) ] (see Remark 3) of the conditional optimality of the job J k r in the permutation π k .
To calculate the value of O S ( J k r , π k ) = ( u k r o p t l k r o p t ) + O S k r c o p t , we use the partition (12) of the scope [ p ^ k j L , p ^ k m j U ] of the section s j π k S ( π k ) such that the job J k r belongs to the set J i j = { J k i , J k i + 1 , , J k | J i j | } determined for the section s j π k , i.e., the inequalities j r m j hold. Because of the condition OR ( π k , T ) , one can conclude (due to remark 4) that there exists a single section s j π k containing the job J k r . The value of O S ( J k r , π k ) may be calculated as follows:
O S ( J k r , π k ) = ( u k r o p t l k r o p t ) + O S k r c o p t = [ l i j ( s j π k ) , u i j ( s j π k ) ] [ p ^ k r L , p ^ k r U ] u i j ( s j π k ) l i j ( s j π k ) | J i j | .
The correctness of the equality (15) follows from the fact that the cardinality O S ( J k r , [ l i j ( s j π k ) , u i j ( s j π k ) ] ) of the optimality subset for the job J k r , which is based on the semi-interval [ l i j ( s j π k ) , u i j ( s j π k ) ) of the optimality or conditional optimality for the job J r r , is equal to the following fraction:
O S ( J k r , [ l i j ( s j π k ) , u i j ( s j π k ) ] ) = u i j ( s j π k ) l i j ( s j π k ) | J i j | ,
since, due to Theorem 1, a position of the job J k r may be optimal in the permutation π k S , only if the following | J i j | inequalities (17) hold:
p k r p k v , if r < v , J k v J i j ; p k r p k d , if d < r , J k d J i j ; l i j ( s j π k ) p k r u i j ( s j π k ) .

4.2. How to Calculate a Quasi-Perimeter for the Fixed Permutation

We next demonstrate the above notations and formulas on the calculation of the quasi-perimeter P e r ( π k , T ) for the permutation π k = π 3 = ( J 5 , J 1 , J 2 , J 3 , J 4 , J 6 , J 8 , J 7 ) = ( J k 1 , J k 2 , , J k 8 ) presented in Figure 3.
For the permutation π k = π 3 , there exists a single section s 1 π k = s 1 π 3 = ( J 5 , J 1 , J 2 , J 3 , J 4 , J 6 , J 8 , J 7 ) = π 3 , S ( π 3 ) = { s 1 π 3 } = { π 3 } , with the scope [ p ^ k 1 L , p ^ k 8 U ] = [ p ^ 5 L , p ^ 7 U ] = [ 2 , 17 ] . We obtain the following partition (12) of the scope [ p ^ 5 L , p ^ 7 U ] :
[ p ^ k 1 L , p ^ k 8 U ] = [ 2 , 17 ] = [ 2 , 5 ) [ 5 , 6 ) [ 6 , 7 ) [ 7 , 8 ) [ 8 , 9 ) [ 9 , 10 ) [ 10 , 11 ) [ 11 , 12 ) [ 12 , 17 ] .
For the obtained nine semi-intervals l i 1 ( s π 3 ) in the above partition of the scope [ p ^ k 1 L , p ^ k 8 U ] , the following equalities hold: J ^ 1 1 = ( J 5 ) , J ^ 2 1 = ( J 5 , J 1 , J 2 ) , J ^ 3 1 = ( J 5 , J 1 , J 2 , J 3 , J 4 ) , J ^ 4 1 = ( J 2 , J 3 , J 4 ) , J ^ 5 1 = ( J 3 , J 4 , J 6 ) , J ^ 6 1 = ( J 4 , J 6 ) , J ^ 7 1 = ( J 4 , J 6 , J 8 , J 7 ) , J ^ 8 1 = ( J 8 , J 7 ) , J ^ 9 1 = ( J 7 ) . Using the equality (14), we calculate the optimality set O S ( J k 1 , π k ) = O S ( J 5 , π 3 ) for the job J k 1 = J 5 in the permutation π k = π 3 as follows:
O S ( J k 1 , π k ) = O S ( J 5 , π 3 ) = ( u 5 o p t l 5 o p t ) + O S 5 c o p t = ( 5 2 ) + O S 5 c o p t = 3 + 1 3 + 1 5 = 3 8 15 ,
where the value of O S 5 c o p t is calculated based on the equality (15), namely: O S k 1 c o p t = [ l i 1 ( s 1 π 3 ) , u i 1 ( s 1 π 3 ) ] [ p ^ k 1 L , p ^ k 1 U ] u i 1 ( s 1 π 3 ) l i 1 ( s 1 π 3 ) | J i 1 | = 6 5 3 + 7 6 5 = 8 15 .
A cardinality of the optimality set O S 5 c o p t is illustrated on Figure 4, where the pyramid PCO { J k 1 [ l k 1 1 , u k 1 1 ) ] J ^ 1 1 } = PCO { J 5 [ 5 , 6 ] ( J 5 , J 1 , J 2 ) } of the optimality subset O S 5 c o p t for the job J 5 , which is based on the semi-interval [ 5 , 6 ) for the permutation J ^ 1 1 = ( J 5 , J 1 , J 2 ) that is a part of the permutation π 3 . The volume of the pyramid PCO { J 5 [ 5 , 6 ] ( J 5 , J 1 , J 2 ) } is determined by the system of inequalities (17), where π k = π 3 , J k r = J 3 1 = J 5 , J i j = J 1 1 .
Similarly, we can calculate the following values: O S ( J k 2 , π k ) = O S ( J 1 , π 3 ) = 8 15 , O S ( J k 3 , π k ) = O S ( J 2 , π 3 ) = 13 15 , O S ( J k 4 , π k ) = O S ( J 3 , π 3 ) = 13 15 , O S ( J k 5 , π k ) = O S ( J 4 , π 3 ) = 1 37 60 , O S ( J k 6 , π k ) = O S ( J 6 , π 3 ) = 1 1 12 , O S ( J k 7 , π k ) = O S ( J 8 , π 3 ) = 3 4 , O S ( J k 8 , π k ) = O S ( J 7 , π 3 ) = 5 3 4 . Using the equality (13), we calculate the quasi-perimeter of the optimality region for the permutation π 3 as follows: P e r ( π 3 , T ) = r = 1 8 O S ( J 3 r , π 3 ) = 3 8 15 + 8 15 + 13 15 + 13 15 + 1 37 60 + 1 1 12 + 3 4 + 5 3 4 = 15 .
It should be noted that the above quasi-perimeter P e r ( π 3 , T ) is equal to the length 15 = 17 2 of the scope [ p ^ 3 1 L , p ^ 3 8 U ] = [ 2 , 17 ] of the single section s 1 π 3 of the permutation π 3 = s 1 π 3 . The following theorem shows that such an equality is not accidental.
Theorem 8.
If the condition OR ( π k , T ) holds, one can calculate the quasi-perimeter P e r ( π k , T ) of the optimality region for the permutation π k S as follows:
P e r ( π k , T ) = s j π k S ( π k ) ( p ^ k m j U p ^ k j L ) ,
where ( p ^ k m j U p ^ k j L ) is a length of the scope of the section s j π k S ( π k ) .
Proof. 
Due to Corollary 2, the above condition OR ( π k , T ) implies the equality π k = ( s j π k , s m j + 1 π k , , s w π k ) . Therefore, the following equality also holds:
P e r ( π k , T ) = s j π k S ( π k ) P e r ( s j π k , T ) ,
where P e r ( s j π k , T ) denotes a quasi-perimeter of the optimality region for the section s j π k . Let O S ( J i j , π k ) denote a quasi-perimeter of the optimality region for the permutation J ^ i j = ( J k i , J k i + 1 , , J k | J i j | ) of all jobs from the set J i j = { J k i , J k i + 1 , , J k | J i j | } .
For calculating the quasi-perimeter P e r ( π k , T ) of the optimality region OR ( π k , T ) , we will use a summation of the values O S ( J k r , [ l i j ( s j π k ) , u i j ( s j π k ) ] ) through all jobs J k r in the permutation J ^ r j . Thus, instead of the formulas (13)–(15), we use the equality (16) and the equalities (20) and (21):
P e r ( s j π k , T ) = i = j m j O S ( J i j , π k ) ,
O S ( J i j , π k ) = r = i | J i j | O S ( J k r , [ l i j ( s j π k ) , u i j ( s j π k ) ] ) .
The equality (20) follows from the above definition of P e r ( s j π k , T ) . The equality (21) follows from the definition of O S ( J i j , π k ) . Using the equalities (16) and (21) we obtain
O S ( J i j , π k ) = r = i | J i j | O S ( J k r , [ l i j ( s j π k ) , u i j ( s j π k ) ] ) = | J i j | u i j ( s j π k ) l i j ( s j π k ) | J i j | = u i j ( s j π k ) l i j ( s j π k ) .
Using the equalities (20) and (22) we obtain
P e r ( s j π k , T ) = i = j m j u i j ( s j π k ) l i j ( s j π k ) = p ^ k m j U p ^ k j L .
Using the equalities (19) and (23) we obtain the desired equality (18) as follows:
P e r ( π k , T ) = s j π k S ( π k ) P e r ( s j π k , T ) = s j π k S ( π k ) ( p ^ k m j U p ^ k j L ) .
Theorem 8 is proven. □

5. The Largest Quasi-Perimeter of the Optimality Region OR ( π k , T ) for the Problem 1 | p ^ i L p i p ^ i U | C i

We call the permutation π k S an effective permutation, if this permutation has the largest quasi-perimeter P e r ( π k , T ) of the optimality region OR ( π k , T ) among all permutations in the set S. The following claim follows directly from Theorem 8.
Corollary 3.
If the following equality holds:
s j π k S ( π k ) ( p ^ k m j U p ^ k j L ) = p ^ k n U p ^ k 1 L
for the permutation π k S , then this permutation is effective.
Since the equality (24) holds for the permutation π 3 = ( J 5 , J 1 , J 2 , J 3 , J 4 , J 6 , J 8 , J 7 ) , one can conclude that this permutation is effective due to Corollary 3.
We next show how to find an effective permutation π k S in the general case of the problem 1 | p ^ i L p i p ^ i U | C i . Similarly to the proof of Theorem 4 given in [23], we can prove the following claim.
Theorem 9.
Let all jobs from the set J be fixed in their blocks from the set B. Then the effective permutation π k S may be constructed in O ( n log n ) time.
Thus, due to Theorem 9, the main problem, which must be solved for the construction of the effective permutation π k S , is the optimal distribution of all non-fixed jobs between the effective sub-permutations of the jobs fixed in the block B 1 , those fixed in the block B 2 , and so on, those fixed in the block B m . Let J n o n denote a set of all non-fixed jobs of the set J . The following lemma shows that we also need to find optimal positions for some fixed jobs of the set J in the desired effective permutation π k S .
Theorem 10.
An effective sub-permutation of all jobs, which are fixed in the block B r = { J r 1 , J r 2 , , J r | B r | } B , exists if and only if there is no job J r d B r such that the following conditions hold simultaneously:
p r d L = min { p r i L : J r i B r } < min { p r i L : J r i B r { J r d } } ;
p r d U = max { p r i U : J r i B r } > max { p r i U : J r i B r { J r d } } .
Proof. 
Sufficiency. Let there be no job J r d B r such that conditions (25) and (26) hold.
Hence, there exist at least two different jobs J r i B r and J r j B r such that the inequalities p r i L = min { p r i L : J r i B r } and p r j U = max { p r i U : J r j B r } hold. The effective sub-permutation of all jobs, which are fixed in the block B r = { J r 1 , J r 2 , , J r | B r | } B , looks as follows ( J r i , , J r j ) , where all jobs from the set B r { J r i , J r j } are located between jobs J r i and J r j and their order may be arbitrary.
Necessity. Let there exist a job J r d B r such that both conditions (25) and (26) hold.
Hence, an optimal position of the job J r d is either the first position or the last position in the effective sub-permutation of all jobs, which are fixed in the block B r = { J r 1 , J r 2 , , J r | B r | } . This choice for the job J r d depends from the positions of other such jobs in the blocks B l B { B r } in the effective permutation π k and from the positions of jobs from the set J n o n in the effective permutation π k . □
The following Algorithm 2 is based on Theorem 10.
Algorithm 2: Construction of the effective permutation of the jobs fixed in the block B r
Input: The segments [ p r i L , p r i U ] for all jobs from the set J , which are fixed
    in the block B r = { J r 1 , J r 2 , , J r | B r | } , i { 1 , 2 , , | B r | } .
Output: The effective sub-permutation π B r = ( J r 1 , J r 1 , , J r | S r | ) of the subset
      S r of the set B r , S r B r , which are fixed in the block B r .
Step 1: 
Find a job J r i such that p r i L = min { p r j L : j { 1 , 2 , , | B r | } } ;
Step 2: 
Find a job J r k such that p r k U = max { p r j U : j { 1 , 2 , , | B r | } { i } } ;
Step 3: 
IF p r k U p r i U THEN π B r = ( J r i , , J r k ) , where jobs from the set
B r { J r i , J r k } are ordered arbitrarily, set S r 1 = , S r 2 = , S r = B r
GOTO step 11;
Step 4: 
Find a job J r l such that p r l L = min { p r j L : j { 1 , 2 , , | B r | } { i } } ;
Step 5: 
IF p r l L = p r i L THEN π B r = ( J r l , , J r i ) , where jobs from the set
B r { J r l , J r i } are ordered arbitrarily, set S r 1 = , S r 2 = , S r = B r
GOTO step 11;
Step 6: 
Find a job J r o such that p r o U = max { p r j U : j { 1 , 2 , , | B r | } { i , l } } ;
Step 7: 
IF p r o U p r l U THEN π B r = ( J r l , , J r o ) , where jobs B r { J r l , J r o , J r i } are
 ordered arbitrarily, set S r 1 = { J r i } , S r 2 = , S r = B r { J r i } GOTO step 11;
Step 8: 
Find a job J r q such that p r q L = min { p r j L : j { 1 , 2 , , | B r | } { i , l } } ;
Step 9: 
IF p r q L = p r l L THEN π B r = ( J r q , , J r l ) , where jobs from the set
B r { J r q , J r l , J r i } are ordered arbitrarily, set S r 1 = { J r i } , S r 2 = ,
S r = B r { J r i } GOTO step 11;
Step 10: 
π B r = ( J r 1 , , J | S r | ) , where jobs from the set S r = B r { J r i , J r l } are ordered
 arbitrarily, set S r 1 = { J r i } , S r 2 = { J r l } ;
Step 11: 
The obtained sub-permutation π B r is effective STOP.
The asymptotic complexity of Algorithm 2 is equal to O ( n ) . The set S r 1 is either empty or contains a single job J r d B r for which both conditions (25) and (26) hold. The set S r 2 is either empty or contains a single job J r z B r for which both conditions p r z L = min { p r i L : J r i B r { J r d } } < min { p r i L : J r i B r { J r d , J r z } } and p r z U = max { p r i U : J r i B r { J r d } } > max { p r i U : J r i B r { J r d , J r z } } hold.
Let J f i x denote a set of all jobs J r d B r , which are fixed in their blocks B r B and both conditions (25) and (26) hold. The following Algorithm 3 constructs an effective permutation π k S for the general case of the problem 1 | p i L p i p i U | C i .
Algorithm 3: Construction of the effective permutation π k S
Input: The segments [ p i L , p i U ] for all jobs J i J ;
    the effective sub-permutations π B r = ( J r 1 , J r 2 , , J r | S r | ) , sets S r 1 and sets S r 2
    for all blocks B r B .
Output: The effective job permutation π k S .
Step 1: 
Construct a sub-permutation π p = ( , π B 1 , , π B 2 , , π B m , ) ;
Step 1: 
FOR r = 1 to | B | DO
IF S r 2 = THEN l ^ r = p r 1 L , u ^ r = p r | S r | U ELSE
l ^ r = p r d L , u ^ r = p r d U , J r d S r 2 ;
END FOR
Step 2: 
Construct sets of jobs J f i x = r = 1 m S r 1 , J ˜ = J f i x J n o n , sort jobs of the set
J ˜ = { J f 1 , J f 2 , , J f | J ˜ | } by increasing of the mid-points of the segments
[ p f i L , p f i U ] , obtain set J ˜ = ( J f 1 , J f 2 , , J f | J ˜ | ) ;
Step 3: 
Construct set D = i = 1 n ( p i L p i U ) , sort set D by increasing D = ( b 1 , b 2 , , b q ) ,
1 q 2 n , construct intervals I i = [ b i , b i + 1 ] , i { 1 , 2 , , q 1 } ;
Step 4: 
S r e s = , N r e s = , s N u m R e s = 1 , k = 1 ,
l ^ m + 1 = max { p i U : i { 1 , 2 , , n } } , u ^ m + 1 = max { p i U : i { 1 , 2 , , n } } ;
Step 5: 
IF k | J ˜ | THEN i N u m = 1 , b N u m = 1 , s N u m = 1 , S k = , N k =
ELSE GOTO step 10;
Step 6: 
FOR j = 1 to q 1 DO
IF [ b j , b j + 1 ] ( p f k L , p f k U ) AND l ^ b N u m > b j THEN S k s N u m : = S k s N u m I j ;
IF u ^ b N u m = b j + 1 THEN b N u m : = b N u m + 1 ;
IF u ^ b N u m 1 = b j + 1 AND S k s N u m THEN N k s N u m : = b N u m 1 ,
s N u m : = s N u m + 1 ;
END FOR
Step 7: 
s = 1 , S t m p = ;
FOR i = 1 to s N u m 1 DO
FOR j = 1 to s N u m R e s DO
   S t m p s = S r e s j S k i , N t m p s = ( N r e s j , N k i ) , s : = s + 1 ;
END FOR
END FOR
Step 8: 
j = 1 , S d = , N d = ;
WHILE j < s DO i = 1 ;
WHILE i < s DO
  IF S t m p i S t m p j AND i j AND S t m p j S d THEN
   S d : = S d S t m p i , N d : = N d N t m p i ; i : = i + 1 ;
END j : = j + 1 ;
END S n d : = S t m p S d , N n d : = N t m p N d ;
Step 9: 
S r e s = S n d , N r e s = N n d , s N u m R e s = | S r e s | , k : = k + 1 GOTO step 5;
Step 10: 
m a x P = 0 ;
FOR i = 1 to s N u m R e s DO P = 0 ;
FOR EACH I j IN S r e s i DO P : = P + b j + 1 b j END FOR;
IF P > m a x P THEN m a x P = P , m a x N u m = i END FOR
Step 11: 
FOR x = 1 to m + 1 DO S x = END FOR
FOR k = 1 to | J ˜ | DO x = N m a x N u m k , S x : = S x J k ; END FOR
Step 12: 
u ^ 0 = min { p i L : i { 1 , 2 , , n } } ;
FOR x = 1 to m + 1 DO sort jobs of the set S x by increasing of the
 mid-points of the segments [ max { p i L , u ^ x 1 } , min { p i U , l ^ x } ] and obtain
 sub-permutation π r x ;
END FOR
Step 1: 
FOR x = 1 tomDO
IF S x 2 = THEN π k = ( π k , π r x , π B x ) ELSE
  IF S x 1 S x THEN π k : = ( π k , π r x , π B x , S x 2 ) ELSE
   π k : = ( π k , π r x , S x 2 , π B x ) ;
END FOR
π k : = ( π k , S m + 1 ) STOP.

6. Computational Results

In the computational experiments, we tested six classes of hard instances 1 | p i L p i p i U | C i . Algorithms 1–3 were coded in C# and tested on a PC with Intel Core (TM) 2 Quad, 2.5 GHz, 4.00 GB RAM. For all tested instances, inequalities p i L < p i U hold for all jobs J i J . Table 2 presents computational results for randomly generated instances of the problem 1 | p i L p i p i U | C i with n {50, 100, 500, 1000, 5000, 10,000}.
The segments of possible durations have been randomly generated as follows. An integer center C of the segment [ p i L , p i U ] was generated using a uniform distribution in the range [ 1 , 100 ] . The lower bound p i L of the possible duration p i was determined using the equality p i L = C · ( 1 δ 100 ) , where δ denotes the maximal relative error of the durations p i due to the given segments [ p i L , p i U ] . The upper bound p i U was determined using the equality p i U = C · ( 1 + δ 100 ) . For each job J i J , the point p ̲ i was generated using a uniform distribution in the range [ p i L , p i U ] . In order to generate instances, where all jobs J belonged to a single block, the segments [ p i L , p i U ] of the possible durations were modified as follows: [ p ˜ i L , p ˜ i U ] = [ p i L + p ̲ p ̲ i , p i U + p ̲ p ̲ i ] , where p ̲ = max i = 1 n p ̲ i .
Since the inclusion p ̲ [ p ˜ i L , p ˜ i U ] holds, each constructed instance contained a single block, | B | = 1 . The maximum absolute error of the uncertain durations p i , J i J , is equal to max i = 1 n ( p i U p i L ) , and the maximum relative error of the uncertain durations p i , J i J , is not greater than 2 δ % . We say that these instances belong to class 1.
Three distribution laws were used in our computational experiments to determine the factual durations of the jobs. If inequality p i L < p i U holds, then the factual duration of the job J i becomes known only after completing the job J i .
We call the uniform distribution as the distribution law with number 1, the gamma distribution with the parameters α = 9 and β = 2 as the distribution law with number 2, and the gamma distribution with the parameters α = 4 , and β = 2 as the distribution law with number 3. In each instance of class 1, for generating the factual durations for different jobs of the set J , the number of the distribution law was randomly chosen from the set { 1 , 2 , 3 } . We solved 15 series of the randomly generated instances from class 1. Each series contained 10 instances with the same combination of n and δ .
In the computational experiments, we answered the question of how large the obtained relative error Δ = γ p k γ p t γ p t · 100 % of the value γ p k of the objective function γ = i = 1 n C i was for the effective permutation π k with respect to the actually optimal objective function value γ p t calculated for the factual durations p = ( p 1 , p 2 , , p n ) T , which were known after completing all the jobs.
The number n of jobs in the instance is given in column 1 in Table 2. The half of the maximum possible errors δ of the random durations (in percentage) is given in column 2. Column 3 gives the average error Δ for the effective permutation π k . Column 4 presents the average CPU-time in seconds. The smallest errors, average errors, largest errors for the tested series of the instances are presented in the last rows of Table 2.
In the second part of our computational experiments, Algorithms 1–3 were applied to randomly generated instances from other classes 2–6 of the problem 1 | p i L p i p i U | C i . We randomly generated non-fixed jobs J 1 , J 2 , , J s , which belong to blocks B 1 , B 2 , , B m of the randomly generated n s fixed jobs. The lower bound p i L and the upper bound p i U on the feasible values of p i R + 1 of the durations of the fixed jobs, p i [ p i L , p i U ] , were generated as follows.
We determined a bound of blocks [ b ˜ i L , b ˜ i U ] for generating the cores of the blocks [ b i L , b i U ] [ b ˜ i L , b ˜ i U ] and for generating the segments [ p i L , p i U ] for the durations of | B i | jobs from all blocks B i , i { 1 , 2 , , m } , [ b i L , b i U ] [ p i L , p i U ] [ b ˜ i L , b ˜ i U ] .
Each instance in class 2 or in class 3 had a single non-fixed job J v , whose bounds were determined as follows: p J v L b ˜ 1 L b ˜ 1 U < b ˜ 2 L b ˜ 2 U < b ˜ 3 L b ˜ 3 U p J v U . Classes 2 and 3 of the solved instances differed one from another by the numbers of non-fixed jobs and the distribution laws used for choosing the factual durations of the jobs J .
Each instance from classes 4 and 5 had two non-fixed jobs. In each instance from classes 2, 4, 5 and 6, for generating the factual durations for the jobs J , the numbers of the distribution laws were randomly chosen from the set { 1 , 2 , 3 } , and they were indicated in column 4 in Table 3. In the instances of class 6, the cores of the blocks were determined in order to generate different numbers of non-fixed jobs in different instances. The numbers of non-fixed jobs were randomly chosen from the set { 2 , 3 , , 8 } .
The numbers n of the jobs are presented in column 1 in Table 3. Column 2 represents the number | B | of blocks in the solved instance and column 3 the number of non-fixed jobs. The distribution laws used for determining the factual durations of the jobs are indicated in column 4 in Table 3. Column 6 presents average numbers λ of the maximal number of the variants of the non-dominated distributions of the jobs J f i x J n o n in the effective permutation π k while it was constructed on the iterations of Algorithm 3. Each solved series contained 10 instances with the same combination of n and the other parameters. The obtained smallest, average and largest values of Δ for each series of the tested instances are presented in column 5 in Table 3 at the end of series.

7. Concluding Remarks

The uncertain scheduling problem 1 | p i L p i p i U | C i attracts the attention of the researchers since this problem is applicable in real-life scheduling and is commonly used in many multiple-resource scheduling systems, where one of the available machines is the bottleneck and uncertain machine. The optimal scheduling decisions allow the plant to reduce the costs of productions due to a better utilization of the available machines.
In Section 2, Section 3, Section 4 and Section 5, we used a notion of the optimality region of a job permutation π k and proved useful properties of the optimality region OR ( π k , T ) . We investigated the permutation π k with the largest quasi-perimeter of the optimality region. Using these properties, we derived algorithms for constructing a job permutation π k with the largest quasi-perimeter of the optimality region OR ( π k , T ) .
From the computational experiments, it follows that the effective permutation π k is close to the optimal permutation, which can be determined after completing all jobs when their durations became known. We tested classes 1–6 of the problems 1 | p i L p i p i U | C i . The minimal, average and maximal errors Δ of the objective function values were 0 . 045986 , 0 . 313658 and 1 . 086983 , respectively, for the effective permutations.
An attractive direction for a further research is a generalization of the obtained results to the problem 1 | p i L p i p i U | w i C i , where the given jobs may have different weights. It is also useful to find precedence constraints on the set of jobs such that the effective job permutation may be constructed similarly to Section 5.

Author Contributions

Y.N. proved theoretical results; Y.N. and N.E. jointly conceived and designed the algorithms; N.E. performed the experiments; Y.N. and N.E. analyzed the data; Y.N. wrote the paper.

Funding

This research received no external funding.

Acknowledgments

The authors are grateful to anonymous referees for their useful remarks and suggestions.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Davis, W.J.; Jones, A.T. A real-time production scheduler for a stochastic manufacturing environment. Int. J. Prod. Res. 1988, 1, 101–112. [Google Scholar] [CrossRef]
  2. Pinedo, M. Scheduling: Theory, Algorithms, and Systems; Prentice-Hall: Englewood Cliffs, NJ, USA, 2002. [Google Scholar]
  3. Daniels, R.L.; Kouvelis, P. Robust scheduling to hedge against processing time uncertainty in single stage production. Manag. Sci. 1995, 41, 363–376. [Google Scholar] [CrossRef]
  4. Sabuncuoglu, I.; Goren, S. Hedging production schedules against uncertainty in manufacturing environment with a review of robustness and stability research. Int. J. Comput. Integr. Manuf. 2009, 22, 138–157. [Google Scholar] [CrossRef]
  5. Sotskov, Y.N.; Werner, F. Sequencing and Scheduling with Inaccurate Data; Nova Science Publishers: Hauppauge, NY, USA, 2014. [Google Scholar]
  6. Pereira, J. The robust (minmax regret) single machine scheduling with interval processing times and total weighted completion time objective. Comput. Oper. Res. 2016, 66, 141–152. [Google Scholar] [CrossRef]
  7. Grabot, B.; Geneste, L. Dispatching rules in scheduling: A fuzzy approach. Int. J. Prod. Res. 1994, 32, 903–915. [Google Scholar] [CrossRef]
  8. Kasperski, A.; Zielinski, P. Possibilistic minmax regret sequencing problems with fuzzy parameters. IEEE Trans. Fuzzy Syst. 2011, 19, 1072–1082. [Google Scholar] [CrossRef]
  9. Özelkan, E.C.; Duckstein, L. Optimal fuzzy counterparts of scheduling rules. Eur. J. Oper. Res. 1999, 113, 593–609. [Google Scholar] [CrossRef]
  10. Sotskov, Y.N.; Egorova, N.M.; Lai, T.-C. Minimizing total weighted flow time of a set of jobs with interval processing times. Math. Comput. Model. 2009, 50, 556–573. [Google Scholar] [CrossRef]
  11. Tanaev, V.S.; Sotskov, Y.N.; Strusevich, V.A. Scheduling Theory: Multi-Stage Systems; Kluwer Academic Publishers: Dordrecht, The Netherlands, 1994. [Google Scholar]
  12. Graham, R.L.; Lawler, E.L.; Lenstra, J.K.; Rinnooy Kan, A.H.G. Optimization and approximation in deterministic sequencing and scheduling. Ann. Discr. Appl. Math. 1979, 5, 287–326. [Google Scholar]
  13. Smith, W.E. Various optimizers for single-stage production. Naval Res. Logist. Q. 1956, 3, 59–66. [Google Scholar] [CrossRef]
  14. Burdett, R.L.; Kozan, E. Techniques to effectively buffer schedules in the face of uncertainties. Comput. Ind. Eng. 2015, 87, 16–29. [Google Scholar] [CrossRef]
  15. Goren, S.; Sabuncuoglu, I. Robustness and stability measures for scheduling: Single-machine environment. IIE Trans. 2008, 40, 66–83. [Google Scholar] [CrossRef]
  16. Kasperski, A.; Zielinski, P. A 2-approximation algorithm for interval data minmax regret sequencing problems with total flow time criterion. Oper. Res. Lett. 2008, 36, 343–344. [Google Scholar] [CrossRef]
  17. Kouvelis, P.; Yu, G. Robust Discrete Optimization and Its Application; Kluwer Academic Publishers: Boston, MA, USA, 1997. [Google Scholar]
  18. Lu, C.-C.; Lin, S.-W.; Ying, K.-C. Robust scheduling on a single machine total flow time. Comput. Oper. Res. 2012, 39, 1682–1691. [Google Scholar] [CrossRef]
  19. Yang, J.; Yu, G. On the robust single machine scheduling problem. J. Combin. Optim. 2002, 6, 17–33. [Google Scholar] [CrossRef]
  20. Lebedev, V.; Averbakh, I. Complexity of minimizing the total flow time with interval data and minmax regret criterion. Discr. Appl. Math. 2006, 154, 2167–2177. [Google Scholar] [CrossRef] [Green Version]
  21. Harikrishnan, K.K.; Ishii, H. Single machine batch scheduling problem with resource dependent setup and processing time in the presence of fuzzy due date. Fuzzy Optim. Decis. Mak. 2005, 4, 141–147. [Google Scholar] [CrossRef]
  22. Allahverdi, A.; Aydilek, H.; Aydilek, A. Single machine scheduling problem with interval processing times to minimize mean weighted completion times. Comput. Oper. Res. 2014, 51, 200–207. [Google Scholar] [CrossRef]
  23. Lai, T.-C.; Sotskov, Y.N.; Egorova, N.G.; Werner, F. The optimality box in uncertain data for minimising the sum of the weighted job completion times. Int. J. Prod. Res. 2018, 56, 6336–6362. [Google Scholar] [CrossRef]
  24. Sotskov, Y.N.; Egorova, N.M. Single machine scheduling problem with interval processing times and total completion time objective. Algorithms 2018, 75, 66. [Google Scholar] [CrossRef]
  25. Sotskov, Y.N.; Lai, T.-C. Minimizing total weighted flow time under uncertainty using dominance and a stability box. Comput. Oper. Res. 2012, 39, 1271–1289. [Google Scholar] [CrossRef]
Figure 1. The segments of non-optimality (double-shaded) and the segments of conditional optimality (shaded) for the jobs J i J in the permutation π 1 = ( J 1 , J 2 , , J 8 ) S .
Figure 1. The segments of non-optimality (double-shaded) and the segments of conditional optimality (shaded) for the jobs J i J in the permutation π 1 = ( J 1 , J 2 , , J 8 ) S .
Mathematics 07 00382 g001
Figure 2. The segments of non-optimality (double-shaded) and the segments of conditional optimality (shaded) for the jobs J i J in the permutation π 2 = ( J 1 , J 2 , J 4 , J 5 , J 6 , J 8 , J 7 , J 3 ) S .
Figure 2. The segments of non-optimality (double-shaded) and the segments of conditional optimality (shaded) for the jobs J i J in the permutation π 2 = ( J 1 , J 2 , J 4 , J 5 , J 6 , J 8 , J 7 , J 3 ) S .
Mathematics 07 00382 g002
Figure 3. The segments of optimality, non-optimality (double-shaded) and conditional optimality (shaded) for the jobs J i J in the permutation π 3 = ( J 5 , J 1 , J 2 , J 3 , J 4 , J 6 , J 8 , J 7 ) S .
Figure 3. The segments of optimality, non-optimality (double-shaded) and conditional optimality (shaded) for the jobs J i J in the permutation π 3 = ( J 5 , J 1 , J 2 , J 3 , J 4 , J 6 , J 8 , J 7 ) S .
Mathematics 07 00382 g003
Figure 4. The pyramid PCO { J k 1 [ l k 1 1 , u k 1 1 ) ] J ^ 1 1 } = PCO { J 5 [ 5 , 6 ] ( J 5 , J 1 , J 2 ) } of the optimality subset for the job J 5 , which is based on the semi-interval [ 5 , 6 ) for the permutation J ^ 1 1 = ( J 5 , J 1 , J 2 ) that is a part of the permutation π 3 .
Figure 4. The pyramid PCO { J k 1 [ l k 1 1 , u k 1 1 ) ] J ^ 1 1 } = PCO { J 5 [ 5 , 6 ] ( J 5 , J 1 , J 2 ) } of the optimality subset for the job J 5 , which is based on the semi-interval [ 5 , 6 ) for the permutation J ^ 1 1 = ( J 5 , J 1 , J 2 ) that is a part of the permutation π 3 .
Mathematics 07 00382 g004
Table 1. Input data for the instance of the problem 1 | p i L p i p i U | C i .
Table 1. Input data for the instance of the problem 1 | p i L p i p i U | C i .
i12345678
p i L 556428310
p i U 7891114111712
Table 2. Computational results for randomly generated instances with a single block (class 1).
Table 2. Computational results for randomly generated instances with a single block (class 1).
n δ (%) Δ C P U -Time (s)
1234
5010.0880660.028202
5050.292170.028702
50100.4517190.027502
10010.0838360.040702
10050.253030.040202
100100.4422340.038802
50010.0909230.162809
50050.2683530.160009
500100.4462250.162509
100010.095790.309918
100050.2664790.310618
1000100.4436480.312518
500010.0971441.196568
500050.2643831.531488
5000100.4550351.556389
10,00010.0949433.103378
10,00050.2650453.073576
10,000100.4525392.993571
Minimum0.0838360.027502
Average0.2694540.837637
Maximum0.4550353.103378
Table 3. Computational results for randomly generated instances from classes 2–6.
Table 3. Computational results for randomly generated instances from classes 2–6.
n | B | | J non | Laws Δ Average λ C P U -Time (s)
1234567
Class 2
50311,2,30.5420540.16921
100311,2,30.28125340.305017
500311,2,30.17759740.952555
1000311,2,30.12144741.561289
5000311,2,30.11105649.481842
10,000311,2,30.105322418.933383
Minimum0.10532240.16921
Average0.22312145.233883
Maximum0.54205418.933383
Class 3
503110.57503840.098006
1003110.28427940.334319
5003110.13273540.647537
10003110.11424541.389479
50003110.16037249.290531
10,0003110.149278412.189497
Minimum0.11424540.098006
Average0.23599143.991562
Maximum0.575038412.189497
Class 4
50321,2,30.6704086.50.408923
100321,2,30.4022516.20.791245
500321,2,30.0846876.23.866421
1000321,2,30.0841376.48.715098
5000321,2,30.0663056.235.98006
10,000321,2,30.0612586.278.877412
Minimum0.0612586.20.408923
Average0.2281746.321.43986
Maximum0.6704086.578.877412
Class 5
50521,2,30.49819716.20.969455
100521,2,30.157349152.035616
500521,2,30.069192156.832491
1000521,2,30.0599161513.53107
5000521,2,30.0459861586.01118
10,000521,2,30.04776515129.1963
Minimum0.045986150.969455
Average0.14640115.239.762685
Maximum0.49819716.2129.1963
Class 6
5022–41,2,31.0869833.90.496728
10022–41,2,30.83920740.945754
50022–61,2,30.8434483.84.976885
100022–81,2,30.8740783.613.604478
500022–81,2,30.7906343.771.244575
10,00022–81,2,30.7689253.7153.430476
Minimum0.7689253.60.496728
Average0.8672123.840.783149
Maximum1.0869834153.430476

Share and Cite

MDPI and ACS Style

Sotskov, Y.N.; Egorova, N.G. The Optimality Region for a Single-Machine Scheduling Problem with Bounded Durations of the Jobs and the Total Completion Time Objective. Mathematics 2019, 7, 382. https://doi.org/10.3390/math7050382

AMA Style

Sotskov YN, Egorova NG. The Optimality Region for a Single-Machine Scheduling Problem with Bounded Durations of the Jobs and the Total Completion Time Objective. Mathematics. 2019; 7(5):382. https://doi.org/10.3390/math7050382

Chicago/Turabian Style

Sotskov, Yuri N., and Natalja G. Egorova. 2019. "The Optimality Region for a Single-Machine Scheduling Problem with Bounded Durations of the Jobs and the Total Completion Time Objective" Mathematics 7, no. 5: 382. https://doi.org/10.3390/math7050382

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop