## 3 The Proposed NSPSO Sampling Algorithm
### Particle Memory Strategy  
According to Equation (8), the personal best locations of particles are extremely important for normal search, since the guiding hyperplane is formed by the neighbors' best  
Figure 5: The over-repel problem. location of each particle. Normally, during the determination process of a particle's personal best location, the whole iteration process will be considered and, metaphorically speaking, the particle never forgets. However, outdated information may misguide the particles in RMOPs. This is because in NSPSO, particles are guided by the hyperplane formed by their neighbors' best locations. If the best location of a particle is too far from its current location, the formed hyperplane may be unable to reflect the local feature of the optimal region near the particle. Therefore, a particle memory strategy (as shown in Equation (14)) is invented to address this problem. This strategy lets particles only record the information of the last \(k\) iterations, so as to ensure that the recorded information is updated. \[  
Implement steps of NSPSO on candidate samples generating process is described as follows:  
Step 1: Initialize the population in state variable space and set all relevant parameters. Step 2: Calculate the fitness value for each particle. In the engineering case part of this study, the fitness value in reliability analysis was calculated as _abs_\((FS(x)\ -1)\), in which FS was calculated through slip surface stress method as described in literature [28]. Global minimum \(p_{S}(t)\) was also recorded in this step. Step 3: Identify neighbor list for each particle according to _ns_. Step 4: Use Equation (8) to calculate the normal search vector for each particle. Step 5: Use Equation (11) to add repulsion vector to each particle. Step 6: Fetch the historical data of each particle and identify the personal best location as well as the corresponding function using particle memory according to Equation (14). Step 7: Update velocity vector and location vector for each particle using Equations (15)-(17):  
\[v_{i}(t+1)=\left\{ \begin{array}{ll}\chi(\boldsymbol{v}_{i}(t)+\varphi_{1} \boldsymbol{r}_{1}(\boldsymbol{p}_{i}(t)-\boldsymbol{x}_{i}(t))_{N}+\varphi_{2 }\boldsymbol{r}_{2}\boldsymbol{N}_{i}(t)-\boldsymbol{r}_{i}(t-1))+\boldsymbol {r}_{i}(t)+\boldsymbol{\text{are}}_{i}(t),&if\boldsymbol{N}_{i}(t)\
eq 0\\ \\ \chi(\boldsymbol{v}_{i}(t)-\boldsymbol{r}_{i}(t-1))+\boldsymbol{r}_{i}(t),&if \boldsymbol{N}_{i}(t)=0\end{array} \right. \tag{15}\]  
where  
\[(\cdot)_{N}=d_{\cdot\boldsymbol{N}_{i}(t)}\cdot\boldsymbol{N}_{i}^{o}(t) \tag{16}\]  
\[\boldsymbol{x}_{i}(t+1)=\boldsymbol{x}_{i}(t)+\boldsymbol{v}_{i}(t+1) \tag{17}\]  
\(-0.16199<\chi<0.78540\); \(\varphi_{1}=\varphi_{2}=2.05\)[29]; \(\alpha\) is between 0.2-0.5; \((\cdot)_{N}\) is the projection of vector \(\cdot\) to normal search vector \(N_{i}(t);d_{\cdot\boldsymbol{N}_{i}}\) is the corresponding projected length; \(N_{i}^{o}(t)\) is the unitization of \(N_{i}(t)\). Figure 6: Flowchart of the NSPSO sampling algorithm. Step 8: Execute boundary check for both velocity and location [30] according to Equations (18) and (19), respectively:  
\[ \begin{array}{l}\vspace{-0.1 cm}v_{i}(t+1)^{\prime}=\left\{\begin{array}{ll} \vspace{-0.1 cm}v_{i}(t+1),&\quad\quad\text{if }\|\vspace{-0.1 cm}v_{i}(t+1)\|\leq\vspace{-0.1 cm}v_{max}\\ \frac{\vspace{-0.1 cm}v_{i}(t+1)}{\|v_{i}(t+1)\|}\times\vspace{-0.1 cm}v_{max},& \quad\text{if }\|\vspace{-0.1 cm}v_{i}(t+1)\|>\vspace{-0.1 cm}v_{max}\end{array}\right.\end{array}  \tag{18}\]  
where \(\vspace{-0.1 cm}v_{max}\) is a predefined value of velocity boundary. \[ \begin{array}{l}\vspace{-0.1 cm}x_{i}(t+1)^{\prime}=\left\{\begin{array}{ll} x_{max}-\ (\vspace{-0.1 cm}x_{i+1}-\vspace{-0.1 cm}x_{max}),&\quad\text{if }\vspace{-0.1 cm}x_{i}(t+1)\geq\vspace{-0.1 cm}x_{max}\\ x_{min}\!+\!(\vspace{-0.1 cm}x_{min}-\vspace{-0.1 cm}x_{i+1}),&\quad\text{if }\vspace{-0.1 cm}x_{i}(t+1)<\vspace{-0.1 cm}x_{min}\end{array}\right.\end{array}