Submitted:
29 November 2024
Posted:
29 November 2024
You are already at the latest version
Abstract
Keywords:
MSC: 90B50
1. Introduction
- Control object complexity.
- Control task complexity.
- Volume of data for analysis.
- Time restrictions.
- Decisions urgency.
2. Related Works
- A high-quality result can be achieved by forming, normalizing, and optimizing a set of rules.
- It is necessary to select optimal membership functions and regulate their parameters to obtain high-quality results.
3. Material and Methods
3.1. Description of the Dataset
- Temperature (): 20-70 °C
- Al2O3 concentration (): 0, 0.05, 0.3 vol %.
- TiO2 concentration (): 0, 0.05, 0.3 vol %.
- Density ().
- Viscosity ().
3.2. Schema of the Proposed Approach
- There is no need to calculate and select various parameters to execute the algorithm.
- There is no need to pre-select the variables that will participate in the analysis to apply the algorithm. The variables are selected during model training based on the Gini index value.
- The algorithm handles outliers well. Separate tree branches are formed for data with outliers.
- High model training speed.
- Fuzzification of input values. The value of the input variable is assigned a set of linguistic terms of some fuzzy variable during fuzzification. Each fuzzy variable can be described as:where N is the variable name: temperature, concentration; T is a set of linguistic terms: high temperature, medium temperature, low temperature, high concentration, medium concentration, low concentration; U is an range of values; F is a function for calculating the degree of membership of the input variable value to a certain linguistic term. The set of linguistic terms describes a subset of values of the fuzzy variable U. In this case, the value of the input variable is related to all linguistic terms with different membership degrees .
-
Aggregation. Truth degree of the rule antecedent is calculated at the aggregation stage:Each atom of the antecedent of a fuzzy rule corresponds to a linguistic term of some fuzzy variable . Rule atoms are replaced by the values of the membership degree of the input variable to some linguistic term during aggregation,. Then the function ( or ) is applied. The implementation of the function is determined by the algorithm of fuzzy logical inference: Mamdani, Sugeno, Tsukamoto, etc.
- Activation. Truth degree of the consequent of the output variable is calculated at the activation stage,. In our case, the consequent always consists of one atom and has a weight coefficient equal to 1. Thus:
- Accumulation. The membership function is formed for all output variables at the accumulation stage. The membership function is formed based on the max-union of the membership degrees of all linguistic terms of i-th fuzzy variable :
- Defuzzification. Numerical value for the fuzzy output variable is obtained based on the membership function at the defuzzification stage. In our case, the Centre of Gravity method is used:
3.3. Description of the Approach to Generating Fuzzy Rules
Step 1. Get a set of raw rules from the decision tree
Step 2. Normalization of raw rules
| Algorithm 1 Rules normalization algorithm |
|
Step 3. Removing Similar Rules
| Algorithm 2 Algorithm for removing similar rules |
|
Step 4. Rules simplification
| Algorithm 3 Rules simplification algorithm |
|
Step 5. Rule fuzzification
| Algorithm 4 Fuzzy rules generation algorithm |
|
| Algorithm 5 Group fuzzy rules algorithm |
|
Step 6. Fuzzy Inference
-
Fuzzification:
- , , ;
- , , ;
- , , .
-
Aggregation and activation:
-
For rule:;
-
For rule:;
-
For rule:, etc.
-
- Accumulation. Figure 7 represents the accumulation result.
- Defuzzification. .
3.4. Rules Clustering
| Algorithm 6 Algorithm for generating a unique list of atoms |
|
4. Experiments
- Programming language: Python.
- Python interpreter version: 3.12.
-
Libraries:
- Machine learning library (decision tree and KMeans clustering): scikit-learn 1.5.2;
- Data manipulation libraries: numpy 2.1.0 and pandas 2.2.2;
- Fuzzy inference library: scikit-fuzzy 0.5.0;
- Plotting library: matplotlib 3.9.2;
- Additional dependency for the scikit-fuzzy library: networkx 3.4.2.
- ;
- .
- ;
- ;
- ;
- ;
- ;
- .
- ;
- .
- ;
- .
5. Conclusions
- Development of an approach to generating a set of fuzzy rules based on the interpretation of other machine learning algorithms.
- Development of a method for generating fuzzy sets, considering the specifics of the subject area to improve the FIS quality.
Author Contributions
Funding
Institutional Review Board Statement
Informed Consent Statement
Data Availability Statement
Conflicts of Interest
Appendix A. Density Dataset
| # | (°C) | (%) | (%) | |
|---|---|---|---|---|
| train dataset | ||||
| 1 | 20 | 0 | 0 | 1.0625 |
| 2 | 25 | 0 | 0 | 1.05979 |
| 3 | 35 | 0 | 0 | 1.05404 |
| 4 | 40 | 0 | 0 | 1.05103 |
| 5 | 45 | 0 | 0 | 1.04794 |
| 6 | 50 | 0 | 0 | 1.04477 |
| 7 | 60 | 0 | 0 | 1.03826 |
| 8 | 65 | 0 | 0 | 1.03484 |
| 9 | 70 | 0 | 0 | 1.03182 |
| 10 | 20 | 0.05 | 0 | 1.08755 |
| 11 | 45 | 0.05 | 0 | 1.07105 |
| 12 | 50 | 0.05 | 0 | 1.0676 |
| 13 | 55 | 0.05 | 0 | 1.06409 |
| 14 | 65 | 0.05 | 0 | 1.05691 |
| 15 | 70 | 0.05 | 0 | 1.05291 |
| 16 | 20 | 0.3 | 0 | 1.18861 |
| 17 | 25 | 0.3 | 0 | 1.18389 |
| 18 | 30 | 0.3 | 0 | 1.1792 |
| 19 | 40 | 0.3 | 0 | 1.17017 |
| 20 | 45 | 0.3 | 0 | 1.16572 |
| 21 | 50 | 0.3 | 0 | 1.16138 |
| 22 | 55 | 0.3 | 0 | 1.15668 |
| 23 | 60 | 0.3 | 0 | 1.15233 |
| 24 | 70 | 0.3 | 0 | 1.14414 |
| 25 | 20 | 0 | 0.05 | 1.09098 |
| 26 | 25 | 0 | 0.05 | 1.08775 |
| 27 | 30 | 0 | 0.05 | 1.08443 |
| 28 | 35 | 0 | 0.05 | 1.08108 |
| 29 | 40 | 0 | 0.05 | 1.07768 |
| 30 | 60 | 0 | 0.05 | 1.06362 |
| 31 | 65 | 0 | 0.05 | 1.05999 |
| 32 | 70 | 0 | 0.05 | 1.05601 |
| 33 | 25 | 0 | 0.3 | 1.2186 |
| 34 | 35 | 0 | 0.3 | 1.20776 |
| 35 | 45 | 0 | 0.3 | 1.19759 |
| 36 | 50 | 0 | 0.3 | 1.19268 |
| 37 | 55 | 0 | 0.3 | 1.18746 |
| 38 | 65 | 0 | 0.3 | 1.178 |
| test dataset | ||||
| 1 | 30 | 0 | 0 | 1.05696 |
| 2 | 55 | 0 | 0 | 1.04158 |
| 3 | 25 | 0.05 | 0 | 1.08438 |
| 4 | 30 | 0.05 | 0 | 1.08112 |
| 5 | 35 | 0.05 | 0 | 1.07781 |
| 6 | 40 | 0.05 | 0 | 1.07446 |
| 7 | 60 | 0.05 | 0 | 1.06053 |
| 8 | 35 | 0.3 | 0 | 1.17459 |
| 9 | 65 | 0.3 | 0 | 1.14812 |
| 10 | 45 | 0 | 0.05 | 1.07424 |
| 11 | 50 | 0 | 0.05 | 1.07075 |
| 12 | 55 | 0 | 0.05 | 1.06721 |
| 13 | 20 | 0 | 0.3 | 1.22417 |
| 14 | 30 | 0 | 0.3 | 1.2131 |
| 15 | 40 | 0 | 0.3 | 1.20265 |
| 16 | 60 | 0 | 0.3 | 1.18265 |
| 17 | 70 | 0 | 0.3 | 1.17261 |
Appendix B. Viscosity Dataset
| # | (°C) | (%) | (%) | |
|---|---|---|---|---|
| train dataset | ||||
| 1 | 20 | 0 | 0 | 3.707 |
| 2 | 25 | 0 | 0 | 3.18 |
| 3 | 35 | 0 | 0 | 2.361 |
| 4 | 45 | 0 | 0 | 1.832 |
| 5 | 50 | 0 | 0 | 1.629 |
| 6 | 55 | 0 | 0 | 1.465 |
| 7 | 70 | 0 | 0 | 1.194 |
| 8 | 20 | 0.05 | 0 | 4.66 |
| 9 | 30 | 0.05 | 0 | 3.38 |
| 10 | 35 | 0.05 | 0 | 2.874 |
| 11 | 40 | 0.05 | 0 | 2.489 |
| 12 | 50 | 0.05 | 0 | 1.897 |
| 13 | 55 | 0.05 | 0 | 1.709 |
| 14 | 60 | 0.05 | 0 | 1.47 |
| 15 | 20 | 0,3 | 0 | 6.67 |
| 16 | 25 | 0,3 | 0 | 5.594 |
| 17 | 30 | 0,3 | 0 | 4.731 |
| 18 | 35 | 0,3 | 0 | 4.118 |
| 19 | 40 | 0,3 | 0 | 3.565 |
| 20 | 55 | 0,3 | 0 | 2.426 |
| 21 | 60 | 0,3 | 0 | 2.16 |
| 22 | 70 | 0,3 | 0 | 1.728 |
| 23 | 20 | 0 | 0.05 | 4.885 |
| 24 | 25 | 0 | 0.05 | 4.236 |
| 25 | 35 | 0 | 0.05 | 3.121 |
| 26 | 40 | 0 | 0.05 | 2.655 |
| 27 | 45 | 0 | 0.05 | 2.402 |
| 28 | 50 | 0 | 0.05 | 2.109 |
| 29 | 60 | 0 | 0.05 | 1.662 |
| 30 | 70 | 0 | 0.05 | 1.289 |
| 31 | 20 | 0 | 0.3 | 7.132 |
| 32 | 25 | 0 | 0.3 | 5.865 |
| 33 | 30 | 0 | 0.3 | 4.944 |
| 34 | 35 | 0 | 0.3 | 4.354 |
| 35 | 45 | 0 | 0.3 | 3.561 |
| 36 | 55 | 0 | 0.3 | 2.838 |
| 37 | 60 | 0 | 0.3 | 2.538 |
| 38 | 70 | 0 | 0.3 | 1.9097 |
| test dataset | ||||
| 1 | 30 | 0 | 0 | 2.716 |
| 2 | 40 | 0 | 0 | 2.073 |
| 3 | 60 | 0 | 0 | 1.329 |
| 4 | 65 | 0 | 0 | 1.211 |
| 5 | 25 | 0.05 | 0 | 4.12 |
| 6 | 45 | 0.05 | 0 | 2.217 |
| 7 | 65 | 0.05 | 0 | 1.315 |
| 8 | 70 | 0.05 | 0 | 1.105 |
| 9 | 45 | 0.3 | 0 | 3.111 |
| 10 | 50 | 0.3 | 0 | 2.735 |
| 11 | 65 | 0.3 | 0 | 1.936 |
| 12 | 30 | 0 | 0.05 | 3.587 |
| 13 | 55 | 0 | 0.05 | 1.953 |
| 14 | 65 | 0 | 0.05 | 1.443 |
| 15 | 40 | 0 | 0.3 | 3.99 |
| 16 | 50 | 0 | 0.3 | 3.189 |
| 17 | 65 | 0 | 0.3 | 2.287 |
Appendix C. Raw Rules Set rraw
Appendix D. Set of normalized rules rnorm
Appendix E. Set of normalized rules rnorm after removing similar rules
Appendix F. A set of simplified rules rsimp
Appendix G. The set of fuzzy rules rfuzz
Appendix H. Result of grouped rules
References
- Romanov, Anton A., Aleksey A. Filippov, and Nadezhda G. Yarushkina. "Adaptive Fuzzy Predictive Approach in Control." Mathematics 11.4 (2023): 875. [CrossRef]
- Romanov, Anton, and Aleksey Filippov. "Context modeling in predictive analytics." 2021 International Conference on Information Technology and Nanotechnology (ITNT). IEEE, 2021.
- Xu, J.; Wang, Q.; Lin, Q. Parallel robot with fuzzy neural network sliding mode control. Adv. Mech. Eng. 2018, 10, 1687814018801261. [CrossRef]
- Kerr-Wilson, Jeremy, and Witold Pedrycz. "Generating a hierarchical fuzzy rule-based model." Fuzzy Sets and Systems 381 (2020): 124-139. [CrossRef]
- Krömer, Pavel, and Jan Platoš. "Simultaneous prediction of wind speed and direction by evolutionary fuzzy rule forest." Procedia Computer Science 108 (2017): 295-304. [CrossRef]
- Idris, Nur Farahaina, and Mohd Arfian Ismail. "Breast cancer disease classification using fuzzy-ID3 algorithm with FUZZYDBD method: automatic fuzzy database definition." PeerJ Computer Science 7 (2021): e427. [CrossRef]
- Chen, S., and F. Tsai. "A new method to construct membership functions and generate fuzzy rules from training instances." International journal of information and management sciences 16.2 (2005): 47.
- Wu, Tzu-Ping, and Shyi-Ming Chen. "A new method for constructing membership functions and fuzzy rules from training examples." IEEE Transactions on Systems, Man, and Cybernetics, Part B (Cybernetics) 29.1 (1999): 25-40. [CrossRef]
- Jiao, Lianmeng, et al. "Interpretable fuzzy clustering using unsupervised fuzzy decision trees." Information Sciences 611 (2022): 540-563. [CrossRef]
- Varshney, Ayush K., and Vicenç Torra. "Literature review of the recent trends and applications in various fuzzy rule-based systems." International Journal of Fuzzy Systems 25.6 (2023): 2163-2186. [CrossRef]
- Fernandez, A., Herrera, F., Cordon, O., del Jesus, M.J., Marcelloni, F.: Evolutionary fuzzy systems for explainable artificial intelligence: why, when, what for, and where to? IEEE Comput. Intell. Mag. 14(1), 69–81 (2019). [CrossRef]
- Karaboga, D., Kaya, E.: Adaptive network based fuzzy inference system (ANFIS) training approaches: a comprehensive survey. Artif. Intell. Rev. 52(4), 2263–2293 (2019). [CrossRef]
- Al-Gunaid, Mohammed, et al. "Decision trees based fuzzy rules." Information Technologies in Science, Management, Social Sphere and Medicine. Atlantis Press, 2016.
- Exarchos, Themis P., et al. "A methodology for the automated creation of fuzzy expert systems for ischaemic and arrhythmic beat classification based on a set of rules obtained by a decision tree." Artificial Intelligence in medicine 40.3 (2007): 187-200. [CrossRef]
- Nagaraj, Palanigurupackiam, and Perumalsamy Deepalakshmi. "An intelligent fuzzy inference rule-based expert recommendation system for predictive diabetes diagnosis." International Journal of Imaging Systems and Technology 32.4 (2022): 1373-1396. [CrossRef]
- Shaik, Ruksana Begam, and Ezhil Vignesh Kannappan. "Application of adaptive neuro-fuzzy inference rule-based controller in hybrid electric vehicles." Journal of Electrical Engineering & Technology 15 (2020): 1937-1945. [CrossRef]
- Hameed, A.Z., Ramasamy, B., Shahzad, M.A., Bakhsh, A.A.S.: Efficient hybrid algorithm based on genetic with weighted fuzzy rule for developing a decision support system in prediction of heart diseases. J. Supercomput. 77(9), 10117–10137 (2021). [CrossRef]
- Razak, T.R., Fauzi, S.S.M., Gining, R.A.J., Ismail, M.H., Maskat, R.: Hierarchical fuzzy systems: interpretability and complexity. Indones. J. Electr. Eng. Inform. 9(2), 478–489 (2021).
- Zouari, M., Baklouti, N., Sanchez-Medina, J., Kammoun, H.M., Ayed, M.B., Alimi, A.M.: PSO-based adaptive hierarchical interval type-2 fuzzy knowledge representation system (PSO-AHIT2FKRS) for travel route guidance. IEEE Trans. Intell. Transport. Syst. 23, 804–818 (2022). [CrossRef]
- Roy, D.K., Saha, K.K., Kamruzzaman, M., Biswas, S.K., Hossain, M.A.: Hierarchical fuzzy systems integrated with particle swarm optimization for daily reference evapotranspiration prediction: a novel approach. Water Resour. Manag. 35(15), 5383–5407 (2021). [CrossRef]
- Wei, X.J., Zhang, D.Q., Huang, S.J.: A variable selection method for a hierarchical interval type-2 TSK fuzzy inference system. Fuzzy Sets Syst. 438, 46–61 (2022). [CrossRef]
- Lin, C.-M., Le, T.-L., Huynh, T.-T.: Self-evolving function-link interval type-2 fuzzy neural network for nonlinear system identification and control. Neurocomputing 275, 2239–2250 (2018). [CrossRef]
- Su, W.C., Juang, C.F., Hsu, C.M.: Multiobjective evolutionary interpretable type-2 fuzzy systems with structure and parameter learning for hexapod robot control. IEEE Trans. Syst. Man Cybern.: Syst. 52, 3066–3078 (2022). [CrossRef]
- Moral, A., Castiello, C., Magdalena, L., Mencar, C.: Explainable Fuzzy Systems. Springer, Berlin (2021).
- Said, Z., Abdelkareem, M. A., Rezk, H., Nassef, A. M. Dataset on fuzzy logic based-modelling and optimization of thermophysical properties of nanofluid mixture. Data in brief 26 (2019).
- Said, Z., Abdelkareem, M. A., Rezk, H., Nassef, A. M. Fuzzy modeling and optimization for experimental thermophysical properties of water and ethylene glycol mixture for Al2O3 and TiO2 based nanofluids. Powder Technology 353 (2019): 345-358. [CrossRef]
- James, G., Witten, D., Hastie, T., Tibshirani, R. An introduction to statistical learning. Vol. 112. New York: springer, 2013.
- Zadeh, L.A. Fuzzy logic. Computer 1988, 21, 83–93.
- Zadeh, L.A. The concept of a linguistic variable and its application to approximate reasoning—I. Inf. Sci. 1975, 8, 199–249. [CrossRef]
- Płoński P. Extract Rules from Decision Tree in 3 Ways with Scikit-Learn and Python. ULR: https://mljar.com/blog/extract-rules-decision-tree/ (accessed: 01.11.2024).
- Silhouette Coefficient. URL: https://scikit-learn.org/dev/modules/clustering.html#silhouette-coefficient (accessed: 01.11.2024).
- Aggarwal A. A Beginner’s Guide to Fuzzy Logic Controllers for AC Temperature Control. URL: https://threws.com/a-beginners-guide-to-fuzzy-logic-controllers-for-ac-temperature-control/ (accessed: 01.11.2024).










| # | (°C) | (%) | (%) | Real | Inferred | RMSE |
|---|---|---|---|---|---|---|
| 1 | 30 | 0 | 0 | 1.056 | 1.073 | 0.017 |
| 2 | 55 | 0 | 0 | 1.041 | 1.047 | 0.006 |
| 3 | 25 | 0.05 | 0 | 1.084 | 1.076 | 0.008 |
| 4 | 30 | 0.05 | 0 | 1.081 | 1.073 | 0.007 |
| 5 | 35 | 0.05 | 0 | 1.077 | 1.069 | 0.009 |
| 6 | 40 | 0.05 | 0 | 1.074 | 1.067 | 0.007 |
| 7 | 60 | 0.05 | 0 | 1.061 | 1.067 | 0.007 |
| 8 | 35 | 0.3 | 0 | 1.174 | 1.172 | 0.002 |
| 9 | 65 | 0.3 | 0 | 1.148 | 1.136 | 0.012 |
| 10 | 45 | 0 | 0.05 | 1.074 | 1.067 | 0.007 |
| 11 | 50 | 0 | 0.05 | 1.071 | 1.067 | 0.004 |
| 12 | 55 | 0 | 0.05 | 1.067 | 1.068 | 0.001 |
| 13 | 20 | 0 | 0.3 | 1.224 | 1.204 | 0.020 |
| 14 | 30 | 0 | 0.3 | 1.213 | 1.202 | 0.011 |
| 15 | 40 | 0 | 0.3 | 1.202 | 1.203 | 0.001 |
| 16 | 60 | 0 | 0.3 | 1.182 | 1.176 | 0.007 |
| 17 | 70 | 0 | 0.3 | 1.172 | 1.172 | 0.000 |
| Total | 0.009 | |||||
| 1 | 30 | 0 | 0 | 2.716 | 3.089 | 0.374 |
| 2 | 40 | 0 | 0 | 2.073 | 2.359 | 0.287 |
| 3 | 60 | 0 | 0 | 1.329 | 1.465 | 0.137 |
| 4 | 65 | 0 | 0 | 1.211 | 1.414 | 0.204 |
| 5 | 25 | 0.05 | 0 | 4.120 | 3.188 | 0.931 |
| 6 | 45 | 0.05 | 0 | 2.217 | 2.045 | 0.171 |
| 7 | 65 | 0.05 | 0 | 1.315 | 1.414 | 0.100 |
| 8 | 70 | 0.05 | 0 | 1.105 | 1.408 | 0.304 |
| 9 | 45 | 0.3 | 0 | 3.111 | 3.499 | 0.388 |
| 10 | 50 | 0.3 | 0 | 2.735 | 3.475 | 0.740 |
| 11 | 65 | 0.3 | 0 | 1.936 | 1.812 | 0.124 |
| 12 | 30 | 0 | 0.05 | 3.587 | 3.111 | 0.475 |
| 13 | 55 | 0 | 0.05 | 1.953 | 2.128 | 0.176 |
| 14 | 65 | 0 | 0.05 | 1.443 | 1.414 | 0.028 |
| 15 | 40 | 0 | 0.3 | 3.990 | 3.475 | 0.515 |
| 16 | 50 | 0 | 0.3 | 3.189 | 3.475 | 0.286 |
| 17 | 65 | 0 | 0.3 | 2.287 | 1.812 | 0.475 |
| Total | 0.407 | |||||
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content. |
© 2024 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (http://creativecommons.org/licenses/by/4.0/).