## 5 Grey Wolf Algorithm  
### Principle of Traditional Grey Wolf Algorithm  
The vehicle path problem [31] is already proven to be an NP-hard problem, which is significantly enormous in size and almost impossible to be implemented by exact algorithms. In this paper, we attempt to solve this problem by optimizing an existing algorithm, the grey wolf algorithm. The Grey Wolf Optimizer (GWO) is a pack optimization algorithm, proposed by [PERSON] et al. in 2014 [32], which performs search optimization by simulating the predatory behavior of wolf packs. The algorithm population was divided into \(\alpha\), \(\beta\), \(\delta\), and \(\omega\), and the priority was set. Alpha has the highest priority and is responsible for guiding the search direction of the algorithm. The priority of \(\beta\), \(\delta\), and \(\omega\) successively decreases, and the population hierarchy diagram is shown in Figure 3.  
To simulate the social hierarchy of a grey wolf pack, we set a unit \(\alpha\), a unit \(\beta\), and a unit \(\delta\), and they will guide the other units to search for the target. During the search process, the position of unit \(\alpha\) is \(X_{\alpha}\) (\(X_{\alpha 1}\), \(X_{\alpha 2}\), \(\cdots\)\(X_{\alpha n}\)). The position of unit \(\beta\) is \(X_{\beta}\) (\(X_{\beta 1}\), \(X_{\beta 2}\), \(\cdots\)\(X_{\beta n}\)). The location of unit \(\delta\) is \(X_{\delta}\) (\(X_{\delta 1}\), \(X_{\delta 2}\), \(\cdots\)\(X_{\delta n}\)). Unit \(i\) could be an individual in \(\alpha\), \(\beta\), \(\delta\), and \(\omega\) with a current position that is \(X_{i}\) (\(X_{i1}\), \(X_{i2}\), \(\cdots\)\(X_{in}\)). Unit \(\alpha\) directs unit \(i\) to move  
Figure 3: Wolf pack hierarchy diagram [33].  
to the next position, which is \(X_{xi}\) (\(X_{xi1}\), \(X_{xi2}\), \(\cdots\) \(X_{ain}\)). The formula of the calculation is as follows:  
\[D_{xN}=|C_{1}X_{xN}-X_{iN}| \tag{19}\]  
\[X_{aiN}=X_{aN}-A_{1}D_{aN} \tag{20}\]  
Equation (19) represents the distance between units and their target, and Equation (20) indicates the location of the command given by the alpha to unit \(i\) at the Nth iteration. A and C are coefficients, and the formula is calculated as follows:  
\[A_{1} =2a\tau_{1}-a \tag{21}\]  
\[C_{1} =2\tau_{2} \tag{22}\]  
where \(a\) is the convergence factor, which decreases linearly from 2 to 0 as the number of iterations increases, and \(r_{1}\), \(r_{2}\) are random numbers from 0 to 1.  
In the process of iteration, units \(\beta\) and \(\delta\) lead the population to surround the target under the leadership of unit \(\alpha\). Assuming that units \(\alpha\), \(\beta\), and \(\delta\) know the potential location of the target and direct the other units to update their positions according to the positions of \(\alpha\), \(\beta\), and \(\delta\), to gradually approach the target, the position update diagram is shown in Figure 4.  
The way a unit approaches the target is as follows:  
\[D_{\beta N}=\left|C_{2}X_{\beta N}-X_{iN}\right| \tag{23}\]  
\[D_{\delta N}=\left|C_{3}X_{\delta N}-X_{iN}\right| \tag{24}\]  
where \(C_{1}=C_{2}=C_{3}\)\(=2\tau_{2}\), and the next potential position of the population guided by the unit \(\alpha\) is  
\[X_{\beta N}=X_{\beta N}-A_{2}D_{\beta N} \tag{25}\]  
Figure 4: Unit location update map.  
\[X_{\delta iN}=X_{\delta N}-A_{3}D_{\delta N} \tag{26}\]  
Equation (25) represents the next potential position of the unit \(i\) guided by unit \(\beta\), and Equation (26) represents the next potential position of unit \(i\) guided by unit \(\delta\), where \(A_{1}=A_{2}=A_{3}=2 ar_{1}-a\); then, the next position of the unit \(i\) guided by the unit \(\alpha\), \(\beta\) and \(\delta\)\(X_{i}\) is calculated as  
\[X_{iN}=\frac{X_{aiN}+X_{\beta iN}+X_{\delta iN}}{3} \tag{27}\]