## 5 Proposed MOEA/D-AMSF Algorithm
### Adaptive Evolutionary Operators
#### 5.4.2 Adaptive Bi-Layer Mutation with Repair Operator  
Compared with gene recombination of crossover operation, mutation operation can produce new genotypes through gene mutation. Therefore, the mutation operator determines the local search ability of a genetic algorithm. It not only prevents the algorithm from being premature but also maintains the population diversity, thus making the solution to the problem tend to be optimal. In this paper, a single-point mutation is adopted in the early search stage, the reason is similar to that for the crossover operator. When the algorithm evolves to a certain extent, the search may fall into the local optimum (the generation at this point is denoted as \(G_{LO}\)). Therefore, when the evolution generation is greater than \(G_{LO}\), multi-point mutation is used to increase the probability, which enables the search to jump out of the local optimum and produce more new solutions. The mutation probability \(P_{m}\) Equation (18), an adaptive mutation strategy similar to Equation (17), is designed with the aim of achieving the same as described above. \[P_{m}=P_{m}^{min}+(P_{m}^{max}-P_{m}^{min})\times i/G_{max} \tag{18}\]  
where \(P_{m}^{min}\) and \(P_{m}^{max}\) are the minimum and maximum mutation probabilities, respectively. Based on the designed joint routing and core coding scheme with core switching, and combined with the adaptive mechanism mentioned above, we design an adaptive bi-layer mutation with the repair operator. Bi-layer mutation requires that the two-layer genes of routing and core in \(Gene_{i}\) be mutated separately. The principle and specific process are shown in Figure 9 and Algorithm 3, respectively, which is explained as follows. When the number of evolutions is not greater than \(G_{LO}\), the single-point mutation on \(y_{c}^{1}\) or \(y_{c}^{2}\) is performed (lines 3-17). For a single-point mutation, it first generates a random number \(P_{r}\) in (0,1). If \(P_{r}\) is less than the mutation probability \(P_{m}\), a gene site on the chromosome is randomly selected and we set the routing component to a value selected randomly from the remaining legal values. By this rule, we randomly select a gene site denoted by _msite_ (line 5) on the chromosome, i.e., Gene2 located in Figure 9. First, the routing gene in Gene2 is mutated (lines 7-12), and then the path hop (line 13) is updated, which corresponds to the VCGCs length after the routing gene mutation and may be different from the length before mutation. Therefore, we need to perform the specific repair operation for the core gene to ensure that the individuals generated after the final mutation are feasible (line 14). Specifically, we compare the number of hops in the updated path (after mutation) with that before the mutation of routing genes. If the former is less than the latter, then the redundant CGCs are UCGCs, and their values should be set to 0. If the two numbers are equal, the repair operation is not conducted. If the former is greater than the latter, some values are randomly selected in [1, \(\mid\)C\(\mid\)] as the values of supplementary VCGCs. In Figure 9, the blue line box part is VCGCs, and its length increases by one after the routing gene component mutation, shown as the yellow filled part. Finally, a single-point mutation (line 16) is performed on the repaired VCGCs. The process is similar to that of the routing gene component mutation, except that one gene is selected from the VCGCs for mutation, and the mutation value is generated in [1, \(\mid\)C\(\mid\)]. The location of the orange number in Figure 9 represents the gene sites where the routing and core mutation have occurred, and its value corresponds to the routing or core gene value after mutation. When the evolutionary generation is greater than \(G_{LO}\), the multipoint mutation is performed (lines 18-23). The process is similar to that of single-point mutation except that multiple gene sites are randomly selected from the chromosome, and then the single-point mutation is performed on each selected gene.