Balancing lines with CNC machines: A multi-start ant based heuristic

We are working on a machining line balancing problem involving specific constraints. The studied lines are paced and serial, i.e. a part to be machined passes through a sequence of stations. The stations are equipped with CNC (Computer Numerical Control) machines. A CNC machine is a mono-spindle head machine which can use sequentially different tools and can rotate the part in order to perform different tasks. Such a machine is guided by a computer numerical controller system. As usual with machining lines, this problem is subject to precedence constraints as well as exclusion and inclusion constraints. Moreover, the station workload depends on the sequence in which the tasks are assigned because of set-up times related to the change and displacement of tools, rotation of the part, etc. In addition, accessibility constraints have to be considered. Two types of CNC machines with different characteristics can be used. Several tasks require a particular type of machine. The objective is to assign a given set of tasks, required for part machining, as well as a given set of machines to a sequence of stations while minimizing the total cost of the line. In this paper, a multi-start heuristic is proposed and tested on real life industrial problems.


Introduction
The optimization of production systems is an important stage for manufacturers to minimize costs and remain competitive.Transfer line, is a widely used production system in machining environment especially in the automotive industry.They are used for mass production thanks to their characteristics.A transfer line is composed by a set of sequentially arranged workstations.A constant flow of parts is ensured by a transport system.Parts move from station to another and in each station, a set of machining operations is performed on each.Each operation is characterized by an operational time; a set of operations which must be assigned before it (precedence constraints); a set of operations which must be executed on the same workstation (inclusion constraints); a set of operations which cannot be executed on the same workstation (exclusion constraints).
However, in the current economic context, with market volatility and fluctuation in demand, industrials manufacturers need more flexible production systems.Thus, new types of lines were created; i.e. flexible and reconfigurable transfer lines.The flexibility or the reconfigurabilty of a line is obtained through the use of special machines, a developed control system for the line, a specific architecture, etc. [30].
The use of Computer Numerical Control (CNC) machines is a common way to add more flexibility or reconfigurability to a machining line.Such machines are highly automated and use computer programs to define the different tools to use for a specific part.Therefore they correspond to standard and interchangeable units in which a new program can be loaded to change the production.However, these advantages have a cost with respect to productivity and they induce particular constraints to deal with when designing the line.In this paper, we consider a machining line using CNC machines working with mono-spindle heads.So in addition to the usual constraints of transfer line balancing problems, we have to consider accessibility constraints, parallel stations and sequence-dependent set-up times.
According to the position of the part on the machines, accessibility constraints are defined.For a specific part position only a subset of operations can be executed.Parallel stations are used in order to obtain a better balancing.Set-up times are due to various causes, namely: the change and displacement of the tool, rotation of the part, etc.They vary according to the sequence in which the operation is assigned.Our main objective is to minimize the total cost of the line for a given cycle time.This work is developed in collaboration with the enterprise PCI-SCEMM and corresponds to a real industrial problem.
A heuristic based on Ant Colony Optimization (ACO) principles is proposed for the resolution of the considered problem.An industrial case is studied and experimentation results are reported.
We are working on a machining line balancing problem involving specific constraints.The studied lines are paced and serial, i.e. a part to be machined passes through a sequence of stations.The stations are equipped with CNC (Computer Numerical Control) machines.A CNC machine is a mono-spindle head machine which can use sequentially different tools and can rotate the part in order to perform different tasks.Such a machine is guided by a computer numerical controller system.As usual with machining lines, this problem is subject to precedence constraints as well as exclusion and inclusion constraints.Moreover, the station workload depends on the sequence in which the tasks are assigned because of setup times related to the change and displacement of tools, rotation of the part, etc.In addition, accessibility constraints have to be considered.Two types of CNC machines with different characteristics can be used.Several tasks require a particular type of machine.The objective is to assign a given set of tasks, required for part machining, as well as a given set of machines to a sequence of stations while minimizing the total cost of the line.In this paper, a multi-start heuristic is proposed and tested on real life industrial problems.

Preliminary design of transfer line
Usually for this type of project, the procedure is as follows: a company (client) contacts the transfer line manufacturer.The client gives the parts properties (part plans, characteristics, etc.) and the required output (production rate).Then comes the critical phase: the manufacturer should quickly offer a complete preliminary design solution for the corresponding line: architecture of the line, number of machines, etc. and an approximate line cost.The acceptance of this solution by the client, and consequently the continuation of the negotiation and further development of the project, depends on the quality of this early solution.The temporal progress of the negotiation process and its critical phase are illustrated in Fig. 1.
The manufacturer's objective is to reduce the preliminary design time while minimizing the cost of the potential line.This is decisive, due to high competition among manufacturers in this domain.Moreover, these lines are technically very complex and require huge investments.
If a preliminary solution is more expensive than those of the competitors, then the contract (several hundred million euros) may be lost.If this is cheaper, then the manufacturer increases the chances to obtain the contract.However, if the proposal is not feasible, because some constraints were not considered due to the lack of time, then this can generate additional costs for the manufacturer in correcting the solution.Therefore, this contract may be not profitable.Thus, the manufacturer is under a deadline to produce an initial feasible solution at the lowest possible cost within a very short time period.
In addition, after the preliminary design, almost always the product to be manufactured undergoes some modifications during the stage of detailed design of the line.The line manufacturer must continuously take into account these modifications.Furthermore, modifications of the design solution are difficult and time consuming.Therefore, optimization methodologies and tools are eminently useful for the preliminary design and for taking into account the modifications during the detailed design.We will now present the methodology as applied for one such decision making process.

General methodology
No matter what the type of transfer line is (dedicated, flexible or reconfigurable), its design demands an overall approach requiring the resolution of several interconnected problems [3].Ideally, decisions relating to all these problems must be considered simultaneously.However, the total problem is very complex.Therefore, it is necessary to decompose this problem into several sub-problems, each engendering less complex decisions [24].
Note that only the preliminary design stage is considered in this paper, i.e. when all principal decisions are made concerning line architecture and its elements.Usually, this is followed by a detailed design (specifications for mechanical elements, tools, spindle heads, etc.) which is out of scope of this paper (see [12]).
The following general steps can summarize the preliminary design process.Note that the importance of each step depends on the type of transfer line considered.Some steps can be omitted.
Product analysis: this gives a complete description of the operations that have to be executed for the future products.Process planning: covers the selection of processes required to transform raw parts into finished products.Here, technological constraints are defined.For instance, during process planning, partial order between operations, inclusion and exclusion constraints are established.This requires an accurate understanding of the functional specifications for the products and technological conditions for the operations.Configuration design and balancing problem: selection of the type of machining line and the resolution of the balancing problem, i.e. the allocation of operations to workstations in order to obtain the necessary production rate meeting demand while achieving the quality required.It is imperative to consider here all the constraints, particularly, those of precedence.Dynamic flow analysis and transport system design: simulation is used to study the flow of products taking into account random events as well as variability in production.The objective is to analyze the dynamic flows and choose the material handling system as well as optimize the facilities layout, i.e. placement of machines.The decisions must be coherent with those defined at the previous steps.Detailed design and implementation of the line.
As illustrated in Fig. 2, these steps are executed sequentially.Of course, the designer can return to the previous steps as often as necessary (the decision making process is iterative).
This approach is based on a set of engineering procedures, knowledge based constraints, and some optimization techniques for transfer line balancing.

Optimization problem
The studied lines are equipped with CNC machines (machining centers).All the machines are identical (line modularity principle), each machine contains one spindle and a magazine for tools.For each machine, to pass from one operation to the next it is necessary to consider an additional time due to tool changes and displace- ments or/and the rotation of the part (set-up time).Taking into account the fact that a part is held at a machine with some fixtures in a given position (part fixing and clamping), some faces and elements of the part are not accessible for machining even after the part displacement or rotation [13].
Whatever positioning and clamping chosen some areas on the part will be hidden or covered.Therefore, the choice of a part position for part fixing should be also considered in the optimization procedure.We consider the optimization problem of this type of lines and we develop a model for line balancing.The input data used were: Cycle time (takt time) imposed by the objective production rate: one part is produced at each cycle; Precedence constraints: partial order relation between operations.These relations define feasible sequences of operations; Inclusion constraints: the need to carrying out fixed groups of operations on the same workstation due to tolerance technical constraints; Exclusion constraints: the impossibility of carrying out certain subsets of operations at the same workstation; Accessibility constraints: they are related to the positioning of the part; indeed, for a position some part sides are not accessible, and thus, the operations concerning these sides cannot be carried out without repositioning.In the considered machining line, only one part fixing position is defined for each workstation (the part repositioning is made between two stations).Sequence-dependent set-up times: the time required for the execution of two sequential operations is not equal to the sum of their times but depends also on the order in which they are done, because the time needed for the displacement/change of tool and part rotation are not negligible; Parallel machines: at each workstation several identical CNC machines can be installed.Thus, the local cycle time of the workstation is equal to the number of parallel machines multiplied by the line cycle time (takt time).The machines of the same workstation execute the same operations (in parallel on different product units).
Hence, here, we have a special case of line balancing with a sequential execution of operations, set-up times, parallel machines, as well as accessibility, exclusion and inclusions constraints.
We will introduce the following notations: -N set of operations to be assigned; -n 0 maximum number of machines on a workstation; -t i operational time for operation i (i ¼ 1; 2; ...; N jj ); -t ij set-up time when operation j is processed directly after operation i on the same workstation; -T 0 objective line cycle time (takt time); -P Ã i set of all predecessors of operation i (direct and indirect predecessors); -F Ã i set of all successors of operation i (direct and indirect successors); -ES a collection of subsets e (e 2 N) of operations which must be imperatively assigned to the same workstation; -ES a set of pairs of operations (i, j) which cannot be assigned to the same workstation; -A set of possible part positions for part fixing in a machining center; only one of these positions is chosen for each workstation; a part fixing position defines the accessibility constraints for the part; -AðiÞA the subset of positions with which operation (i) can be processed; -Type set of possible machine types (ordered in increasing cost); -NTðtÞN subset of operations that can be processed by a machine of type t 2 Ty pe.

Solutions are characterized by:
-N ws : the total number of workstations on the line; -N(k) ordered set N 1 ðkÞ; N 2 ðkÞ; ...; N n ðkÞ f g of operations assigned to the station k; -M(k) the number of machines of the station k; -Ts(k) the available workload time on the station k; (T 0 Â MðkÞÀTsðkÞ corresponds to the workload time of the station k); -t ut (k) the proportion of the time available on the station k (i.e., T 0 Â MðkÞ) that is needed to complete the sequence of operations N(k) including operational and set-up times; tut corresponds to the average value among all the workstations; -type(k) the type of machines installed on the station k; -As(k) set of possible position for the station k; The solution cost is calculated taken into account the total number of machines, the type of machines used, the number of workstations, and the balancing quality; -CostðtÞ the cost of machine of type t; -QS m cost of machines: Costðty peðkÞÞ Ã MðkÞ; -Cost ws cost of installation of one workstation; -QS ws cost of installation of workstations on the line: The objective function to minimize is calculated as follows: This function corresponds to the total cost of the line, with e being a sufficiently small value in order to favor a better balancing among solutions with the same cost.

Related work
Historically, the line balancing problem was first stated for assembly lines.As far as we know, the earliest publication on assembly line balancing problem (ALBP) was presented by [28].Furthermore, exhaustive studies were made by several researchers in the last 50 years with many interesting applications covered.Several articles provide broad surveys of this problem (see e.g.[7,26]).To summarize, the ALBP is NP-hard (see e.g.[9]).Much research has been generated to solve the problem by developing approximate or exact methods (see e.g.[1,2,10,23]).
Several research papers were devoted to the assembly line balancing problem with parallel machines [4,5,25].Indeed, to duplicate the machines in workstations has several advantages [11], such as: reduction of non-productive time (idle time), respect of cycle time (when there are operations with an operational time exceeding the cycle time), improvement of the production output imposed by the longest operation and, finally, reduction of transport time and matter flows on the line.The SDALBP (sequence-dependent assembly line balancing problem) has been defined by [29].The SDALBP is a new type of the ALBP.It takes into account set-up times between the operations.Set-up times vary according to the sequence in which the operation is processed.Therefore, to compute the total workstation time, a set-up time must be considered whenever a task is assigned next to another at the same workstation.The problem is not dealt with sufficiently in literature and there are few works devoted to its study [1,31].
The problem of machining line balancing is rather recent.It was defined in [14] for dedicated transfer lines and first called transfer line balancing problem (TLBP).Industry favors solving TLBP because the machining lines become too expensive otherwise.The TLBP consists of answering the following questions: Which machining units are to be chosen to execute the required operations?How many workstations are necessary?How should the machining units be assigned to the stations?These questions can be answered by an intelligent assignment of operations and machining units to workstations minimizing the line cost while satisfying the objective production rate as well as respecting all other constraints.
Several exact and approximate (or heuristic) methods for TLBP have been proposed.Exact methods are useful to better understand the problem, however for large-scale problems they often require an excessive computing time.Contrarily, approximate methods can provide quicker results but do not guarantee the optimality of solutions.Additionally, a heuristic algorithm is often easier to develop than optimal procedures, notably when complex constraints have to be considered.
The most significant methods for an exact resolution of the TLBP are: Linear programming in mixed variables: the problem is modeled as a mixed integer program and solved with an optimization tool such as ILOG Cplex [15,21].Dynamic programming: a recursive method used for the resolution of problems having an additive objective function.The examples of this approach for TLBP are given in [14], where the initial problems were transformed into constrained shortest path problems and solved with appropriate algorithms.Branch and Bound: an implicit enumerative procedure which avoids verifying all solutions.Several works use this approach for the resolution of the TLBP (see e.g.[16]).
By the way, the Column Generation method can be also used for TLBP.Indeed, it was already successfully used for assembly line balancing (see e.g.[31]).For large scale problems, or when the allocated computing time is severely limited (e.g. for flexible transfer lines), several approximate methods have been designed.We classify these methods into two categories: 1. Heuristics based on priority rules derived from the methods for ALBP.There are several heuristic algorithms, they differ in which rule(s) used: RPW [Ranked Positioned Weight, [23]]: based on the weights of the operations calculated from their execution time and the operational times of their successors [22]; COMSOAL (COmputer Method of Sequencing Operations for Assembly Lines, [2]): solutions are generated by assigning operations randomly to the stations (see e.g.[20]).2. Meta-heuristics, i.e. solving strategies applicable to a wide range of combinatorial optimization problems: A heuristic multi-start decomposition approach was suggested in [22].
In this section, we presented a non-exhaustive survey of methods dealing with line balancing problems.Note that most of the above methods are developed for dedicated assembly or transfer lines.Outside [20,21], no paper in the literature presents an approach which could be applied in the industrial problem considered in this paper.For the machining line balancing problem, we consider a new type of line composed by monospindle head machines, and then consider set-up times.To fill this gap, we explore a novel problem in which we treat both paralleling of stations, sequence-dependent set-up times and accessibility constraints.

Optimization approach
The resolution of the studied problem is NP-hard as shown in Section 5.An exact method has been based on a mixed linear programming model for this problem [21].However, experimentation has shown that only small sized instances could be solved.For this, we focused on approximate methods.In this paper, we propose an ant colony algorithm to solve large instances.

Ant Colony System
Ant Colony Optimization algorithms have been introduced by Dorigo [17] and were formalized as a new meta-heuristic in [18].ACO has been firstly applied to Traveling Salesman Problem [19], but it has also been successfully applied to a wide range of combinatorial optimization problems and notably to scheduling and balancing problems (see e.g.[6,8,[27][28][29][30]).ACO algorithms correspond to a multi-start constructive procedure.They are based on the movement of ants; solutions are generated by the combined effects of their movements and pheromones trails.The procedure is iterative; solutions are constructed item by item.Items are selected using a probabilistic function and a heuristic evaluation.Ants probabilistically prefer item with a lot of pheromone trail.
Initially, m ants are placed on randomly selected items.Each ant constructs its solution with the probabilistic selection policy and updates the pheromone level according to their solutions.A global collective memory is used to focus good solutions.This procedure is repeated a lot of time until a stop condition.Following the progress of the procedure, the items corresponding to the best solutions have a pheromone trails more important than others, which will converge towards local optima.

Optimization procedure
The proposed procedure is a constructive algorithm that assigns operations sequentially to stations.We call ''current station'' the station on which we assign operations on the current step of the algorithm.As long as the current station is not entirely filed, we cannot open a new station.If a station is opened, it becomes current station.A partial sequence of operations is assigned to the current station; this partial sequence is completed step by step until the closure of the station.
We introduce some notations: -N a set of operation to be assigned; -For any N 0 N, Ty peðN 0 Þ is the subset of machine types capable to perform all the operations of N 0 ; -L m subset of operations of L p have not predecessors not assigned and which can be assigned to the current station; i.e.: (i) the needed time to the execution of the operation (operational time plus the corresponding set-up time) is less than the available workload time of the current station, (ii) at least one of the possible positions of the operation is available on the current station, (iii) at least one possible type for the current station is compatible with the operation assignment, (iv) there is no exclusion constraints between the operation and the already assigned operations of the station; -LI(i) for all operation i of L m , this set includes all the operations which must be assigned on the same station with operation i (inclusion constraints) and their predecessors of the set N a ; -t l (i) the required time for the execution of all operations of the set LI(i) (the sum of operational times and set-up times); The algorithm allows us to build a feasible solution by the use of a greedy function namely g i .g i is calculated considering different parameters such as, (i) the operational time of the operations of LI(i), (ii) the operational time of the successors of operations of LI(i), (iii) the weight of operations which have not a common machining position with operations of LI(i).
To calculate this function, we define the set N pos (i), the set operations which have not a common machining position with operations of LI(i): Then, the greedy function expression is as follows: This algorithm builds the solution step by step.On every step a set of operation candidates L m , which can be added to the solution, is defined.After that, the elements are classified according the values of the corresponding greedy function.
We introduce the following notations for Ant Colony parameters: -m: the total number of ants; -t ik : the quantity of pheromones on the item when operation i is assigned to the station k.The update of t is performed through the following formula: where r is the memory conservation parameter; (1 À r) corresponds to the evaporation factor of pheromones; -8 i; k; i 2 NðkÞ; Dt ik P m Ant¼1 Q =QS Ant : quantity of pheromones tabled at the current iteration; -Q: average cost of previous solutions.
We define a discrete probability distribution function for each operation of L m according to the following expression: a: importance parameter of the greedy function; b: importance parameter of the pheromones trail.
The selection of operations within the algorithm will be performed using a roulette wheel based on the defined probability distribution function.The algorithm starts and creates a station.The algorithm stops when all operations are assigned.This iteration is repeated several times on the aim to build a large list of feasible solutions (L s ).The general scheme of the algorithm is presented following: t 0; t ik c; 8 i; k;

End While
This algorithm is applied many times (a fixed number of iterations).Then, the best solution is selected by considering a solution criterion (CostðsÞ).The function CostðsÞ takes into account the total number of machines, the type of machines used, and the number of workstations.If we have two solutions with the same cost, we select the one which have a better balancing quality.

Experimental study
In this paper, we proposed an optimization approach for large scale industrial problem.For the studied problem, outside methods proposed on [20,21], there are no other methods to solve it on the literature.Moreover the latter method cannot tackle problems of industrial size.To illustrate the capacity of the approach proposed in this paper, we have considered an industrial case and the results of the optimization by using the developed method are presented.The studied case is composed of 119 operations.We can use two types of machines, the first one with only one rotation axe and the second one with two different rotation axes.Consequently the two main differences between both machines are: 1. machines with two rotation axes can access to five sides of the part instead of only four for the machines with one rotation axe; 2. machines with two rotation axes are more expensive.
Outside of the basic constraints (i.e., precedence, inclusion and exclusion constraints), there is three possible positions for the part fixing on the machine.This is a very strong constraint for this problem since 75 of the 119 operations can be processed with only one part position.Our main objective consists to minimize the total cost of the line.We note that we cannot even find feasible solutions with the method of [21].
We apply the proposed method to this case study.We execute the procedure with 100 iterations.The computational time for 100 iterations is between 3 and 5 min which is fully compatible with a practical use.For each one, we present, in Table 1, the average, maximum and minimum costs for the best solutions generated by the ACO obtained on 6 independent runs .
The parameters of the algorithm are fixed as follows: a ¼ Several values of cycle time, from 100 to 500 units of time, have been considered.The corresponding results are reported in Table 1, as well as the results obtained with the heuristic proposed in [20].Also, in order to assess the solution quality obtained by the proposed algorithm, we introduce a lower bound of the problem (LB).This lower bound concerns the solutions cost, then, it takes into account both the number of workstations, machines and types of machines.We use the algorithm proposed in [21] to calculate the minimum number of workstations (LB WS ).It is calculated using the problem properties, i.e., operational times, cycle time, precedence constraints, exclusion and accessibility constraints.The minimum number of machines corresponds to LB m ,i ti s calculated as follows: There are several types of machines used (with different costs).For every type of machine, we calculate a lower bound LB m ðtÞ: Then, the lower bound calculation corresponds to: LB m ðtÞÃCostðtÞ: In Table 1, the last column reports the gap between the average solution obtained with ACO and the lower bound.Note that the gap variation can come from the poor quality of the lower bound for problem with a low cycle time.
Fig. 3 represents the costs obtained for each cycle time considered.It is interesting to note that the variation of the cycle times between 350 and 550 units of time only affect slightly the cost of the line.
One other interesting way to analyze these results is to consider the notion of efficiency which is used for assembly line balancing problems.For the problem considered in this paper, the efficiency would correspond to the product of the cost by the cycle time (see Table 2).Thus minimizing this value is equivalent to minimizing the cost per unit of product.For a decision-maker, this information can be particularly valuable when it is possible to duplicate the line to take advantages of a configuration with a larger cycle time but a better efficiency, or when the future demand is uncertain.In Table 2, the best efficiency corresponds to a line cycle time equal to 100 units of time.Such a cycle time would correspond to a very high production rate.However if the decision-maker seeks for a cycle time around 300 or 400 units of time, the solution with a cycle time equal to 350 appears to provide a good efficiency as well as a reasonable production rate.

Summary
A real industrial transfer line balancing problem with specific characteristics is considered and a multi-start ant based heuristic method is presented.The proposed heuristic is applied to resolve a real industrial problem.The processed experimentations show that we can use the proposed method to help designers to explore different scenarios and possibilities.Future research will focus to improve the developed method for example by considering a phase of local search applied on the solutions provided.
8 and decreases with iterations; -b ¼ 4 and increases with iterations; Each iteration a and b are updated as follows: b 1:01 Ã b and a 0:99 Ã a; -m = 10.

Table 1
Cost variations with the cycle time.

Table 2
Efficiency of the lines obtained with each cycle time.