## 4 Rule-Based Reasoning
### Classification Algorithms and Parameters  
This study adopted the open-source machine learning library, Scikit-Learn, as a development tool, which provides a rich set of tools and various algorithms required for classification and regression problems. As suggested by many machine learning studies [28; 29], no single classifier can work best across all scenarios. The best practice of choosing a classification algorithm is to compare the performance of several learning algorithms and select the best model for the problem to be solved. Even so, the best model under this consideration may still vary regarding the nature of the training dataset we collect, the number of training cases, and the features we select for the learning process. Besides, instead of determining the best model for a particular problem, the main purpose of this study is to demonstrate the effect of the hybrid method we propose on the predictive performance. Therefore, this study implemented several classifiers using common classification algorithms including decision tree (DT) [30; 31], support vector machine (SVM) [32; 33; 34], and k-nearest neighbor (k-NN) [28; 35], as well as three classifiers applying ensemble learning strategies [28], and then conducted the training process using these classifiers upon two training datasets, one with the feedback from rule-based reasoning \begin{table}
\begin{tabular}{c c c c c} \hline \hline
**Original Feature** & **Description** & **Data Type** & **Example Value** & **Revised Feature** \\ \hline \multirow{2}{*}{Distance} & Length of clash point away from & \multirow{2}{*}{numeric} & \multirow{2}{*}{\(-0.234\)} & \multirow{2}{*}{unchanged} \\  & the component edge & & & \\ \hline \multirow{2}{*}{Floor-1} & The floor where the clashing & \multirow{2}{*}{numeric} & \multirow{2}{*}{2} & \multirow{2}{*}{unchanged} \\  & component 1 is located & & & \\ \hline \multirow{2}{*}{Floor-2} & The floor where the clashing & \multirow{2}{*}{numeric} & \multirow{2}{*}{2} & \multirow{2}{*}{unchanged} \\  & component 2 is located & & & \\ \hline \multirow{2}{*}{Clash Point} & \multirow{2}{*}{Clash point coordinates} & \multirow{2}{*}{text} & \multirow{2}{*}{\(\begin{array}{c}\text{x -7370, y -1171, \\ z: 24}\end{array}\)} & \multirow{2}{*}{\(\begin{array}{c}\text{Clash Point\_x,}\\ \text{Clash Point\_y,}\\ \text{Clash Point\_z}\end{array}\)} \\  & & & & \\ \hline \multirow{2}{*}{ItemType-1} & \multirow{2}{*}{\begin{tabular}{c} Component type of clashing \\ component 1 \\ \end{tabular} } & \multirow{2}{*}{nominal} & \multirow{2}{*}{Pipes \(|\) Fittings} & \multirow{2}{*}{Pipes; Fittings} \\  & & & & \\ \hline \multirow{2}{*}{ItemType-2} & \multirow{2}{*}{\begin{tabular}{c} Component type of clashing \\ component 2 \\ \end{tabular} } & \multirow{2}{*}{nominal} & \multirow{2}{*}{\begin{tabular}{c} Framings \(|\) Walls \(|\) \\ Slabs \(|\) Columns \\ \end{tabular} } & \multirow{2}{*}{\begin{tabular}{c} Framings, Walls, \\ Slabs, Columns \\ \end{tabular} } \\  & & & & \\ \hline \multirow{2}{*}{Rule-Tag} & \multirow{2}{*}{\begin{tabular}{c} Clash type predicted by \\ rule-based reasoning \\ \end{tabular} } & \multirow{2}{*}{nominal} & \multirow{2}{*}{\
\begin{tabular}{c} Errors \(|\) Pseudo \\ clashes \(|\) Deliberate \\ clashes \(|\) Unknown \\ \end{tabular} } & \multirow{2}{*}{
\begin{tabular}{c} Rule-errors, \\ Rule-pseudo, \\ Rule-deliberate, \\ Rule unknown \\ \end{tabular} } \\ \hline \hline \end{tabular}
\end{table} 
Table 4: Summary of feature selection and preprocessing. and the other without it, and compared both predictive performances. The decision tree is chosen because it works well with both numerical and categorical features and provides interpretability for decision-making [29], while SVM can generate robust results for complex classification problems [15]. k-NN, an easy-to-implement classifier that works well with a small dataset but suffers from low efficiency when the dataset grows, is used as a benchmark for DT and SVM classifiers [29].