## 3 Methodology
### BPNN Model Data Processing  
In order to overcome the subjectivity of the direct impact matrix obtained through questionnaire surveys and other methods, the original direct impact matrix was established  
Figure 1: Analysis model of prefabricated housing promotion in Hainan Province based on BPNN and DEMATEL. according to the questionnaire scores, and the BPNN model was used to correct the original matrix. There were four main steps:  
(1) First, \(K\) experts were invited to score. This paper uses the Likert 5-level scale to score (the value range is 0 to 4: 0 no influence, 1 weak influence, 2 medium influence, 3 strong influence, 4 extremely strong influence) to evaluate the influence of each first-level indicator factor and second-level indicator factor. The scoring results of \(K\) experts on the second-level indicator factors were recorded as \(\mathbf{M}=\left[m_{ai}\right]_{k\times 20}\), and the scoring results of \(K\) experts on the first-level indicator factors were recorded as \(\mathbf{N}=\left[n_{ai}\right]_{k\times 4}\), where \(m_{ai}\) is the evaluation of the influence of the \(a(a\in\left[1,\,K\right])\) expert on the \(i(i\in\left[1,\,20\right])\) second-level indicator factor, and \(n_{aj}\) is the evaluation of the influence of the \(a(a\in\left[1,\,K\right])\) expert on the \(j(j\in\left[1,\,4\right])\) first-level indicator factor. Then, the collected data were forward-processed to limit the values to the interval \(\left[0,\,1\right]\), and the standardized matrices \(\overline{\mathbf{M}}\) and \(\overline{\mathbf{N}}\) were obtained, respectively. The processing formula is shown in Equation (1):  
\[y=\frac{x_{i}-x_{min}}{x_{max}-x_{min}} \tag{1}\]  
\(x\) and \(y\) represent the data values before and after the conversion, respectively. \(x_{i}\) represents the score of the \(i\) sample of each indicator factor. \(x_{max}\) and \(x_{min}\) represent the maximum and minimum values in the sample data, respectively. (2) \(\overline{\mathbf{M}}\) was taken as the input layer of the BPNN model and \(\overline{\mathbf{N}}\) as the output layer. Matlab2021b was used to calculate the weight matrix \(\mathbf{U}\) from the input layer to the hidden layer and the weight matrix \(\mathbf{V}\) from the hidden layer to the output layer. To calculate \(\mathbf{U}\) and \(\mathbf{V}\), it was necessary to first determine the number of nodes \(\mathbf{Z}\) in the hidden layer. The calculation formulas for \(\mathbf{Z}\), \(\mathbf{U}\) and \(\mathbf{V}\) are shown in Equations (2)-(4):  
\[\mathbf{Z}=\sqrt{s+t}+c \tag{2}\]  
\[\mathbf{U}=\left(u_{is}\right)_{m\times z}(i=1,2,\ldots,m;\,s=1,2,\ldots,z) \tag{3}\]  
\[\mathbf{V}=\left(v_{is}\right)_{z\times n}(j=1,2,\ldots,n;\,s=1,2,\ldots,z) \tag{4}\]  
where \(s\) is the number of input layer nodes, \(t\) is the number of output layer nodes, \(c\) is a constant of [1; 10], \(m\) is the number of secondary indicator factors, \(n\) is the number of primary indicator factors, and \(z\) is the number of hidden layer neuron nodes. (3) The overall weight matrix \(\mathbf{B}\) and the overall weight vector \(\mathbf{B}^{\prime}\) were calculated. The calculation formula is shown in Equation (5): The calculation formulas for \(\mathbf{B}\) and \(\mathbf{B}^{\prime}\) are shown in Equations (5) and (6):  
\[\mathbf{B}=\left(B_{ij}\right)_{m\times z}=mean[abs(\mathbf{U})\times abs(\mathbf{V})] \tag{5}\]  
\[\mathbf{B}^{\prime}=\sum_{t=1}^{k}\left(B_{ij}\right)_{m\times n} \tag{6}\]  
The \(abs\) function means to find the absolute value of each element of the matrix, and the \(mean\) function takes the average value of each column of \(abs(U)\times abs(V)\). (4) The direct correlation matrix \(\mathbf{T}=\left[t_{ij}\right]_{20\times 20}\) was calculated. The calculation formula for \(\mathbf{T}\) is shown in Equation (7):  
\[\mathbf{T}=\left[t_{ij}\right]_{20\times 20}= \begin{bmatrix}t_{11}&\cdots&t_{1n}\\ \vdots&\ddots&\vdots\\ t_{n1}&\cdots&t_{nn}\end{bmatrix}