Abstract
For years, there have been tremendous endeavors to reduce makespan in an attempt to decrease the production expenses. This investigation aims to develop a scenario-based robust optimization approach for a real-world flow shop with any number of batch processing machines. The study assumes there are some uncertainties associated with processing times as well as size of jobs. Each machine can process multiple jobs simultaneously as long as the machines’ capacities are not violated. In order to verify this developed model and to evaluate the performance of the proposed robust model, a number of test problems are prepared and a commercial optimization solver is adopted to solve these test problems. For the purpose of validating the results, the robust model and mean-value model are carried out by simulation, which confirmed the proposed model.
Introduction
In batch processing machine (BPM), several jobs can be processed at the same time in such a way that all the jobs in a batch start and complete their processing, simultaneously. Semiconductor burn-in operations; environmental stress-screening (ESS) chambers; chemical, food, and mineral processing; pharmaceutical and construction materials industries; and so on are examples of BPM. 1 This research is motivated by a BPM real-world application in a printed circuit board (PCB) 2 assembly line originally presented by Damodaran and Srihari. 3 Figure 1 shows a BPM where assemblies from in circuit testing (ICT) arrive at the ESS chambers; they should be gathered in batches and the batches should be scheduled on the chambers. As it can be observed in Figure 1, the environment of chambers is a flow shop environment with m ESS chambers, and in our problem, ESS chambers are BPMs and assemblies are jobs.

A typical printed circuit board assembly line (Source: adapted from Manjeshwar et al., 2009).
In the literature, the BPM scheduling has been divided into two main groups. The first category consists of a single BPM scheduling.4–15 In the same order, some articles considered parallel BPM scheduling environment.13,16–22 Moreover, for two BPM flow-shop scheduling, refer to Damodaran and Srihari. 3
Shukla et al. 23 investigated sequencing a set of batches in multi-stage supply chain, and for fulfilling this purpose, a mathematical programming model is presented. Three objective functions, namely, minimization of lead time, blocking time, and due date violation were taken into account. Due to the combinatorial nature of the problem, a metaheuristic, artificial immune system (AIS) is implemented.
Evidently, the majority of studies on this topic addressed the single and two BPMs, while the number of BPMs within an assembly line could vary from 1 to m machines.
In addition, the typical assumption of a scheduling problem in the literature is known with deterministic input data, while there are many environmental noises in practical scheduling applications. These noises and uncertainties may adversely affect the inputs and substantially undermine the efficiency of outputs. 24 Fortunately, in recent researches, uncertainty of parameters has attracted a considerable attention.25,26 As a result, it is necessary to develop an approach to address the problem of BPM scheduling in uncertain environment, where it can generate both efficient and reliable scheduling for real-world BPM problem.
To encounter the uncertain processing time, in some researches, specific random distribution is devised. By means of stochastic optimization approach, they solved the problem by defining their expected values in the objective functions,27–29 and Rossi 30 suggested a proactive scheduling approach, which deals with fluctuations of uncertain parameters in future. Therefore, a robust optimization approach is used to formulate the uncertainty of processing times by considering all possible future scenarios.
Jensen 31 developed robust schedules in a job shop environment by considering machine’s breakdowns to minimize makespan as a performance measure. His concept assumes that the robust solution can be found in wider regions of distribution (objective) function and vulnerable solutions are usually located on the peaks’ distribution functions. Bouyahia et al. 32 assumed that the number of arrival jobs to be processed on parallel machines is a random variable. They presented a method for considering the robustness of a pre-scheduling simultaneously. Their approach minimizes the flow time as an objective function.
Al-Fawzan and Haouari 33 considered a project scheduling with uncertain task durations and constraint in resources. They presented a multi-criteria robust scheduling model, which minimizes makespan. They also defined robustness measure of scheduling as the sum of free slacks of activities. Chtourou and Haouari 34 proposed a two-stage algorithm to generate robust resource-constrained project scheduling subjected to unpredictable increase in processing times. Raja et al. 35 considered a fuzzy approach for uniform parallel machine earliness—tardiness with uncertain processing times. Another example of utilizing the fuzzy logic in scheduling problems is Wan and Chou 22 that worked on fuzzy scheduling feedback algorithms.
Recently, Rahmani and Heydari 25 considered robust and stable flow shop scheduling with unexpected arrivals of new jobs and uncertain processing times. They used a scenario-based robust stochastic optimization approach. Nonetheless, the practical issue of robust model for non-deterministic or uncertain problem in BPM scheduling has not been tackled so far.
As it is obvious from the literature, a majority of studies have been focused on single or two BPMs while in the real world, the assembly line could consist of several BPMs. Moreover, there have been lots of ignored uncertainties which may hamper the efficiency of the outcomes. To obviate this gap, in this article, a scenario-based robust optimization model is presented for real-world flow shop problems with any number of BPMs in which the processing time and size of job are uncertain. In order to verify the developed model and to evaluate the performance of proposed robust model, a number of test problems are generated and a commercial optimization solver is adopted to solve these test problems. Then, the results of implementation robust model and mean-value model (MVM) are carried out by simulation. The results show that recommended model can reach better performance throughout realizations.
The remaining of the article is organized as follows. In section “Scenario-based robust optimization,” the robust optimization (RO) approach is explained in detail. In section “Problem description,” our BPM scheduling problem is described, and the related assumptions, parameters, and variables are introduced; also mathematical models are suggested for the problem. Then, the robust counterpart of the proposed model is presented and its related assumptions, parameters, and variables are introduced. In section “Experimental results,” computational results are reported and the robust model performance is evaluated. Finally, section “Conclusion” covers conclusion and recommendations for future researches.
Scenario-based robust optimization
The optimization problems have two different constraints:
36
(1) a structural constraint that is fixed and free of any noises in its input data and (2) a control constraint that is affected by noisy inputs. In addition, two sets of variables are defined:
Subject to (s.t.)
Equation (2) denotes the structural constraints, the coefficients of which are fixed and free of noise. Constraint (3) depicts the control constraints and their coefficients are subject to an uncertainty. For the formulation of model into robust optimization model, a set of scenarios
s.t.
In the occurrence of each scenario, the objective function (1)
While objective (9) is a non-linear function, it could be optimized simply by transforming the problem into a linear programming model which has a linear objective function with linear constraints by presenting two non-negative deviational factors.
In this research, the RO used in the BPM scheduling problem is as follows
s.t.
Problem description
In this problem, jobs arrive to BPMs according to the accomplished estimated size of jobs, and with respect to the capacity of each machine, those jobs grouped together in a batch are determined. This batching should be done in a way that the capacity of each machine is not violated and simultaneously the makespan is minimized. Assume that the size of jobs (
Each uncertain parameter has three scenarios which contain low, mean, and high values. In the plain language, the value of these parameters can be greater, equal, or less than the estimated value. It should be noted that the size of jobs and process time are two independent parameters. Therefore, each subsequent scenario of these parameters can occur independently so the total number of scenarios is equal to nine. The formation of these scenarios is shown in Figure 2, and it means if the size of jobs is less, equal, or higher than the estimated value, process time could be less, equal, or higher than its estimated value. The letters L, M, and H as superscripts mention to low, mean, and high values of the uncertain parameters, respectively.

The enumeration of scenarios in the problem.
The arrival jobs to the BPMs have to pass the following steps:
Step 1: in the first step, the jobs that are decided to be in a same batch and the sequence of batches on BPMs should be determined at the beginning of the production horizon.
Step 2: according to the determined sequence of batches in the previous step, processing on batches on first BPM will start. Now it is identified that the size of some of the batches is more than the related machines’ capacity. This incident happens because of the aforementioned uncertainty in job sizes. If the size of a batch exceeds the capacity of the machine, it will be set aside. Moreover, in this step, it will be cleared which scenario for job sizes is ongoing.
Step 3: processing on batches that do not violate the capacity of the machines, but process time on each job and each machine is subjected to uncertainty and it is not clear which scenario for process time is ongoing.
Step 4: after finishing Step 3, the real job sizes are identified; therefore, batches that are set aside in Step 2 should be opened, and the parts should be extracted and batched again. In this step, with respect to the mentioned awareness about job sizes, new batching of jobs will be accomplished, but un-batching and batching process is time-consuming and it will increase the makespan.
Step 5: processing on the batches that are batched in Step 4 would be done and makespan is calculated in this step. In Figure 3, Steps 1–5 are shown in a flowchart.

The problem flowchart.
Notations of the model
Sets
B batches which
J jobs which
K positions in sequence which
M machines which
S index for scenarios
Parameters
Cap capacity of machine
Decision variables
Dependent variables
MVM for BPM’s scheduling problem
Based on the suggested model by Damodaran and Srihari, 3 the flow shop with m machines and the mathematical programming model according to the above-mentioned parameters and variables are as follows which is entitled MVM
s.t.
In the above-mentioned model, the mean value of uncertain parameters is considered for modeling the flow shop scheduling problem with m machines. The objective function (15) minimizes the makespan and equation (16) assures to assign each job just to one batch. Meanwhile, equation (17) guarantees no violation in machines’ capacity. Constraint (18) puts a rule which actual batch processing time to become equal to the longest processing time of all the jobs in the batch.
The completion time of the first batch in sequence on machine m is computed in equation (19), and the completion time of the kth batch in sequence on the first machine is calculated in limitation (20). The completion time of the kth batch in sequence on machine m is calculated in constraints (21) and (22), and then equation (23) computes the makespan. Equation (24) enforces the binary constraint on Xjb decision variable, and finally, equation (25) puts a rule on the non-negativity requirement on Cmax, Ckm, and Qbm, dependent variables.
Robust model for BPM’s scheduling
As mentioned before, parameters
s.t.
The objective function (26) minimizes the expected value and variance of scenarios’ makespan and infeasibility of constraint (30). Equation (27) is related to linearization of the mentioned robust optimization approach. Each job has to be assigned to one batch and equation (28) guarantees that. Equation (28) is in order to not permit machines’ capacity being violated in each scenario
The completion time of the first batch in sequence on machine m in each scenario is computed in equation (31), and the completion time of the kth batch in sequence on the first machine in each scenario is calculated in equation (20). The completion time of the kth batch in sequence on machine m in each scenario is calculated in equations (21) and (22) and equation (23) computes the makespan in each scenario. Equation (24) enforces the binary constraint on Xjb decision variable, and finally, equation (25) puts a rule on the non-negativity requirement on
Experimental results
In order to measure the performance of the proposed robust optimization model, some test problems in different sizes are generated in a way that processing times and size of jobs are randomly generated from uniform distributions on the interval [1, 30] and [1, 7), respectively, and the machine’s capacity (c) is considered 15, and number of machines (m) and jobs (j) are different in each test problem.
As mentioned in section “Problem description,” in this problem, nine scenarios are considered and their probability of occurrence is shown in Tables 1 and 2. As noted in section “Problem description,” re-batching of jobs is a time-consuming process, and for this purpose, it is assumed that doing this process for every returned job takes one time unit.
Probability occurrence of each uncertain parameter in each individual value.
Probability occurrence for each scenario.
A commercial optimization solver, the CPLEX, embedded in GAMS 23.8 is used to solve the problem instances. In Table 3, the resulting makespan’s value for both mean-value and robust models (in each probable scenario) is considered in which the values of ω and λ are assumed to be 40 and 1, respectively.
Models’ results.
Trade-off between solution robustness and model robustness
Solution robustness means being near to optimality while model robustness means being less infeasible in all realizations of the scenarios. In this problem, the trade-off is between the value of makespan (solution robustness) and the number of rejected jobs (model robustness) and can be considered by changing the value of ω (last term in objective function (26)). Also, λ is considered as the weight of the variance of objective function in all scenarios (second term in objective function). These weights are relative and by increasing one weight, the other one would be affected. Therefore, decision-makers mostly change one parameter (for instance, ω) to have the aforementioned trade-off. While the decision-makers intend to have a less infeasibilities, by increasing ω the achieved solution would be more feasible in all scenarios. By decreasing ω, the outcome remains near to its optimality while the number of infeasibilities may increase. These parameters can be represented as the risk attitude of the decision-maker. As mentioned before, by means of penalty
Sensitivity analysis on different values of parameter ω.
TPR: total performance in realization.
For the sake of more appropriate decision-making for ω value, the solutions obtained by different values of ω are compared in realization by Monte Carlo simulation method. The achieved simulation results for total performance in realization (TPR) are exhibited in Figure 4. Moreover, Table 4 shows that in our case, for higher values of ω, for instance, 50 and 40, better solution performance in realization can be obtained, and rejected jobs cause some increases in value of makespan in realization. In addition, by increasing the value of ω, the gap between real performance and model result decreased.

Sensitivity analysis on value of parameter ω.
Comparing effectiveness of robust optimization model
For the purpose of demonstrating the effectiveness of the suggested scenario-based robust scheduling model, a comparative analysis for the performance of both the MVM and the robust model based on Monte Carlo simulation method was done. It was aforementioned that the MVM exploits the mean values, regardless to the inherent uncertainty of parameters, but in the proposed model, the intrinsic uncertainties were also considered such as processing time and job sizes.
Obviously, the derived makespan for MVM in Table 3, just in occurrence of scenario 5, is achievable, and in realization of other scenarios some changes in value of makespan are anticipated. In Table 4, the percentage of infeasible iteration in simulation is shown and it is worthy to know that just in occurrence of scenarios 7, 8, and 9, MVM’s solution can violate the capacity limitation of machines’ capacity.
Table 5 demonstrates that in infeasible iteration of simulation, how many numbers of batches and jobs violated the machines’ capacity constraint; as mentioned in section “Problem description,” these jobs should be grouped, batched, and scheduled again. Furthermore, Table 5 compares the performance of MVM and robust model in scenarios 7, 8, and 9, in which infeasible iterations happened by MVM’s solution and can be understood that performance of robust model is much better than MVM.
Results of simulation in realization of scenarios 7, 8, and 9 for both MVM and RM.
MVM: mean-value model; RM: robust model.
In Table 6, the derived mean value for objective function of MVM and robust model within all simulation iterations is demonstrated. The total performance of the mentioned models can be compared with each other, and as depicted in Figure 5, the performance of robust model is better than MVM in all test problems. This could be verified using a Student’s t-test and the results are summarized in Table 7 where the obtained p value rejects the null hypothesis. In the plain language, there is a significant difference between the two methods at the 5% level in which means the robust model has a better performance than MVM in realization.
Total performance of RM and MVM.
RM: robust model; MVM: mean-value model.

Total performance realization of mean-value model (MVM) versus robust model (RM) in different test problems.
Paired t-test: RM versus MVM.
RM: robust model; MVM: mean-value model; d.f.: degree of freedom.
Conclusion
This study developed a scenario-based optimization approach for a real-world flow shop problem with any number of BPMs that the processing time and size of jobs are uncertain. Each machine can process multiple jobs simultaneously as long as the machine capacity is not violated. In order to verify the developed mathematical model and evaluate the performance of proposed robust counterpart, a number of test problems are generated and a commercial optimization solver, the CPLEX embedded in GAMS 23.8, is used to solve the test problem. For the purpose of analysis on the results, the robust model and MVM were tested through a Monte Carlo simulation method. The simulations results demonstrate that the MVM and low value of ω make many infeasible solutions. In contrast, high values of ω have better performance in realization.
For further research, because the model is non-deterministic polynomial-time (NP-hard), it is recommended to apply metaheuristic algorithms so as to solve the large-scale problems.
Footnotes
Declaration of conflicting interests
The authors declare that there is no conflict of interest.
Funding
This research received no specific grant from any funding agency in the public, commercial, or not-for-profit sectors.
