SlideShare a Scribd company logo
Journal of Natural Sciences Research                                                         www.iiste.org
ISSN 2224-3186 (Paper) ISSN 2225-0921 (Online)
Vol.1, No.3, 2011


      Optimal Three Stage Flow Shop Scheduling in which
      Processing Time, Set Up Time, Each Associated With
    Probabilities Including Transportation Time and Jobs in a
                   String of Disjoint Job-Blocks
                                                Sameer Sharma*
        Department of Mathematics, Maharishi Markandeshwar University, Mullana, Ambala, India
                    * E-mail of the corresponding author: samsharma31@yahoo.com


Abstract
The paper deals with n jobs, 3 machines flow shop production scheduling in which processing times and set
up times are associated with their respective probabilities involving transportation time and jobs are
processed in two disjoint job blocks in a string. A heuristic method with an objective to minimize the total
time elapsed time/idle time of the jobs/machines is discussed. A computer program followed by numerical
illustration is given to clarify the algorithm.
Keywords: Disjoint job-block, Set up time, Processing time, Transportation time, Equivalent job


1. Introduction
In today’s world of global competition, scheduling problem has become vital in order to meet customer
requirements as promptly as possible while maximizing the profits. A scheduling problem is to find
sequences of jobs on given machines with the objective of minimizing some function of the job completion
times. In flow shop scheduling all jobs passes through all machines in the same order without any pre-
emission. Johnson (1954) gave a heuristic technique for production schedule in which n jobs are processed
on two or three machines in an ordered manner to minimize the total idle time of machines. The work was
developed by Ignall & Scharge (1965), Camphell (1970) , Maggu & Das (1977) , Yoshida & Hitomi (1979)
, Singh (1985) , Anup (2002) ,Chandramouli (2005) , Khodadadi (2008), Pandian & Rajenderan (2010) by
considering various parameters. Heydari (2003) dealt with a flow shop scheduling problem where the jobs
are processed in two disjoint job blocks in a string consists of one block in which order of jobs is fixed &
other block in which order of job is arbitrary.
Gupta, Sharma & Gulati (2011) studied n×3 machine flow shop schedule in which processing time, set up
time, each associated with probabilities along with jobs in a string of disjoint job-blocks. Most machine
scheduling models assume that jobs are delivered instantaneously from one location to another without
considering significant transportation time. However, there are many situations where the transportation
times are quite significant and can not be simply neglected. As example, when the machines on which jobs
are to be processed are planted at different stations and these jobs require form of loading-time of jobs,
moving time and then unloading-time of jobs. In this paper, we have studied machines scheduling problems
with explicit transportation considerations. We have extended the study made by Gupta, Sharma & Gulati
(2011) by introducing the concept of transportation time. The problem discussed here is wider and
practically more applicable and has significant results in process industries


2. Practical Situation
Many applied and experimental situations exist in our day-to-day working in factories and industrial
production concerns. In many manufacturing / production companies different jobs are processed on
various machines. These jobs are required to process in a machine shop A, B, C, ---- in a specified order.
When the machines on which jobs are to be processed are planted at different places, the transportation

                                                    18
Journal of Natural Sciences Research                                                              www.iiste.org
ISSN 2224-3186 (Paper) ISSN 2225-0921 (Online)
Vol.1, No.3, 2011
time (which includes loading time, moving time and unloading time etc.) has a significant role in
production concern. Setup includes work to prepare the machine, process or bench for product parts or the
cycle. This includes obtaining tools, positioning work-in-process material, return tooling, cleaning up,
setting the required jigs and fixtures, adjusting tools and inspecting material and hence significant. The idea
of job block has practical significance to create a balance between a cost of providing priority in service to
the customer and cost of giving service with non priority, .i.e. how much is to be charged from the priority
customer(s) as compared to non priority customer(s).


3. Notations
           S         : Sequence of jobs 1, 2, 3… n
           Sk        : Sequence obtained by applying Johnson’s procedure, k = 1, 2, 3, -------
           Mj        : Machine j, j= 1, 2, 3
           M         : Minimum makespan
           aij       : Processing time of ith job on machine Mj
     pij : Probability associated to the processing time aij
           sij       : Set up time of ith job on machine Mj
           qij       : Probability associated to the set up time sij
           Aij       : Expected processing time of ith job on machine Mj
           Sij       : Expected set up time of ith job on machine Mj
     Iij(Sk): Idle time of machine Mj for job i in the sequence Sk
        Ti , j →k : Transportation time of ith job from jth machine to kth machine


4. Assumptions
   1.     n jobs be processed through three machines M1, M2 & M3 in the order M1M2M3 i.e. no passing is
          allowed.
   2.     A sequence of k jobs i1, i2 …… ik as a block or group-job in the order ( i1, i2 ……ik ) shows priority
          of job i1 over i2, etc.
   3.     Jobs may be held in inventory before going to a machine.
   4.     The storage space is available and the cost of holding inventory for each job is either same or
          negligible.
   5.     Time intervals for processing are independent of the order in which operations are performed.
   6.     A job is an entity i.e. even though the job represents a lot of individual part; no job may be
          processed by more than one machine at a time.
   7.     Each operation once started must performed till completion.


4. Problem Formulation
Let some job i (i = 1,2,……..,n) is to be processed on three machines Mj ( j = 1,2,3) in the way such that no
passing is allowed. Let aij be the processing time of ith job on jth machine with probabilities pij and sij be the
setup time of ith job on jth machine with probabilities qij. Let Aij be the expected processing time and Si,j be
the expected setup time of ith job on jth machine. Let Ti,j→k be the transportation time of ith job from jth
machine to kth machine..Let α =(ik, im) be an equivalent job for job block in which job ik is given priority
over job im Take two job blocks α and β such that block α consists of m jobs out of n jobs in which the
order of jobs is fixed and β consists of r jobs out of n in which order of jobs is arbitrary such that m + r = n.
let α ∩ β = Φ i.e. the two job blocks α & β form a disjoint set in the sense that the two blocks have no job
in common. A string S of job blocks α and β is defined as S = (α, β). Our objective is to find an optimal

                                                          19
Journal of Natural Sciences Research                                                                               www.iiste.org
ISSN 2224-3186 (Paper) ISSN 2225-0921 (Online)
Vol.1, No.3, 2011
schedule for all the jobs minimizing the total elapsed time.
The mathematical model of the problem in matrix form can be stated as:


    Jobs               Machine A              Ti ,1→2             Machine B               Ti ,2→3          Machine C
        i        ai1      pi1    si1   qi1                ai 2         pi 2   si2   qi2             ai 3    pi 3     si3   qi3
        1        a11      p11    s11   q11    T1,1→2      a12          p12    s12   q12   T1,2→3    a13     p13     s13    q13
        2        a21      p21    s21   q21    T2,1→2      a22          p22    s22   q22   T2,2→3    a23     p23     s23    q23
        3        a31      p31    s31   q31    T3,1→2      a32          p32    s32   q32   T3,2→3    a33     p33     s33    q33
        4        a41      p41    s41   q41    T4,1→2      a42          p42    s42   q42   T4,2→3    a43     p43     s43    q43
        -          -       -     -     -         -          -           -     -     -       -        -       -      -      -
        n        an1      pn1    sn1   qn1    Tn,1→2      an 2         pn 2   sn2   qn2   Tn,2→3    an 3    pn3     sn3    qn3
                                                            (Tableau 1)


5. Algorithm:
Step 1: Calculate the expected processing times and expected set up times as follows
               Aij = aij × pij and Sij = sij × qij      ∀i, j =1,2,3
Also we consider the following structure relation holds good if
Step 2: Check the condition
   Either Min {Ai1 + Ti,1→2 – Si2} ≥ Max{Ai2 + Ti,1→2 – Si1}
   or        Min{Ai3 + Ti,2→3 – Si2} ≥ Max{Ai2 + Ti,2→3 – Si3} or both for all i
If the conditions are satisfied then go to step 3, else the data is not in the standard form.
Step 3: Introduce the two fictitious machines G and H with processing times Gi and Hi as
         Gi = Ai1 + Ai2 + max (Si1 , Si2) + Ti,1→2 and Hi = Ai2 + Ai3 - Si3 + Ti,2→3
Step 4: Take equivalent job α = (ik , im) for the given job block (ik , im ) and define its processing time on the
lines of Maggu & Das (1977) defined as follows:
Gα = Gk + Gm – min(Gm ,H k)
Hα = Hk+ Hm – min(Gm ,H k )
Step 5: Obtain the order of jobs in the job block β in an optimal manner using Johnson’s (1954) technique
by treating job block β as sub flow shop scheduling problem of the main problem. Let β be the new job
                                                                                          '

block. Define its processing time Gβ΄ & Hβ΄ on the lines of Maggu & Das (1977) as defined in step 4.
Now, the given problem reduce into new problem replacing m jobs by job block α with processing times Gα
& Hα on machine G & H respectively as defined in step 4 and r jobs of job block β by β΄ with processing
times Gβ΄ & Hβ΄ on machine G & H respectively as defined in step 5.




The new problem can be represented as –
   Jobs (i)              Machine G ( Gi )               Machine H (Hi)
        α                        Gα                              Hα
        β'                      Gβ’                              Hβ’
               (Tableau – 2)


                                                                   20
Journal of Natural Sciences Research                                                           www.iiste.org
      ISSN 2224-3186 (Paper) ISSN 2225-0921 (Online)
      Vol.1, No.3, 2011
Step 6: Consider S1 of all the processing time Gi when Gi ≤ H i and let S2 denote the set of processing times
      which are not covered in set S1.
      Step 7: Let S'1 denote a suboptimal sequence of jobs corresponding to non decreasing times in set S1 & let
      S'2 denote a suboptimal sequence of jobs corresponding to non-decreasing times in set S2.
      Step 8: The augmented ordered sequence (S'1, S'2) gives optimal sequence for processing the jobs for the
      original problem.


      6. Programme
      #include<iostream.h>
      #include<stdio.h>
      #include<conio.h>
      #include<process.h>


      int n;
      float a1[16],b1[16],c1[16],g[16],h[16],sa1[16],sb1[16],sc1[16];
      float macha[16],machb[16],machc[16];
      int e;int group[16];//variables to store two job blocks
      float minval;int gg=0;float gcal;float hcal;float gbeta=0.0,hbeta=0.0;float galfa=0.0,halfa=0.0;
      char s1[5];char s2[5];
      void ghcal(float k,float m)
      {
      float minv;
      if(g[m]>h[k])
      minv=h[k];
      else
      minv=g[m];gcal=g[k]+g[m]-minv;hcal=h[k]+h[m]-minv;
      //return(c);}
      void main()
      {
               clrscr();
               int a[16],b[16],c[16],sa[16],sb[16],sc[16],T12[16],T23[16];
               float p[16],q[16],r[16],u[16],v[16],w[16];float maxv;
               cout<<"How many Jobs (<=15) : ";cin>>n;
               if(n<1 || n>15)
               {        cout<<endl<<"Wrong input, No. of jobs should be less than 15..n Exitting";       getch();
                        exit(0);}
              for(int i=1;i<=n;i++)
                        {cout<<"nEnter the processing time and its probability, Setup time and its probability of
      "<<i<<"    job for machine A and Transportation time from A to B :                                        ";
              cin>>a[i]>>p[i]>>sa[i]>>u[i]>>T12[i];
                        cout<<"nEnter the processing time and its probability, Setup time and its probability of
      "<<i<<" job for machine B and Transportation time from B to C                                        : ";
              cin>>b[i]>>q[i]>>sb[i]>>v[i]>>T23[i];
                        cout<<"nEnter the processing time and its probability, Setup time and its probability of
      "<<i<<"job for machine C: ";cin>>c[i]>>r[i]>>sc[i]>>w[i];

                                                            21
Journal of Natural Sciences Research                                                      www.iiste.org
ISSN 2224-3186 (Paper) ISSN 2225-0921 (Online)
Vol.1, No.3, 2011
//Calculate the expected processing times of the jobs for the machines:
                  a1[i] = a[i]*p[i]; b1[i] = b[i]*q[i]; c1[i] = c[i]*r[i];
//Calculate the expected setup times of the jobs for the machines:
                   sa1[i] = sa[i]*u[i];sb1[i] = sb[i]*v[i];sc1[i] = sc[i]*w[i];}
         cout<<endl<<"Expected processing time of machine A, B and C: n";
         for(i=1;i<=n;i++)
         {cout<<a1[i]<<"t"<<sa1[i]<<"t"<<T12[i]<<"t"<<b1[i]<<"t"<<sb1[i]<<"t"<<T23[i]<<"t"<<c1
[i]<<"t"<<sc1[i];cout<<endl;}
//Finding smallest in a1
         float mina1;mina1=a1[1]+T12[1]-sb1[1];
         for(i=2;i<n;i++)
         {if((a1[i]+T12[i]-sb1[i])<mina1)
                   mina1=a1[i]+T12[i]-sb1[i];}
         //For finding largest in b1
         float maxb1;maxb1=b1[1]+T12[1]-sa1[1];
         for(i=2;i<n;i++)
         {         if(b1[i]+T12[i]-sa1[i]>maxb1)
                   maxb1=b1[i]+T12[i]-sa1[i];}
         float maxb2;maxb2=b1[1]+T23[1]-sc1[i];
         for(i=2;i<n;i++)
         {if((b1[i]+T23[i]-sc1[i])>maxb2)
                   maxb2=b1[i]+T23[i]-sc1[i];}
//Finding smallest in c1
         float minc1;minc1=c1[1]+T23[1]-sb1[i];
         for(i=2;i<n;i++)
         {if((c1[i]+T23[i]-sb1[i])<minc1)
                   minc1=c1[i]+T23[i]-sb1[i];}
         if(mina1<=maxb1||minc1<=maxb2)
        {g[i]=a1[i]+b1[i]+maxv;h[i]=b1[i]+c1[i]-sc1[i];}
else {cout<<"n data is not in Standard Form...nExitting";getch();exit(0);}
//Function for two ficticious machine G and H
         for(i=1;i<=n;i++)
         {if(sa1[i]>sb1[i])
         {maxv= sa1[i];}
else     {maxv=sb1[i];}
         g[i]=a1[i]+b1[i]+maxv+T12[i];h[i]=b1[i]+c1[i]-sc1[i]+T23[i]; }
cout<<endl<<"Expected processing time for two fictious machines G and H: n";
 for(i=1;i<=n;i++)
 { cout<<endl;cout<<g[i]<<"t"<<h[i];cout<<endl;}
         cout<<"nEnter the number of fixed jobs in job block alpha <="<<n<<":";cin>>e;
         cout<<"nEnter the fixed job blocks ("<<e<<" numbers from 1 to "<<n<<") alpha : ";
         for(int y=1;y<=e;y++)
         {cin>>group[y];}


                                                       22
Journal of Natural Sciences Research                                                                 www.iiste.org
ISSN 2224-3186 (Paper) ISSN 2225-0921 (Online)
Vol.1, No.3, 2011
         cout<<"nEnter the jobs having disjoint job block ( numbers from 1 to "<<n<<" other than the
fixed job block) beta:";
           for(int j=e+1;j<=n;j++)
            {cin>>group[j];}
 float btj[16],btg[16],bth[16];
cout<<"Expected processing time for two fictious machines G and H for Beta: n";
for(i=1,j=e+1;j<=n;i++,j++)
          {btj[i]=group[j];btg[i]=g[group[j]];bth[i]=h[group[j]];
          cout<<endl<<btj[i]<<"t"<<btg[i]<<"t"<<bth[i];}
float mingh[16];char ch[16];
    for(i=1;i<=n-e;i++)
    {
          if(btg[i]<bth[i])
                    {
                               mingh[i]=btg[i];ch[i]='g';
                    }
          else
                   {
                               mingh[i]=bth[i];ch[i]='h';
                    }}
                   for(i=1;i<=n-e;i++)
          {for(j=1;j<=n-e;j++)
                                        if(mingh[i]<mingh[j])
                                                {float temp=mingh[i]; int temp1=btj[i]; char d=ch[i];
                                                             mingh[i]=mingh[j]; btj[i]=btj[j]; ch[i]=ch[j];
                                                             mingh[j]=temp; btj[j]=temp1; ch[j]=d;}}
          // calculate beta scheduling
float sbeta[16];int t=1,s=0;
for(i=1;i<=n-e;i++)
{if(ch[i]=='h')
          { sbeta[(n-s-e)]=btj[i];s++;}
else if(ch[i]=='g')
          {sbeta[t]=btj[i];t++;}
}
cout<<endl<<endl<<"Beta Scheduling:"<<"t";
for(i=1;i<=n-e;i++)
{cout<<sbeta[i]<<" ";}
//calculate G_Alfa and H_Alfa
ghcal(group[1],group[2]);
galfa=gcal;halfa=hcal;i=3;
while(i<=e)
{
if(i>e)


                                                            23
Journal of Natural Sciences Research                                           www.iiste.org
ISSN 2224-3186 (Paper) ISSN 2225-0921 (Online)
Vol.1, No.3, 2011
break;
else
{
if(g[group[i]]<halfa)
minval=g[group[i]];
else
minval=halfa;galfa=galfa+g[group[i]]-minval;halfa=halfa+h[group[i]]-minval;
}
i++;
}
cout<<endl<<endl<<"G_Alfa="<<galfa;cout<<endl<<"H_Alfa="<<halfa;
//calculate G_Beta and H_Beta
ghcal(sbeta[1],sbeta[2]);gbeta=gcal;hbeta=hcal;i=3;
while(i<=(n-e))
{
if(i>(n-e))
break;
else
{
if(g[sbeta[i]]<hbeta)
minval=g[sbeta[i]];
else
minval=hbeta;gbeta=gbeta+g[sbeta[i]]-minval;hbeta=hbeta+h[sbeta[i]]-minval;}
i++;}
cout<<endl<<endl<<"G_Beta="<<gbeta;cout<<endl<<"H_Beta="<<hbeta;
//calculate optimal sequence
if(galfa<=halfa)
{
s1[1]='a';s2[1]='0';
}
else
{
s2[1]='a';s1[1]='0';
}
if(gbeta<=hbeta)
{
s1[2]='b';s2[2]='0';
}
else
{
s2[2]='b';s1[2]='0';
}
//cout<<endl<<endl<<"Optimal Sequence:"<<"t";

                                                      24
Journal of Natural Sciences Research                     www.iiste.org
ISSN 2224-3186 (Paper) ISSN 2225-0921 (Online)
Vol.1, No.3, 2011
int arr[16];
if(s1[1]=='a')
         {
         //cout<<"n a";
         for(i=1;i<=e;i++)
                  {
                    //cout<<group[i]<<"t";
                    arr[i]=group[i];
                    }
                    gg=gg+e;
         }
if(s1[2]=='b')
         {
         //cout<<"n b";
         for(i=1;i<=n-e;i++)
                    {
                    //cout<<endl<<sbeta[i]<<"t";
                    arr[i+gg]=sbeta[i];
                    }
                    gg=gg+(n-e)+1;
         }
if(s2[1]=='a')
         {
         //cout<<"n a";
         for(i=1;i<=e;i++)
                    {
                    //cout<<endl<<group[i]<<"t";
                    arr[i+gg]=group[i];
                    }
                    gg=gg+e;
         }
if(s2[2]=='b')
         {
         //cout<<"n b";
         for(i=1;i<=(n-e);i++)
                  {
                    //cout<<sbeta[i]<<"t";
                    arr[i+gg]=sbeta[i];
                    }}
//calculating total computation sequence;
float time=0.0,macha1[16] ;float maxv1[16],maxv2[16];
         macha[1]=time+a1[arr[1]];
for(i=2;i<=n;i++)

                                                    25
Journal of Natural Sciences Research                                                                       www.iiste.org
ISSN 2224-3186 (Paper) ISSN 2225-0921 (Online)
Vol.1, No.3, 2011
            {macha1[i]=macha[i-1]+sa1[arr[i-1]];macha[i]=macha1[i]+a1[arr[i]];}
         machb[1]=macha[1]+b1[arr[1]]+T12[arr[1]];
for(i=2;i<=n;i++)
            {if((machb[i-1]+sb1[arr[i-1]])>(macha[i]+T12[arr[i]]))
       {maxv1[i]=machb[i-1]+sb1[arr[i-1]];}
    else
        {maxv1[i]=macha[i]+T12[arr[i]];}machb[i]=maxv1[i]+b1[arr[i]];}
         machc[1]=machb[1]+c1[arr[1]]+T23[arr[1]];
for(i=2;i<=n;i++)
            {if((machc[i-1]+sc1[arr[i-1]])>(machb[i]+T23[arr[i]]))
            maxv2[i]=machc[i-1]+sc1[arr[i-1]];
else
            maxv2[i]=machb[i]+T23[arr[i]];machc[i]=maxv2[i]+c1[arr[i]];}
//displaying solution
cout<<"nnnnnttt       #####THE SOLUTION##### ";
cout<<"nnt***************************************************************";
cout<<"nnnt Optimal Sequence is : ";
for(i=1;i<=n;i++)
{cout<<" "<<arr[i];}
cout<<endl<<endl<<"In-Out Table is:"<<endl<<endl;
cout<<"Jobs"<<"t"<<"Machine M1"<<"t"<<"t"<<"Machine M2" <<"t"<<"t"<<"Machine M3"<<endl;
cout<<arr[1]<<"t"<<time<<"--"<<macha[1]<<" t"<<"t"<<macha[1]+T12[arr[1]]<<"--"<<machb[1]<<"
t"<<"t"<<machb[1]+T23[arr[1]]<<"--"<<machc[1]<<endl;
for(i=2;i<=n;i++)
         {cout<<arr[i]<<"t"<<macha1[i]<<"--"<<macha[i]<<" "<<"t"<<maxv1[i]<<"--"<<machb[i]<<"
"<<"t"<<maxv2[i]<<"--"<<machc[i]<<endl;}
cout<<"nnnTotal Computation Time (T) = "<<machc[n];
float sum1=0.0,sum2=0.0,sum3=0.0;
for(i=1;i<=n;i++)
{sum1=sum1+a1[i];sum2=sum2+b1[i];sum3=sum3+c1[i];}
float tt=machc[n];
cout<<endl<<endl<<endl<<"Total Expected Idle Time on Machine A: "<<(tt-sum1);
cout<<endl<<"Total Expected Idle Time on Machine B: "<<(tt-sum2);
cout<<endl<<"Total Expected Idle Time on Machine C: "<<(tt-sum3);
cout<<"nnt***************************************************************";
getch();
}


7. Numerical Illustration
Consider 5 jobs, 3 machine flow shop problem with processing time ,setup time associated with their
respective probabilities and transportation time as given in table
Jobs            Machine M1                         Machine M2                          Machine M3
                                   Ti ,1→2                             Ti ,2→3
    i     ai1    pi1   si1   qi1             ai2    pi2   si2    qi2             ai3     pi3   si3   qi3


                                                                26
Journal of Natural Sciences Research                                                                    www.iiste.org
ISSN 2224-3186 (Paper) ISSN 2225-0921 (Online)
Vol.1, No.3, 2011
 1         30     0.2    3   0.3      2            10     0.3    3    0.2      2   20   0.2   4   0.2
 2         32     0.2    2   0.1      1            22     0.2    2    0.2      1   19   0.3   3   0.2
 3         43     0.1    2   0.3      2            22     0.2    1    0.3      2   15   0.2   3   0.3
 4         25     0.2    4   0.1      3            25     0.1    3    0.1      3   24   0.1   4   0.2
 5         23     0.3    2   0.2      4            10     0.2    2    0.2      1   26   0.2   5   0.1
                                                                (Tableau 3 )
Our objective is to obtain an optimal schedule for above said problem to minimize the total production time
/ total elapsed time in which jobs 2,5 are to be processed as a group job in a fixed order and remaining jobs
as a disjoint string in any random order.
Solution: As per Step 1: the expected processing times and expected setup times for machines M1, M2 and
M3 are as shown in table 4.
As per step 2: The expected processing time for two fictitious machine G & H is as shown in table 5.
As per step 3: Here β = (1, 3, 4)
Now, using Johnson (1954) technique by treating job block β as sub flow shop scheduling problem of the
main problem. Let β΄ be the new job block. Here we get β΄ = (3, 1, 4)
As per step 4:          Here α = (2, 5)
Therefore, Gα = 12.2 + 13.3 – 10.5 = 15 and Hα = 10.5 + 7.7 – 10.5 = 7.7

Also      β'    = (3,1,4) = ((3, 1), 4) = (α
                                               '
                                                   , 4) , where α ' = (3, 1)
Therefore, G ' = 11.3 + 11.9 – 8.5 =14.7 and H ' = 8.5 + 8.2 – 8.5 = 8.2
            α                                 α
 G ' = 14.7 + 10.9 – 8.2 = 17.4 and H ' = 8.2 + 7.1 – 8.2 = 7.1
     β                                                β
Now problem reduces to jobs α and β΄ as shown in table 6
As per step 5: S1 = φ, S2 = [15, 17.4]
As per step 6: S’1 = φ, S’2 = (α, β΄)
As per step 7: The Optimal sequence is S = 2 – 5 – 3 – 1 – 4 .The In-Out flow table for the optimal
sequence S is as shown in table 7.
         Total expected idle time on machine A = 0.2+0.4+0.6+0.9+10.9 = 13hrs
         Total expected idle time on machine B = 7.4+5.7+0.7+2.2+3.9+5.4= 25.3 hrs
         Total expected idle time on machine C = 12.8+2+0.9+2.2+3.4 = 21.3 hrs


8. Conclusions
This paper provides a new heuristic method with an objective to minimize the total time elapsed time / idle
time of the jobs / machines for n jobs, 3 machines flow shop production scheduling in which processing
times and set up times are associated with their respective probabilities involving transportation time and
jobs are processed in two disjoint job blocks in a string. The study may further be extended by considering
various parameters such as weights in jobs, arbitrary time, break down interval etc.


References
Anup and Maggu P.L(2002),, “On an optimal schedule procedure for a n x 2 flow shop scheduling problem
involving processing time, set up times, transportation times with their respective probabilities and an
equivalent job for a job block”, PAMS, 56(1-2) , 88-93.
Ahmad Pour Darvish Heydari,(2003), “On flow shop scheduling problem with processing of jobs in a
string of disjoint job blocks: fixed order jobs and arbitrary order jobs”, JISSOR, XXIV, , 39- 43.


                                                                     27
Journal of Natural Sciences Research                                                           www.iiste.org
ISSN 2224-3186 (Paper) ISSN 2225-0921 (Online)
Vol.1, No.3, 2011
Campbell, H.A, Duder, R.A & Smith, M.L.(1970), “A heuristic algorithm for the n-job, m-machine
sequencing problem”, Management Science, 16, B630-B637.
Chandramouli,A.B. (2005), “Heuristic approach for n-jobs, 3-machine flow shop scheduling problem
involving transportation time, break down time and weights of jobs”, Mathematical and Computational
Applications,10(2), 301-305.
Gupta D., Sharma S.& Gulati, N.(2011), “n×3 flow shop production schedule, processing time, setup time
each associated with probabilities along with jobs in string of disjoint job-blocks”, Antartica J. Math,8(5),,
443 – 457.
Ignall & Schrage,L.(1965), “Application of the branch-and bound technique to some flow shop scheduling
problems”, Operation Research , 13, 400-412.
Johnson, S.M.(1954), “Optimal two & three stage production schedule with set-up times included”, Naval
Research Logistics Quarterly, 1(1), 61-68.
Khodadadi, A., (2008), “Development of a new heuristic for three machines flow-shop scheduling problem
with transportation time of jobs”, World Applied Sciences Journal ,5(5), 598-601
Maggu, P.L, and Das, G,(1977), “Equivalent jobs for job block in job sequencing”, Operation Research,
14(4), 277-281.
Rajenderan, C.(1993), “Heuristic algorithm for scheduling in flow shop to minimize the total flow time”,
International Journal of Production Economics, 29(1), 65-73.
Singh, T.P.(1985), “On n x 2 flow shop problem involving job block, transportation times & break- down
machine times”, PAMS XXI, 1-2.
Singh, T P, Kumar, R. & Gupta, D. (2005), “Optimal three stage production schedule, the processing and
set up times associated with probabilities including job block criteria”, Proceedings of National Conference
on FACM, 463-470.
Pandian, P. &.Rajendran, P.(2010), “Solving constrained flow-shop scheduling problems with three
machines”, Int. J. Contemp. Math. Sciences, 5(19), 921-929.
Yoshida & Hitomi (1979), “Optimal two stage production scheduling with set up times separated”, AIIE
Transactions, Vol . II, 261-263




                                                     28
Journal of Natural Sciences Research                                                                  www.iiste.org
ISSN 2224-3186 (Paper) ISSN 2225-0921 (Online)
Vol.1, No.3, 2011



Tables
Table 4: The expected processing times and expected setup times for machines M1, M2 and M3 are


Jobs      Ai1          Si1    Ti ,1→2       Ai2            Si2       Ti ,2→3           Ai3      Si3
  1       6.0          0.9       2          3.0            0.6           2             4.0      0.8
  2       6.4          0.2       1          4.4            0.4           1             5.7      0.6
  3       4.3          0.6       2          4.4            0.3           2             3.0      0.9
  4       5.0          0.4       3          2.5            0.3           3             2.4      0.8
  5       6.9          0.4       4          2.0            0.4           1             5.2      0.5


Table 5: The expected processing time for two fictitious machine G & H is
                                               Jobs        Gi      Hi
                                                  1        11.9    8.2
                                                  2        12.2   10.5
                                                  3        11.3    8.5
                                                  4        10.9    7.1
                                                  5        13.3    7.7


Table 6: The new reduced problem is
                               Jobs(i)      Machine G(Gi)            Machine H(Hi)
                                   α    '
                                                      15                       7.7
                                   β'             17.4                         7.1


Table 7: The In-Out flow table for the optimal sequence S is
Jobs      Machine M1         Ti ,1→2        Machine M2            Ti ,2→3        Machine M3

  i         In – Out                         In – Out                                In - Out

  2          0 – 6.4           1             7.4 – 11.8             1            12.8 – 18.5

  5        6.6 – 13.5          4            17.5 – 19.5             1            20.5 – 25.7

  3        13.9 – 18.2         2            20.2 – 24.6             2            26.6 – 29.6

  1        18.8 – 24.8         2            26.8 – 29.8             2            31.8 – 35.8

  4        25.7 – 30.7         3            33.7 – 36.2             3            39.2 – 41.6




                                                           29

More Related Content

PDF
Machines constrained flow shop scheduling processing time, setup time each as...
Alexander Decker
 
PDF
11.machines constrained flow shop scheduling processing time, setup time each...
Alexander Decker
 
PDF
Application of branch and bound technique for nx3 flow shop scheduling, in wh...
Alexander Decker
 
PDF
11.minimizing rental cost for n jobs, 0002www.iiste.org call for-paper-machin...
Alexander Decker
 
PDF
Minimizing rental cost for n jobs, 2-machines flow shop scheduling, processin...
Alexander Decker
 
PDF
Bicriteria in n x 2 flow shop scheduling problem under specified rental polic...
Alexander Decker
 
PDF
11.bicriteria in n x 0002www.iiste.org call for paper flow shop scheduling pr...
Alexander Decker
 
PDF
Bicriteria in constrained n x 3 flow shop to minimize the rental cost, setup ...
Alexander Decker
 
Machines constrained flow shop scheduling processing time, setup time each as...
Alexander Decker
 
11.machines constrained flow shop scheduling processing time, setup time each...
Alexander Decker
 
Application of branch and bound technique for nx3 flow shop scheduling, in wh...
Alexander Decker
 
11.minimizing rental cost for n jobs, 0002www.iiste.org call for-paper-machin...
Alexander Decker
 
Minimizing rental cost for n jobs, 2-machines flow shop scheduling, processin...
Alexander Decker
 
Bicriteria in n x 2 flow shop scheduling problem under specified rental polic...
Alexander Decker
 
11.bicriteria in n x 0002www.iiste.org call for paper flow shop scheduling pr...
Alexander Decker
 
Bicriteria in constrained n x 3 flow shop to minimize the rental cost, setup ...
Alexander Decker
 

What's hot (16)

PDF
11.bicriteria in constrained n x 0003www.iiste.org call for paper flow shop t...
Alexander Decker
 
PDF
Minimizing rental cost under specified rental policy in two stage flowshop se...
Alexander Decker
 
PDF
11.minimizing rental cost under specified rental policy in two stage flowshop...
Alexander Decker
 
PDF
Heuristic approach for bicriteria in constrained three stage flow shop schedu...
Alexander Decker
 
PDF
Heuristic approach for bicriteria in constrained three stage flow shop schedu...
Alexander Decker
 
PDF
11.optimization by heuristic procedure of scheduling constraints in manufactu...
Alexander Decker
 
PDF
Optimization by heuristic procedure of scheduling constraints in manufacturin...
Alexander Decker
 
PDF
Approximation Algorithms Part Two: More Constant factor approximations
Benjamin Sach
 
PDF
A Comparative Reliability Analysis of Bulldozers arriving at workshop in East...
IOSR Journals
 
PDF
11.quantitative approach for theory of constraints in manufacturing
Alexander Decker
 
PDF
Quantitative approach for theory of constraints in manufacturing
Alexander Decker
 
PDF
C# Assignmet Help
Programming Homework Help
 
PDF
Feedback Linearization Controller Of The Delta WingRock Phenomena
IJERA Editor
 
PDF
11 two warehouse production inventory model with different deterioration rate...
BIOLOGICAL FORUM
 
PDF
Hankel Determinent for Certain Classes of Analytic Functions
IJERA Editor
 
PDF
Context-Aware Recommender System Based on Boolean Matrix Factorisation
Dmitrii Ignatov
 
11.bicriteria in constrained n x 0003www.iiste.org call for paper flow shop t...
Alexander Decker
 
Minimizing rental cost under specified rental policy in two stage flowshop se...
Alexander Decker
 
11.minimizing rental cost under specified rental policy in two stage flowshop...
Alexander Decker
 
Heuristic approach for bicriteria in constrained three stage flow shop schedu...
Alexander Decker
 
Heuristic approach for bicriteria in constrained three stage flow shop schedu...
Alexander Decker
 
11.optimization by heuristic procedure of scheduling constraints in manufactu...
Alexander Decker
 
Optimization by heuristic procedure of scheduling constraints in manufacturin...
Alexander Decker
 
Approximation Algorithms Part Two: More Constant factor approximations
Benjamin Sach
 
A Comparative Reliability Analysis of Bulldozers arriving at workshop in East...
IOSR Journals
 
11.quantitative approach for theory of constraints in manufacturing
Alexander Decker
 
Quantitative approach for theory of constraints in manufacturing
Alexander Decker
 
C# Assignmet Help
Programming Homework Help
 
Feedback Linearization Controller Of The Delta WingRock Phenomena
IJERA Editor
 
11 two warehouse production inventory model with different deterioration rate...
BIOLOGICAL FORUM
 
Hankel Determinent for Certain Classes of Analytic Functions
IJERA Editor
 
Context-Aware Recommender System Based on Boolean Matrix Factorisation
Dmitrii Ignatov
 
Ad

Similar to Optimal three stage flow shop scheduling in which processing time, set up time, each associated with probabilities including transportation time (20)

PDF
11.flow shop scheduling problem, processing time associated with probabilitie...
Alexander Decker
 
PDF
Flow shop scheduling problem, processing time associated with probabilities i...
Alexander Decker
 
PDF
11.machines constrained flow shop scheduling processing time, setup time each...
Alexander Decker
 
PDF
Branch and bound technique for three stage flow shop scheduling problem inclu...
Alexander Decker
 
PDF
11.branch and bound technique for three stage flow shop scheduling problem in...
Alexander Decker
 
PDF
Constrained flow shop scheduling with n jobs, 3-machines, processing time ass...
Alexander Decker
 
PDF
Bicriteria in n x 3 flow shop scheduling under specified rental policy
Alexander Decker
 
PDF
Application of branch and bound technique for 3 stage flow shop scheduling pr...
Alexander Decker
 
PDF
19 sameer sharma final paper--268-286
Alexander Decker
 
PDF
1.[1 12]bicriteria in nx2 flow shop scheduling including job block
Alexander Decker
 
PDF
11.bicriteria in nx0002www.iiste.org call for paper flow shop scheduling incl...
Alexander Decker
 
PDF
1.[1 12]bicriteria in nx2 flow shop scheduling including job block
Alexander Decker
 
PDF
11.bicriteria in n x 0003www.iiste.org call for paper flow shop scheduling un...
Alexander Decker
 
PDF
Bicriteria in n x 3 flow shop scheduling under specified rental policy (2)
Alexander Decker
 
PDF
Fuzzy Sequencing Problem Using Generalized Triangular Fuzzy Numbers
IJERA Editor
 
PDF
Chapter 6 Job Scheduling in Production Planning.pdf
HariDhakal11
 
PPTX
Job Shop Scheduling.pptx
SyedAmirIqbal3
 
PDF
11.application of branch and bound method for optimal two stage flow shop sch...
Alexander Decker
 
PDF
Application of branch and bound method for optimal two stage flow shop schedu...
Alexander Decker
 
PPTX
MATERIAL MANAGEMENT Job Shop Scheduling.pptx
Dr SHAILAJA
 
11.flow shop scheduling problem, processing time associated with probabilitie...
Alexander Decker
 
Flow shop scheduling problem, processing time associated with probabilities i...
Alexander Decker
 
11.machines constrained flow shop scheduling processing time, setup time each...
Alexander Decker
 
Branch and bound technique for three stage flow shop scheduling problem inclu...
Alexander Decker
 
11.branch and bound technique for three stage flow shop scheduling problem in...
Alexander Decker
 
Constrained flow shop scheduling with n jobs, 3-machines, processing time ass...
Alexander Decker
 
Bicriteria in n x 3 flow shop scheduling under specified rental policy
Alexander Decker
 
Application of branch and bound technique for 3 stage flow shop scheduling pr...
Alexander Decker
 
19 sameer sharma final paper--268-286
Alexander Decker
 
1.[1 12]bicriteria in nx2 flow shop scheduling including job block
Alexander Decker
 
11.bicriteria in nx0002www.iiste.org call for paper flow shop scheduling incl...
Alexander Decker
 
1.[1 12]bicriteria in nx2 flow shop scheduling including job block
Alexander Decker
 
11.bicriteria in n x 0003www.iiste.org call for paper flow shop scheduling un...
Alexander Decker
 
Bicriteria in n x 3 flow shop scheduling under specified rental policy (2)
Alexander Decker
 
Fuzzy Sequencing Problem Using Generalized Triangular Fuzzy Numbers
IJERA Editor
 
Chapter 6 Job Scheduling in Production Planning.pdf
HariDhakal11
 
Job Shop Scheduling.pptx
SyedAmirIqbal3
 
11.application of branch and bound method for optimal two stage flow shop sch...
Alexander Decker
 
Application of branch and bound method for optimal two stage flow shop schedu...
Alexander Decker
 
MATERIAL MANAGEMENT Job Shop Scheduling.pptx
Dr SHAILAJA
 
Ad

More from Alexander Decker (20)

PDF
Abnormalities of hormones and inflammatory cytokines in women affected with p...
Alexander Decker
 
PDF
A validation of the adverse childhood experiences scale in
Alexander Decker
 
PDF
A usability evaluation framework for b2 c e commerce websites
Alexander Decker
 
PDF
A universal model for managing the marketing executives in nigerian banks
Alexander Decker
 
PDF
A unique common fixed point theorems in generalized d
Alexander Decker
 
PDF
A trends of salmonella and antibiotic resistance
Alexander Decker
 
PDF
A transformational generative approach towards understanding al-istifham
Alexander Decker
 
PDF
A time series analysis of the determinants of savings in namibia
Alexander Decker
 
PDF
A therapy for physical and mental fitness of school children
Alexander Decker
 
PDF
A theory of efficiency for managing the marketing executives in nigerian banks
Alexander Decker
 
PDF
A systematic evaluation of link budget for
Alexander Decker
 
PDF
A synthetic review of contraceptive supplies in punjab
Alexander Decker
 
PDF
A synthesis of taylor’s and fayol’s management approaches for managing market...
Alexander Decker
 
PDF
A survey paper on sequence pattern mining with incremental
Alexander Decker
 
PDF
A survey on live virtual machine migrations and its techniques
Alexander Decker
 
PDF
A survey on data mining and analysis in hadoop and mongo db
Alexander Decker
 
PDF
A survey on challenges to the media cloud
Alexander Decker
 
PDF
A survey of provenance leveraged
Alexander Decker
 
PDF
A survey of private equity investments in kenya
Alexander Decker
 
PDF
A study to measures the financial health of
Alexander Decker
 
Abnormalities of hormones and inflammatory cytokines in women affected with p...
Alexander Decker
 
A validation of the adverse childhood experiences scale in
Alexander Decker
 
A usability evaluation framework for b2 c e commerce websites
Alexander Decker
 
A universal model for managing the marketing executives in nigerian banks
Alexander Decker
 
A unique common fixed point theorems in generalized d
Alexander Decker
 
A trends of salmonella and antibiotic resistance
Alexander Decker
 
A transformational generative approach towards understanding al-istifham
Alexander Decker
 
A time series analysis of the determinants of savings in namibia
Alexander Decker
 
A therapy for physical and mental fitness of school children
Alexander Decker
 
A theory of efficiency for managing the marketing executives in nigerian banks
Alexander Decker
 
A systematic evaluation of link budget for
Alexander Decker
 
A synthetic review of contraceptive supplies in punjab
Alexander Decker
 
A synthesis of taylor’s and fayol’s management approaches for managing market...
Alexander Decker
 
A survey paper on sequence pattern mining with incremental
Alexander Decker
 
A survey on live virtual machine migrations and its techniques
Alexander Decker
 
A survey on data mining and analysis in hadoop and mongo db
Alexander Decker
 
A survey on challenges to the media cloud
Alexander Decker
 
A survey of provenance leveraged
Alexander Decker
 
A survey of private equity investments in kenya
Alexander Decker
 
A study to measures the financial health of
Alexander Decker
 

Recently uploaded (20)

PPTX
锡根大学文凭办理|办理Uni Siegen毕业证电子版成绩单在线办理办成绩单
xxxihn4u
 
PDF
Left Holding the Bag sequence 1 storyboard by Mark G.
MarkGalez
 
PPT
Gas turbine mark VIe control Monitoring IO.ppt
aliyu4ahmad
 
PDF
PowerPoint Presentation -- Larry G -- 2021 -- 218df4ebe0bc5607d6bfcf49fd21eda...
Adeel452922
 
PPTX
unit2_cdunit2_cdunit2_cdunit2_cdunit2_cd.pptx
shella20221
 
PPTX
Jaipur Sees Exponential Growth in Data Analytics Jobs Salarite Smart Hiring P...
vinay salarite
 
PPTX
Tags_of_Chaman_Lifestyle Balochistan.pptx
MuhammadAkramKhan9
 
PPTX
tech vs soft skill .pptxhgdvnhygnuufcbnbg
spnr2427
 
PPTX
Python-vs-Core-Java-A-Comparative-Deep-Dive.pptx.pptx
sachinkesharwani503
 
PDF
Invincible season 2 storyboard revisions seq2 by Mark G
MarkGalez
 
PPTX
How To Write A ResumeCV - Resume Writing Tips
yeasinArafath6
 
PPTX
PRESENTATION OF SEPSIS, SEPTIC SHOCK.pptx
ericklouiseopio
 
PDF
Meatball of Canyon Valley sequence 1 storyboard by Mark G.
MarkGalez
 
PDF
【2nd】Explanatory material of DTU(230207).pdf
kewalsinghpuriya
 
PPT
Cryptographyhsjckhyhbghvdsnbfgnhgvhnnbfrrnb
mannamsarath224
 
PPTX
Digital Marketing training in Chandigarh
chetann0777
 
PPTX
ASP MVC asderfewerwrwerwrefeewwfdewfewfdsfsd
faresslaam82
 
PDF
Meatball of Canyon Valley sequence 3 storyboard by Mark G.
MarkGalez
 
PPTX
FARZ ACADEMY MRCP EXAM PREPARATION-GUIDE & TIPS.pptx
dawnmarketingmaveric
 
PDF
LeadIAS – Best IAS Coaching in Kerala.pdf
LeadIAS
 
锡根大学文凭办理|办理Uni Siegen毕业证电子版成绩单在线办理办成绩单
xxxihn4u
 
Left Holding the Bag sequence 1 storyboard by Mark G.
MarkGalez
 
Gas turbine mark VIe control Monitoring IO.ppt
aliyu4ahmad
 
PowerPoint Presentation -- Larry G -- 2021 -- 218df4ebe0bc5607d6bfcf49fd21eda...
Adeel452922
 
unit2_cdunit2_cdunit2_cdunit2_cdunit2_cd.pptx
shella20221
 
Jaipur Sees Exponential Growth in Data Analytics Jobs Salarite Smart Hiring P...
vinay salarite
 
Tags_of_Chaman_Lifestyle Balochistan.pptx
MuhammadAkramKhan9
 
tech vs soft skill .pptxhgdvnhygnuufcbnbg
spnr2427
 
Python-vs-Core-Java-A-Comparative-Deep-Dive.pptx.pptx
sachinkesharwani503
 
Invincible season 2 storyboard revisions seq2 by Mark G
MarkGalez
 
How To Write A ResumeCV - Resume Writing Tips
yeasinArafath6
 
PRESENTATION OF SEPSIS, SEPTIC SHOCK.pptx
ericklouiseopio
 
Meatball of Canyon Valley sequence 1 storyboard by Mark G.
MarkGalez
 
【2nd】Explanatory material of DTU(230207).pdf
kewalsinghpuriya
 
Cryptographyhsjckhyhbghvdsnbfgnhgvhnnbfrrnb
mannamsarath224
 
Digital Marketing training in Chandigarh
chetann0777
 
ASP MVC asderfewerwrwerwrefeewwfdewfewfdsfsd
faresslaam82
 
Meatball of Canyon Valley sequence 3 storyboard by Mark G.
MarkGalez
 
FARZ ACADEMY MRCP EXAM PREPARATION-GUIDE & TIPS.pptx
dawnmarketingmaveric
 
LeadIAS – Best IAS Coaching in Kerala.pdf
LeadIAS
 

Optimal three stage flow shop scheduling in which processing time, set up time, each associated with probabilities including transportation time

  • 1. Journal of Natural Sciences Research www.iiste.org ISSN 2224-3186 (Paper) ISSN 2225-0921 (Online) Vol.1, No.3, 2011 Optimal Three Stage Flow Shop Scheduling in which Processing Time, Set Up Time, Each Associated With Probabilities Including Transportation Time and Jobs in a String of Disjoint Job-Blocks Sameer Sharma* Department of Mathematics, Maharishi Markandeshwar University, Mullana, Ambala, India * E-mail of the corresponding author: [email protected] Abstract The paper deals with n jobs, 3 machines flow shop production scheduling in which processing times and set up times are associated with their respective probabilities involving transportation time and jobs are processed in two disjoint job blocks in a string. A heuristic method with an objective to minimize the total time elapsed time/idle time of the jobs/machines is discussed. A computer program followed by numerical illustration is given to clarify the algorithm. Keywords: Disjoint job-block, Set up time, Processing time, Transportation time, Equivalent job 1. Introduction In today’s world of global competition, scheduling problem has become vital in order to meet customer requirements as promptly as possible while maximizing the profits. A scheduling problem is to find sequences of jobs on given machines with the objective of minimizing some function of the job completion times. In flow shop scheduling all jobs passes through all machines in the same order without any pre- emission. Johnson (1954) gave a heuristic technique for production schedule in which n jobs are processed on two or three machines in an ordered manner to minimize the total idle time of machines. The work was developed by Ignall & Scharge (1965), Camphell (1970) , Maggu & Das (1977) , Yoshida & Hitomi (1979) , Singh (1985) , Anup (2002) ,Chandramouli (2005) , Khodadadi (2008), Pandian & Rajenderan (2010) by considering various parameters. Heydari (2003) dealt with a flow shop scheduling problem where the jobs are processed in two disjoint job blocks in a string consists of one block in which order of jobs is fixed & other block in which order of job is arbitrary. Gupta, Sharma & Gulati (2011) studied n×3 machine flow shop schedule in which processing time, set up time, each associated with probabilities along with jobs in a string of disjoint job-blocks. Most machine scheduling models assume that jobs are delivered instantaneously from one location to another without considering significant transportation time. However, there are many situations where the transportation times are quite significant and can not be simply neglected. As example, when the machines on which jobs are to be processed are planted at different stations and these jobs require form of loading-time of jobs, moving time and then unloading-time of jobs. In this paper, we have studied machines scheduling problems with explicit transportation considerations. We have extended the study made by Gupta, Sharma & Gulati (2011) by introducing the concept of transportation time. The problem discussed here is wider and practically more applicable and has significant results in process industries 2. Practical Situation Many applied and experimental situations exist in our day-to-day working in factories and industrial production concerns. In many manufacturing / production companies different jobs are processed on various machines. These jobs are required to process in a machine shop A, B, C, ---- in a specified order. When the machines on which jobs are to be processed are planted at different places, the transportation 18
  • 2. Journal of Natural Sciences Research www.iiste.org ISSN 2224-3186 (Paper) ISSN 2225-0921 (Online) Vol.1, No.3, 2011 time (which includes loading time, moving time and unloading time etc.) has a significant role in production concern. Setup includes work to prepare the machine, process or bench for product parts or the cycle. This includes obtaining tools, positioning work-in-process material, return tooling, cleaning up, setting the required jigs and fixtures, adjusting tools and inspecting material and hence significant. The idea of job block has practical significance to create a balance between a cost of providing priority in service to the customer and cost of giving service with non priority, .i.e. how much is to be charged from the priority customer(s) as compared to non priority customer(s). 3. Notations S : Sequence of jobs 1, 2, 3… n Sk : Sequence obtained by applying Johnson’s procedure, k = 1, 2, 3, ------- Mj : Machine j, j= 1, 2, 3 M : Minimum makespan aij : Processing time of ith job on machine Mj pij : Probability associated to the processing time aij sij : Set up time of ith job on machine Mj qij : Probability associated to the set up time sij Aij : Expected processing time of ith job on machine Mj Sij : Expected set up time of ith job on machine Mj Iij(Sk): Idle time of machine Mj for job i in the sequence Sk Ti , j →k : Transportation time of ith job from jth machine to kth machine 4. Assumptions 1. n jobs be processed through three machines M1, M2 & M3 in the order M1M2M3 i.e. no passing is allowed. 2. A sequence of k jobs i1, i2 …… ik as a block or group-job in the order ( i1, i2 ……ik ) shows priority of job i1 over i2, etc. 3. Jobs may be held in inventory before going to a machine. 4. The storage space is available and the cost of holding inventory for each job is either same or negligible. 5. Time intervals for processing are independent of the order in which operations are performed. 6. A job is an entity i.e. even though the job represents a lot of individual part; no job may be processed by more than one machine at a time. 7. Each operation once started must performed till completion. 4. Problem Formulation Let some job i (i = 1,2,……..,n) is to be processed on three machines Mj ( j = 1,2,3) in the way such that no passing is allowed. Let aij be the processing time of ith job on jth machine with probabilities pij and sij be the setup time of ith job on jth machine with probabilities qij. Let Aij be the expected processing time and Si,j be the expected setup time of ith job on jth machine. Let Ti,j→k be the transportation time of ith job from jth machine to kth machine..Let α =(ik, im) be an equivalent job for job block in which job ik is given priority over job im Take two job blocks α and β such that block α consists of m jobs out of n jobs in which the order of jobs is fixed and β consists of r jobs out of n in which order of jobs is arbitrary such that m + r = n. let α ∩ β = Φ i.e. the two job blocks α & β form a disjoint set in the sense that the two blocks have no job in common. A string S of job blocks α and β is defined as S = (α, β). Our objective is to find an optimal 19
  • 3. Journal of Natural Sciences Research www.iiste.org ISSN 2224-3186 (Paper) ISSN 2225-0921 (Online) Vol.1, No.3, 2011 schedule for all the jobs minimizing the total elapsed time. The mathematical model of the problem in matrix form can be stated as: Jobs Machine A Ti ,1→2 Machine B Ti ,2→3 Machine C i ai1 pi1 si1 qi1 ai 2 pi 2 si2 qi2 ai 3 pi 3 si3 qi3 1 a11 p11 s11 q11 T1,1→2 a12 p12 s12 q12 T1,2→3 a13 p13 s13 q13 2 a21 p21 s21 q21 T2,1→2 a22 p22 s22 q22 T2,2→3 a23 p23 s23 q23 3 a31 p31 s31 q31 T3,1→2 a32 p32 s32 q32 T3,2→3 a33 p33 s33 q33 4 a41 p41 s41 q41 T4,1→2 a42 p42 s42 q42 T4,2→3 a43 p43 s43 q43 - - - - - - - - - - - - - - - n an1 pn1 sn1 qn1 Tn,1→2 an 2 pn 2 sn2 qn2 Tn,2→3 an 3 pn3 sn3 qn3 (Tableau 1) 5. Algorithm: Step 1: Calculate the expected processing times and expected set up times as follows Aij = aij × pij and Sij = sij × qij ∀i, j =1,2,3 Also we consider the following structure relation holds good if Step 2: Check the condition Either Min {Ai1 + Ti,1→2 – Si2} ≥ Max{Ai2 + Ti,1→2 – Si1} or Min{Ai3 + Ti,2→3 – Si2} ≥ Max{Ai2 + Ti,2→3 – Si3} or both for all i If the conditions are satisfied then go to step 3, else the data is not in the standard form. Step 3: Introduce the two fictitious machines G and H with processing times Gi and Hi as Gi = Ai1 + Ai2 + max (Si1 , Si2) + Ti,1→2 and Hi = Ai2 + Ai3 - Si3 + Ti,2→3 Step 4: Take equivalent job α = (ik , im) for the given job block (ik , im ) and define its processing time on the lines of Maggu & Das (1977) defined as follows: Gα = Gk + Gm – min(Gm ,H k) Hα = Hk+ Hm – min(Gm ,H k ) Step 5: Obtain the order of jobs in the job block β in an optimal manner using Johnson’s (1954) technique by treating job block β as sub flow shop scheduling problem of the main problem. Let β be the new job ' block. Define its processing time Gβ΄ & Hβ΄ on the lines of Maggu & Das (1977) as defined in step 4. Now, the given problem reduce into new problem replacing m jobs by job block α with processing times Gα & Hα on machine G & H respectively as defined in step 4 and r jobs of job block β by β΄ with processing times Gβ΄ & Hβ΄ on machine G & H respectively as defined in step 5. The new problem can be represented as – Jobs (i) Machine G ( Gi ) Machine H (Hi) α Gα Hα β' Gβ’ Hβ’ (Tableau – 2) 20
  • 4. Journal of Natural Sciences Research www.iiste.org ISSN 2224-3186 (Paper) ISSN 2225-0921 (Online) Vol.1, No.3, 2011 Step 6: Consider S1 of all the processing time Gi when Gi ≤ H i and let S2 denote the set of processing times which are not covered in set S1. Step 7: Let S'1 denote a suboptimal sequence of jobs corresponding to non decreasing times in set S1 & let S'2 denote a suboptimal sequence of jobs corresponding to non-decreasing times in set S2. Step 8: The augmented ordered sequence (S'1, S'2) gives optimal sequence for processing the jobs for the original problem. 6. Programme #include<iostream.h> #include<stdio.h> #include<conio.h> #include<process.h> int n; float a1[16],b1[16],c1[16],g[16],h[16],sa1[16],sb1[16],sc1[16]; float macha[16],machb[16],machc[16]; int e;int group[16];//variables to store two job blocks float minval;int gg=0;float gcal;float hcal;float gbeta=0.0,hbeta=0.0;float galfa=0.0,halfa=0.0; char s1[5];char s2[5]; void ghcal(float k,float m) { float minv; if(g[m]>h[k]) minv=h[k]; else minv=g[m];gcal=g[k]+g[m]-minv;hcal=h[k]+h[m]-minv; //return(c);} void main() { clrscr(); int a[16],b[16],c[16],sa[16],sb[16],sc[16],T12[16],T23[16]; float p[16],q[16],r[16],u[16],v[16],w[16];float maxv; cout<<"How many Jobs (<=15) : ";cin>>n; if(n<1 || n>15) { cout<<endl<<"Wrong input, No. of jobs should be less than 15..n Exitting"; getch(); exit(0);} for(int i=1;i<=n;i++) {cout<<"nEnter the processing time and its probability, Setup time and its probability of "<<i<<" job for machine A and Transportation time from A to B : "; cin>>a[i]>>p[i]>>sa[i]>>u[i]>>T12[i]; cout<<"nEnter the processing time and its probability, Setup time and its probability of "<<i<<" job for machine B and Transportation time from B to C : "; cin>>b[i]>>q[i]>>sb[i]>>v[i]>>T23[i]; cout<<"nEnter the processing time and its probability, Setup time and its probability of "<<i<<"job for machine C: ";cin>>c[i]>>r[i]>>sc[i]>>w[i]; 21
  • 5. Journal of Natural Sciences Research www.iiste.org ISSN 2224-3186 (Paper) ISSN 2225-0921 (Online) Vol.1, No.3, 2011 //Calculate the expected processing times of the jobs for the machines: a1[i] = a[i]*p[i]; b1[i] = b[i]*q[i]; c1[i] = c[i]*r[i]; //Calculate the expected setup times of the jobs for the machines: sa1[i] = sa[i]*u[i];sb1[i] = sb[i]*v[i];sc1[i] = sc[i]*w[i];} cout<<endl<<"Expected processing time of machine A, B and C: n"; for(i=1;i<=n;i++) {cout<<a1[i]<<"t"<<sa1[i]<<"t"<<T12[i]<<"t"<<b1[i]<<"t"<<sb1[i]<<"t"<<T23[i]<<"t"<<c1 [i]<<"t"<<sc1[i];cout<<endl;} //Finding smallest in a1 float mina1;mina1=a1[1]+T12[1]-sb1[1]; for(i=2;i<n;i++) {if((a1[i]+T12[i]-sb1[i])<mina1) mina1=a1[i]+T12[i]-sb1[i];} //For finding largest in b1 float maxb1;maxb1=b1[1]+T12[1]-sa1[1]; for(i=2;i<n;i++) { if(b1[i]+T12[i]-sa1[i]>maxb1) maxb1=b1[i]+T12[i]-sa1[i];} float maxb2;maxb2=b1[1]+T23[1]-sc1[i]; for(i=2;i<n;i++) {if((b1[i]+T23[i]-sc1[i])>maxb2) maxb2=b1[i]+T23[i]-sc1[i];} //Finding smallest in c1 float minc1;minc1=c1[1]+T23[1]-sb1[i]; for(i=2;i<n;i++) {if((c1[i]+T23[i]-sb1[i])<minc1) minc1=c1[i]+T23[i]-sb1[i];} if(mina1<=maxb1||minc1<=maxb2) {g[i]=a1[i]+b1[i]+maxv;h[i]=b1[i]+c1[i]-sc1[i];} else {cout<<"n data is not in Standard Form...nExitting";getch();exit(0);} //Function for two ficticious machine G and H for(i=1;i<=n;i++) {if(sa1[i]>sb1[i]) {maxv= sa1[i];} else {maxv=sb1[i];} g[i]=a1[i]+b1[i]+maxv+T12[i];h[i]=b1[i]+c1[i]-sc1[i]+T23[i]; } cout<<endl<<"Expected processing time for two fictious machines G and H: n"; for(i=1;i<=n;i++) { cout<<endl;cout<<g[i]<<"t"<<h[i];cout<<endl;} cout<<"nEnter the number of fixed jobs in job block alpha <="<<n<<":";cin>>e; cout<<"nEnter the fixed job blocks ("<<e<<" numbers from 1 to "<<n<<") alpha : "; for(int y=1;y<=e;y++) {cin>>group[y];} 22
  • 6. Journal of Natural Sciences Research www.iiste.org ISSN 2224-3186 (Paper) ISSN 2225-0921 (Online) Vol.1, No.3, 2011 cout<<"nEnter the jobs having disjoint job block ( numbers from 1 to "<<n<<" other than the fixed job block) beta:"; for(int j=e+1;j<=n;j++) {cin>>group[j];} float btj[16],btg[16],bth[16]; cout<<"Expected processing time for two fictious machines G and H for Beta: n"; for(i=1,j=e+1;j<=n;i++,j++) {btj[i]=group[j];btg[i]=g[group[j]];bth[i]=h[group[j]]; cout<<endl<<btj[i]<<"t"<<btg[i]<<"t"<<bth[i];} float mingh[16];char ch[16]; for(i=1;i<=n-e;i++) { if(btg[i]<bth[i]) { mingh[i]=btg[i];ch[i]='g'; } else { mingh[i]=bth[i];ch[i]='h'; }} for(i=1;i<=n-e;i++) {for(j=1;j<=n-e;j++) if(mingh[i]<mingh[j]) {float temp=mingh[i]; int temp1=btj[i]; char d=ch[i]; mingh[i]=mingh[j]; btj[i]=btj[j]; ch[i]=ch[j]; mingh[j]=temp; btj[j]=temp1; ch[j]=d;}} // calculate beta scheduling float sbeta[16];int t=1,s=0; for(i=1;i<=n-e;i++) {if(ch[i]=='h') { sbeta[(n-s-e)]=btj[i];s++;} else if(ch[i]=='g') {sbeta[t]=btj[i];t++;} } cout<<endl<<endl<<"Beta Scheduling:"<<"t"; for(i=1;i<=n-e;i++) {cout<<sbeta[i]<<" ";} //calculate G_Alfa and H_Alfa ghcal(group[1],group[2]); galfa=gcal;halfa=hcal;i=3; while(i<=e) { if(i>e) 23
  • 7. Journal of Natural Sciences Research www.iiste.org ISSN 2224-3186 (Paper) ISSN 2225-0921 (Online) Vol.1, No.3, 2011 break; else { if(g[group[i]]<halfa) minval=g[group[i]]; else minval=halfa;galfa=galfa+g[group[i]]-minval;halfa=halfa+h[group[i]]-minval; } i++; } cout<<endl<<endl<<"G_Alfa="<<galfa;cout<<endl<<"H_Alfa="<<halfa; //calculate G_Beta and H_Beta ghcal(sbeta[1],sbeta[2]);gbeta=gcal;hbeta=hcal;i=3; while(i<=(n-e)) { if(i>(n-e)) break; else { if(g[sbeta[i]]<hbeta) minval=g[sbeta[i]]; else minval=hbeta;gbeta=gbeta+g[sbeta[i]]-minval;hbeta=hbeta+h[sbeta[i]]-minval;} i++;} cout<<endl<<endl<<"G_Beta="<<gbeta;cout<<endl<<"H_Beta="<<hbeta; //calculate optimal sequence if(galfa<=halfa) { s1[1]='a';s2[1]='0'; } else { s2[1]='a';s1[1]='0'; } if(gbeta<=hbeta) { s1[2]='b';s2[2]='0'; } else { s2[2]='b';s1[2]='0'; } //cout<<endl<<endl<<"Optimal Sequence:"<<"t"; 24
  • 8. Journal of Natural Sciences Research www.iiste.org ISSN 2224-3186 (Paper) ISSN 2225-0921 (Online) Vol.1, No.3, 2011 int arr[16]; if(s1[1]=='a') { //cout<<"n a"; for(i=1;i<=e;i++) { //cout<<group[i]<<"t"; arr[i]=group[i]; } gg=gg+e; } if(s1[2]=='b') { //cout<<"n b"; for(i=1;i<=n-e;i++) { //cout<<endl<<sbeta[i]<<"t"; arr[i+gg]=sbeta[i]; } gg=gg+(n-e)+1; } if(s2[1]=='a') { //cout<<"n a"; for(i=1;i<=e;i++) { //cout<<endl<<group[i]<<"t"; arr[i+gg]=group[i]; } gg=gg+e; } if(s2[2]=='b') { //cout<<"n b"; for(i=1;i<=(n-e);i++) { //cout<<sbeta[i]<<"t"; arr[i+gg]=sbeta[i]; }} //calculating total computation sequence; float time=0.0,macha1[16] ;float maxv1[16],maxv2[16]; macha[1]=time+a1[arr[1]]; for(i=2;i<=n;i++) 25
  • 9. Journal of Natural Sciences Research www.iiste.org ISSN 2224-3186 (Paper) ISSN 2225-0921 (Online) Vol.1, No.3, 2011 {macha1[i]=macha[i-1]+sa1[arr[i-1]];macha[i]=macha1[i]+a1[arr[i]];} machb[1]=macha[1]+b1[arr[1]]+T12[arr[1]]; for(i=2;i<=n;i++) {if((machb[i-1]+sb1[arr[i-1]])>(macha[i]+T12[arr[i]])) {maxv1[i]=machb[i-1]+sb1[arr[i-1]];} else {maxv1[i]=macha[i]+T12[arr[i]];}machb[i]=maxv1[i]+b1[arr[i]];} machc[1]=machb[1]+c1[arr[1]]+T23[arr[1]]; for(i=2;i<=n;i++) {if((machc[i-1]+sc1[arr[i-1]])>(machb[i]+T23[arr[i]])) maxv2[i]=machc[i-1]+sc1[arr[i-1]]; else maxv2[i]=machb[i]+T23[arr[i]];machc[i]=maxv2[i]+c1[arr[i]];} //displaying solution cout<<"nnnnnttt #####THE SOLUTION##### "; cout<<"nnt***************************************************************"; cout<<"nnnt Optimal Sequence is : "; for(i=1;i<=n;i++) {cout<<" "<<arr[i];} cout<<endl<<endl<<"In-Out Table is:"<<endl<<endl; cout<<"Jobs"<<"t"<<"Machine M1"<<"t"<<"t"<<"Machine M2" <<"t"<<"t"<<"Machine M3"<<endl; cout<<arr[1]<<"t"<<time<<"--"<<macha[1]<<" t"<<"t"<<macha[1]+T12[arr[1]]<<"--"<<machb[1]<<" t"<<"t"<<machb[1]+T23[arr[1]]<<"--"<<machc[1]<<endl; for(i=2;i<=n;i++) {cout<<arr[i]<<"t"<<macha1[i]<<"--"<<macha[i]<<" "<<"t"<<maxv1[i]<<"--"<<machb[i]<<" "<<"t"<<maxv2[i]<<"--"<<machc[i]<<endl;} cout<<"nnnTotal Computation Time (T) = "<<machc[n]; float sum1=0.0,sum2=0.0,sum3=0.0; for(i=1;i<=n;i++) {sum1=sum1+a1[i];sum2=sum2+b1[i];sum3=sum3+c1[i];} float tt=machc[n]; cout<<endl<<endl<<endl<<"Total Expected Idle Time on Machine A: "<<(tt-sum1); cout<<endl<<"Total Expected Idle Time on Machine B: "<<(tt-sum2); cout<<endl<<"Total Expected Idle Time on Machine C: "<<(tt-sum3); cout<<"nnt***************************************************************"; getch(); } 7. Numerical Illustration Consider 5 jobs, 3 machine flow shop problem with processing time ,setup time associated with their respective probabilities and transportation time as given in table Jobs Machine M1 Machine M2 Machine M3 Ti ,1→2 Ti ,2→3 i ai1 pi1 si1 qi1 ai2 pi2 si2 qi2 ai3 pi3 si3 qi3 26
  • 10. Journal of Natural Sciences Research www.iiste.org ISSN 2224-3186 (Paper) ISSN 2225-0921 (Online) Vol.1, No.3, 2011 1 30 0.2 3 0.3 2 10 0.3 3 0.2 2 20 0.2 4 0.2 2 32 0.2 2 0.1 1 22 0.2 2 0.2 1 19 0.3 3 0.2 3 43 0.1 2 0.3 2 22 0.2 1 0.3 2 15 0.2 3 0.3 4 25 0.2 4 0.1 3 25 0.1 3 0.1 3 24 0.1 4 0.2 5 23 0.3 2 0.2 4 10 0.2 2 0.2 1 26 0.2 5 0.1 (Tableau 3 ) Our objective is to obtain an optimal schedule for above said problem to minimize the total production time / total elapsed time in which jobs 2,5 are to be processed as a group job in a fixed order and remaining jobs as a disjoint string in any random order. Solution: As per Step 1: the expected processing times and expected setup times for machines M1, M2 and M3 are as shown in table 4. As per step 2: The expected processing time for two fictitious machine G & H is as shown in table 5. As per step 3: Here β = (1, 3, 4) Now, using Johnson (1954) technique by treating job block β as sub flow shop scheduling problem of the main problem. Let β΄ be the new job block. Here we get β΄ = (3, 1, 4) As per step 4: Here α = (2, 5) Therefore, Gα = 12.2 + 13.3 – 10.5 = 15 and Hα = 10.5 + 7.7 – 10.5 = 7.7 Also β' = (3,1,4) = ((3, 1), 4) = (α ' , 4) , where α ' = (3, 1) Therefore, G ' = 11.3 + 11.9 – 8.5 =14.7 and H ' = 8.5 + 8.2 – 8.5 = 8.2 α α G ' = 14.7 + 10.9 – 8.2 = 17.4 and H ' = 8.2 + 7.1 – 8.2 = 7.1 β β Now problem reduces to jobs α and β΄ as shown in table 6 As per step 5: S1 = φ, S2 = [15, 17.4] As per step 6: S’1 = φ, S’2 = (α, β΄) As per step 7: The Optimal sequence is S = 2 – 5 – 3 – 1 – 4 .The In-Out flow table for the optimal sequence S is as shown in table 7. Total expected idle time on machine A = 0.2+0.4+0.6+0.9+10.9 = 13hrs Total expected idle time on machine B = 7.4+5.7+0.7+2.2+3.9+5.4= 25.3 hrs Total expected idle time on machine C = 12.8+2+0.9+2.2+3.4 = 21.3 hrs 8. Conclusions This paper provides a new heuristic method with an objective to minimize the total time elapsed time / idle time of the jobs / machines for n jobs, 3 machines flow shop production scheduling in which processing times and set up times are associated with their respective probabilities involving transportation time and jobs are processed in two disjoint job blocks in a string. The study may further be extended by considering various parameters such as weights in jobs, arbitrary time, break down interval etc. References Anup and Maggu P.L(2002),, “On an optimal schedule procedure for a n x 2 flow shop scheduling problem involving processing time, set up times, transportation times with their respective probabilities and an equivalent job for a job block”, PAMS, 56(1-2) , 88-93. Ahmad Pour Darvish Heydari,(2003), “On flow shop scheduling problem with processing of jobs in a string of disjoint job blocks: fixed order jobs and arbitrary order jobs”, JISSOR, XXIV, , 39- 43. 27
  • 11. Journal of Natural Sciences Research www.iiste.org ISSN 2224-3186 (Paper) ISSN 2225-0921 (Online) Vol.1, No.3, 2011 Campbell, H.A, Duder, R.A & Smith, M.L.(1970), “A heuristic algorithm for the n-job, m-machine sequencing problem”, Management Science, 16, B630-B637. Chandramouli,A.B. (2005), “Heuristic approach for n-jobs, 3-machine flow shop scheduling problem involving transportation time, break down time and weights of jobs”, Mathematical and Computational Applications,10(2), 301-305. Gupta D., Sharma S.& Gulati, N.(2011), “n×3 flow shop production schedule, processing time, setup time each associated with probabilities along with jobs in string of disjoint job-blocks”, Antartica J. Math,8(5),, 443 – 457. Ignall & Schrage,L.(1965), “Application of the branch-and bound technique to some flow shop scheduling problems”, Operation Research , 13, 400-412. Johnson, S.M.(1954), “Optimal two & three stage production schedule with set-up times included”, Naval Research Logistics Quarterly, 1(1), 61-68. Khodadadi, A., (2008), “Development of a new heuristic for three machines flow-shop scheduling problem with transportation time of jobs”, World Applied Sciences Journal ,5(5), 598-601 Maggu, P.L, and Das, G,(1977), “Equivalent jobs for job block in job sequencing”, Operation Research, 14(4), 277-281. Rajenderan, C.(1993), “Heuristic algorithm for scheduling in flow shop to minimize the total flow time”, International Journal of Production Economics, 29(1), 65-73. Singh, T.P.(1985), “On n x 2 flow shop problem involving job block, transportation times & break- down machine times”, PAMS XXI, 1-2. Singh, T P, Kumar, R. & Gupta, D. (2005), “Optimal three stage production schedule, the processing and set up times associated with probabilities including job block criteria”, Proceedings of National Conference on FACM, 463-470. Pandian, P. &.Rajendran, P.(2010), “Solving constrained flow-shop scheduling problems with three machines”, Int. J. Contemp. Math. Sciences, 5(19), 921-929. Yoshida & Hitomi (1979), “Optimal two stage production scheduling with set up times separated”, AIIE Transactions, Vol . II, 261-263 28
  • 12. Journal of Natural Sciences Research www.iiste.org ISSN 2224-3186 (Paper) ISSN 2225-0921 (Online) Vol.1, No.3, 2011 Tables Table 4: The expected processing times and expected setup times for machines M1, M2 and M3 are Jobs Ai1 Si1 Ti ,1→2 Ai2 Si2 Ti ,2→3 Ai3 Si3 1 6.0 0.9 2 3.0 0.6 2 4.0 0.8 2 6.4 0.2 1 4.4 0.4 1 5.7 0.6 3 4.3 0.6 2 4.4 0.3 2 3.0 0.9 4 5.0 0.4 3 2.5 0.3 3 2.4 0.8 5 6.9 0.4 4 2.0 0.4 1 5.2 0.5 Table 5: The expected processing time for two fictitious machine G & H is Jobs Gi Hi 1 11.9 8.2 2 12.2 10.5 3 11.3 8.5 4 10.9 7.1 5 13.3 7.7 Table 6: The new reduced problem is Jobs(i) Machine G(Gi) Machine H(Hi) α ' 15 7.7 β' 17.4 7.1 Table 7: The In-Out flow table for the optimal sequence S is Jobs Machine M1 Ti ,1→2 Machine M2 Ti ,2→3 Machine M3 i In – Out In – Out In - Out 2 0 – 6.4 1 7.4 – 11.8 1 12.8 – 18.5 5 6.6 – 13.5 4 17.5 – 19.5 1 20.5 – 25.7 3 13.9 – 18.2 2 20.2 – 24.6 2 26.6 – 29.6 1 18.8 – 24.8 2 26.8 – 29.8 2 31.8 – 35.8 4 25.7 – 30.7 3 33.7 – 36.2 3 39.2 – 41.6 29