240 likes | 471 Views
An algorithm for a Parallel Machine Problem with Eligibility and Release and Delivery times, considering setup times. Manuel Mateo manel.mateo@upc.edu Management Department , Universitat Politècnica Catalunya. Barcelona ( Spain ). HAROSA, Barcelona (10/07/13). Summary.
E N D
An algorithm for a Parallel Machine Problem with Eligibility and Release and Delivery times, considering setup times Manuel Mateo manel.mateo@upc.edu Management Department, UniversitatPolitècnica Catalunya. Barcelona (Spain) HAROSA, Barcelona (10/07/13)
Summary • Introduction: the times, the eligibility and the setup times • Notation and definition of the problem Pm/rj,qj,sj,Mj/cmax • Proposed algorithms • Initial Solution • Heuristic algorithm • Genetic Algorithm (crossover, mutation, local search) • Computational experiments and results • Conclusions Remark: this work is based on the Master Thesis in Engineering done by David Miquel.
Introduction: the times • The manufacturing of products is usually divided in operations or phases of transformation. • Usually one of them becomes the bottleneck of the process. • In the presented problem, we suppose this bottleneckis an intermediate phase. • Therefore, some operations are done before (the total time to work them out leads to a release time) and some others are done after (their total time is called delivery or queue time). bottleneck
Introduction: eligibility • Manufacturing plants usually have several machines or assembly lines (i.e., parallel machine). • There are several products to be manufactured. • A usual situation is a product that is assigned to a machine (line) and will be only manufactured in that machine. Line 1 INITIAL SITUATION Line 2 Line 3 A B C D Line 4
Introduction: eligibility (II) High-level machines B C D • But more product-machine assignments are possible: Line 1 B C D Medium-level machines Line 2 CONSIDERED SITUATION A B C D Line 3 2 l Low-level machines 1 l C D Line 4 2 l Machines Jobs 2 l High-level High-level A Medium-level Medium-level B C Low-level D Low-level
Introduction: thesetup times • There are no setup times if the jobs classified in one level are done in the machines of the same level: • If the jobs in one level are assigned in the machines of different level, setup times appear (between the schedule of jobs belonging to different levels): Machines Jobs High-level High-level Medium-level Medium-level Low-level Low-level Machines Jobs High-level High-level Medium-level Medium-level Low-level Low-level
Notationof the problem The machines are distributed among p groups or levels (k=1,…,p). Particularly, we propose an algorithm for p=3 (high-level, medium-level and low-level). A set of n jobs (j=1,…,n) to be scheduled on m parallel machines (i=1,…,m). Given a job j, it is known: the processing time pjfor the operation, the release time rj(also called head times), the delivery or queue time qj(also tail times), the associated level lj. Any machine i and job jis classified into one of the levels.
Notation of theproblem (II) • The n jobs to be manufactured are also divided in three groups: Ji is the subset of jobs of level i, with |Ji|=ni. n=n1+n2+n3 • Eligibility restrictions: A machine in the level k can manufacture jobs of its own level k and also of levels k+1,…,p. The processing time of a job is the same for any machine. Machines Jobs High, k=1 High-level (k=1) Medium-level (k=2) Medium, k=2 Low-level (k=3) Low, k=3
The problem Pm | rj,qj,sj,Mj| cmax • The number of machines and jobs is initially known. • A schedule is feasible if the next conditions are accomplished: • Each machine processes at most one job at a time. • A job is only processed in a single machine. • Pre-emption is not allowed. • Starting time is not lower than the release time: • A job of level k is processed in a machine of level k or higher. • Setup times are required when a job classified in a level is going to be manufactured after another of a different level. • Machines are initially prepared for the jobs of their own level. • It is not necessary another setup at the end of the last job scheduled if it is from a different level.
The problem Pm | rj,qj,sj,Mj| cmax (II) • The processing in all machines for each job is the same, i.e., we consider identical parallel machines. • Given tjthe starting time for any job j, the completion time of the job is obtained: • The makespan can be determined: cmax= max{cj} • For any feasible schedule, the objective is: Min {cmax}
Proposed algorithms INITIAL SOLUTION METAHEURISTIC Preprocessing HEURISTIC Insertion improvement Flexible improvement Genetic Algorithm (GA)
Initial solution (no setup times) Machines Jobs • At each level (3 times), it is necessary to solve a problem of a single machine (mk=1) or parallel machines (mk>1). High-level High-level Medium-level Medium-level Low-level Low-level • Gharbi & Houari • (2002)
j=j+1 Description of theHeuristic Sequences of jobs: • SPT (shortest processing time) • SRT (shortest release time) • SQT (shortest queue time) • LPT (longest processing time) • LRT (longest release time) • LQT (longest queue time) • 6 random sequences NO YES
Preprocess of the GA 21 21
Fitness General view of theGeneticAlgorithm Initial population: • 1 (Initial solution + insertion + flexible improvements). • 6 (SPT, SRT,SQT, LPT, LRT, LQT) • 73 random sequences (generate 100 sequences + apply the heuristic) Selection: • 10% of individuals with best fitness • 90% roulette rule NO YES
Genetic Algorithm: crossover Crossover • Share many of the characteristics in the parents’ solutions • Pc = 50% Reference: Vallada & Ruiz (2011)
Genetic Algorithm: mutation & local search Mutation • Shift • Pm = 50% (Vallada & Ruiz, 2011) Local search (IMI, Inter-MachineInsertionneighborhood) • Two machines • Pls = 100% • (Vallada & Ruiz, 2011) • Acceptance criterion: • Makespans of both machines are reduced. • Makespan of one machine is reduced, although the other is increased.
Computational experience • To check the efficiency of the algorithm, a set of instances similar to those used by Gharbi & Haouari (2002) are created: • # jobs (n = {20,50,100,200}) • 1000 instances • Jobs of high level, 10-30% of the total number; jobs of medium level, 10-50% of the total; jobs of low level, the rest. • # machines (m = {4,5,6,8,10}) • Processing time: discrete uniform distribution . • Release and delivery times: discrete distribution with K={3,5} • Setup times: 3 sets with uniform distributions of [1, 3], [1, 9] and [1, 19].
Computational experience (II) • Initial study on 220 instances to determine the computing time: balance between the results and the computational cost. CPU time = n · (m/2) · (time) ms • Improvement 5% time = 240 • Complete study on 4000 instances with different configurations of parallel machines to determine the improvement on the cmax of the initial solution.
Someresults • Number of jobs: • Proportion of machines:
Someresults (II) • Window for the setup times: • Influence of the parameter K ={3,5}.
Conclusions from the computational experience • We have not shown the results, but the introduction of the heuristic on the initial population improves the quality of solutions. Once it is introduced: • Some proportions of machines can lead to a improvements of nearly 50%; the best ones are: mh > mm ; mh > ml ml < mh ; ml < mm On the other hand, improvements about 20% are obtained by: mb > mh ; ml > mm mh < mm ; mh < ml • The lower the parameter K is, the greater the improvement is (40% for K=3 and 25% for K=5). • Any number of jobs and any window for setup times give similar results (improvements around 30%).
Conclusions • We studied the problem of parallel machines with eligibility and release and queue times. • The problem has the objective to minimize the makespan. • The setup times are introduced when a job of a different level from the one of the previous one is going to be manufactured. • We proposed a heuristic procedure, based on some initial sequences of jobs. A Genetic Algorithm is developed , which takes the advantages of the heuristic in the preprocess. • Improvement respect to initial solution varies from 20% to 50%. • About the current and future research: • We hope to tune the parameters of the Genetic Algorithms. • Another metaheuristic (for instance ILS) could be developed.
An algorithm for a Parallel Machine Problem with Eligibility and Release and Delivery times, considering setup times Thank you for your attention!