## 3 Many-Objective Joint Parallel Simulation Method
### Joint Parallel Simulation Method  
The algorithm for many-objective optimization focuses on the fitness value. It iteratively evolves the optimal individuals, whereas the traditional genetic algorithm toolbox (including GA and NSGA-II) utilizes a sequential calculation method, i.e., the initial population and the evolved population are calculated sequentially. If the fitness function runs quickly, the evolution process as a whole will be rapid; however, if the fitness function runs slowly, the evolution process as a whole will be extremely lengthy. Using MATLAB with a COMSOL joint optimization simulation as an example, the fitness function modifies the simulation model in COMSOL with the optimization algorithm's parameter variables. After running the new model in COMSOL, it returns the result of the fitness function, forming a closed-loop, and causing the optimization algorithm to evolve iteratively. Assuming a run time of 10 min, a population size of 100 would require at least 1000 min to complete one evolution, and more than 500 h to complete 30 evolutions, which is an insufficient optimization efficiency. Therefore, it is urgent to improve the efficiency of optimization. At the initial and evolutionary stages of the multi-objective optimization algorithm, populations are generated in batches; consequently, it is essential to calculate the fitness values of a batch of individuals simultaneously, rather than sequentially. Obviously, this also necessitates that the size of a single operation is negligible and that the current computer conditions can accommodate the simultaneous operation of multiple individuals. To calculate the batch of individuals within a population, we must first divide it. Taking a population of size \(n\) as an example, the population is divided into \(m\) subpopulations, each containing \(x\) individuals. The fitness function is calculated for each of the \(m\) subpopulations and the fitness values of each individual are aggregated into the larger population after calculating the subpopulations. The simultaneous computation of each small population necessitates the simultaneous call of \(m\) COMSOL for the simulation. For example, using a 32-core workstation, one COMSOL for every two cores can ensure that 16 COMSOL are running simultaneously while maintaining the computational speed. Therefore, the key to the solution is to make batch calls to COMSOL for the multi-objective genetic algorithm. Figure 8 illustrates the details of our proposed method. First, the algorithm's core is still based on the NSGA-III algorithm, with the following specific steps:  
1. The initial phase generates consistent reference points based on the number of populations specified by the user. The original authors used the structured reference point method by [PERSON] et al. [34]. This method has superior performance when the objectives are small and can be optimized by generating fewer reference points; however, when the objective function is significant, the number of reference points dramatically increases, resulting in a decrease in the overall optimization speed. With the aid of two hyperplanes, we employ the deployment scheme of [PERSON] and [PERSON] et al. [35] to ensure a small number and wide distribution of reference points as follows: 1. Generate reference points on the hyperplane space of \((M-1)\) latitude, and the number of reference points is as follows: \[X=C_{M+H-1}^{H}\] (12) where \(H\) represents the number of copies of each individual target divided. 2. For every \(x_{ij}\in X\) (the \(ij\) subscript denotes the \(i\)-th element of the \(i\)-th combination in \(X\) ), the following exists: \[x_{ij}=x_{ij}-\frac{j-1}{H}\] (13) 3. Define \(S_{1}\) as the set of reference points, for each \(S_{ij}\in S_{1}\) and \(x_{ij}\in X\), and the following exists: \[\left\{ \begin{aligned} s_{ij}=x_{ij},j=1\\ s_{ij}=x_{ij}-x_{i(j-1)},1<j<M\\ s_{ij}=1-x_{i(j-1)},j=M\end{aligned} \right.\] (14)  
Figure 8: Joint parallel simulation method under many-objective optimization.