Multi-Objective Whale Optimization Algorithm for Computation Offloading Optimization in Mobile Edge Computing

Computation offloading is one of the most important problems in edge computing. Devices can transmit computation tasks to servers to be executed through computation offloading. However, not all the computation tasks can be offloaded to servers with the limitation of network conditions. Therefore, it is very important to decide quickly how many tasks should be executed on servers and how many should be executed locally. Only computation tasks that are properly offloaded can improve the Quality of Service (QoS). Some existing methods only focus on a single objection, and of the others some have high computational complexity. There still have no method that could balance the targets and complexity for universal application. In this study, a Multi-Objective Whale Optimization Algorithm (MOWOA) based on time and energy consumption is proposed to solve the optimal offloading mechanism of computation offloading in mobile edge computing. It is the first time that MOWOA has been applied in this area. For improving the quality of the solution set, crowding degrees are introduced and all solutions are sorted by crowding degrees. Additionally, an improved MOWOA (MOWOA2) by using the gravity reference point method is proposed to obtain better diversity of the solution set. Compared with some typical approaches, such as the Grid-Based Evolutionary Algorithm (GrEA), Cluster-Gradient-based Artificial Immune System Algorithm (CGbAIS), Non-dominated Sorting Genetic Algorithm III (NSGA-III), etc., the MOWOA2 performs better in terms of the quality of the final solutions.


Introduction
With the rapid development of technologies, terminal devices, especially Internet of Things (IoT) devices and smartphones, are limited in resources, while applications running on them are resource-hungry. In this case, cloud computing allows data from terminal devices to be processed at servers through the Internet, relieving computation pressure at the terminal devices [1]. Unfortunately, some applications are latency-sensitive and compute-intensive; cloud computing is not suitable for these applications [2]. As a supplement of cloud computing, edge computing deploys small-size cloud-computing-like capabilities at the edge of the network [3]. The main difference between these two technologies is reflected in the physical location where storing and processing are performed [4]. Edge computing turns centralized clouds into distributed pervasive fogs. Terminal devices can send data to the closest server with lower latency and lower power consumption. Moreover, edge computing has better cognition [5], agility and security [6]. Additionally, the combination of 5G technology and edge computing produces new developments in many areas, such as smart robots and smart farming [7].
Computation offloading plays an essential role in edge computing. It is firstly proceeded in cloud computing and then used in edge computing. Devices can transmit computation tasks to servers to be executed through computation offloading. Additionally, not all the computation tasks can be offloaded to servers in common cases with the limitation of network conditions [8]. Therefore, it should be quickly decided how many tasks should be executed on servers and how many should be executed locally. Only properly offloaded computation tasks can achieve the Quality of Service and increase the Quality of Experience.
Optimizing computation offloading is typically formulated as a Mixed Integer Non-Linear Programming (MINLP) problem, which is challenging to solve. The optimizing approaches of computation offloading in mobile edge computing are separated into several perspectives: game-theoretic methodology [9], machine learning methodology [10], queuing theory, and linear programming concerning other algorithms. Researchers are trying to solve computation offloading problems using various methods. Among these, gametheoretic methodology and machine learning methodology are two major perspectives. Many excellent works have been studied regarding the computation offloading problem. For example, Gianni and Palmieri et al. [11] proposed a modified genetic algorithm for local searching, which shows quite good results; Gianni and Tipaldi et al. [12] use rule-based machine learning to optimize Markov decision process modelled spacecraft autonomy, which also achieves effectiveness. Both the game-theoretic methodology and machine learning methodology are reasonable and possible.
For the game-theoretic methodology, using game-theoretic approaches to determine pure Nash equilibria is an efficient non-deterministic approach, and game-theoretic-based techniques are widely utilized in this field. Chen et al. [13] jointly formulated the computation offloading problem and solved it using a game-theoretic approach by showing the existence of a Nash equilibrium; Wang et al. [14] designed a partial computation offloading method that optimized both communication and resources; Ma et al. [15] proposed an energy-aware computation offloading algorithm; Dong et al. [16] proposed an evolutionary game approach to optimize the task offloading in edge computing; Elgendy et al. [17] proposed an efficient offloading algorithm achieving the computation offloading decision for computation tasks, which use the method of finding the near-optimal computation offloading and compression decision; Zhou and Jadoon [18] proposed a partial computation offloading strategy based on game theory for multi-user edge computing; Wang et al. [19] proposed a decentralized computation offloading algorithm with multi-agent imitation learning.
For the machine learning methodology, approaches based on machine learning have also been used in recent years for more and more pervasive devices which have appeared. It is effective and practical but may have higher complexity than game-theoretic approaches and need more resources, which mean this mechanism can be used on inherently limited devices. Hossain et al. [20] presented an optimal binary computational offloading decision using reinforcement learning; Huang et al. [21] investigate low-complexity computation offloading strategies to minimize energy consumption and propose a distributed deep learning-based offloading algorithm to achieve better convergence; Zhang et al. [22] evaluate an online learning offloading framework for heterogeneous mobile edge computing by conducting a failure recovery policy; Xie et al. [23] minimize service time by dividing tasks into subtasks and apply the method proposed to the computation offloading problem among vehicles; Cui et al. [24] use stochastic online learning that can learn from the changes of dynamic systems, and the method is used for the distributed system; Xu et al. [25] design an energy-aware computation offloading method to reduce the energy consumption and adopt a Non-dominated Sorting Genetic Algorithm II (NGSA-II) to shorten the offloading time of the computing tasks.
To clarify the effectiveness of these works. The advantages and weakness of these works mentioned above are listed in Table 1.

Reference
Methodology Advantages Weakness [13] Game-theoretic Multi-user; practical Has no consideration on energy [14] Game-theoretic Hybrid with dynamic voltage scaling Separately considers energy minimum and latency minimum [15] Game-theoretic Energy-aware; light Solutions not significant [16] Game-theoretic Using online learning in the iterative algorithm Hard to implement [17] Game-theoretic Multi-user; multi-task; secure Specialized application [18] Game It can be seen from Table 1 that the computation offloading optimization problem can be solved in many aspects. Some methods have low complexity and easy to apply but only have one target; some other methods are comprehensive but show high complexity and are hard to implement. Finding a solution to strike a balance is needed, including key targets in computation offloading optimization problems with reasonable complexity. The method proposed in this not only paper takes multiple objections into consideration but also has obvious advantages in convergence, diversity and complexity.
The Whale Optimization Algorithm (WOA) is an optimization algorithm proposed by Australian scholars Mirjalili and Lewis in 2016 [26]. The WOA has promising advantages. It is insensitive to the initial solutions, which may have a significant influence on some traditional algorithms. Additionally, it has adaptive mechanisms to balance the explorative and exploitative behaviors properly. It has been widely used in feature selection, parameter extraction, engineering optimization, and other aspects. It does not need to compute gradients, which is fit for computation offloading scenarios [27].
Tongbram et al. [28] introduce WOA into image segmentation with a noise detection and reduction mechanism. Hassouneh et al. [29] combine WOA with a single point crossover method and use the enhanced WOA to predict software faults. Abdel-Basset et al. [30] adapt WOA for a DNA fragment assembly problem. Shanky et al. [31] designed an energy resource allocation framework optimized based on WOA. As an expansion of WOA, the Multi-Objective Whale Optimization Algorithm (MOWOA) was proposed to solve optimization problems that have more than one target, inheriting the advantages of WOA. A distributed clustering algorithm using multi-objective whale optimization is proposed by Kotary et al. [32] for a peer-to-peer network. A multi-objective whale optimization algorithm proposed by Wang et al. [33] is used to solve the energy-efficient distributed permutation flow shop scheduling problem. Ehteram et al. [34] proposed a hybrid Artificial neural network (ANN) with a multi-objective whale optimization algorithm designed to perform suspended sediment load prediction.
WOA is introduced to solve computation offloading problems by Pham, Huong et al. [35] and Pham, Quoc et al. [36]. Pham, Huong et al. employ WOA to solve the Transmit Power Control (TPC) problems and they find the simplicity and efficiency of WOA on TPC problems. Pham, Quoc et al. apply WOA to resource allocation optimization problems and obtain a promising conclusion. However, MOWOA has still not been applied to solving the optimal offloading mechanism of the computation offloading in mobile edge computing. The motivation for proposing MOWOA and improved MOWOA for the computation offloading in this research is three-fold. First, the optimization problem in computation offloading is an important problem that needs to be overcome. As with some methods list in Table 1, the existing methods are not good enough or not practical. Finding a satisfying solution is apparently required. Second, the whale optimization algorithm is universal for many application areas with the advantages mentioned, and has many successful applications [28][29][30][31][32][33][34]. Third, WOA is used to solve the optimization strategy of computing offloading [35,36]. However, they only focus on just one factor and ignore the fact that the optimization of computation offloading may be affected by multiple factors. Last, considering that time consumption and energy consumption are the most important factors in the computation offloading optimization problem, MOWOA has the potential to solve the optimal offloading mechanism of computation offloading in mobile edge computing. Therefore, in this paper, MOWOA can be used to solve the problem mentioned.
The key contributions of this paper are as follows. Firstly, a method of using MOWOA to solve the optimal offloading mechanism of computation offloading in mobile edge computing is proposed. Secondly, the parameters of the algorithm are modified to suit our model. Furthermore, the gravity reference point method is employed to further improve MOWOA. The improved MOWOA is named MOWOA2. Finally, in order to improve the quality of the solution set, crowding degrees are introduced, which are defined as the summation of the ratio of the difference of the objective functions of two adjacent solutions with that of two extremum solutions; then, all solutions in the set are sorted in descending order by crowding degrees.
The paper is organized as follows. Section 2 shows the computation offloading model in edge computing. The MOWOA and MOWOA2 for solving the model are described in Section 3. Section 4 presents numerical experiments and analyzes the performance of our methods. Section 5 analyzes and discusses the performance of our methods. Finally, a brief conclusion is given in Section 6.

The Computation Offloading Model
In this section, there will be a detailed discussion of the computation offloading model. The edge computing system consists of an edge server and n mobile devices users with each task, denoted by a set N = {1, 2, . . . , n}. There is a wireless base-station s, through which the mobile device users can offload the computation to the edge computing servers. Next, the communication and computation models are introduced in detail, both of which play vital roles in mobile edge computing.

Communication Model
Firstly, the communication model with wireless access used in mobile edge computing is introduced. The wireless base-station s manages the communications of mobile device users. The set of wireless channels that s can use are denoted as M = {1, 2, 3, . . . , M}. Moreover, X = (x 1 , x 2 , . . . , x n ) is a decision vector, where x i (i = 1, 2, . . . , n) represents that mobile device user i offloads x i × 100% of its task to be executed on edge servers, and the rest (1 − x i ) × 100% of its task to be executed locally. Such a kind of decision vector is used to overcome the problems and disadvantages of the computation offloading model that uses 0-1 planning. In the model, the transmission rate r i of user i is denoted as [37] in which ω is the bandwidth of the channel, p i is the transmission power of user i, h i is the channel gain between user i and base-station s, and σ 2 represents the background noise power. −p i h i + n ∑ j=1 p j h j represents the effects from other mobile device users. From the communication model in (1) it can be determined that if too many mobile device users choose to offload the computation via the same channel concurrently, this may lead to severe interference and cause low data rates, which would negatively affect the performance of mobile edge computing.

Computation Model
Then, the computation model is introduced. The tasks set are defined as C = {c 1 , c 2 , . . . , c n }, in which c i represents the total number of Central Process Unit (CPU) cycles needed to finish the computation task of user i, and define the data size set B = {b 1 , b 2 , . . . , b n }, in which b i represents the data size of the task of user i. Next, the computation overhead in the field of both energy consumption and processing time for both local and remote computing approaches are discussed.
(1) Local Computing: For the local computing approach, a mobile device user n executes its computation task locally on the mobile device. The computation execution time T L i of the task user i locally is given as where Z L i is the computation capability (i.e., CPU cycles per second) of the mobile device user i, u = (1 − x i )c i . x i is the decision vector mentioned in Section 2.1. The x i referred to below also has the same meaning. For the energy of the computation, it holds that in which η is the coefficient of the consumed energy per CPU cycle, which can be obtained by the measurement method in [38] and it is set as 1 × 10 −26 .
(2) Remote Computing: for the remote computing approach, a mobile device user i offloads its computation task to the edge servers via wireless base-station s.
Using computation offloading would cause extra overhead in the fields of time and energy for transmitting the computation data. The total time overhead of mobile device user i for offloading the task to edge servers is computed as in which Z M i is the computation capability available for mobile device user n, and it is determined by the servers. It can be supposed that the computation capability of each user is equal, which means user i to transmit data to servers and k Z M i is the execution time that servers need for the task from user i. Due to the fact that the data size of the computation results is usually much smaller than that of input data, the time overhead of sending the result back is neglected. Then, the total energy overhead for mobile device user i to offload the task to edge servers is defined as where p i v is the energy consumption produced from user i to edge servers, during the data transmission, and η(Z M i ) 2 k is the energy consumption that servers need to execute the task from user i.
Finally, the optimization model is defined as: where f 1 (X) is the total time for computing the tasks, f 2 (X) is the total energy consumption for those tasks, and n is the number of device users.

Multi-Objective Optimization
The process of searching for the best solution or optimal value from an optimization problem is referred to as optimization. The target of optimization can be single or more. The optimization problems with more than one objective are called multi-objective optimization [39]. This kind of problem can be found almost everywhere, such as in mathematics, economics, engineering, computer science, etc. There are two kinds of methods commonly used: the Pareto Method [40] and the Scalarization Method [41]. For the Pareto Method, Pareto optimality is a situation where no individual or preference criterion can be better off without making at least one individual or preference criterion worse off or without any loss thereof. In this paper, a multi-objective method based on Pareto Method is used.

Whale Optimization Algorithm
WOA is a swarm intelligence optimization algorithm, which is inspired by the unique hunting method of the humpback whales, which is called the bubble-net attacking approach shown in Figure 1. Groups of krill or small fishes are the preferred food of humpback whales. When humpback whales are hunting, they have two kinds of behaviors associated with a bubblenet [42]. One is named upward-spirals. They dive down and start to create bubbles in a spiral shape around the prey and swim up toward the surface; another is named doubleloops with three stages: the coral loop, lobtail, and capture loop. The thought of WOA is to imitate the behaviors of humpback whales, and the flowchart of the method is shown in Figure 2, where w is a random number in [0,1] and → A is a vector whose definition is on formula (7).
where → a is a vector that linearly decreased from two to zero in the iterations.

Encircling Prey
If w < 0.5 and → A ≤ 1 , the stage of encircling prey starts. Humpback whales can recognize the location of prey and encircle them. The current best candidate solution is supposed to the target prey or is close to the optimum. After the best search solution is defined, the other search solutions will hence try to update their positions towards the best search solution. This behavior is represented by the following equations: where t indicates the current iteration, → P t * is the position vector of the best solution obtained so far, → P t i is the position vector, | | is the absolute value.
→ P t * should be updated in each iteration if there is a better solution.

Bubble-Net Attacking
If w ≥ 0.5 , the stage of bubble-net attacking starts. Inside the shrinking enclosure, humpbacks follow spiraling paths toward their prey, a method known as bubble-net foraging. Therefore, WOA calculates the distance between the whale and its prey when it uses the spiral method to update its position. In order to simulate the spiral motion of the humpback whale, the mathematical formula is as follows: indicates the distance of the i th whale to best solution obtained so far, b is a constant for defining the shape of the logarithmic spiral, l is a random number in [−1,1].

Random Search for Prey
If w < 0.5 and → A > 1 , the stage of a random search for prey starts. In the process of hunting prey, whales need to locate their prey. Once the location is established, the whales are able to encircle their prey. The current best search agent is assumed as the target prey; all the whales will update their position with the tendency of moving closer to the prey. This procedure will iterate until preset conditions are reached. The calculation model for individuals to update their own position is expressed by the mathematical formula as follows: where → P rand is a randomly generated position vector within the boundary range, → P t i is the i th position vector generation t of search agents, and → P t+1 i is the i th position vector generation t+1 of search agents.

The MOWOA for Solving the Proposed Model
The original WOA is one objective. Kumawat et al. [43] suitably modified the method to solve multi-objective problems, which is known as MOWOA, which has good exploration and exploitation in a given search space. It also has been proven with faster convergence and fewer parameters. MOWOA has been applied to solve many problems. However, MOWOA has still not been applied to solve the optimal offloading mechanism of computation offloading in mobile edge computing. Therefore, in this paper, MOWOA for the optimal offloading mechanism of computation offloading is proposed and adaptively modified to suit our model. Then, the pseudocode of the main procedure of MOWOA is shown in Algorithm 1. The pseudocode of the Non-Dominate sort and crowding degree Sort (ND-C_sort) function is shown in Algorithm 2.

11:
Select a random search agent (X rand ) 12: Update the position of the current search agent by using (13)  13: Else if w ≥ 0.5 then 14: Update the position of the current search by using (11)  Solutions that have poor crowding degrees are eliminated 6: End if 7: The optimal solution → P t * is selected from Hpopulation by the roulette selection method by using (15) In the beginning, the parameters of MOWOA and computation model are input. First, initialize the whale's population and set it as Ppopulation of size m; Hpopulation is defined as the external archives and the size of Hpopulation is named capacity.
If any target function in F i is not greater than F j and there exists at least one smaller than Fj, it can be regarded as F i dominate F j . The decision vector initialized as ranging from zero to one is substituted into formula (6), for solving F 1 , F 2 , . . . , F m . Additionally, it was merged with the current non-dominated solution set H t−1 to be H t by comparing it with the vectors in H t−1 , where t is the current generations in the iterations of the algorithm. The corresponding decision vector of these target function vectors is also saved. For each solution in H t , they will be sorted according to the target function. Then, the crowding degrees of all solutions are calculated based on the formula shown as, where i represents the i th solution in H t . All solutions in the set H t are sorted in descending order by the crowding degree.
The optimal solution → P t * is selected from H t by the roulette selection method. The probability for each solution to be chosen can be calculated as, where H t is the solution set, k represents the number of the solution sets. F i is the target function of the i th solution.
Then, WOA is used to update the position of the search agents of the next generation based on → P t * .When the preset maximum iteration times are reached, H t is the optimal non-dominated solution set, including the corresponding decision vectors.

The MOWOA2 for Solving the Proposed Model
As the gravity reference point method has the advantages of a better spread of the solution set, the combination of the gravity reference point method with MOWOA can further improve the performance of the computing offloading mechanism in mobile edge computing. In this paper, an algorithm named MOWOA2 by hybridizing the gravity reference point method with MOWOA is proposed. The closer the gravity reference point is, the more attractive it is to the current solution and the greater the weight coefficient is.
In this paper, two objective functions of time and energy consumption are defined. When the time objective function f 1 (X) takes the maximum, the corresponding solution is • Compute the weight parameter. The nearer gravity reference point has a more attractive force to the current solution, so the weight becomes larger: • Update the position of the current solution: After all the positions of the solutions are updated, use the non-dominated sort function to update solution set H.
The pseudocode of the Gravity function is shown in Algorithm 3.

Numerical Experiments
This section will carry out numerical experiments based on the system model above and the algorithm proposed. A multi-user computation offloading system is simulated, Some useful results are obtained by using MOWOA, MOWOA2, GrEA [44], the Multiobjective Evolutionary Algorithm by Decomposition (MOEA/D-DE) [45], the Multi-objective Evolutionary Algorithm based on Decomposition with Dynamical Re-source Allocation (MOEA/D-DRA) [46], NSGA-III [47], the Epsilon Multi-objective Evolutionary Algorithm (e-MOEA) [48], and CGbAIS [49,50], respectively. Moreover, the algorithms are coded in MATLAB 2016a, and all tests are performed on a PC with a Windows 10 operating system and 8 GB of RAM. The detailed parameters of the multi-user computation offloading system are shown in Table 2. Table 2. Detailed parameters of the multi-user computation offloading system.

Performance Indicators
Here are several indicators to evaluate the multi-objective optimization algorithms, such as Generational Distance (GD), convergence metric γ, Spacing, diversity metric ∆, Hypervolume (HV), Inverted Generational Distance (IGD), C-metric and Knee-driven Dissimilarity (KD). The performance of multi-objective algorithms should be judged from the convergence, uniformity and spread of the solution set. The indicator Spacing can evaluate the uniformity of the solution set well, but this indicator does not consider the convergence and spread of the solution set. The indicator HV can both evaluate the convergence and spread of the solution set. The collaborative use of Spacing and HV can cover the assessment criteria overall. Additionally, in most cases, indicators need a real Pareto front to evaluate the performance of a multi-objective optimization algorithm. However, the real Pareto front in practical problems is hard to acquire. Fortunately, both Spacing and HV do not need to have a known Pareto Front, which fits our requirement exactly. Therefore, two indicators are used as metrics: Spacing [51] and HV [52]. The Spacing metric can be used to measure the uniformity of the solution set of multi-objective algorithms, especially in the two-dimensional case (which fits nicely with this article). If Spacing is smaller, it means better uniformity of the solution set. The larger the HV, the better the performance of convergence and spread of the solution set. Their definitions are denoted as:

Numerical Results and Analysis
In this section, the detailed experimental results are reported. To investigate the performance of each algorithm in different situations, the number of users is set to 30, 45, and 60, respectively.
To  [53] to disintegrate. As for CGbAIS, population size is set as 100; memory capacity is set as 30; crossover probability is set as 0.4; the diversity evaluation parameter is set as 0.95; the number of iterations is set as 30.
The different performances of these algorithms when the user number is 30, 45, and 60, respectively, are shown in Tables 3-5   From Table 3, MOWOA2 has a better result than the other algorithms from analysis of the time and energy consumption, which is 1.1918 for the shortest time and 4.6888 × 10 −18 for the lowest energy. This value has a huge difference in magnitudes from the results of other algorithms. Tables 3 and 4 represent that the lowest energy consumption and average energy consumption of MOWOA are better than the other algorithms except for MOWOA2, while MOWOA2 has the best time and energy consumption.
Additionally, an interesting phenomenon is found by comparing Tables 3-5. As the user number increases, the time consumption has the tendency to increase; however, the energy consumption seems not to obey the rule. In particular, the minimum and mean energy consumption are 13.9848 and 161.6287, respectively, when the user number is 60. While the values are 32.3088 and 261.5592, respectively, when the user number is 45 can be seen. It can be supposed that the energy consumption is not a linear relation with the increase in user number.
It can be shown from Tables 3-5 that when user number is 30, 45, and 60, the HV value of the MOWOA is 28.6767, 104.9165, and 132.8395, higher than other algorithms except MOWOA2. It means the MOWOA has better convergence and multiformity than other algorithms. Moreover, Tables 3-5 represent the HV value of MOWOA2 as 35.3101, 122.7615, and 132.9202, respectively, in the corresponding situation. That means that the improved whale optimization algorithm, MOWOA2, will further exploit its advantages, and its overall performance is much better than the other algorithms. Additionally, it can be seen that the HV index of the MOEA/D-DE, MOEA/D-DRA and e-MOEA algorithms is very poor, all of which rank at the bottom in all three cases. The reason is that these three algorithms based on decomposition strategy can achieve good results by decomposing the optimization of many objectives, which shows that the convergence and diversity of the solution sets obtained by them are not good. It suggests that the decomposition strategy is not appropriate for this problem.
Then, it can be seen from Tables 3-5 that, when the number of users is 30 and 45, the Spacing value of the solution set of e-MOEA is the best, with values of 0.0375 and 0.0129, respectively. When the number of users is 60, the Spacing index for the MOEA/D-DE solution set is the best, at 0.0352. This shows that the two algorithms perform well in the aspect of uniformity. In these three cases, the Spacing indexes of the CGbAIS solution set are 4.7710, 2.9393 and 0.8152, respectively, which are almost all the worst. This indicates that the uniformity of CGbAIS is not good. Considering the structure of the CGbAIS algorithm, this algorithm adopts the maximum and minimum distance method, which can group the solutions based on distance. Then, some solutions with near distance are deleted from grouped solutions and only one solution is reserved, to simplify the solution set. However, this also leads to a decrease in uniformity. When the number of users is 30, MOWOA2 and MOWOA are not too bad for uniformity, with Spacing of 0.1658 and 0.2797, respectively, ranking third and fourth among the eight algorithms. However, as the user size increases, they tend to show worse uniformity. With the increase in the number of users, the space of the feasible domain increases, resulting in a larger distance between the solutions obtained by the MOWOA2 and MOWOA. Therefore, the Spacing indexes obtained by the two algorithms are higher than those of other algorithms.
In order to make the conclusion more intuitive and convincing, statistical methods were introduced. Single-sample t-tests were used to examine significant differences between the Spacing and HV of MOWOA2 and other algorithm metrics. As performing single-sample t-test needs to meet normality distribution, the normality test of the sample was per-formed on all the other algorithms indexes except MOWOA2, which was used as a reference value. When the number of samples is small, the results of normality test should be measured by using the Kolmogorov-Smirnov (K-S) index. The results of normality tests are shown in Table 6. As shown in Table 6, Sig values are 0.2 and 0.174, both of which are larger than 0.05. Therefore, they obey normal distribution, which meets the condition of a single sample t-test. Furthermore, the Sig value of Spacing is 0.001 < 0.05 when the number of users is 30, which does not conform to the normal distribution, so the single sample t-test cannot be used.
The single-sample t-test was then used to examine the significant differences, with 95% confidence intervals selected by default. As can be seen from Table 7, all Sig.(two-tailed) values of all test results for these indicators are less than 0.05, so it is considered that the test value is significantly different from the sample mean. The Spacing and HV indexes of MOWOA2 are significantly different from those of other algorithms. to the Pareto optimal front. Therefore, the two algorithms proposed in this paper have the advantages in convergence and diversity. In addition, in terms of convergence, the two algorithms perform equally and, in terms of diversity, the position of a redpoint is near to the abscissa axis in Figures 3-5, which indicates MOWOA2 improved by using the gravity reference point method can enhance the ability of exploration. Therefore, MOWOA2 is better than MOWOA.   From Figure 3, it can be seen that the shape of the solution sets obtained by these algorithms in the target function space are different. The shape of the solution sets of MOEA/D-DRA resembles a cloud, which means the convergence of the algorithm is the worst of all algorithms. The lines of the solution sets of MOWOA and MOWOA2 are apparently much closer to the Pareto Front. In addition, although the graphs obtained by other algorithms appear linear, they are far away from the Pareto Front, indicating that their solution set is not optimal.
From Figure 4, the shape of the solution sets of both GrEA and MOEA/D-DRA are divergent, which shows the convergence of the algorithms is worse than that of other algorithms. The lines of the solution sets of MOWOA and MOWOA2 are apparently much closer to the Pareto Front. Although the shape of the solution set obtained by NSGA-III is also linear, it is inferior to our proposed algorithms. Moreover, the graphs obtained by CGbAIS, e-MOEA and MOEA/D-DE appear relatively concentrated, which indicates that the diversity is poor, and it is far away from Pareto Front, which also indicates that the convergence is poor.
From Figure 5, the shape of the solution sets of MOEA/D-DRA and e-MOEA are slightly divergent and far away from Pareto Front when the user number is 60, which shows that the convergence of the algorithms is worse than that of other algorithms. The lines of the solution sets of MOWOA and MOWOA2 are apparently much closer to the Pareto Front. Although the shape of the solution set obtained by NSGA-III is also linear, it is inferior to our proposed algorithms. Furthermore, the graphs obtained by CGbAIS, e-MOEA and MOEA/D-DE appear relatively concentrated, which indicates that the diversity is poor, and it is, which also indicates that the convergence is poor.
From       The average energy consumptions of the solution sets obtained by MOWOA and MOWOA2 are obviously lower than that obtained by other algorithms. The average time consumption of the solution sets obtained by MOWOA2 is obviously lower than that obtained by other algorithms.
The length of the rectangles obtained by MOWOA2 is obviously longer than that obtained by other algorithms, which indicates the diversity of the solution sets of MOWOA2 is excellent. In particular, the length of the rectangles obtained by MOWOA2 is longer than that of MOWOA, which means the diversity of MOWOA2 is better than MOWOA when applying the gravity reference point method.
In Figure 6, it can be seen that the average energy consumption of the solution sets of MOWOA is the lowest, and that of MOWOA2 is the second-lowest when the user number is 30. However, it does not show that the average energy consumption of the solution sets obtained by MOWOA2 is worse than that of MOWOA. In fact, it can be seen from Figure 9 that the average time consumption of the solution sets of MOWOA2 is the lower than that of MOWOA when the user number is 30. As mentioned in the previous part of the article, time and energy consumption are mutually exclusive targets. The solution set of MOWOA2 trades higher energy consumption for lower time consumption.
In Figures 6 and 9, although the time consumption of GrEA is slightly lower than that of MOWOA2 when the number of users is 30, the energy consumption of GrEA is much higher than that of MOWOA2.
In Figures 8 and 11, When the user number is 60, it shows that the average time and energy consumption of the solution sets of MOWOA and MOWOA2 are almost the same, both of which are better than other algorithms.
It can be observed from these figures that time consumption and energy consumption of the solution sets obtained by MOEA/D-DE, MOEA/D-DRA, GrEA, e-MOEA, NSGA-III, and CGbAIS are worse than that obtained by MOWOA and MOWOA2 under the three different settings.
To sum up, we can conclude that MOWOA2 applied to computation offloading mechanism optimization has excellent performance on convergence and diversity.

Discussion
In this paper, MOWOA based on the non-dominated sort is applied to solve the computational offloading model. Then, in order to further improve the extensiveness of the solution set, the gravity reference point method is proposed and applied to improve MOWOA, which is named MOWOA2. The box charts show that the extensiveness of the MOWOA2 algorithm is better than that of MOWOA, and it is also better than the other six algorithms.
Furthermore, the experience results show that the energy consumption of MOWOA and MOWOA2 are significantly lower than that of other algorithms. The time consumption is only slightly lower than other algorithms. This is because time and energy consumption are mutually exclusive. An explanation of this can be drawn from the figures and tables. For example, it can be seen from Table 3 that the energy consumption of MOWOA2 is higher than that of MOWOA while its time consumption is lower than that of MOWOA. As seen from Figure 4, MOWOA and MOWOA2 still are in the same Pareto Front, though the distribution of MOWOA2 is closer to the vertical axis. This indicates that the convergence of the two algorithms is the same; the different distribution of the solution sets lies in the fact that MOWOA2 increases the diversity of solution sets by introducing the gravity reference points method. In addition, it can be seen from the figures that the solution sets of MOWOA and MOWOA2 are closer to the origin, indicating that they are closer to the true Pareto Front. This proves that the convergence of MOWOA and MOWOA2 is better than other algorithms. In addition, the HV Index of MOWOA and MOWOA2 is significantly different from that of other algorithms. Higher HV values indicate that the two algorithms have excellent comprehensive performance, including convergence and diversity.
It is a pity that the uniformity of MOWOA and MOWOA2 measured by the Spacing metric is inferior to other algorithms. Finally, in order to obtain the most appropriate number of search agents for MOWOA2, the algorithm was tested with the number of search agents as 50, 80, 100, 120, and 150 when the number of users was 30, 45, and 60, respectively. The minimum and mean time consumption, the minimum and mean energy consumption and the average running time of MOWOA2 under these conditions were obtained, as shown in Table 8. It can be seen from Table 8, with the increase in the number of search agents, that the minimum and mean time and energy consumption decrease. That is, the convergence performance of the algorithm is gradually enhanced. This is because the number of solutions generated by the algorithm increases, which guarantees that the algorithm will explore more possible solutions. However, when the number of search agents is 100, the trend of decline is no longer obvious. When the number of search agents reached 150, the algorithm's minimum and mean energy consumption rebounded in all three cases, while it time consumption was only slightly reduced. Most importantly, as the number of search agents increases, so does the average run-time of the algorithm. This means that blindly increasing the number of search agents in pursuit of the improvement of convergence performance is not a good choice because it will lead to a longer running time of the algorithm. Therefore, a compromise was chosen-the number of search agents was set to 100.

Conclusions
In this paper, we apply MOWOA to solve the optimal offloading mechanism of the computation offloading in mobile edge computing. Since the extensiveness of the solution set of MOWOA on this problem is not good enough, the gravity reference point method is proposed to improve it, which is named MOWOA2. Under different numbers of users, we compare the performance of MOWOA2 with some other classical optimization algorithms. The experimental results show MOWOA2 is high-performance, showing high convergence, good diversity, and low complexity. However, it can be found that the uniformity of MOWOA2 is not good enough. In the future, we will continue to make improvements to MOWOA2 to overcome this shortcoming.
As a matter of fact, the real scenario of edge computing is much more complicated. Therefore, how to broaden the practicability of the algorithm in the complex communication and offloading environment still has a long way to go. There are still many factors we need to consider. In the future, we will try to apply other intelligent algorithms to the computation offloading problem. Moreover, we will conduct further research on continuing to improve the performance of MOWOA and apply this algorithm to other areas.