A new mathematical model for the job shop scheduling problem with uncertain processing times

Article history: Received 1 Feb 2010 Received in revised form 10 June 2010 Accepted 20 June 2010 Available online 23 June 2010 Job shop scheduling (JSS) problem has been one of the most interesting research issues in the literature during the recent years. JSS problem has been studied in different forms of deterministic, fuzzy, and stochastic at different depths. The idea of robust optimization (ROP), on the other hand, has earned a particular value to become a popular subject of the breakthrough for problem solving affairs amongst the researchers. Based on the emerged opportunity for illustrating a new area of search, a robust JSS problem is proposed as a challenge to this boundary of knowledge. The proposed method is capable of handling the perturbation which exists amongst the processing times. In fact, in many real world job scheduling problems, a small change in the processing times, not only causes a non-optimal solution, but also the infeasibility of the final solution may also occur. The proposed robust method could guarantee that, a small deviation of the processing times does not affect the feasibility. The implementation of the proposed method is illustrated using some numerical examples and the outcomes of the investigation are discussed © 2010 Growing Science Ltd. All rights reserved.


Introduction
The job shop-scheduling (JSS) problem normally deals with manufacturing industry where there are many practical applications on this sector.A simple definition of JSS problem can be defined as follows.Given n jobs which have to be processed on m machines, each job consists of a sequence of task operations.Each of which requires to be processed without interruption for a given period of time on a given machine.The sequence of machines for each job is prescribed, and each of them can process at most one job at a time.Tasks of the same job cannot be processed simultaneously & each of them needs to meet each machine only once and the aim is to generate a time schedule to perform the operations on machines.One of the most attractive objectives is to find a schedule that minimizes the makespan, that is, the time needed to complete all the jobs.The JSS problem is classified as one of the most difficult NP-complete problems (Garey, et al., 1976).Presently, there are literally lots of optimization and approximation algorithms such as meta-heuristics and hybrid methods proposed to solve the JSS problem.In addition to the classical JSS problem, with some induced alteration in the basic model, other kinds of JSS problems also appear such as flexible JSS (Kacem, et al., 2002), fuzzy JSS (Allet, 2003), and stochastic JSS (Ginzburg, & Gonik, 2002).The main contribution of this paper is to implement robust optimization technique to handle uncertainty in JSS problem.As the first attempt, Soyster (1973) proposed a model which admits the highest protection.Therefore in his case, the objective function is determined in the worst-case condition.Ben-Tal and Nemirovski (2000) presented a more popular robust approach which addressed a more conservative solution where a non-linear robust optimization model is presented.Bertsimas and Sim (2004) introduced a new robust approach in which the robust counterpart is of the same class as the nominal problem and therefore the proposed robust approach remains linear/mixed integer, if the nominal problem is linear/mixed integer.ξ are random variables distributed symmetrically in the interval [-1, 1].

Consider a linear constraint
. Bertsimas and Sim (2004) proposed parameter is considered, the method is reduced to Soyster's approach.The idea of using robust optimization has become popular (Farhang Moghadam & Seyed Hosseini, 2010;Gharakhani et al., 2010;Roghanian & Foroughi, 2010).For more details on the implementation of robust optimization, interested readers are referred to (Bertsimas & Sim, 2004).Shafia et al., (2010) adapted the latter approach to train routing and makeup problem.

Robust Job Shop Problem
As we explained, the perturbation is normally occurs in JSS problem, especially in the processing times of jobs in each machine.Suppose one is about to schedule the job shop problem introduced by Baker (1974).The tabular representations of the data for this prototype problem are shown in Table 1.a and Table 1.b.

Table1.b Routing
Consider minimization of total weighted tardiness (TWT) as the objective function, and let the starting time of schedule for each job, release time, to be equal to 1.The optimal solution for this example is shown as Fig. 1.Furthermore it is noticeable that this solution is also optimal in the case of makespan objective.
As we can observe from Fig. 1, the optimum schedule value is 10.One can assume that the operation of job 1 in machine 1 is subjected to perturbation and the processing time is increased by one.In other words it changes from 4 to 5.This alteration makes the solution shown in Fig. 1, non-optimal.
The perturbed schedule is depicted in Fig. 2.

Fig. 2. Perturbed Job Shop Schedule
As it can be found in Fig 2, this interruption worsens the TWT by 3 minutes (10→13).However, for this case the optimum schedule on the basis of TWT is calculated as Fig. 3.

Fig. 3. Optimal Job Shop Schedule-perturbation case
The optimum schedule value in Fig. 3 for the TWT objective function is 10.It can be easily verified that just a little perturbation can highly change the optimum solution and this could be regarded as a good motivation to the robust optimization concept.
In the remaining part of this section, the robust JSS problem is introduced after proposing an appropriate mathematical model for the classical JSS problem.At the first step, the reader can consider the integer programming model specified by Baker.The employed notations are as follows: The machine which performs the last operation on job i

M:
A big number See (Baker, 1974) for more details.Since, the processing times, pjm t , is subject to perturbation, the introduced robust method must be applied on inequalities 1, 2 and 3.It can be observed that for all these equations, there is only one perturbed parameter in each constraint.As a result by applying the introduced robust approach to these inequalities, the achieved results are the same as solving the model in the worst-case, where a fix supplementary time is added to all processing times.On the other hand, it is clear that model 1 is only capable to cover the effects of possible perturbation amongst the consecutive jobs.Therefore, in this case, the effects of perturbation propagation amongst jobs are ignored.In order to overcome the mentioned weak characteristics, another formulation is proposed in which the sequencing of jobs on machines is appeared in the model.Following notations are used for the proposed model 2.

Notations s:
Sequence index defined for each job in every machine O p : The last operation associated with job p.

( ) ∑∑ ∑∑
The objective function shown in equation 4 minimizes the sum of finishing time of the last operation of each job.Eq. 5 indicates that task j of job p must be assigned to just one sequence of one machine.Inequality 6 guarantees that only one task of each job can be executed in sequence s of machine m.Inequality 7 establishes the relation of jpms x and jpms y variables.In other word, jpms y must be zero if the binary variable jpms x is equal to zero.Inequality 8 guarantees the task sequences for each job.Inequality 9 guarantees that each task's processing time does not have any overlap with any other task.The desired job sequencing on machines appears using the new presented problem formulation.As explained previously, in order to have a robust job shop schedule, the possible effects of all operations on each other must be considered.For this purpose, we suggest to apply constraints 10 and 11, instead of constraint 9.

∑∑
Applying the robust approach to constraint 10, leads to a situation in which there will be a confident gap amongst jobs in a specified machine, but there would be no such gaps amongst the operations associated with a specific job.In other words in order to have a robust job shop schedule, not only we need to consider the possible interruptions in each machine, but also it requires to embed some buffer times amongst the operations corresponds to each job, so that the possible delay in one machine do not affects the other machines, as well.For this reason, the inequality 12 is proposed instead of inequality 8.
Both inequalities 10 and 12 consist of some surplus constraints compared with inequalities 8 and 9.
To illustrate the case, one could consider job 1 in figure 1. Inequality 12 represents three constraints for job 1 in this specific instant as follows: 1-Second task of job 1 must be initiated after the first task.2-Third task of job 1 must be started after the second one.
3-Third task of job 1 must be initiated after the finishing time of the first task added with the processing time of the second task of job 1.It is obvious that item 3 will be surplus under the condition that items 1 and 2 are fulfilled.It can be easily shown that the number of constraints resulted by equation 12 for the specific job p that contains p O individual tasks will be equal to: constraints, the number of surplus constraints is equal to: The number of surplus constraints associated with inequality 10 can be also computed in a similar way.The It is supposed that at last only ⎣ ⎦ i Γ of parameters subjected to disruptions will be interrupted in constraint i, and one coefficient i ik a alters by ⎣ ⎦ ( ) In the Bertsimas and approach, the robust formulation of the specified constraint is formulated as follows, where, i K is a subset which has ⎣ ⎦ i Γ parameters subjected to perturbation.The added statement to the left hand-side of constraint 13, is called protection function.
In order to reformulate the proposed model as a robust job shop one, at first the protection functions must be added to the left side of the equations 10 and 12. Based on inequality 13, the protection function for inequality 12 is proposed as Eq.14.The other one could be generated as well.
The above equation equals the objective function of the following linear optimization problem.For the details the interested reader may refer to (Bertsimas, & Sim, 2004).
Model 3: The dual of model 3 is as follows: Model 4: Note that the above problem must be defined as ) ( , , j j p j < ′ ∀ .Substituting the optimization function of the model 4 with the proposed protection function, equation 14, and embedding the remaining constraints of model 4 to the main body of the model 2 will lead to the Robust JSS Problem.Note that, the robust approach must also be applied to inequality 10.The procedure is similar to that of inequality 12 and therefore is not repeated here.

The value of Γ level
As it is clarified, the role of parameter Γ is to adjust the robustness of the proposed model against the level of conservatism of the solution.The proposed p j j ′ Γ level specified for the model 4 is as follows: In Eq. 15, the value j j ′ − is equal to the number of parameters which are subjected to the perturbation.Parameters p α and p β are used to adjust the conservatism level.The parameters determine the trade-off between the desired robustness and the optimality.In the case 0 = The robust optimum solution for this example is shown in Fig. 4.

Fig. 4. Optimal Robust Job Shop Schedule
The optimal value of the objective function is equal to 13.56.Through applying this method, it is not only guaranteed that the generated schedule is robust against any perturbation less than the defined robustness level, but also it remains robust under the condition of heavier disruptions with a high probability.For more details see Bertsimas & Sim, 2004.

Proposed heuristic algorithm
Job shop scheduling problem is known NP-Hard in its classical type.Considering the number of used binary variables involved in a real-world problem formulation, we need to look for a near-optimal solution as an alternative using a heuristic approach.In the remaining part of this section, a heuristic algorithm based on the simulating annealing (SA) algorithm is proposed.SA is known to be one of the most successful algorithms amongst the other applied meta-heuristic ones and its acceptable performance is demonstrated by experience in the conducted researches relevant to scheduling problems, for example (Krishna, 1995), (Steinhofel, 1999), (Suresh, & Mohanasundaram, 2006), (Ponnambalam, 1999), (Bozejko, 2009).
The following algorithm is proposed to find a near-optimum schedule for the introduced robust JSS problem.6 shows that as the interruption intervals increases, in order to reach the same level of robustness, the TWT of the solutions are worsen.

Conclusion
We have presented a robust JSS problem which has the capability of handling the perturbation which exists amongst almost all input parameters.It is illustrated that, for many real world job scheduling problems, a small change in input parameters may lead us to some final solutions which are neither feasible nor optimal.The proposed method of this paper could guarantee that a small alteration in input parameters does not have any effect in the feasibility and the optimality of the robust one and does not alter from the crisp one.Besides, it is known that the common software packages are not able to find optimum solutions for real world application in a reasonable amount of time.Therefore, a SA algorithm has been proposed to find near optimal solutions in a reasonable amount of time.The effectiveness of the algorithm has been demonstrated, using some numerical examples and the results of SA have been compared with optimal solutions.
to adjust the desired conservatism level of the final solution.It means that at last only pjm t : Required time to process task j of job p on machine m i e : pm a : A variable which denotes the completion time of job p on machine m ipm b : A binary variable which is 1, if job i precedes job p on machine m and 0, otherwise Model 1: variable which is 1, if task j of job p is allocated on machine m in sequence s, and 0, otherwise.jpms y : Denotes start-processing time of task j of job p on machine m ms L : Denotes the idle time of machine m in sequence s.i.e. the gap between (s)-th and (s-1)-th operations performed on machine m.

S
number of extra constraints, in addition to those resulted by inequality 10, are defined to formulate the robust JSS problem.The Bertsimas and Sim approach is briefly reviewed as follows.i H represents the set of coefficients defined in constraint i which are subject to perturbation

Γ.
makes the problem to work in the worst condition exactly the same as Soyster's model.Note that by applying the robust approach to inequality 10, a similar level to Eq. 15 would be resulted: The role of parameters m λ and m γ are alike p α , p β .To illustrate the effects of the proposed robust JSS mathematical model, one can consider the Baker's example which was investigated earlier in this section.It is assumed that the maximum deviation for each processing time from the nominal value, t ˆ, is equal to 10%.In other word, the true value,

Simulated annealing k←1 CallFig 6 .
Fig 6.The achieved results for different interruption intervals