A Genetic Crow Search Algorithm for Optimization of Operation Sequencing in Process Planning

: Computer-aided process planning represents the main link between computer-aided design and computer-aided manufacturing. One of the crucial tasks in computer-aided process planning is an operation sequencing problem. In order to ﬁnd the optimal process plan, operation sequencing problem is formulated as an NP hard combinatorial problem. To solve this problem, a novel genetic crow search approach (GCSA) is proposed in this paper. The traditional CSA is improved by employing genetic strategies such as tournament selection, three-string crossover, shift and resource mutation. Moreover, adaptive crossover and mutation probability coefﬁcients were introduced to improve local and global search abilities of the GCSA. Operation precedence graph is adopted to represent precedence relationships among features and vector representation is used to manipulate the data in the Matlab environment. A new nearest mechanism strategy is added to ensure that elements of machines, tools and tool approach direction (TAD) vectors are integer values. Repair strategy to handle precedence constraints is adopted after initialization and shift mutation steps. Minimization of total production cost is used as the optimization criterion to evaluate process plans. To verify the performance of the GCSA, two case studies with different dimensions are carried out and comparisons with traditional and some modern algorithms from the literature are discussed. The results show that the GCSA performs well for operation sequencing problem in computer-aided process planning.


Introduction
According to the Society of Manufacturing Engineers, process planning is considered as a systematic definition of methods for economical and productive manufacturing. In Xu et al. [1] it is considered that computer-aided process planning (CAPP), as a crucial component of todays advanced manufacturing systems, can be imagined as the "bridge" between the product design (CAD) and product manufacturing (CAM). CAPP system development has shown to be a very complex task, assuming today's high diversity of products and complexity of planning numerous activities within a process plan in different manufacturing conditions. The consequence reflects the fact that CAPP systems are at the lower level of implementation in industry and therefore represent a bottleneck in integrated production environment, as stated by Lukić et al. [2].
As reported in Denkena et al. [3], the main activities of process planning, whether computer-aided or manual, are the following: receiving order and design details, selecting raw material and shape, selecting process technology, determining process order, preparing a process plan (including activities such as the selection of machining operations, sequencing of machining operations, selection of cutting tools, determination of setup requirements, calculations of cutting parameters, selection and design of jigs and fixtures, planning tool paths, estimating processing setup costs and times) and generating planning output (CNC programs, routing sheets, operation sheets etc.). The aim of these stages of process planning is to transform the part design (drawing of a part or a product) into a finished physical part or product in a cost-effective and competitive way.
Among the mentioned activities, the sequencing of machining operations, i.e., the operation sequencing, has been considered as one of the most complex optimization tasks in scientific community. Two main steps of the operation sequencing task are taken into account: (1) selecting the most suitable machining resources such as machines, tools and tool approach directions based on the specific machining features that have to be machined and (2) finding the sequence of all machining operations for a considered part with respect to precedence relationships among operations and features. Such tasks, when handled simultaneously, form a process plan which is evaluated using certain optimization criteria, such as the minimization of production time or minimization of production cost.
According to many authors such as Duo et al. [4], Falih and Shammari [5], Gao et al. [6], Petrović et al. [7] and Huang et al. [8], the operation sequencing is classified as an NP hard optimization problem due to computational ineffectiveness when dealing with these problems using conventional non-heuristic techniques. Milošević et al. [9] reported that metaheuristic algorithms have proven to be robust and efficient methods for these challenges and are therefore employed to find near-optimal solutions in an acceptable time period. Many intelligent metaheuristics have been applied in operation sequencing and process planning optimization in the last few decades. Among them, we can primarily mention traditional optimization approaches, such as genetic algorithms, ant colony optimization, particle swarm optimization or simulated annealing. Nowadays, novel modifications in terms of constraint handling mechanisms, representation of individual solutions and different techniques for improving local and/or global search abilities are still being proposed. In the next section, we will highlight the most recent advances in this area of research.

Related Work
Wang et al. [10] proposed a hybrid particle swarm-based method to solve the process planning problem. A novel representation scheme besides two local search algorithms were introduced to improve solutions in each generation. In work by Huang et al. [11], a hybrid approach based on operation precedence graph and genetic algorithm was developed. Topologic sorting algorithm was used to ensure feasibility of solutions and a modified crossover operator with two mutation strategies were adopted. A socio-politically inspired metaheuristic called imperialist competitive algorithm for process planning optimization was proposed by Lian et al. [12]. Various flexibilities were taken into account and the steps such as assimilation, position exchange, imperialist competition and elimination were proceeded to solve the NP hard problem. Liu et al. [13] developed an ant colony optimization algorithm reinforced with the constraint matrix and the state matrix to check the state of the operations and range of operation candidates. A honey bees mating algorithm was implemented by Wen et al. [14]. The solution encoding, crossover operator and local search strategies have been employed to verify the performance of this metaheuristic. Wang et al. [15] presented a two-stage ant colony optimization algorithm to minimize the total production cost. In this approach, a directed graph is used to represent the process planning problem. In the first stage, the operation nodes are selected and the graph is reduced to a simple graph. Later, in the second stage, the selected operations are used to create the sequence and generate process plans. Petrovic et al. [7] utilized particle swarm optimization and chaos theory to solve the flexible process planning problem. Various flexibilities were represented using AND/OR networks and the total production time and cost were used to develop the mathematical model for the minimization of objective function. Hu et al. [16] proposed an ant colony optimization algorithm-based approach to solve the operation sequencing problem in CAPP. Precedence and clustering constraint relationships are taken into account to ensure the feasibility of process plans. Global search ability is enhanced using adaptive updating method and local search mechanism. A hybrid genetic algorithm and simulated annealing approach to optimize the production cost of a complicated part in a dynamic workshop environment was proposed by Huang et al. [8]. The directed graph was used to model precedence relationships among machining operations and the graph search algorithms were embedded into framework of the optimization system. Su et al. [17] presented precedence constrained operation sequencing problem as a mixed integer programming model and incorporated an edge selection based strategy in the genetic algorithm to solve the problem. The novel encoding strategy assures the feasibility of solutions in the initialization stage with acceptable probability, and therefore improves the GA's convergence efficiency. Dou et al. [4] developed a feasible sequence-oriented discrete particle swarm optimization algorithm that is also directed toward generating feasible operation sequences in the initial stage of the algorithm. A crossover-based mechanism is adopted to evolve the particles in discrete feasible solution space. On the other hand, fragment mutation, as well as greedy and uniform mutations, are used to alter the feasible sequence and machining resources respectively. The adaptive mutation probability is used to improve the exploration ability of the approach. A new mixed-integer linear programming mathematical model is developed and represented on OR-node network graph in the recent study proposed by Liu et al. [18]. A new hybrid evolutionary algorithm is designed on the basis of this MILP model, which combines a genetic algorithm with a simulated annealing algorithm. Moreover, the tournament selection with the varying tournament size was included to prevent the algorithm from premature convergence and increased randomness. Gao et al. [6] proposed the intelligent water drop algorithm in process planning optimization. A priority constraint matrix was used to generate feasible process plans. Falih and Shammari [5] proposed a hybrid constrained permutation algorithm and genetic algorithm approach. A constrained permutation algorithm is employed to generate feasible operation sequences and a genetic algorithm is then used to search for an optimal solution within the feasible search space. A mixed crossover operator in the GA is used to avoid premature convergence to local optima. In a study by Jiang et al. [19], authors proposed the novel fairness-based transaction packing algorithm for permissioned blockchain empowered industrial IoT systems. A heuristic algorithm and a min-heap-based optimal algorithm were employed to solve the fairness problem. Since the fairness problem is related to the sum of weighting time of the selected transaction, it is transformed into the subset sum problem and the extensive experiments were conducted to verify the performance of the fairness-based transaction packing algorithm.
In this paper, a novel improved metaheuristic approach called a genetic crow search algorithm (GCSA) is introduced for optimization of operation sequencing problem. The approach combines the classical CSA with the main components of the GA algorithm and through the joint action from local and global perspective of a population (flock) the evolution of crow individuals is achieved. The operation precedence graph (OPG) is utilized to represent the operation candidates, i.e., crow individuals with regard to corresponding precedence relationships among operations. Then, the initial population (flock) of crow individuals is constructed using vector-based representation to generate a group of feasible individuals. After the main steps of the CSA, a newly proposed nearest resource mechanism is applied to ensure the vectors of each crow individual are set to the nearest integer values. The evolution of the flock of crow individuals starts in the next stage, which consists of five strategies. Firstly, the tournament selection ensures that the most fit crow individuals from the flock are selected and the 3SX crossover operator is applied to generate new crow individuals. The shift mutation strategy is then used to exchange random genes from crow individuals. The feasibility of these crow individuals is questioned, and in that sense, the constraint repair mechanism is used to ensure that infeasible solutions are converted to the feasible domain. The evolution of crow individuals ends with resource mutation, which performs minor changes in genes of machine, tool and TAD vectors, respectively. Using adaptive crossover and mutation probabilities, the exploration ability of the GCSA is improved. The input parameters of the algorithm are optimized using the Taguchi design of experiments, in order to obtain the optimized parameter settings. In each iteration of the GCSA approach, the position of crow individuals is evaluated using the fitness function and the memory of crow individuals is updated. To verify the performance of the proposed algorithm, two case studies with different level of dimensionality are considered. The computational results show that the proposed GCSA performs well and can be considered an efficient method for solving the operation sequencing problem.
The rest of the paper is organized as follows. Section 2 describes the operation sequencing model by focusing on vector-based representation, data types and precedence constraints.

Operation Sequencing: Problem Formulation
Operation sequence in process planning consists of a number of selected operations required for feature machining, a sequence of these operations, machining resources such as machines, tools and tool approach directions (TADs), as well as setup plans. Since the capability and the availability of machining resources has an important role when generating operation sequences, several principles have to be considered according to Su et al. [17]: (1) Setup plan includes a group operations that can be performed with the same TADs.
(2) These operations have to be machined using the same machine.
(3) Reduction of machine, tool and TAD changes is an objective. (4) Only one operation can be performed on a single machine. (5) Only one operation can be performed using a single cutting tool. (6) Only one TAD can be used in a given time.
In this study, an operation sequence is represented using vectors with n bits of data. Those bits are integer values where each value contains relevant manufacturing information. Seeing that the optimization task considers the simultaneous sequencing of operations and selection of machining resources, four vectors are used to illustrate a single process plan. Figure 1 shows a simple example of a represented process plan with a total of 5 machining operations indexed from 1 to 5 (the first row). An operation sequence vector is marked with darker color and consists of bit numbers named Operation[n]. For example, Operation [3] considers the operation number 5. Under the same index, there are machine m3, tool t3 and TAD -z. These candidates are elements of the machine vector Machines[n], the tool vector Tools[n] and the TADs vector TADs[n] respectively and are visualized in a light grey color. Since the MATLAB programming environment was selected for the implementation of the proposed GCSA approach, therefore, we will place emphasis on the types of data considered when dealing with the operation sequencing problem. All variables with their data types are shown in Table 1. Table 1. Data types of the operation sequencing variables.

Data Types
Variables Description The ID of the operation as a part of an operation sequence double

Machines[n]
The ID of the machine as a part of a machine vector of n machines for performing n operations double

Tools[n]
The ID of the tool as a part of a tool vector of n tools for performing n operations

Precedence Constraints
The precedence constraints within operation sequencing are formulated according to relevant geometrical and manufacturing considerations. They indicate the precedence relationships between operations required to generate a feasible machining sequence. Hu et al. [16] classified constraint relationships into the precedence and the clustering constraints. The precedence constraints are obligatory conditions that must be met, while on the other side, the clustering constraints do not need to be met but have effect on machining efficiency and quality. The precedence constraints can be classified into eight types: datum relationships, primary and secondary relationships, face and hole relationships, processing stage relationships, feature priority relationships, thin-wall relationships, fixed order of operations relationships and material-removal relationships. Li et al. [20] made similar classification on hard and soft constraints, where hard constraints represent obligatory conditions, while soft constraints can be violated if necessary.
To visualize precedence relationships between operations, we adopted an operation precedence graph model (OPG). The OPG is a directed graph consisting of vertices and edges, OPG = (V, E), where vertices V represent the set of operations, while edges E denote the set of links between operation vertices. Each operation element within the operation vector is mapped to the corresponding vertex of the OPG. On the other hand, each precedence relationship is visualized using edges. Vertices that are not linked with edges have no precedence relationships between them. For easier manipulation of the data concerning precedence relationships, adjacency or precedence matrix has been adopted. Figure 2 shows the main elements of OPGs and their mapping to a matrix form. Using a simple example with five operations and four precedence constraints a precedence matrix PM is designed. The value pc[i,j] is a binary value which represents whether operation i precedes operation j or not. As shown, number 1 denotes that there is a precedence relationship between observed operations while 0 shows the lack of any precedences, i.e., no edge between operation i and operation j. By following the edges of an OPG, all the vertices should be traversed in order to obtain a feasible operation sequence.

Crow Search Algorithm
Crow search algorithm (CSA) was introduced in 2016 by Askarzadeh [21]. Its inspiration is derived from the crows' intelligent behavior exhibited in their ability to hide food and use memory to recall and restore the food when necessary.
Generally, crows are considered as one of the most intelligent living organisms on the planet, with many distinctive attributes such as self-awareness, sophisticated communication, face remembrance, food hiding, memorization, thievery, thievery avoidance and so on.
Their well-known greediness and cleverness is particularly demonstrated in situations when they observe other crow's movement with the purpose of finding better source of food and steal it once they are gone. Afterwards, crow thieves make sure they hide the stolen food and therefore avoid being victims of thievery as the previous owners. Another important element of cleverness is reflected in the fact that a crow can find out when the other crow is following it. Then, the crow that is being followed can fool the other crow by changing the direction of their flight.
From a computational point of view, the CSA algorithm is a population-based optimization algorithm which utilizes some of the exhibited crow's intelligence. A flock of crows may consider a population of search agents N where each crow i has its position x it i at iteration it. Every crow in a flock can memorize its hiding place whose position can be denoted as m it i . Similar to the personal best position (local best) of each particle in the PSO algorithm, the CSA considers the memory M it i the best food source (hiding place) the crow i found so far. Flying around the search space and moving towards another crow's hiding place helps crows to update their position and memory and possibly find a better food source. Two important states are possible when crow i tries to steal hidden food of crow j: State 1: Crow j is not aware that is followed by crow i, resulting in the situation when crow i successfully commits thievery by moving towards the hiding place of crow j using the following expression: where X it i . and State 2: Crow j realizes that it is followed by crow i and fools crow i by choosing a new position randomly in order to save its food: where rand j denotes a random number in range [0,1] and AP is awareness probability. Two most important parameters of the flight length and the awareness probability. The role of the flight length parameter f l is to achieve equilibrium between local and the global search. Small values direct the search towards the local optimum (close to X it i ) and large values prone towards the global optimum (away from X it i ). Awareness probability AP also has the similar role in balancing intensification and diversification. Just as for the flight length, small values of AP increase local search capacity, and evidently, larger values emphasize global search capacity.

GCSA Methodology
The traditional CSA has been implemented mostly on continuous optimization problems with a small number of research studies done on their application in combinatorial optimization. Huang et al. [22] proposed a hybrid HCSA approach to solve the NP hard permutation flow shop scheduling problem (PFSP). They used several techniques to minimize the makespan of the PFSP, such as the smallest position value (SVP) rules to convert continuous to discrete values or job numbers, Nawaz-Enscore-Ham technique to generate a population of quality individuals and simulated annealing and variable neighborhood search algorithms to maintain the diversity of solution throughout the search process. Laabadi et al. [23] used the binary CSA to solve the two-dimensional bin packaging problem, which is also an NP-hard combinatorial problem. This approach utilizes a sigmoid function for mapping real-valued solution into binary ones and specific knowledge repair operator to improve diversity and restore feasibility of infeasible solutions.
The issues of the CSA are mostly expressed by low convergence rate and entrapment in the local optima, as reported in Shirke and Udayakumar [24]. Fine tuning of the algorithm and modifications performed by various authors significantly boosted the performances of the CSA. In our study, we attempt to improve the traditional CSA in order to solve the NP hard process planning optimization problem. Therefore, we introduce a hybridized approach based on the CSA and the main components of the GA. Moreover, adaptive probability coefficients for scaling crossover and mutation operators are included to achieve the trade-off between exploration and exploitation, Dou et al. [4]. The steps of the GCSA approach are depicted on the flowchart in Figure 3.
After initializing the starting parameters of both CSA and GA, the next step is to generate population of feasible individuals using vector-based representation that presents operation sequence, machine, tool and TAD vectors as components of a single process plan. Vectors representing positions of crows in a search space are then evaluated using fitness function described in Section 4.3. They are memorized as the best local solutions found so far by each crow, after which the best solution in the flock is stored. The main loop of the GCSA starts with the standard CSA steps described by Equations (1) and (2). After these steps, the nearest resource mechanism is employed to round the resulting vector elements to the nearest integers, according to the available machine, tool and TAD candidates. The process continues with the genetic strategies which are utilized to improve diversification of search process. Here, we adopted tournament selection, 3SX crossover operator and two mutation operators, shift and resource mutation. Repair mechanism is required after the initialization stage and shift mutation to ensure feasibility of crow individuals. Then, the GCSA steps continue with the evaluation of objective function and the update of crow's memory and the best solution (global). The search finishes after a predefined number of iterations. In the following sections, some steps are expressed in a more detailed manner.

Evaluation Criterion of the Operation Sequencing Problem
Numerous studies conducted to this day have taken into account two most common evaluation criteria for operation sequencing, manufacturing (production) time and cost. According to [6,8], detailed information about tool paths and machining parameters is not available and therefore it is not possible to accurately determine the machining cost and machining time. Hence, the total cost of production is adopted as the optimization criterion in this research. The total production cost with weight coefficients consists of the five cost factors: The full description of all cost factors can be found in [4][5][6][7][8]11,14]. The total weighted production cost (TWPC) finally represents the sum of these five cost factors: where w 1 -w 5 are the corresponding weight coefficients of cost factors.

Nearest Resource Mechanism
After the main CSA steps in the GCSA approach, the values in position vectors of crow individuals are not positive integers and the next step is to convert the real values obtained by the CSA to the closest number that matches an appropriate machine, tool or TAD candidate from the set. Here, we present the nearest resource mechanism to perform the round-off procedure and assure the newly generated positions are ready for the next stage. Besides the machine and the tool vectors, the TAD position vector is represented using integer values that match the appropriate directions which are denoted as letters with negative or positive signs. In Algorithm 1 below, we show the pseudocode of the most important steps of the nearest resource mechanism. The mechanism in this example is applied to machine vector, although the principle is the same for tool and TAD vectors.

Algorithm 1. The nearest machine mechanism
Machines{} -set of all machine candidates for each operation currentMachine -current machine candidate currentOperation -current operation in a process plan diff = |Machines{currentOperation} -currentMachine| for i =

Genetic Components of the GCSA Approach
When producing a new generation of individuals, selection, crossover and mutation represent the crucial components of genetic algorithms. By mimicking the process of natural selection, they enable a population of solutions to evolve during a certain number of generations.
The first step in this process is a selection. A tournament selection operator has been adopted in this study. A few crow individuals from the flock are randomly selected to participate in the "tournament" and the crow individual with the highest fitness value wins the "tournament" and becomes a part of a new flock that consists of the best crow individuals that had previously won the competition. The selection step is followed by the crossover operator whose purpose is to provide information exchange between two crow individuals from a flock. In this case, the threestring crossover (3SX) proposed by Falih and Shammari [5] was adopted. The 3SX operator affects only resource vectors, e.g., machine, tool and TAD vector respectively, leaving the operation sequence vector untouched and thereby assuring the feasibility of a process plan. The following steps characterize the 3SX crossover operator: (1) Two crows from a new flock are randomly selected as parent crows; (2) From random cutting point, two parent crows are divided into sections to produce two child crows; (3) Resources (machines, tools and TADs) from the right section of child crow 1 are replaced by resources of the same operations from parent crow 2; (4) Following the same pattern, resources in the right section of child crow 2 are replaced by resources of the same operations from parent crow 1. Figure 4 illustrates the 3SX crossover operator applied on the 7-gene length crow individual, with a random cutting point between the 4th and 5th operation index. Mutation strategies bring a finishing touch to the genetic process of producing new and fitter individuals. They aim to make further improvements in diversification and avoid premature convergence of the algorithm. The first mutation operator used within the GCSA approach is the shift mutation illustrated in Figure 5. A single crow individual is randomly selected from a newly formed flock of crows and two genes (operations with its resources) are randomly selected for exchange. After exchanging the two, some of the precedence constraints may be violated, which affects the operation sequence and therefore the feasibility of a process plan. In that case, the repair mechanism has to be employed to ensure all the crows represent feasible individuals. The same mechanism is applied after the initialization stage of the GCSA. We adopted an approach similar to the constraint handling heuristic proposed by Huang et al. [11].
The second mutation operator is the resource mutation which, similarly to the 3SX crossover operator, operates on resource vectors, machine, tool and TAD vector respectively. The feasibility of operation sequence is therefore not questioned. The following are the steps of the resource mutation operator illustrated in Figure 6:    As reported by Dou et al. [4], fixed operators have shown to be less effective comparing to the adaptable operators, whose values vary in response to the fitness of individuals. To additionally improve search abilities of the GCSA, we included adaptive crossover and mutation probabilities: where f max and f avg are the maximal and the average fitness value among all crow individuals in the flock, f i is the fitness of the current crow individual and k c1 , k c2 , k m1 , k m2 are specific probability scale factors for crossover and mutation operators, respectively.

Case Studies
In this paper, two experimental models are used to verify the feasibility and efficiency of the proposed GCSA optimization approach, which was coded using MATLAB environment and executed on a 1.99 GHz Intel i7 processor and 8 GB RAM computer. The first case study, which represents a common test example in process planning optimization, considers the prismatic part that was initially proposed by Guo et al. [25]. It contains 14 recognized machining features and 20 selected operations. The significant manufacturing information concerning features, operations, resources as well as precedence constraints is given in Table 2. The 3D solid model with the corresponding operation precedence graph (OPG) are shown in Figure 7.  The second case study considers a complex part taken from Huang et al. [8] that consists of 28 machining features and a total of 46 machining operations. Its main manufacturing information is given in details in Table 3. The solid model of this complex part with the corresponding OPG are represented in Figure 8. The cost indices for both Part 1 and Part 2 are given in Table 4.

Parameter Settings
In order to achieve the best possible parameter settings for the GCSA approach, we applied the Taguchi design of experiments to optimize the input parameters. The Taguchi design of experiments uses orthogonal arrays to obtain a certain number of experiments that can provide information of all factors that affect the performance of some process as expressed by Dou et al. [4]. Based on the input parameters of the GCSA and appropriate levels of variations, an experimental design matrix was formed using the standard L 32 Taguchi orthogonal array with 32 experimental trials. In the mentioned case studies at the input of the experimental design, the following GCSA parameters are varied: maximal number of iterations, flock size, awareness probability, flight length, tournament size and scale factors k c1 , k c2 , k m1 and k m2 . Accuracy is increased by repeating every experiment 20 times. Therefore, the average result, the minimal result and the maximal result are used as the output parameters. Since the two cases significantly differ in dimensions, we formed two different experimental designs in terms of levels of variation to optimize the GCSA parameters for both. In that sense, the adopted levels of variation of Part  (2 9 ) orthogonal array with 32 experiments is used. Table 5 shows the optimal GCSA parameter settings for two case studies after the response optimization using Taguchi experimental design and Minitab statistical tool.  T  TC  M  MC  T  TC  T  TC  m1  10  t1  7  m1  25  t1  5  t15  4  m2  40  t2  5  m2  45  t2  6  t16  3  m3  100  t3  3  m3  50  t3  7  t17  4  m4  60  t4  8  m4  55  t4  12  t18  2  t5  7  m5  20  t5  13  t19  2

Computational Results and Analysis
To verify the flexibility and feasibility of the GCSA approach, we proposed two case studies with several conditions. The obtained results for each condition are discussed and the feasibility of this algorithm is verified by performing comparisons with traditional and modern algorithms.
For Part 1 proposed by Guo et al. [25], the optimized parameter settings shown in Table 5 is adopted. Using these parameter settings, Part 1 was considered for three different conditions: (1) All manufacturing resources are available.
(2) Tool costs and tool cost changes are excluded.
(3) Same as the second with machine 2 and tool 8 not available.
The calculation results were obtained for each of the defined conditions and the best process schemes with minimized production cost are shown in Table 6. To present the experimental results more clearly, the comparison with results obtained by traditional and modern approaches from the literature is shown in Table 7 and includes the following comparative algorithms: IWD by Gao et al. [6], CPAGA by Falih and Shammari [5], HBMO by Wen et al. [14] and GA, SA and TS results also adopted from Wen et al. [14]. The GCSA was run 20 times to verify the consistency of the obtained results. For the first condition, the minimal production cost achieved by the GCSA is 2502, which appeared 9 times. The next minimal cost is 2507 which appeared in 7 runs of the GCSA. In terms of the minimal and the average TWPC (2507 and 2516, 9), according to comparative results in Table 7, it can be concluded that the GCSA outperforms other approaches, traditional and modern ones. The worst result obtained by the GCSA slightly deviates from several algorithms in this comparison. As far as the second and third conditions are concerned, the GCSA showed similar performances. For the second condition, the minimal, the maximal and the average values of the TWPC are 2020, 2080 and 2047, respectively. In comparison with other approaches, the GCSA proved its superiority regarding all three statistical parameters. For the third condition, the TWPC of 2500 appeared 20 times in 20 runs, making it the most consistent result in this study. Apart from the CPAGA, other approaches did not show similar performances. All the results from Table 7 are graphically depicted in column charts presented in Figure 9. The x-axis shows the minimal, the maximal and the average result obtained by each algorithm in the comparative study, while the y-axis shows the values of the TWPC.  In the second study for Part 2 reported by Huang et al. [8], the optimized parameter settings also given in Table 5 are used. Since this part model has been recently proposed in scientific community, only two relevant approaches tested on this model can be adopted. The comparative results between the GCA with the CPAGA by Falih and Shammari [5] and GA-SA by Huang et al. [8] are shown in Table 7. Part 2 was carried out using two conditions: (1) All manufacturing resources are available.

Conclusions
This paper proposed a genetic crow search algorithm (GCSA) approach to deal with the operation sequencing problem in computer-aided process planning. The traditional CSA algorithm was improved using genetic components of the GA, such as tournament selection, three-string crossover, shift mutation and resource mutation strategies which were employed to balance exploration and exploitation capabilities of the GCSA. Adaptive crossover and mutation probability coefficients were also added for that purpose. The OPG graphs were introduced to represent precedence relationships among operations within a sequence, and the vector representation was adopted to manipulate the data in Matlab programming environment. The nearest resource mechanism was proposed to apply the round-off procedure after the main CSA steps. In order to assure the feasibility of crow individuals, the repair mechanism was employed after the initialization stage and after the shift mutation. In the experimental stage, two dimensionally different case studies were adopted to test the performances and flexibility of the GCSA. The adopted evaluation criterion of the operation sequencing problem was the total production cost. For several conditions, the GCSA was tested and compared with the performances of other algorithms from the literature. The comparative results are presented in tables and graphs and the GCSA showed good performances for two case studies.
As far as future work is concerned, additional modifications of the proposed GCSA approach can be made to further increase global ability of the GCSA and improve the consistency of the obtained results. Moreover, ways of including relevant information about machining parameters into operation sequencing optimization should be considered. In addition, the focus can also be on further enriching the comparative analysis by taking into consideration various other metaheuristics, hybrid algorithms and optimization methods.
Finally, directions toward incorporating CSA with different heuristic mechanisms and metaheuristics other than genetic algorithms will be taken into account.