## 3 Materials and Methods
### NHL and RCGA Based Integrated Algorithm  
RCGA is used to get the weight matrix of high-level FCM for high-quality classification and causality based on initial state values of coarse-grained concepts, which are got by M_NHL in Section 3.2.  
\[W=[W_{12},W_{13},\ldots,W_{1M},\ldots,W_{M1},\ldots,W_{M(M^{-1})}] \tag{12}\]  
Each chromosome consists of \(M\)(\(M\)-1) genes (see Equation (12)). \(M\) is the total number of hyper concepts or dimensions. The gene is a floating point number from the range [\(-\)1, 1]. \(W_{ij}\) specifies the weight between coarse-grained concept in \(i^{th}\) dimension and it in \(j^{th}\) dimension. Each chromosome can be decoded back into a high-level FCM.  
When the _fitness_ is more than _max_fitness_ specified or the generation is more than _max_generation_ specified, the procedure ends. The fitness function of RCGA is as follows (see Equation (13)).  
\[fitness=\frac{1}{a\sum_{t=0}^{T}\sum_{j=1}^{M}\bigl{(}A_{j}(t)-\widehat{A}_{ j}\bigr{)}^{2}+1} \tag{13}\]where \(T\) is the number of iterations, \(\widehat{A_{j}}\) is the actual output of \(j^{th}\) concept of system, \(A_{j}\)(\(t\)) is simulated output at \(t\) iteration by computing.  
In the procedure, the algorithm needs to call function M_NHL. Moreover, if the fitness and the number of iterations are not satisfied with the max, the next chromosome is created by select method, mutation method and recombination method. In our experiments, a simple one-point crossover, random mutation and roulette wheel selection are applied. The parameters are chosen and set as Table 1.  
The execution procedure of the algorithm integrating RCGA and NHL consisted of the following steps:  
Step 1: Initialize the parameters by the Table 1  
Step 2: Randomly initialize population_size chromosomes, \(g=0\), \(t=0\)  
Step 3: Repeat for each dimension \(j\):  
\(3.1\) Calculate \(A_{j}\)(\(t\)) by Equation (11) and \(\mathbf{w}_{j}\) based on M_NHL  
Step 4: Repeat for each chromosome:  
\(4.1\) Calculate the _fitness_ by \(A_{j}\)(\(t\)) and Equation (13)  
Step 5: Get max of the _fitness_ and the \(W\)  
Step 6: if max of _fitness_ not more than _max_fitness_ and \(g\) not more than _max_generation_  
\(6.1\) Select chromosomes by roulette wheel selection  
\(6.2\) Recombination the chromosomes by single-point crossover  
\(6.3\) Random mutation to the chromosomes by the probability  
\(6.4\) Set \(t=i+1\), Repeat for each chromosome:  
\(6.4.1\) Calculate \(A_{j}\)(\(t\)) by Equation (1)  
\(6.5\) Set \(g=g+1\), go to Step 5  
Step 7: The \(W\) is the optimal chromosome.  
The criterion in Equation (14) is defined as a normalized average error between corresponding concept values at each iteration between the two states. The error is used to define the accuracy of the algorithm simulating FCM.  
\[error=\frac{1}{M\times T}\sum_{t=0}^{T}\sum_{j=1}^{M}|A_{j}(t)-\hat{A}_{j}| \tag{14}\]  
\begin{table}
\begin{tabular}{c c c} \hline \hline
**Parameters** & **Values** & **Meanings** \\ \hline probability of recombination & 0.9 & probability of single-point crossover \\ probability of mutation & 0.5 & probability of random mutation \\ population\_size & 50 & the number of chromosomes \\ _max\_generation_ & 500,000 & a maximum number of generations \\ _max\_fitness_ & [0.6, 0.9] & fitness thresholds \\ \(a\) & 1000 & a parameter in Equation (13) \\ \hline \hline \end{tabular}
\end{table}
Table 1: The parameters in the integrated algorithm.