**6. Conclusions**

This work has proposed a machine learning method focused on genetic programming to render rule-based classifiers. Hence, this proposal has been aimed at inducing sets of logical rules able to learn the structure of the classes given in a dataset. We have applied the proposal to three clinical datasets (our concerning domain) and compared with other methods. In addition, we have identified the most reliable mutation operators regarding each dataset and, in that way, to improve the efficiency of our proposal. The results reached have been very promising when compared with other approaches. This proves the reliability of this approach to be used in the analysis of clinical data, which is our target data domain. Finally, we have disclosed certain relevant features from the logical rules found for each dataset involved in the experiment. Thereby, the proposal presented in this work can also be useful in the process of feature selection, since the attributes appearing in the rules of a classifier are the most important and so they discriminate the rest of attributes of the dataset. Related to the above, we have given an interpretation of the data by analyzing the dataset structures and the features of the rules found for each dataset. This prior knowledge can help the expert to establish a starting point for the study of the disease represented in the datasets.

**Author Contributions:** Conceptualization, methodology, validation, formal analysis, J.A.C.-G., E.C., J.L.J.S., and S.M.L.G.; investigation and writing—original draft preparation, J.A.C.-G. and Y.M.M.; writing—review and editing

and supervision, E.C., J.L.J.S., and S.M.L.G.; resources, project administration, funding acquisition, S.M.L.G. All authors have read and agreed to the published version of the manuscript.

**Funding:** This research was funded by the MINISTERIO DE CIENCIA E INNOVACIÓN, Project: La desigualdad económica en la España contemporánea y sus efectos en los mercados, las empresas y el acceso a los recursos naturales y la tierra, Grant No. HAR2016-75010-R, corresponding to the research of Santiago M. López G.

**Acknowledgments:** This research has been supported by project "Intelligent and sustainable mobility supported by multi-agent systems and edge computing (InEDGEMobility): Towards Sustainable Intelligent Mobility: Blockchain-based framework for IoT Security", Reference: RTI2018-095390-B-C32, financed by the Spanish Ministry of Science, Innovation and Universities (MCIU), the State Research Agency (AEI) and the European Regional Development Fund (FEDER). The initial part of this research was also supported iCIS project (CENTRO-07-ST24-FEDER-002003), which has been co-financed by QREN, in the scope of the Mais Centro Program and European Union's FEDER.

**Conflicts of Interest:** The authors declare no conflict of interest.

#### **Appendix A. Rule Based-Classifiers Rendered by the Evolutionary Method**

```
Appendix A.1. Rules of the DS1 Dataset (Heart Dataset)
```

```
Number of rules in the Classifier: 7
number of attributes: 22
Number of classes: 2
(Class #0)
IF (F13<0.37 ^ F16<=0.00 ^ F11=0.00) THEN Class := 0
IF (F5=1.00 ^ F21<=0.00 ^ F20<>1.00 ^ F10<1.00) THEN Class := 0
IF (F7<0.05 ^ F5<=0.72 ^ F17<=0.39 ^ F22<>1.00 ^ F4=0.00 ^ F6<>0.00) THEN
Class := 0
IF (F17<0.38 ^ F14<>0.00 ^ F3>=0.07 ^ F20<=0.00 ^ F15=0.00 ^ F21=1.00) THEN
Class := 0
IF (F13>=1.00 ^ F22<=0.68 ^ F1<1.00 ^ F14<=0.02 ^ F8<=0.00 ^ F11<>1.00) THEN
Class := 0
IF (F5<0.34 ^ F10<>0.00 ^ F21>=1.00 ^ F19=0.00 ^ F3=1.00 ^ F22<>1.00) THEN
Class := 0
(Class #1)
IF (F8<=1.00) THEN Class := 1
Appendix A.2. Rules of the DS2 Dataset (Hepatitis Dataset)
Number of rules in the Classifier: 5
number of attributes: 19
Number of classes: 2
(Class #0)
IF (FATIGUE<=1.00 ^ SEX=1.00 ^ ALBUMIN<=3.99 ^ PROTIME<=50.00 ^ PROTIME>28.85)
THEN Class := 0
IF (SPIDERS<=1.00 ^ SPLEEN>1.11 ^ ALBUMIN<>3.80 ^ AGE>=37.00 ^
ANTIVIRALS>=1.87 ^ ALK>=64.88 ^ ALK<95.00 ^ BILIRUBIN<>0.80) THEN
Class := 0
IF(ALK>104.77^PROTIME>=56.16^SGOT<=64.00^ASCITES>=2.00^ALK<>50.00^
```

```
Processes 2020, 8, 1565
ALBUMIN>=3.50 ^ AGE>=30.00) THEN Class := 0
(Class #1)
IF (ALBUMIN>=2.90) THEN Class := 1
IF (SEX>1.03) THEN Class := 1
Appendix A.3. Rules of the DS3 Dataset (Dermatology Dataset)
Number of rules in the Classifier: 11
number of attributes: 34
Number of classes: 6
(Class #0)
IF (fibrosis<=0.00 ^ elongation<>0.00 ^ spongio<=0.00) THEN Class := 0
(Class #1)
IF (kphenom=0.00 ^ vacuoli<=0.97 ^ clubbing<=0.48 ^ follipapules<1.83 ^
fibrosis=0.00 ^ disappear<0.32 ^ thinning<=1.00) THEN Class := 1
IF (age=20.00 ^ dborders<2.00) THEN Class := 1
(Class #2)
IF (bandlike>1.00 ^ thinning<>1.00) THEN Class := 2
(Class #3)
IF (bandlike<=0.00 ^ PNL<3.00 ^ kphenom>0.00 ^ elongation<=0.00) THEN
Class := 3
IF (elongation<=0.00 ^ age>=18.00 ^ itching<1.11 ^ disappear<>0.00) THEN
Class := 3
IF (itching<2.00 ^ inflam=2.00 ^ age=27.00 ^ spongio>0.00) THEN Class := 3
IF (age=36.00 ^ spongio>0.00 ^ inflam=2.00 ^ itching<=1.00) THEN Class := IF (age=62.00 ^ spongio<>0.00 ^ sawtooth=0.00) THEN Class := 3
(Class #4)
IF (fibrosis>0.00 ^ polypapules<=0.00) THEN Class := 4
(Class #5)
IF(perifolli>0.00^follipapules<>0.00)THENClass:=5
```
3

#### **Appendix B. Test Charts of the Mutation Operators**

**Figure A1.** Mutation tests for mutation operators M1, M2, and M3 for the DS1 dataset. Each row (with four graphics) in the figure corresponds to the same mutation operator and each graphic corresponds to 20 executions of the evolutionary method for 20 mutation probability values with step 0.05. The blue curve represents fitness values against mutation values. The green curve represents the mean fitness values from the four graphics in the same row and the pink lines state the standard error bars.

**Figure A2.** Mutation tests for mutation operators M1, M2, and M3 for the DS2 dataset. Each row of four graphics in the figure corresponds to the same mutation operator and each graphic corresponds to 20 executions of the evolutionary method for 20 mutation probability values with step 0.05. The blue line represents each fitness value for each mutation value. The green line represents the mean values from the four graphics in the same row and pink lines state the standard error bars.

**Figure A3.** Mutation tests for mutation operators M1, M2, and M3 for the DS3 dataset. Each row of four graphics in the figure corresponds to the same mutation operator and each graphic corresponds to 20 executions of the evolutionary method for 20 mutation probability values with step 0.05. The blue line represents each fitness value for each mutation value. The green line represents the mean values from the four graphics in the same row and pink lines state the standard error bars.
