# A Knowledge-Guided Competitive Co-Evolutionary Algorithm for Feature Selection
## 3 Knowledge-Guided Evolutionary Algorithm
### Feature Grouping Based on Correlation
Also, assume that we have obtained feature grouping information \(\{[x_{1}],[x_{2},x_{3}],[x_{4}],[x_{5},x_{6}]\}\) through the method mentioned in the previous subsection. In this setup, when performing mutations or crossovers, the algorithm does not randomly pick single genes but rather entire groups, thereby preserving the intrinsic correlation structure within the data. During a mutation event, instead of a single gene mutation, entire groups such as \(\{x_{1}\}\) and \(\{x_{5},x_{6}\}\) are mutated. This enhances the mutation's effectiveness by ensuring that changes are made to related features together, thus maintaining the logical structure of the data. Similarly, during crossover events, entire groups like \(\{x_{2},x_{3}\}\) and \(\{x_{5},x_{6}\}\) might be swapped between two chromosomes. This group-based approach not only maintains the integrity of feature relationships but also introduces a new dimension of diversity to the gene pool. This enhanced method of guiding the genetic operators using prior knowledge effectively reduces the dimensionality of the problem space. By focusing mutations and crossovers on groups of features that are likely to interact, the KGEA significantly boosts the algorithm's efficiency. It balances the exploration of the search space with the exploitation

Figure 1: Binary encoding for feature selection. of known, valuable regions, thereby improving both the speed and quality of the search for optimal feature sets. ## 4 Competition-Cooperation Evolution

In the KGEA, by introducing data parsing techniques and utilizing knowledge to guide the evolutionary process, the quality and search efficiency of the solutions are significantly enhanced. However, during the evolutionary process, due to the combinatorial features leading to a reduction in the solution space, the solutions obtained by the algorithm may fall into local optima. To further improve the quality of solutions and increase their convergence and diversity, we propose a competition-cooperation evolutionary mechanism called the KCCEA that combines the KGEA with the traditional NSGA-II. This method initializes an allocation ratio, allowing both models to evolve simultaneously, and, by mixing the offspring generated by the two models and randomly assigning them as parents for the next generation, it facilitates the exchange and cooperation of information between the two models. Furthermore, the allocation ratio of resources is adjusted generation by generation based on the success rates of the two evolutionary approaches, achieving dynamic allocation of computational resources and thus enabling the two algorithms to compete effectively. The overall framework of the algorithm is shown in Figure 3.

### Competition-Cooperation Evolutionary Mechanism

The dynamic interaction between the KGEA and NSGA-II within our proposed KCCEA model is fundamentally rooted in the principles of competition and cooperation. This interaction not only enhances the diversity of the solutions but also improves their quality by preventing premature convergence to suboptimal solutions. Initial Setup and Population Division: At the beginning of the evolutionary process, we assume the total number of individuals in the parent population \(P_{t}\) is denoted by \(N_{ind}\), and the initial allocation ratio \(n\) is predetermined based on prior experimental tuning. The parent population is then randomly divided into two sub-populations, \(S_{1}\) and \(S_{2}\). The size of each sub-population, \(n_{1}\) for \(S_{1}\) and \(n_{2}\) for \(S_{2}\), is determined by the allocation ratio as follows:

\[n_{1}=allocation\_ratio\times N_{ind} \tag{2}\] \[n_{2}=(1-allocation\_ratio)\times N_{ind} \tag{3}\]

Evolutionary Operations: Each sub-population undergoes evolutionary operations independently. Sub-population \(S_{1}\) is processed using the KGEA, which emphasizes knowledge-guided mutations and selections, whereas \(S_{2}\) undergoes a more traditional evolutionary path via the NSGA-II, focusing on Pareto optimality.