## 3 The Proposed Method
### Virtual Sample Generation Method
#### 3.1.1 The Pre-Processing Method  
The purpose of the pre-processing step was to preface the discriminative feature within the selected samples precisely. This step was mandatory in order to avoid overlapping of the sequence of corresponding discriminative features before generating new virtual samples. As an example, one of the datasets tested in this work included two groups: one Related Group (RG) including participants with autism spectrum disorders and an Unrelated Group (URG), which means healthy participants. It was clear that it was not reasonable to overlap the two different groups during the generation; therefore, this event was precluded by the pre-processing method as the following equations:  
For each feature, its values are ordered in descending sort for class A in matrix MlsA, as follows:  
\[MlsA_{I}=max\ a_{ij\ i\in l-1},\ \left\{j=1,\ldots,n\right\}\,\ MlsA_{i}\geq MlsA_{i+1}\]  
For each feature, its values are ordered in ascending sort for class A in matrix mlsA, as follows:  
\[mlsA_{I}=min\ a_{ij\ i\in l-1},\ \left\{j=1,\ldots,n\right\}\,\ mlsA_{i}\leq mlsA_{i+1}\]For each feature, its values are ordered in descending sort for class B in matrix MlsB, as follows:  
\[MlsB_{I}=max\ b_{ij\ _{i\in I-1}},\ \left\{j=1,\ldots,n\right\}\,\ MlsB_{i}\geq MlsB_{i+1}\]  
For each feature, its values are ordered in ascending sort for class B in matrix mlsB, as follows:  
\[mlsB_{I}=min\ b_{ij\ _{i\in I-1}},\ \left\{j=1,\ldots,n\right\}\,\ mllsB_{i}\leq mlsB_{i+1}\]  
Here, Equation (2) tries to handle overlaps, and after each execution of this equation, it checks the ideal case. \[p(NA_{j},MA_{j},NB_{j},MB_{j},c)=\]  
\[\left\{ \begin{array}{l}Equations\ (5)\ \text{and}\ (6);\ \ \ if\ \ (NA_{j}\geq MB_{j})\vee(NB_{j}\geq MA_{j})\\ \text{stop and delete current column},\ if\ (c=I)\\ \\ p(mlsA_{c},MA_{j},NB_{j},MB_{j}=c+1)\ ;\ \ if\ (NA_{j}<NB_{j})\wedge\\ (MB_{j}<MA_{j})\wedge(MeA_{j}-NA_{j})\leq(MA_{j}-MeA_{j})\\ \\ p(NA_{j},MlsA_{c},NB_{j},MB_{j},c+1);\ \ if\ (NA_{j}<NB_{j})\wedge\\ (MB_{j}<MA_{j})\wedge(MeA_{j}-NA_{j})>(MA_{j}-MeA_{j})\\ \\ p(mlsA_{c},MA_{j},NB_{j},MB_{j},c+1);\ \ \ if\ (NA_{j}>NB_{j})\wedge\\ (MB_{j}>NA_{j})\wedge(MB_{j}<MA_{j})\wedge(MeA_{j}-NA_{j})>(MB_{j}-MeB_{j})\\ \\ p(NA_{j},MlsA_{c},NB_{j},MB_{j},c+1);\ \ \ if\ (NA_{j}>NB_{j})\wedge\\ (MB_{j}>NA_{j})\wedge(MB_{j}<MA_{j})\wedge(MeA_{j}-NA_{j})>(MB_{j}-MeB_{j})\\ \\ p(NA_{j},MA_{j},mlsB_{c},MB_{j},c+1);\ if\ (NB_{j}>NA_{j})\wedge\\ (MA_{j}>NB_{j})\wedge(MA_{j}<NB_{j})\wedge(MeB_{j}-NB_{j})\leq(MA_{j}-MeA_{j}) \\ \\ p(NA_{j},MA_{j},NB_{j},MlsB_{c},c+1);\ if\ (NB_{j}>NA_{j})\wedge\\ (MA_{j}>NB_{j})\wedge(MA_{j}<NB_{j})\wedge(MeB_{j}-NB_{j})>(MA_{j}-MeA_{j})\\ \\ p(NA_{j},MA_{j},NB_{j},MlsB_{c},c+1);\ if\ (NB_{j}<NA_{j})\wedge\\ (MA_{j}<NB_{j})\wedge(MeB_{j}-NB_{j})\leq(MB_{j}-MeB_{j})\\ \\ p(NA_{j},MA_{j},NB_{j},MlsA_{c},c+1);\ if\ (NB_{j}<NA_{j})\wedge\\ (MA_{j}<MB_{j})\wedge(MeB_{j}-NB_{j})>(MB_{j}-MeB_{j})\\ \end{array} \right. \tag{2}\]  
If it succeeded to handle overlap (\(c<I\)), then Equations (5) and (6) were executed to expand the intervals, which were follow by Equation (7), which would be executed to generate N virtual features. Otherwise, the feature would be deleted and would not be taken into the consideration for generating virtual samples. Furthermore, the columns (features) in matrices A and B that failed to generate virtual numbers according to the previous Equation (2) would be deleted, and a new two matrices with new column dimension (H) would be generated NA\({}_{IH}\) and NB\({}_{IH}\)  
H denotes the new number of the column of matrices NA and NB after deletion of unsuccessful columns (features) from matrices A and B, where \(H\leq J\). In addition, the generated single dimension matrices \(GAh_{N1},\ h=1,\ldots,H\) and \(GBh_{N1},\ h=1,\ldots,H\) were combined horizontally into a single matrix NGA\({}_{NH}\) and NGB\({}_{NH}\) respectively, as shown in Equation (3). N = number of virtual samples. \[