Next Article in Journal
Estimation of Non-Linear Parameters with Data Collected Using Respondent-Driven Sampling
Next Article in Special Issue
Advances and Novel Approaches in Discrete Optimization
Previous Article in Journal
RNA: A Reject Neighbors Algorithm for Influence Maximization in Complex Networks
Previous Article in Special Issue
RISC Conversions for LNS Arithmetic in Embedded Systems
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Schedule Execution for Two-Machine Job-Shop to Minimize Makespan with Uncertain Processing Times

by
Yuri N. Sotskov
1,*,
Natalja M. Matsveichuk
2 and
Vadzim D. Hatsura
3
1
United Institute of Informatics Problems, National Academy of Sciences of Belarus, Surganova Street 6, 220012 Minsk, Belarus
2
Belorussian State Agrarian Technical University, Nezavisimosti Avenue 99, 220023 Minsk, Belarus
3
Belorussian State University of Informatics and Radioelectronics, P. Brovki Street 6, 220013 Minsk, Belarus
*
Author to whom correspondence should be addressed.
Submission received: 4 June 2020 / Revised: 24 July 2020 / Accepted: 29 July 2020 / Published: 7 August 2020
(This article belongs to the Special Issue Advances and Novel Approaches in Discrete Optimization)

Abstract

:
This study addresses a two-machine job-shop scheduling problem with fixed lower and upper bounds on the job processing times. An exact value of the job duration remains unknown until completing the job. The objective is to minimize a schedule length (makespan). It is investigated how to best execute a schedule, if the job processing time may be equal to any real number from the given (closed) interval. Scheduling decisions consist of the off-line phase and the on-line phase of scheduling. Using the fixed lower and upper bounds on the job processing times available at the off-line phase, a scheduler may determine a minimal dominant set of schedules (minimal DS), which is based on the proven sufficient conditions for a schedule dominance. The DS optimally covers all possible realizations of the uncertain (interval) processing times, i.e., for each feasible scenario, there exists at least one optimal schedule in the minimal DS. The DS enables a scheduler to make the on-line scheduling decision, if a local information on completing some jobs becomes known. The stability approach enables a scheduler to choose optimal schedules for most feasible scenarios. The on-line scheduling algorithms have been developed with the asymptotic complexity O ( n 2 ) for n given jobs. The computational experiment shows the effectiveness of these algorithms.

Graphical Abstract

1. Introduction

Many real-world production planning and scheduling problems have various uncertainties. Different approaches are used for solving the uncertain planning and scheduling problems. In particular, a stability approach [1,2,3,4] for solving sequencing and scheduling problems with the interval uncertainty is based on the stability analysis of the optimal job permutations (schedules) to possible variations of the job processing times (durations). In this paper, this approach is applied to the uncertain two-machine job-shop scheduling problem, where a job processing time is only known once the job is completed. Although, the exact value of the job processing time is unknown before scheduling, it is known that the processing time must have a value no less than the lower bound and no greater than the upper bound available before scheduling. It should be noted that uncertainties of the job processing times are due to some external forces in contrast to scheduling problems with controllable processing times [5,6,7], where the objective is to determine optimal processing times and then to find an optimal schedule for the jobs with the chosen processing times.

1.1. Research Motivation

It is not realistic to assume processing times are exactly known and fixed for many scheduling problems arising in real-world situations. For such an uncertain scheduling problem, job processing times are random variables. Moreover, it is often hard to obtain probability distributions for all random processing times of the jobs to be processed. In such cases, schedules constructed due to assuming certain probability distributions are often not close to the optimal schedule. Although, the probability distribution of the job processing time may not be known before scheduling, the upper and lower bounds on the job processing time are easy to obtain in most practical scheduling environments. The available information on these lower and upper bounds on the job processing times should be utilized in finding optimal schedules for the scheduling problem with an interval uncertainty.
Since there may not exist a unique schedule that remains optimal for all possible realizations of the job processing times (all possible scenarios), it is desirable to construct a minimal dominant set of schedules (permutations of the jobs to be processed), which dominate all other ones. At the off-line phase of scheduling (i.e., before starting an execution of the constructed schedule), a minimal dominant set of schedules may be determined based on the proven dominance relations [8].
If the constructed minimal dominant set of schedules is a singleton, then a single schedule remaining optimal for all possible scenarios exists. Otherwise, one can reduce the size of the determined minimal dominant set of schedules at the on-line phase of scheduling based on the additional information about completing some jobs. This additional on-line information allows a scheduler to find new dominance relations in order to best execute a schedule. It is clear that on-line scheduling decisions must be realized very quickly. In other words, only polynomial algorithms may be applied at the on-line phase of scheduling.

1.2. Contributions of This Research

In this paper, it is shown how to determine a minimal dominant set of schedules that would contain at least one optimal schedule for every scenario that is possible. The necessary and sufficient conditions are proven for the existence of a single pair of job permutations, which is optimal for the two-machine job-shop scheduling problem with any possible scenario. The algorithms have been developed for testing a set of the proven sufficient conditions for a schedule dominance and for the realization of a schedule, which is either optimal or very close to optimal one for the factual scenario. The developed algorithms are polynomial in the number n of the given jobs. Their asymptotic complexities do not exceed O ( n 2 ) . The computational experiments on a large number of randomly generated instances of the uncertain (interval) two-machine job-shop scheduling problem show the efficiency and effectiveness of the developed off-line and on-line algorithms and programs. For different distributions of the factual job processing times, the developed on-line algorithms perform with the maximal errors of the achieved makespan less than 1 % provided that n     { 20 , 30 , , 100 } . For all tested classes of the randomly generated instances, the average makespan errors Δ a v e % for all tested numbers n     { 10 , 20 , , 100 } of jobs J are less than 0.02 % . Each tested series of 1000 randomly generated instances was solved within no more than one second.
The paper is organized as follows. Settings of the considered scheduling problems with the interval uncertainty and main notation are introduced in Section 2. A literature review is presented in Section 3. The results published for the uncertain (interval) scheduling flow-shop problem are discussed in Section 3.2. These results are used in Section 4 for finding the optimal job permutations at the off-line phase of scheduling. In Section 4.2, the precedence digraphs are described for determining a minimal dominant set of schedules. An illustrative example is considered in Section 4.3. The on-line phase of scheduling is investigated in Section 5, where two theorems for the dominant sets of schedules have been proven. Section 6 contains the algorithms developed for the on-line phase of scheduling, illustrative examples (Section 6.2) and the discussion of the conducted computational experiments (Section 6.3). Appendix B consists of the tables with the detailed computational results. Some concluding remarks are made in Section 7.

2. Settings of Scheduling Problems and Main Notations

A set J = { J 1 , J 2 , , J n } of the given jobs must be processed on different machines from a set M = { M 1 , M 2 } . All jobs are available for processing from the same time t = 0 . Using the standard notation α | β | γ [9], this deterministic two-machine job-shop scheduling problem to minimize the makespan is denoted as follows: J 2 | n i 2 | C m a x , where α = J 2 means a job-shop processing system with two available different machines and n i a number of possible stages for processing a job J i     J . The criterion γ = C m a x determines the minimization of a schedule length (makespan) as follows:
C m a x : = min s S C m a x ( s ) = min s S { max { C i ( s ) : J i J } } ,
where C i ( s ) denotes the completion time-point of the job J i     J in the schedule s and S denotes a set of all semi-active schedules existing for the deterministic problem J 2 | n i 2 | C m a x . (A schedule s is called a semi-active one [10,11,12] if the completion time-point C i ( s ) of any job J i     J cannot be reduced without changing an order of the jobs on some machine.)
Let O i j denote an operation of the job J i     J processed on the machine M j     M . Each of the available machines can process the job J i     J no more than once, a preemption of the operation O i j being not allowed. The job J i     J has its own processing route through the available machines in set M . The partition J = J 1 J 2 J 1 , 2 J 2 , 1 of the jobs is given and fixed, where each job J i     J 1 , 2 must be processed first on machine M 1 and then on machine M 2 , i.e., all jobs from the set J 1 , 2 have the same machine route ( M 1 , M 2 ). Each job J i J 2 , 1 has an opposite machine route ( M 2 , M 1 ). The set J j , where j     { 1 , 2 } , consists of all jobs, which must be processed only on one machine M j     M . The following notation m h = | J h | will be used, where h     { 1 ; 2 ; 1 , 2 ; 2 , 1 } .
In this research, it is investigated the uncertain (interval) two-machine job-shop scheduling problem denoted as J 2 | l i j p i j u i j , n i 2 | C m a x , where the duration p i j of each operation O i j is unknown before scheduling. It is only known that the inclusion p i j     [ l i j , u i j ] holds for any possible realization of the chosen schedule, where u i j l i j 0 . It is also assumed that a probability distribution of the random duration of a job from the set J is also unknown before scheduling. Let a set T of all possible scenarios p = ( p 1 , 1 , p 1 , 2 , , p n 1 , p n 2 ) of the job processing times be determined as follows:
T = { p : l i j p i j u i j , J i     J , M j M } .
It should be noted that the problem J 2 | l i j p i j u i j , n i 2 | C m a x is mathematically incorrect since one cannot calculate makespan C m a x ( s ) in the equality (1) before completing the jobs J i in the set J provided that the strict inequality u i j > l i j holds. Moreover, in most cases there does not exist a schedule, which is optimal for all possible scenarios p     T for the uncertain job-shop problem J 2 | l i j p i j u i j , n i 2 | C m a x . Therefore, one cannot solve most such uncertain (interval) scheduling problems in the generally accepted sense.
In [13], it is proven that the deterministic job-shop problem J 2 | n i 2 | C m a x is solvable in O ( n log n ) time. The optimal semi-active schedule for this deterministic problem is determined as the pair ( π , π ) of two job permutations (called a Jackson’s pair of permutations), where π = ( π 1 , 2 , π 1 , π 2 , 1 ) is an optimal permutation of the jobs J 1 J 1 , 2 J 2 , 1 processed on machine M 1 and π = ( π 2 , 1 , π 2 , π 1 , 2 ) is an optimal permutation of the jobs J 2 J 1 , 2 J 2 , 1 on machine M 2 . Such an optimal semi-active schedule is presented in Figure 1. In what follows, it is assumed that job J i belongs to the permutation π h , if the following inclusion holds: J i     J h .
In a Jackson’s pair of permutations ( π , π ) , the optimal order for processing jobs from the set J 1 (from the set J 2 , respectively) may be arbitrary (due to this, we fix them in the increasing order of their indexes). For the permutation π 1 , 2 (permutation π 2 , 1 , respectively), the following inequality holds:
min { p i e 1 , p i f 2 } min { p i f 1 , p i e 2 }
for all indexes e and f provided that 1 e < f m 1 , 2 ( 1 f < e m 2 , 1 , respectively). The permutation π 1 , 2 (permutation π 2 , 1 ) is called a Johnson’s permutation; see [14].
The deterministic scheduling problem J 2 | n i 2 | C m a x associated with a fixed scenario p of the job processing times is an individual deterministic problem. In what follows, this problem is denoted as follows: J 2 | p , n i 2 | C m a x . For any fixed scenario p     T , there exists a Jackson’s pair ( π , π ) of permutations, which is optimal for the problem J 2 | p , n i 2 | C m a x , i.e., the equality C max ( π , π ) = C max p holds, where C max p denotes the optimal makespan value for the problem J 2 | p , n i 2 | C m a x .
Let S 1 , 2 denote a set of all permutations of m 1 , 2 jobs from the set J 1 , 2 , where | S 1 , 2 | = m 1 , 2 ! . The set S 2 , 1 is a set of all permutations of m 2 , 1 jobs from the set J 2 , 1 , | S 2 , 1 | = m 2 , 1 ! .
Let the set S = < S 1 , 2 , S 2 , 1 > be a subset of the Cartesian product ( S 1 , 2 , π 1 , S 2 , 1 ) × ( S 2 , 1 , π 2 , S 1 , 2 ) , each element of the set S being a pair of job permutations ( π , π )     S , where π = ( π 1 , 2 i , π 1 , π 2 , 1 j ) and π = ( π 2 , 1 j , π 2 , π 1 , 2 i ) with inequalities 1 i m 1 , 2 ! and 1 j m 2 , 1 ! . It is known that the set S determines all semi-active schedules and vice versa; see [12]. Since index i (and index j) is the same in each permutation from the pair ( π , π )     S and it is a fixed permutation π 1 (permutation π 2 ), the equality | S | = m 1 , 2 ! · m 2 , 1 ! holds. The following definition of a J-solution is used for the uncertain (interval) job-shop scheduling problem J 2 | l i j p i j u i j , n i 2 | C m a x .
Definition 1.
An inclusion-minimal set of the pairs of job permutations S ( T ) S is called a J-solution for the uncertain job-shop problem J 2 | l i j p i j u i j , n i 2 | C m a x with the set J of the given jobs, if for each scenario p     T , the set S ( T ) contains at least one pair ( π , π )     S of job permutations that is optimal for the individual deterministic problem J 2 | p , n i 2 | C m a x with a fixed scenario p.
From Definition 1, it follows that for any proper subset S of the set S ( T ) , S S ( T ) , there exists a scenario p     T such that the set S does not contain an optimal pair of job permutations for the individual deterministic problem J 2 | p , n i 2 | C m a x with a fixed scenario p .

3. A Literature Review and Closed Results

It should be noted that the uncertain flow-shop scheduling problem denoted as F 2 | l i j p i j u i j , n i 2 | C m a x is well studied [15], unlike the uncertain job-shop scheduling problem.

3.1. Approaches to Scheduling Problems with Different Forms of Uncertainties

For the well-known stochastic approach, it is assumed that the job processing times are random variables with certain probability distributions determined before scheduling. There are two types of the stochastic scheduling problems [10], where one is on stochastic jobs and another is on stochastic machines. In the stochastic job scheduling problem, each job processing time is a random variable with a known probability distribution. With the objective of minimizing the expected makespan value, the flow-shop problem was studied in [16,17,18]. In the stochastic machine scheduling problem, each job processing time is a constant, while each completion time of the given job is a random variable due to the machine breakdown or machine non-availability. In [19,20,21], the flow-shop scheduling problems to stochastically minimize either makespan or total completion time were investigated.
If it is impossible to determine probability distributions for all random job processing times, other approaches have to be used [11,22,23,24,25]. In the approach of seeking a robust schedule [22,26,27,28], a decision-maker looks for a schedule that hedges against the worst-case possible scenario.
A fuzzy approach [29,30,31,32,33,34,35] allows a scheduler to find best schedules with respect to fuzzy processing times of the jobs to be processed. The work of [35] addresses to the job-shop scheduling problem with uncertain processing times modeled as triangle fuzzy numbers, where the criterion is to minimize the expected makespan value. Based on the disjunctive graph model of the job-shop problem, a definition of criticality is proposed for this job-shop problem along with neighborhood structure for a local search. It is shown that the proposed neighborhood structure has two properties: feasibility and connectivity, which allow a scheduler to improve the efficiency of the local search and to ensure asymptotic convergence (in probability) to a globally optimal solution of the uncertain job-shop problem. The conducted computational experiments supported these theoretical results.
The stability approach was developed in [1,4,36,37] for the C m a x criterion, and in [2,38,39,40] for the total completion time criterion, C i : = J i J C i ( π ) . The aim of this approach is to construct a minimal dominant set S ( T ) of schedules, which optimally covers all feasible scenarios T. The dominant set S ( T ) is used in the multi-phase decision framework; see [41]. The set S ( T ) is constructed at the first off-line phase of scheduling. Based on the set S ( T ) , it is possible to find a schedule remaining optimal for most feasible scenarios. The set S ( T ) enables a scheduler to execute best a schedule in most cases of the uncertain flow-shop scheduling problem F 2 | l i j p i j u i j | C m a x [41].
The stability radius of the optimal semi-active schedule was studied in [4], where a formula for calculating the stability radius and corresponding algorithms were described and tested.
In [36], the sufficient conditions were proven when a transposition of the given jobs minimizes the makespan criterion. The work of [42] addressed the objective criterion C i in the uncertain two-machine flow-shop scheduling problem. The case of separate setup times with the criterion of minimizing a total completion time or makespan was investigated in [43].
For the uncertain flow-shop problem F 2 | l i j p i j u i j | C m a x , an additional criterion is often introduced. In particular, a robust schedule minimizing the worst-case deviation from the optimal value was proposed in [44] to hedge against the interval or discrete uncertainties. In [45], a binary NP-hardness was proven for finding a pair ( π q , π q )     S of the identical job permutations that minimizes the worst-case absolute regret for the uncertain two-machine flow-shop problem with the criterion C m a x and only two possible scenarios. In [46], a branch and bound method was developed for the uncertain job-shop scheduling problem to minimize makespan and optimize robustness based on a mixed graph model and the propositions proposed in [47]. The effectiveness of the developed algorithm was clarified by solving test uncertain job-shop scheduling problems.
The work of [48] addresses robust scheduling for a flexible job-shop scheduling problem with a random machine breakdown. Two objectives makespan and robustness were considered. Robustness was indicated by the expected value of the relative difference between the deterministic and factual makespan values. Two measures for robustness have been developed. The first suggested measure considers the probability of machine breakdowns. The second measure considers the location of float times and machine breakdowns. A multi-objective evolutionary algorithm is presented and experimentally compared with several other existing measures.
A function of predictive scheduling in order to obtain a stable and robust schedule for a shop floor was investigated in [49]. An innovative maintenance planning and production scheduling method has been proposed. The proposed method uses a database to collect information about failure-free times, a prediction module of failure-free times, predictive rescheduling module, a module for evaluating the accuracy of prediction and maintenance performance. The proposed approach is based on probability theory and applied for solving a job-shop scheduling problem. For unpredicted failures, a rescheduling procedure was also developed. The evaluation procedure provides information about the degradation of a performance measure and the stability of a schedule.
The simulation and experimental design methods play a useful role in solving job-shop scheduling problems with uncertain parameters (see survey [50], where many studies about dynamic and static job-shop scheduling problems with material handling are described and systematized).
In [51], a quality robustness and a solution robustness were investigated in order to compare the operational efficiency of the job-shop in the events of machine failures. Two well-known proactive approaches were compared to compute the operational efficiency of the job-shop with unpredicted machine failures. In the computational experiments, the predictive-reactive approach (without a prediction) and the proactive-reactive one (with a prediction) were applied for the job-shop model with possible disruptions. The computational results of computer simulations for the above two approaches were compared in order to select better schedules for reducing costs and waste due to machine failures.
The paper [52] presents a methodological pattern to assess the effectiveness of Order Review and Release (ORR) techniques in a job-shop environment. It is presented a comparison among three ORR approaches, i.e., a time bucketing approach, a probabilistic approach and a temporal approach. Simulation results highlighted that the performances of the ORR techniques tested depend on how perturbed the environment, where they are implemented, is. Based on a computer simulation, it was shown that the ORR techniques greatly differ in their robustness against environment perturbations.
The paper [53] presents an effective heuristic algorithm for the job-shop problem with uncertain arrival times of the jobs, processing times, due dates and part priorities. A separable problem formulation that balances modeling accuracy and solution complexity is described with the goal to minimize expected part tardiness and earliness cost. The optimization is subject to arrival times and operation precedence constraints (for each possible realization), and machine capacity constraints (in the expected value sense). The solution algorithm based on a Lagrangian relaxation and stochastic dynamic programming was developed to obtain dual solutions. The computational complexity of the developed algorithm is only slightly higher than the one without considering uncertainties of the numerical parameters. Numerical testing supported by a simulation demonstrated that near optimal solutions were obtained, and uncertainties are effectively handled for problems of practical sizes.
The published results on the application of the stability approach for the uncertain two-machine flow-shop problem are presented in Section 3.2. These results are described in detail since they are used for the uncertain job-shop problem J 2 | l i j p i j u i j , n i 2 | C m a x in Section 4, Section 5 and Section 6.

3.2. Closed Results for Uncertain (Interval) Flow-Shop Scheduling Problems

The uncertain job-shop problem J 2 | l i j p i j u i j , n i 2 | C m a x is a generalization of the uncertain flow-shop problem F 2 | l i j p i j u i j | C m a x , where all given jobs have the same machine route. Two uncertain flow-shop problems are associated with an uncertain job-shop problem J 2 | l i j p i j u i j , n i 2 | C m a x . In one of these flow-shop problems, an optimal schedule for processing the jobs J 1 , 2 must be determined, i.e., it is assumed that J 2 , 1 = J 1 = J 2 = . In another associated flow-shop problem, an optimal schedule for processing jobs J 2 , 1 must be determined, i.e., it is assumed that J 1 , 2 = J 1 = J 2 = . Our approach to the solution of the uncertain job-shop scheduling problem J 2 | l i j p i j u i j , n i 2 | C m a x is based on the following remark.
Remark 1.
The solution of the uncertain job-shop scheduling problem J 2 | l i j p i j u i j , n i 2 | C m a x may be based on the solutions of the associated flow-shop scheduling problem F 2 | l i j p i j u i j | C m a x with the job set J = J 1 , 2 , where J 2 , 1 = J 1 = J 2 = , and that with the job set J = J 2 , 1 (i.e., J 1 , 2 = J 1 = J 2 = ).
The sense of Remark 1 becomes clear from Figure 2, where the semi-active schedule s for the job-shop scheduling problem J 2 | l i j p i j u i j , n i 2 | C m a x is presented. Indeed, in Figure 2, the length C m a x ( s ) of the schedule s is equal to the length of the corresponding semi-active schedule determined for the associated flow-shop scheduling problem F 2 | l i j p i j u i j | C m a x with the job set J = J 1 , 2 . Thus, if one will solve both associated flow-shop problem F 2 | l i j p i j u i j | C m a x with the job set J = J 1 , 2 and associated flow-shop problem F 2 | l i j p i j u i j | C m a x with the job set J = J 2 , 1 , then the original job-shop scheduling problem J 2 | l i j p i j u i j , n i 2 | C m a x will be also solved.
We next observe in detail the results obtained for the two-machine flowshop problem F 2 | l i j p i j u i j | C m a x with the job set J = J 1 , 2 . For using the above notations introduced for the uncertain job-shop problem, we need the following remark for the uncertain flow-shop problem.
Remark 2.
The considered problem F 2 | l i j p i j u i j | C m a x has the following two mandatory properties:
(i)
the set S is a set of n ! pairs ( π q , π q ) of the identical permutations of n = m 1 , 2 jobs from the set J = J 1 , 2 since the machine route for processing all jobs J 1 , 2 is the same ( M 1 , M 2 ) ;
(ii)
the J-solution (see Definition 1) is a set of Johnson’s permutations of the jobs J = J 1 , 2 , i.e., for each scenario p     T the set S ( T ) contains at least one optimal pair ( π q , π q ) of identical Johnson’s permutations π q such that the inequality (2) holds for all indexes e and f.
The following Theorems 1 and 2 have been proven in [54].
Theorem 1
([54]). There exists a J-solution S ( T ) for the uncertain flow-shop problem F 2 | l i j p i j u i j | C m a x with a fixed order J v J w of the jobs J v and J w in all permutations π q , ( π q , π q )     S ( T ) , if and only if at least one of the following two conditions hold:
u v 1 l v 2   a n d   u v 1 l w 1 ;
u w 2 l w 1   a n d   u w 2 l v 2 .
Theorem 2 provides the necessary and sufficient conditions for existing a single-element J-solution S ( T ) = { ( π q , π q ) } for the uncertain flow-shop scheduling problem F 2 | l i j p i j u i j | C m a x . The partition J = J 0 J 1 J 2 J * of the set J = J 1 , 2 is given, where
J 0 = { J i J : u i 1 l i 2 , u i 2 l i 1 } ,
J 1 = { J i J : u i 1 l i 2 , u i 2 > l i 1 } = { J i J J 0 : u i 1 l i 2 } ,
J 2 = { J i J : u i 1 > l i 2 , u i 2 l i 1 } = { J i J J 0 : u i 2 l i 1 } ,
J * = { J i J : u i 1 > l i 2 , u i 2 > l i 1 } .
Note that for each job J g J 0 , the inequalities u g 1 l g 2 and u g 2 l g 1 imply the equalities l g 1 = u g 1 = l g 2 = u g 2 . Thus, the equalities p g 1 = p g 2 = : p g hold.
Theorem 2
([54]). There exists a single-element J-solution S ( T ) S , | S ( T ) | = 1 , for the uncertain flow-shop problem F 2 | l i j p i j u i j | C m a x , if and only if the following two conditions hold:
(j) for any pair of jobs J i and J j from the set J 1 (from the set J 2 , respectively), either u i 1 l j 1 or u j 1 l i 1 (either u i 2 l j 2 or u j 2 l i 2 , respectively);
(jj) inequality | J * | 1 holds and for the job J i *     J * both inequalities l i * 1 max { u i 1 : J i     J 1 } , l i * 2 max { u j 2 : J j     J 2 } hold with inequality max { l i * 1 , l i * 2 } p g valid for each job J g     J 0 .
Theorem 2 characterizes the simplest case of the uncertain flow-shop problem F 2 | l i j p i j u i j | C m a x , i.e., there is a job permutation π q dominating all others.
Let J × J denote a Cartesian product of the set J . If J 0 = , then there exists the following binary relation A J × J over the set J = J 1 , 2 .
Definition 2.
For the jobs J x     J and J y     J , the inclusion ( J x , J y )     A holds if and only if at least one of the conditions (3) and (4) holds with v = x and w = y and neither the condition (3) no the condition (4) holds with v = y and w = x (or at least one of the conditions (3) and (4) holds both with v = x and w = y and with v = y , w = x and x < y ).
The above relation ( J x , J y )     A may be represented as follows: J x J y . The binary relation A is a strict order [55] that determines the precedence digraph G = ( J , A ) with the vertex set J and the arc set A . The permutation π q = ( J q 1 , J q 2 , , J q n ) , ( π q , π q )     S , is a total strict order over the set J . The total strict order determined by the permutation π q is a linear extension of the partial strict order A , if the inclusion ( J q x , J q y )     A implies the inequality x < y . Let Π ( G ) denote a set of all permutations π q     S 1 , 2 determining linear extensions of the partial strict order A . The equality Π ( G ) = { π q } is characterized in Theorem 2, where the strict order A over the set J is represented as follows: J q 1 J q i J q i + 1 J q n . The following two claims have been proven in [55].
Theorem 3
([55]). For any scenario p     T , the set Π ( G ) contains a Johnson’s permutation for the deterministic flow-shop problem F 2 | p | C m a x with the job set J = J 1 , 2 = J * J 1 J 2 .
Corollary 1
([55]). There exists a J-solution S ( T ) for the uncertain flow-shop problem F 2 | l i j p i j u i j | C m a x with the job set J = J 1 , 2 = J * J 1 J 2 , such that the inclusion π q     Π ( G ) holds for all pairs of job permutations, where ( π q , π q )     S ( T ) .
In [55], it is shown how to determine a minimal dominant set S ( T ) = { ( π q , π q ) } with π q     Π ( G ) . The digraph G = ( J , A ) is considered as a condense form of a J-solution for the uncertain flow-shop problem F 2 | l i j p i j u i j | C m a x . The above results are used in Section 4, Section 5 and Section 6 for reducing a size of the dominant set S ( T ) for the uncertain job-shop problem J 2 | l i j p i j u i j , n i 2 | C m a x .

4. The Off-Line Phase of Scheduling

The above setting of the uncertain job-shop scheduling problem J 2 | l i j p i j u i j , n i n | C m a x implies the following remark.
Remark 3.
The factual value p i j * of the job processing time p i j becomes known at the time-point c j ( i ) when the operation O i j is completed on the machine M j     M .
Due to Remark 3, if all jobs J are completed on the corresponding machines from the set M , the durations of all operations O i j take on exact values p i j * , where l i j p i j * u i j , and a unique factual scenario p *     T is realized. A pair of job permutations selected for this realization should be optimal for scenario p * . For constructing such an optimal pair of job permutations, we propose to implement two phases, namely: the off-line phase of scheduling and the on-line phase of scheduling.
The off-line phase is completed before starting a realization of the selected semi-active schedule. At the off-line phase, a scheduler knows the exact lower and upper bounds on the job processing times and the aim is to determine a minimal dominant set of the pairs of job permutations ( π , π ) .
The on-line phase is started when the corresponding machine starts the processing of the first job in the selected schedule. At this phase, a scheduler can use an additional information on the job processing time, since for each operation O i j , the exact value p i j * of the processing time p i j     T becomes known at the completion time c j ( i ) of this operation; see Remark 3.
We next consider the off-line phase of scheduling for the uncertain job-shop problem J 2 | l i j p i j u i j , n i 2 | C m a x and describe the sufficient conditions for existing a small dominant set of the semi-active schedules. Along with Definition 1, the following one is also used.
Definition 3.
A set of the pairs of job permutations D S ( T ) S is a dominant set for the uncertain job-shop problem J 2 | l i j p i j u i j , n i 2 | C m a x , if for each scenario p     T the set D S ( T ) contains at least one optimal pair of job permutations for the individual deterministic job-shop problem J 2 | p , n i 2 | C m a x with scenario p.
Obviously, the J-solution is a dominant set for the uncertain job-shop problem J 2 | l i j p i j u i j , n i 2 | C m a x . Before processing the set J of given jobs, a scheduler does not know the exact values of the job processing times. Nevertheless, it is needed to determine an optimal pair of permutations of the jobs J for their processing on the machines M = { M 1 , M 2 } .
In Section 4.1, the sufficient conditions are presented for existing a pair of job permutations ( π , π ) such that the equality D S ( T ) = { ( π , π ) } holds. Section 4.2 contains the sufficient conditions allowing a scheduler to construct a semi-active schedule (if any), which dominates all other schedules in the set S. If a singleton D S ( T ) = { ( π , π ) } does not exist, a scheduler should construct partial strict orders A 1 , 2 and A 2 , 1 over set J 1 , 2 and set J 2 , 1 ; see Section 3.

4.1. Conditions for Existing a Single Optimal Pair of Job Permutations

The following conditions for existing an optimal pair of job permutations are proven in [8].
Theorem 4
([8]). If one of the following conditions either (5) or (6) holds:
J i J 1 , 2 u i 1 J i J 2 , 1 J 2 l i 2   a n d J i J 1 , 2 l i 2 J i J 2 , 1 J 1 u i 1 ,
J i J 2 , 1 u i 2 J i J 1 , 2 J 1 l i 1   a n d J i J 2 , 1 l i 1 J i J 1 , 2 J 2 u i 2 ,
then any pair of permutations ( π , π )     S is a singleton D S ( T ) = { ( π , π ) } for the uncertain job-shop problem J 2 | l i j p i j u i j , n i 2 | C m a x with the job set J = J 1 J 2 J 1 , 2 J 2 , 1 .
Corollary 2
([8]). If the following inequality holds:
J j J 1 , 2 u i 1 J j J 2 , 1 J 2 l i 2 ,
then the set < { π 1 , 2 } , S 2 , 1 > S , where π 1 , 2 is an arbitrary permutation in the set S 1 , 2 , is a dominant set for the uncertain job-shop problem J 2 | l i j p i j u i j , n i 2 | C m a x with the job set J = J 1 J 2 J 1 , 2 J 2 , 1 .
Corollary 3
([8]). If the following inequality holds: J j J 2 , 1 u i 2 J j J 1 , 2 J 1 l i 1 , then the set < S 1 , 2 , { π 2 , 1 } > , where π 2 , 1 is an arbitrary permutation in the set S 2 , 1 , is a dominant set for the uncertain job-shop problem J 2 | l i j p i j u i j , n i 2 | C m a x with the job set J = J 1 J 2 J 1 , 2 J 2 , 1 .
In order to determine an optimal permutation for processing jobs from the set J 2 , 1 (set J 1 , 2 , respectively), we consider the uncertain flow-shop problem F 2 | l i j p i j u i j | C m a x with the job set J 1 , 2 J and the machine route ( M 1 , M 2 ) , and that with the job set J 2 , 1 J and the machine route ( M 2 , M 1 ) . The following theorem has been proven in [8].
Theorem 5
([8]). Let the set S 1 , 2 S 1 , 2 be a set of permutations from the dominant set for the flow-shop problem F 2 | l i j p i j u i j | C m a x with the job set J 1 , 2 , and the set S 2 , 1 S 2 , 1 be a set of permutations from the dominant set for the flow-shop problem F 2 | l i j p i j u i j | C m a x with the job set J 2 , 1 . Then the set < S 1 , 2 , S 2 , 1 > S is a dominant set for the job-shop problem J 2 | l i j p i j u i j , n i 2 | C m a x with the job set J = J 1 J 2 J 1 , 2 J 2 , 1 .

4.2. Precedence Digraphs Determining a Minimal Dominant Set of Schedules

Based on Remark 1, the off-line phase of scheduling for the uncertain job-shop problem J 2 | l i j p i j u i j , n i 2 | C m a x may be based on solving the uncertain flow-shop problem F 2 | l i j p i j u i j | C m a x with the job set J 1 , 2 and that with the job set J 2 , 1 . A criterion for the existence of a single-element J-solution for the uncertain flow-shop problem F 2 | l i j p i j u i j | C m a x is determined in Theorem 2.
In what follows, it is assumed that the equality J 1 , 2 = J 1 , 2 1 J 1 , 2 2 J 1 , 2 * holds, i.e., J 1 , 2 0 = . Using the results presented in Section 3, one can determine a binary relation A 1 , 2 for the uncertain flow-shop problem F 2 | l i j p i j u i j | C m a x with the job set J 1 , 2 . For the job set J 1 , 2 , the binary relation A 1 , 2 determines the digraph G 1 , 2 = ( J 1 , 2 , A 1 , 2 ) with the vertex set J 1 , 2 and the arc set A 1 , 2 .
Definition 4.
Two jobs J x J 1 , 2 and J y J 1 , 2 , x y , are conflict if they are not in the relation A 1 , 2 , i.e., ( J x , J y ) A 1 , 2 and ( J y , J x ) A 1 , 2 .
Due to Definition 2, for the conflict jobs J x J 1 , 2 and J y J 1 , 2 , x y , relations (3) and (4) do not hold for the case v = x with w = y , nor for the case v = y with w = x .
Definition 5.
The inclusion-minimal set J x J 1 , 2 of the jobs is called a conflict set of the jobs, if for any job J y J 1 , 2 J x either relation ( J x , J y ) A 1 , 2 or relation ( J y , J x ) A 1 , 2 holds for each job J x J x .
There may exist several conflict sets in the set J 1 , 2 . Let the strict order A 1 , 2 for the flow-shop problem F 2 | l i j p i j u i j | C m a x with the job set J 1 , 2 be represented as follows:
J 1 J 2 J k { J k + 1 , J k + 2 , , J k + r } J k + r + 1 J k + r + 2 J m 1 , 2 .
Here, an optimal permutation for processing jobs from the set { J 1 , J 2 , , J k } (for jobs from the set { J k + r + 1 , J k + r + 2 , , J m 1 , 2 } ) is as follows: ( J 1 , J 2 , , J k ) ( ( J k + r + 1 , J k + r + 2 , , J m 1 , 2 ) , respectively). All jobs between braces in the presentation (8) constitute the conflict set of the jobs and they are in relation A 1 , 2 with any job located outside the braces. Due to Theorem 3, the set Π ( G 1 , 2 ) of the permutations generated by the digraph G 1 , 2 includes an optimal permutation for each vector p 1 , 2 of the processing times of the jobs J 1 , 2 . Due to Corollary 1, the set S 1 , 2 ( T ) = { ( π 1 , 2 , π 1 , 2 ) } with π 1 , 2     Π ( G 1 , 2 ) is a J-solution for the flow-shop problem F 2 | l i j p i j u i j | C m a x with the job set J 1 , 2 . Analogously, the set S 2 , 1 ( T ) = { ( π 2 , 1 , π 2 , 1 ) } with π 2 , 1     Π ( G 2 , 1 ) is a J-solution for the problem F 2 | l i j p i j u i j | C m a x with the job set J 2 , 1 . Due to Theorem 5, one can determine a dominant set for the job-shop problem J 2 | l i j p i j u i j , n i 2 | C m a x with the job set J as follows: < Π ( G 1 , 2 ) , Π ( G 2 , 1 ) > S ; see Remark 1.
The following three theorems are proven in [8], where the notation L 2 : = J j J 2 , 1 J 2 l j 2 is used. These theorems allow a scheduler to reduce the cardinality of a dominant set for the uncertain job-shop scheduling problem J 2 | l i j p i j u i j , n i 2 | C m a x .
Theorem 6
([8]). Let the strict order A 1 , 2 over the set J 1 , 2 = J 1 , 2 * J 1 , 2 1 J 1 , 2 2 be determined as follows: J 1 J k { J k + 1 , J k + 2 , , J k + r } J k + r + 1 J m 1 , 2 . If the following inequality holds:
i = 1 k + r u i 1 L 2 + i = 1 k l i 2 ,
then the set S = < { π 1 , 2 } , Π ( G 2 , 1 ) > S , where π 1 , 2     Π ( G 1 , 2 ) , is a dominant set for the job-shop problem J 2 | l i j p i j u i j , n i 2 | C m a x with the job set J = J 1 J 2 J 1 , 2 J 2 , 1 .
Theorem 7
([8]). Let the partial strict order A 1 , 2 over the set J 1 , 2 = J 1 , 2 * J 1 , 2 1 J 1 , 2 2 be determined as follows: J 1 J k { J k + 1 , J k + 2 , , J k + r } J k + r + 1 J m 1 , 2 . If the inequality
u k + s , 1 L 2 + i = 1 k + s 1 ( l i 2 u i 1 )
holds for each   s     { 1 , 2 , , r } , then the set S = <   { π 1 , 2 } , S 2 , 1   > , where π 1 , 2 = ( J 1 , , J k 1 , J k , J k + 1 , J k + 2 , , J k + r , J k + r + 1 , , J m 1 , 2 )     Π ( G 1 , 2 ) , is a dominant set for the job-shop problem J 2 | l i j p i j u i j , n i 2 | C m a x with the job set J = J 1 J 2 J 1 , 2 J 2 , 1 .
Theorem 8
([8]). Let the partial strict order A 1 , 2 over the set J 1 , 2 = J 1 , 2 * J 1 , 2 1 J 1 , 2 2 have the form J 1 J k { J k + 1 , J k + 2 , , J k + r } J k + r + 1 J m 1 , 2 . If the inequality
i = r s + 2 r s + 1 l k + i , 1 j = r s + 1 r u k + j , 2
holds for each s     { 1 , 2 , , r } , then the set S = < { π 1 , 2 } , S 2 , 1 > , where π 1 , 2 = ( J 1 , , J k 1 , J k , J k + 1 , J k + 2 , , J k + r , J k + r + 1 , , J m 1 , 2 )     Π ( G 1 , 2 ) , is a dominant set for the job-shop problem J 2 | l i j p i j u i j , n i 2 | C m a x with the job set J = J 1 J 2 J 1 , 2 J 2 , 1 .
One can describe the analogs of Theorems 6–8 for reducing the cardinality of a dominant set for the job-shop problem J 2 | l i j p i j u i j , n i 2 | C m a x provided that for the flow-shop problem F 2 | l i j p i j u i j | C m a x with the job set J 2 , 1 , there exists a partial strict order A 2 , 1 over the set J 2 , 1 = J 2 , 1 * J 2 , 1 1 J 2 , 1 2 with the following form: J 1 J k { J k + 1 , J k + 2 , , J k + r } J k + r + 1 J m 2 , 1 .
If the set { J 1 , , J k } is empty in the constructed job permutation, then it is needed to check the conditions of Theorem 8. If the set { J k + r + 1 , , J m 1 , 2 } is empty, then one needs to check the conditions of Theorem 7. Note that it is enough to test only one permutation for checking the conditions of Theorem 7 and only one permutation for checking the conditions of Theorem 8; see [8].

4.3. An Illustrative Example

To illustrate the above results, we consider Example 1 of the uncertain job-shop scheduling problem J 2 | l i j p i j u i j , n i 2 | C m a x with eight jobs { J 1 , J 2 , , J 8 } = J . Let three jobs J 1 , J 2 and J 3 have the machine route ( M 1 , M 2 ) , jobs J 6 , J 7 and J 8 have the opposite machine route ( M 2 , M 1 ) , job J 4 and job J 5 have to be processed only on machine M 1 and machine M 2 , respectively. The partition J = J 1 , 2 J 2 , 1 J 1 J 2 is given, where J 1 , 2 = { J 1 , J 2 , J 3 } , J 2 , 1 = { J 6 , J 7 , J 8 } , J 1 = { J 4 } and  J 2 = { J 5 } . The lower and upper bounds on the job processing times are determined in Table 1.
To solve this uncertain job-shop scheduling problem, one need to determine an optimal pair ( π , π ) of permutations of the eight jobs for their processing on machine M 1 and machine M 2 . These permutations π and π have the following forms: π = ( π 1 , 2 , π 1 , π 2 , 1 ) , π = ( π 2 , 1 , π 2 , π 1 , 2 ) .
It is necessary to find four permutations π 1 , 2 , π 2 , 1 , π 1 and π 2 of the jobs from the sets J 1 , 2 , J 2 , 1 , J 1 and J 2 , respectively. The permutations π 1 and π 2 are determined as follows: π 1 = ( J 4 ) and π 2 = ( J 5 ) .
We test the sufficient conditions given in Section 4.1. The conditions (5) of Theorem 4 do not hold. For testing the conditions (6) of Theorem 4, one can obtain the following relations:
J i J 2 , 1 u i 2 = u 6 , 2 + u 7 , 2 + u 8 , 2 = 4 + 4 + 4 = 12 J i J 1 , 2 J 1 l i 1 = l 1 , 1 + l 2 , 1 + l 3 , 1 + l 4 , 1 = 6 + 8 + 7 + 2 = 23 ,
J i J 2 , 1 l i 1 = l 6 , 1 + l 7 , 1 + l 8 , 1 = 1 + 1 + 1 = 3 J i J 1 , 2 J 2 u i 2 = u 1 , 2 + u 2 , 2 + u 3 , 2 + u 5 , 2 = 7 + 6 + 5 + 3 = 21 .
It should be noted that the case when conditions of Theorem 4 hold was considered in [8].
As the first condition in (6) holds, due to Corollary 3, one can construct permutation π 2 , 1 = ( J 6 , J 7 , J 8 ) by arranging the jobs from the set J 2 , 1 in the increasing of their indexes.
For the jobs from the set J 1 , 2 , the partition J 1 , 2 = J 1 , 2 1 J 1 , 2 2 J 1 , 2 * holds, where J 1 , 2 * = { J 1 } and J 1 , 2 2 = { J 2 , J 3 } . The condition of Theorem 2 holds for these jobs. Therefore, the following optimal permutation: π 1 , 2 = ( J 1 , J 2 , J 3 ) is determined.
Thus, there exists a pair of job permutations ( π , π ) , where π = ( J 1 , J 2 , J 3 , J 4 , J 6 , J 7 , J 8 ) and π = ( J 6 , J 7 , J 8 , J 5 , J 1 , J 2 , J 3 ) , which is optimal for all possible scenarios p     T . Hence, there exists a single-element dominant set D S ( T ) = { ( π , π ) } for Example 1 of the uncertain job-shop problem J 2 | l i j p i j u i j , n i 2 | C m a x with the bounds on the job processing times given in Table 1.
The optimal semi-active schedule is constructed for Example 1 at the off-line phase of scheduling, despite of the uncertainty of the job processing times. Such an issue is called as STOP 1 in the scheduling algorithms developed in [8] and used in Section 6 of this paper.

5. The On-line Phase of Scheduling

Due to Remark 3, if the job J i is completed on the corresponding machine M j M , the duration of the operation O i j takes on exact value p i j * , where l i j p i j * u i j . A scheduler can use this information on the duration of the operation O i j for a selection of the next job for processing on machine M j . Since it is on-line phase of scheduling, such a selection should be very quick.
It is first assumed that the set S = < Π ( G 1 , 2 ) , { π 2 , 1 * } > S , is a dominant set for the problem J 2 | l i j p i j u i j , n i 2 | C m a x with the job set J . In other words, the optimal permutations for processing all jobs from the set J 2 , 1 are already determined at the off-line phase of scheduling.
Let the strict order A 1 , 2 over the set J 1 , 2 = J 1 , 2 * J 1 , 2 1 J 1 , 2 2 be determined as follows: J 1 J k { J k + 1 , J k + 2 , , J k + r } J k + r + 1 J m 1 , 2 . At the initial time t = 0 , machine M 1 has to start processing jobs from the set { J 1 , , J k } in the following optimal order: ( J 1 , , J k ) . At the same time t = 0 , machine M 2 has to start processing jobs from the set J 2 , 1 in the order determined by the permutation π 2 , 1 * , then jobs from the set J 2 in the arbitrary order, and then jobs from the set { J 1 , , J k } in the following optimal order: ( J 1 , , J k ) ; see Figure 3.
At the time-point t = c 1 ( k ) , machine M 1 completes the operation O k 1 . Let J ( i , j ) denote a set of all jobs processed on machine M j from the initial part of the schedule till the job J i , e.g., the set of jobs { J 1 , J 2 , , J k } is denoted as J ( k , 1 ) ; see Figure 3. Due to Remark 3, at the time-point t = c 1 ( k ) , the factual values p i 1 * of the processing times p i 1 of all jobs J i in the set J ( k , 1 ) are already known.
Let machine M 2 process the job J l J 2 , 1 J 2 { J 1 , J 2 , , J k } at the time-point t = c 1 ( k ) , i.e., t = c 1 ( k ) < c 2 ( l ) . Let J ( l 1 , 2 ) denote a set of all jobs whose processing is completed on machine M 2 before time-point t = c 1 ( k ) . Figure 3 depicts this situation for the job J l 1   { J 1 , J 2 , , J k } J 1 , 2 .
The factual values p i 2 * of the processing times p i 2 of all jobs J i in the set J ( l 1 , 2 ) are known at the time-point t = c 1 ( k ) > c 2 ( l 1 ) , i.e., p i 2 = p i 2 * , while the factual values of the processing times p j 2 of other jobs in the set J remain unknown at the time-point t = c 1 ( k ) < c 2 ( l ) . Thus, at the time-point t = c 1 ( k ) , the following subset of possible scenarios:
T ( k , l 1 ) = { p     T : p i 1 = p i 1 * , p j 2 = p j 2 * , J i   J ( k , 1 ) , J j   J ( l 1 , 2 ) }
may be realized instead of the initial set T of all possible scenarios; T ( k , l 1 ) T .
At the time-point t = c 1 ( k ) (it is called a decision-point), a scheduler has to make a decision about the order for processing jobs from the conflict set { J k + 1 , J k + 2 , , J k + r } . The sufficient conditions given in Theorems 6 and 7 can be reformulated in the following two theorems. (Note that Theorem 8 cannot be reformulated for the use at the on-line phase of scheduling.)
Theorem 9.
Let the set S = < Π ( G 1 , 2 ) , { π 2 , 1 * } > S be a dominant set for the uncertain problem J 2 | l i j p i j u i j , n i 2 | C m a x with the job set J . Let the strict order A 1 , 2 over the set J 1 , 2 = J 1 , 2 * J 1 , 2 1 J 1 , 2 2 be determined as follows: J 1 J k { J k + 1 , J k + 2 , , J k + r } J k + r + 1 J m 1 , 2 . If at the time-point t = c 1 ( k ) , the following inequality holds:
c 1 ( k ) + i = k + 1 k + r u i 1 c 2 ( l 1 ) + J i ( J 2 , 1 J 2 J ( k , 1 ) ) J ( l 1 , 2 ) l i 2 ,
then at the time-point t = c 1 ( k ) , the set S = < { π 1 , 2 } , { π 2 , 1 * } > S , where π 1 , 2     Π ( G 1 , 2 ) , is a dominant set for the problem J 2 | l i j p i j u i j , n i 2 | C m a x with the job set J and the set T ( k , l 1 ) of possible scenarios.
Proof. 
Let p be an arbitrary vector from the set T ( k , l 1 ) of possible scenarios at the time-point t = c 1 ( k ) . Let C max p denote the optimal makespan value for the deterministic job-shop problem J 2 | p , n i 2 | C max with the set J of the given jobs and the vector p of the job processing times.
We consider an arbitrary permutation π 1 , 2     Π ( G 1 , 2 ) and show that the pair of job permutations ( π , π ) = ( ( π 1 , 2 , π 1 , π 2 , 1 * ) , ( π 2 , 1 * , π 2 , π 1 , 2 ) )   S is an optimal one for the deterministic job-shop problem J 2 | p , n i 2 | C max with the set J of the jobs and with any vector p     T ( k , l 1 ) of the job processing times, i.e., the equality C max ( π , π ) = C max p holds. Since the equality C max ( π , π ) = max { c 1 ( π ) , c 2 ( π ) } holds, one has to consider two possible cases (a) and (b).
Case (a): It is assumed that c 1 ( π ) c 2 ( π ) . Then, one can obtain the following equalities:
C max ( π , π ) = c 1 ( π ) = max { J i J 1 , 2 J 2 , 1 J 1 p i 1 , C max ( π 2 , 1 * ) } ,
where C max ( π 2 , 1 * ) is the value of makespan for the deterministic flow-shop problem F 2 | p 2 , 1 | C max with the job set J 2 , 1 and the vector p 2 , 1 whose components are equal to the corresponding components of the vector p. Due to the conditions of Theorem 9, the permutation π 2 , 1 * is optimal for the deterministic flow-shop problem F 2 | p 2 , 1 | C max with the set J 2 , 1 of the given jobs and with vector p 2 , 1 of the job processing times. Therefore, C max ( π 2 , 1 * ) is an optimal makespan value for the deterministic flow-shop problem F 2 | p 2 , 1 | C max and C max ( π 2 , 1 * ) is a minimal completion time for processing all jobs from the set J 2 , 1 on both machines. From the equalities (13), one can obtain the equality C max ( π , π ) = C max p .
Case (b): It is assumed that c 1 ( π ) < c 2 ( π ) . Then, one can obtain the following equalities:
C max ( π , π ) = c 2 ( π ) = max { J i J 2 , 1 J 2 J 1 , 2 p i 2 , C max ( π 1 , 2 ) } ,
where C max ( π 1 , 2 ) is an optimal value of the makespan criterion for the deterministic flow-shop problem F 2 | p 1 , 2 | C max with the job set J 1 , 2 and with the vector p 1 , 2 of the job processing times (the components of this vector are equal to the corresponding components of the vector p). Since π 1 , 2     Π ( G 1 , 2 ) , the initial part of the permutation π 1 , 2 has the following form: ( J 1 , J 2 , , J k ) . For every pair of jobs from the set { J 1 , J 2 , , J k } , at least one of the conditions, either (3) or (4), holds, see Theorem  1.
Therefore, for the job processing times determined by the vector p for the jobs { J 1 , J 2 , , J k } , the inequalities (2) hold. Thus, in the permutation π 1 , 2 b e g : = ( J 1 , J 2 , , J k ) , all the jobs are arranged in the Johnson’s order. One can conclude that the following value
C max ( π 1 , 2 b e g ) = max 1 m k { i = 1 m p i 1 + i = m k p i 2 }
determines an optimal makespan value for the deterministic flow-shop problem F 2 | p 1 , 2 b e g | C max with the job set { J 1 , J 2 , , J k } and the corresponding vector p 1 , 2 b e g of the job processing times (the components of the vector p 1 , 2 b e g are equal to the corresponding components of the vector p). Therefore, C max ( π 1 , 2 b e g ) is a minimal makespan value for processing jobs of the set { J 1 , J 2 , , J k } on both machines. Then, for the time-point c 2 ( k ) when machine M 2 completes the operation O k 2 , one can obtain the following equality:
c 2 ( k ) = max { J i J 2 , 1 J 2 J 1 , 2 ( k , 1 ) p i 2 , C max ( π 1 , 2 b e g ) } .
Due to the inequality (12) and the equality (16), one can obtain the following inequalities for the jobs from the conflict set { J k + 1 , J k + 2 , , J k + r } :
c 1 ( k ) + i = k + 1 k + r p i 1 c 1 ( k ) + i = k + 1 k + r u i 1 c 2 ( l 1 ) + J i ( J 2 , 1 J 2 J ( k , 1 ) ) J ( l 1 , 2 ) l i 2
c 2 ( l 1 ) + J i ( J 2 , 1 J 2 J ( k , 1 ) ) J ( l 1 , 2 ) p i 2 max { J i J 2 , 1 J 2 J 1 , 2 ( k , 1 ) p i 2 , C max ( π 1 , 2 b e g ) } = c 2 ( k ) .
From the inequalities (17), one can obtain the following inequality:
c 1 ( k ) + i = k + 1 k + r p i 1 c 2 ( k ) .
Thus, machine M 2 processes all jobs from the conflict set { J k + 1 , J k + 2 , , J k + r } without idle times and without an idle before processing the first job from this conflict set for any order of these conflict jobs. Using the inequality (18), one can conclude that the time-point when machine M 2 completes the processing of the last job from the conflict set { J k + 1 , J k + 2 , , J k + r } in the permutation π 1 , 2 is determined as follows:
c 2 = c 2 ( k ) + i = k + 1 k + r p i 2 ,
where c 2 is an optimal makespan value for processing jobs from the set { J 1 , J 2 , , J k , J k + 1 , J k + 2 , , J k + r } . Next, we consider jobs from the set { J k + r + 1 , , J m 1 , 2 } .
Let π 1 , 2 e n d : = ( J k + r + 1 , , J m 1 , 2 ) denote the permutation of the jobs { J k + r + 1 , , J m 1 , 2 } in the permutation π 1 , 2 . Analogously as for the job set { J 1 , J 2 , , J k } , one can obtain that the value of
C max ( π 1 , 2 e n d ) : = max k + r + 1 m m 1 , 2 { i = k + r + 1 m p i 1 + i = m m 1 , 2 p i 2 }
is an optimal makespan value for the deterministic flow-shop problem F 2 | p 1 , 2 e n d | C max with the job set { J k + r + 1 , , J m 1 , 2 } and with the vector p 1 , 2 e n d whose components are equal to the components of the vector p. Thus, C max ( π 1 , 2 e n d ) is a minimal makespan value for processing all jobs from the set { J k + r + 1 , , J m 1 , 2 } on both machines. The time-point when machine M 2 completes the processing of the last job from the permutation π can be calculated as follows:
c 2 ( π ) = max { i = 1 k + r p i 1 + C max ( π 1 , 2 e n d ) , c 2 + i = k + r + 1 m 1 , 2 p i 2 } =
= max { i = 1 k + r p i 1 + C max ( π 1 , 2 e n d ) , c 2 ( k ) + i = k + 1 k + r p i 2 + i = k + r + 1 m 1 , 2 p i 2 } =
= max { i = 1 k + r p i 1 + C max ( π 1 , 2 e n d ) , max { J i J 2 , 1 J 2 J 1 , 2 ( k , 1 ) p i 2 , C max ( π 1 , 2 b e g ) } + i = k + 1 m 1 , 2 p i 2 } =
= max { i = 1 k + r p i 1 + C max ( π 1 , 2 e n d ) , J i J 2 , 1 J 2 J 1 , 2 ( k , 1 ) p i 2 + i = k + 1 m 1 , 2 p i 2 , C max ( π 1 , 2 b e g ) + i = k + 1 m 1 , 2 p i 2 } =
= max { C max ( π 1 , 2 b e g ) + i = k + 1 m 1 , 2 p i 2 , i = 1 k + r p i 1 + C max ( π 1 , 2 e n d ) , J i J 2 , 1 J 2 J 1 , 2 p i 2 } ,
where relations (16) and (19) are used.
Due to Theorem 3, the set Π ( G 1 , 2 ) contains a Johnson’s permutation for the deterministic flow-shop problem F 2 | p 1 , 2 | C max with the job set J 1 , 2 and with the vector p 1 , 2 of the job durations. We denote this Johnson’s permutation as π 1 , 2 * . Since π 1 , 2 *     Π ( G 1 , 2 ) , the permutation π 1 , 2 * has the following form: π 1 , 2 * = ( J 1 , , J k , J [ k + 1 ] , J [ k + 2 ] , , J [ k + r ] , J k + r + 1 , , J m 1 , 2 ) , where the set of indexes is determined as follows: { [ k + 1 ] , [ k + 2 ] , , [ k + r ] } = { k + 1 , k + 2 , , k + r } .
The optimal makespan value C max ( π 1 , 2 * ) can be calculated as follows:
C max ( π 1 , 2 * ) = max 1 m m 1 , 2 { i = 1 m p i 1 + i = m m 1 , 2 p i 2 } = max { max 1 m k { i = 1 m p i 1 + i = m k p i 2 + i = k + 1 m 1 , 2 p i 2 } ,
max [ k + 1 ] m [ k + r ] { i = 1 m p i 1 + i = m m 1 , 2 p i 2 } , max k + r + 1 m m 1 , 2 { i = 1 k + r p i 1 + i = k + r + 1 m p i 1 + i = m m 1 , 2 p i 2 } } =
= max { C max ( π 1 , 2 b e g ) + i = k + 1 m 1 , 2 p i 2 , max [ k + 1 ] m [ k + r ] { i = 1 m p i 1 + i = m m 1 , 2 p i 2 } , i = 1 k + r p i 1 + C max ( π 1 , 2 e n d ) } ,
where relations (15) and (20) are used. From relations (21) and (22), one can obtain the relations
c 2 ( π ) = max { C max ( π 1 , 2 b e g ) + i = k + 1 m 1 , 2 p i 2 , i = 1 k + r p i 1 + C max ( π 1 , 2 e n d ) , J i J 2 , 1 J 2 J 1 , 2 p i 2 }
max { C max ( π 1 , 2 * ) , J i J 2 , 1 J 2 J 1 , 2 p i 2 } .
Therefore, relations (14) and (23) imply the equality C max ( π , π ) = C max p .
Thus, in both cases (a) and (b), the equality C max ( π , π ) = C max p holds and the pair of permutations ( π , π ) = ( ( π 1 , 2 , π 1 , π 2 , 1 * ) , ( π 2 , 1 * , π 2 , π 1 , 2 ) ) is optimal for the deterministic job-shop problem J 2 | p , n i 2 | C max with the scenario p     T ( k , l 1 ) . Therefore, the set S = < { π 1 , 2 } , { π 2 , 1 * } > contains an optimal pair of job permutations for the job-shop problem J 2 | p , n i 2 | C max with vector p     T ( k , l 1 ) of the job processing times. Since the vector p is arbitrarily chosen in the set T ( k , l 1 ) , the set S contains an optimal pair of job permutations for each scenario in the set T ( k , l 1 ) .
Due to Definition 3, the set S is a dominant set for the uncertain job-shop problem J 2 | l i j p i j u i j , n i 2 | C max with the job set J and with the set T ( k , l 1 ) of possible scenarios. □
Theorem 10.
Let the set S = < Π ( G 1 , 2 ) , { π 2 , 1 * } > S be a dominant set for the uncertain job-shop problem J 2 | l i j p i j u i j , n i 2 | C m a x with the job set J . Let the partial strict order A 1 , 2 over the set J 1 , 2 = J 1 , 2 * J 1 , 2 1 J 1 , 2 2 be determined as follows: J 1 J k { J k + 1 , J k + 2 , , J k + r } J k + r + 1 J m 1 , 2 . If at the time-point t = c 1 ( k ) , the following inequalities hold:
c 1 ( k ) + i = k + 1 k + s u i 1 c 2 ( l 1 ) + J i ( J 2 , 1 J 2 J ( k 1 , 1 ) ) J ( l 1 , 2 ) l i 2 + i = k k + s 1 l i 2
for all indexes s     { 1 , 2 , , r } , then at the time-point t = c 1 ( k ) , the set S = < { π 1 , 2 } , { π 2 , 1 * } > , where π 1 , 2 = ( J 1 , , J k 1 , J k , J k + 1 , J k + 2 , , J k + r , J k + r + 1 , , J m 1 , 2 )     Π ( G 1 , 2 ) , is a dominant set for the uncertain problem J 2 | l i j p i j u i j , n i 2 | C m a x with the job set J and the set T ( k , l 1 ) of possible scenarios.
Proof. 
The proof of this theorem is similar to the above proof of Theorem 9 with the exception of the inequalities (17) and (18). From the condition (24) with s = 1 , one can obtain the following inequality:
c 1 ( k ) + u k + 1 , 1 c 2 ( l 1 ) + J i ( J 2 , 1 J 2 J ( k 1 , 1 ) ) J ( l 1 , 2 ) l i 2 + l k 2 .
Based on the inequality (25), one can obtain the following relations:
c 1 ( k ) + p k + 1 , 1 c 1 ( k ) + u k + 1 , 1 c 2 ( l 1 ) + J i ( J 2 , 1 J 2 J ( k 1 , 1 ) ) J ( l 1 , 2 ) l i 2 + l k 2
c 2 ( l 1 ) + J i ( J 2 , 1 J 2 J ( k , 1 ) ) J ( l 1 , 2 ) p i 2 = c 2 ( k ) .
Due to relations (26), the following inequality holds:
c 1 ( k ) + p k + 1 , 1 c 2 ( k ) .
Thus, machine M 2 processes the job J k + 1 in permutation π 1 , 2 without an idle time between the jobs J k and J k + 1 . Analogously, using s     { 2 , 3 , , r } , one can show that the following inequalities hold:
c 1 ( k ) + p k + 1 , 1 + p k + 2 , 1 c 2 ( k + 1 ) ;
c 1 ( k ) + p k + 1 , 1 + p k + 2 , 1 + p k + 3 , 1 c 2 ( k + 2 ) ;
;
c 1 ( k ) + i = k + 1 k + r p i 1 c 2 ( k + r 1 ) .
Therefore, machine M 2 processes jobs from the conflict set { J k + 1 , J k + 2 , , J k + r } in permutation π 1 , 2 without idle times between the jobs J k + 1 and J k + 2 , between the jobs J k + 2 and J k + 3 and so on, between the jobs J k + r 1 and J k + r . Then, the following relations hold:
c 2 = c 2 ( k + r ) = c 2 ( k + r 1 ) + p k + r , 2 = c 2 ( k + r 2 ) + p k + r 1 , 2 + p k + r , 2 = = c 2 ( k ) + i = k + 1 k + r p i 2
leading to the equality (19). The rest of the proof is the same as the rest of the proof of Theorem 9.
It is shown that the pair of job permutations ( π , π ) = ( ( π 1 , 2 , π 1 , π 2 , 1 * ) , ( π 2 , 1 * , π 2 , π 1 , 2 ) )     S is optimal for the deterministic job-shop problem J 2 | p , n i 2 | C m a x with any vector p     T ( k , l 1 ) of the job processing times. Due to Definition 3, the set S is a dominant set for the uncertain job-shop problem J 2 | l i j p i j u i j , n i 2 | C m a x with the job set J and the set T ( k , l 1 ) of possible scenarios. □
It is easy to be convinced that the sufficient conditions given in Theorems 9 and 10 may be tested in polynomial time O ( r 2 ) of the number r of the conflict jobs.
Similarly, one can prove analogs of Theorems 9 and 10 if the set S = < { π 1 , 2 * } , Π ( G 2 , 1 ) > S provided that a dominant set for the uncertain job-shop problem J 2 | l i j p i j u i j , n i 2 | C m a x with the job set J and the partial strict order A 2 , 1 over the set J 2 , 1 = J 2 , 1 * J 2 , 1 1 J 2 , 1 2 has the following form: J 1 J k { J k + 1 , J k + 2 , , J k + r } J k + r + 1 J m 2 , 1 .

6. Scheduling Algorithms and Computational Results

The experimental study was performed on a large number of randomly generated instances of the uncertain job-shop scheduling problem J 2 | l i j p i j u i j , n i 2 | C m a x . The off-line phase of scheduling was based on Algorithms 1 and 2 developed in [8]. Algorithms 1 and 2 are presented in Appendix A.
Algorithms 3–5 are developed for the on-line phase of scheduling. The input for each of these three algorithms includes the output of Algorithms 1 and 2 [8] applied at the off-line phase of scheduling.
Let outputs of Algorithms 1 and 2 [8] applied at the off-line phase of scheduling consist of the optimal permutation π 1 , 2 of the jobs J 1 , 2 and the optimal permutation π 2 , 1 of the jobs J 2 , 1 . In such a case, the single-element dominant set D S ( T ) = { ( π 1 , 2 , π 1 , π 2 , 1 ) , ( π 2 , 1 , π 2 , π 1 , 2 ) } is already constructed for the considered instance of the uncertain problem J 2 | l i j p i j u i j , n i 2 | C m a x . Therefore, the pair { ( π 1 , 2 , π 1 , π 2 , 1 ) , ( π 2 , 1 , π 2 , π 1 , 2 ) } of the job permutations is optimal for the deterministic instance J 2 | p , n i 2 | C m a x with any scenario p     T . Thus, such an instance of the uncertain problem J 2 | l i j p i j u i j , n i 2 | C m a x is optimally solved by Algorithms 1 and 2 at the off-line phase of scheduling. Hence, there is no need to use the on-line phase of scheduling for such an instance of the uncertain job-shop scheduling problem J 2 | l i j p i j u i j , n i 2 | C m a x .
In Section 6.1, it shown how to solve instances of the uncertain job-shop problem J 2 | l i j p i j u i j , n i 2 | C m a x , which cannot be optimally solved at the off-line phase of scheduling.

6.1. Algorithms 3–5 for the On-Line Phase of Scheduling

Let the considered instance of the uncertain job-shop problem J 2 | l i j p i j u i j , n i 2 | C m a x cannot be optimally solved by Algorithms 1 and 2 [8] applied at the off-line phase of scheduling. Thus, due to an application of Algorithm 1 or Algorithm 2, one can obtain one of the following three possible outputs:
(a)
the permutation π 2 , 1 of the jobs from set J 2 , 1 and the partial strict order A 1 , 2 of the jobs J 1 , 2 ;
(b)
the permutation π 1 , 2 of the jobs from set J 1 , 2 and the partial strict order A 2 , 1 of the jobs J 2 , 1 ;
(c)
the partial strict order A 1 , 2 of the jobs J 1 , 2 and the partial strict order A 2 , 1 of the jobs J 2 , 1 .
Let B denote a number of the conflict sets in a partial strict order (in both partial strict orders) for the obtained output (a), (b) or (c). In other words, B denotes a maximal number of time-points in the decision-making at the on-line phase of scheduling. Let integer b, where b B , denote a number of time-points in the decision-making, where optimal orders of the conflict jobs were found using Theorem 9 or Theorem 10. Using these notations, we next describe Algorithm 3 provided that there is no factual processing times of the jobs J in the input of Algorithm 3; see Remark 3.
Let Algorithm 3 terminate at Step 16, i.e., it has not been constructed an optimal pair of job permutations for the factual scenario p *     T randomly determined after completing the on-line phase of scheduling. Therefore, there is a strictly positive error Δ ( s ) of the objective function C m a x ( s ) calculated for the constructed and realized schedule s. In such a case, the proven sufficient conditions for the optimality of the schedule s do not hold in some decision-points (or in a single decision-point) at the on-line phase of scheduling. If Algorithm 3 terminates at Step 17, then an optimal pair of job permutations has been constructed for the factual scenario p *     T randomly generated after completing the on-line phase of scheduling. The optimality of this pair of the job permutations was established only after the schedule execution, since the tested sufficient conditions for the optimality of the schedule s do not hold in some decision-points (or in a single decision-point).
If Algorithm 3 terminates at Step 18, then the tested sufficient conditions hold for all decision-points considered at the on-line phase of scheduling. Therefore, the constructed pair of job permutations is optimal for all factual scenarios p *     T which were possible during the on-line phase of scheduling. In this case, the optimal pair of job permutations was established before the end of the schedule execution (after the last decision-point). The described Algorithm 3 must be used if the input (a) is obtained due to the application of Algorithms 1 and 2 [8] at the off-line phase of scheduling. Similarly, one can describe Algorithm 4 with the sufficient conditions from the analogs of Theorems 9 and  10 for their use in the case, when the input (b) is obtained due to the application of Algorithms 1 and 2 at the off-line phase of scheduling.
Similar Algorithm 5 must be used in the case, when the input (c) is obtained due to the application of Algorithms 1 and 2 at the off-line phase of scheduling. In Algorithm 3, a decision-point may occur on machine M 1 and on machine M 2 simultaneously. Therefore, one has to check the conditions of Theorems 9 and 10 or their analogs alternately for the corresponding conflict sets of the jobs from the set J 1 , 2 and those from the set J 2 , 1 .
Algorithm 3 for the on-line phase of scheduling
Input:Lower bounds l i j and upper bounds u i j on the durations p i j
of all operations O i j   J processed on machines M j     M ;
a permutation π 1 of the jobs J 1 and a permutation π 2 of the jobs J 2 ;
an optimal permutation π 2 , 1 of the jobs from the set J 2 , 1 ;
a partial strict order A 1 , 2 of the jobs from the set J 1 , 2 ;
a number B of the conflict sets in the partial strict order A 1 , 2 .
Output:Permutation π 1 , 2 of the jobs from the set J 1 , 2 .
Step 1:Set b = 0 .
Step 2:UNTIL the completion time-point of the last job in the set J ,
 process the whole linear part of the jobs in the partial strict order A 1 , 2
  on the machine M 1 till a conflict set of the jobs is met;
 let t denote a time-point of the completion of the linearly ordered set of jobs.
Step 3:Process jobs of the permutation ( π 2 , 1 , π 2 ) and then process the linear part
 in the partial strict order A 1 , 2 on the machine M 2 up to time-point t.
Step 4:Check the conditions of Theorem 9 for the conflict set of the jobs.
Step 5:IF the sufficient conditions of Theorem 9 hold
THEN set b : = b + 1 and choose an arbitrary order π q of the conflict jobs
GOTO step 11.
Step 6:ELSE set d z = l z 2 u z 1 for all conflict jobs J z
 and partition the conflict jobs J z into two subsets X 1 and X 2 ,
 where J z     X 1 if d z 0 , and J z     X 2 otherwise.
Step 7:Construct the following order π q of the conflict jobs:
 First, arrange the jobs from the set X 1 in the non-decreasing order
  of the values of u i 1 , then arrange the jobs from the set X 2
  in the non-increasing order of the values of l i 2 .
Step 8:Check the conditions of Theorem 10 for the constructed
 permutation of the conflict jobs.
Step 9:IF the sufficient conditions of Theorem 10 hold THEN
 set b : = b + 1 GOTO step 11.
Step 10:Construct a Johnson’s permutation π q of the conflict jobs
 based on the inequalities (2) provided that p i j = ( u i j + l i j ) / 2 .
Step 11:Include the permutation π q of the conflict jobs in the strict order
A 1 , 2 instead of the conflict set of these jobs.
Step 12:RETURN
Step 13:IF b = B THEN GOTO step 18.
Step 14:Calculate makespan C max ( s ) for the schedule s constructed at steps 1 – 12;
 calculate makespan C max ( s * ) for the optimal schedule s * polynomially
 calculated for the corresponding deterministic problem J 2 | p * , n i 2 | C m a x ,
 where the factual processing times p * are randomly generated for all jobs J .
Step 15:IF C max ( s ) = C max ( s * ) THEN GOTO step 17.
Step 16:STOP 4: The constructed schedule s is not optimal for the factual
 processing times p * of the jobs J .
Step 17:STOP 3: The optimality of the constructed schedule s for the factual
 processing times p * of the jobs J was established only after
 the execution of the schedule s.
Step 18:STOP 2: The optimality of the constructed schedule s for the factual
 processing times p * of the jobs J was proven before the end
 of the execution of this schedule.

6.2. The Modified Example with Different Factual Scenarios

To demonstrate the on-line phase of scheduling based on Algorithm 3, it is considered Example 2 of the problem J 2 | l i j p i j u i j , n i 2 | C m a x with the numerical input data given in Table 1 similarly as for Example 1 with the only one exception. It is assumed that u 3 , 2 = 6 .
The first part of the off-line phase of scheduling for solving Example 2 is similar to that for Example 1 till checking the conditions of Theorem 2. Indeed, the conditions of Theorem 2 do not hold for the jobs from the set J 1 , 2 since the following strict inequalities hold: u 2 , 2 > l 3 , 2 and u 3 , 2 > l 2 , 2 .
Due to checking the inequalities (3) and (4), one can determine the binary relation A 1 , 2 over the set J 1 , 2 in the following form: J 1 { J 2 , J 3 } . Thus, the set { J 2 , J 3 } is a conflict set with two jobs; see Definition 5. Then, one can consecutively check the conditions of Theorems 6–8 for the jobs from the set J 1 , 2 . After letting k = 1 , r = 2 , one can calculate L 2 = J i J 2 , 1 J 2 l i 2 = l 6 , 2 + l 7 , 2 + l 8 , 2 + l 5 , 2 = 2 + 3 + 4 + 2 = 11 and then obtain the following relations:
i = 1 k + r u i 1 = u 1 , 1 + u 2 , 1 + u 3 , 1 = 7 + 9 + 9 = 25 L 2 + i = 1 k l i 2 = L 2 + l 1 , 2 = 11 + 6 = 17 .
Thus, the condition of Theorem 6 does not hold for Example 2. Next, one can check the conditions of Theorem 7. Similarly as in the previous case, one can obtain that L 2 = 11 , k = 1 , and r = 2 . Due to the condition (10), one can obtain two inequalities as follows: s = 1 and s = 2 . Then, one can check both permutations of the jobs from the set J 1 , 2 , which satisfy the partial strict order A 1 , 2 , as follows: Π ( G 1 , 2 ) = { π 1 , 2 1 , π 1 , 2 2 } , where π 1 , 2 1 = { J 1 , J 2 , J 3 } and π 1 , 2 2 = { J 1 , J 3 , J 2 } .
Thus, the permutation π 1 , 2 1 must be tested. One can obtain the following relations:
u 2 , 1 = 9 L 2 + ( l 1 , 2 u 1 , 1 ) = 11 + ( 6 7 ) = 10 ;
u 3 , 1 = 9 L 2 + i = 1 2 ( l i 2 u i 1 ) = L 2 + ( l 1 , 2 u 1 , 1 ) + ( l 2 , 2 u 2 , 1 ) = 11 + ( 6 7 ) + ( 5 9 ) = 6 .
Hence, the condition of Theorem 7 does not hold for the permutation π 1 , 2 1 .
Analogously, for the permutation π 1 , 2 2 , the following relations hold:
u 3 , 1 = 9 L 2 + ( l 1 , 2 u 1 , 1 ) = 11 + ( 6 7 ) = 10 ;
u 2 , 1 = 9 L 2 + i = 1 2 ( l i 2 u i 1 ) = L 2 + ( l 1 , 2 u 1 , 1 ) + ( l 3 , 2 u 3 , 1 ) = 11 + ( 6 7 ) + ( 4 9 ) = 5 .
Hence, the condition of Theorem 7 does not hold for the permutation π 1 , 2 2 as well.
It is impossible to check the condition of Theorem 8, since the conflict set of the jobs { J 2 , J 3 } is located at the end of the partial strict order A 1 , 2 . Thus, the off-line phase of scheduling is completed, and the constructed partial strict order A 1 , 2 is not a linear order. Therefore, there does not exist a pair of permutations of the jobs, which is optimal for any scenario p     T . In this case, Algorithms 1 and 2 [8] do not terminate with STOP 1. A scheduler needs to use the on-line phase of scheduling for solving Example 2 further.
The output of the off-line phase of scheduling for Example 2 contains the permutation π 2 , 1 = ( J 6 , J 7 , J 8 ) of the jobs J 2 , 1 processed on both machines M 1 and M 2 . The partial strict order A 1 , 2 = ( J 1 { J 2 , J 3 } ) of the jobs J 1 , 2 is constructed. The obtained output (a) of the off-line phase of scheduling shows that Algorithm 3 must be used at the on-line phase of scheduling for solving Example 2.
We next show that Algorithm 3 can be stopped either with STOP 2 (Step 18) or with STOP 3 (Step 17) or with STOP 4 (Step 16) depending on the factual values of the job processing times. Note that B = 1 ; see Algorithm 3.
Case (j): Algorithm 3 is stopped at step 18 (STOP 2).
Consider Step 2 and Step 3 of Algorithm 3. The schedule execution begins as follows: at the initial time-point t = 0 , machine M 1 starts to process operation O 1 , 1 , while machine M 2 starts to process operation O 6 , 2 . This process is continued until the time-point t = 4 when machine M 2 completes operation O 6 , 2 . At this time-point, an exact value of the processing time p 6 , 2 * becomes known, namely: p 6 , 2 * = 4 . Then, machine M 2 starts to process operation O 7 , 2 and machine M 1 continues the processing of operation O 1 , 1 . At the time-point t = 6 , machine M 1 completes operation O 1 , 1 . Therefore, an exact value of the duration of operation O 1 , 1 becomes known as follows: p 1 , 1 * = 6 . At this time-point, a scheduler needs to choose either job J 2 or job J 3 to be processed next on machine M 1 . Note that machine M 2 continues to process the operation O 7 , 2 for two time units, wherein l 7 , 2 = 3 .
Consider Step 4 of Algorithm 3, where the condition (12) of Theorem 9 is checked for the conflict set of jobs { J 2 , J 3 } . Due to equalities k = 1 , r = 2 , c 1 ( 1 ) = 6 , c 2 ( 6 ) = 4 , one can obtain the following relations: c 1 ( 1 ) + u 2 , 1 + u 3 , 1 = 6 + 9 + 9 = 23 c 2 ( 6 ) + l 7 , 2 + l 8 , 2 + l 5 , 2 + l 1 , 2 = 4 + 3 + 4 + 2 + 6 = 19 .
At Steps 6 and 7 of Algorithm 3, one can obtain d 2 = 4 , d 3 = 5 and permutation π q having the following form: π q = ( J 2 , J 3 ) . At Steps 8 and 9 of Algorithm 3, the conditions of Theorem 10 are checked as follows: c 1 ( 1 ) + u 2 , 1 = 6 + 9 = 15 c 2 ( 6 ) + l 7 , 2 + l 8 , 2 + l 5 , 2 + l 1 , 2 = 4 + 3 + 4 + 2 + 6 = 19 ;
c 1 ( 1 ) + u 2 , 1 + u 3 , 1 = 6 + 9 + 9 = 24 c 2 ( 6 ) + l 7 , 2 + l 8 , 2 + l 5 , 2 + l 1 , 2 + l 2 , 2 = 4 + 3 + 4 + 2 + 6 + 5 = 24 .
At Step 11 of Algorithm 3, one can obtain the following strict order A 1 , 2 = ( J 1 J 2 J 3 ) along with the permutation π 1 , 2 = ( J 1 , J 2 , J 3 ) . Since b = 1 = B (see Step 13), Algorithm 3 is stopped at Step 18; see STOP 2. The optimal order of the conflict jobs J 2 and J 3 is found at the time-point t = 6 and the pair of job permutations π = ( J 1 , J 2 , J 3 , J 4 , J 6 , J 7 , J 8 ) and π = ( J 6 , J 7 , J 8 , J 5 , J 1 , J 2 , J 3 ) is optimal for any scenario from the remaining set of possible scenarios T ( 1 , 6 ) = { p     T : p 1 , 1 * = 6 , p 6 , 2 * = 4 } .
Thus, an additional information on the exact values of the processing times p 6 , 2 * and p 1 , 1 * allows a scheduler to find an optimal order of all conflict jobs. It schould be noted that the optimality of the constructed schedule is proven at the time-point t = 6 , i.e., before the end of the schedule execution.
At the time-point t = 6 , machine M 1 begins to process operation O 2 , 1 . Note that all the above checks are performed at the time-point t = 6 .
Case (jj): Algorithm 3 is stopped at Step 17 (STOP 3).
It is considered another possible realization of the semi-active schedule since another factual processing times are randomly generated at the on-line phase of scheduling for Example 2.
At the time-point t = 0 , machine M 1 begins to process operation O 1 , 1 , while machine M 2 begins to process operation O 6 , 2 . Let machine M 2 complete operation O 6 , 2 at the time-point t = 2.8 . Thus, the exact processing time p 6 , 2 * = 2.8 becomes known. Then, machine M 2 begins to process operation O 7 , 2 and completes this process at the time-point t = 6 (i.e., p 7 , 2 * = 3.2 ), while machine M 1 continues processing operation O 1 , 1 . Let at the time-point t = 6.9 , machine M 1 completes operation O 1 , 1 (i.e., p 1 , 1 * = 6.9 ). One needs to choose either job J 2 or job J 3 to be processed next on machine M 1 . At this time, machine M 2 continues to process the operation O 8 , 2 since t = 6 and ( 6.9 6 ) = 0.9 < 4 = l 8 , 2 .
Based on the checking of the condition (12) of Theorem 9 for the conflict set of the jobs, one can obtain the following relations: k = 1 , r = 2 , c 1 ( 1 ) = 6.9 , c 2 ( 7 ) = 6 ;
c 1 ( 1 ) + u 2 , 1 + u 3 , 1 = 6.9 + 9 + 9 = 23.9 c 2 ( 7 ) + l 8 , 2 + l 5 , 2 + l 1 , 2 = 6 + 4 + 2 + 6 = 18 .
Similarly as in the previous case (j), one can obtain d 2 = 4 , d 3 = 5 , and the permutation π q having the following form: π q = ( J 2 , J 3 ) . The conditions of Theorem 10 are checked as follows:
c 1 ( 1 ) + u 2 , 1 = 6.9 + 9 = 15.9 c 2 ( 7 ) + l 8 , 2 + l 5 , 2 + l 1 , 2 = 6 + 4 + 2 + 6 = 18 ;
c 1 ( 1 ) + u 2 , 1 + u 3 , 1 = 6.9 + 9 + 9 = 24.9 c 2 ( 7 ) + l 8 , 2 + l 5 , 2 + l 1 , 2 + l 2 , 2 = 6 + 4 + 2 + 6 + 5 = 23 .
Thus, the conditions of Theorem 10 do not hold. At Step 10 of Algorithm 3, one can construct a Johnson’s permutation π q of the conflict jobs based on the inequalities (2) for the processing times of all conflict jobs determined as follows: p i j = ( u i j + l i j ) / 2 . For the jobs J 2 and J 3 , one can calculate p 2 , 1 = 8.5 , p 2 , 2 = 5.5 , p 3 , 1 = 8 , p 3 , 2 = 5 and the Johnson’s permutation π q of the conflict jobs in the following form: π q = ( J 2 , J 3 ) .
At the time-point t = 6.9 , one can obtain the pair of permutations π = ( J 1 , J 2 , J 3 , J 4 , J 6 , J 7 , J 8 ) and π = ( J 6 , J 7 , J 8 , J 5 , J 1 , J 2 , J 3 ) of the jobs for their processing on machines M . Therefore, at the time-point t = 6 , machine M 1 begins to process operation O 2 , 1 . Then, at the time-point t = 10 , machine M 2 completes operation O 8 , 2 (the exact processing time p 8 , 2 * = 4 becomes known), and then begins to process operation O 5 , 2 till the time-point t = 12.4 (thus, p 5 , 2 * = 2.4 ), and then begins to process operation O 1 , 2 . At the time-point t = 15.5 , machine M 1 completes operation O 2 , 1 (i.e., the exact processing time p 2 , 1 * = 8.6 becomes known), and then begins to process operation O 3 , 1 .
Then, at the time-point t = 18.7 , machine M 2 completes operation O 1 , 2 (the exact processing time p 1 , 2 * = 6.3 becomes known), and then begins to process operation O 2 , 2 till the time-point t = 23.7 (thus, p 2 , 2 * = 5 ). At this time-point, machine M 1 still processes operation O 3 , 1 . As a result, machine M 2 has an idle time in the realized schedule.
At the time-point t = 24.5 , machine M 1 completes operation O 3 , 1 (i.e., p 3 , 1 * = 9 ), and then begins to process operation O 4 , 1 . Machine M 2 begins to process operation O 3 , 2 immediately.
At the time-point t = 26.5 , machine M 1 completes operation O 4 , 1 (i.e., p 4 , 1 * = 2 ), and then begins to process operation O 6 , 1 till the time-point t = 27.5 (i.e., p 6 , 1 * = 1 ). Then, machine M 1 processes operation O 7 , 1 till the time-point t = 28.5 (i,e., p 7 , 1 * = 1 ), and then begins to process operation O 8 , 1 .
At the time-point t = 30.5 , machine M 2 completes operation O 3 , 2 (i.e., the exact processing time p 3 , 2 * = 6 becomes known). Thus, machine M 2 completes to process all jobs in the realized permutation π at the time-point c 2 ( 3 ) = 30.5 . At the time-point t = 31.5 , machine M 1 completes operation O 8 , 1 (and the exact processing time p 8 , 1 * = 3 becomes known). Thus, machine M 1 completes to process all jobs in the realized permutation π at the time-point c 1 ( 8 ) = 31.5 .
All uncertain processing times p     T took their factual values p i j * as follows:
p * = ( p 1 , 1 * , p 1 , 2 * , p 2 , 1 * , , p 7 , 2 * , p 8 , 1 * , p 8 , 2 * ) = ( 6.9 , 6.3 , 8.6 , 5 , 9 , 6 , 2 , 0 , 0 , 2.4 , 1 , 2.8 , 1 , 3.2 , 3 , 4 ) .
It should be remind that these factual processing times p * were randomly generated at the time-points of the completions of the corresponding operations; see Remark 3.
For the constructed and realized schedule ( π , π ) , the equalities C m a x ( π , π ) = max { c 1 ( 8 ) , c 2 ( 3 ) } = max { 31.5 , 30.5 } = 31.5 hold; see Step 14 of Algorithm 3.
Now, one can check whether the constructed and realized schedule ( π , π ) is optimal for the factual vector p * of the job processing times. To this end, one can construct the pair of Jackson’s permutations ( π * , π * ) for the deterministic problem J 2 | p * , n i 2 | C m a x with the factual vector p * of the job processing times. Then, one can find the optimal makespan value for the deterministic problem J 2 | p * , n i 2 | C m a x as follows: C m a x ( π * , π * ) = 31.5 ; see Step 15 of Algorithm 3.
The obtained equalities C m a x ( π * , π * ) = 31.5 = C m a x ( π , π ) mean that Algorithm 3 has constructed the optimal schedule for the deterministic problem J 2 | p * , n i 2 | C m a x with the factual vector p * of the job processing times. However, the optimality of this constructed and realized schedule ( π , π ) was established after the execution of the whole schedule ( π , π ) . Indeed, Algorithm 3 is stopped at Step 17; see STOP 3. The constructed and realized schedule ( π , π ) is presented in Figure 4 for case (jj) of the randomly generated factual processing times p * of the jobs J .
Case (jjj): Algorithm 3 is stopped at Step 16 (STOP 4).
It is considered the same process as in the previous case (jj) up to the time-point t = 28.5 when machine M 1 begins to process operation O 8 , 1 (machine M 2 processes operation O 3 , 2 at this time-point).
Let the equality p 8 , 1 * * = 1 hold for the factual processing time p 8 , 1 * * of the operation O 8 , 1 and machine M 1 complete operation O 8 , 1 . Thus, machine M 1 completes all operations of the jobs J in the permutation π at the time-point 29.5 . Therefore, the equality c 1 ( 8 ) = 29.5 holds. Similarly as in the previous case, machine M 2 completes operation O 3 , 2 at the time-point t = 30.5 . Thus, p 3 , 2 * = 6 and c 2 ( 3 ) = 30.5 . The factual vector of the job processing times is randomly generated as follows:
p * * = ( p 1 , 1 * , p 1 , 2 * , p 2 , 1 * , , p 7 , 2 * , p 8 , 1 * * , p 8 , 2 * ) = ( 6.9 , 6.3 , 8.6 , 5 , 9 , 6 , 2 , 0 , 0 , 2.4 , 1 , 2.8 , 1 , 3.2 , 1 , 4 ) .
The makespan value for the constructed and realized schedule ( π , π ) is determined as follows: C m a x ( π , π ) = max { c 1 ( 8 ) , c 2 ( 3 ) } = max { 29.5 , 30.5 } = 30.5 . However, the optimal makespan value for the deterministic problem J 2 | p * * , n i 2 | C m a x with the factual vector p * * of the job processing times is equal to 29.7 < 30.5 = C m a x ( π , π ) , since the optimal order of the jobs J 2 and J 3 is determined as follows: ( J 3 , J 2 ) . Hence, the constructed and realized schedule ( π , π ) is not optimal for the factual vector p * *     T of the job processing times. In this case, Algorithm 3 is stopped at Step 16; see STOP 4.

6.3. Computational Experiments

We describe the computational experiments and computational results obtained for the tested randomly generated instances of the uncertain problem J 2 | l i j p i j u i j , n i 2 | C m a x . Each tested series consisted of 1000 randomly generated instances with fixed numbers n     { 10 , 20 , , 100 } of the jobs J and the maximum possible errors δ     { 5 % , 10 % , 20 % , 30 % , 40 % , 50 % , 60 % , 70 % , 80 % , 90 % , 100 % } of the random durations of the operations O i j . The lower bounds l i j and upper bounds u i j on the possible values of the durations p i j of operations O i j , p i j     [ l i j , u i j ] , were randomly generated as follows. The lower bound l i j was randomly chosen from the segment [ 10 , 100000 ] using a uniform distribution. The upper bound u i j was determined using the equality u i j = l i j ( 1 + δ 100 ) . The bounds l i j and u i j are decimal fractions with the maximum numbers of digits after the decimal points. The inequality l i j < u i j holds for each job J i     J and each machine M j     M .
Algorithms 1 and 2 developed in [8] were used at the off-line phase of scheduling. If the tested instance was not optimally solved using Algorithms 1 and 2, then corresponding Algorithms 3, 4 or 5 was used at the on-line phase of scheduling for solving further the instance of the uncertain problem J 2 | l i j p i j u i j , n i 2 | C m a x . All developed algorithms were coded in C# and tested on a PC with Intel Core i7-7700 (TM) 4 Quad, 3.6 GHz, 32.00 GB RAM.
In the computational experiments, two procedures were used to generate factual durations of the operations O i j (a factual duration of the job J i remained unknown until completing this job). In the first part of the computational experiments, the factual duration p i j * of the operation O i j was randomly generated using a uniform distribution in the range [ l i j , u i j ] . In the second part of the computational experiments, two distribution laws were used in the experiments to determine the factual scenarios. Namely, we used the gamma distribution with parameters ( 0.5 ; 1 ) (we call it as the distribution law with number 1) and the gamma distribution with parameters ( 7.5 ; 1 ) (we call it as the distribution law with number 2). For generating factual processing times for each tested instance, the number of the used distribution was randomly chosen from the possible set { 1 , 2 } .
The sufficient conditions proven in Section 5 are verified in polynomial time O ( n 2 ) of the number n of the jobs J . Therefore, all series of the tested instances in our computational experiments were solved very quickly (less than one second per a series with 1000 instances).
The experiments include testing of 14 classes of the instances of the uncertain problem J 2 | l i j p i j u i j , n i 2 | C m a x with different ratios of the numbers m 1 , m 2 , m 1 , 2 and m 2 , 1 (where n = m 1 + m 2 + m 1 , 2 + m 2 , 1 ) of the jobs in the subsets J 1 , J 2 , J 1 , 2 and J 2 , 1 of the set J , respectively. Every class of the tested instances of the problem J 2 | l i j p i j u i j , n i 2 | C m a x is characterized by the following ratio:
m 1 n · 100 % : m 2 n · 100 % : m 1 , 2 n · 100 % : m 2 , 1 n · 100 %
of the percentages of the numbers of jobs in the subsets J 1 , J 2 , J 1 , 2 and J 2 , 1 of the set J , respectively.
Table A1, Table A2, Table A3, Table A4, Table A5, Table A6, Table A7, Table A8, Table A9, Table A10, Table A11, Table A12, Table A13, Table A14 present the computational results obtained for the tested classes of instances with the following ratios (28):
0 % : 0 % : 10 % : 90 % (class 1, Table A1); 0 % : 0 % : 20 % : 80 % (class 2, Table A2);
0 % : 0 % : 30 % : 70 % (class 3, Table A3); 0 % : 0 % : 40 % : 60 % (class 4, Table A4);
0 % : 0 % : 50 % : 50 % (class 5, Table A5); 5 % : 5 % : 5 % : 85 % (class 6, Table A6);
5 % : 15 % : 5 % : 75 % (class 7, Table A7); 5 % : 20 % : 5 % : 70 % (class 8, Table A8);
10 % : 10 % : 10 % : 70 % (class 9, Table A9); 10 % : 10 % : 40 % : 40 % (class 10, Table A10);
10 % : 20 % : 10 % : 60 % (class 11, Table A11); 10 % : 30 % : 10 % : 50 % (class 12, Table A12);
10 % : 40 % : 10 % : 40 % (class 13, Table A13); 10 % : 60 % : 10 % : 20 % (class 14, Table A14).
All Table A1, Table A2, Table A3, Table A4, Table A5, Table A6, Table A7, Table A8, Table A9, Table A10, Table A11, Table A12, Table A13, Table A14 are organized as follows. The procedure for generating factual processing times (the uniform distribution or the gamma distribution) is indicated in the first row of each table. Numbers n of the given jobs J in the tested instances of the problem J 2 | l i j p i j u i j , n i 2 | C m a x are presented in the second row. The maximum possible errors δ of the randomly generated processing times (in percentages) are presented in the first column. For the fixed maximum possible error δ , the obtained computational results are presented in four rows called Stop1, Stop2, Stop3 and Stop4.
The row Stop1 determines the percentage of instances from the tested series, which were optimally solved at the off-line phase of scheduling using either Algorithms 1 or 2 developed in [8]. For such an instance, an optimal pair ( π , π ) of the job permutations was constructed before the time-point of starting the first job of the realized schedule, i.e., the equality C m a x ( π , π ) = C m a x ( π * , π * * ) holds, where ( π * , π * * )     S is an optimal pair of job permutations for the deterministic problem J 2 | p * , n i 2 | C m a x with the factual scenario p *     T that is unknown before completing the whole jobs J .
The row Stop2 determines the percentage of instances, which were optimally solved at the on-line phase of scheduling using corresponding Algorithms 3, 4 or 5. For each such an instance, an optimal pair ( π , π ) of job permutations for the deterministic problem J 2 | p * , n i 2 | C m a x associated with the factual scenario p *     T was constructed by checking sufficient conditions in Theorem 9 or Theorem 10. Remind that the factual scenario p *     T for the uncertain problem J 2 | l i j p i j u i j , n i 2 | C m a x remains unknown until completing the jobs J .
The row Stop3 determines the percentage of instances, which were optimally solved at the on-line phase of scheduling using Algorithms 3, 4 or 5. In such a case, an optimal pair of job permutations has been constructed for the factual scenario p *     T . However, the optimality of this pair of job permutations was established only after the execution of the constructed schedule.
The row Stop4 determines the percentage of instances, for which the constructed and realized schedule is not optimal for the deterministic instance J 2 | p * , n i 2 | C m a x with the factual scenario p * .

6.4. Computational Results

First of all, it is important to determine a total number of the tested instances, for which 3 (or Algorithms 4 and 5) were completed at Step 18 (STOP 2) or at Step 17 (STOP 3). This number shows how many tested instances of the uncertain job-shop scheduling problem have been optimally solved either with the proofs of their optimality before the completion of processing all jobs J (STOP 2) or the optimality of the obtained schedule was established after the realization of the constructed schedule (STOP 3). For the numbers of jobs from n = 10 to n = 100 and for each value of the tested errors δ of the processing times, average percentages of the instances optimally solved by Algorithms 1, 2, 3, 4 or 5 (these average percentages summarize the values given in rows Stop1 and Stop2 in all Table A1, Table A2, Table A3, Table A4, Table A5, Table A6, Table A7, Table A8, Table A9, Table A10, Table A11, Table A12, Table A13, Table A14) are presented in Table 2 and Figure 5.
Table 2 shows the total percentages of the optimally solved instances for all classes of the tested instances, for which the optimal schedules were constructed either at the off-line phase of scheduling (STOP 1) or at the on-line phase of scheduling (STOP 2). One can see that for three small values of the maximal errors δ     { 5 % , 10 % , 20 % } for most classes, more than 90 % (up to 100 % ) of the tested instances were optimally solved. For all tested classes with a maximal error δ 20 % , more than 70 % tested instances were optimally solved at the off-line or on-line phases of scheduling.
With a further increasing of the maximal error δ , the percentage of solved instances drops rapidly. For most tested classes with the maximal error δ greater than 70 % , the percentage of solved instances is less than 10 % . However, these indicators differ for different tested classes. For classes 4, 5, 10, 13 and 14 with maximal errors δ 70 % , more than 60 % of the tested instances were optimally solved with the proof of the optimality before completing all the jobs. The best computational results are obtained for classes 5, 10 and 14 of the tested instances. More than 80 % of the instances from these three classes were optimally solved at the off-line phase of scheduling or at the on-line phases of scheduling provided that the maximal error δ of the given job processing times was no greater than 70 % , i.e., for δ     { 5 % , 10 % , 15 % , 20 % , 30 % , 40 % , 50 % , 60 % , 70 % } . For both classes 10 and 14 of the tested instances even with an error δ = 100 % , more than 70 % of the instances were optimally solved.
On the other hand, for both classes 1 and 6 with a maximal error δ = 40 % , only less than 20 % of the tested instances were optimally solved at both off-line phase and on-line phase of scheduling. For classes 1 and 6 with δ = 50 % , less than 10 % of the tested instances were optimally solved. Furthermore, these two classes of instances are most difficult ones to find an optimal schedule with the proof of its optimality before completing all the jobs using the on-line phase and off-line phase of scheduling. It should be noted that all tested classes of instances demonstrate a monotonic decrease in the percentages of the optimally solved problems with an increase of the values of the maximal error δ of the job processing times; see Figure 5.
Let us consider the percentages of the tested instances, for which the optimality of the constructed schedules was proven at the on-line phase of scheduling and the proofs of their optimality being obtained before completing all the jobs. Note that it is novelty of this paper; see rows Stop2 in Table A1, Table A2, Table A3, Table A4, Table A5, Table A6, Table A7, Table A8, Table A9, Table A10, Table A11, Table A12, Table A13, Table A14. For all tested numbers of the jobs, n     { 10 , 20 , , 100 } , and for all maximal values of the errors δ     { 5 % , 10 % , 20 % , , 100 % } of the job processing times, the average percentages of the instances, which were optimally solved by Algorithms 3, 4 or 5 at the on-line phase of scheduling are presented in Table 3, where only Stop2 is indicated.
It should be noted that the monotonous increase of the percentages of the optimally solved instances takes place only for classes 10 and 14 of the tested instances. For other tested classes of instances, there is a maximum, and for the different classes of the tested instances, these maximal vales being achieved for different maximal values of the errors δ . Then the percentages of the optimally solved instances decrease again with the increasing of the maximal values δ . The values of the maximal numbers of instances, which optimal solutions have been proven at the on-line phase of scheduling (STOP 2), vary from 0.59 % to 8.69 % for different classes of instances.
Classes 1–5 are distinguished from the above classes since their maximal numbers of the instances optimally solved at the on-line phase of scheduling vary from 6 % to 9 % . Average percentages of the instances from these five classes, which were optimally solved by Algorithms 3, 4 or 5 at the on-line phase of scheduling (only Stop2) are shown in Figure 6.
Note that for the difficult classes 1 and 6, the percentages of instances, which were optimally solved at the on-line phase of scheduling with the proofs of their optimality, behave identically with the reaching of the maximum for the maximal error δ = 20 % . However their maximal values differ, namely: from 2.96 % for class 6 up to 8.69 % for class 1.
For the instances, for which the optimality of the constructed schedules was not proven before completing all the jobs J , the relative errors Δ % of the achieved objective function vales for the realized schedules were calculated. Note that the positive errors Δ % may occur only if Algorithm 3 (or Algorithms 4 and 5) have been stopped at Step 16; see STOP 4. For all tested numbers of jobs n     { 10 , 20 , , 100 } and for all maximal values of the errors δ     { 5 % , 10 % , 20 % , , 100 % } of the job processing times, the maximal values of Δ m a x % and the average values of Δ a v e % were calculated separately for instances with uniform distributions (see Table 4) and gamma distributions (see Table 5).
It can be seen that the values of maximal errors Δ a v e % significantly differ when applying different distribution laws. With using a uniform distribution, the maximal error Δ m a x does not exceed 9 % , while when using a gamma distribution, the maximal error Δ m a x could reach a value more than 17 % .
It can be seen that for using various distribution laws, Algorithm 3 (Algorithms 4 and 5 as well) terminates at STOP 4 with various combinations of the tested classes and maximal errors δ % . If a uniform distribution is used, then for classes 1–2, strictly positive errors Δ a v e % arise for all values of the tested maximal errors δ % . For classes 9–10 and 11–13, such errors appear more often with increasing the maximal error δ % .
For a gamma distribution, for all values of δ % , the error Δ a v e % arises only for class 1. For classes 2–4, 6, 8, 10, the error Δ a v e % arises with the growth of maximal errors δ % . For classes 7, 9, 11–13, on the contrary, the error Δ a v e % is more common for small values of the maximal errors δ % .
As one can see, using the uniform distribution for the generation of the factual job processing times for classes 4, 5, 7, 10, 14, all tested instances were solved optimally using the developed algorithms and two phases of scheduling. In other words, there are no instances, for which corresponding Algorithms 3, 4 or 5 was stopped at Step 16 (STOP 4). However, for the gamma distribution, there are only two such classes 5 and 14. Thus, classes 5 and 14 can be considered as easy ones, while class 1 is the most difficult one. As for class 1, Algorithms 3, 4 and 5 are stopped at Step 16 (STOP 4) for all values of the tested maximal errors δ % . Moreover, the maximum makespan error Δ m a x % of more than 5 % for the uniform distribution and more than 10 % for the gamma distribution is found for classes 1, 9, 11 and 12 of the tested instances (these classes are difficult for the used stability approach).
Class 13 of the tested instances is a rather strange one. For using the uniform distribution, a maximum makespan error Δ m a x % of more than 5 % was obtained, while when for using the gamma distribution, the maximum makespan error Δ m a x % did not reach even 1 % . Note that for all tested classes of the instances, the average makespan errors Δ a v e % for all tested numbers n     { 10 , 20 , , 100 } of jobs J are less than 0.02 % .
Maximal relative makespan errors Δ m a x % for each tested class and for all values of the tested maximal errors δ are shown in Figure 7 for the instances with uniform distributions and in Figure 8 for the instances with gamma distributions of the factual durations of the given operations.
Figure 7 and Figure 8 also show that the maximal value of the makespan errors Δ m a x % for the constructed and realized schedule for the factual scenarios are achieved for different values of the maximal errors δ % for different classes of the tested instances.

7. Concluding Remarks

The uncertain job-shop scheduling problem J 2 | l i j p i j u i j , n i 2 | C m a x attract the attention of practitioners and researchers since this problem is applicable in real-life processing systems for some reduction of production costs due to a better utilization of the available machines and resources.
This paper is a continuation of our previous one [8], where only off-line phase of scheduling was investigated and tested for the uncertain problem J 2 | l i j p i j u i j , n i 2 | C m a x based on the stability approach. In [8], we tested 15 classes of the randomly generated instances J 2 | l i j p i j u i j , n i 2 | C m a x . A lot of instances from nine easy classes were optimally solved at the off-line phase of scheduling. If the maximal errors were no greater than 20 % , i.e., δ     { 5 % , 10 % , 15 % , 20 % } , then more than 80 % of the tested instances were optimally solved at the off-line phase of scheduling. If the maximal error was equal to 50 % , i.e., δ = 50 % , then 45 % of the tested instances were optimally solved.
However, less than 5 % of the tested instances with maximal possible error δ 20 % from six hard tested classes were optimally solved at the off-line phase of scheduling. There were no tested hard instances with the maximal error 50 % optimally solved in [8]. All these difficulties were succeeded in Section 4, Section 5 and Section 6 of this paper, where it is shown that the on-line phase of scheduling allows a scheduler to find either optimal schedule or very close to optimal ones. Additional information on the factual value of the job processing times becomes available once the processing of the job on the machine is completed. Using this information, a scheduler can determine a smaller dominant set of semi-active schedules, which is based on sufficient conditions for schedule dominance. The smaller dominant set enables a scheduler to quickly make an on-line scheduling decision whenever additional information on processing the job becomes available.
In Section 5, it is investigated the optimal pair ( π , π ) of job permutations (Theorems 9 and 10). Using the proven analytical results, we derived Algorithms 3–5 for constructing optimal pairs ( π , π ) of job permutations for all scenarios p     T or a small dominant set S ( T ) of schedules for the uncertain problem J 2 | l i j p i j u i j , n i 2 | C m a x . At the off-line scheduling phase, Algorithms 1 and 2 [8] are used to determine the partial strict order A 1 , 2 over the job set J 1 , 2 and the partial strict order A 2 , 1 over the job set J 2 , 1 . The constructed precedence digraphs ( J 1 , 2 , A 1 , 2 ) and ( J 2 , 1 , A 2 , 1 ) determine a minimal dominant set S ( T ) of schedules.
In Section 6, it is shown how to use Algorithms 3–5 for constructing a small dominant set of semi-active schedules that enables a scheduler to make a fast decision whenever information on completing some jobs become available. Based on these algorithms, the problem J 2 | l i j p i j u i j , n i 2 | C m a x was solved with very small errors of the obtained objective values. The computational experiments (Section 6.3) show that pairs of job permutations constructed by Algorithms 3–5 are very close to the optimal pairs of job permutations. We tested 14 classes of randomly generated instances. For the tested instances, the percentage of the optimally solved instances slowly decreases with increasing maximal errors δ of the processing times. The developed on-line algorithms perform with the maximal errors of the achieved makespan less than 1 % if n     { 20 , 30 , , 100 } . For all tested classes of the instances, the average makespan errors for all numbers n     { 10 , 20 , , 100 } of the jobs J were less than 0.02 % .
In a possible further research, one can continue the study of the uncertain job-shop scheduling problem based on the stability approach. It is useful to improve the developed algorithms and to extend them for other machine environments, such as a single machine or processing systems with parallel machines. It is promising to investigate an optimality region of the semi-active schedule and to develop algorithms for constructing a semi-active schedule with the largest optimality region.
It is also useful to apply the stability approach for solving the uncertain flow-shop and job-shop scheduling problems with | M | 3 different machines.

Author Contributions

Y.N.S. and N.M.M. jointly proved theoretical results; Y.N.S. and N.M.M. jointly conceived and designed the algorithm; V.H. performed the experiments; Y.N.S., N.M.M. and V.D.H. jointly analyzed the data; Y.N.S. and N.M.M. jointly wrote the paper. All authors have read and agreed to the published version of the manuscript.

Acknowledgments

We are thankful for useful remarks and suggestions provided by four anonymous reviewers on the earlier drafts of our paper.

Conflicts of Interest

The authors declare no conflict of interest.

Appendix A

Algorithms 1 and 2 Developed in [8].
Algorithm 1
Input:Segments [ l i j , u i j ] for all jobs J i J and machines M j M ,
 a partial strict order A 1 , 2 on the set J 1 , 2 = J 1 , 2 * J 1 , 2 1 J 1 , 2 2 in the form
J 1 J k { J k + 1 , J k + 2 , , J k + r } J k + r + 1 J m 1 , 2 .
Output:EITHER an optimal job permutation for the problem
   F 2 | l i j p i j u i j | C m a x with job set J 1 , 2 and any scenario p T , (see STOP 0).
OR there no permutation π 1 , 2 of jobs from set J 1 , 2 , which is optimal
 for all scenarios p T , (see STOP 1).
Step 1:Set δ s = l k + s , 2 u k + s , 1 for all s { 1 , 2 , , r } .
  construct a partition of the set of conflicting jobs into two subsets X 1 and X 2 ,
  where J k + s X 1 if δ s 0 , and J k + s X 2 , otherwise.
Step 2:Construct a permutation π 1 = ( J 1 , J 2 , , J k , π 1 , π 2 , J k + r + 1 , , J m 1 , 2 ) , where the permutation
   π 1 contains jobs from the set X 1 in the non-decreasing order of the values u k + i , 1 and the
  permutation π 2 contains jobs from the set X 2 in the non-increasing order of the values
   l k + i , 2 , renumber jobs in the permutations π 1 and π 2 based on their orders.
Step 3:IF for the permutation π 1 conditions of Theorem 7 hold THEN GOTO step 8.
Step 4:Set δ s = l k + s , 1 u k + s , 2 for all s { 1 , 2 , , r } .
  construct a partition of the set of conflicting jobs into two subsets
   Y 1 and Y 2 , where J k + s Y 1 if δ s 0, and J k + s Y 2 , otherwise.
Step 5:Construct a permutation π 2 = ( J 1 , J 2 , , J k , π 2 , π 1 , J k + r + 1 , , J m 1 , 2 ) , where the permutation
   π 1 contains jobs from the set Y 1 in the non-increasing order of the values u k + i , 2 , and the
  permutation π 2 contains jobs from the set Y 2 in the non-decreasing order of the
  values l k + i , 1 , renumber jobs in the permutations π 1 and π 2 based on their orders.
Step 6:IF for the permutation π 2 conditions of Theorem 8 hold THEN GOTO step 9.
Step 7:ELSE there is no a single dominant permutation for problem
   F 2 | l i j p i j u i j | C m a x with job set J 1 , 2 and any scenario p T STOP 1.
Step 8:RETURN permutation π 1 , which is a single dominant permutation
  for the problem F 2 | l i j p i j u i j | C m a x with job set J 1 , 2 STOP 0.
Step 9:RETURN permutation π 2 , which is a single dominant permutation
  for the problem F 2 | l i j p i j u i j | C m a x with job set J 1 , 2 STOP 0.
Algorithm 2
Input:Lower bounds l i j and upper bounds u i j , 0 < l i j u i j , of the durations
of all operations O i j of jobs J i J processed on machines M j M = { M 1 , M 2 } .
Output:EITHER pair of permutations ( π , π ) = ( ( π 1 , 2 , π 1 , π 2 , 1 ) , ( π 2 , 1 , π 2 , π 1 , 2 ) ) ,
  where π is a permutation of jobs from set J 1 , 2 J 1 J 2 , 1 on machine
   M 1 , π is a permutation of jobs from set J 1 , 2 J 2 J 2 , 1 on machine M 2 ,
  such that { ( π , π ) } = D S ( T ) , (see STOP 0),
OR permutation π 2 , 1 of jobs from set J 2 , 1 on machines M 1 and M 2 and
  a partial strict order A 1 , 2 of jobs from set J 1 , 2 ,
OR permutation π 1 , 2 of jobs from set J 1 , 2 on machines M 1 and M 2 and
  a partial strict order A 2 , 1 of jobs from set J 2 , 1 ,
OR a partial strict order A 1 , 2 of jobs from set J 1 , 2 and
  a partial strict order A 2 , 1 of jobs from set J 2 , 1 , (see STOP 1).
Step 1:Determine a partition J = J 1 J 2 J 1 , 2 J 2 , 1 of the job set J ,
 permutation π 1 of jobs from set J 1 and permutation π 2 of jobs from
 set J 2 , arrange the jobs in the increasing order of their indexes.
Step 2:IF the first inequality in condition (5) of Theorem 4 holds THEN BEGIN
  Construct a permutation π 1 , 2 of jobs from set J 1 , 2 ,
   arrange them in the increasing order of their indexes;
  IF the second inequality in condition (5) of Theorem 4 holds
   THEN construct a permutation π 2 , 1 of jobs from set J 2 , 1 ,
   arrange them in the increasing order of their indexes GOTO Step 10 END
Step 3:IF the first inequality in condition (6) of Theorem 4 holds THEN BEGIN
  Construct a permutation π 2 , 1 of jobs from set J 2 , 1 ,
   arrange them in the increasing order of their indexes;
IF the second inequality in condition (6) of Theorem 4 holds THEN
  construct a permutation π 1 , 2 of jobs from set J 1 , 2 ,
   arrange the jobs in the increasing order of their indexes END
Step 4:IF both permutations π 1 , 2 and π 2 , 1 are constructed THEN GOTO Step 10.
Step 5:IF permutation π 1 , 2 is not constructed THEN fulfill Procedure 1.
Step 6:IF permutation π 2 , 1 is not constructed THEN fulfill Procedure 2.
Step 7:IF both permutations π 1 , 2 and π 2 , 1 are constructed THEN GOTO Step 10.
Step 8:IF permutation π 2 , 1 is constructed THEN GOTO Step 11.
Step 9:IF permutation π 1 , 2 is constructed THEN GOTO Step 12 ELSE GOTO Step 13.
Step 10:RETURN pair of permutations ( π , π ) , where π is the permutation
  of jobs from set J 1 , 2 J 1 J 2 , 1 processed on machine M 1 and π is
  the permutation of jobs from set J 1 , 2 J 2 J 2 , 1 processed
  on machine M 2 such that { ( π , π ) } = D S ( T ) STOP 0.
Step 11:RETURN the permutation π 2 , 1 of jobs from set J 2 , 1 processed on machines M 1 and M 2 ,
  the partial strict order A 1 , 2 of jobs from set J 1 , 2 GOTO Step 14.
Step 12:RETURN the permutation π 1 , 2 of jobs from set J 1 , 2 processed on machines M 1 and M 2 ,
  the partial strict order A 2 , 1 of jobs from set J 2 , 1 GOTO Step 14.
Step 13:RETURN the partial strict order A 1 , 2 of jobs from set J 1 , 2
  and the partial strict order A 2 , 1 of jobs from set J 2 , 1
Step 14:STOP 1.

Appendix B. Tables with Computational Results

Table A1. Computational results for the randomly generated instances with the ratio 0%:0%:10%:90% of the numbers of jobs in the subsets J 1 , J 2 , J 1 , 2 and J 2 , 1 of the job set J .
Table A1. Computational results for the randomly generated instances with the ratio 0%:0%:10%:90% of the numbers of jobs in the subsets J 1 , J 2 , J 1 , 2 and J 2 , 1 of the job set J .
Uniform DistributionsGamma Distributions
δ % n 102030405060708090100102030405060708090100
5Stop193.997.398.497.696.697.697.998.39897.593.49797.797.198.598.397.698.698.398.7
Stop20.910.61.11.61.31.21.10.91.40.80.80.91.10.50.51.30.80.90.6
Stop35.11.711.31.81.10.90.61.11.15.32.21.41.811.21.10.60.80.7
Stop40.10000000000.5000000000
10Stop185.891.891.69392.292.291.992.693.693.883.193.592.892.793.192.392.493.394.293.6
Stop22.12.54.53.54.144.24.64.24.23.22.83.13.53.64.34.23.43.54.1
Stop311.75.73.93.53.73.83.92.82.2212.83.74.13.83.33.43.43.32.32.3
Stop40.40000000000.9000000000
20Stop170.673.273.371.969.663.463.657.756.353.470.273.774.171.567.264.263.461.556.157.5
Stop24.36.89.48.68.811.19.410.19.29.24.38.18.7101011.39.19.18.97.5
Stop324.22017.319.521.625.52732.234.537.424.918.217.218.522.824.527.529.43535
Stop40.90000000000.6000000000
30Stop15355.147.541.13130.723.420.318.513.45252.244.934.933.626.327.318.318.914.2
Stop24.88.89.19.79.876.75.24.24.46.28.910.110.4117.964.65.94.5
Stop341.936.143.449.259.262.369.974.577.382.24138.94554.755.465.866.777.175.281.3
Stop40.30000000000.8000000000
40Stop141.632.524.716.410.98.95.93.92.12.337.831.822.218.610.68.56.14.331.9
Stop24.97.67.76.64.22.921.10.70.35.28.59.14.82.93.521.610.6
Stop352.759.767.67784.988.292.19597.297.455.359.768.776.686.58891.994.19697.5
Stop40.80.2000000001.7000000000
50Stop12916.19.352.41.41.60.80.5026.219.410.45.63.91.60.60.50.30.1
Stop24.75.452.61.20.80.20.30.303.75.63.82.20.70.70.70.10.20.1
Stop364.978.585.792.496.497.898.298.999.210067.87585.892.295.497.798.799.499.599.8
Stop41.40000000002.3000000000
60Stop118.18.44.61.410.30.20.10016.69.63.61.410.300.200
Stop23.841.60.70.30.100003.23.52.30.90.400.300.10
Stop376.487.593.897.998.799.699.899.910010077.786.994.197.798.699.799.799.899.9100
Stop41.70.1000000002.5000000000
70Stop112.35.11.40.70.10000012.14.72.10.80.200.1000
Stop22.81.50.70.20.10000022.10.40.2000000
Stop383.293.497.999.199.810010010010010082.893.297.59999.810099.9100100100
Stop41.70000000003.1000000000
80Stop18.91.90.40.30.200000102.30.60.2000000
Stop21.80.80.500000002.21.10.2000.10000
Stop387.197.199.199.799.810010010010010084.296.599.299.810099.9100100100100
Stop42.20.2000000003.60.100000000
90Stop16.90.80.20.10000005.70.90.30000000
Stop21.20.70.100000001.50.500000000
Stop390.198.499.799.91001001001001001008898.599.7100100100100100100100
Stop41.80.1000000004.80.100000000
100Stop14.40.30.10.10000004.10.300000000
Stop21.10.2000000000.8000000000
Stop392.199.499.999.910010010010010010090.299.4100100100100100100100100
Stop42.40.1000000004.90.300000000
Table A2. Computational results for randomly generated instances with the ratio 0%:0%:20%:80% of the numbers of jobs in the subsets J 1 , J 2 , J 1 , 2 and J 2 , 1 of the job set J .
Table A2. Computational results for randomly generated instances with the ratio 0%:0%:20%:80% of the numbers of jobs in the subsets J 1 , J 2 , J 1 , 2 and J 2 , 1 of the job set J .
Uniform DistributionsGamma Distributions
δ % n 102030405060708090100102030405060708090100
5Stop196.798.998.699.599.799.799.999.999.999.996.798.99999.399.699.499.799.899.999.8
Stop20.80.30.70.100.20.10.10.10.10.30.40.10.30.10.40.20.10.10.2
Stop32.40.80.70.40.30.1000030.70.90.40.30.20.10.100
Stop40.10000000000000000000
10Stop193.496.297.697.79898.498.498.798.599.693.596.197.597.697.898.198.498.29998.7
Stop211.41.41.41.41.31.11.210.411.81.11.31.51.61.31.50.91.1
Stop35.42.410.90.60.30.50.10.505.52.11.41.10.70.30.30.30.10.2
Stop40.20000000000000000000
20Stop185.486.989.590.290.890.589.19090.390.183.587.588.888.490.689.99189.490.990.1
Stop22.64.85.355.85.85.7555.43.15.75.87.44.75.84.96.56.24
Stop3128.35.24.83.43.75.254.74.513.46.85.44.24.74.34.14.12.95.9
Stop400000000000000000000
30Stop170.276.470.169.669.265.764.160.4585671.673.372.9696663.160.462.362.258.1
Stop25.16.89.79.58.410.59.79.110.88.13.68.78.49.69.811.38.48.37.18.9
Stop324.616.820.220.922.423.826.230.531.235.924.81818.721.424.225.631.229.430.733
Stop40.10000000000000000000
40Stop156.755.348.841.539.631.231.126.523.521.555.153.946.541.537.531.633.227.426.221
Stop25.18.210.510.69.68.27.66.97.555.69.211.57.78.98.77.37.265.7
Stop338.236.540.747.950.860.661.366.66973.539.336.94250.853.659.759.565.467.873.3
Stop400000000000000000000
50Stop142.635.227.222.914.311.49.96.96.65.943.937.329.22216.313.210.810.55.55.7
Stop24.49.59.86.565.23.83.42.22.46107.36.96.54.84.72.81.92.5
Stop352.855.36370.679.783.486.389.791.291.749.952.763.571.177.28284.586.792.691.8
Stop40.20000000000.2000000000
60Stop132.920.714.410.76.33.33.32.21.40.831.723.115.710.47.23.92.91.40.90.6
Stop25.45.54.22.62.31.70.80.60.30.45.666.43.62.41.51.50.80.30.7
Stop361.773.881.486.791.49595.997.298.398.862.370.977.98690.494.695.697.898.898.7
Stop400000000000.4000000000
70Stop122.113.77.62.91.61.10.60.20.30.123.913.16.73.41.60.70.90.30.20.1
Stop24.93.72.91.70.90.60.40.100.14.44.521.51.20.400.40.10.1
Stop372.882.689.595.497.598.39999.799.799.871.682.491.395.197.298.999.199.399.799.8
Stop40.20000000000.1000000000
80Stop117.38.33.51.30.50.30.200016.47.93.11.90.90.20000
Stop22.81.71.80.80.6000003.42.40.80.90.10.20.1000
Stop379.49094.797.998.999.799.810010010079.689.796.197.29999.699.9100100100
Stop40.50000000000.6000000000
90Stop112.14.51.40.700.1000012.652.90.40.10.10000
Stop22.52.31.30.300.100003.21.80.20.2000000
Stop385.293.297.39910099.810010010010083.793.296.999.499.999.9100100100100
Stop40.20000000000.5000000000
100Stop110.62.70.50.30000009.12.80.50.1000000
Stop21.91.20.300.20000020.60.20000000
Stop387.496.199.299.799.810010010010010088.296.699.399.9100100100100100100
Stop40.10000000000.7000000000
Table A3. Computational results for randomly generated instances with the ratio 0%:0%:30%:70% of the numbers of jobs in the subsets J 1 , J 2 , J 1 , 2 and J 2 , 1 of the job set J .
Table A3. Computational results for randomly generated instances with the ratio 0%:0%:30%:70% of the numbers of jobs in the subsets J 1 , J 2 , J 1 , 2 and J 2 , 1 of the job set J .
Uniform DistributionsGamma Distributions
δ % n 102030405060708090100102030405060708090100
5Stop199.299.699.999.910010010010010010098.699.999.999.999.9100100100100100
Stop20.20.10.10.100000000000.100000
Stop30.60.3000000001.40.10.10.1000000
Stop400000000000000000000
10Stop197.39999.499.999.910099.999.910010097.498.699.199.999.910099.910099.8100
Stop20.80.40.30.10.100.10.1000.50.80.60.10.100.100.20
Stop31.90.60.300000002.10.60.30000000
Stop400000000000000000000
20Stop191.795.797.197.598.298.698.798.799.798.991.59797.897.298.598.899.199.699.599.4
Stop21.92.622.11.41.21.21.10.30.82.31.71.62.11.210.70.40.50.4
Stop36.41.70.90.40.40.20.10.200.36.21.30.60.70.30.20.2000.2
Stop400000000000000000000
30Stop181.987.189.191.991.792.292.293.893.793.98387.291.791.792.491.692.292.892.993.4
Stop24.66.25.94.55.54.34.33.92.82.53.15.14.14.43.74.44.84.23.53.5
Stop313.56.753.62.83.53.52.33.53.613.97.74.23.93.94333.63.1
Stop400000000000000000000
40Stop174.174.775.97675.175.973.475.871.672.569.174.276.475.676.576.4757475.372.7
Stop24.47.97.58.26.56.36.95.56.9769.27.587.76.46.47.14.66.4
Stop321.517.416.615.818.417.819.718.721.520.524.816.616.116.415.817.218.618.920.120.9
Stop400000000000.1000000000
50Stop161.460.756.953.750.449.747.347.344.739.158.260.657.751.749.150.948.348.243.944.3
Stop25.39.29.710.410.27.78.47.16.76.35.88.78.512.410.29.17.87.16.65.3
Stop333.330.133.435.939.442.644.345.648.654.63630.733.835.940.74043.944.749.550.4
Stop400000000000000000000
60Stop146.746.339.632.930.529.523.922.118.817.850.942.841.735.930.6282422.91913.5
Stop26.28.17.77.96.25.34.64.14.22.859.17.57.57.15.15.24.63.73.6
Stop347.145.652.759.263.365.271.573.87779.444.148.150.856.662.366.970.872.577.382.9
Stop400000000000000000000
70Stop139.934.524.520.217.612.28.78.67.65.53834.823.519.115.713.79.5964.7
Stop25.77.46.75.54.12.82.71.91.40.966.86.35.63.94.83.41.41.41.3
Stop354.458.168.874.378.38588.689.59193.655.958.470.275.380.481.587.189.692.694
Stop400000000000.1000000000
80Stop127.921.614.38.37.24.94.22.70.90.828.521.6149.59.34.23.92.21.21.5
Stop24.853.632.61.60.710.20.35.65.65.23.11.92.31.70.60.70.3
Stop367.273.482.188.790.293.595.196.398.998.965.972.880.887.488.893.594.497.298.198.2
Stop40.10000000000000000000
90Stop122.713.29.84.12.11.51.40.70.202314.47.43.63.41.91.20.70.30.9
Stop23.44.73.11.91.40.90.50.30.30.23.45.12.9210.60.70.20.20.3
Stop373.982.187.19496.597.698.19999.599.873.480.589.794.495.697.598.199.199.598.8
Stop400000000000.2000000000
100Stop117.18.93.82.11.20.60.20.20014.784.72.51.40.30.30.20.10.1
Stop22.64.31.61.50.40.20.20004.62.41.70.60.50.30.30.10.10
Stop380.386.894.696.498.499.299.699.810010080.489.693.696.998.199.499.499.799.899.9
Stop400000000000.3000000000
Table A4. Computational results for randomly generated instances with the ratio 0%:0%:40%:60% of the numbers of jobs in the subsets J 1 , J 2 , J 1 , 2 and J 2 , 1 of the job set J .
Table A4. Computational results for randomly generated instances with the ratio 0%:0%:40%:60% of the numbers of jobs in the subsets J 1 , J 2 , J 1 , 2 and J 2 , 1 of the job set J .
Uniform DistributionsGamma Distributions
δ % n 102030405060708090100102030405060708090100
5Stop199.810010010010010010010010010099.599.899.910099.9100100100100100
Stop20.10000000000.100.100.100000
Stop30.10000000000.40.200000000
Stop400000000000000000000
10Stop199.299.799.910010010010010010010098.910099.9100100100100100100100
Stop20.40.30.100000000.200.10000000
Stop30.40000000000.9000000000
Stop400000000000000000000
20Stop196.898.999.499.599.999.810010010099.996.498.699.699.799.9100100100100100
Stop21.10.60.40.50.10.20000.11.60.80.40.3000000
Stop32.10.50.2000000020.6000.100000
Stop400000000000000000000
30Stop19195.797.898.799.299.599.499.899.910091.894.997.398.699.199.699.999.999.7100
Stop23.51.71.20.90.70.20.40.10.102.331.81.10.70.30.10.10.30
Stop35.52.610.40.10.30.20.1005.92.10.90.30.20.10000
Stop400000000000000000000
40Stop185.890.493.795.196.497.697.298.298.398.585.491.29394.896.597.497.39898.298
Stop22.74.53.51.61.91.32.10.6113.73.73.22.91.81.60.81.20.71.1
Stop311.55.12.83.31.71.10.71.20.70.510.95.13.82.31.711.90.81.10.9
Stop400000000000000000000
50Stop175.382.584.887.48788.289.790.790.592.376.382.582.485.487.589.789.690.490.791.3
Stop25.15.564.45.13.83.73.3334.15.965.93.93.53.32.42.72.4
Stop319.6129.28.27.986.666.54.719.611.611.68.78.66.87.17.26.66.3
Stop400000000000000000000
60Stop163.470.172.374.775.873.972.575.475.476.666.37173.775.272.973.273.771.975.575.2
Stop26.677.86.65.84.36.64.23.94.54.77.475.95.85.44.25.25.33.1
Stop33022.919.918.718.421.820.920.420.718.92921.619.318.921.321.422.122.919.221.7
Stop400000000000000000000
70Stop151.66057.255.756.552.950.550.950.85049.55754.655.154.853.252.849.95051.5
Stop26.37.58.37.36.15.87.26.25.74.26.38.687.26.55.675.95.25.7
Stop342.132.534.53737.441.342.342.943.545.844.234.437.437.738.741.240.244.244.842.8
Stop400000000000000000000
80Stop139.843.939.43937.834.831.731.13028.13943.740.140.341.131.331.528.12628.2
Stop26.37.38.57.46.14.93.74.44.23.35.98.17.85.96.65.74.73.64.63
Stop353.948.852.153.656.160.364.664.565.868.655.148.252.153.852.36363.868.369.468.8
Stop400000000000000000000
90Stop133.728.927.624.120.718.216.813.514.112.431.732.128.823.823.820.117.115.914.212.3
Stop267.76.95.34.53.33.62.82.61.75.77.15.964.73.53.833.11.6
Stop360.363.465.570.674.878.579.683.783.385.962.560.865.370.271.576.479.181.182.786.1
Stop400000000000.1000000000
100Stop126.121.415.613.111.17.97.364.44.624.121.216.716.2118.28.36.75.73.8
Stop23.96.45.44.63.22.91.81.60.71.356.252.93.43.42.51.51.91
Stop37072.27982.385.789.290.992.494.994.170.972.678.380.985.688.489.291.892.495.2
Stop400000000000000000000
Table A5. Computational results for randomly generated instances with the ratio 0%:0%:50%:50% of the numbers of jobs in the subsets J 1 , J 2 , J 1 , 2 and J 2 , 1 of the job set J .
Table A5. Computational results for randomly generated instances with the ratio 0%:0%:50%:50% of the numbers of jobs in the subsets J 1 , J 2 , J 1 , 2 and J 2 , 1 of the job set J .
Uniform DistributionsGamma Distributions
δ % n 102030405060708090100102030405060708090100
5Stop1100100100100100100100100100100100100100100100100100100100100
Stop200000000000000000000
Stop300000000000000000000
Stop400000000000000000000
10Stop199.810010010010010010010010010099.9100100100100100100100100100
Stop20.10000000000.1000000000
Stop30.10000000000000000000
Stop400000000000000000000
20Stop199.199.610010010010010010010010098.999.9100100100100100100100100
Stop20.30.2000000000.50.100000000
Stop30.60.2000000000.6000000000
Stop400000000000000000000
30Stop196.299.599.699.899.910010010010010096.198.799.8100100100100100100100
Stop21.50.50.40.20.1000001.11.10.10000000
Stop32.30000000002.80.20.10000000
Stop400000000000000000000
40Stop191.397.499.299.299.699.910010010010091.496.798.999.199.799.699.9100100100
Stop2310.20.50.10.100002.11.70.60.70.30.20.1000
Stop35.71.60.60.30.3000006.51.60.50.200.20000
Stop400000000000000000000
50Stop183.492.395.397.998.298.899.399.999.810081.79095.597.598.798.999.499.899.999.9
Stop23.53.31.91.10.90.60.10.10.103.84.62.11.30.50.50.4000
Stop313.14.42.810.90.60.600.1014.55.42.41.20.80.60.20.20.10.1
Stop400000000000000000000
60Stop169.483.187.193.894.596.196.497.898.698.371.281.589.292.693.595.19898.298.598.9
Stop25.76.752.52.21.30.80.70.40.66.56.83.33.32.32.10.50.80.70.1
Stop324.910.27.93.73.32.62.81.511.122.311.77.54.14.22.81.510.81
Stop400000000000000000000
70Stop159.270.275.581.181.688.187.992.492.893.658.472.774.881.585.887.8889190.393.7
Stop25.87.46.665.24.13.71.71.12.44.38.37.64.43.63.24.12.42.62
Stop33522.417.912.913.27.88.45.96.1437.31917.614.110.697.96.67.14.3
Stop400000000000000000000
80Stop14557.261.862.767.868.77174.975.57746.854.861.164.169.47171.473.875.876
Stop278.57.27.47.5665.24.23.95.57.577.76.45.36.44.54.43.5
Stop34834.33129.924.725.32319.920.319.147.737.731.928.224.223.722.221.719.820.5
Stop400000000000000000000
90Stop135.241.238.744.242.545.646.245.250.35037.237.341.343.843.346.54846.747.549.4
Stop268.39.87.77.87.46.46.26.45.55.48.79.88.99.39.26.46.96.25.7
Stop358.850.551.548.149.74747.448.643.344.557.45448.947.347.444.345.646.446.344.9
Stop400000000000000000000
100Stop125.728.825.222.621.421.420.220.51922.126.52625.225.525.122.122.819.923.820.7
Stop24.18.68.16.97.95.96.65.45.54.33.79.27.867.27.15.45.14.84.9
Stop370.262.666.770.570.772.773.274.175.573.669.864.86768.567.770.871.87571.474.4
Stop400000000000000000000
Table A6. Computational results for randomly generated instances with the ratio 5%:5%:5%:85% of the numbers of jobs in the subsets J 1 , J 2 , J 1 , 2 and J 2 , 1 of the job set J .
Table A6. Computational results for randomly generated instances with the ratio 5%:5%:5%:85% of the numbers of jobs in the subsets J 1 , J 2 , J 1 , 2 and J 2 , 1 of the job set J .
Uniform DistributionsGamma Distributions
δ % n 2040608010020406080100
5Stop19999.599.799.399.498.199.799.899.299.7
Stop20.30.30.20.40.60.40.200.60.3
Stop30.70.20.10.301.50.10.20.20
Stop40000000000
10Stop196.497.498.497.897.195.497.697.79898.6
Stop20.91.10.71.20.71.51.411.30.3
Stop32.71.50.912.23.111.30.71.1
Stop40000000000
20Stop184.381.476.571.767.986.580.573.87166.5
Stop23.13.53.72.52.12.93.52.93.71.7
Stop312.615.119.825.83010.61623.325.331.8
Stop40000000000
30Stop161.852.938.427.120.965.1534029.320.3
Stop25.72.92.12.10.33.42.61.41.41.2
Stop332.544.259.570.878.831.444.458.669.378.5
Stop4000000.10000
40Stop138.625.514.17.33.14024.413.66.53.2
Stop25.41.21.20.40.34.52.40.40.40.1
Stop35673.384.792.396.655.573.28693.196.7
Stop40000000000
50Stop127.48.43.21.70.325.910.93.30.90.3
Stop22.31.40.3003.71.1000
Stop370.290.296.598.399.770.48896.799.199.7
Stop40.1000000000
60Stop114.33.40.50.2015.73.20.60.30
Stop22.30.40001.80.10.300
Stop383.496.299.599.810082.496.799.199.7100
Stop4000000.10000
70Stop181.10.3006.51.70.100
Stop20.900001.500.100
Stop391.198.999.710010091.898.399.8100100
Stop4000000.20000
80Stop140.100.105.10.2000
Stop20.50.10000.90000
Stop395.599.810099.910093.899.8100100100
Stop4000000.20000
90Stop12.60.30002.20000
Stop20.300000.40000
Stop397.199.710010010097100100100100
Stop4000000.40000
100Stop10.900001.50000
Stop20.3000000000
Stop398.810010010010098.4100100100100
Stop4000000.10000
Table A7. Computational results for randomly generated instances with the ratio 5%:15%:5%:75% of the numbers of jobs in the subsets J 1 , J 2 , J 1 , 2 and J 2 , 1 of the job set J .
Table A7. Computational results for randomly generated instances with the ratio 5%:15%:5%:75% of the numbers of jobs in the subsets J 1 , J 2 , J 1 , 2 and J 2 , 1 of the job set J .
Uniform DistributionsGamma Distributions
δ % n 2040608010020406080100
5Stop198.999.499.399.799.598.499.799.499.799.7
Stop20.20.30.40.30.30.40.20.20.20.2
Stop30.90.30.300.21.20.10.40.10.1
Stop40000000000
10Stop19798.297.798.699.395.598.698.698.498.3
Stop210.81.10.70.31.30.80.80.70.9
Stop3211.20.70.43.20.60.60.90.8
Stop40000000000
20Stop18686.783.376.975.488.386.183.377.474.6
Stop22.62.82.53.12.52.52.33.12.72.3
Stop311.410.514.22022.19.211.613.619.923.1
Stop40000000000
30Stop167.158.147.136.129.36964.548.238.628.7
Stop23.13.22.82.61.53.22.12.221.2
Stop329.838.750.161.369.227.833.449.659.470.1
Stop40000000000
40Stop148.230.118.911.18.345.631.817.610.56.6
Stop22.73.71.20.30.14.32.61.90.70.3
Stop349.166.279.988.691.650.165.680.588.893.1
Stop40000000000
50Stop130.115.17.431.229.113.262.71.7
Stop22.81.30.70.302.61.10.30.20
Stop367.183.691.996.798.868.385.793.797.198.3
Stop40000000000
60Stop119.27.61.90.5021.15.92.60.50.3
Stop21.50.4000.120.50.200
Stop379.39298.199.599.976.993.697.299.599.7
Stop40000000000
70Stop111.42.60.900123.10.300.1
Stop21.90.10000.80.2000
Stop386.797.399.110010087.296.799.710099.9
Stop40000000000
80Stop17.61.20.1007.90.60.200
Stop20.70.100010.1000
Stop391.798.799.910010091.199.399.8100100
Stop40000000000
90Stop13.40.60.1004.60.50.100
Stop20.400000.50000
Stop396.299.499.910010094.999.599.9100100
Stop40000000000
100Stop12.70.20002.90.2000
Stop20.500000.30000
Stop396.899.810010010096.899.8100100100
Stop40000000000
Table A8. Computational results for randomly generated instances with the ratio 5%:20%:5%:70% of the numbers of jobs in the subsets J 1 , J 2 , J 1 , 2 and J 2 , 1 of the job set J .
Table A8. Computational results for randomly generated instances with the ratio 5%:20%:5%:70% of the numbers of jobs in the subsets J 1 , J 2 , J 1 , 2 and J 2 , 1 of the job set J .
Uniform DistributionsGamma Distributions
δ % n 2040608010020406080100
5Stop198.699.299.699.499.598.399.299.799.899.6
Stop20.10.40.30.40.50.50.10.10.10.3
Stop31.30.40.10.201.20.70.20.10.1
Stop40000000000
10Stop196.198.599.799.199.196.698.298.298.998.4
Stop21.10.60.20.70.40.30.91.20.60.9
Stop32.80.90.10.20.53.10.90.60.50.7
Stop40000000000
20Stop188.887.684.680.177.689.589.884.683.579.3
Stop21.92.42.62.22.831.92.71.92.4
Stop39.31012.817.719.67.58.312.714.618.3
Stop40000000000
30Stop17262.352.343.233.570.663.15342.436.9
Stop23.42.23.931.83.93.43.92.50.6
Stop324.635.543.853.864.725.533.543.155.162.5
Stop40000000000
40Stop150.637.125.9159.950.736.425.916.510.3
Stop23.72.11.80.70.43.52.71.310.4
Stop345.760.872.384.389.745.860.972.882.589.3
Stop40000000000
50Stop136.219.59.44.51.733.217.99.64.32.8
Stop23.11.600.10.23.90.90.60.30
Stop360.778.990.695.498.162.981.289.895.497.2
Stop40000000000
60Stop125.27.73.11.20.3247.63.50.60.5
Stop220.70.3001.61.20.200
Stop372.891.696.698.899.774.491.296.399.499.5
Stop40000000000
70Stop1123.30.80.20.416.64.11.60.50.1
Stop22.30.40.1001.10.7000
Stop385.796.399.199.899.682.395.298.499.599.9
Stop40000000000
80Stop19.41.80.3009.91.80.100
Stop21.40.100010.1000
Stop389.298.199.71001008998.199.9100100
Stop4000000.10000
90Stop15.60.30.10.106.50.60.100
Stop20.70.10000.30.1000
Stop393.799.699.999.910093.299.399.9100100
Stop40000000000
100Stop14.50.50004.50.2000
Stop20.200000.20000
Stop395.399.510010010095.399.8100100100
Stop40000000000
Table A9. Computational results for randomly generated instances with the ratio 10%:10%:10%:70% of the numbers of jobs in the subsets J 1 , J 2 , J 1 , 2 and J 2 , 1 of the job set J .
Table A9. Computational results for randomly generated instances with the ratio 10%:10%:10%:70% of the numbers of jobs in the subsets J 1 , J 2 , J 1 , 2 and J 2 , 1 of the job set J .
Uniform DistributionsGamma Distributions
δ % n 102030405060708090100102030405060708090100
5Stop198.999.510099.810099.910010010099.998.499.499.910099.999.9100100100100
Stop20.4000.2000000.100.30.1000.10000
Stop30.70.50000.100001.60.3000.100000
Stop400000000000000000000
10Stop195.998.998.910099.810010010099.999.996.298.499.599.799.899.999.999.899.899.9
Stop20.20.50.600.20000.100.30.30.20.10.10.10.10.20.20.1
Stop33.80.60.50000000.13.41.30.30.20.100000
Stop40.10000000000.1000000000
20Stop188.89797.197.897.897.598.298.797.597.988.595.396.597.297.697.397.998.398.297.5
Stop21.61.21.10.50.610.60.40.20.21.61.611.30.50.70.80.70.60.4
Stop39.51.81.81.71.61.51.20.92.31.99.83.12.51.51.921.311.22.1
Stop40.10000000000.1000000000
30Stop179.385.886.685.181.483.382.679.277.475.980.486.386.585.181.281.680.8807976.1
Stop23.72.22.51.72.91.81.51.21.512.42.82.81.71.91.41.41.310.6
Stop3171210.913.215.714.915.919.621.123.116.910.910.713.216.91717.818.72023.3
Stop400000000000.3000000000
40Stop166.671.765.862.258.253.148.4444238.365.870.165.860.957.452.753.946.840.638.5
Stop232.62.42.82.22.41.721.10.92.62.72.61.81.61.52.110.91.1
Stop330.225.731.83539.644.549.95456.960.831.127.231.637.34145.84452.258.560.4
Stop40.20000000000.5000000000
50Stop155.855.346.938.930.925.522.219.915.113.25652.944.339.434.127.422.618.217.514.9
Stop22.62.92.42.51.710.80.30.70.63.33.52.41.41.71.10.70.50.40.7
Stop341.641.850.758.667.473.57779.884.286.240.543.653.359.264.271.576.781.382.184.4
Stop400000000000.2000000000
60Stop144.435.927.820.115.612.78.67.17.83.343.636.526.220.714.69.98.86.44.23.2
Stop23.22.71.60.90.80.70.20.10.20.13.321.41.81.70.20.20.30.10
Stop352.261.470.67983.686.691.292.89296.652.561.572.477.583.789.99193.395.796.8
Stop40.20000000000.6000000000
70Stop133.525.41711.26.62.821.21.10.736.72417.311.65.75.23.51.50.71.1
Stop22.521.50.40.50.10.30.20.102.41.910.50.20.200.100
Stop363.872.681.588.492.997.197.798.698.899.360.574.181.787.994.194.696.598.499.398.9
Stop40.20000000000.4000000000
80Stop129.813.5105.12.91.20.30.400.127.918.68.442.51.40.90.40.20.1
Stop21.91.40.30.40.1000.1002.50.80.50.20.10.20000
Stop368.185.189.794.59798.899.799.510099.968.880.691.195.897.498.499.199.699.899.9
Stop40.20000000000.8000000000
90Stop122.410.53.91.70.70.10.30.20020.810.24.53.10.70.20.3000
Stop21.90.60.60.10000001.60.90.5000.10000
Stop375.388.995.598.299.399.999.799.810010076.888.99596.999.399.799.7100100100
Stop40.40000000000.8000000000
100Stop115.65.91.50.90.60.10.100015.96.72.60.90.20.10.2000
Stop21.60.70.200000001.70.20.20.1000000
Stop382.393.498.399.199.499.999.910010010081.493.197.29999.899.999.8100100100
Stop40.50000000001000000000
Table A10. Computational results for randomly generated instances with the ratio 10%:10%:40%:40% of the numbers of jobs in the subsets J 1 , J 2 , J 1 , 2 and J 2 , 1 of the job set J .
Table A10. Computational results for randomly generated instances with the ratio 10%:10%:40%:40% of the numbers of jobs in the subsets J 1 , J 2 , J 1 , 2 and J 2 , 1 of the job set J .
Uniform DistributionsGamma Distributions
δ % n 102030405060708090100102030405060708090100
5Stop199.9100100100100100100100100100100100100100100100100100100100
Stop200000000000000000000
Stop30.10000000000000000000
Stop400000000000000000000
10Stop1100100100100100100100100100100100100100100100100100100100100
Stop200000000000000000000
Stop300000000000000000000
Stop400000000000000000000
20Stop199.310010010010010010010010010099.5100100100100100100100100100
Stop20.20000000000.1000000000
Stop30.50000000000.4000000000
Stop400000000000000000000
30Stop198.499.91001001001001001001001009999.9100100100100100100100100
Stop20.50.1000000000.1000000000
Stop31.10000000000.90.100000000
Stop400000000000000000000
40Stop19799.899.910010010010010010010096.499.8100100100100100100100100
Stop20.100.100000000.50.200000000
Stop32.90.2000000003.1000000000
Stop400000000000000000000
50Stop1939999.999.910010010010010010092.899.699.9100100100100100100100
Stop21.20.50.100000000.90.100000000
Stop35.80.500.10000006.30.30.10000000
Stop400000000000000000000
60Stop186.697.999.699.599.899.899.899.910010085.897.199.399.699.899.799.9100100100
Stop21.40.500.200.100001.50.400000000
Stop3121.60.40.30.20.10.20.10012.72.50.70.40.20.30.1000
Stop400000000000000000000
70Stop182.392.596.797.298.698.19999.299.599.78092.796.597.597.999.299.599.599.899.5
Stop21.81.10.20.2000.1000.11.70.500.20.100000
Stop315.96.43.12.61.41.90.90.80.50.218.36.83.52.320.80.50.50.20.5
Stop400000000000000000000
80Stop171.885.991.593.894.495.395.697.797.398.173.187.29193.195.195.996.797.398.198.8
Stop21.91.20.60.20.5000.100.120.90.20.70.10.200.300
Stop326.312.97.965.14.74.42.22.71.824.911.98.86.24.83.93.32.41.91.2
Stop400000000000000000000
90Stop163.277.881.684.28588.789.991.593.693.661.777.283.38586.48890.491.492.794.4
Stop22.610.81.10.20.20.60.20.10.22.61.90.90.20.50.20.10.100.1
Stop334.221.217.614.714.811.19.58.36.36.235.720.915.814.813.111.89.58.57.35.5
Stop400000000000000000000
100Stop153.166.768.370.374.174.175.678.38184.151.86769.87172.575.975.779.679.880.3
Stop22.11.70.60.80.30.70.30.20.10.32.40.910.71.10.50.30.60.30.5
Stop344.831.631.128.925.625.224.121.518.915.645.832.129.228.326.423.62419.819.919.2
Stop400000000000000000000
Table A11. Computational results for randomly generated instances with the ratio 10%:20%:10%:60% of the numbers of jobs in the subsets J 1 , J 2 , J 1 , 2 and J 2 , 1 of the job set J .
Table A11. Computational results for randomly generated instances with the ratio 10%:20%:10%:60% of the numbers of jobs in the subsets J 1 , J 2 , J 1 , 2 and J 2 , 1 of the job set J .
Uniform DistributionsGamma Distributions
δ % n 102030405060708090100102030405060708090100
5Stop199.299.699.810099.910010010010010098.599.899.999.9100100100100100100
Stop200.10.200.1000000.20.10.10.1000000
Stop30.80.3000000001.30.100000000
Stop400000000000000000000
10Stop198.199.299.499.999.999.810010010010096.499.299.899.799.899.999.9100100100
Stop20.10.50.40.10.1000000.60.30.20.100.10.1000
Stop31.80.30.2000.2000030.500.20.200000
Stop400000000000000000000
20Stop191.397.797.797.899.198.798.898.799.199.690.396.597.69898.499.199.499.499.299
Stop21.40.80.80.70.40.70.40.40.10.10.31.31.40.90.70.60.100.60.3
Stop37.31.51.51.50.50.60.80.90.80.39.42.211.10.90.30.50.60.20.7
Stop400000000000000000000
30Stop183.490.59291.489.790.890.488.788.88782.892.291.892.190.590.588.789.887.686.9
Stop21.71.71.71.11.21.60.61.41.111.61.21.50.81.51.80.61.21.31.1
Stop314.87.86.37.59.17.699.910.11215.66.66.77.187.710.7911.112
Stop40.10000000000000000000
40Stop175.878.376.6747269.265.562.757.659.274.378.278.176.370.568.36465.561.258.2
Stop21.9331.91.61.41.810.91.21.62.72.31.32.51.81.70.91.41.5
Stop32218.720.424.126.429.432.736.341.539.62419.119.622.42729.934.333.637.440.3
Stop40.30000000000.1000000000
50Stop164.46559.653.146.940.640.13531.430.464.663.357.653.949.442.638.336.632.428
Stop21.92.81.92.11.71.50.81.11.50.71.63.82.41.51.31.10.81.11.31.1
Stop333.732.238.544.851.457.959.163.967.168.933.632.94044.649.356.360.962.366.370.9
Stop400000000000.2000000000
60Stop154.452.242.33328.121.719.915.813.711.354.449.243.433.626.722.220.214.91311.1
Stop21.42.91.81.61.40.70.40.30.20.32.42.42.32.80.90.90.70.40.30.3
Stop344.144.955.965.470.577.679.783.986.188.44348.454.363.672.476.979.184.786.788.6
Stop40.10000000000.2000000000
70Stop14737.925.32114.1117.564.43.144.234.128.519.41411.37.54.44.13.1
Stop21.51.41.31.50.70.50.30.20.102.12.91.40.70.90.40.10.20.10.1
Stop351.560.773.477.585.288.592.293.895.596.953.46370.179.985.188.392.495.495.896.8
Stop400000000000.3000000000
80Stop13826.71610.56.44.92.51.90.80.73526.117.610.48.14.22.22.11.30.5
Stop21.31.71.310.90.100.1001.61.30.70.70.30.40000
Stop360.671.682.788.592.79597.59899.299.363.172.681.788.991.695.497.897.998.799.5
Stop40.10000000000.3000000000
90Stop12915.79.24.73.81.71.600.20.329.516.710.25.93.22.11.10.70.30.2
Stop21.51.40.70.40.10.20.1000.11.71.20.40.3000000
Stop369.382.990.194.996.198.198.310099.899.668.682.189.493.896.897.998.999.399.799.8
Stop40.20000000000.2000000000
100Stop121.612.26.72.41.60.60.20.10.1023115.831.70.50.20.300
Stop21.20.80.10.10.10000.101.10.60.50.20.100000
Stop3778793.297.598.399.499.899.999.810075.388.493.796.898.299.599.899.7100100
Stop40.20000000000.6000000000
Table A12. Computational results for randomly generated instances with the ratio 10%:30%:10%:50% of the numbers of jobs in the subsets J 1 , J 2 , J 1 , 2 and J 2 , 1 of the job set J .
Table A12. Computational results for randomly generated instances with the ratio 10%:30%:10%:50% of the numbers of jobs in the subsets J 1 , J 2 , J 1 , 2 and J 2 , 1 of the job set J .
Uniform DistributionsGamma Distributions
δ % n 102030405060708090100102030405060708090100
5Stop198.699.910010010010010010010010099.3100100100100100100100100100
Stop20.20000000000000000000
Stop31.20.1000000000.7000000000
Stop400000000000000000000
10Stop197.899.499.899.810099.810010010010097.399.799.710010099.910010099.9100
Stop20.20.10.10.200.200000.20.10.1000000.10
Stop320.50.100000002.50.20.2000.10000
Stop400000000000000000000
20Stop193.598.198.199.499.199.799.699.999.799.49597.598.89999.599.599.899.799.6100
Stop20.40.80.60.20.40.20.20.10.30.20.60.70.60.50.50.30.10.20.30
Stop36.11.11.30.40.50.10.2000.44.41.80.60.500.20.10.10.10
Stop400000000000000000000
30Stop185.994.296.195.294.395.396.195.895.895.289.994.294.295.395.495.995.295.292.896.3
Stop20.61.41.11.11.20.50.71.10.30.40.90.81.411.511.20.61.10.3
Stop313.54.42.83.74.54.23.23.13.94.49.254.43.73.13.13.64.26.13.4
Stop400000000000000000000
40Stop180.585.785.583.485.481.982.377.777.877.581.785.988.385.682.184.381.679.180.980.1
Stop21.32.21.91.91.31.41.61.70.71.21.42.21.52.321.30.41.610.9
Stop318.212.112.614.713.316.716.120.621.521.316.911.910.212.115.914.41819.318.119
Stop400000000000000000000
50Stop174.174.872.670676259.258.554.952.77375.973.669.767.660.962.659.156.652
Stop21.22.62.51.81.31.51.50.90.90.60.92.12.11.31.21.10.810.60.4
Stop324.722.624.928.231.736.539.340.644.246.726.12224.32931.23836.639.942.847.6
Stop400000000000000000000
60Stop166.964.360.952.34546.74037.434.632.263.864.258.455.948.242.840.135.936.331.2
Stop21.33.21.62.51.50.91.80.90.80.90.821.91.61.81.41.21.30.91.3
Stop331.832.537.545.253.552.458.261.764.666.935.433.839.742.55055.858.762.862.867.5
Stop400000000000000000000
70Stop158.452.642.738.734.629.421.121.517.616.357.750.84537.93127.626.221.620.515.1
Stop21.42.212.30.80.70.50.30.20.10.93.52.41.11.30.60.60.40.30
Stop340.245.256.35964.669.978.478.282.283.641.345.752.66167.771.873.27879.284.9
Stop400000000000.1000000000
80Stop151.940.734.128.321.414.213.99.99.8849.741.733.327.124.117.414.112.68.87.5
Stop20.91.71.41.40.20.10.20.30.100.82.51.60.90.50.30.60.500
Stop347.257.664.570.378.485.785.989.890.19249.455.865.17275.482.385.386.991.292.5
Stop400000000000.1000000000
90Stop144.231.324.617.312.3117.14.73.64.24432.724.816.312.7107.96.54.23.8
Stop21.31.30.40.80.20.10.10.10.1011.41.210.300.100.10.1
Stop354.567.47581.987.588.992.895.296.395.854.665.97482.787909293.595.796.1
Stop400000000000.4000000000
100Stop136.124.317.812.47.56.232.92.31.135.525.915.310.66.95.13.121.81.7
Stop20.81.60.80.60.20.1000.1011.10.30.30.200.1000
Stop363.174.181.48792.393.79797.197.698.962.97384.489.192.994.996.89898.298.3
Stop400000000000.6000000000
Table A13. Computational results for randomly generated instances with the ratio 10%:40%:10%:40% of the numbers of jobs in the subsets J 1 , J 2 , J 1 , 2 and J 2 , 1 of the job set J .
Table A13. Computational results for randomly generated instances with the ratio 10%:40%:10%:40% of the numbers of jobs in the subsets J 1 , J 2 , J 1 , 2 and J 2 , 1 of the job set J .
Uniform DistributionsGamma Distributions
δ % n 102030405060708090100102030405060708090100
5Stop198.910010010010010010010010010099.699.9100100100100100100100100
Stop200000000000000000000
Stop31.10000000000.40.100000000
Stop400000000000000000000
10Stop197.699.699.999.910010010010010010098.299.599.999.910010010099.9100100
Stop2000.10.1000000000.10.10000.100
Stop32.40.4000000001.80.500000000
Stop400000000000000000000
20Stop195.898.69999.799.799.999.710010099.995.597.699.799.399.599.810099.899.9100
Stop200.40.40.10.30.10.2000.10.10.400.50.20.200.10.10
Stop34.210.60.2000.10004.420.30.20.3000.100
Stop400000000000000000000
30Stop193.294.897.197.898.198.9999998.599.393.494.996.898.398.597.498.899.499.199
Stop200.80.50.90.20.100.40.50.10.510.70.30.40.90.20.10.50
Stop36.84.42.41.31.7110.610.66.14.12.51.41.11.710.50.41
Stop400000000000000000000
40Stop188.691.19191.994.591.291.79293.39387.790.591.69292.59393.192.69291.5
Stop20.31.41.10.70.20.80.90.70.90.50.21.711.30.80.40.90.60.40.7
Stop311.17.57.97.45.387.47.35.86.512.17.87.46.76.76.666.87.67.8
Stop400000000000000000000
50Stop184.686.984.684.8818279.379.777.877.88584.98281.68283.177.279.778.578.1
Stop20.60.91.21.61.61.110.81.10.902.21.8211.21.30.91.11
Stop314.812.214.213.617.416.919.719.521.121.31512.916.216.41715.721.519.420.420.9
Stop400000000000000000000
60Stop179.777.875.471.571.169.263.561.35958.877.575.175.471.870.766.466.363.560.160.3
Stop20.21.921.91.91.20.81.10.90.60.81.72.11.51.41.80.50.81.71
Stop320.120.322.626.62729.635.737.640.140.621.723.222.526.727.931.833.235.738.238.7
Stop400000000000000000000
70Stop173.568.565.865.957.754.249.647.944.845.375.471.465.762.859.455.950.749.544.643.2
Stop20.61.71.61.41.50.70.90.70.70.80.21.51.21.21.40.710.710.7
Stop325.929.832.632.740.845.149.551.454.553.924.327.133.13639.243.448.349.854.456.1
Stop400000000000.1000000000
80Stop167.660.558.752.846.143.540.136.735.434.266.662.453.450.8494341.437.838.733.7
Stop20.32.71.21.10.90.60.80.40.20.60.42.121.11.410.40.30.30.2
Stop332.136.840.146.15355.959.162.964.465.232.935.544.648.149.65658.261.96166.1
Stop400000000000.1000000000
90Stop163.350.949.542.836.336.233.728.728.228.958.254.151.944.137.333.831.630.82727.5
Stop20.81.51.70.90.50.10.30.20.20.30.31.41.210.70.50.40.10.30
Stop335.947.648.856.363.263.76671.171.670.841.544.546.954.96265.76869.172.772.5
Stop400000000000000000000
100Stop158.148.441.132.530.927.224.221.223.120.455.544.438.232.232.327.724.121.822.420.3
Stop20.210.60.80.30.40.20.4000.71.50.70.80.60.50.20.10.20
Stop341.650.658.366.768.872.475.678.476.979.643.854.161.16767.171.875.778.177.479.7
Stop40.10000000000000000000
Table A14. Computational results for randomly generated instances with the ratio 10%:60%:10%:20% of the numbers of jobs in the subsets J 1 , J 2 , J 1 , 2 and J 2 , 1 of the job set J .
Table A14. Computational results for randomly generated instances with the ratio 10%:60%:10%:20% of the numbers of jobs in the subsets J 1 , J 2 , J 1 , 2 and J 2 , 1 of the job set J .
Uniform DistributionsGamma Distributions
δ % n 102030405060708090100102030405060708090100
5Stop110099.810010010010010010010010010099.9100100100100100100100100
Stop200000000000000000000
Stop300.20000000000.100000000
Stop400000000000000000000
10Stop110099.910010010010010010010010010099.899.9100100100100100100100
Stop200000000000000000000
Stop300.10000000000.20.10000000
Stop400000000000000000000
20Stop110099.499.910010010010010010010010099.399.9100100100100100100100
Stop20000000000000.10000000
Stop300.60.1000000000.700000000
Stop400000000000000000000
30Stop199.998.799.799.910010010010010010010098.699.599.599.9100100100100100
Stop200.30000000000.20.10.3000000
Stop30.110.30.100000001.20.40.20.100000
Stop400000000000000000000
40Stop110097.399.599.799.710099.810099.999.910097.298.699.199.810010010099.9100
Stop200.30.30000.100000.10.50.2000000
Stop302.40.20.30.300.100.10.102.70.90.70.20000.10
Stop400000000000000000000
50Stop199.996.19798.399.29999.399.599.810010095.896.998.499.299.299.799.999.6100
Stop200.20.50.20.30.50.200.2000.20.50.4000.1000
Stop30.13.72.51.50.50.50.50.500042.61.20.80.80.20.10.40
Stop400000000000000000000
60Stop199.794.696.196.897.898.297.998.398.79999.894.995.397.697.998.396.998.898.498.6
Stop200.41.10.10.30.20.700.10.100.10.20.30.20.30.60.30.40.2
Stop30.352.83.11.91.61.41.71.20.90.254.52.11.91.42.50.91.21.2
Stop400000000000000000000
70Stop199.694.494.294.895.994.695.695.896.596.799.69494.993.494.5969796.29696
Stop200.40.60.50.60.60.30.40.4000.20.70.50.40.80.20.20.40.3
Stop30.45.25.24.73.54.84.13.83.13.30.45.84.46.15.13.22.83.63.63.7
Stop400000000000000000000
80Stop199.890.99291.291.2929292.391.99299.189.59291.690.892.692.493.492.692.1
Stop200.20.60.80.70.20.50.60.40.300.40.60.71.10.60.50.20.40.1
Stop30.28.97.488.17.87.57.17.77.70.910.17.47.78.16.87.16.477.8
Stop400000000000000000000
90Stop198.988.389.588.387.68986.187.886.986.298.689.987.388.888.588.787.885.188.587.2
Stop200.210.91.20.50.80.60.20.300.10.50.30.40.50.70.40.60.9
Stop31.111.59.510.811.210.513.111.612.913.51.41012.210.911.110.811.514.510.911.9
Stop400000000000000000000
100Stop197.888.486.683.185.783.482.881.382.182.497.690.284.48584.281.780.282.280.783.2
Stop200.41.1110.60.70.50.80.200.20.70.91.20.60.60.50.40.5
Stop32.211.212.315.913.31616.518.217.117.42.49.614.914.114.617.719.217.318.916.3
Stop400000000000000000000

References

  1. Lai, T.-C.; Sotskov, Y.N. Sequencing with uncertain numerical data for makespan minimization. J. Oper. Res. Soc. 1999, 50, 230–243. [Google Scholar] [CrossRef]
  2. Lai, T.-C.; Sotskov, Y.N.; Sotskova, N.Y.; Werner, F. Mean flow time minimization with given bounds of processing times. Eur. J. Oper. Res. 2004, 159, 558–573. [Google Scholar] [CrossRef]
  3. 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]
  4. Lai, T.-C.; Sotskov, Y.N.; Sotskova, N.Y.; Werner, F. Optimal makespan scheduling with given bounds of processing times. Math. Comput. Model. 1997, 26, 67–86. [Google Scholar]
  5. Cheng, T.C.E.; Shakhlevich, N.V. Proportionate flow shop with controllable processing times. J. Sched. 1999, 27, 253–265. [Google Scholar] [CrossRef]
  6. Cheng, T.C.E.; Kovalyov, M.Y.; Shakhlevich, N.V. Scheduling with controllable release dates and processing times: Makespan minimization. Eur. J. Oper. Res. 2006, 175, 751–768. [Google Scholar] [CrossRef]
  7. Jansen, K.; Mastrolilli, M.; Solis-Oba, R. Approximation schemes for job shop scheduling problems with controllable processing times. Eur. J. Oper. Res. 2005, 167, 297–319. [Google Scholar] [CrossRef] [Green Version]
  8. Sotskov, Y.N.; Matsveichuk, N.M.; Hatsura, V.D. Two-machine job-shop scheduling problem to minimize the makespan with uncertain job durations. Algorithms 2020, 13, 4. [Google Scholar] [CrossRef] [Green Version]
  9. Graham, R.L.; Lawler, E.L.; Lenstra, J.K.; Rinnooy Kan, A.H.G. Optimization and approximation in deterministic sequencing and scheduling. Ann. Discret. Appl. Math. 1979, 5, 287–326. [Google Scholar]
  10. Pinedo, M. Scheduling: Theory, Algorithms, and Systems; Prentice-Hall: Englewood Cliffs, NJ, USA, 2002. [Google Scholar]
  11. Sotskov, Y.N.; Werner, F. Sequencing and Scheduling with Inaccurate Data; Nova Science Publishers: Hauppauge, NY, USA, 2014. [Google Scholar]
  12. Tanaev, V.S.; Sotskov, Y.N.; Strusevich, V.A. Scheduling Theory: Multi-Stage Systems; Kluwer Academic Publishers: Dordrecht, The Netherlands, 1994. [Google Scholar]
  13. Jackson, J.R. An extension of Johnson’s results on job lot scheduling. Nav. Res. Logist. Q. 1956, 3, 201–203. [Google Scholar] [CrossRef]
  14. Johnson, S.M. Optimal two and three stage production schedules with set up times included. Nav. Res. Logist. Q. 1954, 1, 61–68. [Google Scholar] [CrossRef]
  15. Gonzalez-Neira, E.M.; Montoya-Torres, J.R.; Barrera, D. Flow shop scheduling problem under uncertainties: Review and trends. Int. J. Ind. Engin. Comput. 2017, 8, 399–426. [Google Scholar] [CrossRef]
  16. Elmaghraby, S.; Thoney, K.A. Two-machine flowshop problem with arbitrary processing time distributions. IIE Trans. 2000, 31, 467–477. [Google Scholar]
  17. Kamburowski, J. Stochastically minimizing the makespan in two-machine flow shops without blocking. Eur. J. Oper. Res. 1999, 112, 304–309. [Google Scholar] [CrossRef]
  18. Ku, P.S.; Niu, S.C. On Johnson’s two-machine flow-shop with random processing times. Oper. Res. 1986, 34, 130–136. [Google Scholar] [CrossRef]
  19. Allahverdi, A. Stochastically minimizing total flowtime in flowshops with no waiting space. Eur. J. Oper. Res. 1999, 113, 101–112. [Google Scholar] [CrossRef]
  20. Allahverdi, A.; Mittenthal, J. Two-machine ordered flowshop scheduling under random breakdowns. Math. Comput. Model. 1999, 20, 9–17. [Google Scholar] [CrossRef]
  21. Portougal, V.; Trietsch, D. Johnson’s problem with stochastic processing times and optimal service level. Eur. J. Oper. Res. 2006, 169, 751–760. [Google Scholar] [CrossRef]
  22. 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]
  23. 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] [Green Version]
  24. Subramaniam, V.; Raheja, A.S.; Rama Bhupal Reddy, K. Reactive repair tool for job shop schedules. Int. J. Prod. Res. 2005, 1, 1–23. [Google Scholar] [CrossRef]
  25. Gur, S.; Eren, T. Scheduling and planning in service systems with goal programming: Literature review. Mathematics 2018, 6, 265. [Google Scholar] [CrossRef] [Green Version]
  26. 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]
  27. 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]
  28. Wu, Z.; Yu, S.; Li, T. A meta-model-based multi-objective evolutionary approach to robust job shop scheduling. Mathematics 2019, 7, 529. [Google Scholar] [CrossRef] [Green Version]
  29. Kuroda, M.; Wang, Z. Fuzzy job shop scheduling. Int. J. Prod. Econ. 1996, 44, 45–51. [Google Scholar] [CrossRef]
  30. Grabot, B.; Geneste, L. Dispatching rules in scheduling: A fuzzy approach. Int. J. Prod. Res. 1994, 32, 903–915. [Google Scholar] [CrossRef]
  31. Özelkan, E.C.; Duckstein, L. Optimal fuzzy counterparts of scheduling rules. Eur. J. Oper. Res. 1999, 113, 593–609. [Google Scholar] [CrossRef]
  32. Navakkoli-Moghaddam, R.; Safaei, N.; Kah, M.M.O. Accessing feasible space in a generalized job shop scheduling problem with the fuzzy processing times: A fuzzy-neural approach. J. Oper. Res. Soc. 2008, 59, 431–442. [Google Scholar] [CrossRef]
  33. Al-Atroshi, A.M.; Azez, S.T.; Bhnam, B.S. An effective genetic algorithm for job shop scheduling with fuzzy degree of satisfaction. Int. J. Comput. Sci. Issues 2013, 10, 180–185. [Google Scholar]
  34. Kasperski, A.; Zielinski, P. Possibilistic minmax regret sequencing problems with fuzzy parameteres. IEEE Trans. Fuzzy Syst. 2011, 19, 1072–1082. [Google Scholar] [CrossRef]
  35. Gonzalez-Rodriguez, I.; Vela, C.R.; Puente, J.; Varela, R. A new local search for the job shop problem with uncertain durations. In Proceedings of the Eighteenth International Conference on Automated Planning and Scheduling (ICAPS 2008), Sydney, Australia, 14–18 September 2008; Association for the Advancement of Artificial Intelligence: Menlo Park, CA, USA, 2008; pp. 124–131. [Google Scholar]
  36. Allahverdi, A.; Sotskov, Y.N. Two-machine flowshop minimum-lenght scheduling problem with random and bounded processing times. Int. Trans. Oper. Res. 2003, 10, 65–76. [Google Scholar] [CrossRef]
  37. Matsveichuk, N.M.; Sotskov, Y.N. A stability approach to two-stage scheduling problems with uncertain processing times. In Sequencing and Scheduling with Inaccurate Data; Yu, N., Sotskov, Y.N., Werner,, F., Eds.; Nova Science Publishers: Hauppauge, NY, USA, 2014; pp. 377–407. [Google Scholar]
  38. 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]
  39. 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] [Green Version]
  40. 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]
  41. Matsveichuk, N.M.; Sotskov, Y.N.; Egorova, N.G.; Lai, T.-C. Schedule execution for two-machine flow-shop with interval processing times. Math. Comput. Model. 2009, 49, 991–1011. [Google Scholar] [CrossRef]
  42. Sotskov, Y.N.; Allahverdi, A.; Lai, T.-C. Flowshop scheduling problem to minimize total completion time with random and bounded processing times. J. Oper. Res. Soc. 2004, 55, 277–286. [Google Scholar] [CrossRef]
  43. Allahverdi, A.; Aldowaisan, T.; Sotskov, Y.N. Two-machine flowshop scheduling problem to minimize makespan or total completion time with random and bounded setup times. Int. J. Math. Math. Sci. 2003, 39, 2475–2486. [Google Scholar] [CrossRef] [Green Version]
  44. Kouvelis, P.; Yu, G. Robust Discrete Optimization and Its Application; Kluwer Academic Publishers: Boston, MA, USA, 1997. [Google Scholar]
  45. Kouvelis, P.; Daniels, R.L.; Vairaktarakis, G. Robust scheduling of a two-machine flow shop with uncertain processing times. IEEE Trans. 2000, 32, 421–432. [Google Scholar] [CrossRef]
  46. Kuwata, Y.; Morikawa, K.; Takahashi, K.; Nakamura, N. Robustness optimisation of the minimum makespan schedules in a job shop. Int. J. Manuf. Technol. Manag. 2003, 5, 1–9. [Google Scholar] [CrossRef]
  47. Carlier, J.; Pinson, E. An algorithm for solving the job-shop problem. Manag. Sci. 1989, 35, 164–176. [Google Scholar] [CrossRef]
  48. Xiong, J.; Xing, L.; Chen, Y.-W. Robust scheduling for multi-objective flexible job-shop problems with random machine breakdowns. Int. J. Prod. Econ. 2013, 141, 112–126. [Google Scholar] [CrossRef]
  49. Paprocka, I. The model of maintenance planning and production scheduling for maximising robustness. Int. J. Prod. Res. 2019, 57, 1–22. [Google Scholar] [CrossRef]
  50. Xie, C.; Allen, T.T. Simulation and experimental design methods for job shop scheduling with material handling: A survey. Int. J. Adv. Manuf. Technol. 2015, 80, 233–243. [Google Scholar] [CrossRef]
  51. Paprocka, I. Evaluation of the effects of a machine failure on the robustness of a job shop system—Proactive approaches. Sustainability 2019, 11, 65. [Google Scholar] [CrossRef] [Green Version]
  52. Cigolini, R.; Perona, M.; Portioli, A. Comparison of order and release techniques in a dynamic and uncertain job shop environment. Int. J. Prod. Res. 1998, 36, 2931–2951. [Google Scholar] [CrossRef]
  53. Luh, P.B.; Chen, D.; Thakur, L.S. An effective approach for job-shop scheduling with uncertain processing requirements. IEEE Trans. Robot. Autom. 1999, 15, 328–339. [Google Scholar] [CrossRef] [Green Version]
  54. Ng, C.T.; Matsveichuk, N.M.; Sotskov, Y.N.; Cheng, T.C.E. Two-machine flow-shop minimum-length scheduling with interval processing times. Asia-Pac. J. Oper. Res. 2009, 26, 1–20. [Google Scholar] [CrossRef]
  55. Matsveichuk, N.M.; Sotskov, Y.N.; Werner, F. The dominance digraph as a solution to the two-machine flow-shop problem with interval processing times. Optimization 2011, 60, 1493–1517. [Google Scholar] [CrossRef]
Figure 1. An example of the optimal semi-active schedule without idle times on both machines.
Figure 1. An example of the optimal semi-active schedule without idle times on both machines.
Mathematics 08 01314 g001
Figure 2. The optimal semi-active schedule for the job-shop scheduling problem.
Figure 2. The optimal semi-active schedule for the job-shop scheduling problem.
Mathematics 08 01314 g002
Figure 3. The initial part of the schedule execution.
Figure 3. The initial part of the schedule execution.
Mathematics 08 01314 g003
Figure 4. The optimal semi-active schedule for the Example 2 in case (jj).
Figure 4. The optimal semi-active schedule for the Example 2 in case (jj).
Mathematics 08 01314 g004
Figure 5. Average percentages of the instances whose optimality of the constructed pair of job permutations was proven at the off-line phase and on-line phase of scheduling.
Figure 5. Average percentages of the instances whose optimality of the constructed pair of job permutations was proven at the off-line phase and on-line phase of scheduling.
Mathematics 08 01314 g005
Figure 6. Average percentages of the instances whose optimality of the constructed pair of job permutations was proven at the on-line phase of scheduling.
Figure 6. Average percentages of the instances whose optimality of the constructed pair of job permutations was proven at the on-line phase of scheduling.
Mathematics 08 01314 g006
Figure 7. Maximal errors Δ max for the tested instances with a uniform distribution.
Figure 7. Maximal errors Δ max for the tested instances with a uniform distribution.
Mathematics 08 01314 g007
Figure 8. Maximal errors Δ max for the tested instances with a gamma distribution.
Figure 8. Maximal errors Δ max for the tested instances with a gamma distribution.
Mathematics 08 01314 g008
Table 1. The numerical input data for Example 1.
Table 1. The numerical input data for Example 1.
J j J 1 J 2 J 3 J 4 J 5 J 6 J 7 J 8
l i 1 6872-111
u i 1 7993-333
l i 2 654-2234
u i 2 765-3444
Table 2. Average percentages of the instances whose optimality of the constructed permutations was proven at the off-line and on-line phases of scheduling.
Table 2. Average percentages of the instances whose optimality of the constructed permutations was proven at the off-line and on-line phases of scheduling.
δ % 5 % 10 % 20 % 30 % 40 % 50 % 60 % 70 % 80 % 90 % 100 %
0 % : 0 % : 10 % : 90 % 98.3895.6674.3240.0918.568.654.42.481.580.950.57
0 % : 0 % : 20 % : 80 % 99.4898.8194.3774.5245.3324.2012.326.553.872.591.65
0 % : 0 % : 30 % : 70 % 99.8799.7198.9995.0981.3359.3336.6521.6711.937.284.39
0 % : 0 % : 40 % : 60 % 99.9799.9499.7399.0297.0990.8678.559.7640.8525.9315.2
0 % : 0 % : 50 % : 50 % 10099.9999.9399.7399.1397.5594.2186.6572.3551.4129.45
5 % : 5 % : 5 % : 85 % 99.6798.4578.9743.1919.269.114.312.021.10.580.27
5 % : 15 % : 5 % : 75 % 99.6498.8684.4451.0624.6511.886.433.341.951.020.68
5 % : 20 % : 5 % : 70 % 99.5798.9786.9255.7929.5914.987.974.422.591.451.01
10 % : 10 % : 10 % : 70 % 99.8499.4897.4683.5557.0934.1118.9511.146.814.292.8
10 % : 10 % : 40 % : 40 % 99.9910099.9699.8999.6999.3598.4196.5592.8485.6673.22
10 % : 20 % : 10 % : 60 % 99.8799.6898.3790.5671.0548.2630.2818.2211.367.214.79
10 % : 30 % : 10 % : 50 % 99.999.7299.1195.3383.8566.1549.3434.3524.1316.6411.44
10 % : 40 % : 10 % : 40 % 99.9299.7599.3397.9792.5282.6970.0158.648.5240.3632.76
10 % : 60 % : 10 % : 20 % 99.9899.9899.9399.8399.5999.0197.9696.1693.0189.4685.75
Table 3. Average percentages of the instances whose optimality of the constructed permutations was proven at the on-line phase of scheduling.
Table 3. Average percentages of the instances whose optimality of the constructed permutations was proven at the on-line phase of scheduling.
δ % 5 % 10 % 20 % 30 % 40 % 50 % 60 % 70 % 80 % 90 % 100 %
0 % : 0 % : 10 % : 90 % 0.973.688.697.263.861.921.060.50.340.20.11
0 % : 0 % : 20 % : 80 % 0.241.245.238.597.855.332.631.490.780.590.32
0 % : 0 % : 30 % : 70 % 0.030.221.334.276.828.135.7842.491.661.07
0 % : 0 % : 40 % : 60 % 0.020.060.310.932.054.155.576.535.64.443.23
0 % : 0 % : 50 % : 50 % 00.010.060.250.531.242.624.336.067.46.23
5 % : 5 % : 5 % : 85 % 0.331.012.962.311.630.880.490.250.150.070.03
5 % : 15 % : 5 % : 75 % 0.270.842.642.391.780.930.470.30.190.090.08
5 % : 20 % : 5 % : 70 % 0.280.692.382.861.761.070.60.460.260.120.04
10 % : 10 % : 10 % : 70 % 0.060.1650.831.871.951.561.080.690.430.320.24
10 % : 10 % : 40 % : 40 % 000.020.040.050.140.210.30.450.680.77
10 % : 20 % : 10 % : 60 % 0.050.130.61.291.771.61.220.820.570.410.25
10 % : 30 % : 10 % : 50 % 0.010.070.360.911.491.321.481.030.70.480.36
10 % : 40 % : 10 % : 40 % 00.030.160.410.781.171.291.010.90.620.46
10 % : 60 % : 10 % : 20 % 000.010.050.080.170.280.380.450.510.59
Table 4. Maximal errors Δ m a x and average errors Δ a v e for all tested instances with factual processing times randomly generated based on a uniform distribution.
Table 4. Maximal errors Δ m a x and average errors Δ a v e for all tested instances with factual processing times randomly generated based on a uniform distribution.
Class δ % 5 % 10 % 20 % 30 % 40 % 50 % 60 % 70 % 80 % 90 % 100 %
1 Δ m a x 0.0315110.3009240.6910620.3332921.1104920.8819022.2462993.2631452.7292863.859365.024917
Δ a v e 0.0000030.0000580.0002250.0000570.0003330.0006130.0007330.001350.0018680.0014090.002253
2 Δ m a x 0.04750.18987200.12546700.4416690.2436591.0760963.1277941.2861581.353086
Δ a v e 0.0000050.00002300.00001300.0000640.0000450.0001890.0009760.0002210.000135
3 Δ m a x 000000000.819900
Δ a v e 000000000.00008200
4 Δ m a x 00000000000
Δ a v e 00000000000
5 Δ m a x 00000000000
Δ a v e 00000000000
6 Δ m a x 000000.4114150.0816230000
Δ a v e 000000.0000820.0000160000
7 Δ m a x 00000000000
Δ a v e 00000000000
8 Δ m a x 00000000000
Δ a v e 00000000000
9 Δ m a x 00.0682370.05529901.3125300.912230.8937051.6979132.1667178.617851
Δ a v e 00.0000070.00000600.00024400.0001440.0001670.0003380.0005580.001348
10 Δ m a x 00000000000
Δ a v e 00000000000
11 Δ m a x 0001.478753.6602975.7242880.8100143.3161780.396534.428284.666154
Δ a v e 0000.0001480.0006940.0005720.0000810.0003320.0000400.0007990.000924
12 Δ m a x 00000000007.243838
Δ a v e 00000000000.000724
13 Δ m a x 00000000005.036085
Δ a v e 00000000000.000504
14 Δ m a x 00000000000
Δ a v e 00000000000
Table 5. Maximal errors Δ m a x and average errors Δ a v e for all tested instances with factual processing times randomly generated based on a gamma distribution.
Table 5. Maximal errors Δ m a x and average errors Δ a v e for all tested instances with factual processing times randomly generated based on a gamma distribution.
Class δ % 5 % 10 % 20 % 30 % 40 % 50 % 60 % 70 % 80 % 90 % 100 %
1 Δ m a x 0.2118020.5093191.9952842.4391054.89282.6706486.6139358.78220210.598349.1532959.50327
Δ a v e 0.0000550.0001310.000310.0007460.0017540.0017460.003690.0050330.0067550.0116870.01144
2 Δ m a x 000004.1825441.3616941.0709055.6344597.8456697.974282
Δ a v e 000000.0005950.0003170.0001070.0013820.0017370.001725
3 Δ m a x 00001.32533005.56680804.0263525.385314
Δ a v e 00000.000133000.00055700.0005110.001354
4 Δ m a x 0000000006.0446460
Δ a v e 0000000000.0006040
5 Δ m a x 00000000000
Δ a v e 00000000000
6 Δ m a x 0000.06104800.3878841.0813531.1253430.7103070.6437680.67762
Δ a v e 0000.00001200.0000780.0002160.0004010.0002060.0003430.000136
7 Δ m a x 000.14317700000000
Δ a v e 000.00002900000000
8 Δ m a x 000.38879700.42634600.2895050.0591462.4780041.1677244.748751
Δ a v e 000.00007800.00008500.0000290.0000060.0004420.0002340.000948
9 Δ m a x 2.641656.6206375.2667384.16380810.56515000000
Δ a v e 0.0008520.0019460.0016960.0016150.003941000000
10 Δ m a x 00000000.71451500.3345133.232162
Δ a v e 00000000.00007100.0000330.000584
11 Δ m a x 2.98895110.501132.5263415.6325947.258956000000
Δ a v e 0.00030.0012890.0004310.0008870.001595000000
12 Δ m a x 00.0959291.63914817.649296.3913000000
Δ a v e 00.0000100.0001640.0029480.001737000000
13 Δ m a x 00.9676420.784700000000
Δ a v e 00.0000970.00007800000000
14 Δ m a x 00000000000
Δ a v e 00000000000

Share and Cite

MDPI and ACS Style

Sotskov, Y.N.; Matsveichuk, N.M.; Hatsura, V.D. Schedule Execution for Two-Machine Job-Shop to Minimize Makespan with Uncertain Processing Times. Mathematics 2020, 8, 1314. https://0-doi-org.brum.beds.ac.uk/10.3390/math8081314

AMA Style

Sotskov YN, Matsveichuk NM, Hatsura VD. Schedule Execution for Two-Machine Job-Shop to Minimize Makespan with Uncertain Processing Times. Mathematics. 2020; 8(8):1314. https://0-doi-org.brum.beds.ac.uk/10.3390/math8081314

Chicago/Turabian Style

Sotskov, Yuri N., Natalja M. Matsveichuk, and Vadzim D. Hatsura. 2020. "Schedule Execution for Two-Machine Job-Shop to Minimize Makespan with Uncertain Processing Times" Mathematics 8, no. 8: 1314. https://0-doi-org.brum.beds.ac.uk/10.3390/math8081314

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