## 3 Multi-Strategy Probabilistic Discrete Differential Evolution Algorithm
### MSPDDE Algorithmic Framework  
Differential Evolution (DE) was proposed by [PERSON] and [PERSON] in 1997 [17]. DE is a stochastic and population-based heuristic search algorithm that simulates the biological evolutionary process to finally obtain the best individuals by the full utilization of individual differences and iterative evolution [18]. The MSPDDE algorithm is based on the idea of DE algorithms. The framework of MSPDDE algorithm is shown in Figure 1, which mainly contains seven operations of initializing population, fitness assessment, mutation, discretization, crossover, selection, and judgment termination. Among them, the MSPDDE algorithm differs from the DE algorithm in the following two aspects: firstly, the mutation operation uses the mutation strategy pool, and secondly, a new probabilistic discretization operation is added after the mutation operation. In the following, the five steps of initializing the population, fitness evaluation, crossover, selection, and judgment termination are mainly introduced, and the mutation and discretization operations will be described in detail in the next two sections of this chapter. Initialize Population. The general population consists of _NP_\(D\)-dimensional vectors [19], and each _D_-dimensional vector \(X_{i}\) is an individual and a solution to the problem. The MSPDDE algorithm initializes the population of individuals real-valued encoding can be defined as in Equation (5), and integer-valued encoding and Boolean encoding can be defined as in Equation (6), where Boolean encoding 1 stands for true and 0 stands for false. \[x_{i,j}^{0}=x_{j}^{L}+rand[0,1]*\left(x_{j}^{U}-x_{j}^{L}\right)i=1,2,\ldots,NP \tag{5}\]  
\[x_{i,j}^{0}=round(x_{j}^{L}+rand[0,1]*\left(x_{j}^{U}-x_{j}^{L}\right))i=1,2, \ldots,NP \tag{6}\]  
where \(x_{i,j}^{0}\) is the jth dimensional vector of the ith individual \(X_{i}\) of the population of generation 0; \(x_{j}^{L}\) and \(x_{j}^{U}\) denote the upper and lower bounds of the jth dimensional vector, respectively; _rand_ (0,1] is to return a random number between 0 and 1; _round_ express a rounding function; _NP_ indicates population size. Fitness Evaluation. The fitness evaluation is mainly to provide a screening basis for the selection operation. Mainly, each individual is encoded and decoded into a rendering parameter value to be input into the Cesium engine, which determines whether the parameter value conforms to the constraint equation in Equation (2). If the individual satisfies the constraints, the 3 DTiles model is rendered using that individual, and the rendering time is returned at the end of the rendering. If the individual does not satisfy the constraints or the rendering fails, the absolutely large number is returned. The fitness of each individual can then be obtained according to Equation (4). Crossover. The main purpose of the crossover operation is to maintain the diversity of the population by generating test individuals by recombining the target individuals with  
Figure 1: MSPDDE algorithm framework diagram. the variant individuals through crossover recombination [20], and the MSPDDE algorithm uses a binomial crossover strategy as shown in Equation (7):  
\[u_{i,j}=\left\{ \begin{array}{ll}v_{i,j}&if\ rand[0,1]<CR\ or\ j=j_{rand}\\ x_{i,j}&otherwise\end{array} \right. \tag{7}\]  
where \(u_{i,j}\) is the jth dimensional vector of the ith test individual; \(v_{i,j}\) is the jth dimensional vector of the ith variant individual; \(x_{i,j}\) is the jth dimensional vector of the ith target individual; _rand_ [0,1] is to return a random number between 0 and 1; \(CR\) is crossover probability; \(j_{rand}\) is a random integer between 1 and 20. Selection. In order to ensure that the population size remains constant in the offspring, the individuals within the population need to be selected.