Hole Machining Path Planning Optimization Based on Dynamic Tabu Artificial Bee Colony Algorithm

By setting up the 'point milling process-TSPPC' model, this study firstly is to further discreteness the point milling process and then successfully transforms it into a traveling salesman problem with precedence constraints through setting the tabu list to record manufacturing procedures. Based on characteristics of the constraints, the tabu list is used to further expand the Bee Colony algorithm and get the Dynamic Tabu Artificial Bee Colony algorithm (DTABC-algorithm) which can dynamically update the solution space. The DTABC-algorithm is used to solve the 'point milling process-TSPWTR' model. By testing, not only the 'point milling process-TSPPC' model can effectively simplify the problem of point milling process, but also the DTABC-algorithm can show outstanding properties through the solving process.


INTRODUCTION
Point milling is a important components of printed substrate and its processing cost usually accounts for 30-40% of the total cost of plate making.The drilling machine is mainly used in point milling process during procedures of plate making.The point milling process by the drilling machine is part of classic Hole Machining Path Planning (HMPP) process: the production efficiency of HMPP is determined by the machining time and the auxiliary time of the drill moving from one whole site to another.In the Merchant's survey, it showed that the time of tools shifting and drill moving accounted for 70% of the average time for the whole manufacturing process.Therefore, HMPP optimization is the key to improving the production efficiency of the drilling machine.Presently, the drilling machine in practice is normally single drill bit process and different types of whole processing require different combinations of tools for point milling.Meanwhile, the production process results in the processing order of tools in some tool combinations.So the point milling process is a spacetime composite dimension problem.
This problem is essentially belongs to the discrete optimization problem.Traditional solutions such as Brute-force method are hardly used in practical applications, for the reason that the combinatorial explosion exists in the solution space while the number of points is unlimited.But modern artificial intelligence methods such as artificial neural network and genetic algorithms bring about new hope for the solution of this problem.Seely was the first one to propose the colony self-organization model.In 2005, based on living habits of bees, Karaboga applied the bee colony algorithm to solve problem of numerical optimization for the first time (Karaboga, 2005).In 2006, Teodorovic clearly put forward the bee colony algorithm (Teodorovic et al., 2006).In 2007, B.Akay proposed the artificial bee colony algorithm (Karaboga and Akay, 2007).In 2008, Wong applied the bee colony algorithm to solve the traveling salesman problem and the study showed that the bee colony algorithm could get better results than other algorithms (Wong et al., 2008).In Karaboga et al. (2011) further optimized the artificial bee colony algorithm and proposed the combinatorial artificial bee colony algorithm to solve the traveling salesman problem (Karaboga et al., 2011).Researchers found that ABC algorithm had better advantages than PSO algorithm and ASO algorithm, such as faster convergence rates in global searching space and better global searching abilities in localities.
In this study we further disperse the problem of point milling and then transform it to the Traveling Salesman Problem with Precedence Constraints (TSPPC) by setting up the 'point milling process-TSPPC' model.We propose an efficient ABC approach to solve the TSPPC which is formulated by the 'point milling process-TSPPC' model.Even though abundant contributions to the TPS have been done in the ABC research area, we cannot find any results for the TSPPC.The traditional ABC approaches are not suitable to solve the TSPPC because the precedence constraints cannot be handled adequately.In order to efficiently handle the precedence constraints, a new improved method is developed in our study.The key concept of the new improved method is to use a Tabu Sort (TS), which is defined as an ordering of vertices in a directed graph.Therefore, based on the studies conducted by Wong et al. (2008) and Karaboga et al. (2011) we further expand the bee colony algorithm to get the Dynamic Tabu Artificial Bee Colony (DTABC) algorithm and then use it to solve the problem of 'point milling process-TSPWTR'.

THE 'POINT MILLING PROCESS-TSPPC' MODEL
In this section, we set up the 'point milling process-TSPPC' model to further disperse the point milling process and then simplify the initial problem to the problem of 'point milling process-TSPPC'.
The 'point milling process-TSPPC' model can be divided into two parts: discretization process and setting the Tabu list.The first step is the discretization process which matches the guided information with the machine operations as much as possible in order to decrease unnecessary expenses.Although computational difficulties exist during the discretization process when the number of element v in the operational set is more than that of the set including all points, the loss due to computational difficulties can be brought down dramatically if we use the Swarm intelligence algorithm.The second part is to record the timing sequence information of job information of point milling process by setting the tabu list.Point milling process is a space-time composite dimension problem.Precedence constraints in the problem of 'TSPPC' exist in terms of restraining the order of some points in time series.Based on such conditions, recording the timing sequence information of job information of point milling process by setting the tabu list is not only quick, but also efficient.

Dicretization process:
The minimal operation (the operation not needed to be further divided) in the point milling process includes drill moving, point milling by some kind of tool and tools changing.To complete the point processing of some holes pattern may include one or more operations which are orderly or disordered.
That means the point processing information is the summary of one or more pieces of operational information.Based on such theory, we can divide the point processing information of point into one or more pieces of operational information.The segmentation scheme is determined by the production process.
In order to better understand the discretization process, we define the set of all points as V. Assuming ∃ ∈ while the point processing information is , , in which x, y are the coordinate values of point in the circuit board PCB and is the type of point needed to be processed by tools a, b, c ( , , ), therefore, we get the set of operational information : , , , , , , , , , 1, 2, 3 x, y are coordinate values of point in the circuit board; n is determined by practical processing technology.When n equals to 1, , , .By the discretization process, we can get the gathering set of sets of operational information which is defined as operation set v: Setting the tabu list: Since the element in the operation set v is a set in itself, elements in the operation set are disordered.While ∃ ∈ and in the processing information , , of point is needed to be processed orderly processed by tools a, b, c, we set the tabu list to record the operational order of point milling process to avoid missing the timing sequence information of processing information of points.Hereby, we define that records the j th operating information of the i th order point , then records the (j+1) th operating information of the i th order point .Besides, according to the processing requirement of the order point , the processing of should be ahead of .Therefore, the timing sequence information of point milling process is recorded in the tabu list matrix.In order to improve the solving performance of our model, we choose to optimize the data structure of the tabu list.Not all the elements in the tabu list matrix but elements not in the first row are needed to be tabooed.The first row acts as the index to show the operation can be carried out.When the element in the first row of each line is carried out, the element will be deleted and the following element in the same line will be moved forward.For example, ,∶ stands for line i in the tabu list matrix corresponding with the number i of order point .Assuming ,∶ , the set of optional points is ∪ .. After is carried ,∶ out, and the set of optional points will be ∪ .
'Point milling process-TSPPC' model: In the model, each piece of operational information is equivalent to each point in the problem of TSPPC.Meanwhile, expenses by operations are generated by drill moving and tools changing.Therefore, we define , in which means cost due to drill moving and means cost due to tool changing.Because of the tabu list, we introduce a matrix variable y (i j) and define it as: To conclude, we get the 'point milling process-TSPPC' model as follows: The set of operations X (i j) : The connection matrix, which indicates operation i : Connected to operation j and operation i is prior to operation j y (i j) : The tabu list matrix variables : The choice of process path

DYNAMIC TABU ARTIFICIAL BEE COLONY ALGORITHM (DTABC-ALGORITHM)
Artificial Bee Colony (ABC) algorithm: The Artificial Bee Colony (ABC) algorithm is a heuristic swarm intelligence algorithm based on foraging behaviors of bees.In the ABC algorithm, the bee colony acts as three types of roles: employed bees, onlooker bees and scout bees.Each employed bee is used to point out the corresponding food source which is the optimal path.Employed bees will save the information of food source and go back to the honeycomb and then recruit onlooker bees by the waggle dance.Through observing the waggle dance, onlooker bees will decide which food source to explore and try to improve the quality of food source while exploring.If employed bees give up the food source, they will transform into scout bees and search for new food sources randomly.Basic steps of the ABC algorithm can be described based on the following pseudo algorithm:  Initialize the parameters: Colony Size (CS), Maximum Number of Iterations (MI). Initialize the food source: where i = 1, 2, …, CS  For i = 1 to MI Evaluate the population of solutions Memorize the best solution Employed-bees-lead-or-abandom () Waggle-dance () Onlooker-bees-search () Scout-bees-search () End-for Based on abundant studies in solutions to the problem of TSP by the ABC algorithm and also analysis of properties of such solutions conducted by (Wong et al., 2008;Karaboga et al., 2011) findings show that ABC algorithm has better advantages than PSO algorithm and ASO algorithm, such as faster convergence rates in global searching space and better global searching abilities in localities.Meanwhile, there is little difference between the optimal solution by the ABC algorithm and the given standard.So we can conclude that ABC algorithm is not only suitable but efficient for solving the problem of TSP.
Dynamic Tabu Artificial Bee Colony (DTABC) algorithm: However, the problem of 'point milling process-TSPPC' is not a traditional problem of TSP.Because of the precedence conditions, the initial problem is changed into a space-time composite dimension problem.Traditional ABC algorithm cannot solve the problem of TSPPC.So we propose the Dynamic Tabu Artificial Bee Colony (DTABC) algorithm which improved on the basis of the traditional ABC algorithm.The DTABC algorithm is to solve the space-time composite dimension problem of point milling process by setting the tabu list to depict time dimension and also dynamically update the solution space.
In order to explain clearly, we illustrate the process of searching for food sources by observing onlooker bees.Assuming onlooker bees k is searching for the food source, the path of leader bee will be 3 2 1 4 3 and the path of onlooker bees k will be 3 and the set of points not searched is A k , A k = {1 2 4}.Meanwhile, the tabu list matrix is  point again, the probability of next searching point will be , in which values , of will be determined by different searching rules.The pseudo algorithm of searching for food sources by onlooker bees using the DTABC algorithm can be described as follows: Onlooker-bees-DTsearch () { Initializing-ResultZoom () Onlooker-bees-NewSearch () Renew-Tabu } In practice, the proportion of three types of bees has two conditions-constant and dynamic variations, which is determined by actual situations.According to DTABC algorithm in this study, while deciding the proportion of three types of bees, we take the problem of dynamics into account and choose the method which can react correspondingly to the present results.Regarding the following probability of onlooker bees, have done relevant studies (Nakrani and Tovey, 2004;Chong et al., 2006).Based on their findings, we cope with the following probability as follows (Table 1): Represents the profitability score the i th bee and is defined as formula (1): Represents the average profitability score of the whole bee colony and is defined as formula (2): where, L i : The cost of path of the i th bee n : The number of bees, n = CS The process of searching by scout bees is similar to the process of searching for food sources by onlooker bees, so it can be obtained by analogy: Scout-bees-NewSearch (); Renew-Tabu; } Based on the renewed idea mentioned above, the pseudo algorithm of the DTABC algorithm is as below:  Initialize the parameters: Colony Size (CS), maximum number of iterations (MI). Initialize the food source: where i = 1, 2,… , CS  For i = 1 to MI Evaluate the population of solutions Memorize the best solution Employed-bees-lead-or-abandom () Waggle-dance () Onlooker-bees-DTsearch () Scout-bees-DTsearch () End-for

EXPERIMENTS AND RESULTS
In this section, we first illustrate the calculation example and then simplify the problem by the 'point milling process-TSPPC' model and solve the problem by the DTABC algorithm.Finally, we verify the properties of the algorithm by comparing with the modified genetic algorithm.

Running results:
In order to solve the problem of practical example, we choose 30 points including three points from each of ten types of points from the online datab (http://www.mcm.edu.cn/uploadcn/ node/187/ Cngox PPI9089a 673701f3be 3eb90b9b 10a3b2dee.rar)and further disperse and simplify the problem by using the 'point milling process-TSPPC' model.At last, we adopt the DTABC algorithm to solve the problem.The main parts of the model are interpreted in details in section two and three and only the results from the DTABC algorithm by adopting the 'point milling process-TSPPC' model are illustrated here in section four.
Parameter  From the running results, we can see that the 'point milling process-TSPPC' model can disperse and simplify the problem (Fig. 1, 2).The simplified problem is solvable and can meet practical processing requirements.Meanwhile, the DTABC algorithm has its unique advantages in solving the simplified problem (problem of TSPPC): not only the rate of solving and convergence is fast, but also the error between the average optimal solution by repeating 50 times and the best result is small.The running results of the optimal solutions are stable, which means that applying the DTABC algorithm to solve the 'point milling process-TSPPC' model is practical and efficient.
Performance comparison: At the present stage, there is no accepted solution to the problem of TSPPC.But Scientists such as Moon (Chiung et al., 2002) has put forward a new algorithm based on the genetic algorithm and obtained better results.Therefore, we decide to run a solving performance test of DTABC algorithm using Moon's example.In Moon's example, there are 20 points and 31 precedence constraints.Precedence constraints are shown in Fig. 3.The assumed distance between points is shown in Table 2.
In order to contrast the properties of two algorithms in solving the problem of TSPPC, comparisons of results are shown in the Table 3.

CONCLUSION
In this study, we set up the 'point milling process-TSPPC' model to simplify the problem of point milling process and transform it into the problem of TSPPC.In order to better solve this problem, we expand the ABC algorithm and obtain the DTABC algorithm.With testing the optimal solution by multiple loops, we find the DTABC algorithm is suitable for solving the problem of TSPPC.Results of the optimal solution by the DTABC algorithm fluctuate slightly and the speed of solving is fast.So the DTABC algorithm has inimitable advantages.Finally, through comparing with the genetic algorithm in solving the problem of TSPPC, we find that the DTABC algorithm is superior to Moon's genetic algorithm not only in searching for the optimal solution, but also in terms of convergence.As a future work, we will consider conducting studies in the parameter setting and convergence of the DTABC algorithm so that it will have wider application prospects.
2 4 .So the probability of next s earching point is 0 , in which the values of , are determined by different searching rules.If the chosen point is {2}, then 3 2 , Ak = {1 4}, Tabu k = [4].When onlooker bees k chooses next

Table 1 :
Lookup table for adjustment of settings are shown below where LimitMax means the max number of optimal solution: