A Batch Splitting Job Shop Scheduling Problem with bounded batch sizes under Multiple-resource Constraints using Genetic Algorithm

Size: px
Start display at page:

Download "A Batch Splitting Job Shop Scheduling Problem with bounded batch sizes under Multiple-resource Constraints using Genetic Algorithm"

Transcription

1 A Batch Splttng Job Shop Schedulng Problem wth bounded batch szes under ultple-resource Constrants usng Genetc Algorthm WANG Ha-yan,ZHAO Yan-we* Key Laboratory of echancal manufacture and Automaton of nstry of Educaton Zheang Unversty of Technology Hangzhou, P. R. Chna (*Correspondng author, e-mal: XU Xn-l, WANG Wan-lang College of Informaton Engneerng Zheang Unversty of Technology Hangzhou, P. R. Chna Abstract Consderng alternatve resources for operatons, requrement of multple resources to process an operaton and a ob s batch sze greater than one n the real manufacturng envronment, a study s made on the batch splttng schedulng problem wth bounded batch szes under multple-resource constrants, based on the obectve to mnmze the maxmum completon tme. A genetc algorthm whch s sutable for ths problem s proposed, wth a new chromosome representaton, whch takes nto account the batch splttng of the orgnal batches of obs. And a new crossover method and a new mutaton method are proposed based on the new chromosome representaton. The results of the smulaton ndcate that the method s feasble and effcent. Keywords batch splttng schedulng, multple-resource constrants, genetc algorthm, fuzzy processng tme I. INTRODUCTION The ob shop schedulng problem has been a maor target n manufacturng systems. Approaches to ths problem have been studed a lot and great results have been acheved, especally n the feld of ntellgent algorthms as Genetc Algorthm(GA), Neural Network(NN) and Fuzzy Logc (FL) [1,2,3]. ost of the exstng researches about the ob shop schedulng problem was of sngle-resource constraned (machnes only), and assumed that a ob conssted of only a sngle part. In the real manufacturng envronment, a ob conssts of a batch sze greater than one, and there may requre multple resources to process an operaton and may exst alternatve resources for operatons[2]. By splttng the orgnal batch nto many smaller batches, these smaller batches can be processed on dfferent resources at the same tme, thus the producton effcency can be mproved. In the book of Wang Wanlang s n 2007, the ob shop schedulng problem n electroacoustc corporatons was studed, and a model for multobectve obshop schedulng wth fuzzy processng tme and fuzzy duedate under multpleresource constrants was presented[3]. Emaraghy H, Patel V and Abdallah I B studed the schedulng problem n manufacturng systems constraned by both machnes and workers, and presented a genetc algorthm wth a new chromosome representaton, whch took nto account machne and worker assgnments to obs[4]. Chrstoph S. Thomalla converted a multple-resource problem to a sngle-resource problem by groupng multple resources nto many groups that may process an operaton, and every group was regarded as a sngle machne[5]. Schedulng problems wth alternatve resources were studed n many researches[6,7]. L Fu-ng et al.(2006) adopted a parallel chromosome codng method, one for the machne allocaton, the other for the schedulng of operatons[7]. There also exsts many researches about the batch-splttng schedulng problems[8,9,10]. Gur osheov and Danel Oron studed batch schedulng problem wth a lower bound that all batch szes shared and an upper bound that all batch szes could not exceed [10]. Ths paper addresses a batch splttng ob shop schedulng problem wth bounded batch szes, consderng multpleresource constrants and alternatve resources for operatons. And a soluton to ths problem should consst of the number of batches and ther szes and resources allocated for those batches and ther start and completon tmes. II. PROBLE FORULATION Consder several obs to be processed and some processng resources n a manufacturng system. Each ob conssts of a batch sze greater than one and a gven number of operatons to be processed n a specfc order. In ths schedulng problem, operatons may requre multple resources for processng wth dfferent processng tmes on each resource and there may exst alternatve resources for operatons. Here, resources refer to machnes, moulds and workers. We try to get an mproved schedule by splttng the orgnal batch nto smaller batches accordng to the algorthm we are proposng. In the real manufacturng envronment, varous factors nvolved n the problems are often mprecsely known to the researchers. Here we formulate a batch-splttng ob shop schedulng problem wth bounded batch szes constraned by machnes, moulds and workers wth fuzzy processng tme usng the followng varables: J th ob /08 /$ IEEE CIS 2008

2 W s A the orgnal batch sze of ob J OP th operaton of the th ob, whose relatonshp wth N n W OP W number of obs number of operatons of ob J th operaton n W whch contans all the operatons that can be processed n the workshop Q number of operatons n W 1, f machnes are requred to process W ER = 0, f machnes are not requred to process W 1, f moulds are requred to process W R = 0, f moulds are not requred to process W E th machne n E whch contans all the avalable machnes n the workshop Because the relatonshp between a machne and a worker who manpulates t s normally fxed n a shft, here E ncludes a worker who manpulates the machne. Therefore, for operatons that need machnes, allocatng machnes for the process of these operatons means allocatng both machnes and workers for the process of these operatons. H number of machnes n E th mould n whch contans all the avalable moulds n the workshop A mould can t be able to work untl t s nstalled on a machne. And a mould that can be used to process an operaton can be nstalled on any machnes that process the same operaton. When the process of an operaton does not need machne, t obvously does not need mould. F P number of moulds n th worker n P whch contans all the avalable workers n the workshop except for those that are ncluded n E. Obvously,workers are requred to be allocated for the process of operaton W when R = 0 and ER = 0. G number of persons n P 1, f mould can be used to process W W _ = 0, f mould can' t be used to processw 1, f operaton W can be processed on E W _ E = 0, f operaton W can' t be processed on E 1, f person P can process operaton W W _ P = 0, f person P can ' t process operaton W Snce workers n P deal wth operatons that don t need machnes as mentoned above, W _ P = 1 may occur only when R = 0 and ER = 0. L U ET = ( et, et, et ) processng tme of machne E for a sngle part L U PT = ( pt, pt, pt ) processng tme of worker P for a sngle part We can get the processng tmes of operatons that need machnes from ET and the processng tmes of operatons that don t need machnes from PT. B _mn the lower bound of batch sze B _max the upper bound of batch sze To smplfy ths schedulng problem, we assume that all obs and resources are avalable for processng at tme zero. Furthermore, several addtonal constrants as follows have to be met: 1) Every small batch, thanks to the batch splttng of the orgnal batch, s regarded as a sngle part. When schedulng, every small batch should not precede the subsequent operatons when the predecessor has not been fnshed. 2) Only one operaton can be processed on each resource at a tme. 3) There s no precedence constrant between operatons from dfferent obs. 4) When a small batch of a ob s stll beng processed, t can t be nterrupted untl ths whole batch s fnshed. III. OPERATIONS ON FUZZY PROCESSING TIE Consderng a number of man-made factors that exst n operatons, n the schedulng problem consdered n ths paper, the fuzzy processng tme s represented by a trangular fuzzy number(tfn)[11] as shown n Fg.1, where t L t t U stands for the optmstc value, the most lkely value and the pessmstc value respectvely. Fgure 1. Trangular Fuzzy Number(TFN) In the schedulng problem formulated n secton 2, there exsts precedence constrants between operatons of a ob and

3 resources (machnes, moulds, workers n ths paper) constrants. When calculatng the fuzzy startng tme for each operaton, we need (max) operaton between two trangular fuzzy numbers. And after we get the fuzzy startng tme for an operaton, we use the addton of two trangular fuzzy numbers to calculate the fuzzy completon tme of the operaton. The (max) and the addton of two trangular fuzzy numbers ( L,, U ' ' ' ' t = t t t ) and t = ( t L, t, t U ) are shown by the followng formulas[12]: ' L L' ' U U' t t = ( t t, t t, t t ) ' L L' ' U U ' t + t = ( t + t, t + t, t + t ) To mnmze the maxmum completon tme, as s the obectve n ths schedulng problem, rankng method s necessary to rank the fuzzy completon tmes to get the maxmum completon tme. We adopt the followng three crterons to rank two trangular fuzzy numbers t and t ' [12]: Crteron 1. C1( t) = t + 2 * t + t L U If crteron 1 dose not rank the two trangular fuzzy numbers, try the second crteron: Crteron 2. C2( t) = t If crteron 1 and crteron 2 do not rank the two trangular fuzzy numbers, try the thrd crteron: U Crteron 3. C3( t) = t t L IV. AN IPROVED GENETIC ALGORITH In ths schedulng problem, a ob s batch sze s probably greater than one, as n the real manufacturng envronment. By splttng the orgnal batch nto many smaller batches, and regardng every smaller batch as a sngle part, we can process these smaller batches on dfferent resources at the same tme, and the dle tmes of resources wth obs whch have smaller processng tmes by splttng the orgnal batches can be flled up[8]. Thus, an mproved schedule can be obtaned. A genetc algorthm whch s sutable for solvng the formulated problem s proposed. A. Indvdual representaton In creatng the chromosomes, we adopt parallel chromosome codng method, whch can be seen from table Ⅰ and table Ⅱ. Genes n one chromosome represent operatons of the obs, whereas genes n the other represent batch szes of operatons n the former chromosome. We regard those two chromosomes as two aspects of one chromosome. We can see the orgnal batch sze of ob 1 s 20 from table Ⅰ, and we can get that the second and the thrd genes n the chromosome are two batches of the frst operaton of ob 1, because ths s the frst tme that the addton of the two batch szes equals the orgnal batch sze of ob 1. The ffth gene n the chromosome represents the second operaton of ob 1, as the same thng mentoned ust now appears the second tme. TABLE II. TABLE I. AN EXAPLE OF SCHEDULING Job Orgnal batch sze Operaton Job1 20 O1 O2 Job2 15 O1 --- A CHROOSOE FOR THE PROBLE IN TABLEⅠ Operaton Batch Sze A schedule can be obtaned from a chromosome accordng to the followng steps: 1) Set the fuzzy dle tmes of all the resources to zero: END = (0,0,0), ND = (0,0,0) and PND = (0,0,0). END, ND and PND are the fuzzy dle tmes of machne, moulds and workers respectvely. 2) Fnd a gene that has not been scheduled from left to rght n the chromosome. If the operaton the gene represents needs mould, chose the mould that has the earlest dle tme. If the operaton needs machne (or worker), chose the machne (or worker) that completes the whole batch of the operaton wth the earlest completon tme. 3) Calculate the completon tme of the operaton. And adust the dle tmes of the chosen resources to the completon tme of the operaton. 4) Repeat steps 2~3, untl all the operatons n the chromosome are scheduled. 5) Evaluate the ftness. B. ethod for generatng ntal populaton An ntal populaton conssts of a number of chromosomes such as the chromosome n secton 4.1. Random number generaton s appled to keep the dversty n the ntal populaton. Lengths of two chromosomes may be dfferent and may be very long or very short due to randomcty of the method. Consderng that batch szes may be bounded, as n many practcal stuatons[10], here we set lower bound B _mn and upper bound B _max of batch sze to make length of a chromosome sutable. All genes' batch szes n chromosomes cannot be less than B _mn or exceed B _max. C. The ftness functon The obectve n ths schedulng problem s to mnmze the maxmum completon tme. Assume that the maxmum completon tme s C = { C L, C, C U } max max max max. When calculatng the ftness of a chromosome, we use the most lkely completon tme C max : Ftness = C 1 max

4 D. Selecton operator We adopt roulette wheel selecton[13,14] method to select ndvduals to process crossover and mutaton n ths paper. The best ndvdual n the generaton s protected from crossover and mutaton. E. Crossover operator Based on the new chromosome representaton ntroduced n secton 4.1, a new crossover method s proposed. If two parents are chosen, follow the followng steps when processng the crossover procedure: 1) Randomly chose a gene n parent 1. 2) Fnd two segments from parent 1 and parent 2 respectvely, that have the shortest length but contan all the genes havng the same ob and the same operaton as the chosen gene's. Sgn the segment from parent 1 as segment 1 and the other as segment 2. 3) Compare segment1 wth segment 2. (1) If the total batch sze of an operaton of a ob n segment1 s more than t s n segment 2. Subtract the dfference of the total batch sze from batch szes of genes of the same ob and the same operaton n segment 1. If a gene s batch sze s smaller than B _mn, batch szes of the other genes n segment 1 that are of the same ob and the same operaton share ths gene s batch sze alke, and ths gene are removed from segment 1. (2) If the total batch sze of an operaton of a ob n segment1 s less than t s n segment 2. If the dfference of the total batch sze s less than B _mn, batch szes of other genes n segment 1 that are of the same ob and the same operaton share the dfference alke. If the dfference of batch sze s between [ B _mn, B _max ], randomly chose a locaton n segment 1 and nsert a gene wth the same ob and the same operaton and a batch sze of the dfference. If the dfference of batch sze exceeds B _max, randomly generate a number between [ B _mn, B _max] and randomly select a locaton n segment 1 and nsert a gene wth the same ob and the same operaton and a batch sze of the number generated. And ths s repeated untl the dfference of the batch sze s added nto segment 1 totally. 4) The same processes n step 3 are done to segment 2 comparng wth segment 1. 5) Replace the orgnal segment 1 n parent 1 wth the new segment 2, and offsprng 1 s obtaned. Replace the orgnal segment 2 n parent 2 wth the new segment 1, and offsprng 2 s obtaned. Fg.2 llustrates the crossover procedure of the schedulng problem n table Ⅰ. F. utaton operator If one parent s chosen, follow the followng steps when processng the mutaton procedure: 1) Randomly chose a gene n the parent, sgned as gene 1. Fnd a segment that have the shortest length but contan all the genes havng the same ob and the same operaton as gene 1's. 2) Randomly fnd a gene n the segment, sgned as gene 2. If gene 2 s of the same ob as gene 1's, randomly change batch szes of gene 1 and gene 2 wthn [B_mn, B_max], on the condton that the addton s changeless. Else, move gene 1 to where gene 2 s, and gene 2 s moved to the next, as s showed below. Fg.3 llustrates the mutaton procedure of the schedulng problem n table Ⅰ, based on the new chromosome representaton. Fgure 2. Crossover procedure Fgure 3. utaton procedure V. THE EXPERIENT AND ANALYSIS The nformaton of the obs, resources and the relatonshps between operatons and resources of an example of schedulng are shown n table Ⅲ, table Ⅳ and table Ⅴ. TABLE III. JOB INFORATION Job Orgnal batch Bounded Operatons batch szes

5 J 150 O O O J 150 O O O J 200 O O O J 200 O O O O --- O --- J 200 O O O O J [50,100] O O O O O ob 1 wth batch sze 66 starts at tme 3484 and ends at tme The number 13 n brackets appears two tmes n Fg.4, and ths means when processng the thrd operaton of ob 1, the orgnal batch s splt nto two smaller batches where one s batch sze s 66, and the other s s 84. TABLE IV. RESOURCES INFORATION mark symbol E 1 E 2 E 3 E 4 E 5 E 6 E 7 E 8 resource achnes Processng tme for a sngle part mark symbol P 1 P 2 P 3 P 4 P resource Workers Processng tme for a 1,3,5 2,4,6 1,2,3 3,4,5 2,3, sngle part mark symbol resource oulds Processng tme for a sngle part 3,4,5 5,7,9 1,2,3 2,3,4 4,5,6 5,6,7 3,5,7 1,3,5 Fgure 4. Gannt chart on machnes TABLE V. AVAILABLE RESOURCES FOR OPERATIONS Operaton O 1 O 2 O 3 O 4 O 5 O 6 Fgure 5. Gannt chart on moulds oulds 1, 2, 3 4, 5 achnes E 1, E 2 E 3, E 4 E 5, E 6 E 7, E 8 Workers P 1, P 2, P 3 P 4, P 5 Usng the method ntroduced above to solve the schedulng problem whle the crossover rate s 0.75, the mutaton rate s 0.1, and the populaton sze s 50 wth 500 generatons. Results are shown n Fg.4, Fg.5 and Fg.6. We use the most lkely values of completon tmes and start tmes of operatons to draw gannt charts on machnes, moulds and workers n Fg.4, Fg.5 and Fg.6 respectvely. The frst number n brackets on level lnes n those three fgures represents the ob number, whle the second represents the operaton of the ob that the frst number represents. Numbers outsde brackets on level lnes represent batch szes of the operaton. For example, on machne 1 llustrated n Fg.4 means that a batch of the thrd operaton of Fgure 6. Gannt chart on workers The emluator runs eght tmes and results are lsted n table Ⅵ. The ftness value n the table below s obtaned by usng the most lkely completon tme wth the tme unt of the hour converted from the orgnal tme unt of the second.

6 TABLE VI. RESULTS OF THE EXPERIENTS REFERENCES Tmes Ftness value It s obvous that the GA proposed n ths paper s capable of solvng the batch splttng ob shop schedulng problem wth bounded batch szes under multple-resource constrants wth optmal solutons. VI. CONCLUSION Ths paper addressed the batch splttng schedulng problem n manufacturng systems, constraned by machnes, moulds and workers, wth bounded batch szes. A genetc algorthm wth a new chromosome representaton takng nto account the batch splttng of the orgnal batches of obs, a new crossover method and a new mutaton method based on the representaton was proposed to solve the formulated problem. When schedulng, the orgnal batch was splt nto many smaller batches accordng to chromosomes, whch may have dfferent batch szes, and every smaller batch was regarded as a sngle part. An example of schedulng was gven, and the results ndcated that the method was feasble and effcent. The method deals wth ob shop schedulng problem n ths paper, however we can also extend ts applcaton n schedulng problems of other types. ACKNOWLEDGENT Ths work s supported by the Natonal Hgh-Tech Research and Development Program of Chna (No.2007AA04Z155), and the Natonal Scence Foundaton of Chna ( ). [1] Wang Wan-Lang, Wu Q-D, Xu Xn-L. Hopfeld neural network approach ob-shop schedulng problems[j]. Acta Automatca snca, 2002, 28(5): [2] Canddo A B, Khator S k, Barca A B. A genetc algorthm based procedure for more realstc ob shop[j]. Internatonal Journal of Producton Research, 1998, 36 (12): [3] Wang Wan-Lang., Wu Q-D. Prncples and Applcatons of Itellgent Agorthms for Producton Schedulng[]. Be Jng: Scence Press, 2007: [4] Emaraghy H, Patel V, Abdallah I B. Schedulng of anufacturng Systems under Dual- resource Constrans Usng Genetc Algorthms[J]. Journal of anufacturng Systems, 2000,19(3): [5] Chrstoph S. Thomalla*, Job shop schedulng wth alternatve process plans[j]. Internatonal Journal of Producton Economcs, 2001, 74:125~134 [6] Satyak Ghosh Dastdar, Rakesh Nag*. Batch splttng n an assembly schedulng envronment[j]. Internatonal Journal of Producton Economcs, 2007, 105:372~384 [7] L Fu-ng, Zhu Yun-Long, Yn Chao-Wan, Song Xao-Yu. Research on fuzzy ob shop schedulng wth alternatve machnes[j]. Computer Integrated anufacturng Systems, 2006, 12(2): [8] Jeong H, Park J, Leachman R C. A batch splttng method for a ob shop schedulng problem n an RP envronment[j]. Internatonal Journal of Producton Research, 1999, 37(15): 3583~3598 [9] Pan Quanke, Zhu Janyng. Optmzaton ethod for A Job-Shop Schedulng Problem Wth Alternatve achnes n The Batch Process[J]. Chnese Journal of mechancal Engneerng, 2004,40(4): [10] Gur osheov, Danel Oron. A sngle machne batch schedulng problem wth bounded batch sze[j]. European Journal of Operatonal Research, 2008, 187(3): [11] tsuru Kuroda, Zeng Wang. Fuzzy ob shop schedulng[j]. Internatonal Journal of Producton Economcs, 1996, 44(1-2):45-51 [12] asatosh Sakawa *, Ryo Kubota, Fuzzy programmng for multobectve ob shop schedulng wth fuzzy processng tme and fuzzy due date through genetc algorthms[j]. European Journal of Operatonal Research, 2000, 120:393~400 [13] Parker, Paul Bradley. Genetc Algorthms and ther use n geophyscal problems[d]. Berkeley: Unversty of Calforna, 1999 [14] Wang Wan-Lang. Artfcal Intellgence Prncples and Applcatons[]. Be Jng: Hgher Educaton Press, 2006: