## 3 Proposed Algorithm  
### Population Initialization Based on Tent Mapping  
Before the execution of PIO algorithm, the parameters and pigeon cluster sequence need to be initialized. The parameters include: \(N_{p}\), \(N_{\text{C1}},N_{\text{C2}}\), \(X_{i}(1)\), \(V_{i}(1)\), where \(N_{\text{C1}}\) and \(N_{\text{C2}}\) represent the maximum iteration times of the map and compass part and the landmark part, respectively, and \(N_{\text{C1}}<N_{\text{C2}}\). The pigeon cluster initialization sequence is generated using tent mapping. There are small periods and unstable periodic points in traditional tent chaotic sequences. According to the ideas in [23], the traditional tent mapping is improved in this paper. In order to avoid it falling into small periodic points or unstable periodic points and at the same time not destroying the three characteristics of chaotic variables, we optimized the original tent mapping expression as follows. Random variable \(rand(0,1)\times\frac{1}{NT}\) is introduced into the original tent mapping expression, and the improved expression is shown as follows. \[z_{i+1}=\left\{ \begin{array}{ll}2z_{i}+rand(0,1)\times\frac{1}{NT},&0\leq z \leq\frac{1}{2}\\ 2(1-z_{i})+rand(0,1)\times\frac{1}{NT},&\frac{1}{2}\leq z\leq 1\end{array} \right. \tag{10}\]  
The expression after the Bernoulli transformation [24] can show that  
\[z_{i+1}=(2z_{i})mod1++rand(0,1)\times\frac{1}{NT} \tag{11}\]  
where, \(z_{i+1}\) is the generated chaotic sequence, \(NT\) is the number of particles in the chaotic sequence, and \(rand(0,1)\) is the random number between \([0,1]\). First, generate the initial value \(z_{0}\) in the interval \([0,1]\), denoted by \(i=0\); then, according to the above Equation (11), loop iteration is carried out to generate \(Z\) sequence, with \(i\) increasing by \(1\). When the number of iterations reaches the maximum, the program is over, and the generated \(Z\) sequence will be saved as the initialization pigeon cluster sequence of this algorithm. In the process of initialization, adding chaotic mapping makes the initial sequence generated more random and covers a wider area, which can get a better distribution of pigeons. Implementation steps of population initialization are shown in Algorithm 1. ```
Step1: Initialize the population to generate the initial value \(z_{0}\) in the interval \([0,1]\), denoted by \(i=0\). Step2: Equation (13) is used for iteration to generate \(Z\) sequence, with \(i\) increasing by \(1\). Step3: If the maximum number of iterations is reached, the program will stop and the resulting \(Z\) sequence will be saved. ### Iterative Updating Based on Disturbance Mechanism

In the late iteration of the map and compass part of PIO algorithm, all the pigeons gradually gather together, and the optimal position of the pigeon colony only changes very little over a long period of time. In this case, the position updating of pigeons is very slow, and each pigeon will slowly move until it finally converges to a certain position in the search space. In this case, it will fall into local optimum. To solve the above problem, this paper proposes an optimization algorithm (CDPIO), which introduces tent chaotic disturbance in the iterative update phase to increase the global search ability of the algorithm. In the iterative update stage, the pigeon mainly adjusts its direction through a compass to find its destination. In the \(d\) dimensional search space, each pigeon \(P_{i}\) has two attributes: position \(X_{i}\) and speed \(V_{i}\). Pigeons will use a map and compass and update their position and speed according to the appropriate strategy. Pigeons familiar with the landmark flew directly to their destination, while those unfamiliar followed them. Each pigeon will reach its destination as fast as possible through the center pigeon. After the completion of one iteration of the algorithm, the fitness \(f_{i}\) of each pigeon and the average fitness \(f_{avg}\) of the flock were calculated.