GA-AHP Method to Support Robotic Polishing Process Planning

: The finishing stage of mould manufacturing is generally completed via mechanical polishing and manually conducted. Not only is this the most expensive phase of the process but also is currently struggling with a deficit of skilled workers. To address these issues, and support the wider needs of Industry 4.0, the manufacturing community has investigated robotic technologies to support the polishing process. The work reported here, investigating the polishing process planning and optimization for mould manufacture is part of a larger project aiming to automate 80% of the current manual process. Presented in this article is an optimization strategy for robotic polishing process sequencing aiming at satisfying polishing sequence rules and the shortest polishing time simultaneously. A hybrid approach combining both genetic algorithm (GA) and analytical hierarchical process (AHP) is proposed based on the specific characteristics of polishing process sequencing. A multi-objective fitness function is defined using AHP including the calculation of polishing time and evaluation of polishing process rules. The proposed GA-based process sequencing has been successfully demonstrated on test piece examples.


Introduction
In the manufacture of production tooling such as moulds and dies, surface finishing operations, buffing, and polishing are currently manual processes. Normally involving a skilled operative equipped with polishing tools. To remove a layer of material eradicating pre-machining marks and abrasions in the mould or die cavity and inserts, to achieve a required surface finish [1,2]. An example is shown with the die insert in Figure 1, where 'A' shows the part post milling machined and part 'B' shows the component finished via polishing. The features of the milled part, have different starting roughness. Feature 'a' starts at 1.6 µm; edge features 'b' and 'd' start at 0.8 µm, and top faces 'c' and 'e' start at 1.92 µm. The required surface finish for the injection moulding process is for features 'b' and 'd' to have 0.1 µm, and for features 'a', 'c' and 'e' to have a final roughness of at least 0.8 µm. To achieve this the six tools shown in Figure  1C needed to be employed. In the last two decades, the mould and die manufacturing industry has currently faced two challenges. One of finances, in comparison to global low-cost production areas. It has been shown that up to twenty percent of the production costs and approximately fifty percent of the production time are assigned to finishing operations. Also, the industry is facing the pressure of skilled workers specializing in finishing operations [3,4]. With these factors in mind, robotics is seen as one potential solution [5,6]. However, to extend its applications in the polishing process so as to finally substitute most of the manual polishing work in the industry, a fast and automatic generation of polishing process plan is necessary. Although Computer-Aided Process Planning (CAPP) has already commonly been applied to manufacturing processes, few systems involve detailed information on the polishing process, such as types of polishing tools (cf. Figure 1C), abrasive papers, process variable settings, and even optimizing the sequence of polishing operations, which robotic polishing requires. Meantime, as the polishing process is generally carried out after finishing a series of cutting manufacturing operations, the constraints for polishing process sequencing are not as same as cutting manufacturing process sequencing.
Presented in this article is a strategy of optimization for polishing process sequencing using a genetic algorithm (GA) and analytical hierarchical process (AHP). Section 2 presents a review of recent research, with Section 3 addresses the main characteristics of polishing process sequencing, which are different from cutting manufacturing process sequencing. Section 4 proposes a new GA-AHP optimization strategy for polishing process sequencing based on specific constraints and rules for polishing processes. To meet the requirements of multiple objective optimizations, AHP is applied to define the multi-objective fitness function on both the satisfaction of polishing process sequence requirements and minimum polishing time concurrently. The GA method for polishing process sequence is then discussed, including a new proposed initialization algorithm and specific genetic operators, particularly for the requirements on polishing process sequencing. The next section provides the implementation of the proposed method and test example. The closing section draws conclusions and presents future work.

Background
Process sequencing is a complex issue and involves a large number of constraints and factors, such as various component details (e.g., geometrical tolerances, feature relationships), manufacturing rules, precedence requirements, time, and cost. A GA is a classical evolutionary algorithm based on biological operators such as selection, crossover, and mutation. The GA technique has advantages to generate good solutions to complex problems, and therefore attracts a number of researchers on its application for process sequencing optimization. such as the work of Li et al. [7]; Bo et al. [8]; and Fan and Wang [9]. Qi et al. [10] designed an enhanced hierarchical GA for typical manufacturing process optimization for metal structure production systems. A hierarchical structure aimed to solve simultaneously, three issues, process sequencing, layout selection, and machine selection. Knust et al. [11] presented a GA optimization method for hot forging processes with multiple objectives, based on shape geometry requirements. Su et al. [12] developed a strategy-based GA for operational sequencing posed on edge selection, aiming to satisfy defined precedence constraints. Their edge selection strategy purports to improve the GA's converging efficiency. Dou et al. [13] present an enhanced GA for sequencing aiming to minimize the overall cost. Their new elitist-based crossover strategy and an improved mutation method are adopted to keep the feasibility of the GA chromosomes. For use in a computer-aided manufacturing (CAM) system, Čuboňová et al. [14] developed a GA-based optimization strategy for machining processes. The length of tool paths was considerably reduced by using GA to reduce machine times and optimize cutting parameters. A hybrid constrained 'permutation algorithm' and GA approach for process planning was presented by Falih and Shammari [15]. The constrained permutation algorithm is employed to produce an initial solution, to minimize the number of setup and tool changes. The authors employed a GA to search for best-fit process plans. An optimization algorithm amalgamating variable neighbourhood search and a GA for process sequencing of the large-size problems was presented by Luo et al. [16]. Their version of variable neighbourhood search was used to decompose a complex and sizable solution space into simple multi-neighbourhood areas. An approach combining Tabu search, and GA was proposed by Shi and Xiong [17]. The goal of their hybrid approach was to minimize the tool changeover times in computer numerical control (CNC) milling. Tabu search was combined with the GA to improve the performance.
The polishing process is mainly performed by human workers, more recently robotic polishing has gained increased attention because of the reason mentioned earlier. Thus, the work to support polishing process sequencing is limited. Mohsin et al. [18] proposed an approach based on tool path planning to improve the contact area per cut path and surface quality. The polishing parameters optimization was evaluated using the design of experiments (DOE). Liu et al. [19] presented a novel robotic polishing planning method that considered, the deformation problems when polishing thin sheet metal parts. Their approach is based on Hertz theory, differential geometry and derived a polynomial equation. It combines a developed constant speed robot path planning method with the contact-area information to guarantee improved surface quality.
In summary, GAs has advantages for process planning, such as it is easy to represent and implement the operations' sequence in the coding environment using chromosomes; It is more likely to generate global optimization and avoid local optimal points by genetic operators like crossover and mutation; It is able to support multiple objectives optimization through the definition of a multi-objective fitness function; etc. The previous research has shown GAs are good solutions for optimization and search problems, and therefore GAs is a suitable technique for the applications of process optimization. However, the elements of a GA, including fitness function, crossover and mutation operators, and initial selection strategies, determine the effectiveness of the GA's application. Meanwhile, GAs combined with other artificial intelligence techniques, such as different optimization algorithms, can improve the performance of GA optimization and therefore provides a promising solution for more complex optimization problems. Additionally, there are few efforts on the polishing process sequencing. However, with the introduction of robots to the polishing process, the requirements for automated polishing operation sequencing are increasing.

The characteristics of polishing process sequencing
Moulds and dies include a series of machined features and inserts that form the component during the production process. The surface finish of the final component directly relates to the machined finish of the mould or die or its inserts [20]. The higher the quality of surface finish required the more time and expense are exhausted in the manufacturing process. Therefore, the manufacturer will aim to obtain the minimum polishing time on each feature to satisfy customer requirements. E.g., hidden features may only need to be polished to a level that allows easy extraction from the mould. Most previous CAPP research focuses on the cutting manufacturing process, including various machining (e.g., drilling, milling, turning) covering from blank, rough machining, semi-finishing to finishing machining. However, polishing process sequencing is different from general cutting manufacturing process sequencing: i. For the cutting manufacturing process, the manufacturing feature is treated as a whole [21]. For example, all faces of the open pocket (shown in Figure 2) are generated by certain machining operations (e.g., milling) at the same time. Differently, as shown in Table 1, the open pocket must be broken down into two geometrical parts for polishing, which the part1 will choose the polishing disc with three operations using different abrasive papers, while the part2 will use a cylindrical polishing tool with two operations to finish. Thus, polishing features need to be further broken down into one or more geometrical groups, each of which could use different tools, abrasive papers, and setups. Such geometrical group in this research is called polishing operation part. Meanwhile, from the polishing view, in most situations, polishing operation parts could be treated independently during the process sequence. Also, different accuracy or surface finish could put polishing operation parts, even within the same feature, in different process precedence. For example, there are two features in the component shown in Figure 3. These two features can be further broken down into four polishing operation parts. Although the polishing operation parts A and B belong to the same feature (i.e., F1), and C and D belong to feature F2, the operations for polishing operation part A are arranged together with operations of operation part C, not operation part B, due to the same polishing tools and abrasive papers.   In addition, polishing operation parts, which have the same type, dimensions, and surface finish requirements, such as P011, P021, P031, and P041 shown in Figure 4, will use the same polishing process and be polished together in industrial practice. Therefore, the concept of the polishing operation group, including the polishing operation parts with the same type, dimension, and surface finish requirement, is introduced here. For example, there are two polishing operation groups in Figure 4: P011, P021, P031, and P041; and P012, P022, P032, and P042. The polishing operation group will be treated as a single polishing operation part during the polishing process planning. ii. Polishing process sequencing is different from general cutting manufacturing process sequencing. The polishing process is usually carried out after finishing a series of cutting manufacturing operations. Therefore, the rules for polishing process sequences cannot be the same as cutting manufacturing process sequences. For example, as shown in Figure 5, for cutting manufacturing process planning, which focuses on planning material removal processes (e.g., milling) from a blank, the parent feature (i.e., ft 2 ) should be processed before its child feature (i.e., ft 1 ) by considering their tool access directions and machining efficiency. However, at the polishing stage, as these two features have already been rough/semi-finished machined, such precedence constraints are not needed anymore. On contrary, if parent feature ft 2 has higher surface finished requirements than child feature ft 1 , then the feature ft 1 should have its fine-polishing operation before feature ft 2 . When one considers general subtractive machining manufacturing processes. They are typically conducted based on the order from rough machining, semi-finishing to finishing machining, and therefore, the features with the highest indicative surface roughness are usually machined before the features with the lowest indicative surface roughness. E.g., in producing a high precision hole. The part would be rough machined with a drill, giving high material removal rate, but leaving a surface finish range of 6.3 µm -1.6 µm. Then it would be reamed, leaving a surface finish range of 3.2 µm -0.8 µm. The final operation would be honing providing a surface finish range of 0.8 µm -0.1 µm. However, as the polishing process is one of the finishing machinings, such precedence requirements are not needed except in some special situations. Using the example in Figure 5, although in this instance, feature ft 3 has a lower finished surface roughness requirement than the feature ft 2 , it does not matter which feature needs to be polished first as the two polishing features are not connected or adjacent. Differently, as feature ft 1 and feature ft 2 are connected, the fine-polishing operation for the feature ft 1 (with lower finished surface roughness requirement) should be arranged prior to the fine-polishing operation for feature ft 2 (with higher finished surface roughness requirement).

Figure 5. A component with three features
Thus, considering the specific requirements of the polishing process, six polishing process sequencing rules are derived, which can be classified as two aspects: polishing precedence constraints and polishing efficiency constraints: Polishing precedence constraints: • Rule 1: To gain the target of surface finish, multiple polishing operations are usually required for a polishing operation part. Rough polishing operations should be done before fine polishing operations. • Rule 2: For a cutting feature, in which geometry is obtained by removing a volume material from the initial blank, the polishing operation parts with low required surface finish should be polished prior to the polishing operation parts with high required surface finish, which guarantee the best surface finish awarded. • Rule 3: If two polishing operation parts are connected or adjacent, the polishing operation parts with a low required surface finish should be polished before the polishing operation parts with a high required surface finish so that the best surface finish is achieved. Polishing efficiency constraints: • Rule 4: Polishing operation parts to be polished using the same machine setup should be polished successively. • Rule 5: Operations, which use the same polishing tool should be arranged successively. • Rule 6: Operations, which use the same polishing tool and abrasive paper, should be conducted successively.

GA-AHP optimization strategy
This paper proposes a GA-based polishing process sequencing, aiming to obtain an optimal point which satisfies both the polishing sequence rules and the quickest polishing time. Figure 6 depicts the procedure of the proposed GA. The process starts by initializing populations with several valid candidates using an initial precedence constraints algorithm (details given in Section 4.2). Then performs a genetic operation on these candidates (i.e., selection, crossover and mutation discussed in Section 4.3). The multiple-objective fitness functions are calculated using the AHP method (as described in Section 4.1). The output with the best fitness function is adopted. This iterative process stops when the fitness function cannot be further reduced.

Fitness function calculation using AHP
With the application of GAs to operations like process planning or sequencing, it is important to have an appropriate fitness function, as this is considered a performance benchmark. Therefore, it will indicate the degree of objective satisfaction of a solution searched [21]. Because of this, in any use of a GA, the fitness calculation is the

Mutation
Output the best individual most important mechanism. In this research, a fitness function, which aims at the shortest polishing processing time and satisfaction of the key polishing rules simultaneously, is proposed for the polishing process sequencing. However, what has been demonstrated in practice, is that it is practically impossible to satisfy all sequence requirements within a polishing process sequence. E.g., a polishing process sequence may have the shortest time but conflict with the polishing process rules. Oppose, a polishing process sequence could satisfy very well with sequencing rules but have a longer polishing time. Another example is if two polishing operations have different machine setups but use the same polishing tool and abrasive paper. According to the rule of polishing, operations using the same machine setup should be polished successively, the two polishing operations should not be arranged together, but it conflicts with the rule of operations, which use the same polishing tool and abrasive paper, should be conducted successively. Thus, it becomes important to introduce a grouping of weights which represent the relative importance of the requirements inside the polishing process sequencing. The weights with the most importance are obtained via the application of the AHP. AHP has been shown to be an effective technique for multi-attribute decision-making [22,23]. Calculating fitness function

End
Step 1: The evaluation criteria are hierarchical and structured into four levels from an overall objective to various sub-criteria (cf. Figure 8).

Figure 8. AHP evaluation criteria
Step 2: Based on expert judgement, to determine the relative weights of structured criteria, pairwise comparisons (Matrix R) are constructed. R is described by a number of r ij which presents the relative importance between the ith and jth constraint. This is presented as follows: where m is the number of the selected constraints r ii = 1 r ij = 1/r ji In this research, an evaluation criteria table based on one to nine scales is employed in the matrix R, as shown in Table 2. E.g., if Rule i (e.g., Rule 4) is considered to have very strong importance than Rule j (e.g., Rule 5) in the evaluation, a weight of '7' is given to R ij . On the contrary, the value of R ji is set to '1/7'. Based on the proposed AHP evaluation criteria, four matrices have been defined, that is R 1 (2x2), R 21 (2x2), R 31 (3x3), and R 32 (3x3).
Within these matrices, the defined value of each element is provided based on the knowledge and experience of expert or suitably qualified persons.  Term Importance intensity of (r ij ) Importance intensity of (r ji ) The ith and the jth constraint have the same importance 1 1 The ith constraint has moderate importance than the jth constraint 3 1-3 The ith constraint has strong importance than the jth constraint 5 1-5 The ith constraint has very strong importance than the jth constraint 7 1-7 The ith constraint has extreme importance than the jth constraint 9 1-9 The values in-between importance adjacent scale values 2, 4, 6, 8 1-2, 1-4, 1-6, 1-8 Step 3: Use eigenvalue techniques to calculate the weights. The proposed AHP evaluation criteria in this research only require the small size of the matrix R and therefore the step of checking the consistency may not be necessary.
Step 4: Calculate polishing time: Basically, the calculation of the time for a polishing process is similar to another machining process, including the time for conducting polishing and other supporting activities, such as changing tools. The main difference in the polishing process is the consideration of the abrasive paper change time, including changing the abrasive paper within an operation due to the wearing of the abrasive paper; changing abrasive paper with different levels according to the required surface roughness value (Ra) for different operations, and changing abrasive papers when the polishing tools is changed. Thus, the duration of a polishing process is defined in equations 5 and 6.
where T total_time is the duration spent for the whole polishing process; TP i is the duration for the ith polishing operation (including tool path planning time, polishing time, and the time to change the abrasive paper within this operation); TC ij is the change time between operation i and j; TTC ij is the tool changeover duration for the ith polishing operation to the jth polishing operation, including the abrasive papers changing time when the polishing tool is changed; TTM ij is the time for the polishing tool to move from the ith operation to the jth operation; TPC ij is the change time of different types of abrasive papers from the ith polishing operation to the jth polishing operation while the polishing tool is same.
A relative evaluation value for the polishing time, f t , can be gained as shown in equation 7: where T max is the maximum polishing time permitted.
Step 5: The polishing process sequence rules are evaluated as the satisfaction degree. Apart from the weight system, the precedence value system is built on how well the precedence of two polishing operations meets the requirements of the rules for the polishing process. For example, V hij refers to the evaluation using rule h when operation j is performed behind operation i. If the polishing rule h supports the two operations precedence, V hij is assigned a small positive value less than one (i.e., 0 < V hij ≤ 1). The less value, the fitter for the rule h. On the other hand, if the polishing rule h is against the two operations precedence, V hij is set at a value larger than one (i.e., V hij > 1). The larger value, the more conflict for the rule h.
Step 6: Calculate fitness function as below in equation 9: where W t 0 is the weight for the polishing time (Level 1); W p 0 is the weight for the polish ability (Level 1); W k is the weight of the kth constraint (Level 3) for the polishing ability (Level 1); W q is the weight of the qth constraint in Level 2 for the polishing ability (Level 1); W kq s is the weight of the kth constraint (Level 3) for the qth constraints in the Level 2; f t is the relative evaluating value for polishing time; V kij is the precedence value for the kth constraint (Level 3) if operation; j is performed behind operation i.

Initialization
Initialization produces a number of populations for the polishing process planning of a component. Good initial populations should cover sufficiently valid search space. It means the initial populations need not only to include various viable solutions but also to exclude those invalid solutions. For the polishing sequencing, on the one hand, the precedence constraints among features, even if the precedence/successive constraints among different polishing operation parts in a feature, are not as important as in the cutting manufacturing process. However, on the other hand, for the multiple operations for a polishing operation part, the rough polishing operation must be strictly conducted prior to the fine polishing operation, if not, it will be infeasible. Therefore, a new algorithm to generate initial populations has been developed. In the first stage, a polishing operation part will be selected randomly from the pool of the unselected polishing operation parts. Then, in the second stage, the polishing operations for the selected polishing operation part will be allocated an unoccupied position randomly but strictly based on rough, semi-finishing and finishing polishing precedence constraints.
The algorithm can be illustrated by an example, as shown in Figure 9 and Table 3, the component has two features with four polishing operation parts (i.e., P011, P012, P021 and P022). Each of these polishing operation parts further consists of several operations. P021 and P022) in the pool. Randomly selected one polishing operation part (e.g., i = 1), which means P011 is chosen. P011 has four operations: P0111, P0112, P0113 and P0114, according to the rough to finish polishing precedence.
• P0111: P0111 must be arranged before P0112, P0113 and P0114. Although there are 12 unused positions in the chain, only 9 positions can be chosen for P0111, randomly choose k ∈ [1,9], e.g., k = 2, the 2nd unused position, i.e., the 2nd position in the chain. • P0112: behind P0111, ten positions are available to select. Meanwhile, two positions must leave for P0113 and P0114. Thus, randomly select k ∈ [1,8], e.g., k = 3, the 3rd unselected position after P0111 position (i.e., 2nd), i.e., the 7th position in the chain. • P0113: after the position of P0112 and leaving one unused position for P0114, there are six positions available. Selected k ∈ [1, 6], for example, k = 6, the 6th unselected position after P0112 position (i.e., 7th), i.e., the 15th position in the chain. • P0114: the position of P0113 leaves only one position that can be selected for P0114, k ∈ [1, 1], e.g., k = 1, the 1st unselected position after P0113 position (i.e., 15th), i.e., the 16th position in the chain. Similarly, the positions of P0211 to P0214 and P0221 to P0224 can be allocated, respectively. The details of the whole process are displayed in Table 4. As the new initial algorithm ensures the rough, semi-finishing and finishing polishing precedence constraints, the invalid solutions are excluded from the populations. In Table 4, • [Ox -Oy] refers to the range of the number of unselected polishing operation parts.
• P ijk refers to the operation ID, i refers to the ith feature ID and j refers to the jth polishing operation part.   Table 4. Illustration of the new initial algorithm A large population size increases the accuracy of the optimization; however, it requires more search time. For the same number of operations, compared to general optimization, the valid search space for polishing process sequencing is much smaller. This is due to the strict precedence constraint for the multiple operations for a polishing operation part. However, besides the number of operations, the search space is highly related to the number of polishing operation parts and the number of operations they include. Experimental evaluations showed that a population size set to around five to ten times the number of polishing operation parts can achieve reasonable accuracy. Thus, considering the search time, in this research, the population size is set as six times the number of polishing operation parts the polishing process includes. For example, the population size sets to twenty-four for twenty operations polishing sequencing with four polishing operation parts; while the population size sets to seventy-two for twenty operations polishing process sequencing with twelve polishing operation parts.

Operators
There are three important genetic operators needed to design in the GA: selection operator, crossover operator, and mutation operator. 1) Selection operator: Selection refers to a process of selecting individuals (called parents) for the following operators (e.g., crossover and mutation) to produce the new generation. Once parents are chosen, they will have the chance to be used in genetic operations downstream such as crossover and mutation. In this research, the ʻroulette wheel selectionʼ strategy (Faris et al. [24]) is used. 2) According to equation 6, the individual's fitness is firstly converted to its proportional probability of selection (P i ), which represents the region of the wheel.
where F i refers to the fitness of the ith individual of the population, n is the size of the population. Then, the individual, whose region that the fixed-point stops, is selected. Thus, it can be seen that the individuals having better fitness are more likely to be selected. An example of the roulette wheel selection method is presented in Figure 10 and Table 5.  3) Crossover operator: Crossover refers to the genetic operator that splits and recombines two parents from the selected ʻparents' populationʼ to give birth to new solutions for the next generation. There are distinct types of crossovers based on the number of split positions and different recombining strategies between two parents. Crossover strategies like the single-point crossover, are not suitable for polishing process sequencing as they may result in an invalid sequence, i.e., some operations appear in a child more than once, or do not appear at all. In an attempt to overcome the drawback and produce a valid process sequence, Li et al. [25] proposed a modified crossover strategy in which new solutions for the next generation (children) are produced following the steps described below. OP6-OP8-OP9-OP10-OP7 Then, the new Child I created would be: Child I: OP1-OP2-OP3-OP4-OP5|-OP6-OP8-OP9-OP10-OP7 Similarly, parent II is also separated into two sections: Left-Parent II: OP6-OP2-OP3-OP8-OP4 Right-Parent II: OP1-OP9-OP5-OP10-OP7 Bits of Right-Parent II in the order of appearance they have in Parent I: OP1-OP5-OP7-OP9-OP10 Then, the new Child II created would be: Child II: OP6-OP2-OP3-OP8-OP4|-OP1-OP5-OP7-OP9-OP10 As shown in the example above, not only does the modified crossover guarantee that each operation appears in a child once and once only, but it also retains the precedence constraints used in the parents as much as possible. The crossover rate is chosen as 0.8.

4) Mutation
: Mutation refers to the genetic operator that randomly changes one or more bits of the selected parent. To avoid an invalid sequence, the mutation strategy used in this research is: the value at two randomly selected positions is swapped. The following example illustrates how the strategy works: Before mutation: OP1-OP2-OP3-OP4-OP5-OP6-OP7-OP8 Assuming the two randomly selected positions are position 3 and position 6, then the result of mutation would be: After mutation: OP1-OP2-OP6-OP4-OP5-OP3-OP7-OP8 The mutation operator is used to prevent the populations from converging to a local minimum by providing the populations with new viable solutions that may have been lost during successive generations. However, a high mutation rate could destroy appropriate solutions and retrograde optimization into a random walk. Thus, the mutation rate is set low (i.e., 0.1).

Convergence
The iterative search may stop when the target is met. The target of this research is to find the most suitable polishing process sequencing, which means the value of the fitness function reaches its lowest (in other words, it no longer decreases).

Implementation
Based on the proposed method, a prototype system has been implemented to conduct the polishing process planning using Python 3.9.6 and corresponding packages like openpyxl and tkinter. Here is an example. Figure 11 shows a mould, in which ten features need to be polished. The ten polishing features are further divided into twelve polishing operation parts/groups. Table 6 gives the polishing operation selection of the example.  The process sequencing is conducted based on the proposed GA-AHP optimization method. The population size, crossover and mutation rate are 72, 0.8 and 0.1, respectively. As shown in Figure 12, the process sequence is optimized and finally reaches its best fitness. The result is output and provides in Table 7.

Summary
For production toolings such as moulds and dies about twenty percent of the manufacturing costs and around fifty percent of the manufacturing process time are apportioned to finishing operations, such as buffing and polishing. Robotics is seen as one way to reduce these costs and deal with the issue of skilled workers shortage. A part of the movement towards robotic adoption is effective and automatic polishing process planning. This paper has presented a GA-AHP optimization strategy, especially for polishing process sequencing. The strategy is based on the specific constraints and rules for polishing sequencing, which previous research does not address. AHP has been employed to support multiple objectives optimization by defining the required multi-objective fitness function for the optimization, which can consider the best satisfaction of polishing process sequence rules and minimum polishing duration simultaneously. The proposed GA method with a new initialization algorithm and specific genetic operators optimizes the polishing process sequence until it reaches its best fitness. A prototype system based on the proposed method has been developed to demonstrate its effectiveness.

Future works
It is apparent from the results that further work is necessary. Currently, the generated process planning is used to instruct robotic polishing operations, including their settings (e.g., polishing tools, abrasive papers, cutting speed, etc.) and their orders. However, the robot control code is generated manually. The research needs to be extended to interface with the robot driver system to implement a completely unmanned operation environment. Integration of the polishing process plan with the robot control and drive system is required.
In addition, it is valued to explore the potential to further speed the search process by combining the proposed GA-AHP optimization strategy with other algorithms, such as integrating particle swarm optimization (PSO) for quick local search.