## 3 Computation Offloading Strategy Based on Improved Polar Lights Optimization Algorithm
### Algorithm Design  
(1) Initializing the Population  
In IPLO, a random initialization method is used to initialize the population, which is presented in the form of a matrix with the specification of N rows and D columns. By randomly generating a set of initial solutions in a given solution space based on the principle of uniform distribution, the algorithm is able to cover different potentially high-quality regions at the beginning and avoid prematurely falling into localized patterns. Thus, the method of initializing the population is denoted as:  
\[X_{N,D}=rand\times(ub-lb)+lb= \begin{bmatrix}X_{1,1}&X_{1,2}&&\ldots&X_{1,D}\\ X_{2,1}&X_{2,2}&&\ldots&X_{2,D}\\ &\vdots&&\ddots&\vdots\\ X_{N,1}&X_{N,2}&&\ldots&X_{N,D}\end{bmatrix}  \tag{26}\]  
where \(ub\) and \(lb\) denote the upper and lower boundaries of the solution space, respectively, and \(rand\) denotes a randomly taken value in the range \([0,1]\). (2) Updating Population Locations  
First, two adaptive weights \(w_{1}\) and \(w_{2}\) are precisely calculated to coordinate the global exploration and local exploitation of the algorithm. These two weights are dynamically adjusted with the evaluation process, denoted as:  
\[w_{1}=\frac{2}{\left(e^{-2\left(t/Mt\right)^{4}}+1\right)}-1 \tag{27}\]  
\[w_{2}=e^{-\left(2t/Mt\right)^{3}} \tag{28}\]  
where the number of initialized adaptation evaluations \(t=0\) and \(Mt\) denotes the maximum number of evaluations. Then, gyration motion is carried out, denoted as:  
\[LS(t)=Ce^{\frac{lb-p}{m}\times t} \tag{29}\]  
Figure 3: Three forms of motion for the IPLO algorithm. where the constant \(C\) provides the basic physical reference for the motion, \(q\) and \(m\) represent the charge and mass of the point-bearing particles and affect the rotational momentum and direction, respectively, \(B\) serves as an analog of the strength of the Earth's magnetic field, which introduces an external guiding force for the particle motion, and the damping factor \(\mu\) mimics the energy loss in the real environment, which effectively controls the amplitude of the rotation and prevents the convergence of the rotation too quickly. Subsequently, it enters the aurora oval walk phase, denoted as:  
\[GS=levy(d)\times(X_{mean}(j)-X(i,j))+lb+\frac{a_{1}\times(ub-lb)}{2} \tag{30}\]  
where \(levy(d)\) is the global search step to guarantee the search efficiency of the algorithm in a large range, \(X_{mean}(j)\) is the center of mass position of the energetic particle population, denoted as \(X_{mean}(j)=\frac{\sum_{i=1}^{N}X(i)}{N}\), and \(a_{1}\) and \(a_{2}\) are taken as the interference terms produced by the environment and other factors on the particles, which take the value in the interval of \([0,1]\). Finally, based on the combined results of the rotational motion and elliptical walk motion, the position changes brought about by the two motions are fused to accurately calculate the final population update position, denoted as:  
\[X_{new}(i,j)=X(i,j)+a_{2}\times(w_{1}\times LS(t)+w_{2}\times GS) \tag{31}\]  
(3) Population Variation  
In order to strongly circumvent the dilemma of falling into the local optimum, high-energy particles need to carry out the mutation operation at the right time, in which an element of randomness is injected into the mutation process to ensure the unpredictability of the direction of the mutation, denoted as:  
\[X_{new}(i,j)=X(i,j)+\sin{(a_{3}\times\pi)}\times(X(i,j)-X(n,j)) \tag{32}\]  
where \(a_{3}\), \(a_{4}\), and \(a_{5}\) are random values of \([0,1]\), \(Z=\sqrt{\frac{t_{i}}{Mt}}\) is the probability of variation, which needs to satisfy \(a_{4}<Z\) and \(a_{5}<0.05\), and \(X(n,j)\) serves as an arbitrary particle in the cluster of particles, whose randomness of selected variations further enriches the diversity of the population. (4) Bounce Boundary Handling Mechanism  
Traditional PLO algorithms usually adopt the truncation method when the particle positions exceed the solution space and directly set the transgression value as the boundary value.