Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Machine scheduling for multitask machining

2018, Journal of Optimization in Industrial Engineering

Multitasking is an important part of today’s manufacturing plants. Multitask machine tools are capable of processing multiple operations at the same time by applying a different set of part and tool holding devices. Mill-turns are multitask machines with the ability to perform a variety of operations with considerable accuracy and agility. One critical factor in simultaneous machining is to create a schedule for different operations to be completed in minimum make-span. A Mixed Integer Linear Programming (MILP) model is developed to address the machine scheduling problem. The adopted assumptions are more realistic when compared with the previous models. The model allows for processing multiple operations simultaneously on a single part; parts are being processed on the same setup and multiple turrets can process a single operation of a single job simultaneously performing multiple depths of cut. A Simulated Annealing algorithm with a novel initial solution and assignment approach is...

Journal of Optimization in Industrial Engineering Vol.13, Issue 2, Summer & Autumn 2020, 1-15 DOI:10.22094/JOIE.2020.1869865.1660 Machine Scheduling for Multitask Machining Saleh Yavari a, Ahmed Azab a,*, Mohammed F. Baki b , Mikel Alcelay a, Justin Britta a Production & Operations Management Research Lab, Faculty of Engineering, University of Windsor, Windsor, Canada b Odette School of Business, University of Windsor, Windsor, Canada Received 28 May 2019; Revised 09 March 2020; Accepted12 March 2020 Abstract Multitasking is an important part of today’s manufacturing plants. Multitask machine tools are capable of processing multiple operations at the same time by applying a different set of part and tool holding devices. Mill-turns are multitask machines with the ability to perform a variety of operations with considerable accuracy and agility. One critical factor in simultaneous machining is to create a schedule for different operations to be completed in minimum make-span. A Mixed Integer Linear Programming (MILP) model is developed to address the machine scheduling problem. The adopted assumptions are more realistic when compared with the previous models. The model allows for processing multiple operations simultaneously on a single part; parts are being processed on the same setup and multiple turrets can process a single operation of a single job simultaneously performing multiple depths of cut. A Simulated Annealing (SA) algorithm with a novel initial solution and assignment approach is developed to solve large instances of the problem. Keywords: Parallel machining; Multitasking; Mill-turn; Mixed integer linear programming; Scheduling; Simulated Annealing. machining locations on a multitask machine (Levin and Dutta, 1996). Commonly used configurations of millturns usually have two spindles applied: a main spindle and a sub spindle (Chiu et al., 1999). These spindles have access to each other so that if a specific part needs a certain type of machining process, it could be easily moved from one spindle to another (Battaïa et al., 2013). Figure 1 shows a work-piece held by the spindle and processed by a cutting tool mounted on a turret. 1. Introduction Although the tendency to benefit from multitasking and parallel machining is increasing considerably in industry, there has not been enough attention in the literature to the topic. Mill-turns are machine tools that are similar to lathes with respect to structure, kinematics, and the usage of spindles as work-piece holding devices, but are different in that they also carry live milling tools in their multiple turrets (Lee and Chiou, 1999). These features make mill-turn machines agile and allow them to machine different work-pieces simultaneously. In addition, millturns are superior to traditional lathes and vertical mills in terms of speed and accuracy. Multitasking enables turning, milling, facing, boring, drilling, and tapping operations to be done on a single setup with minimum processing times (Crichigno Filho, 2012; She and Hung, 2008; Yip-Hoi and Dutta, 1993). A mill-turn machine can process a part which might need three to four different machine tools to be turned into a finished product. Moreover, multitasking usually allows machining the most complex parts in only one setup, which reduces part handling and costs related to extra fixtures and tooling. Two concepts are key to the understanding of multitask machining: the Machining Unit (MU) and the Part Machining Location (PML) (Levin and Dutta, 1992). In mill-turns, machining tools are mounted in turrets (Battaïa et al., 2014). Turrets can mount different cutting tools for both milling and turning operations. Therefore, if a workpiece needs both turning and milling operations, both can be done on only one setup on a single machine tool (i.e., there is no need to use separate milling and turning machine tools). A spindle or a chuck are common *Corresponding author Email address: azab@uwindsor.ca Fig 1. Work-piece held by a spindle and processed by a cutting tool mounted on a turret There are various configurations of mill-turns. Most of the configurations have two spindles. However, in terms of turrets, they could be two or more, each of which could contain several cutting tools. The focus of this research is on the scheduling of operations on mill-turns with dual spindles and dual turrets. Figure 2 shows a common configuration of mill-turns with two spindles as work holding devices and two turrets as machining units. 1 Saleh Yavari et al./ Machine Scheduling for Multitask Machining This work tackles the problem of production scheduling of mill-turn machines considering limitations and abilities that have not been addressed before. The problem of scheduling different operations on millturns is addressed by developing a MILP model. The model optimizes the total make-span and creates a feasible solution for scheduling operations on spindles by applying different turrets. The model also assigns a feasible turret for processing each part. Solving the model generates an optimal solution to schedule different sets of operations on available machines. The model creates a sequence of operations for each job taken into consideration all constraints and capabilities regarding the used parallel machine tools. Due to the NP-complete nature of the problem (Naderi and Azab, 2015), a simulated annealing algorithm (SA) is developed to solve large instances of the problem at hand. An encoding method along with different search operators and mechanisms are proposed to elaborate the mechanism of the algorithm. The remaining of this paper is organized as follows. Section two fully describes the problem. Section three contains the mathematical model along with a demonstrative example. Section four focuses on developing a metaheuristic algorithm. Test cases to evaluate the algorithm and model are provided in section five. Conclusions are presented in section six. Fig. 2. A mill-turn with dual spindles and dual turrets Despite the growing demand in the industry to apply multitasking and parallel machining, research done on the scheduling problem is quite limited. There has not been much literature on the problem of scheduling operations on mill-turns in comparison with traditional parallel machine scheduling problems (Fanjul-Peyro et al., 2017; Low and Wu, 2016; Rajkanth et al., 2017). Miller (1989) and Miska (1990) introduce a new class of machines that can machine parts in less time and with fewer setups. Levin and Dutta (1992, 1996) propose process planning and sequencing of parallel machine tools. Yip-Hoi and Dutta (1993, 1995) discuss important components of multitasking, which are key to process planning. Azab and Naderi (2014) provide a variable neighborhood search metaheuristic for the problem of scheduling operations for multitask machining. They do not model the problem mathematically to define the capabilities and limitations of parallel machines. Furthermore, the capacity of turrets to simultaneously process a specific operation of a single job on a single machine, mode of operations, and concepts of single setup (done-in-one) were not considered in their study. Yip-Hoi and Dutta (1996) suggest a genetic algorithm to achieve an optimum completion time for all operations. However, no mathematical model is proposed to further extend the problem for larger and more complicated instances. Norman and Bean (2000) present a small size model for the problem of scheduling mill-turns and consider a shop where one work-piece is machined and scheduled. The capacity of machines in terms of applying multiple turrets for a single operation is not considered. Chiu et al. (1999) solve the problem of sequencing and scheduling operations on parallel machines for a shop with one part and one machine. In their study, operations are scheduled irrespective of the rotation of spindles and cutting tools and its effect on the final sequence. A Mixed Integer Linear Programming (MILP) model is developed by Naderi and Azab (2015). They formulate a mathematical model that does not consider the mode of operations and how it could affect the number of operations processed simultaneously on a single spindle. Also, the capacity of turrets to simultaneously process a specific operation of a single job on a single machine is not considered. 2. Problem Definition There are many features that should be considered when modeling mill-turns. There are aspects of mill-turns that distinguish them from other machine tools. Features like pinch turning, operation mode and concepts of single setup will be explained in detail to further explore the physics of these machine tools and identify possible areas for improvements. Some of these features are basic concepts related to the mechanism of mill-turns and constitute the overlap in previously proposed models in the literature. These concepts include precedence relationships, capacities of spindles and turrets, and limitations of spindles and turrets for holding and processing parts. The scheduling problem consists of n jobs and m machines. Each job has a different set of operations and precedence relations. Each operation could have one or two sets of different predecessors and successors. Millturn machines, which are considered for scheduling, have two work holding devices (spindles) and two machining units (turrets). Spindles and turrets have limitations associated with the loading and processing of parts. Each turret can process one job and operation at any time, and spindles can hold at most one job (part) at a time. One work-piece can be loaded on one spindle at a time. Turrets have some limitations in terms of cutting tools mounted on them and other restrictions regarding live tooling and cutting speed. Therefore, each turret is capable of machining a different set of operations. Each of these turrets can have access to both spindles (i.e., they could work separately or together on the same spindle). Spindles 2 Journal of Optimization in Industrial Engineering Vol.13, Issue 2, Summer & Autumn 2020, 1-15 spindle is not required. Mill-turns can load bar stock and raw material automatically through a bar feeder. Therefore, it is assumed that no setup times are required. also have some limitations in terms of holding parts. Hence, all spindles are not allowed to hold all jobs. Operations processed on a mill-turn machine are affected by the rotation of the work-piece and the cutting tools mounted on the turrets. There are two major types of operations: ones which need the rotation of the work-piece, such as turning and facing, and those which require the rotation of cutting tools, such as milling and drilling. Two operations of the same job and the same mode (rotation of either work-piece or cutting tool) can be processed simultaneously on a single spindle. In other words, it is necessary for two operations having the same mode to be machined simultaneously by two different turrets on a single spindle. This feature is known as the operation mode in the literature. The mode of operations is in direct relation to the rotation of spindles. Turning operations need the rotation of the spindle and the workpiece held by it, whereas milling operations need the rotation of the cutting tool and the spindle could be stationary. Therefore, these two operations cannot be processed simultaneously on a single part. However, in the world of multitask machining, turnmilling is a different type of processing in which both the work-piece mounted in the spindle and the live milling tool rotates at the same time (Choudhury and Mangrulkar, 2000). The reason to apply turn-milling instead of turning operations is that turn-milling provides less contact time between the cutting tool and the part; therefore, there will be less heat produced during the machining process and the life of the cutting tool will increase (Savas and Ozay, 2008). Turrets are not only capable of processing different operations of a single job, but they also have the ability to work simultaneously on the same operation and hence accelerate the process of machining the operation (Calleja et al., 2015; Lu et al., 2011). This feature is called pinch turning. The procedure is such that one cutting tool starts removing the material from the outside diameter of the part and the other cutting tool is idle at the beginning. Next, after a very short hesitation, the other cutting tool starts the machining procedure from the opposite side of the part. This halves multiple movements of turrets and cutting tools and thus reduces processing times considerably. Machining the product from raw material to a finished part on only one setup is another key feature of mill-turn machines. This feature removes the movements of parts from one machine to another and has a major effect on reducing costs related to part handling and incurred additional setup costs. It is assumed that machining procedures of different operations are not interrupted by any means and that there is no preemption. The parts considered for machining are assumed to be finished on a single spindle and the application of a sub- 3. Methodology In this section, the MILP model and a demonstrative example are presented. 3.1 Mathematical model The outcome of the model is a feasible sequence and schedule for each operation of each job. A specific turret and spindle are required to be assigned to each operation and an optimum start time of each operation based on precedence relations needs to be determined. Moreover, the model is flexible enough to generate plans for a different number of jobs and operations with multiple machines used for processing them. The model seeks the best assignments to optimize the make-span subject to several constraints. The assumptions, parameters, decision variables, objective function, and constraints used to develop the mathematical model are as below. Assumptions:  Each operation is assigned to one machine.  On a machine tool, an operation is assigned to one spindle.  Spindle engagement determines the number of active turrets (N) engaged in performing each operation, where N ≤ 2.  If a spindle is loading two operations simultaneously, then those operations should be of the same type.  Each spindle can hold one job at a time.  Each job is loaded on one spindle at a time.  Each turret can process one operation of a job at a time.  Precedence relations among operations of each job must be satisfied.  No delay or pause is allowed between consecutive scheduled operations.  If a job is assigned to a spindle as part of a setup on a machine tool, its operations will also be assigned to the same spindle of the same setup on the same machine tool. Parts are assumed to be processed on a single setup where only one spindle used and no movement of parts between machines is allowed.  The application of a sub-spindle or a tailstock is not required. 3 Saleh Yavari et al./ Machine Scheduling for Multitask Machining Parameters: m n e ki hi lj total available machines i=1, 2…m total jobs to be scheduled j=1, 2…n spindle turret engagement e=1, 2 count of spindles of machine i k=1, 2 count of turrets of machine i h=1, 2 count of operations of job j l=1, 2… lj spindles, capable of loading job j on machine i turrets, capable of processing job j on machine i machining time of operation l of job j on machine i number of turrets used for processing each operation at a time binary parameter taking the value of 1 if operations l and l' of job j are different types of operation and 0 otherwise Decision variables: The following continuous and binary decision variables are defined. Continuous decision variable Start time of operation l of job j Binary decision variables 1 if job j is processed on machine , 0 otherwise 1 if operation l of job j is processed on machine , 0 otherwise 1 if operation l of job j is processed on spindle turret engagement e of spindle k of machine , 0 otherwise 1 if operation l of job j is processed on turret h of machine , 0 otherwise 1 if job j is processed on spindle k of machine , 0 otherwise 1 if operation l of job j is processed after operation l' of job j, 0 otherwise 1 if operation l of job j is processed after operation l' of job j’, 0 otherwise The objective function for the MILP model is to minimize the total completion times of all operations on all machines: ∑∑ ∑ Min ∑ where is the maximum completion time. The model considers all available machines and machining times of different operations and seeks the best sequence of operations on each machine to minimize the make-span. Constraints (3) and (4) assign each job, each of which consists of a different set of operations, to one machine and spindle. Constraints (1) and (2) are provided to ensure that each operation is processed by one spindle-turret engagement, one spindle, and one machine. The parameter e defines the capacity of the spindle in terms of loading different operations. Assuming both of the available turrets work on a single operation, spindles at any time have the capacity to load at most two operations. ∑ ∑ ∑ 4 Journal of Optimization in Industrial Engineering Vol.13, Issue 2, Summer & Autumn 2020, 1-15 Constraints (5) define the number of turrets used for processing operations of each job. N is the parameter that defines the number of turrets working on a specific operation. Some operations, like turning, have the capacity to be processed by two turrets to achieve a faster pace in the machining procedure. ( ( { ) ) { Constraints (6) and (7) prevent simultaneous machining of two operations of the same job if they are not of the same type. ( } ( ) } ( ) ) ( { } ) ( { ( ) ( ) ( } { ) (6) ) ( (7) defines if two operations are of the same type or not. If two operations of the same job are of the same type, W takes the value of zero and otherwise takes the value of one. ( ) ( ) ) ( } { ) ( ) Constraints (8) to (11) are provided to allow for simultaneous machining of two different operations of the same job only if they are of the same type (either rotation of the spindle or the cutting tool). W is the parameter that ( (5) ∑ ∑ ) } ( ( ) ) (11) Constraints (12) and (13) are provided to prevent each spindle from holding more than one job at any time. ( { { ( ) } ) } ) ( ) ( ( ) ( ) (12) (13) Constraints (14) and (15) state that each of the turrets used for machining purposes is capable of processing one operation at a time. 5 Journal of Optimization in Industrial Engineering Vol.13, Issue 2, Summer & Autumn 2020, 1-15 DOI:10.22094/JOIE.2020.1869865.1660 { } { } ( ( ) ) ) ( ) ( ( ) ( (14) ) (15) Constraints (16) and (17) indicate that each turret has the capability to process one work-piece at a time. { ( ( } ) { ) ( ) ( ) } ( ( ) ) Constraints (18) are provided to satisfy the precedence relations between operations of each job. { } Constraints (19) and (20) are to assure that each job is assigned to a spindle and a turret that is capable of holding and/or processing that job. { { } } Constraints (21) to (24) state that if a job is assigned to a machine, then its operations are also assigned to the spindles, turrets, and capacities of the same machine. { { { } } } Constraints (25) determines the maximum completion time of each operation 6 (24) Journal of Optimization in Industrial Engineering Vol.13, Issue 2, Summer & Autumn 2020, 1-15 (25) + Constraints (26) to (31) outline the decision variables. { } { { { (27) } (28) } (29) { } (30) { } (31) } { (32) } (33) W1,2,4={ }, which means operation two and four of job one are of the same type of operation (either milling or turning). This mechanism is the same for operations three and five of job one (O1,3 and O1,5) and operations three and four of job three (O3,3 and O3,4). For job two, operations two and three are processed by two turrets on spindle number one of machine two. This is the concept related to processing a single operation of a single job by multiple turrets. The information regarding the number of turrets needed for processing each operation is provided. N2,3={ } means operation number three of job two needs two turrets for machining. The parameter N for the rest of operations and jobs is one. Each job has a different processing time on each machine. and the information regarding processing times is provided in Error! Reference source not found.. Another feature that is included in this illustrated example is the single setup concept, which involves completing all jobs without transferring them to other machines. For example, job one and three are completed on machine one and job two is processed on machine two. The total completion time of all operations on all machines (Cmax) is 20 seconds. The model will seek for the best allocations according to the information provided to complete the machining of all operations in the minimum amount of time. 3.2 Demonstrative example It is assumed that there are two machines (m), three different jobs (n), and that each job has a different number of l operations. One possible schedule is shown in Figure 3. Each spindle is capable of holding a different series of jobs. For instance, S3,2= { }, which means there is no spindle on machine two which can hold job three. This is reflected in the final schedule where job three is scheduled on machine one. In this example, all turrets are assumed to be able to process all jobs for simplification purposes (Tj,i={ }). However, the set of turrets capable of processing a particular type of job can vary, and the model is capable of distinguishing them. Precedence relations between operations (Rjl) must be satisfied when a schedule plan is created. For instance, operation three of job two has a precedence operation which is operation number two: R2,3={ }. If two operations of the same job do not have a necessary precedence to be satisfied, they might start at the same time or their schedule might overlap only if they have the same operation mode. In order to check the operation mode, the model will refer to the data available for . As shown in Figure 3, operations four and two of job one (O1,2 and O1,4) have an overlap because O1,2 and O1,4 do not have precedence relations with each other. Also, 7 Saleh Yavari et al./ Machine Scheduling for Multitask Machining The following data are assumed for a set of jobs and machines to be scheduled. m=2 S1,1={ } T1,1={ R1,1={ } n=3 S1,2={ } T1,2={ R2,1={ } R3,1={ } } } R1,2={ } R2,2= { } R3,2={ } lj= { S2,1={ } T2,1={ R1,3={ } } S2,2={ } T2,2={ R1,4={ } R2,3={ } } S3,1={ } T3,1={ R1,5={ } } } S3,2={ } T3,2={ } R3,3={ } R3,4={ } Table 1 Processing times for the demonstrative example job machine 1 2 3 Operation 1 2 3 4 5 1 3 6 2 7 3 2 3 9 4 3 6 1 4 8 6 - - 2 4 7 5 - - 1 7 2 4 5 - 2 8 5 8 6 - N1,1={ } N1,2={ } N1,3={ } N1,4={ } N1,5={ } N3,1={ } N3,3={ } N2,1={ } W1,1,2={ } W2,1,2={ } W3,1,2={ } N2,2={ } N3,2={ } N2,3={ } N3,4={ } W1,2,3={ } W1,3,4={ } W2,2,3={ } W1,4,5={ } W1,2,4={ } W1,3,5={ } W3,2,3={ } W3,3,4={ } Fig. 3. Resultant schedule for the example 8 Journal of Optimization in Industrial Engineering Vol.13, Issue 2, Summer & Autumn 2020, 1-15 4. Simulated Annealing solutions for the problem with a negative exponential distribution where (Metropolis et al., 1953). T is the parameter related to the acceptance criteria. At lower temperature values, worse solutions have lower chances of being accepted. The function T =αT is used to reduce the temperature, where α is considered as the rate at which temperature is decreased. Since the problem is computationally intractable, a metaheuristic algorithm is developed to solve larger sets of the problem. SA functions based on concepts related to annealing procedures and is used for optimization purposes (Černý, 1985; Kirkpatrick et al., 1983). As shown in the flowchart in Figure 4, SA uses a framework that helps the algorithm to avoid getting surrounded by local optima. It provides a scheme to accept worse Fig. 4. Flowchart for Simulated Annealing { } means the first job has three operations, sequence { } means the second job has five operations, { } means the third job has three operations, and { } means job number four has four finally operations. One initial solution with these four jobs and their following operations could be }. To create such a I= { } is solution, an initial random order of jobs I= { created. Next, each job is repeated to the number of its operations. In this example, job number four has four operations. Therefore, it is repeated four times. Job 4.1. Initialization An initial solution determines the first sequence at which operations are to be scheduled. The assignments of operations to machines, spindles, and turrets are done through a set of directions as shown in Figure 5. To tackle this problem, an initial random order of available jobs to be scheduled is created. Next, in order to apply the single setup concepts, each job is repeated to the number of its operations. For instance, consider four jobs (n=4) where each job has { } In this the following number of operations: 9 Saleh Yavari et al./ Machine Scheduling for Multitask Machining  number two has five operations and is repeated five times and so on. This mechanism is showed in Figure 5, where a random sequence of jobs (J) is created and called r. Each job will then be repeated as many times as its operations starting from the first job and put into an empty string called q. Upon creation of the initial solution, it is put into a matrix M, which controls the assignment of operations on spindles, machine tools, and turrets. The variable number of columns in the matrix M is the total number of operations (le) of all jobs. M always has seven rows that are structured as follows:  Row one: List of operations (e.g., for the for the initial solution ) Row two: Order in which operations are assigned, which may not be sequential due to precedence relations and is determined last based on the information in the other rows  Row three: Machine number assigned to each operation  Row four: Spindle dedicated to each operation  Row five: Turret(s) used for processing each operation  Row six: Start time of each operation  Row seven: Finish time of each operation For the initial solution , the matrix M has seven rows and fifteen columns (total number of operations of all jobs). Once the initial solution is created and operations are listed in the matrix M, the rest of the assignment procedure will start through a set of rules. Figure 5. The flowchart for the initialization phase 10 Journal of Optimization in Industrial Engineering Vol.13, Issue 2, Summer & Autumn 2020, 1-15 DOI:10.22094/JOIE.2020.1869865.1660 Small instances are used to assess the mechanism and complexity of the mathematical model as well as the algorithm. By testing larger instances of the problem, the performance of the proposed algorithm is assessed. The relative percentage deviation (RPD) method is used to analyze the SA algorithm. The calculation for RPD depends on the size of the instance. 4.2. Neighborhood search For the proposed metaheuristic algorithm, three different move operators are applied as neighborhood search structures. In each move operator, two different job numbers in the solution are chosen at random. For each move operator, the following action is then performed:  Swap: The positions of the two job numbers are changed.  Reversion: The order of job numbers, including the two jobs already selected, are reversed.  Insertion: One of the job numbers is moved to the position right after the other. To demonstrate how each move operator works, assume that there are six jobs and that the order of the job }. Furthermore, numbers to be scheduled is A={ define B as the order of the job numbers after applying a move operator. In addition, if a move operator requires two random job numbers to be selected, then assume that jobs two and three are chosen. For each move operator, the result B of applying the move operator under these assumptions to A is as follows: }.  Swap: B={ }.  Reversion: B={ }.  Insertion: B={ The method applied in this work is a mixed operator in which one random move operator is chosen for creating a new solution. This approach enables the algorithm to try different random solutions and discover the best sequence. For a small instance, RPD considers the minimum solution obtained from the MILP model and compares it with the SA algorithm solution: ×100 For a large instance, RPD is calculated as: ×100 FICO Xpress Optimization software version 7.6 is used to algebraically model the problem at hand. Each run is set to terminate after 2000 seconds. SA is executed in MATLAB version R2015a on a PC with 3.2 GHz Intel Core 5 and 12 GB of RAM. 5.2 Size Complexity of the MILP The mathematical model is evaluated through the size of the problem and number of decision variables and constraints applied in the model. In order to determine the size complexity, it is assumed that there are n jobs where all jobs have the same number of l operations. It is assumed each job has two sets of precedence relations among its operations and there are machines in which all machines have dual spindles (S) and turrets (T). Each operation is assumed to need one turret for machining purposes (N=1) and all operations are considered to be the same type (W=0). For different problem instances tested using FICO Xpress, Table 2 shows the results for the size complexity of each problem instance. 5. Test Cases In this section, the MILP model is evaluated. In addition, the SA algorithm is tuned and then tested. 5.1 Input Data, Implementation Performance Measures, and Eight test cases of different sizes are used to evaluate the MILP model and the SA algorithm. Full data for all instances are available in the online data repository associated with this paper. Table 2 Size complexity for the proposed model Job Operation Machine Binary variables Continuous variables Constraints 5 5 3 821 25 9,965 10 5 3 2,266 50 34,930 15 5 5 5,176 75 124,455 15 10 5 19,726 150 991,380 20 10 10 31,301 200 1,721,840 11 Saleh Yavari et al./ Machine Scheduling for Multitask Machining possible values are tested: 250, 125, and 65. The selected value has the lowest average RPD and is shown in bold. The sensitivity analysis shows that RPD generally tends to rise with a decrease in the total outer loop iterations. However, this is not true for all test cases. For instance, the average RPD for test four, which has ten jobs and five machines, has decreased by the change in the outer loop iterations from 250 to 125. It could be discussed that the initial solution of the problem affects the inner and outer iterations required to find the near-optimum solutions. The initial solution created for this algorithm creates an initial random order of operations of each job to be scheduled. Based on the initial order, the first objective function value will be calculated and set as the best solution found so far. Therefore, the number of iterations required to find improved solutions in the neighborhood of the initial solution will affect the mechanism of the algorithm along with the four other parameters. 5.3 Parameter tuning SA has four parameters: maximum inner loop iteration or fix, annealing temperature (T), temperature reduction rate (α), and move operators. Naderi and Azab (2015) develop a similar SA algorithm and tune the parameter values using Taguchi design of experiments with the following levels:  Inner Loop Iterations: 10, 50, 100  Annealing Temperature: 50, 200, 500  Temperature Reduction Rate: 0.95, 0.97, 0.99  Move operators: Shift, swap, mixed The selected values have the lowest RPD and are shown in bold. In addition to these parameters, a value for the number of iterations per outer loop must be chosen. Table 3 and Figure 6 show the computational results for a sensitivity analysis conducted for this parameter. In the analysis, the tuned parameter values shown in bold are used. Three Table 3 Sensitivity of the outer loop iteration for the proposed SA Size complexity Computational results Average RPD /65 iteration Test No. n m Average RPD /250 iteration Average RPD /125 iteration 1 4 2 0.52632 0.70175 2 5 3 0.41237 0.61856 0.41237 3 10 3 3.07692 3.33333 3.93162 4 10 5 6.10390 5.97403 7.14286 5 15 3 3.42723 3.89671 3.66197 6 15 5 5.08772 5.26316 5.55556 7 20 3 2.12219 2.66881 3.18328 8 20 5 3.02789 3.18725 4.10359 2.97307 3.20545 Average 0.70175 3.58662 Fig. 6. Variation of RPD for different test cases with change in the outer loop iteration 12 Journal of Optimization in Industrial Engineering Vol.13, Issue 2, Summer & Autumn 2020, 1-15 DOI:10.22094/JOIE.2020.1869865.1660 RPD tends to rise and peaks in the case with 10 jobs and 5 machines. Although the size increment of the problem has affected the average RPD, this is not the case for all test cases. Therefore, it can be concluded that the size complexity has not affected the performance of the proposed algorithm. Another point that can be obtained from the results is that RPD tends to rise with increment in the number of machines applied. The average of the RPDs obtained from the test cases is compared with the work of Naderi and Azab (2015). The average results of the RPDs are better than the only SA algorithm applied so far for the problem of scheduling multitask machines. The average standard deviation for test cases is less than 3.6, which is also a reasonable quantity for such an NP-complete problem. 5.4 Performance evaluation of the algorithm SA is tested for small to larger instances. The SA results for small instances are compared with those obtained from the objective function of the mathematical model. For large instances, the results of the SA algorithm are compared with the previous works in the literature. Regardless of the size of the instance, the parameter values shown in section 5.3 are used in the proposed algorithm. For small instances, four and five jobs are considered. For large instances, ten, fifteen and twenty jobs are selected. Each test case is tested for ten runs. The results of the implemented algorithm are provided in Table 4 and Figure 7. It is shown that the SA algorithm provides the lowest RPD for small instances. As the instance size increases, Table 4 Computational results for SA Size complexity Computational results Test No. n m Standard Deviation Average RPD (%) 1 4 2 0.25000 0.52632 2 5 3 0.42164 0.41237 3 10 3 3.71782 3.07692 4 10 5 3.36815 6.10390 5 15 3 5.59861 3.42723 6 15 5 6.01941 5.08772 7 20 3 4.83506 2.12219 8 20 5 5.08156 3.02789 3.66153 2.97307 Average Fig. 7. The number of jobs versus the average RPD of SA 6. Conclusions 13 Saleh Yavari et al./ Machine Scheduling for Multitask Machining In this paper, the problem of scheduling operations on mill-turn machines is studied. The capacity of mill-turns in terms of simultaneous machining, high accuracy, and cycle time reduction makes them a suitable choice for today’s manufacturing plants and shops. According to the literature, the focus of the limited research done so far on mill-turns has been on computer-aided process planning and issues related to it. The literature review also revealed that some critical features, such as the application of pinch turning, single setup, and definitions regarding the mode of operations, are absent in the previously proposed scheduling models. The problem is addressed through a MILP model. The model considers more realistic and practical features of these machines in comparison with previous works in the literature. Small test cases are developed in order to evaluate the proposed mathematical model. The complexity of the model in terms of decision variables and number of constraints applied is also evaluated. Due to the intractable combinatorial nature of the problem, a metaheuristic SA algorithm is developed to solve larger instances of the problem up to 20 jobs and 5 machines. Test cases show that SA is capable of solving all instances provided with the ability to solve some instances with less than one relative percentage deviation. The developed approach outperformed its counterparts in the literature; an average RPD of 2.97%, which is 0.23% improvement over the closest comparable approach. In this research, a dual-spindle and dual-turret class of mill-turns is considered as a representative of a wide variety of these machine tools. Therefore, other configurations also need to be studied thoroughly as future work. Dual-spindle three-turret mill-turns or dualspindle four-turret configurations are among those settings. These can be further explored to develop a model that represents their specific kinematics and mechanisms. Furthermore, attributes related to machining parameters, such as cutting speed and depth of cut and their effect on the scheduling problem, could also be further considered to cover other perspectives of mill-turns that have not been fully studied before. Battaïa, O., Gurevsky, E., Makssoud, F., & Dolgui, A. (2013). Equipment location in machining transfer lines with multi-spindle heads. Journal of Mathematical Modelling and Algorithms in Operations Research, 12(2), 117-133. Calleja, A., Fernández, A., Rodríguez, A., de Lacalle, L. N. L., & Lamikiz, A. (2015). Turn-milling of blades in turning centres and multitasking machines controlling tool tilt angle. Proceedings of the Institution of Mechanical Engineers, Part B: Journal of Engineering Manufacture, 229(8), 1324-1336. Černý, V. (1985). Thermodynamical approach to the traveling salesman problem: An efficient simulation algorithm. Journal of optimization theory and applications, 45(1), 41-51. Chiu, N. C., Fang, S. C., & Lee, Y. S. (1999). Sequencing parallel machining operations by genetic algorithms. Computers & Industrial Engineering, 36(2), 259-280. Choudhury, S. K., & Mangrulkar, K. S. (2000). Investigation of orthogonal turn-milling for the machining of rotationally symmetrical work pieces. Journal of Materials Processing Technology, 99(13), 120-128. Crichigno Filho, J. M. (2012). Prediction of cutting forces in mill turning through process simulation using a five-axis machining center. The International Journal of Advanced Manufacturing Technology, 58(1-4), 7180. Fanjul-Peyro, L., Perea, F., & Ruiz, R. (2017). Models and matheuristics for the unrelated parallel machine scheduling problem with additional resources. European Journal of Operational Research, 260(2), 482-493. Kirkpatrick, S., Gelatt, C. D., & Vecchi, M. P. (1983). Optimization by simulated annealing. Science, 220(4598), 671-680. Lee, Y. S., & Chiou, C. J. (1999). Unfolded projection approach to machining non-coaxial parts on mill-turn machines. Computers in Industry, 39(2), 147-173. Levin, J. B., & Dutta, D. (1992). Computer-aided process planning for parallel machines. Journal of Manufacturing Systems, 11(2), 79-92. Levin, J. B., & Dutta, D. (1996). PMPS: A prototype CAPP system for parallel machining. Journal of Manufacturing Science and Engineering, 118(3), 406-414. Low, C., & Wu, G. H. (2016). Unrelated parallel-machine scheduling with controllable processing times and eligibility constraints to minimize the makespan. Journal of Industrial and Production Engineering, 33(4), 286-293. Lu, K., Jing, M., Zhang, Y., & Liu, H. (2011). Industrial applications of chatter stability prediction and monitoring system for turning processes. 2011 IEEE International Conference on Mechatronics and Automation, IEEE Press, 1923-1927. Metropolis, N., Rosenbluth, A. W., Rosenbluth, M. N., Teller, A. H., & Teller, E. (1953). Equation of state calculations by fast computing machines. The Journal of Chemical Physics, 21(6), 1087-1092. Acknowledgements A. Azab research is supported by Natural Sciences and Engineering Research Council (NSERC) grant number: 811008, 817019; M.F. Baki’s research is funded by Research and Teaching Innovation Fund (RTIF) and Natural Sciences and Engineering Research Council (NSERC) Discovery Grant. References Azab, A., & Naderi, B. (2014). A variable neighborhood search metaheuristic for cellular manufacturing with multitask machine tools. Procedia CIRP, 20, 50-55. Battaïa, O., Dolgui, A., Guschinsky, N., & Levin, G. (2014). Combinatorial techniques to optimally customize an automated production line with rotary transfer and turrets. IIE Transactions, 46(9), 867-879. 14 Journal of Optimization in Industrial Engineering Vol.13, Issue 2, Summer & Autumn 2020, 1-15 milling using genetic algorithm. The International Journal of Advanced Manufacturing Technology, 37(3-4), 335-340. She, C. H., & Hung, C. W. (2008). Development of multiaxis numerical control program for mill—turn machine. Proceedings of the Institution of Mechanical Engineers, Part B: Journal of Engineering Manufacture, 222(6), 741-745. Yip-Hoi, D., & Dutta, D. (1993). Issues in computeraided process planning for parallel machines. Advances in Design Automation, 65, 153-161. Yip-Hoi, D., & Dutta, D. (1995). Data extraction from geometric models for process planning for parallel machines. Journal of Manufacturing Systems, 14(5), 307. Yip-Hoi, D., & Dutta, D. (1996). A genetic algorithm application for sequencing operations in process planning for parallel machining. IIE transactions, 28(1), 55-68. Miller, P. C. (1989). Lathes turn to other tasks. Tooling & Production, 54(12), 54-60. Miska, K. H. (1990). Driven tools turn on turning centers. Manufacturing Engineering, 104(5), 63-66. Naderi, B., & Azab, A. (2015). Modeling and scheduling a flexible manufacturing cell with parallel processing capability. CIRP Journal of Manufacturing Science and Technology, 11, 18-27. Norman, B. A., & Bean, J. C. (2000). Scheduling operations on parallel machine tools. IIE Transactions, 32(5), 449-460. Rajkanth, R., Rajendran, C., & Ziegler, H. (2017). Heuristics to minimize the completion time variance of jobs on a single machine and on identical parallel machines. The International Journal of Advanced Manufacturing Technology, 88(5-8), 1923-1936. Savas, V., & Ozay, C. (2008). The optimization of the surface roughness in the process of tangential turn- This article can be cited: Yavar, Saleh, et al. (2021). Machine Scheduling for Multitask Machining, Journal of Optimization in Industrial Engineering. 13 (2), 1-15 http://www.qjie.ir/article_673169.html DOI:10.22094/JOIE.2020.1869865.1660 15