We focus on solving Stochastic Job Shop Scheduling Problem (SJSSP) with random processing time to minimize the expected sum of earliness and tardiness costs of all jobs. To further enhance the efficiency of the simulation optimization technique of embedding Evolutionary Strategy in Ordinal Optimization (ESOO) which is based on Monte Carlo simulation, we embed Optimal Computing Budget Allocation (OCBA) technique into the exploration stage of ESOO to optimize the performance evaluation process by controlling the allocation of simulation times. However, while pursuing a good set of schedules, “super individuals,” which can absorb most of the given computation while others hardly get any simulation budget, may emerge according to the allocating equation of OCBA. Consequently, the schedules cannot be evaluated exactly, and thus the probability of correct selection (PCS) tends to be low. Therefore, we modify OCBA to balance the computation allocation: (1) set a threshold of simulation times to detect “super individuals” and (2) follow an exclusion mechanism to marginalize them. Finally, the proposed approach is applied to an SJSSP comprising 8 jobs on 8 machines with random processing time in truncated normal, uniform, and exponential distributions, respectively. The results demonstrate that our method outperforms the ESOO method by achieving better solutions.
Most classical job shop scheduling problems assume that all the problem data are fixed and known in advance. However, there are several inevitable stochastic factors in real manufacturing systems, for example, random processing time, machine breakdowns, and rush orders, among which random processing time is the most fundamental and representative uncertain factor. Therefore, research in Stochastic Job Shop Scheduling Problem (SJSSP) with random processing time has a great importance in engineering applications. Even though, research works on SJSSP are fewer than those on deterministic JSSP because of disadvantage caused by random processing time, for example, huge search space, lengthy computation time, and challenging evaluation of schedules.
In general, three models are used to denote random processing time: interval number method [
However, random processing time of operations contributes to the randomness of completion time for each job and performance indicators of schedules, which leads to the difficulty of evaluating feasible schedules in the evolution of these heuristic algorithms. Stochastic simulation method, for example, Monte Carlo, which relies on repeated random sampling to obtain statistic results, has been widely used to solve performance evaluation [
Zhang and Wu [
Even though ESOO could significantly reduce the computation for SJSSP, the evaluation method in the exploration stage of ESOO is similar to Monte Carlo Simulation, in which uniform computation is allocated to each schedule, regardless of whether or not it should. Thus extra computation is allocated even after the Probability of Correct Selection (PCS) has already converged. Therefore, there is potential to further enhance ESOO’s efficiency by intelligently controlling evaluation process or by determining the optimal number of simulation times among different schedules according to their performances. Chen et al. [
However, in the OCBA [
The rest of this paper is organized as follows: Section
The SJSSP studied in this paper consists of a set of
The random processing time of
Let
Objective function:
A feasible schedule
Constraints (
To obtain a good statistical estimate for a feasible schedule, a large number of simulation replications are usually required for each schedule. However, the expected objective value of a feasible schedule is available only in the form of a complex calculation via infinite simulated replications. Although infinite replications of simulation will make the objective value of (
Therefore, depending on the amount of simulated replications, (
To evaluate the performance of a feasible schedule
Ideally, overall simulation efficiency will be improved if less computational effort is spent on simulating noncritical schedules and more is spent on critical schedules. We would like to improve the PCS in each generation by allocating computation according to the performance of each schedule. Therefore, in this paper, OCBA technique is embedded into the exploration stage of ESOO algorithm to intelligently determine the optimal number of simulation times
SJSSP is a NPhard problem, which reflects the realworld situations and always suffers from uncertain feature. Recently, many methods solving SJSSP suffer from lengthy computation budget, because evaluating the objective of a schedule is already very timeconsuming not to even mention the extremely slow convergence of the heuristic techniques in searching through a huge search space. In order to overcome the drawback of consuming much computation time, we propose the ESOOOCBA algorithm. In our ESOOOCBA algorithm, OO theory reduces the unbearable computation and OCBA technique allocates necessary computation to each individual. The overall scheme of our algorithm is illustrated by Figure
Overall scheme of ESOOOCBA algorithm for SJSSP.
From the Figure
ESOOOCBA algorithm consists of two stages.
In exploration stage, we use ES as a whole frame of sampling process. The number of needed samples depends on the extent of goal softening, which decides the number of generations and the number of initial population. In each generation of ES, each individual could get a unique crude evaluation model developed from (
In the exploitation stage, we need to find the best schedule from the
The implementation of exploitation stage in [
OO theory usually allocates uniform computation to each schedule, which can hardly achieve the highest PCS within a given computation. OCBA technique [
However, the aforementioned OCBA is observed to be unavailable to solve the specific SJSSP in our experiments. While pursuing a good set of schedules in the exploration stage, “super individuals” may emerge according to (
Without enough simulation times
We try to find the root cause of “super individuals” by dating back to the deduction of the original dispatching (
However, in our experiments, the performance of individual
In order to diminish the negative influences from “super individuals” in each generation, two steps must be taken:
Modifications are made on (
Equation (
We adopt the costeffective sequential approach based on OCBA which is described as follows [
The implementation of Optimal Computing Budget Allocation (OCBA) in each generation in the exploration stage of ESOO.
Perform
If
Increase the computing budget (i.e., number of additional simulation times by
Perform additional
In the OCBA steps above,
In order to demonstrate the computational quality and efficiency of our ESOOOCBA algorithm, numerical experiments on SJSSP comprising 8 jobs on 8 machines [
Operation environment vector of SJSSP with 8 jobs and 8 machines.







 



3,70,140  2,80,160  1,90,180  6,50,100  4,40,80  8,60,120  5,70,140  7,50,100 

1,80,160  2,40,80  3,50,100  5,90,180  4,40,80  7,50,100  6,60,120  8,40,80 

1,50,100  2,40,80  3,80,160  5,60,120  4,70,140  6,40,80  8,40,80  7,70,140 

2,60,120  1,50,100  3,60,120  4,70,140  7,80,160  5,40,80  6,50,100  8,80,160 

4,50,100  3,50,100  2,70,140  1,40,80  7,50,100  5,60,120  6,90,180  8,60,120 

2,60,120  3,80,160  1,90,180  5,70,140  6,50,100  4,40,80  8,80,160  7,90,180 

1,40,80  3,60,120  4,40,80  2,80,160  5,60,120  7,70,140  8,50,100  6,60,120 

2,90,180  1,70,140  3,50,100  4,60,120  5,90,180  7,80,160  6,40,80  8,40,80 
Due dates for each job.











490  510  540  500  540  470  530  560 
Three distributions of random processing time on the machines are used to test the computational efficiency and the obtained schedules quality of our algorithm. The first distribution is truncated normal distribution with mean
In the exploration stage of ESOOOCBA, we set the number of initial population as
In addition, the selection of incremental computing budget,
In the exploitation stage of ESOOOCBA, we adopt all the parameters used in related works [
Number of candidate schedules and simulation times in each subphase.
Subphase 
1  2  3  4  5  6 


1000  368  135  50  18  7 

1000  2718  7389  20085  54598  100000 
In order to show the advantages of our modifications on OCBA, we choose a random generation from the exploration stage of ESOOOCBA in solving SJSSP with truncated normal distributed processing time. We compare our modified OCBA with classical OCBA [
3D view of the comparison between modified OCBA and classical OCBA.
Relationship between individual performance and allocated simulation times.
Distribution of allocated simulation times for individuals.
Figure
In Figure
Also, for most of the individuals, more simulation times are allocated by our modified OCBA than by classical OCBA. The reason of this phenomenon lies in the mentioned “super individuals” produced by the classical OCBA dispatching rules (see (
In Figure
For modified OCBA, 97.85% of all the individuals (1957 of the total 2000) are allocated from 33 to 1000 simulation times. After we use the threshold
In this section, we show the test results of the proposed ESOOOCBA algorithm and demonstrate the schedule quality comparing with the ESOO algorithm [
Because of the random nature of the considered problem we also have repeated the simulation process for 10 simulation runs. We have found that after the 10 simulation runs the result changes a little. Table
The good enough schedule
Distribution  The good enough schedule 
ESOOOCBA  ESOO [ 
% improvement  CPUT (s) 

Truncated normal 


2280 
















Uniform 


2778 
















Exponential 


2683 













In order to compare our algorithm ESOOOCBA, we adopt the same total simulation times as ESOO. However, because of the computational burden caused by the embedded OCBA technique, the overall consumed CPU times in our experiments are slightly longer than the consumed by ESOO (within 6 minutes), but still short enough to apply our algorithm in real time.
Also, as we can see from Figure
Convergence rate comparison between ESOOOCBA and ESOO.
To cope with the computationally intractable SJSSP, we firstly embed OCBA technique into the exploration stage of ESOO algorithm to further enhance ESOO’s efficiency by intelligently allocating simulation times according to individual performance. However, “super individuals,” which lead to a simulation distortion in the evaluation process, may emerge according to the classical OCBA. Then we set a threshold to constrain the simulation times allocated to “super individuals,” by which more simulation times can be allocated to other average individuals. The improvements on classical OCBA optimize the simulation times allocation mechanism, which guarantee a high probability of correct selection in each generation of the evolution in exploration stage.
The proposed algorithm ESOOOCBA is applied to a SJSSP comprising 8 jobs and 8 machines with random processing time in truncated normal, uniform, and exponential distributions. The simulation test results obtained by ESOOOCBA are compared with ESOO algorithm, demonstrating that our algorithm has superior performances in the aspect of schedule quality, and our modifications on OCBA are more reasonable in allocating computation in the evaluation.
The future research on SJSSP can be conducted from the following aspects.
It is worthwhile to consider other types of randomness in job shops, for example, rush orders and machine breakdowns.
It is worthwhile to consider a new global computation allocation mechanism (i.e., the breadth versus depth approach [
The authors declare that there is no conflict of interests regarding the publication of this paper.
The authors gratefully appreciate the suggestions and detailed experiment data from ShihCheng Horng. This research has been supported by the Graduate Starting Seed Fund of Northwestern Polytechnical University (no. Z2014105), the National Natural Science Foundation, China (no. 50705076), and the Programme of Introducing Talents of Discipline to Universities (B13044).