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

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.


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.

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 L i , p U i ], where the inequalities p U i ≥ p L i > 0 hold.The exact value p i ∈ [p L i , p U i ] 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 L i , p U i ]: . ., 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: 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 L i ≤ p i ≤ p U i | ∑ C i using the three-field notation α|β|γ [12], where α denotes the processing system, β characterizes conditions for processing the jobs and γ determines the criterion.

The Related Literature
If a scenario p ∈ T is fixed before scheduling (i.e., the equality [p L i , p U i ] = [p i , p i ] holds for each job J i ∈ J ), then the uncertain problem 1|p L i ≤ p i ≤ p U i | ∑ 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: 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 L i ≤ p i ≤ p U i | ∑ 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 L i ≤ p i ≤ p U i |γ, 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 γ k p − γ t p =: r(π k , p) is called the regret for the permutation π k .In the above notation r(π k , p), the objective function γ is equal to γ k p for the permutation π k under scenario p and the optimal value of the objective function γ is equal to γ t p 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) γ t p : 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 L i ≤ p i ≤ p U i | ∑ 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 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 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 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 Sections 3-6, we adopt the stability approach [5,10,[23][24][25] to the uncertain problem 1|p L i ≤ p i ≤ p U i | ∑ C i with the additional criterion of maximizing a quasi-perimeter of the optimality region introduced in Section 3.

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 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

Remark 1. Any variation p k i of the duration p k i of the job J k
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 The following theorem has been proven in [24].
Theorem 2. The optimality box for the permutation π k ∈ S for the problem In [23], it is shown that Theorem 2 remains correct for the problem 1|p L i ≤ p i ≤ p U i | ∑ 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 Definition 2. A maximal subset B r = {J r 1 , J r 2 , . . ., J r |Br | } of the set J , for which the inequality max where equalities b L r = max J r i ∈B r p L r i and b U r = min J r i ∈B r p U r i hold, is called a core of the block B r .
The following claim was proven in [23].
. ., 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 L r < b L s holds.
In what follows, we assume that all blocks in the set B = {B 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 .

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
defining all possible durations of the jobs J i ∈ J = {J 1 , J 2 , . . ., J 8 } are given in Table 1.The segments [p L i , p U i ] 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 L i , p U i ] 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 for the job J k r in the permutation π k is formally determined in Definition 1 and Remark 1.
Jobs J i 2 3 4 5 6 7 8 9 101112 14 17 The segments of non-optimality (double-shaded) and the segments of conditional optimality (shaded) for the jobs The segment of non-optimality for the job J k r in the permutation . ., 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: or there exists a job J k w ∈ J such that w < r and the following condition holds: Furthermore, due to Definition 1, the segment [l non k r , u non k r ] of non-optimality for the job J k r in the permutation 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 ] does not belong to the open interval of non-optimality, p * k r ∈ (l non k r , u non k r ), and there exists a job J k d ∈ J , d = r, with the following inclusion: ]. Thus, one can conclude that for some points [l If the segment [l copt k r , u copt k r ] 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.
The following claim is based on Remark 3 and the above definitions of the segments of optimality, non-optimality and conditional optimality.
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 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 L i ≤ p i ≤ p U i | ∑ C i with the reduced segments of job durations: 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 We denote One can prove the following claim similarly to the proof of Theorem 2 proven in [24].

Theorem 5. The optimality region for the permutation π
Figure 2 represents the segments of non-optimality and conditional optimality for jobs From Definition 3 and Theorem 5, one can directly derive the following claim.(l 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 L k r < p U k r 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 L k r < p U k r and Lemma 4, the relations [l non k r , u non k r ] = [p L k r , p U k r ] = ∅ 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 L k r , p U k r ] of the job J k r and for each duration In the latter case, the inequality p k w > p k r holds for each duration p k r ∈ [p L k r , p U k r ] of the job J k r and for each duration p k w ∈ [p L k w , p U k w ] 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 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 L k r < p U k r 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).
] of optimality of the job J k i in the permutation π k is not empty, then there ].We choose the value of p * k i as the duration of the job ] of optimality of the job J k j in the permutation π k is empty, then due to the above assumption, the segment [l ] of conditional optimality for the job J k j in the permutation π k is not empty.We choose the value of l copt k j as the duration of the job J k j , i.e., p * k j = l copt k j . Thus, we determine the scenario 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) = ∅.
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 Proof.Sufficiency.Let the equality (11) hold for each job Due to Definition 1 and Remark 1, the following equalities hold: 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 non k r , 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 non k r , u non k r ) (l copt k r , u copt k r ) = ∅, 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

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 L i ≤ p i ≤ p U i | ∑ C i with the reduced segments T of possible durations for the jobs J .

Input:
The segments [p L i , p U i ] for all jobs J i ∈ J ; the permutation Step 1: In steps 1, 2, 3 and 6 of Algorithm 1, the equality OR(π

Definition 4. A maximal permutation s
It is clear that for each fixed permutation π k ∈ S, a set of all sections {s is uniquely determined.Note that index w in the last section s π k w coincides with index w of the job J k w , which is the first job in the section s π k w = (J k w , J k w+1 , . . ., J k mw ) 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.
] of the section s π k j ∈ S(π k ) into the maximal (with respect to the inclusion) semi-intervals of the optimality and conditional optimality: In the equality (12), the semi-intervals [l j i (s ) differ one from another in a way such that for different subsets 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 j i (s ) denote a permutation of all jobs from the set J }.Note that the permutation J j i is a part of the permutation π k , where index i in the permutation J j i coincides with index i of the job J k i , which is the first job in the permutation J j i .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 Per(π k , T) of the optimality region OR(π k , T) as a sum of all lengths (cardinalities) of the segments (sets) OS(J k r , π k ), where jobs J k r ∈ J occupy optimal positions in the permutation π k : A sum of the lengths (of the cardinalities) OS(J k r , π k ) for the job J k r ∈ J in the permutation π k may be calculated as follows: where the value of (u ] of the section s π k j ∈ S(π k ) such that the job J k r belongs to the set J determined for the section s π k j , 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 π k j containing the job J k r .The value of OS(J k r , π k ) may be calculated as follows: The correctness of the equality (15) follows from the fact that the cardinality OS(J k r , [l j i (s ) of the optimality subset for the job J k r , which is based on the semi-interval [l j i (s )) of the optimality or conditional optimality for the job J r r , is equal to the following fraction: 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 j i | inequalities (17) hold:

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 Per(π 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 [2,17].We obtain the following partition (12) of the scope [ p L 5 , p U 7 ]: For the obtained nine semi-intervals l 1 i (s π 3 ) in the above partition of the scope ).Using the equality ( 14), we calculate the optimality set OS(J k 1 , π k ) = OS(J 5 , π 3 ) for the job J k 1 = J 5 in the permutation π k = π 3 as follows: where the value of OS copt 5 is calculated based on the equality (15), namely: A cardinality of the optimality set OS copt 5 is illustrated on Figure 4, where the pyramid 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 where ) is a length of the scope of the section s Proof.Due to Corollary 2, the above condition OR(π k , T) = ∅ implies the equality π k = (s . Therefore, the following equality also holds: Per(s where Per(s π k j , T) denotes a quasi-perimeter of the optimality region for the section s π k j .Let OS(J j i , π k ) denote a quasi-perimeter of the optimality region for the permutation ) of all jobs from the set J For calculating the quasi-perimeter Per(π k , T) of the optimality region OR(π k , T), we will use a summation of the values OS(J k r , [l j i (s ) through all jobs J k r in the permutation J j r .Thus, instead of the formulas ( 13)-( 15), we use the equality (16) and the equalities ( 20) and ( 21): The equality (20) follows from the above definition of Per(s π k j , T).The equality (21) follows from the definition of OS(J j i , π k ).Using the equalities ( 16) and ( 21) we obtain Using the equalities ( 20) and ( 22) we obtain Per(s Using the equalities ( 19) and ( 23) we obtain the desired equality (18) as follows: Per(s Theorem 8 is proven.

The Largest
for the permutation π k ∈ S, then this permutation is effective.
We next show how to find an effective permutation 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 non 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 |Br | } ⊆ B, exists if and only if there is no job J r d ∈ B r such that the following conditions hold simultaneously: 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 L r i = min{p L r i : J r i ∈ B r } and p U r j = max{p U r i : 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 |Br | } ⊆ 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 |Br | }.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 non in the effective permutation π k .
The following Algorithm 2 is based on Theorem 10.

Input:
The segments [p L r i , p U r i ] for all jobs from the set J , which are fixed in the block B r = {J r 1 , J r 2 , . . ., J r |Br | }, i ∈ {1, 2, . . ., |B r |}.Output: The effective sub-permutation π B r = (J r 1 , J r 1 , . . ., J r |Sr | ) 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 L r i = min{p L r j : j ∈ {1, 2, . . ., |B r |}}; Step 2: Find a job J r k such that p U r k = max{p U r j : j ∈ {1, 2, . . ., |B r |} \ {i}}; Step 3: IF p U r k ≥ p U r i 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 L r l = min{p L r j : j ∈ {1, 2, . . ., |B r |} \ {i}}; Step 5: IF p L r l = p L r i 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 U r o = max{p U r j : j ∈ {1, 2, . . ., |B r |} \ {i, l}}; Step 7: IF p U r o ≥ p U r l 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 L r q = min{p L r j : j ∈ {1, 2, . . ., |B r |} \ {i, l}}; Step 9: IF p L r q = p L r 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 L r z = min{p L r i : J r i ∈ B r \ {J r d }} < min{p L r i : J r i ∈ B r \ {J r d , J r z }} and p U r z = max{p U r i : J r i ∈ B r \ {J r d }} > max{p U r i : J r i ∈ B r \ {J r d , J r z }} hold.Let J f ix 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 Algorithm 3: Construction of the effective permutation π k ∈ S

Input:
The segments [p L i , p U i ] for all jobs J i ∈ J ; the effective sub-permutations π B r = (J r 1 , J r 2 , . . ., J r |Sr | ), sets S r 1 and sets S r 2 for all blocks B r ∈ B. Output: The effective job permutation π k ∈ S.

END FOR
Step 2: Construct sets of jobs J f ix = ∪ m r=1 S r 1 , J = J f ix ∪ J non , sort jobs of the set J = {J f 1 , J f 2 , . . ., J f | J | } by increasing of the mid-points of the segments

Computational Results
In the computational experiments, we tested six classes of hard instances 1|p L i ≤ p i ≤ p U i | ∑ 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 L i < p U i hold for all jobs J i ∈ J .Table 2 presents computational results for randomly generated instances of the problem 1|p L i ≤ p i ≤ p U i | ∑ 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 L i , p U i ] was generated using a uniform distribution in the range [1,100].The lower bound p L i of the possible duration p i was determined using the equality p L i = C • (1 − δ 100 ), where δ denotes the maximal relative error of the durations p i due to the given segments [p L i , p U i ].The upper bound p U i was determined using the equality p U i = C • (1 + δ 100 ).For each job J i ∈ J , the point p i was generated using a uniform distribution in the range [p L i , p U i ].In order to generate instances, where all jobs J belonged to a single block, the segments [p L i , p U i ] of the possible durations were modified as follows: where p = max n i=1 p i .
Since the inclusion p ∈ [ p L i , p U i ] 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 n i=1 (p U i − p L i ), 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 L i < p U i 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 • 100% of the value γ k p * of the objective function γ = ∑ n i=1 C i was for the effective permutation π k with respect to the actually optimal objective function value γ t p * 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.
Each instance in class 2 or in class 3 had a single non-fixed job J v , whose bounds were determined as follows: p 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 ix ∪ J non 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.

Concluding Remarks
The uncertain scheduling problem 1|p L i ≤ p i ≤ p U i | ∑ 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 Sections 2-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 L i ≤ p i ≤ p U i | ∑ 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 L i ≤ p i ≤ p U i | ∑ 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.
has no common point with the open interval of optimality (l opt k r , u opt k r ) and no common point with the open interval of non-optimality (l non k r , u non k r ): of the job durations determined in (9), the open interval of optimality (l opt k r , u opt k r ) for the job J k r in the permutation π k ∈ S has no common point with the segment [p L k d , p U k d ] of possible durations of any job J k d ∈ J , d = r, i.e., the following equality holds: 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 L i ≤ p i ≤ p U i | ∑ C i coincides with the optimality region for the same permutation π k for the problem 1| p L i ≤ p i ≤ p U i | ∑ 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

Corollary 2 .
The condition OR(π k , T) = ∅ holds if and only if

]
is a length of the segment [l opt k r , u opt k r ] of the optimality for the job J k r in the permutation π k .In the equality (14), the value of OS copt k r determines a cardinality of the optimality subset, which is based on a single segment [l copt k r , u copt k r ] or on both segments [l (see Remark 3) of the conditional optimality of the job J k r in the permutation π k .To calculate the value of OS(J k r , π k ) = (u opt k r − l opt k r ) + OS copt k r , we use the partition (12) of the scope [

Corollary 3 .
Quasi-Perimeter of the Optimality Region OR(π k , T) for the Problem 1| p L i ≤ p i ≤ p U i | ∑ C i We call the permutation π k ∈ S an effective permutation, if this permutation has the largest quasi-perimeter Per(π k , T) of the optimality region OR(π k , T) among all permutations in the set S. The following claim follows directly from Theorem 8.If the following equality holds: 2, . . ., q − 1};Step 4: S res = ∅, N res = ∅, sNumRes = 1, k = 1, lm+1 = max{p U i : i ∈ {1, 2, . . ., n}}, ûm+1 = max{p U i : i ∈ {1, 2, . . ., n}}; Step 5:IF k ≤ | J | THEN iNum = 1, bNum = 1, sNum = 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 L f k , p U f k ) = ∅ AND lbNum > b j THEN S k sNum := S k sNum ∪ I j ; IF ûbNum = b j+1 THEN bNum := bNum + 1; IF ûbNum−1 = b j+1 AND S k sNum = ∅ THEN N k sNum := bNum − 1, sNum := sNum + 1; END FOR Step 7: s = 1, S tmp = ∅; FOR i = 1 to sNum − 1 DO FOR j = 1 to sNumRes DO S tmp s = S res j ∪ S k i , N tmp s = (N res 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 tmp i ⊆ Stmp j AND i = j AND S tmp j / ∈ S d THEN S d := S d ∪ S tmp i , N d := N d ∪ N tmp i ; i := i + 1; END j := j + 1; END S nd := S tmp \ S d , N nd := N tmp \ N d ; Step 9: S res = S nd , N res = N nd , sNumRes = |S res |, k := k + 1 GOTO step 5; Step 10: maxP = 0; FOR i = 1 to sNumRes DO P = 0; FOR EACH I j IN S res i DO P := P + b j+1 − b j END FOR; IF P > maxP THEN maxP = P, maxNum = i END FOR Step 11: FOR x = 1 to m + 1 DO S x = ∅ END FOR FOR k = 1 to | J | DO x = N maxNum k , S x := S x ∪ J k ; END FOR Step 12: û0 = min{p L i : 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 L i , ûx−1 }, min{p U i , lx }] and obtain sub-permutation π r x ; END FOR Step 13: 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 one can calculate the optimality box for the modified instance 1| p L i ≤ p i ≤ p U i | ∑ w i C i , where the segments [p L i , p U i ] for the possible job durations p i are reduced, [ p L i , p U i ] ⊆ [p L i , p U i ], based on the following formulas: [23,24] k iholds.In[23,24], it is shown that for calculating the optimality box OB(π k , T), [24]me jobs J r i ∈ B r may be left-right jobs in the block B r , since it is possible that conditionB \ {B * r ∪ B − r ∪ B + r } = ∅ holds.The jobs J v and J w are identical if both equalities p L v = p L w and p U v = p U w 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].

Table 1 .
Input data for the instance of the problem 1|pL i ≤ p i ≤ p U i | ∑ C i .

Table 2 .
Computational results for randomly generated instances with a single block (class 1).∑ 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 L i and the upper bound p U i on the feasible values of p i ∈ R 1 + of the durations of the fixed jobs, p i ∈ [p L i , p U i ], were generated as follows.We determined a bound of blocks [ b L i , b U i ] for generating the cores of the blocks

Table 3 .
Computational results for randomly generated instances from classes 2-6.