## 3 Method
### Proposed Semi-Supervised Explainable BRBES Framework
As shown in Figure 1b, we performed this learning by optimizing both the parameters and structure of the BRBES. The learning parameters of BRBES include its rule weight, antecedent attribute's weight, and consequent attribute's belief degrees [68]. These learning parameters were initially set by a human expert, which may not be accurate for a large dataset [69]. Therefore, many optimal training techniques, such as Particle Swarm Optimization (PSO), Differential Evolution (DE), and Sequential Quadratic Programming, have been employed to facilitate the learning of BRBES parameters in order to increase the accuracy of the initial BRBES results [49; 70; 71]. For parameter optimization, optimal training approaches based on sequential quadratic are employed. Nevertheless, they have a tendency to become trapped in local optima. As a result, the global optima in the search space cannot be found [69]. Evolutionary algorithms like PSO, DE, Genetic Algorithm (GA), and BAT, however, have circumvented this limitation by conducting random searches from any location inside the search space. Because of the optimization strategy, DE outperforms other evolutionary algorithms to optimize BRBES parameters [72]. Two main elements of the DE are exploration and exploitation. Using the data from the search space's current focus area, exploitation creates a new solution [73]. To stay out of local optima, exploration enlarges the search space. Finding a solution's global optima depends heavily on two DE control parameters: crossover (CR) and mutation (F) [74]. The majority of DE research has altered CR and F values according to the objective function's fitness values [75; 76]. They did not, however, take into account the various kinds of uncertainties associated with the DE algorithm. To address these uncertainties of DE, an enhanced Belief Rule-Based adaptive Differential Evolution (eBRBaDE) algorithm has been proposed by [69]. This eBRBaDE utilizes the BRBES's inherent uncertainty handling capacity to address the uncertainties of DE. It integrates DE with the BRBES to optimize parameters of the BRBES. eBRBaDE contains two different BRBESs, named BRBES_F and BRBES_CR, to calculate the values of F and CR, respectively. By calculating the F and CR values based on population changes and objective function's values in each iteration, the BRBES assists in achieving the ideal balance of search space between exploration and exploitation. The new population is created by carrying out the DE mutation, crossover, and selection processes using the updated F and CR values. The individual of the new population with the highest fitness value is chosen as the best option after this process is completed and the stop requirements are satisfied. Thus, eBRBaDE provides greater accuracy than DE to produce ideal values for the learning parameters of the initial BRBES by striking a balance between exploration and exploitation through its uncertainty handling mechanism [69]. The initial BRBES is then updated with the optimized values of its learning parameters. The stop criterion is then examined. It will be false for the first iteration, at which point the procedure advances to the structure optimization stage. To optimize the structure of the rule base of \begin{table}
\begin{tabular}{l l l} \hline
**Belief Degrees** & **Consumed Energy** & **Consumed Energy** \\
**of Consequent Attribute** & **(District Heating)** & **(Electric Heating)** \\ \hline H is the highest & (H \(\times\) 2.40) + (M \(\times\) 0.80) & (H \(\times\) 4) + (M)/2 \\ L is the highest & ((1 \(-\) L) \(\times\) 0.65) + (M \(\times\) 0.15) & ((1 \(-\) L) \(\times\) 2) + (M \(\times\) 2)/3 \\ M is 100\% & M \(\times\) 0.40 & M \(\times\) 3 \\ M is the highest, next is H & (M \(\times\) 0.40) + (H \(\times\) 2.40)/5 & (M \(\times\) 3) + H \\ M is the highest, next is L & (M \(\times\) 0.40) - (L \(\times\) 0.20)/5 & (M \(\times\) 2) - (L)/5 \\ \hline \end{tabular}
\end{table} 
Table 6: Quantification of consumed energy in kWh using crisp value.