# A Learnable Viewpoint Evolution Method for Accurate Pose Estimation of Complex Assembled Product
## 2 Proposed Method
### Parent Migration and Offspring Generation  
As shown in Figure 5, a parent migration mechanism is proposed to ensure that the population performance can be gradually improved with the update of \(\mathcal{F}\). The migration operation is defined as \(\mathcal{P}_{i+1}\rightarrow\mathcal{P}_{i+1}^{\prime},\;\text{and}\;\mathbf{T }_{v}^{*}\) of \(vp_{k}^{\prime}\in\mathcal{P}_{i+1}^{\prime}\), which denotes the pose of the migrated parent, can be expressed as  
\[\mathbf{T}_{v}^{*}=\mathbf{T}_{v}^{rand[0,(1-\lambda_{k})\cdot v_{k}]},\mathbf{ T}_{v}\in tra_{\mathbf{T}_{v}^{\perp}},\lambda_{k}=E^{t}\Big{(}vp_{k}^{q} \Big{)}, \tag{14}\]  
where \(rand\) means to randomly pick an integer in the range \([0,(1-\lambda_{k})\cdot v_{k}]\) and \(E^{t}\) is the evolution function of the migration factor \(\lambda_{k}\). To further align the exploration with the actual situation, we performed rotation correction on the randomly generated values. Sampling \(vp\) is highly exploratory while performing strictly according to the optimization direction lacks exploration. To address these problems, an offspring generation strategy based on the pose feasible region constraint is designed. The Jacobian matrix of (10) is \(\mathbf{J}_{F}\in\mathbb{R}^{1\times 7}\). For any \(vp_{k}^{\prime}\) and its \(\mathbf{T}_{v}^{*}\), the next feasible point within the trust region \(r^{*}\) can be calculated from \(\left(\mathbf{J}_{F}\mathbf{J}_{F}+r^{*}\mathbf{I}\right)\Delta=-\mathbf{J}_{ F}^{\top}f_{2}\left(\mathbf{q}_{v}^{*},\mathbf{t}_{v}^{*}\right)\). The basic direction is defined as  
\[d=\left\{d_{\mathbf{o}}\Big{|}\left(\mathbf{J}_{\mathbf{o}}\mathbf{T}_{\mathbf{o}}+r^{*} \mathbf{I}\right)d_{\mathbf{o}}=-\mathbf{J}_{\mathbf{o}}\mathbf{T}f_{2}\left(\mathbf{q}_{v }^{*},\mathbf{t}_{v}^{*}\right),\mathbf{J}_{\mathbf{o}}=\mathbf{J}_{F}\mathbf{I}_\mathbf{{o}=0},\mathbf{o}\in\mathbf{o}\right\}, \tag{15}\]  
where \(\mathbf{I}_{\mathbf{o}=0}\) indicates that the corresponding column of \(\mathbf{I}\) is assigned to \(0\) according to the gradient clipping configuration \(\mathbf{o}\). For example, \(\mathbf{o}=\{5,6,7\}\) means that only the gradient of rotation is considered. In this study, \(\mathbf{o}\) includes maintaining the gradient of \(\mathbf{t}_{v}^{*}\) and clipping \(\mathbf{q}_{v}^{*}\) in four dimensions and maintaining the gradient of \(\mathbf{q}_{v}^{*}\) and clipping \(\mathbf{t}_{v}^{*}\) in three dimensions. The estimated amount of gradient descent can usually be expressed as \(\updownarrow_{\mathbf{o}}=-\mathbf{\alpha}_{\mathbf{o}}\mathbf{T}\mathbf{J}_{\mathbf{o}} \mathbf{T}f_{2}\left(\mathbf{q}_{v}^{*},\mathbf{t}_{v}^{*}\right)-\frac{1}{2}\mathbf{ \alpha}_{\mathbf{o}}\mathbf{T}_{\mathbf{o}}\mathbf{T}_{\mathbf{o}}\mathbf{\alpha}_{\mathbf{o}}\). The probability of generating offspring in each basic direction is described as  
\[p_{\mathbf{o}}=\mathrm{I}(\updownarrow_{\mathbf{o}})(1-p^{\varepsilon})\frac{\updownarrow _{\mathbf{o}}}{\sum_{\mathbf{o}\in\mathrm{C}ue^{\varepsilon}}\updownarrow_{\mathbf{o}}}+( 1-\mathrm{I}(\updownarrow_{\mathbf{o}}))p^{\varepsilon}\Big{|}\frac{\updownarrow _{\mathbf{o}}}{\sum_{\mathbf{o}\in\mathbf{o}^{\varepsilon}}\updownarrow_{\mathbf{o}}}\Big{|}, \tag{16}\]  
where if \(\updownarrow_{\mathbf{o}}>0\), \(\mathrm{I}(\updownarrow_{\mathbf{o}})=1\), otherwise, \(\mathrm{I}(\updownarrow_{\mathbf{o}})=0\). \(p^{\varepsilon}\) is the pre-allocated probability of exploration, and \(\mathbf{o}^{\varepsilon}=\{\mathbf{o}|\updownarrow_{\mathbf{o}}\leq 0,\mathbf{o}\in\mathbf{o}\}\), \(\mathrm{C}uo^{\varepsilon}\) is the complementary set of \(\mathbf{o}^{\varepsilon}\). To prevent the imbalance of \(p_{\mathbf{o}}\) due to too few exploration directions, it is recommended to apply secondary adjustments according to the ratio of the \(\overline{p}_{\mathbf{o}}\) in the two sets. As shown in Figure 5, once the basic direction \(\mathbf{\mathcal{A}}_{\mathbf{o}}\) is selected, a cone-based disturbance is further performed on the rotation and translation, respectively.