Keywords

1 Introduction

Multi-holes drilling is one of machining modes in Computer Numerical Control (CNC) milling for metal removal process [1]. Multi-holes drilling process takes a long time for manufactured part. Tool movement and tool switching time take 70% of machining time in hole-making operation, on average [2]. Tool path optimization can lead to improve productivity and reduce non-productive machining time [3].

Tool path optimization is vital for improving and maintaining includes both aspect of manufacturing such productivity and quality in drilling process [4]. Tool switch scheduling and tool movement is the main issues in tool path optimization during hole-making process [5]. There are examples that applied in industrial products such as dies, molds, engine block with different size of holes, surface finishing and depth [6]. Besides, tool path optimization also can be used in milling, turret punching and laser cutting. As an example the tool path optimization is applied for printed circuit board (PCB) drilling based on previous research [7].

Travelling Salesman Problem (TSP) concept is the most widely used than precedence sequence and traveling cutting tool problem (TCP) [6]. Based on review paper, the optimization objectives is consists of minimize the travel distance, cutting time operation, cutting cost project, improve their efficiency, quality, productivity and different size of holes for drilling process [6]. To optimize the problem, the Particle Swarm Optimization that simulates the social behavior of bird flocking and fish schooling is used. The PSO is compared with different relatively new optimization algorithms including Whale Optimization Algorithm (WOA), Ant Lion Optimizer (ALO), Dragonfly Algorithm (DA), Grasshopper Optimization Algorithm (GOA), Moth-flame Optimization (MFO) and Sine Cosine Algorithm (SCA).

WOA for instance implements three mechanisms to mimic the search, encircling, and bubble-net foraging prey behaviour of humpback whales. The DA algorithm meanwhile simulates the static and dynamic swarming behaviours for the dragonfly insect. GOA on the other hand, models the grasshopper swarms in nature which considered the different phases in their life. The MFO utilized a transverse orientation mechanism for navigation by maintaining a fixed angle with respect to the light source to search for optimum solution. Meanwhile in the ALO five main steps of hunting prey; random walk, building traps, entrapment of ants, catching preys, and re-building traps are implemented.

This research is proposed to optimize the tool path in multi-holes drilling. In different with existing research that mainly focus to optimize uniform holes arrangement, this research will focus on irregular holes arrangement. In order to model the problem, TSP model will be implemented. TSP is a problem to find the shortest possible route that visits each city exactly once and returns to the origin city. In this work, a standard Particle Swarm Optimization algorithm will be implemented to minimize the non-machining time for the process.

2 Problem Modeling

The problem of multi-holes drilling path is modelled as a travelling salesman problem (TSP). TSP is implemented to find the shortest route of drilling paths. To solve the problem, the final path must be returned to the initial path. For example in Fig. 1, the salesman begins their journey from point A to B, C, D, E and return to A. So the total distance is 79 km. For the same starting point, if the salesman moves to point A, D, C, B, E and return to A, the total distance is 87 km. In this case, the shortcut path is better in term of the journey distance. To model the problem, the following objective function is used.

Fig. 1
figure 1

Example of TSP problem

$$ F\left( x \right) = \sum\limits_{i}^{n} {\sum\limits_{j}^{n} {X_{ij} D_{ij} } } $$
(1)
$$ \sum\limits_{i = 1}^{n} {X_{ij} = 1,\, j = 1,\, \ldots , \,n} $$
(2)
$$ \sum\limits_{j = 1}^{n} {X_{ij} = 1, \,i = 1,\, \ldots ,\, n} $$
(3)
$$ {\text{D}}_{ij} = {\text{D}}ji = \sqrt {\left( {x_{i} - x_{j} } \right)^{2} + \left( {y_{i} - y_{j} } \right)^{2} } $$
(4)

where;

n, number of holes; D ij , distance from point i to j; X ij , ∈ {0, 1}; X ij = 1, travel distance from point i to point j as part of the path that through on all the holes in the matrix;

X ij = 0, the path does not travel from point i to point j as part of the tool path. Meanwhile, \( x \) and \( y \) are the Cartesian coordinates;

  • \( x_{i} \), coordinate location of point i along the \( x \)-axis;

  • \( x_{j} \), coordinate location of point j along the \( x \)-axis;

  • \( y_{i} \), coordinate location of point i along the \( y \)-axis;

  • \( y_{j} \), coordinate location of point j along the \( y \)-axis.

Equation (1) is the summation for all distances, between holes and chosen travel tool path. Equation (2) shows the set of constraints ensure that each hole j is only visited once in the path defined by X ij . While Eq. (3), ensure the path coming out of every hole i move to one other hole, j. Equation (4) described the distance matrix as in-plane distance between node centres.

3 Particle Swarm Optimization

PSO is an algorithm to optimize a problem iteratively. PSO is trying to improve a candidate solution with regard to a given measure of quality. In this study, PSO algorithm is proposed for TSP model. PSO optimizes a problem by having a population of particles, and move these particles around in the search-space based on simple mathematical formulae over the position of particle and velocity.

In the beginning, the initial parameters are determined. The initial parameters are the particle number (n p ) and the maximum iteration (iter max ). Then, the initial position (X) consist of random number within 0 and 10 is created. At the same time, the random velocity (V) is also generated. As an example, Table 1 shows one of the particles from origin population is, x1 = [4.24 2.15 9.29 3.44 4.52 6.51] and v1 = [2.00 7.10 2.30 0.50 4.08 8.40].

Table 1 Position value of cities

The sequence of holes is sorted according to the x1 value in descending order. For example, the largest x1 value is belong to hole 3. Then it is followed by 6, 5, 1, 4 and 2. In the end, the tool path will return to the starting hole position. For this example, the path that being decoded from this approach is [3 6 5 1 4 2 3].

The function of predefined objective is to evaluate the feasible route. Then, the total summation of travelling time is defined as t36, t65, t51, t14, t42 and t23 for fr1 = [3 6 5 1 4 2 3]. The last one is to update the swarm position and velocity. The function is to establish new swarm set which is followed by the current best personal particle solution, P best and best solution among all particles, G best that appear in every iteration. The position and velocity is updated in PSO. As an example, the position and velocity is formulated as:

$$ V_{i} \left( {{\text{k}} + 1} \right) = wV_{i} \left( {\text{k}} \right) + c_{1} \left( {{\text{Pbest}}{-}X_{i} \left( {\text{k}} \right)} \right) + c_{2} \left( {{\text{Gbest}}{-}X_{i} \left( {\text{k}} \right)} \right) $$
(5)
$$ X_{i} \left( {{\text{k}} + 1} \right) = X_{i} \left( {\text{k}} \right) + V_{i} \left( {{\text{k}} + 1} \right) $$
(6)

X i (k) is the ith position at kth iteration, while V i (k) represents the ith velocity at kth iteration. The w on the other hand is the inertia coefficient, while c1 and c2 the cognitive and social coefficients.

4 Results and Discussions

A computational experiment was conducted to measure the performance of PSO to optimize making sequence. From our review, the range number of holes for drilling path is 50–150 approximately. Thus, the problems were classed into small (n = 1–50), medium (n = 51–100) and large (n = 101–150). The population size for all algorithms is set to 20 with maximum iteration is 300. Then, the optimization is repeat for 15 times with different pseudo-random seeds. The computational results of PSO algorithm is compared to other meta-heuristic algorithms as mention in Sect. 1.

Table 2 presents the average of the optimization results obtained from 15 runs. The number in bold shows the best value for the average fitness for a particular problem. Based on the observation from Table 2, the ACO algorithm performed better in small size problem. But when the size of problem increased to medium, the PSO algorithm have shown better performance in four out of five problems in term of average fitness. The best PSO performance is observed in the large size problem, with the best average fitness in all problems. Overall, the proposed PSO came out with the majority of the best minimum and average fitness. This is followed by the ACO and GA algorithms.

Table 2 Computational experiment results

PSO performance is also compared with other algorithms such MFO, WOA, ALO, DA and SCA algorithms. Between the five other algorithms, MFO shows the better performance in small and medium size problems after ACO and GA algorithms. Meanwhile, for large size problem, WOA have shown better performance in three out of five problems in term of average fitness after ACO and GA algorithms. Then, this is followed by ALO, DA and SCA algorithms for all problems. This result indicated that the new algorithms were not suitable for the discrete combinatorial optimization problem. For the further investigation, the focus should be given to the well-established algorithms.

5 Conclusions

This paper aims to optimize multi-holes drilling path using Particle Swarm Optimization (PSO). The problem is modeled as a Travelling Salesman Problem (TSP). TSP is classified as NP-hard combinatorial optimization problem, which cannot be solved in polynomial time. PSO is developed to optimize the hole making sequence. PSO as meta-heuristic algorithm which capable to search for real optimum solution in shortest computational time. 15 test problems consisted of different number of holes, n had been used to measure the performance of algorithms. PSO is compared with seven algorithms including Genetic Algorithm (GA) and Ant Colony Optimization (ACO). The optimization results indicated that the proposed PSO approach had outperformed the best performance in all problems.

This finding is related to the simple mechanism in PSO that make this algorithm converge faster towards the optimal solution. Besides, the divergence of the search direction in PSO also contributed to the promising performance. Later, a machining experiment will be conducted to validate the optimization results. As suggestion, continuous effort to explore more new meta-heuristics algorithms to improve their efficiencies. Besides, researchers also need to consider environmental issues and energy consumption for sustainable manufacturing.