Abstract
Intelligent optimization algorithm combined with rough set theory to solve minimum attribute reduction (MAR) is time consuming due to repeated evaluations of the same position. The algorithm also finds in poor solution quality because individuals are not fully explored in space. This study proposed an algorithm based on quick extraction and multi-strategy social spider optimization (QSSOAR). First, a similarity constraint strategy was called to constrain the initial state of the population. In the iterative process, an adaptive opposition-based learning (AOBL) was used to enlarge the search space. To obtain a reduction with fewer attributes, the dynamic redundancy detection (DRD) strategy was applied to remove redundant attributes in the reduction result. Furthermore, the quick extraction strategy was introduced to avoid multiple repeated computations in this paper. By combining an array with key-value pairs, the corresponding value can be obtained by simple comparison. The proposed algorithm and four representative algorithms were compared on nine UCI datasets. The results show that the proposed algorithm performs well in reduction ability, running time, and convergence speed. Meanwhile, the results confirm the superiority of the algorithm in solving MAR.
Keywords
Introduction
Data mining, also known as knowledge discovery in database, refers to the discovery of hidden rules and knowledge from massive data. With the explosive growth of data in all walks of life, data mining is facing great challenges. Rough set theory (RST) is an important means of data mining [28]. Santra et al. applied RST to medical diagnosis [14]. Watada et al. used fuzzy random variables and statistical t-test on the data mining of electric power company [20]. Jing et al. designed an incremental attribute reduction algorithm to solve the problem of adding attributes and objects at the same time [7]. Ding et al. proposed a multi-granularity strategy to solve the efficiency problem of uncertain fuzzy attribute reduction [4]. RST has achieved very good results in the field of data mining. Attribute reduction (AR), as one of the core research contents of RST and a necessary step of data mining, has gradually attracted the attention of researchers.
Attribute reduction is a key of RST and has important meaning in the application of RST. It removes redundant and irrelevant attributes to reduce data dimension without affecting the classification capability of the information system. The Minimum attribute reduction (MAR) is a hotspot in AR research. The basic idea of MAR algorithm is to generate all possible reductions and select the one with the smallest cardinality. There are some problems with MAR algorithm. On the one hand, as the increase of data volume, the running time grows exponentially [17]. On the other hand, positive field [13], information entropy [11], mutual information [10] were used, as heuristic information, to search and obtain the minimum attribute reduction, but the search may be toward a non-minimum path.
Swarm intelligent optimization algorithm originated from simulating the behavior of biological groups in the natural world. It has the characteristics of simple operation, strong robustness and easy parallelism. Kulik et al. applied genetic algorithm to the optimization problem in the robot field [8], and achieved good results. Sun et al. proposed an improved particle swarm optimization algorithm by initializing population chaos, dynamically improving inertia weight, and adjusting acceleration factor, and applied it to the overall kitchen design for the first time [15]. Tang et al. constructed an optimal accounting model through the combination of particle swarm optimization algorithm and ant colony algorithm [16]. Yan et al. proposed a hybrid whale optimization algorithm based on Levy flight strategy and lateral suppression to solve underwater image matching in a UUV vision system [25].
The intelligent optimization algorithm, due to the above-mentioned advantages, have also been widely used to solve the problem of AR. Jensen and Shen applied genetic algorithm to solve attribute reduction [6]. Xu et al. developed an attribute reduction method combining particle swarm optimization with RST [22]. Wei et al. introduced improved information gain rate and redundancy detection into the standard ant colony algorithm [21] and achieved good results. Min et al. proposed a partial complete search technique of ant colony algorithm to obtain rough intensive reduction, which improved the computational efficiency [12]. Yamany et al. used algorithms that imitated the social leadership and hunting behavior of gray wolves in nature to implement AR [23]. In addition, there are other new intelligent optimization algorithms that have been proposed to solve attribute reduction algorithms such as the artificial fish swarm algorithm, artificial bee colony and firefly algorithm [2, 26]. Nevertheless, the probability of obtaining the minimum attribute reduction in the actual calculation is still very small, and the quality of the solution needs to be improved. Therefore, it is necessary to explore new and more efficient intelligent optimization algorithm to solve attribute reduction problems.
Social spider optimization (SSO) algorithm was proposed by Cuevas et al. in 2013 [3], which designed to simulate a series of behaviors such as cooperative predation between individual cluster spiders, exchange of information on public webs, and reproduction between male and female individuals. Compared with other intelligent algorithms, SSO has its unique advantages. For example, compared with genetic algorithm, SSO only needs simple mathematical operators to get the optimal solution. In addition, SSO has a variety of optimization methods, while particle swarm optimization mainly focuses on the relationship between speed and position. Many improved algorithms based on SSO have been proposed and widely used to solve various complex optimization problems. Zhou et al. [29], aiming at clustering, proposed a simplex method-based SSO that enhanced the population diversity and local search ability of the algorithm. Zhao et al. developed an elite opposition-based SSO called EOSSO for global function optimization [27], in which elitism learning was used to enhance the convergence rate and calculation accuracy. In order to solve multi-objective problems, a standardized fitness function was proposed by Wang et al. [19], using the non-dominant ranking and crowding distance to evaluate the merits and demerits of individuals and using gravity factors to balance the influence of fitness and distance on individual performance. Abd El Aziz and Hassanien constructed a minimum attribute reduction algorithm based on improved social spider optimization [1]. Ibrahim et al. [5] introduced opposition-based learning (OBL) to the traditional social spider optimization, which expanded the diversity of the spiders and enhanced the exploration ability. Although many improved SSO have good performance, most of them only achieve local optimum, and their convergence speed needs to be improved. Besides, continuous evaluation of individual computing overhead leads to excessive running time. Therefore, it is necessary to put forward new improvements.
In this paper, we applied social spider optimization to solve minimum attribute reduction, and presented a new algorithm for attribute reduction based on quick extraction and multi-strategy SSO (QSSOAR). By using fast extraction to reduce the running time of the algorithm, multi-strategy was introduced to improve the quality of solving the minimum attribute reduction. The main contributions of the paper are the following: This paper constructed a quick calculation method of fitness function based on the combination of array and key-value pairs. The proposed strategy avoids the double calculation in the process of individual evaluation. This algorithm introduced the similarity constraint strategy. The individuals with poor performance were reinitialized by comparing the similarity values between the optimal individuals and the remaining individuals. This strategy made the initial population include more individuals with good performance to facilitate the exploration of the population. Adaptive opposition-based learning (AOBL) strategy was incorporated in the iterative process. The algorithm evaluated both individuals below the average fitness value and opposite individuals, and selected individuals with higher fitness values to replace the original individuals. Reverse exploration not only expands the search space, but also improves the possibility of finding better solutions. The dynamic redundancy detection (DRD) strategy based on attribute importance was used to remove redundant attributes from the reduction results. This strategy made the reduction as concise as possible. The proposed algorithm and four representative algorithms were compared on nine UCI datasets. The present findings demonstrate the superiority of the proposed algorithm for solving MAR.
The rest of the paper is organized as follows. Section 2 mainly introduces the RST and SSO. Section 3 describes the proposed algorithm. The experimental results are present in Section 4 and conclusions and future works are finally written in Section 5.
Preliminaries
Rough set theory
This section introduces the relevant knowledge of rough set theory in knowledge, which will be used to evaluate candidate attribute subsets in the proposed algorithm. These concepts include information systems, decision systems, indiscernible relations, upper and lower approximations, positive and negative domains and attribute dependencies and importance.
Let S = (U, A, V, f) be a decision system. U is a non-empty finite set of objects. A = C ∪ D, where C and D are condition attribute and decision attribute, respectively. A system is divided into an information system (information table) and a decision system (decision table) by decision information. V α represents the value region of attribute α. f : U × A → V is metric information function. Table 1 represents a decision table, where U ={ e1, e2, e3, e4, e5 } is the domain and represents each patient. C ={ Muscle, Headache, Snivel, Flu } is a conditional attribute set, representing symptom information. D is the decision attribute, indicating whether the patient has influenza. All attribute values are either Yes or No.
An example of decision system
An example of decision system
The partition of U, generated by IND (B) is called U/IND (B) and can be calculated as follows:
Therefore, given a decision system S = (U, C ∪ D, V, f), the importance of attribute α is defined as:
The reduction R may have the reduction results of different attribute combinations, but all of the reduction results must contain the result of the minimum cardinality. The goal of this paper is to find this reduction.
SSO simulates the cooperative behavior of social spiders [3]. In the algorithm, the population is divided into a female spider population and a male spider population which are used as two different search agents. Female accounts for 65% to 90% of the total population. Individuals are controlled by different operators to collaborate according to their genders.
The transmission of information among the spiders is achieved through vibrations in the public network and the information transmitted is determined by the weight and distance of individuals. The weight is determined by the fitness value F. The distance between spiders is measured by the Euclidean distance. The vibration perceived by individual i and emitted by individual j can be defined as [3]:
To simulate the cooperative behavior of the female spiders, operators need to consider the position of the female in the iterative process [3]. The locations are made up of three different elements. The first part is the Vibc i generated by the nearest spider s c whose weight is greater than spider i. The second is the Vibb i produced by the best individual s b in the entire population. The third is the random motion. Female spiders update its position as follows:
The male spiders in the population have a completely different strategy for updating their positions. Male spiders are divided into dominant and non-dominant males. Dominant males are attracted to females, while non-dominant males move towards the center of the males. Male spiders update its position as follows [3]:
If the females and dominant males are within the specified range, they may be mating. The radius r
m
is defined as:
In the situation of many males with only one female, the roulette wheel mechanism is used to choose parents and produce new offspring. Then, the new individual replaces the parent with the worst fitness function [3].
This section describes the proposed QSSOAR algorithm, which aims to solve the problem of minimum attribute reduction more effectively. Figure 1 is the flow chart of the QSSOAR algorithm.

The flowchart of the proposed QSSOAR algorithm.
The proposed QSSOAR algorithm first generates a population X with n individuals. Each spider X
i
in X is transformed into a binary vector of length n by Eqs. (15) and (16).
The performance of the individual is generally evaluated by putting his position into a certain function. Therefore, as the only deterministic criterion, the choice of the evaluation function is crucial. The evaluation function needs to be able to reflect both the classification ability and the number of attributes of the current reduction result. As in the fitness function [3], individual performance is assessed by dependency and the number of reductions. This paper adopted the same fitness function to evaluate the spider location, as shown in Equation (17).
where λ is a parameter that balances between a number of selected attributes and quality of classification. γ R (D) is the dependence of conditional attribute R on decision attribute D, which can clearly reflect the dependence between conditional attribute sets and decision attribute. The smaller the number of attributes, the smaller the value of card (R).
At the beginning of the iteration, the random distribution of individuals in the space may lead to the existence of individuals with poor performance. Improving the initial position of spiders in the population and restricting them to a better region can not only increase the convergence speed, but also help individuals find a better solution. The similarity constraint strategy was used in this study. Measure the similarity between each spider and the optimal spider, and set a threshold. The spiders below the threshold are reinitialized. Before measuring the similarity, the difference between the two spiders was measured by hamming distance. The calculation formula is as below:
Based on the above, the average similarity between each spider X
i
and the current optimal spider G
loc
can be calculated as below:
We used the dataset in Table 1 as an example to illustrate the similarity constraint strategy. For ease of description, the conditional attributes Muscle, Headache and Snivel were denoted by a, b and c, respectively. The decision attribute Flu was denoted by d, Yes was represented by 1 and No by 0.
Assume the population has five individuals x1 = {a}, x2 = {b}, x3 = {c}, x4 = {a, b}, x5 = {b, c}.
The fitness function of spider calculated according to Equation (17) is as below:
Similarly, F (x2) ≈0.427, F (x3) ≈0.427, F (x4) ≈0.573, F (x5) ≈0.933. The fitness function of x5 is the largest and defined as G loc . The similarity between individual x1 and G loc can be calculated as below:
In the same way, sim (G
loc
, x2) =1 - 1/3 = 2/3 ≈ 0.67, sim (G
loc
, x3) ≈0.67, sim (G
loc
, x4) ≈0.33. The average similarity is calculated as
OBL was incorporated into the algorithm to improve its performance. After updating spider’s position based on traditional SSO, OBL was used to generate the opposite position of each position. After calculation of the fitness function value of each opposite individual, the original population and the opposite population were merged. Then, the best n solutions were selected from the union and constructed a new population. The best solution G loc was selected from all the solutions. Based on opposition-based learning, the related concepts are defined as follows:
The adaptive opposition-based learning (AOBL) strategy was adopted in this study. Different from the traditional OBL, the AOBL calculates the reverse solution of the poor performing individuals in the population instead of the whole population. Moreover, traditional opposition-based learning is called in every generation, while AOBL will evaluate the current iteration according to the number of iterations and decide whether or not to implement oppositional learning. At the beginning of iteration, it is necessary to search as many individuals in the population as possible as to help to find a better solution. However, in the late iteration, the individual reverse solution in the population is often poor. Avoiding assessing these individuals will greatly reduce redundancy. The AOBL can meet the above requirements due to its two advantages: one is that it can reasonably expand the search space. The other is to effectively reduce the computational redundancy. The following is a detailed introduction of AOBL, and the algorithm pseudocode and an example are given in the end.
First, S a is used to determine whether to perform opposition-based learning, and it is calculated as follows:
where rand4 is a random number, iter is the current number of iterations, and Nummax is the total number of iterations. If S
a
= 1, then calculate the average fitness function value
In order to demonstrate the effectiveness of the algorithm, an example of adaptive opposition-based learning is given as follows.
Assume the population has three individuals x1 = {a}, x2 = {b}, x3 = {c}, the maximum number of iterations NUM
max
= 200, the current iteration number iter = 1, rand4 = 0.5, S
a
is calculated according to Equation (23):
Calculate the fitness function value F (x1) ≈0.067, F (x2) ≈0.427, and F (x3) ≈0.427. The average fitness function value is:
It can be known that
Then, assume the current iteration number iter = 200, the random number is still 0.5, S a = 0 <0.5, the opposition-based learning will not be performed.
It can be seen from the above example that the probability of S a will be less than the generated random number when the iteration enters the middle and late stage, which can expand the search space and reduce computational redundancy.
In the iterative process, the running time is mainly affected by the calculation of fitness function. Repeated calculation of fitness function greatly extends the running time. To solve the problems, this paper proposed a quick extraction strategy. The main idea is to create an array to record the number of selected attributes and create a linked list below the array. Different key-value pairs are stored in the linked list. The key corresponds to each reduction result, and the value is the fitness function value corresponding to the reduction. Taking the first generation as an example, the quick extraction strategy was explained and descripted, and its calculation, storage, search and extraction process of quick extraction strategy were shown in Fig. 2.

Quick extraction strategy.
In Fig. 2, after initializing each spider, the reduction results of spider are x1 = {α1} x2 = {α3}, x3 = {α2, α3}. The reduction number is 1, 1, 2. If there is no value in the corresponding array, then calculate the fitness value F (x i ), i = 1, 2, 3 for each spider, and store the key value in the corresponding position. When the fitness function value needs to be calculated again, the number of reductions will be calculated. If they are the same, the key values in the linked list under the array will be matched, and the corresponding values of the keys in the array will be extracted. If the key values same as x2 and x3 are found, the corresponding fitness values will be taken out.
The reduction results of the finally obtained global optimal solution may still contain redundant attributes during iteration. Therefore, the algorithm tries to eliminate the redundant attributes through the importance of attributes in the rough set.
Besides, an example of DRD is given to describe the implementation process of DRD. We describe the process in Algorithm 2.
Assume the optimal solution is
After deleting attribute b, the value of attribute importance is not 0, so that it cannot be deleted. Then put attribute b back in the reduction set and delete attribute c:
The attribute importance is not 0 either, after deleting attribute c, so it cannot be deleted. Then attribute c is put back into the reduction set too, and redundancy detection ends once.
Assuming that the optimal reduction result of the next generation is G loc ={ b, c }, the redundancy detection result is shown in the above example. The redundancy detection is skipped, which effectively reduces the computation.
Experimental results and discussion
Four algorithms were compared with the proposed QSSOAR algorithm in this study, which were genetic algorithm (GARS) [6], ant colony algorithm (IGRARACO) [20], flower pollination optimisation (FLRSAR) [24] and whale optimization algorithm (FSRSWOA) [18].
Experimental environment and parameter setting
The performance of the proposed QSSOAR algorithm was tested on a personal Windows 7 computer with 3.2 GHZ processor and 8 G memory. Nine UCI machine learning datasets that contain different types of attributes was used (Table 2), such as the Zoo dataset, which is composed of Boolean, discrete, and nominal attributes. Wine data contains continuous values that need to be discussed first. In addition, mushroom dataset containing missing values, and so on. In our study, the experimental parameters are set as follows: population size N = 25, the proportion of female spiders was 0.65 < p fm < 0.9, the weight factor λ = 0.9. PF = 0.7. Each dataset was tested 20 times, and the halting condition is reaching the maximum cycle.
Description of datasets from UCI
Description of datasets from UCI
To verify the proposed QSSOAR algorithm, the reduction results of each dataset in Table 2 analyzed by QSSOAR were compared with that by other algorithms in literature and the comparison was shown in Table 3. It lists the minimum reduction and average length of each of the nine dataset by different algorithms. Some algorithms may produce multiple effective reduction results for the evaluated data sets, while others have only one optimal reduction.
Reduction sizes found by different attribute reduction methods
Reduction sizes found by different attribute reduction methods
GARS: genetic algorithm; IGRARACO: ant colony algorithm; FSRSWOA: whale optimization algorithm; FLRSAR: flower pollination optimization; QSSOAR: the proposed improved social spider optimization algorithm in this study, Min: minimum reduction; Ave: the average length.
It can be seen from Table 3 that, all the algorithms obtained the minimum reduction of dataset Monk1, Wine, Heart-Statlog and Breastcancer. QSSOAR and GARS got the same reduction of dataset Pima-Indians and Tic-Tac-Toe. But QSSOAR gained better reduction on Zoo, Vote and Mushroom datasets than GARS, proving that the reduced ability of QSSOAR is better than that of GARS. FSRSWOA didn’t obtain the minimum reduction of dataset Zoo, Vote, Pima-Indians, Tic-Tac-Toe and Mushroom, and its output still contained redundant attributes. Of the nine datasets, FLRSAR only got the suboptimal solution of dataset Zoo, Vote and Mushrooms. It can be seen that, GARS, FSRSWOA and FLRSAR algorithms are difficult to gain the MAR of dataset Zoo, Vote and Mushroom. Because of the increasing number of attributes and the combination of attributes, the algorithm is easier to achieve local optimization and cannot get the best solutions. While the proposed QSSOAR can fully explore to obtain the minimum attribute reduction when the dataset contains multiple attributes.
In comparison, IGRARACO gained better reduction results in dataset Zoo and Mushroom, which indicates that it has improved information gain rate as heuristic information has a stronger ability. However, for the Vote and Tic-Tac-Toe dataset, IGRARACO only obtained the suboptimal solution, and its output still contains redundant attributes. By contrast, QSSOAR obtained better solution for these two datasets. IGRARACO adopts two redundancy detection based on mutual information, which can quickly obtain a minimum reduction result but will lose the diversity. QSSOAR balances the diversity and convergence through AOBL and DRD strategy, and can achieve smaller reduction.
The proposed QSSOAR algorithm was further evaluated in terms of the running time. To show the effect of quick extraction strategy, the algorithm without adding quick extraction strategy was called the attribute reduction algorithm based on improved social spider optimization (ISSOAR). Its running time was compared with that of the QSSOAR algorithm which merged the quick extraction strategy. For each dataset, the algorithm was run 20 times and the average running time was calculated.
Comparison of running time between QSSOAR and ISSOAR
The ISSOAR algorithm contains a variety of improvement strategies, which results in that the fitness function value is calculated many times. Thus, the running time greatly extends. After adding the quick extraction strategy, the running time of QSSOAR algorithm is significantly shortened. The running time of QSSOAR and ISSOAR of different datasets were calculated and compared (Fig. 3). The results showed that, when the number of iterations is 25, the running time of QSSOAR was shorter than that of ISSOAR. At the end of iteration, the lines gradually flatten, which indicates that the running time growth is gradually slowing down. In addition, from the Monk, Breastcancer, Pima-Indians and Tic-Tac-Toe datasets, it can be seen that the effect of quick extraction strategy on datasets with less attributes is more obvious. For the dataset with more attributes, the running time of the algorithm becomes less as time goes on.

Running time of algorithms QSSOAR and ISSOAR of different datasets.
Figure 4 shows the running time of QSSOAR and IGRARACO, and Fig. 5 shows the running time of QSSOAR, FSRSWOA, FLRSAR and GARS.

Running time of algorithms QSSOAR and IGRARACO of different datasets.

Running time of algorithm QSSOAR, FSRSWOA, FLRSAR and GARS of different datasets.
It can be seen from Figs. 4 and 5 that the running time of GARS, FLRSAR and FSRSWOA was the shortest for Zoo, Monk1, Wine, Heart-Statlog, Vote, Mushroom datasets. While for the Breastcancer, Pima-Indians and Tic-Tac-Toe datasets, the running time of the proposed QSSOAR algorithm was close to that of GARS, FLRSAR and FSRSWOA, or even shorter. This is because the algorithm is sensitive to the number of attributes. When the number of attributes is small, the quick extraction strategy performs well. Compared with FSRSWOA and FLRSAR, GARS run longer in most cases due to the lack of mathematical operators. The running times of FSRSWOA and FLRSAR were close. The running time of IGRARACO algorithm was longer than that of the other four algorithms, due to the calculation of improved information gain rate and multiple redundancy detection calculation based on mutual information.
In order to evaluate the optimization and convergence ability of our algorithm, the fitness value of different algorithms changing with the number of iterations was compared. The fitness value was calculated by the length weighting of attribute dependence and attribute subset according to Equation (17).
Table 4 shows the fitness function values of the five algorithms of 9 datasets. The maximum value of fitness function in iteration is regarded as the best fitness and the minimum fitness value is the worst fitness. Ave fitness is the average fitness of 200 iterations. The greater the best fitness, the better the solution. The smaller the worst fitness, the worse the solution. When the best fitness and worst fitness of two algorithms are the same, the greater the Ave fitness is, the better solution can be obtained with fewer iterations, which reflects the convergence and optimization ability of the algorithm.
The fitness function value of each algorithm
The fitness function value of each algorithm
GARS: genetic algorithm; IGRARACO: ant colony algorithm; FSRSWOA: whale optimization algorithm; FLRSAR: flower pollination optimization; QSSOAR: the proposed improved social spider optimization algorithm combining in this study.
In comparison with GARS, FSRSWOA and FLRSAR, QSSOAR had greater fitness function value and faster convergence, indicating that the algorithm can obtain better quality and fewer attributes reduction results in a short time. In addition, compared with IGRARACO algorithm, QSSOAR had greater fitness value of dataset Vote and Tic-Tac-Toe. This is because IGRARACO introduced the second redundancy detection strategy, which caused premature convergence and insufficient exploration, resulting in the suboptimal solution. Introduced similarity constraint strategy, adaptive opposition-based learning strategy and dynamic redundancy detection strategy, the proposed algorithm in this study has strong exploration ability, and can find a better solution.
In this paper, we presented a new algorithm for attribute reduction based on quick extraction and multi-strategy social spider optimization. The algorithm has the advantages as follows. Intelligent optimization computation mainly results from frequent calculation of fitness function values. Repeated calculation of fitness function will increase runtime. The fast extraction strategy proposed in this paper avoids the repeated calculation of fitness function and reduces the running time. The initial population is no longer irregularly distributed in space. Individuals are restricted by the similarity constraint strategy close to the better performing individuals, which facilitates population exploration during the iteration process. The quality of the reverse solution may be better than that of the original solution in the iterative process. Adaptive opposition-based learning strategy was incorporated to expand the search space and increase the possibility of exploring better solutions. The dynamic redundancy detection strategy based on attribute importance was used to remove redundant attributes from the reduction results. The number of attributes is less without changing the classification ability.
Nine datasets were tested by the proposed QSSOAR and four representative algorithms such as GARS, FLRSAR, IGRARACO and FSRSWOA. The results indicate the IGRARACO algorithm has a good reduction efficiency, but the running time is too long. The GARS, FLRSAR, FSRSWOA algorithms run a short time, but the reduction effect is not ideal. In comparison, the algorithm proposed in this study has the advantages of strong reduction ability, short running time and fast convergence speed. At the same time, the experimental results show that the algorithm is sensitive to the number of attributes and can effectively reduce the running time when the number of attributes is small. However, for datasets with more attributes, performance needs to be improved because there may be too many combinations. In the future, we will try to combine fast calculation of equivalent classes with our algorithm to reduce the running time of datasets with more attributes. At the same time, we will try to use our algorithm to solve general combinatorial optimization problems.
Footnotes
Acknowledgments
I would like to express my deep gratitude to my mentor Qianjin Wei for his encouragement and guidance. Without his consistent and enlightening guidance, this paper cannot reach its present form. At the same time, we thank all reviewers for their valuable comments.
Funding
This work is supported by the Natural Science Foundation of China (Grand Nos. U1811264, U1711263, 61966009 and 61866007), Natural Science Foundation of Guangxi Province (Grand No. 2018GXNSFDA281045), and the Guangxi Key Laboratory of Trusted Software (Grand No. KX20202024).
