Heuristic for Stochastic Online Flowshop Problem with Preemption Penalties

The deterministic flowshop model is one of the most widely studied problems; whereas its stochastic equivalent has remained a challenge. Furthermore, the preemptive online stochastic flowshop problem has received much less attention, and most of the previous researches have considered a nonpreemptive version. Moreover, little attention has been devoted to the problems where a certain time penalty is incurred when preemption is allowed. This paper examines the preemptive stochastic online flowshop with the objective of minimizing the expected makespan. All the jobs arrive overtime, which means that the existence and the parameters of each job are unknown until its release date. The processing time of the jobs is stochastic and actual processing time is unknown until completion of the job. A heuristic procedure for this problem is presented, which is applicable whenever the job processing times are characterized by their means and standard deviation. The performance of the proposed heuristic method is explored using some numerical examples.


Introduction
The stochastic flowshop problems have not penetrated very far and remain challenging.The stochastic two-machine flowshop problem is inherently more complex than its deterministic counterpart.This complexity is much more when the preemptive online version of the problem is considered.In other words, the jobs are allowed to be preempted and restarted.We assume that preemption can occurr only on machine 1 in the flowshop problem.Moreover, all the jobs arrive overtime, which indicates that the existence and the parameters of each job are unknown until its release date.In the previous stochastic studies, preemptions are usually assumed to be "free" which means that each job can be preempted at any point of time and resumed later without incurring a penalty.However, this is not usually the case in practice.In many cases, such as melting furnaces, the time that has been spent before the preemption on a job is lost and considered as the preemption penalty.
Scheduling has become a well-studied problem and there are literally tremendous efforts on providing solution strategies for various kinds of modeling formulations such as job shop and flowshop.There are literally many applications for flowshop problem (e.g., Defersha and Chen [1]; Mahavi et al. [2]; Braglia et al. [3]).Two-machine flowshop problem with makespan objective function and deterministic processing time can be optimally solved by Johnson's rule [4].This problem would be NP-hard if it consists of three or more machines [5].Therefore, numerous heuristic algorithms have been presented for solving such problems in various studies.Framinan et al. have reviewed some of these articles [6].Ruiz and Maroto referred to 53 articles on the heuristics presented for minimizing makespan in permutation flowshop problem [7].
In the stochastic flowshop problem, the processing time is a random variable.This simple difference leads to many complexities in stochastic problems.Makino developed a sequencing rule to find the schedule that minimizes the expected makespan in a flowshop problem with two jobs and exponentially distributed processing time [8].Frostig and Adiri investigated three-machine flowshop stochastic scheduling with an objective of minimizing distribution of schedule length [9].Sethi et al. offered feedback production planning in a stochastic two-machine flowshop based on asymptotic analysis and computational results [10].Elmaghraby and Thoney studied the two-machine stochastic flowshop problem with arbitrary processing time distributions [11].In the stochastic flowshop problem with two machines and exponential processing times, the expected makespan value would be minimized in the case that the jobs are sorted nonincreasingly in terms of parameter (1/ 1 − 1/ 2 ).This method was proposed by Talwar and is known as Talwar's Rule [12].Later, Cunningham and Dutta proved its optimality [13].Ku and Niu obtained a sufficient condition for stochastic dominance and showed that Talwar's Rule yields a stochastically minimal makespan [14].Soroush and Allahverdi presented a stochastic two-machine flowshop scheduling problem with total completion time criterion [15].Laha and Chakraborty presented an efficient stochastic hybrid heuristic for flowshop scheduling [16].Portougal and Trietsch applied Johnson's Rule to stochastic problems [17].They utilized, mean of the processing time of each job as its processing time in Johnson's Rule.Moreover, Kalczynski and Kamburowski applied Talwar's Rule for Weibull distribution [18].Baker and Altheimer used three heuristic methods for the flowshop problem with  machines, supposing general distributions for processing times.They investigated the performance of these methods in a set of problems using simulation and noticed that these methods had near-optimal performance [19].Baker and Trietsch also explored three heuristic methods for the twomachine stochastic model with a general distribution function.They compared Johnson's Heuristic method and Talwar's Heuristic method (applying mean of the processing time instead of job processing time in these two methods) and also the heuristic method of changing neighboring pairs (two neighboring jobs are separately considered and are displaced if their order can be optimized) and figured out that none of these methods dominate the other [20].Heydari et al. proposed a heuristic method for minimization of expected value of the total weighted completion time in single machine problem with preemption penalties [21].In this paper, the heuristic proposed by Baker and Trietsch has been applied for sequencing the jobs which are present in the shop.
In spite of the various studies in the last decades, a considerable research has not been performed on preemptive online flowshop problems with stochastic processing times.In this paper, a heuristic method to this problem is presented.The logic applied in this research is emphasizing on minimizing idling times in the second machine.In this method, decision about the preemption of one job at arrival of a new job is made based on the idling time produced in the second machine.In this research, we assume that the processing time is a random variable with normal distribution, and processing times of different jobs are independent from each other.
The remainder of this paper is organized as follows: research assumptions and definitions are presented in Section 2. In Sections 3 and 4, nonpreemptive and preemptive stochastic models are reviewed.Then, the proposed heuristic method is presented in Section 5.In Section 6, a numerical example has been solved with the proposed algorithm.The performance analysis of the proposed heuristic method is presented in Section 7. Finally, the conclusions are discussed in the last section.

Research Assumptions and Definitions
In the stochastic case,   is used to denote (random) processing time of job  on machine , but we retain (  ) to represent its expected value.And,   is the release time of job , which can only be known right on or after   .The processing time of each job is a random variable with normal distribution   ∼ (  ,  2  ) and jobs are independent of each other.Our objective is to find a schedule to minimize the expected makespan.The applied symbols are as follows: : processing time of job  on machine .
: mean of processing time of job  on machine . 2  : variance of processing time of job  on machine .  : idle time of the second machine from completing the job  − 1 until starting the job .
The considered assumptions in this article are as follows: (i) Machines have constant speed that cannot be varied.
(ii) The order of processing the jobs is the same on the first and second machines.
(iii) Machines are ready to be utilized at zero time.
(iv) Every machine can operate at most one job at a time.
(v) Initiation of any job on the second machine would be after completion of the job on the first machine.
(vi) Preemption of the jobs can be occurred only on machine 1.
We consider the preemption-repeat model in which the job currently being processed may be preempted at any point of time.However, by preempting a job, all the ongoing progress is considered to be lost.Therefore, if the job is restarted at some later moment in time, then it has to be processed from the beginning.

Nonpreemptive Stochastic Flowshop Problem
For general distributions without any special conditions on processing times, only one thorough solution is known for the stochastic flowshop problem, proposed by Makino [8].
Theorem 1.In the two-machine stochastic flowshop problem with two jobs, job  precedes job  in an optimal sequence if Based on Theorem 1, Baker and Trietsch proposed a method that uses the properties of an adjacent pair wise interchange (API) [20].They assume that the processing times are random variables with normal distribution.In this method, the condition for job  to precede job  takes the following form: This form of the API procedure uses the properties of normal distributions and is called the API Heuristic.In this method, the expected minimum of two variables with normal distribution is given by where  and Φ denote the density function and the cdf of the standard normal.In addition,   =   −   and  2  =  2  +  2   and   =   /  [22].In this paper, for sequencing the jobs present at the shop, this heuristic method has been utilized.

Preemptive Stochastic Flowshop Problem
Since the objective function of this study is expected makespan minimization, and considering the fact that makespan increase is due to increase in idling time in the second machine, this paper focused on minimizing the sum of expected idling times of the second machine.
As shown in Figure 1 the value of makespan is as follows: where   is the idling time of machine 2 before the starting of job .Science the value of [∑  =1  2 ] is constant; minimizing [∑  =1   ] leads to minimum value of makespan.Idling time of machine 2 is as follows: Thus, the total idle time of the second machine will be computed as follows: Assume that Therefore, the sum of idling times of machine 2 is given by M 1 : In the two-machine stochastic online flowshop problem, if in schedule 1 ( 1 ) job  precedes job  and in schedule 2 ( 2 ), these two jobs are replaced, then ( where [max 1≤≤ {  ( 1 )}] and [max 1≤≤ {  ( 2 )}] are the expected values of the sum of idling time on machine 2 in schedule 1 and 2.
As mentioned before, minimizing the expected value of total idling time in machine 2 leads to expected makespan minimization.Since the expected value of makespan in  1 is less than its value in  2 , the idle time of machine 2 in  1 will be less than its value in  2 .
In preemptive online problem, assume that job  with processing time  1 is being processed on machine 1.Let   1 be the remaining processing time of job  and the time spent for processing of job  is   1 .Therefore, we have Suppose that the new job  with the processing time   and the release time   arrives at the shop (Figure 2).The new job  becomes known at its release time.
Let  be the subset of completed jobs on machine 1 and  the subset of uncompleted jobs.First, the priority of job  is determined with the API heuristic method.If the priority of job  is more than the job  then one of the two  1 and  2 schedules would occur as shown in Figure 2; otherwise, it will be added to list of uncompleted jobs.In  1 job  is preempted because of the higher priority for job , but in  2 job  will be processed after completion of job .As mentioned before, total idle time of machine 2 until start of job  and  in  1 and  2 schedules is as follows: Therefore, the expected value of makespan in  1 is less than its value in  2 and preemption will occur if The processing of the jobs in the subset  has been completed on machine 1, and their total processing time is a constant value.Thus, we assume that where  is a constant value.Some of the jobs in the subset  have been completed and some of them have not been completed until time   .Let   be the subset of completed jobs on machine 2, and let   be the subset of uncompleted jobs on this machine.Thus, Therefore, ∑ ℎ∈   ℎ2 is constant value ∑ ℎ∈   ℎ2 is a random variable with normal distribution where  is a constant value.Hence,   ( 1 ) and   ( 1 ) are random variables with normal distribution and the following means and variances: In addition, for   ( 2 ) and   ( 2 ) we have In order for decision making about preemption, the following inequality should be explored: Assume that The expected minimum of two variables with normal distribution is calculated as discussed before.Thus, for computation of [min{, }] we have  and [min{  ,   }] is as follows: Therefore, the preemption condition will be as presented in Lemma 2.

Proposed Algorithm
In this section, a heuristic algorithm is proposed to minimize the expected value of makespan for the preemptive stochastic online flowshop problem with two machines.In addition, a schematic illustration of the algorithm is provided in Figure 3.
Step 0 (parameter definition).The parameter  denotes the total number of jobs in the shop and  is the job counter parameter whit the primary value of 1. Processing time of each job is a random variable with normal distribution.Arrival time of job  is denoted by   .Parameter  denotes the new job that arrives at the shop.
Step 1. Prioritize all uncompleted jobs with API heuristic method, from  to .
Step 2. Process the job  until it is completed, or a new job arrives at the shop.If a new job arrives at the shop then assign index  to its characteristics and go to Step 4, otherwise go to next step.
Step 3.After completion of job , if  is the last job then finish the algorithm; otherwise, increment the counter  by one and go to Step 1.
Step 4. If the priority of the new job according to API heuristic method is more than job  then follow the algorithm, otherwise go to Step 7.
Step 6.The priority of job  is more than job .Thus, job  will be preempted and job  will be preferred.And since then, the index  will be used for job .Increment the counter  by one, and then go to Step 2.
Step 7. Preemption is not allowed and the processing of job  will be continued.Increment the counter  by one, and then go to Step 2.

Numerical Example
In this section, the performance of the proposed algorithm is evaluated through a numerical example.Suppose a stochastic two-machine flowshop problem with 6 jobs and specifications given in Table 1.
In Table 1,   is arrival time of job .Moreover, we assume that the actual processing time of a job on each machine is equal to its mean processing time on that machine.According the proposed algorithm, first, the jobs present at the shop at  time zero should be scheduled with API heuristic method.
In Table 2, according to API method, negative values indicate stable sequences.For instance, 1-2 is not a stable sequence because the value of row 1 and column 2 is positive.Therefore, these two jobs should be substituted.Hence, API heuristic with altered order of the jobs yields the stable sequence 4-2-3-1 as shown in Figure 4 (4.1).
The machines will start to process the jobs according to the sequence 4-2-3-1.Job 5 with release time  5 = 15 arrives at the shop as shown in Figure 4 (4.1).Job 2 is being processed at this time.According to API, The priority of job 5 is less than the priority of job 2 because if we schedule jobs 2, 5 with this method, then the job 5 will has less priority.Thus, the preemption is not allowed.Processing of the jobs is continued and during the processing of job 3, job 6 with release time  6 = 24 arrives to the shop as shown in Figure 4 (4.2).According to API, The priority of job 6 is more than the priority of job 3 at this time.Thus, the parameters at this time are as follows: According to the proposed algorithm, satisfaction of the inequality [min{, }] > [min{  ,   }] should be explored in order for decision making about the preemption: Similarly, [min{  ,   }] = −10.262.Science [min{, }] > [min{  ,   }], preemption is allowed.Job 3 will be preempted and job 6 will start.Consequently, the scheduling of jobs on machine 1 will be as shown in Figure 4 (4.3).The computation of completion time of the jobs on machine 1 and 2 are provided in Table 3, where   is the completion time of job  on machine.
As mentioned before, it is assumed that the actual processing time of the job is equal to the mean of processing time.Therefore, the expected value of makespan is equal to 85 for this example.

Performance Analysis
In order to evaluate the performance of the proposed algorithm, it was applied on a variety of problems with different sizes.Thus, 20,000 problems in 20 categories with different quantities for the number of jobs and the processing time specifications have been produced.The results are compared to a lower bound of the optimum makespan that is defined as follows: ( Parameter  is the performance guarantee of the proposed method (MB) and called approximation factor if where  MB max and  OPT max are the expected values of makespan that the MB method and an optimal method, respectively, achieve on each instance.
Other assumptions are as follows: (1) Release dates are generated using uniform distribution within the interval [0, 1000].
(3) The actual processing time is assumed to be equal to the mean of processing time.
(4) We have produced 1000 problems for each category and based on the comparison between results of each method, the maximum value of factor  is calculated for these problems (worse case).
To compare the performance of the proposed method (MB) against OPT; first, the performance is analyzed with respect to the number of jobs which is varies from 10 to 100 and 10 categories are produced.The processing time follows a normal distribution.We assume that the mean of processing time and standard deviation of processing time are random values within the interval [10,20] and [1,3], respectively.Since the mean of processing time follows uniform distribution, the expected value of the processing time is (  ) = 15.Table 4 and Figure 5 summarize the details of our implementations.Second and third columns of Table 4 are the mean of makespan for 1000 produced problems in each category.Whereas  the forth column is the maximum value of factor  among 1000 problems in each category.As can be observed, the proposed method (MB) performs up to 1.2209 times worse than the other one when number of jobs approaches 65.Note that when  extends beyond 65, the density of jobs will increase illogically and we have  × (  ) > 1000 while   < 1000.When the density of jobs increases illogically, the waiting time of jobs increases and the idle time of machine 2 decreases.Thus, the performance of proposed algorithm almost improves.The performance of the proposed method has also been evaluated for different values of the mean of processing time.Ten categories have been produced and the number of jobs and the value of standard deviation have been fixed at constant values ( = 25,  = 3).The results are shown in Table 5 and Figure 6.When the mean of processing time approaches to the interval [10,70], the performance of the algorithm is in the worst condition because  × (  ) and max{  } are almost equal to 1000.For the next intervals, the density of jobs increase illogically and the idle time of machine 2 decrease.Hence, the performance of MB algorithm almost improves.
Moreover, the performance of the proposed method has been evaluated with respect to distribution of process times as  the uniform distribution [1,100] with the coefficient of variation being 0.05, 0.1, and 0.2.The number of jobs varies from 10 to 100, and ten categories have been produced.This mode of fixing the process-time distribution can yield better insight about the evaluation of computational performance of the algorithm.The processing times are generated using uniform distribution within the interval [1,100].It is assumed that the release dates are random values within the interval [0, 3000].
Taking into consideration the fact that the mean of processing time is uniformly distributed, the expected value of the processing time is (  ) = 50.5.The details of implementations have been summarized in Table 6 and Figure 7.When  takes a value more than 60, an illogical increase will occur in the density of jobs and we have  × (  ) > 3000 while   < 3000.
Hence, an increase is observed in the waiting time of jobs and the idle time of the second machine decreases.Therefore, the performance of the proposed algorithm improves.

Concluding Remarks
In this paper, preemptive stochastic online scheduling problem was investigated for two-machine flowshop.The objective function was minimizing the expected value of makespan.Inspired by Johnson's heuristic method for stochastic flowshop problem with an emphasis on minimal idle times of second machine, a heuristic method was presented.The implementation of the proposed method was demonstrated using a numerical example.The performance evaluation of the proposed method has been done with comparing to a lower bound of optimum.Primary results indicated that the proposed method had the approximation factor less than 2 for a wide range of problems.The proposed method utilized the properties of the normal distributions, and this method can be used as a heuristic method for other distributions, as long as their means and variances are available.Scheduling with preemption penalties is a novel research area in scheduling field especially for online stochastic problems and we strongly believe that this research could be well extended for problems with stochastic setup times, other distribution function for processing time, and flowshop problem with more than 2 machines.

Figure 2 :
Figure 2: Schedules  1 and  2 at arrival of job  in preemption-repeat mode.

Figure 4 :
Figure 4: Scheduling a sample problem with proposed algorithm.

Figure 5 :
Figure 5:  versus the number of jobs.

Figure 6 :
Figure 6:  versus mean of processing time.

Figure 7 :
Figure 7:  versus the number of jobs and the coefficient of variation.

Table 1 :
Specifications of jobs.

Table 3 :
Completion time of jobs on machines 1 and 2.

Table 4 :
Makespan value of the proposed algorithm versus lower bound of optimum.

Table 5 :
The performance of the proposed algorithm (MB) against OPT where the number of jobs is 25.