## 3 Results and Discussion
\begin{table}
\begin{tabular}{c c c c c c c c c} \hline \hline  & \multicolumn{2}{c}{**ANN Structure**} & \multicolumn{3}{c}{**FFNNLM**} & \multicolumn{3}{c}{**CFNNLM**} \\ \cline{2-10} \# & \multicolumn{3}{c}{**Training**} & \multicolumn{3}{c}{**Testing**} & \multicolumn{3}{c}{**Training**} & \multicolumn{3}{c}{**Testing**} \\ \cline{2-10}  & **Hidden Layer Neurons** & \(R^{2}\) & **RMSE** & \(R^{2}\) & **RMSE** & \(R^{2}\) & **RMSE** & \(R^{2}\) & **RMSE** \\ \hline
1 & [5] & 0.85 & 143.5 & 0.60 & 372.0 & 0.87 & 133.0 & 0.39 & 462.2 \\
2 & [10] & 0.91 & 115.0 & – & 972.9 & 0.89 & 124.8 & – & 734.7 \\
3 & [20] & 0.91 & 110.4 & – & \textgreater{}1000 & 0.94 & 92.8 & – & \textgreater{}1000 \\
4 & \(\{5-5\}\) & 0.90 & 116.7 & 0.48 & 425.1 & 0.93 & 99.2 & – & \textgreater{}1000 \\
5 & \(\{10-10\}\) & 0.97 & 62.1 & – & \textgreater{}1000 & 0.98 & 51.6 & – & \textgreater{}1000 \\
6 & \(\{20-20\}\) & 1.0 & 0 & – & \textgreater{}1000 & 1.0 & 0 & – & \textgreater{}1000 \\
7 & \(\{5-10\}\) & 0.94 & 93.4 & – & \textgreater{}1000 & 0.96 & 72.8 & – & 739.2 \\
8 & \(\{10-5\}\) & 0.94 & 90.3 & – & \textgreater{}1000 & 0.96 & 72.8 & – & \textgreater{}1000 \\ \hline \hline \end{tabular}
\end{table} 
Table 4: Results on ANN trained with 4 features (\(x_{1},x_{2},x_{4},x_{5}\)) using the Levenberg–Marquardt (LM) algorithm. \begin{table}
\begin{tabular}{c c} \hline \hline
**Variables** & **Correlation Score (R)** \\ \hline \(x_{1}\longleftrightarrow y\) & 0.739 \\ \hline \(x_{2}\longleftrightarrow y\) & –0.544 \\ \hline \(x_{3}\longleftrightarrow y\) & –0.222 \\ \hline \(x_{4}\longleftrightarrow y\) & –0.563 \\ \hline \(x_{5}\longleftrightarrow y\) & –0.662 \\ \hline \hline \end{tabular}
\end{table} 
Table 3: Correlation score for feature selection. Especially for the FFNN, poor generalization capability (overfitting) was observed when the number of hidden neurons gets larger. During testing, the lowest RMSE of 211.1 was obtained when CFNN with 20 hidden neurons (1 layer) was trained with the BR algorithm. The third experimentation was conducted to show the results of FFNN and CFNN training using the PSO algorithm (FFNNPSO and CFNNPSO respectively) where [PERSON]'s PSO version was used. The number of populations used in the PSO is set to 40, and the iteration number is set to 1000, the same as the one used in the LM and BR algorithms. The results are shown in Table 6. As compared to the previously trained ANN with LM and BR algorithm, both FFNN and CFNN trained with PSO (FFNNPSO and CFNNPSO) generally show good prediction ability in both the training and testing dataset, except for a few cases when two hidden layers are used (highlighted in gray). Therefore, it is preferable to use only one hidden layer to prevent overfitting. Thus, in the next experimentation, only one hidden layer was used with some variations in the number of neurons. The few lowest RMSE during testing were obtained (marked by \"*\") for both FFNNPSO and CFNNPSO with 1 hidden layer, except for 1 case of FFNNPSO (row 5 of Table 6). In all experimentations with one hidden layer, only FFNNPSO with 10 hidden neurons shows slightly lower RMSE during the testing, as shown in row 2 of Table 6.  
Furthermore, the fourth and fifth experimentation was conducted to investigate the CFNN model performance when only three features were used as the parsimonious model. The three features \((x_{1},x_{2},x_{5})\) were used in the fourth experimentation, while another combination of three features \((x_{1},x_{2},x_{4})\) were used in the fifth experimentation. The result of the fourth experimentation is shown in Table 7, where FFNNPSO and CFNNPSO with a different number of neurons in one hidden layer were investigated. The result indicates that it is possible to have a parsimonious model with only three features \((x_{1},x_{2},x_{5})\) as the ANN input.