## 3 Interactive Evolutionary Algorithm
### Interactive Differential Evolution Algorithm Based on Backtracking Strategy  
As a kind of heuristic algorithm, differential evolution algorithm is a greedy strategy in essence, which objectively determines that the optimal solution that does not conform to the greedy rule will miss, and the local optimal solution will inevitably fall into.  
Generally, the greedy selection operator is excellent. However, when the individual is in a locally optimal state, if the greedy selection operator continues to be used, a better vector from the trial and parent vectors will be selected to survive to the next generation. Since the parent vector is a locally optimal value, the newly generated trial vector is likely to continue further in the locally optimal direction. When an individual falls into a local optimal value, it is characterized by stagnation and is difficult to evolve to a better solution [30]. Literature [31] also proposed that greedy selection is difficult to help individuals to jump out of the local optimal value, so it is necessary to develop a new selection operator to help individuals jump out of the local optimal value.  
To solve the above problems, an interactive differential evolution algorithm based on backtracking strategy is proposed, which helps the algorithm to return to a previous state by gradually returning to the upper layer, so as to jump out of the local optimal state. This method has been applied to differential evolution algorithm [32] and particle swarm optimization algorithm [33] respectively, and good experimental results have been obtained in high-dimensional problems.  
As the greedy selection operator performs well when individuals do not fall into local optimum, greedy selection operator is used when individuals do not fall into local optimum, a new selection operator based on backtracking strategy is used when the individual falls into the local optimum. The first step is to determine whether the individual is trapped in a local optimum. An individual is considered to be in a stagnant state when its data is slowly updated within a certain range [34]. Although this method may have a subtle failure rate, it is an effective way to determine whether a target individual is stuck in a local optimum, and a strategy can be developed to reduce the impact of misclassification. The new selection operator borrows the idea of the backtracking algorithm, as shown in Figure 3. A spatial warehouse is set up at each iteration to store the individuals \(Rx\) (\(x\) denotes the number of layers of the current iteration) that failed to compete and were discarded in this round of comparison. When an individual is detected to be trapped in the local optimum at iteration \(y\), vectors \(R_{y-1}\), \(R_{y-2}\), and \(R_{y-3}\) are successively removed from the storage space and one of them is randomly selected to survive to the next generation, and if the individual still does not jump out of the local optimum, vectors \(R_{y-4}\), \(R_{y-5}\), and \(R_{y-6}\) are successively removed from the storage space and removed from [\(R_{y-1}\), \(R_{y-2}\), \(R_{y-3}\), \(R_{y-4}\), \(R_{y-5}\), \(R_{y-6}\)] to choose a random vector to survive to the next generation, and so on. If the parent vector is replaced with a randomly generated vector, it is difficult to guarantee the adaptation value of the random vector and the adaptation value must be calculated, which increases the computational complexity. Therefore, replacing the parent vectors with discarded trial vectors is considered. Since these discarded trial vectors are not passed on to the next generation, individuals evolving based on these vectors are more likely to help individuals jump out of local optima, and Figure 4 shows the complete iterative process of the algorithm. where \(\surd\) represents the better individual who wins in each selection.  
Figure 3: Backtracking strategies.