# A Two-Archive Many-Objective Optimization Algorithm Based on D-Domination and Decomposition
## 2 Materials and Methods  
### D-Dominance Methods  
Penalty-based Boundary Intersection (PBI) is one of the most common decomposition methods, and its definition formula is as follows:  
\[\min g^{Pbi}(x|\lambda,z^{*})=d_{1}+\theta d_{2} \tag{2}\]  
\[d_{1}(z^{*},\lambda,x)=\frac{||(z^{*}-F(x))^{T}\lambda||}{||\lambda||} \tag{3}\]  
\[d_{2}(z^{*},\lambda,x,d_{1})=||F(x)-(z^{*}-d_{1}\lambda)|| \tag{4}\]  
where \(x\in\Omega\), \(\theta>0\) is a preset parameter, which usually takes 0.5. \(d_{1}\) is the projection distance of \(F(x)\) in direction \(\lambda\), and \(d_{2}\) is the distance from the vertical projection of \(F(x)\) in direction \(\lambda\). The farther away from \(\lambda\), the greater the penalty value \(d_{2}\), which constrains the direction of the algorithm weight vector to generate solutions. Suppose y is the projection of \(F(x)\) on line \(L\), as shown in Figure 1, the distance from \(z^{*}\) to y is represented by \(d_{1}\), and the distance from \(F(x)\) to \(L\) is represented by \(d_{2}\). [PERSON] and [PERSON] established a new relationship between decomposition and dominance through PBI decomposition, namely D-dominance [31]. According to the definition of \(d_{1}\) and \(d_{2}\) in the PBI decomposition, the parameter \(\beta\in(0,\pi/2)\) and the unit decomposition vector \(v\), D-dominance is defined as follows. If \(d_{1}(F(x))+d_{2}(F(x)-F(y))\cot(\beta)<d_{1}(F(y))\), then let us say \(F(x)\) is D-dominated by \(F(y)\), expressed by \(F(x)\prec_{\mathrm{D}}F(y)\). Otherwise, if \(d_{1}(F(y))+d_{2}(F(y)-F(x))\cot(\beta)<d_{1}(F(x))\), let us say \(F(x)\) is D-dominated by \(F(y)\), expressed by \(F(y)\prec_{\mathrm{D}}F(x)\). Otherwise, \(F(x)\) and \(F(y)\) are called mutually non-D-dominated. \(d_{1}(F(x))\) and \(d_{2}(F(x)-F(y))\) are calculated by Equation (4). We used \(d_{1}\) to evaluate the convergence of \(x\) and \(d_{2}\) to measure population diversity, and we wanted \(d_{1}\) to be as small as possible and increased \(d_{2}\) for diversity. If \(F(x)\prec_{\mathrm{D}}F(y)\), \(d_{2}(F(x))\) deviated from the unit vector by an angle greater than \(d_{2}(F(y))\) in the direction, and \(d_{1}(F(y))\) was greater than \(d_{1}(F(x))\) in the distance. Conversely, if \(F(y)\prec_{\mathrm{D}}F(x)\), \(d_{2}(F(y))\) deviated from the unit vector by an angle greater than \(d_{2}(F(x))\) in the direction, and \(d_{1}(F(x))\) was greater than \(d_{1}(F(y))\) in the distance. Figure 2 shows D-dominance example diagram. In the figure, there are three groups of solutions \(x\), \(x^{1}\), \(y\), \(y^{1}\) and \(q\), \(q^{1}\) and three decomposition vectors \(V\) and \(V^{1}\), where \(V^{1}\) is the moving vectors of \(V\). To judge whether \(x\) is D-dominated by \(y\), move the vector \(V\) to \(V^{1}\) to intersect with \(x\) to get the \(\beta\) projection; that is, the PBI-\(\beta\) decomposition value of \(y\) with respect to \(V^{1}\) is \(y^{1}\). From the figure, we can see intuitively that \(x\) is greater than the  
Figure 1: Penalty-based Boundary Intersection (PBI). projection value \(y^{1}\); that is, \(x\) is D-dominated by \(y\). To determine whether \(q\) is D-dominated by \(x\), one only needs the moving decomposition vector \(V\) intersected with \(q\), and then one can find the \(\beta\) projection value, i.e., \(x^{1}\), but \(x^{1}\) is less than \(q\). At the same time, the projection \(q^{1}\) from \(q\) to \(V^{1}\) is intuitively greater than \(x\). Therefore, \(q\) and \(x\) are not D-dominated. The D-dominated method reduces the dependence on the decomposition vector and enables each individual to update around itself. At the same time, D-dominated region can pass parameter \(\beta\) flexible adjustment. In order to set \(\beta\) reasonably, we used Formula (5) to adjust \(\beta\) automatically. \[\beta=\pi*\bigg{(}1-1/\bigg{(}1+\exp\bigg{(}-3*\frac{currentgen}{\text{max}gen }\bigg{)}\bigg{)}\bigg{)}/1.5 \tag{5}\]  
where _currentgen_ stands for current generation, and max_gen_ denotes the maximal generation.