## 4 RFR-Based LP-IoT Channel Estimation Models
### RFR(F) Model  
In the RFR(F) model, we utilised three LP-IoT channel environment features such as the distance between the transmitter and receiver, the environment condition (Line-of-Sight (LoS) and Non-Line-of-Sight (NLoS)), and the category showing the fixed location, varying location, or varying distance and location between the transmitter and receiver [30]. We input the three features into the RFR model to estimate the RSSI against those features. The following equation expresses the high-level RFR(F) model mathematically:  
\[X_{(s,c,g)}\xrightarrow{\text{output}}\mathcal{R}_{\gamma}^{F}, \tag{2}\]  
where \(X_{(s,c,g)}\) denotes the input to the modela and \(\mathcal{R}_{\gamma}^{F}\) represents the output, which is the estimated wireless channel (RSSI). The variable \(s\) indicates the distance between the transmitter and receiver, \(c\) denotes the LoS/NLoS condition, and \(g\) represents the scenario category. We used the distance as numerical input ranges from 0.2 m to 3 m. The condition feature is encoded as \(LoS=0\) and \(NLoS=1\), and the category is encoded as 0 for fixed location RSSI, 1 varying location, and 2 for varying distance and location between the transmitter and receiver. For the RFR(F) model's construction, we utilised two decision trees for bootstrapping. Bootstrapping is a process of randomly selecting the samples from  
Figure 2: The system model representing the RFR implementation on Feature-based and Sequence-based strategies.  
the dataset with its replacements to create a sample of the same size as the original dataset. We created a bootstrap sample of the dataset for each tree in the forest. To cover sample size with replacements, some samples appear multiple times, while others might not be included. Each tree is built on different bootstrap samples. This iterative bootstrapping process continues until the nodes are extended to a level where all leaves are either pure or contain fewer samples than the specified minimal threshold in each split. When splitting a node during the tree's construction, we select the random subset of the features at each split instead of considering all features. For example, only two of the three features (e.g., distance and condition) might be considered for the split. This randomness ensures the diversity of the algorithm. For the prediction, the new sample is passed through all the trees in the forest. Each tree gives a prediction of the RSSI value based on its structure. The overall forecast is determined by averaging the estimations generated by all the trees. Given that the input features can be represented as \(X=[s,c,g]\), the RFR(F)-based estimated outcome \(\hat{\gamma}\), also represented as \(\mathcal{R}_{\hat{\gamma}}^{F}\), can be mathematically expressed as the average of the predictions from the two trees:  
\[\mathcal{R}_{\hat{\gamma}}^{F}=\frac{1}{2}(T_{1}(X)+T_{2}(X)), \tag{3}\]  
where \(T_{1}\) and \(T_{2}\) represent the two trees in the RFR model and \(T_{1}(X)\) and \(T_{2}(X)\) are the predictions from trees \(T_{1}\) and \(T_{2}\) using the three input features.  
To evaluate the RFR(F) model, we utilised 80% of the data for training and 20% for testing. The K-Fold Cross-Validation method was performed by splitting the training dataset into K-folds for cross-validation, where \(K=5\) in the RFR(F) model, as shown in Figure 3. We made sure to use the same split in training as in testing to ease the evaluation. The constructed models were then trained on the training portion of the fold. Finally, we predicted the RSSI on the training and testing portions of each fold by calculating the Mean Squared Error (MSE) for both training and testing predictions for each fold. This evaluation metric, MSE, allows for comparing the model's performance on unseen data, ensuring that the model generalises well beyond the training set.  
Figure 3: The structure of Feature-based RFR (RFR(F)) model.