Next Article in Journal
A Hybrid Algorithm for Optimal Wireless Sensor Network Deployment with the Minimum Number of Sensor Nodes
Next Article in Special Issue
Optimization of Intelligent Controllers Using a Type-1 and Interval Type-2 Fuzzy Harmony Search Algorithm
Previous Article in Journal
An Efficient Algorithm for the Separable Nonlinear Least Squares Problem
Previous Article in Special Issue
New Methodology to Approximate Type-Reduction Based on a Continuous Root-Finding Karnik Mendel Algorithm
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Design of an Optimized Fuzzy Classifier for the Diagnosis of Blood Pressure with a New Computational Method for Expert Rule Optimization

1
Tijuana Institute of Technology, Calzada Tecnologico s/n, Fracc. Tomas Aquino, Baja California, Tijuana 22379, Mexico
2
Cardiodiagnostico, Excel Medical Center, Tijuana 22379, Mexico
*
Author to whom correspondence should be addressed.
Algorithms 2017, 10(3), 79; https://doi.org/10.3390/a10030079
Submission received: 25 May 2017 / Revised: 4 July 2017 / Accepted: 7 July 2017 / Published: 14 July 2017
(This article belongs to the Special Issue Extensions to Type-1 Fuzzy Logic: Theory, Algorithms and Applications)

Abstract

:
A neuro fuzzy hybrid model (NFHM) is proposed as a new artificial intelligence method to classify blood pressure (BP). The NFHM uses techniques such as neural networks, fuzzy logic and evolutionary computation, and in the last case genetic algorithms (GAs) are used. The main goal is to model the behavior of blood pressure based on monitoring data of 24 h per patient and based on this to obtain the trend, which is classified using a fuzzy system based on rules provided by an expert, and these rules are optimized by a genetic algorithm to obtain the best possible number of rules for the classifier with the lowest classification error. Simulation results are presented to show the advantage of the proposed model.

1. Introduction

Currently the use of intelligent computing techniques in medicine is becoming more common, and some of them are: neural networks, fuzzy logic and evolutionary computation [1,2,3,4,5,6,7]. The main idea in this paper is to obtain a fuzzy neural hybrid model that provides a fast and accurate diagnosis and therefore it is necessary to have a 24 h patient monitoring database. Another aim is to have a modular neural network architecture, which will help us to have a precise modeling of the blood pressure trend of a patient, and also a fuzzy classifier is needed, which will classify in which level of blood pressure the patient is analyzed [8,9,10,11,12,13,14]. In this paper, we focus on the design of the fuzzy classifier to classify the blood pressure level. The output information by the modular neural network, in this case are systolic pressure and diastolic pressure that are used as inputs to the fuzzy classifier. It is expected that this proposed classifier can provide a faster, less expensive and more accurate results [15]. It is important to know that at present there are few works done using intelligent computer techniques for the diagnosis of blood pressure and in most of these works they carry out the classification of a general way with low, medium and high levels and we use hypotension, Optimal, normal, high normal, hypertension grade 1, 2, 3 and isolated systolic hypertension grade 1, 2, 3 as levels based on Table 1 from the guidelines of European Society of Cardiology. Some research works have been done to diagnose blood pressure using intelligent techniques, for example the work of Hypertension Diagnosis using a Fuzzy Expert System [16], in this work a fuzzy expert system is created for evaluate the risk of hypertension in a patient given risk factors and blood pressure, in this case the expert system does not give the classification values of blood pressure only the risk. In another work, a Genetic Neuro Fuzzy System for Hypertension Diagnosis [17] uses a genetic algorithm to initialize the Neuro Fuzzy System using a backpropagation network, and the systems diagnosis only the risk of hypertension but not the classification levels. A third work is a neural network expert system for diagnosing and treating hypertension [3], in this work a Model of Neural Network was created for diagnosis and treated of hypertension constructing models of “Hypernet” using as expert system, and differs as only is an expert system for diagnosis, not for classification. All these works differ in that they only use the intelligent techniques to evaluate the risk diagnosis of hypertension using risk factors and a one measurement of blood pressure. In this work we construct a complete model for classification of hypertension based on the trend of blood pressure of the patient given by the neural network using the reads of 24 h of blood pressure monitoring.
The implementation of an appropriate method for modeling this problem has always been a major concern for the physician that aims at achieving the best possible diagnosis for the patient.
Hypertension diagnosis is a very important problem in medicine. Hypertension is a dangerous disease that seriously threatens the health of persons. This disease often leads to fatal results, such as: heart attack, cerebrovascular accident and renal insufficiency.
The main dangerous aspect of hypertension is that the persons may not know they have this disease, about one-third of the people with high blood pressure do not know it. Regular checkups, is the only way to know if the blood pressure is high.
Nowadays in medicine is very common to use modeling approaches applied to diagnose some future illness and to treat them in the best way. The reason of the implementation of an appropriate method of modeling has always been an important topic in medicine, because it helps to treat diseases in time and save lives. The future data are modeled in medicine to help make decisions in the medium and long term due to the accuracy or inaccuracy of the modeled data and helps to have a better control in the health of the patient.
For a physician, it is important to know the future behavior of blood pressure for a patient, since this allows having a better notion to make better decisions that improve the patient’s health and avoid future problems, which can lead to a premature death, due to not having an adequate treatment to control blood pressure.
We have previously considered a Neuro Fuzzy Hybrid Model for the diagnosis of blood pressure [15,18,19], in which experiments have been carried out with neural networks in order to obtain the best architecture of the network, in this case we were looking for the adequate number of Layers and the number of neurons per layer to have a good performance in the learning of the network and thus providing an adequate modeling of the analyzed data for each patient. Fuzzy logic has been used to make different classifiers [20,21,22,23], of which we have been modifying: fuzzy rules and membership functions, with the aim of improving the classification of blood pressure levels. Finally, a graphical interface was also developed for data management by patient and thus to show the behavior of the monitoring of 24 h and the trend in visual graphics.
The main contribution of this paper is the proposed optimized classifier, which is a part of the general model, which has several blocks like a database, modular neural network (MNN) and the fuzzy logic system (classifier). This classifier is applied to the diagnosis of blood pressure based on the European guidelines, which give us the different levels, in which we can classify blood pressure, the levels are: Hypotension, optimal, normal, normal high, hypertension grade 1, grade 2 hypertension, grade 3 hypertension, and finally we have isolated systolic hypertension which is also divided into grade 1 isolated systolic, grade 2 isolated systolic and grade 3 isolated systolic.
This general model to which this classifier corresponds, consists of having a database of real patients, in this study we experimented with 30 patients, who were monitored during 24 h and during this period of time we obtained 45 samples per patient, these samples are the inputs for the MNN, which consists of two modules called systolic and diastolic. The MNN output is the trend per patient, this output will be the information that will be used as input in the classifier, which is optimized with bio-inspired techniques, and in this case we use genetic algorithms [24,25]. The method of optimization consists of determining the number of necessary rules and changing the parameters of the membership functions and thus obtaining the best fuzzy classifier which will give us a correct diagnosis. After making different classifiers, two classifiers were finally obtained, which were compared, the first is the classifier based on an expert and the second is the optimized classifier, the two consist of two inputs that are the systolic and diastolic, have seven membership functions in each input and one output with ten membership functions, the classifiers are Mamdani-type, and the difference is that the expert-based classifier consists of 24 rules and the optimized classifier only has 21 rules. The optimized classifier is the one that gives us the best results so far with the tests carried out, which is why the main contribution of this work is the optimized classifier with genetic algorithms.
This paper is organized as follows: In Section 2 the basic concepts are shown, in Section 3 the problem statement and the proposed method are presented, Section 4 shows the knowledge representation of the fuzzy system, Section 5 shows the simulation results of the proposed method, Section 6 presents the comparison of results and Section 7 offers the conclusions.

2. Basic Concepts

The following are some basic concepts of blood pressure, which are very important; these concepts help to understand a little more about this work.

2.1. Blood Pressure

Blood pressure is the force that the blood exerts against the walls of the arteries. When the heart beats, it pumps blood to the arteries, this is when its pressure is higher and it is called systolic pressure. When your heart is at rest between one beat and another, the blood pressure decreases and this is called diastolic pressure [6].
Both systolic and diastolic blood pressure values are used in defining the blood pressure. In general, the systolic pressure is mentioned first and then the diastolic. A reading with values of:
  • 119/79 or less is considered normal blood pressure
  • 140/90 or higher is considered high blood pressure
Between 120 and 139 for the highest number, or between 80 and 89 for the lowest number is prehypertension. Prehypertension means that someone can develop high blood pressure unless some action is taken.
High blood pressure does not usually have symptoms, but can cause serious problems such as strokes, heart failure, infarction and kidney failure.
Someone can control the blood pressure with a healthy lifestyle like exercise and DASH diet and, if necessary, medications.

2.2. Type of Blood Pressure Diseases

Hypertension is the most common disease and increases both the morbidity and mortality from cardiovascular diseases. Different types of hypertension can be defined when the disease is sub-categorized. These types are summarized in Table 1 [26].
In Table 1, the blood pressure (BP) category is defined by the highest BP level, whether systolic or diastolic. Isolated systolic hypertension should be graded as 1, 2 or 3 according to the systolic BP value in the indicated ranges.

2.3. Hypotension

Low blood pressure, also known as hypotension, would be thought of as unimportant. However, for many people, hypotension can cause symptoms of dizziness and fainting. In more severe cases, low blood pressure can be life threatening.
Blood pressure varies from person to person, a blood pressure reading of 90 mm of mercury (mmHg) or less of systolic blood pressure (the highest number on a blood pressure reading) or 60 mmHg or lower diastolic blood pressure (The lower number) is usually considered as low blood pressure.
Causes of hypotension can range from dehydration to serious medical or surgical disorders. Low blood pressure can be treated, but it is important to know what is causing the disease so that it can be treated properly [6].

2.4. Hypertension

High blood pressure is a chronic condition that involves increasing blood pressure. One of the characteristics of this disease is that there is no clear presentation of the symptoms and that these do not manifest for a long time.
At present, cardiovascular diseases are the leading cause of mortality in worldwide [26]. However, hypertension is a treatable condition. Failure to follow the doctor’s recommendations can lead to serious complications, such as a myocardial infarction, bleeding or cerebral thrombosis, which can be avoided if properly controlled.
The first consequence of hypertension is suffered by the arteries that support high blood pressure continuously and this hardens, become thicker and can spoil the passage of blood through them. This is known as arteriosclerosis.

2.5. Risk Factors

The risk factors for hypertension are the following [27]: Sex, Genetic factors, Stress level Consumption of alcohol, Smoking, Consumption of salt, Obesity, Lack of exercise, Age.

2.6. Home Blood Pressure Monitoring

Monitoring the blood pressure using a home blood pressure monitor can be a really useful way of seeing what your blood pressure is like in your daily life. To get accurate readings, it is important to use the right monitor and the right technique.

2.7. Ambulatory Blood Pressure Monitoring (ABPM)

ABPM is when the blood pressure is being measured as the person moves around, living the normal daily life. It is normally carried over 24 h. It uses a small digital blood pressure machine that is attached to a belt around your body and which is connected to a cuff around your upper arm. It small enough that you can go about your normal daily life and even sleep with it on [28].

2.8. Genetic Algorithms

A genetic algorithm is a search method that mimics Darwin’s theory of biological evolution for problem solving. To do this, it is part of an initial population from which the most qualified individuals are selected for later reproduce them and mutate them to finally get the next generation of individuals that will be more adapted than the previous generation [17].

2.8.1. Parameters of the Genetic Algorithms

Size of Population

This parameter tells us the number of chromosomes we have in our population for a given generation. In case this measure is insufficient, the genetic algorithm has little possibility of making reproductions with which a search for solutions will be carried out that is scarce and not very optimum. On the other hand, if the population is excessive, the genetic algorithm will be excessively slow. In fact, studies reveal that there is a limit from which it is inefficient to raise the size of the population since it is not obtained a greater speed in the resolution of the problem.

Probability of Crossing

Indicates the frequency with which crossover occurs between the parent chromosomes i.e. there is a probability of reproduction between them. In case there is no likelihood of reproduction, the children will be exact copies of the parents. In case if there is one, the children will have parts of the parents’ chromosomes. If the crossing probability is 100% the child is created entirely by crossing, not by parts.

Probability of Mutation

It tells us how often the genes of a chromosome are mutated. If there is no mutation, the offspring are the same as they were after reproduction. If there are mutations, part of the descending chromosome is modified and if the probability of mutation is 100%, the whole chromosome is changed. In this case, a few bits of the chromosome are not simply changed but all are changed, which means that there is an inversion in the chromosome and not a mutation so that the population degenerates very quickly.

3. Problem Statement and Proposed Method

Therefore, in this study, 30 patients were monitored for 24 h and 45 samples were obtained throughout the day per patient, each patient has different types of activities in their daily life and this helps us to have different cases for each person, and this gives us a better reliability when we use the classifier for the diagnosis that depending on the level of blood pressure that each patient has. In the fuzzy system when doing a diagnosis based on the information obtained that is the trend of the information.
The samples of the 30 patients were provided to the neural network to find the degree of accuracy in the classification for each of the blood pressure levels [29,30,31].
Modular neural networks are used to provide the input information, which are the systolic and diastolic pressures and are obtained by each patient, and each one enters to a module of the modular neural network, then learns and models the information to finally provide a trend, which will be sent to the fuzzy system to classify it in the best way possible and give a correct diagnosis and help the doctor to the decision making for each patient [16,32].

3.1. General and Specific Neuro Fuzzy Hybrid Model

Figure 1 shows the General Neuro Fuzzy Hybrid Model in which we have as input the data of the blood pressure of a person, these values enter the neural network and two outputs are obtained, which are introduced as inputs to the fuzzy system that is optimized with genetic algorithm to achieve better results as final diagnosis. Figure 2 shows the specific neuro-fuzzy hybrid, which shows how the model works in a specific way.

3.2. Creation of the Modular Neural Network

We conduct some experiments for different neural networks architectures, some examples of these architectures are shown in Table 2 and we select the one that give us better result accordingly of the errors given by the network. The modular neural network that was select has the following parameters: 2 modules, number of layers of 1 to 3, neurons number of 1 to 20, to train the modular neural network: 1000 epochs, learning rate of = 0.01, the error goal is of 0.0000001, 3 delays are considered with the 70% of the data and training method of Levenberg-Marquardt (trainlm) algorithm.
First, with the help of a cardiologist, 24 h monitoring was performed on 30 patients, in this monitoring 45 blood pressure (BP) samples were obtained, BP has two strains, which are: systolic and diastolic. This means that we have 45 systolic samples and 45 diastolic samples in a period of 24 h, approximately one sample every 20 min, this was done with an ambulatory monitoring device, which at the end of the 24 h saves an excel file with The information collected in the 24 h.
Afterwards, the excel file obtained is analyzed, and the information is divided into 70% for training and 30% for testing. These data are entered into the modular neural network, which has the systolic and diastolic modules, which are going to model the data, to later give a trend, which is tested with 30% of the data. The systolic tendency and the diastolic tendency obtained are introduced as inputs to the fuzzy classifier and these values are analyzed by the fuzzy system based on fuzzy rules and parameters of membership functions, which were constructed based on the table of definition and classification of Blood pressure levels of the European Union. Table 3 shows the data obtained by the 24 h monitoring device and Table 2 shows the architectures of the neural networks used based on previous tests.

3.3. Design of the Fuzzy Systems for Classification

The following sections specify each of the classifiers that have been performed, the structure of the fuzzy system and the parameters used for each of them, as well as the number of fuzzy rules and fuzzy system type.

3.3.1. Design of the First Fuzzy Classifier for the Classification of Blood Pressure Levels

Throughout the tests performed with the Neuro Fuzzy Hybrid Model, we have been improving the fuzzy classifier, which we first had as a fuzzy system with two inputs, which are the systolic and diastolic pressures with eight membership functions each and one output with eight membership functions, 14 fuzzy rules, of Mamdani type.
In the first input called systolic, the range is from 20 to 300, in the second input called diastolic, the range is from 20 to 130 and at the output we have blood pressure levels such as Hypotension, Optimal, Normal, High Normal, Grade 1 hypertension, Grade 2 hypertension, Grade 3 hypertension and isolated systolic hypertension. Figure 3 shows the structure of first fuzzy classifier, in Figure 4 and Figure 5 the inputs for the classifier 1 are shown and finally Figure 6 shows the output of the classifier 1:

3.3.2. Design of the Second Fuzzy Classifier for the Classification of Blood Pressure Levels

The second fuzzy system with two inputs, which are systolic and diastolic pressures with seven membership functions each and one output with ten membership functions, 24 fuzzy rules based on an expert, and a Mamdani type fuzzy system.
In the first input called systolic, the range is from 20 to 300, in the second input called diastolic, the range is from 20 to 130 and at the output we have the blood pressure levels such as Hypotension, Optimal, Normal, High Normal, Grade 1 hypertension, Grade 2 hypertension, Grade 3 hypertension and isolated systolic hypertension Grade 1, isolated systolic hypertension Grade 2 and isolated systolic hypertension Grade 3. Figure 7 shows the structure of classifier 2, Figure 8 and Figure 9 show the inputs and Figure 10 shows the output of the classifier 2:

3.3.3. Design of the Third Fuzzy Classifier for the Classification of Blood Pressure Levels

In the third fuzzy system, it was decided to design it with the total number of possible rules based on the number of membership functions of the inputs and using the product of this, and it was obtained that is a total of 49 fuzzy rules. The purpose of this fuzzy system is to observe how the classification is not good using the total of possible rules and thus analyze the results obtained to later optimize this fuzzy system with genetic algorithms and find the optimal number of rules to improve the results and compare the classifiers.
The number of rules in a complete set of rules is equal to:
TNPR = i = 1 n m i
where TNPR is the Total number of possible rules; mi, is the number of membership functions for input i and n is the number of inputs.
The third fuzzy classifier has two inputs, which are systolic and diastolic pressures with seven membership functions each and the output with ten membership functions, 49 fuzzy rules which are all possible, and fuzzy system of Mamdani type.
In the first input called systolic, the range is from 20 to 300, in the second input called diastolic, the range is from 20 to 130 and at the output we have the blood pressure levels, such as Hypotension, Optimal, Normal, High Normal, Grade 1 hypertension, Grade 2 hypertension, Grade 3 hypertension and isolated systolic hypertension Grade 1, isolated systolic hypertension Grade 2 and isolated systolic hypertension Grade 3, we specify each of the ranges in the fuzzy rules. Figure 11 illustrates the structure of classifier 3, Figure 12 and Figure 13 show the inputs and Figure 14 shows the output of the classifier 3:

3.4. The Optimization of the Fuzzy System Using a Genetic Algorithm (GA)

The classifier 4 was optimized with genetic algorithms, where we have a chromosome to optimize the fuzzy system, as shown in Figure 15 and this chromosome has 122 genes, which help us to optimize the structure of the fuzzy system in this case fuzzy rules and membership functions, Genes 1–72 (real numbers) allow to manage the parameters of the membership functions for inputs and output, genes 73–121 are the rules. The gene 122 allows reducing the number of rules, activating or deactivating them. The following Figure 15 shows the structure of the chromosome [33,34]:
The parameters used in the algorithm are generation: 100, population: 100, selection method: roulette wheel, mutation rate: 0.06 crossing rate: 0.5. These are the parameters used, since in previous tests, a good error was obtained using these parameters.
The fitness function is based on the classification error as shows Equation (5), the idea is to minimize the classification error and this allows knowing that the base classifier is classifying in a correct way, the way to know if the classifier is classifying in a correct way is following Table 1, which defines the blood pressure levels. Table 4 shows the different parameters used in the genetic algorithms.

3.5. Design of the Fuzzy Classifier Fourth Optimized with a GA

The fourth fuzzy classifier has two inputs, which are systolic and diastolic pressures with seven membership functions each and the output with ten membership functions, 21 optimized fuzzy rules, and Mamdani type of inference.
In the first input called systolic, the range is from 20 to 300, in the second input called diastolic, the range is from 20 to 130 and at the output we have blood pressure levels such as Hypotension, Optimal, Normal, High Normal, Grade 1 hypertension, Grade 2 hypertension, Grade 3 hypertension and isolated systolic hypertension Grade 1, isolated systolic hypertension Grade 2 and isolated systolic hypertension Grade 3. Figure 16 illustrates the structure of the fourth fuzzy classifier, in the Figure 17 and Figure 18 shows the inputs and Figure 19 shows the output of the classifier 4:

4. Knowledge Representation of the Fuzzy Systems

In this section, we show how to represent the fuzzy system. The crisp output is calculated as follows: If the number of fired rules is r then the final blood pressure (BP) level is:
BP = i = 1 r B P i L i i = 1 r L i
where L i is the firing level and B P i is the crisp output of the if-th rule.
The triangular curve is a function of a vector, x, and depends on three scalar parameters a, b, and c, as given by
f ( x ; a , b , c ) = { 0 , x a x a b a , a x b c x c b , b x c 0 , c x

5. Simulation Results of the Proposed Method

The following tables show the results obtained for 30 patients, and based on these results we obtain the classification accuracy rate and classification error rate, for which we use the following equations:
The Classification Accuracy Rate (CA) is calculated as follows:
CA = N c N t
where N c is the Number of Training Instances Correctly Classified and N t is the Number of Training instances.
The Classification Error Rate (CE) is calculated as follows:
CE = N e N t
where N e is the Number of Training Instances Incorrectly Classified and N t is the Number of Training instances.
The rows shaded with yellow are the incorrect classifications of each classifier, in the following Table 5 shows the result of the first fuzzy logic system classifier:
We performed experiments using 24 h monitoring of 30 patients, from which the trend was obtained which was the one that entered to the fuzzy classifier, which produces the following results based on the accuracy rate in the classification of 30 patients, an accuracy rate of 80% was obtained, which classified 24 of 30 patients correctly based on the result given by the ESH table and give us a classification error rate of 20%, which is equivalent to 6 of 30 incorrectly classified. Table 5 shows a summary of the results:
In the following, Table 6 shows the result of the second fuzzy logic system classifier:
We performed experiments using 24 h monitoring of 30 patients, from which the trend was obtained which was the one that entered to the fuzzy classifier, which produces the following results based on the accuracy rate in the classification of 30 patients, an accuracy rate of 90% was obtained, which classified 27 of 30 patients correctly based on the result given by the ESH table and a classification error rate of 10%, which is equivalent to 3 of 30 incorrectly classified as Table 6 shows.
In the following, Table 7 shows the result of the third fuzzy logic system classifier:
We performed experiments using 24 h monitoring of 30 patients, from which the trend was obtained which was the one that entered to the fuzzy classifier, which gave us the following result based on the accuracy rate in the classification of 30 patients, an accuracy rate of 66.7% was obtained, which classified 20 of 30 patients correctly based on the result given by the ESH table and a classification error rate of 33.3%, which is equivalent to 10 of 30 incorrectly classified. In this case, Table 7 shows the accuracy rate was very bad result because the classifier was confused with many unnecessary rules, this is why we need to optimize the fuzzy rules to obtain the appropriate number of rules and obtain better results.
In the following, Table 8 shows the result of the fourth fuzzy logic system classifier:
We performed experiments using 24 h monitoring of 30 patients, from which the trend was obtained which was the one that entered to the fuzzy classifier. The classifier gave us the following result based on the accuracy rate in the classification of 30 patients, an accuracy rate of 100% was obtained, which classified 30 of 30 patients correctly based on the result given by the ESH table and a classification error rate of 0%, which is equivalent to 0 of 30 incorrectly classified. In these experiments Table 8 shows the results were very good since the classifier was successful in the total of the tests.
The following figures show the behavior of the data of a patient, in each figure, the vertical indicates the systolic or diastolic measure of the patient and the horizontal part indicates the hour that the patient was monitored, Figure 20 shows the input data for systolic and in Figure 21 for diastolic, Figure 22 and Figure 23 show the learning of the neural network with the data provided and It shows clearly how you learn the behavior in a correct way, finally we have Figure 24 and Figure 25 where it shows the trend of this data which will give us as a result to send it to the fuzzy system and perform the classification.

6. Comparison of Results

We compare the classifier 2 that is based on an expert with classifier 4 that is optimized with the genetic algorithm, it based on the total of possible rules based on the European hypertension guide, shown in Figure 1.
Of the 30 patients who were monitored, the classification in the classifier 2 with 24 rules given by an expert, the result was: accuracy rate of 90% with a 10% error, this is shown in Table 9 and in the classifier 4 optimized with the new Computational method reduced to 21 rules gives as a result: 100% accuracy rate and 0% error rate, this is shown in Table 10.

7. Conclusions

In this study, we have developed a new model using Neuro-Fuzzy Hybrid techniques that actually implements the human reasoning using a set of decision rules for the study of different diseases such as Hypertension Blood pressure (HBP). This new Neuro-Fuzzy Hybrid Model (NFHM) provides us a faster, safer and accurate tool for an objective diagnostic without inter-observer variability, based in this case on the classification of Hypertension, according to the definitions of the European Guidelines. This method is very efficient therefore takes less time and is more accurate for classify the level of HBP. What can help health systems and health workers, especially in developing countries, who do not have enough specialists for Hypertension like Cardiologists, internists etc. to improve the degree of accuracy in the diagnosis of this disease with the consequent better opportunity at the start of pharmacological management and dietary hygiene measures. We are aware that this is only the beginning of the implementation of NFHM for the diagnosis of various cardiovascular diseases. In this paper, we use Ambulatory Blood Pressure Monitoring (HBPM) for the study of the BP and are aware that there are more parameters that need considered to be a more accurate diagnosis of Hypertension (HTN) such as different types of patterns like Dipper, Variability, load pressure, etc., And finally, we hope that this work, those who have preceded us, and future work will serve as motivation for other researchers to work on artificial intelligent techniques for applying it in medicine.

Acknowledgments

We would like to express our gratitude to the CONACYT and Tijuana Institute of Technology for the facilities and resources granted for the development of this research.

Author Contributions

Patricia Melin proposed the neuro-fuzzy computational model, the methodology and analysis of results. Juan Carlos Guzman implemented the model and obtained the simulation results. German Prado-Arechiga provided the expert knowledge for developing the fuzzy rules and verified the accuracy of the diagnosis results.

Conflicts of Interest

The authors declare no conflicts of interest.

Appendix A

This appendix shows the fuzzy rules of the different classifiers that were designed.

Appendix A.1. Fuzzy Rules for the Classifier 1

  • If (Systolic is Low) and (Diastolic is Low) then (BP_Levels is Hypotension)
  • If (Systolic is Low_Normal) and (Diastolic is Low_Normal) then (BP_Levels is Optimal)
  • If (Systolic is Normal) and (Diastolic is Normal) then (BP_Levels is Normal)
  • If (Systolic is High_Normal) and (Diastolic is High_Normal) then (BP_Levels is High_Normal)
  • If (Systolic is High) and (Diastolic is High) then (BP_Levels is Grade_1)
  • If (Systolic is Very_high) and (Diastolic is Very_High) then (BP_Levels is Grade_2)
  • If (Systolic is too_high) and (Diastolic is Too_High) then (BP_Levels is Grade_3)
  • If (Systolic is ISH) and (Diastolic is ISH) then (BP_Levels is ISH)
  • If (Systolic is Very_high) and (Diastolic is High) then (BP_Levels is Grade_2)
  • If (Systolic is too_high) and (Diastolic is Very_High) then (BP_Levels is Grade_3)
  • If (Systolic is too_high) and (Diastolic is High) then (BP_Levels is Grade_3)
  • If (Systolic is High) and (Diastolic is Very_High) then (BP_Levels is Grade_2)
  • If (Systolic is High) and (Diastolic is Too_High) then (BP_Levels is Grade_3)
  • If (Systolic is Very_high) and (Diastolic is Too_High) then (BP_Levels is Grade_3)

Appendix A.2. Fuzzy Rules for the Classifier 2

  • If (Systolic is Low) and (Diastolic is Low) then (BP_Levels is Hypotension)
  • If (Systolic is Low_Normal) and (Diastolic is Low_Normal) then (BP_Levels is Optimal)
  • If (Systolic is Normal) and (Diastolic is Normal) then (BP_Levels is Normal)
  • If (Systolic is Normal) or (Diastolic is Normal) then (BP_Levels is Normal)
  • If (Systolic is High_Normal) and (Diastolic is High_Normal) then (BP_Levels is High_Normal)
  • If (Systolic is High_Normal) or (Diastolic is High_Normal) then (BP_Levels is High_Normal)
  • If (Systolic is High) and (Diastolic is High) then (BP_Levels is Grade_1)
  • If (Systolic is High) or (Diastolic is High) then (BP_Levels is Grade_1)
  • If (Systolic is Very_high) and (Diastolic is Very_High) then (BP_Levels is Grade_2)
  • If (Systolic is Very_high) or (Diastolic is Very_High) then (BP_Levels is Grade_2)
  • If (Systolic is too_high) and (Diastolic is Too_High) then (BP_Levels is Grade_3)
  • If (Systolic is too_high) or (Diastolic is Too_High) then (BP_Levels is Grade_3)
  • If (Systolic is Very_high) and (Diastolic is High) then (BP_Levels is Grade_2)
  • If (Systolic is too_high) and (Diastolic is Very_High) then (BP_Levels is Grade_3)
  • If (Systolic is too_high) and (Diastolic is High) then (BP_Levels is Grade_3)
  • If (Systolic is High) and (Diastolic is Very_High) then (BP_Levels is Grade_2)
  • If (Systolic is High) and (Diastolic is Too_High) then (BP_Levels is Grade_3)
  • If (Systolic is Very_high) and (Diastolic is Too_High) then (BP_Levels is Grade_3)
  • If (Systolic is High) and (Diastolic is Normal) then (BP_Levels is ISH_GRADE1)
  • If (Systolic is High) and (Diastolic is High_Normal) then (BP_Levels is ISH_GRADE1)
  • If (Systolic is Very_high) and (Diastolic is Normal) then (BP_Levels is ISH_GRADE2)
  • If (Systolic is Very_high) and (Diastolic is High_Normal) then (BP_Levels is ISH_GRADE2)
  • If (Systolic is too_high) and (Diastolic is Normal) then (BP_Levels is ISH_GRADE3)
  • If (Systolic is too_high) and (Diastolic is High_Normal) then (BP_Levels is ISH_GRADE3)

Appendix A.3. Fuzzy Rules for the Classifier 3

  • If (Systolic is Low) and (Diastolic is Low) then (BP_Levels is Hypotension)
  • If (Systolic is Low_Normal) and (Diastolic is Low_Normal) then (BP_Levels is Optimal)
  • If (Systolic is Normal) and (Diastolic is Normal) then (BP_Levels is Normal)
  • If (Systolic is High_Normal) and (Diastolic is High_Normal) then (BP_Levels is High_Normal)
  • If (Systolic is High) and (Diastolic is High) then (BP_Levels is Grade_1)
  • If (Systolic is Very_high) and (Diastolic is Very_High) then (BP_Levels is Grade_2)
  • If (Systolic is too_high) and (Diastolic is Too_High) then (BP_Levels is Grade_3)
  • If (Systolic is Very_high) and (Diastolic is High) then (BP_Levels is Grade_2)
  • If (Systolic is too_high) and (Diastolic is Very_High) then (BP_Levels is Grade_3)
  • If (Systolic is too_high) and (Diastolic is High) then (BP_Levels is Grade_3)
  • If (Systolic is High) and (Diastolic is Very_High) then (BP_Levels is Grade_2)
  • If (Systolic is High) and (Diastolic is Too_High) then (BP_Levels is Grade_3)
  • If (Systolic is Very_high) and (Diastolic is Too_High) then (BP_Levels is Grade_3)
  • If (Systolic is High) and (Diastolic is Normal) then (BP_Levels is ISHGRADE_1)
  • If (Systolic is High) and (Diastolic is High_Normal) then (BP_Levels is ISHGRADE_1)
  • If (Systolic is Very_high) and (Diastolic is Normal) then (BP_Levels is ISHGRADE_2)
  • If (Systolic is Very_high) and (Diastolic is High_Normal) then (BP_Levels is ISHGRADE_2)
  • If (Systolic is too_high) and (Diastolic is Normal) then (BP_Levels is ISHGRADE_3)
  • If (Systolic is too_high) and (Diastolic is High_Normal) then (BP_Levels is ISHGRADE_3)
  • If (Systolic is Low) and (Diastolic is Low_Normal) then (BP_Levels is Optimal)
  • If (Systolic is Low) and (Diastolic is Normal) then (BP_Levels is Normal)
  • If (Systolic is Low) and (Diastolic is High_Normal) then (BP_Levels is High_Normal)
  • If (Systolic is Low) and (Diastolic is High) then (BP_Levels is Grade_1)
  • If (Systolic is Low) and (Diastolic is Very_High) then (BP_Levels is Grade_2)
  • If (Systolic is Low) and (Diastolic is Too_High) then (BP_Levels is Grade_3)
  • If (Systolic is Normal) and (Diastolic is Low) then (BP_Levels is Normal)
  • If (Systolic is Normal) and (Diastolic is Low_Normal) then (BP_Levels is Normal)
  • If (Systolic is Normal) and (Diastolic is High_Normal) then (BP_Levels is High_Normal)
  • If (Systolic is Normal) and (Diastolic is High) then (BP_Levels is Grade_1) (1)
  • If (Systolic is Normal) and (Diastolic is Very_High) then (BP_Levels is Grade_2)
  • If (Systolic is Normal) and (Diastolic is Too_High) then (BP_Levels is Grade_3)
  • If (Systolic is High) and (Diastolic is Low) then (BP_Levels is Grade_1)
  • If (Systolic is High) and (Diastolic is Low_Normal) then (BP_Levels is Grade_1)
  • If (Systolic is Very_high) and (Diastolic is Low) then (BP_Levels is Grade_2)
  • If (Systolic is Very_high) and (Diastolic is Low_Normal) then (BP_Levels is Grade_2)
  • If (Systolic is too_high) and (Diastolic is Low) then (BP_Levels is Grade_3)
  • If (Systolic is too_high) and (Diastolic is Low_Normal) then (BP_Levels is Grade_3)
  • If (Systolic is Low_Normal) and (Diastolic is Low) then (BP_Levels is Optimal)
  • If (Systolic is Low_Normal) and (Diastolic is High_Normal) then (BP_Levels is High_Normal)
  • If (Systolic is Low_Normal) and (Diastolic is Very_High) then (BP_Levels is Grade_2)
  • If (Systolic is Low_Normal) and (Diastolic is Too_High) then (BP_Levels is Grade_3)
  • If (Systolic is Low_Normal) and (Diastolic is Normal) then (BP_Levels is Normal)
  • If (Systolic is Low_Normal) and (Diastolic is High) then (BP_Levels is Grade_1)
  • If (Systolic is High_Normal) and (Diastolic is Low) then (BP_Levels is High_Normal)
  • If (Systolic is High_Normal) and (Diastolic is Low_Normal) then (BP_Levels is High_Normal)
  • If (Systolic is High_Normal) and (Diastolic is Normal) then (BP_Levels is High_Normal)
  • If (Systolic is High_Normal) and (Diastolic is High) then (BP_Levels is Grade_1)
  • If (Systolic is High_Normal) and (Diastolic is Very_High) then (BP_Levels is Grade_2)
  • If (Systolic is High_Normal) and (Diastolic is Too_High) then (BP_Levels is Grade_3)

Appendix A.4. Fuzzy Rules for the Classifier 4

  • If (Systolic is Low) and (Diastolic is Low) then (BP_Levels is Hypotension)
  • If (Systolic is Low_Normal) and (Diastolic is Low_Normal) then (BP_Levels is Optimal)
  • If (Systolic is Normal) and (Diastolic is Normal) then (BP_Levels is Normal)
  • If (Systolic is High_Normal) and (Diastolic is High_Normal) then (BP_Levels is High_Normal)
  • If (Systolic is High) and (Diastolic is High) then (BP_Levels is Grade_1)
  • If (Systolic is Very_high) and (Diastolic is Very_High) then (BP_Levels is Grade_2)
  • If (Systolic is too_high) and (Diastolic is Too_High) then (BP_Levels is Grade_3)
  • If (Systolic is Very_high) and (Diastolic is High) then (BP_Levels is Grade_2)
  • If (Systolic is too_high) and (Diastolic is Very_High) then (BP_Levels is Grade_3)
  • If (Systolic is too_high) and (Diastolic is High) then (BP_Levels is Grade_3)
  • If (Systolic is High) and (Diastolic is Very_High) then (BP_Levels is Grade_2)
  • If (Systolic is High) and (Diastolic is Too_High) then (BP_Levels is Grade_3)
  • If (Systolic is Very_high) and (Diastolic is Too_High) then (BP_Levels is Grade_3)
  • If (Systolic is High) and (Diastolic is Normal) then (BP_Levels is ISHGRADE_1)
  • If (Systolic is High) and (Diastolic is High_Normal) then (BP_Levels is ISHGRADE_1)
  • If (Systolic is Very_high) and (Diastolic is Normal) then (BP_Levels is ISHGRADE_2)
  • If (Systolic is Very_high) and (Diastolic is High_Normal) then (BP_Levels is ISHGRADE_2)
  • If (Systolic is too_high) and (Diastolic is Normal) then (BP_Levels is ISHGRADE_3)
  • If (Systolic is too_high) and (Diastolic is High_Normal) then (BP_Levels is ISHGRADE_3)
  • If (Systolic is Normal) or (Diastolic is Normal) then (BP_Levels is Normal)
  • If (Systolic is High_Normal) or (Diastolic is High_Normal) then (BP_Levels is High_Normal)

Appendix B

This appendix shows the representation of the knowledge of the inputs and output of the fuzzy system.

Appendix B.1. Input and Output Variables

To make a fuzzy system, you must first determine the input and output linguistic variables; in this case, we have two inputs and one output.

Input Variables

1. Systolic. This variable has the following membership functions (MFS): Low, Low_normal, Normal, High_normal, High, Very_high, Too_high. This MFS are listed below:
µ L o w ( x ) = { 0 , x 20 x 20 50 , 20 x 70 94 x 24 ,     70 x 94   0 ,     94 x
µ L o w _ N o r m a l ( x ) = { 0 , x 90 x 90 25 , 90 x 115 122 x 7 , 115 x 122   0 , 122 x
µ N o r m a l ( x ) = { 0 , x 110 x 110 10 , 110 x 120 129 x 9 , 120 x 129   0 , 129 x
µ H i g h _ N o r m a l ( x ) = { 0 , x 121 x 121 9 , 121 x 130 139 x 9 , 130 x 139   0 , 139 x
µ H i g h ( x ) = { 0 , x 131 x 131 9 , 131 x 140 170 x 30 , 140 x 170   0 , 170 x
µ V e r y _ h i g h ( x ) = { 0 , x 150 x 150 10 , 150 x 160 192 x 32 , 160 x 192   0 , 192 x
µ V e r y _ h i g h ( x ) = { 0 , x 170 x 170 50 , 170 x 220 300 x 80 , 220 x 300 0 , 300 x
2. Diastolic. This variable has the following membership functions (MFS): Low, Low_normal, Normal, High_normal, High, Very_high, Too_high. This MFS are listed below:
µ L o w ( x ) = {   0 , x 20 x 20 20 , 20 x 40 64 x 24 , 40 x 64 0 , 64 x
µ L o w _ N o r m a l ( x ) = {   0 , x 60 x 60 10 , 60 x 70 80 x 10 , 70 x 80 0 , 80 x
µ N o r m a l ( x ) = { 0 , x 76 x 76 4 , 76 x 80 84 x 4 , 80 x 84 0 , 84 x
µ H i g h _ N o r m a l ( x ) = { 0 , x 81 x 81 4 , 81 x 85 89 x 4 , 85 x 89 0 , 89 x
µ H i g h ( x ) = { 0 , x 88 x 88 2 , 88 x 90 99 x 9 , 90 x 99 0 , 99 x
µ V e r y _ h i g h ( x ) = {   0 , x 96 x 96 4 , 96 x 100 115 x 15 , 100 x 115 0 , 115 x
µ T o o _ h i g h ( x ) = {   0 , x 107 x 107 3 , 107 x 110 130 x 20 , 110 x 130 0 , 130 x

Appendix B.2. Output Variable

The fuzzy system has a single output called BP_LEVELS, which refers to the blood pressure level, output will give a percentage, which refers to the following blood pressure levels: Hypotension, Optimal, Normal, High_Normal, Grade 1, Grade 2, Grade 3, Isolated sistolic hypertension (ISH) Grade 1, ISH Grade 2, and ISH Grade 3. The linguistic value of membership functions is shown below:
µ H y p o t e n s i o n ( x ) = {   0 , x 0 x 0 10 , 0 x 10 20.5 x 10.5 , 10 x 20.5 0 , 20.5 x
µ O p t i m a l ( x ) = {   0 , x 20 x 20 20 , 20 x 40 50 x 10 , 40 x 50   0 , 50 x
µ N o r m a l ( x ) = {   0 , x 49 x 49 3.5 , 49 x 52.5 54.5 x 2 , 52.5 x 54.5   0 , 54.5 x
µ H i g h _ N o r m a l ( x ) = {   0 , x 54 x 54 3.5 , 54 x 57.5 61.5 x 4 , 57.5 x 61.5 0 , 61.5 x
µ G r a d e 1 ( x ) = {   0 , x 59 x 59 6 , 59 x 65 71.5 x 6.5 , 65 x 71.5 0 , 71.5 x
µ G r a d e 2 ( x ) = {   0 , x 69 x 69 6 , 69 x 75 83.5 x 8.5 , 75 x 83.5 0 , 83.5 x
µ G r a d e 3 ( x ) = {   0 , x 77 x 77 8 , 77 x 85 100 x 15 , 85 x 100 0 , 100 x
µ I S H _ G r a d e 1 ( x ) = {   0 , x 55 x 55 8 , 55 x 63 69.5 x 6.5 , 63 x 69.5 0 , 69.5 x
µ I S H _ G r a d e 2 ( x ) = {   0 , x 69 x 69 6 , 69 x 75 83.5 x 8.5 , 75 x 83.5 0 , 83.5 x
µ I S H _ G r a d e 3 ( x ) = {   0 , x 77 x 77 8 , 77 x 85 100 x 15 , 85 x 100 0 , 100 x

References

  1. Das, S.; Ghosh, P.K. Hypertension Diagnosis : A Comparative Study using Fuzzy Expert System and Neuro Fuzzy System. In Proceedings of the IEEE International Conference on Fuzzy Systems (FUZZ-IEEE), Hyderabad, India, 7–10 July 2013; pp. 1–7. [Google Scholar]
  2. Neshat, M.; Yaghobi, M.; Naghibi, M.B.; Esmaelzadeh, A. Fuzzy Expert System Design for Diagnosis of Liver Disorders. In Proceedings of the 2008 KAM ’08 International Symposium on Knowledge Acquisition and Modeling, Wuhan, China, 21–22 December 2008; pp. 252–256. [Google Scholar]
  3. Poli, R.; Cagnoni, S.; Livi, R.; Coppini, G.; Valli, G. A neural network expert system for diagnosing and treating hypertension. Computer 1991, 24, 64–71. [Google Scholar] [CrossRef]
  4. Soria-Alcaraz, J.; Carpio Valadez, J.M.; Puga, H.; Swan, J.; Melin, P.; Terashima, H.; Sotelo-Figueroa, M.A. Parallel Meta-heuristic Approaches to the Course Timetabling Problem. Stud. Comput. Intell. 2015, 601, 391–417. [Google Scholar]
  5. Srivastava, P.; Srivastava, A.; Burande, A.; Khandelwal, A. A Note on Hypertension Classification Scheme and Soft Computing Decision Making System. ISRN Biomath. 2013, 2013. [Google Scholar] [CrossRef]
  6. Staessen, J.A.; Wang, J.; Bianchi, G.; Birkenhäger, W.H. Essential hypertension. Lancet 2003, 361, 1629–1641. [Google Scholar] [CrossRef]
  7. Sumathi, B.B. Pre-Diagnosis of Hypertension Using Artificial Neural Network. Glob. J. Comput. Sci. Technol. 2011, 11, 2. [Google Scholar]
  8. Abdullah, A.A.; Zakaria, Z.; Mohammad, N.F. Design and Development of Fuzzy Expert System for Diagnosis of Hypertension. In Proceedings of the 2011 Second International Conference on Intelligent Systems, Modelling and Simulation (ISMS), Kuala Lumpur, Malaysia, 25–27 January 2011; pp. 113–117. [Google Scholar]
  9. Abrishami, Z.; Azad, I. Design of a Fuzzy Expert System and A Multi-Layer Neural Network System for Diagnosis of Hypertension. Bull. Environ. Pharmacol. Life Sci. 2015, 4, 138–145. [Google Scholar]
  10. Akintola, K.G.; Alese, B.K.; Thompson, A.F. Time Series Forecasting With Neural Network: A Case Study of Stock Prices of Intercontinental Bank Nigeria. IJRRAS 2011, 3, 467–472. [Google Scholar]
  11. Azam, F. Biologically inspired modular neural networks. Specialist 2000, 149. [Google Scholar]
  12. Djam, X.Y.; Sc, M.; Kimbi, Y.H. Fuzzy Expert System for the Management of Hypertension. Pac. J. Sci. Technol. 2011, 12, 390–402. [Google Scholar]
  13. Melin, P.; Guzman, J.C.; Prado-Arechiga, G. PP.08.10. Artificial intelligence utilizing neuro-fuzzy hybrid model for the classification of blood pressure. J. Hypertens. 2016, 34. [Google Scholar] [CrossRef]
  14. Melin, P.; Prado-Arechiga, G.; Guzman, J.C. PS 05–07 Classification of blood pressure based on a neuro-fuzzy hybrid computational model. J. Hypertens. 2016, 34. [Google Scholar] [CrossRef]
  15. Guzmán, J.C.; Melin, P.; Prado-Arechiga, G. Neuro-Fuzzy Hybrid Model for the Diagnosis of Blood Pressure. In Nature-Inspired Design of Hybrid Intelligent Systems; Springer International Publishing: Cham, Switzerland, 2017; pp. 573–582. [Google Scholar]
  16. Kaur, R.; Kaur, A. Hypertension Diagnosis Using Fuzzy Expert System. Int. J. Eng. Res. Appl. 2014, 14–18. [Google Scholar]
  17. Kaur, A.; Bhardwaj, A. Genetic Neuro Fuzzy System for Hypertension. Int. J. Comput. Sci. Inf. Technol. 2014, 5, 4986–4989. [Google Scholar]
  18. Guzmán, J.C.; Melin, P.; Prado-Arechiga, G. Design of a Fuzzy System for Diagnosis of Hypertension. In Design of Intelligent Systems Based on Fuzzy Logic, Neural Networks and Nature-Inspired Optimization; Springer International Publishing: Cham, Switzerland, 2015; pp. 517–526. [Google Scholar]
  19. Guzmán, J.C.; Melin, P.; Prado-Arechiga, G. A Proposal of a Fuzzy System for Hypertension Diagnosis. In Novel Developments in Uncertainty Representation and Processing; Springer International Publishing: Cham, Switzerland, 2016; pp. 341–350. [Google Scholar]
  20. Barman, M.; Choudhury, J. A Fuzzy Rule Base System for the Diagnosis of Heart Disease. Int. J. Comput. Appl. 2012, 57, 46–53. [Google Scholar]
  21. Charbonnier, S.; Galichet, S.; Mauris, G.; Siché, J.P. Statistical and fuzzy models of ambulatory systolic blood pressure for hypertension diagnosis. IEEE Trans. Instrum. Meas. 2000, 49, 998–1003. [Google Scholar] [CrossRef]
  22. Chen, C.C. Design of PSO-based fuzzy classification systems. Tamkang J. Sci. Eng. 2006, 1, 63–70. [Google Scholar]
  23. Cortez, P.; Cerdeira, A.; Almeida, F.; Matos, T.; Reis, J. Modeling wine preferences by data mining from physicochemical properties. Decis. Support Syst. 2009, 47, 547–553. [Google Scholar] [CrossRef]
  24. Nohria, R.; Mann, P.S. Diagnosis of Hypertension using Adaptive Neuro-Fuzzy Inference System. IJCST 2015, 3, 36–40. [Google Scholar]
  25. Ture, M.; Kurt, I.; Kurum, A.T.; Ozdamar, K. Comparing classification techniques for predicting essential hypertension. Expert Syst. Appl. 2005, 29, 583–588. [Google Scholar] [CrossRef]
  26. Mancia, G.; Fagard, R.; Narkiewicz, K.; Redón, J.; Zanchetti, A.; Böhm, M.; Christiaens, T.; Cifkova, R.; De Backer, G.; Dominiczak, A.; et al. 2013 ESH/ESC Guidelines for the management of arterial hypertension. Blood Press. 2013, 22, 193–278. [Google Scholar] [CrossRef] [PubMed]
  27. Abdelbar, A.M.; Abdelshahid, S.; Wunsch, D.C. Fuzzy PSO: A generalization of particle swarm optimization. Proc. Int. Jt. Conf. Neural Netw. 2005, 2, 1086–1091. [Google Scholar]
  28. Hosseini, S.; Jutten, C.; Charbonnier, S. Neural network modeling of ambulatory systolic blood pressure for hypertension diagnosis, Inference System. IJCST 2015, 6, 36–40. [Google Scholar]
  29. Melin, P.; Prado-Arechiga, G.; Pulido, M.; Miramontes, I. OS 26-01 Classification of arterial hypertension using a computational model based on artificial modular neural networks. J. Hypertens. 2016, 34. [Google Scholar] [CrossRef] [PubMed]
  30. Meltser, M. Approximating Functions by Neural Networks : A Constructive Solution in the Uniform Norm. Neural Netw. 1996, 9, 965–978. [Google Scholar] [CrossRef]
  31. Mujtaba, I.M.; Hussain, M.A. Application of Neural Networks and Other Learning Technologies in Process Engineering; Imperial College Press: London, UK, 2001; Volume 405. [Google Scholar]
  32. Morsi, I.; el Gawad, Y.Z.A. Fuzzy logic in heart rate and blood pressure measuring system. IEEE Sens. Appl. Symp. Proc. 2013, 113–117. [Google Scholar]
  33. Başçiftçi, F.; Eldem, A. Using reduced rule base with Expert System for the diagnosis of disease in hypertension. Med. Biol. Eng. Comput. 2013, 51, 1287–1293. [Google Scholar] [CrossRef] [PubMed]
  34. Patil, P. Fuzzy Logic based Health Care System using Wireless Body Area Network. Int. J. Comput. Appl. 2013, 80, 46–51. [Google Scholar] [CrossRef]
Figure 1. General Neuro Fuzzy Hybrid Model.
Figure 1. General Neuro Fuzzy Hybrid Model.
Algorithms 10 00079 g001
Figure 2. Specific Neuro Fuzzy Hybrid Model.
Figure 2. Specific Neuro Fuzzy Hybrid Model.
Algorithms 10 00079 g002
Figure 3. Structure of the fuzzy logic classifier 1.
Figure 3. Structure of the fuzzy logic classifier 1.
Algorithms 10 00079 g003
Figure 4. Systolic input for the fuzzy logic classifier 1.
Figure 4. Systolic input for the fuzzy logic classifier 1.
Algorithms 10 00079 g004
Figure 5. Diastolic input for the fuzzy logic classifier 1.
Figure 5. Diastolic input for the fuzzy logic classifier 1.
Algorithms 10 00079 g005
Figure 6. BP_Levels is the output of the fuzzy logic classifier 1.
Figure 6. BP_Levels is the output of the fuzzy logic classifier 1.
Algorithms 10 00079 g006
Figure 7. Structure of the fuzzy logic classifier 2.
Figure 7. Structure of the fuzzy logic classifier 2.
Algorithms 10 00079 g007
Figure 8. Systolic input for the fuzzy logic classifier 2.
Figure 8. Systolic input for the fuzzy logic classifier 2.
Algorithms 10 00079 g008
Figure 9. Diastolic input for the fuzzy logic classifier 2.
Figure 9. Diastolic input for the fuzzy logic classifier 2.
Algorithms 10 00079 g009
Figure 10. BP_Levels is the output of the fuzzy logic classifier 2.
Figure 10. BP_Levels is the output of the fuzzy logic classifier 2.
Algorithms 10 00079 g010
Figure 11. Structure of the fuzzy logic classifier 3.
Figure 11. Structure of the fuzzy logic classifier 3.
Algorithms 10 00079 g011
Figure 12. Systolic input for the fuzzy logic classifier 3.
Figure 12. Systolic input for the fuzzy logic classifier 3.
Algorithms 10 00079 g012
Figure 13. Diastolic input for the fuzzy logic classifier 3.
Figure 13. Diastolic input for the fuzzy logic classifier 3.
Algorithms 10 00079 g013
Figure 14. BP_Levels is the output of the fuzzy logic classifier 3.
Figure 14. BP_Levels is the output of the fuzzy logic classifier 3.
Algorithms 10 00079 g014
Figure 15. Structure of the chromosome.
Figure 15. Structure of the chromosome.
Algorithms 10 00079 g015
Figure 16. Structure of the fuzzy logic classifier 4.
Figure 16. Structure of the fuzzy logic classifier 4.
Algorithms 10 00079 g016
Figure 17. Systolic input for the fuzzy logic classifier 4.
Figure 17. Systolic input for the fuzzy logic classifier 4.
Algorithms 10 00079 g017
Figure 18. Diastolic input for the fuzzy logic classifier 4.
Figure 18. Diastolic input for the fuzzy logic classifier 4.
Algorithms 10 00079 g018
Figure 19. BP_Levels is the output of the fuzzy logic classifier 4.
Figure 19. BP_Levels is the output of the fuzzy logic classifier 4.
Algorithms 10 00079 g019
Figure 20. The input data for systolic.
Figure 20. The input data for systolic.
Algorithms 10 00079 g020
Figure 21. The input data for diastolic.
Figure 21. The input data for diastolic.
Algorithms 10 00079 g021
Figure 22. The learning of the neural network with the systolic data provided.
Figure 22. The learning of the neural network with the systolic data provided.
Algorithms 10 00079 g022
Figure 23. The learning of the neural network with the diastolic data provided.
Figure 23. The learning of the neural network with the diastolic data provided.
Algorithms 10 00079 g023
Figure 24. The trend of the systolic data.
Figure 24. The trend of the systolic data.
Algorithms 10 00079 g024
Figure 25. The trend of the diastolic data.
Figure 25. The trend of the diastolic data.
Algorithms 10 00079 g025
Table 1. Definitions and classification of blood pressure levels.
Table 1. Definitions and classification of blood pressure levels.
CategorySystolicDiastolic
Hypotension<90And/or<60
Optimal<120And<80
Normal120–129And/or80–84
High Normal130–139And/or85–89
Grade 1 Hypertension140–159And/or90–99
Grade 2 Hypertension160–179And/or100–109
Grade 3 Hypertension≥180And/or≥110
Isolated Systolic Hypertension≥140And<90
Table 2. Some of the architectures that were tested before choosing the optimal one for the modular neural network.
Table 2. Some of the architectures that were tested before choosing the optimal one for the modular neural network.
ArchitecturesEpochLayersNeuronsGoal ErrorLearning RateMean Systolic ErrorMean Diastolic Error
Architecture 11000310,10,50.00000010.010.2423541.84563
Architecture 21000310,5,50.000010.015.596382.44392
Architecture 3100035,5,50.0000010.016.773324.10991
Table 3. Excel file given by the ambulatory monitoring device.
Table 3. Excel file given by the ambulatory monitoring device.
DateTimeSystolicDiastolic
21/10/201517:4012870
21/10/201518:0011771
21/10/201518:2012572
21/10/201518:4012972
21/10/201519:0712291
21/10/201519:2312989
21/10/201519:4012976
21/10/201520:0012168
21/10/201520:2012872
21/10/201520:4012670
21/10/201521:0012979
21/10/201521:2012372
21/10/201521:4311763
21/10/201522:0011564
21/10/201522:2011159
21/10/201522:4012264
21/10/201523:0010360
21/10/201523:3011164
22/10/20150:0011162
22/10/20150:3010252
22/10/20151:0010164
22/10/20151:3011652
22/10/20152:0010865
22/10/20152:3011062
22/10/20153:0010557
22/10/20153:3010857
22/10/20154:0812371
22/10/20154:3112169
22/10/20155:0012574
22/10/20155:3012873
22/10/20156:0012571
22/10/20156:3012065
22/10/20157:0012372
22/10/20157:3011362
22/10/20158:0012166
22/10/20158:3312365
22/10/20159:0911964
22/10/20159:2011164
22/10/20159:4313274
22/10/201510:0312173
22/10/201510:2313886
22/10/201511:0313085
22/10/201511:2014384
22/10/201511:4814483
Table 4. Some of the parameters that were tested before choosing the optimal parameters for the GA.
Table 4. Some of the parameters that were tested before choosing the optimal parameters for the GA.
Genetic AlgorithmGenerationPopulationSelection MethodMutation RateCrossing Rate
GA 1100100roulette wheel0.060.5
GA 2100100roulette wheel0.040.6
GA 3100100roulette wheel0.060.7
Table 5. Shows the results of the 30 patients who were monitored and classified in the classifier 1.
Table 5. Shows the results of the 30 patients who were monitored and classified in the classifier 1.
PatientSystolicDiastolicClassifier 1Fuzzy PercentageESH BP_Leves Table
113984Normal50High normal
213590Grade 162.3Grade 1
316098Grade 272.3Grade 2
4177110Grade 384.6Grade 3
514285Ish77.5Ish grade 1
616089Ish71.6Ish grade 2
718289Ish82.1Ish_grade 3
88550Hypotension10.2Hypotension
911070Optimal36.6Optimal
1012582Normal54Normal
1113585High Normal57High normal
1215994Grade 270.2Grade 1
13175105Grade 279.3Grade 2
14180110Grade 384.2Grade 3
1511080Optimal50Normal
1612889High Normal57High normal
1715870ISH77.9Ish grade 1
18150108Grade 383.2Grade 2
1919995Grade 388.6Grade 3
2017999Grade 381.8Grade 2
21181100Grade 382.8Grade 3
2221090Grade 388.1Grade 3
23140100Grade 274.5Grade 2
24159120Grade 388.5Grade 3
25178115Grade 388.6Grade 3
2614080Normal50Ish grade 1
2715089Ish68.2Ish grade 1
2817980Ish77.9Ish grade 2
2917989Ish80.6Ish grade 2
3019982Ish77.8Ish grade 3
Table 6. Shows the results of the 30 patients who were monitored and classified in the classifier 2.
Table 6. Shows the results of the 30 patients who were monitored and classified in the classifier 2.
PatientSystolicDiastolicClassifier 2Fuzzy PercentageESH BP_Leves Table
113984Grade 162.4High normal
213590Grade 162.5Grade 1
316098Grade 270.9Grade 2
4177110Grade 384.4Grade 3
514285Ish grade 161.8Ish grade 1
616089Grade 270.2Ish grade 2
718289Grade 276.7Ish grade 3
88550Hypotension10.2Hypotension
911070Optimal36.6Optimal
1012582Normal54.4Normal
1113585Grade 161.1High normal
1215994Grade 270Grade 1
13175105Grade 278.9Grade 2
14180110Grade 384.8Grade 3
1511080Normal52Normal
1612889High Normal60.7High normal
1715870Ish grade 170.5Ish grade 1
18150108Grade 277.1Grade 2
1919995Grade 381.3Grade 3
2017999Grade 280.5Grade 2
21181100Grade 380.9Grade 3
2221090Grade 380Grade 3
23140100Grade 269.5Grade 2
24159120Grade 379.3Grade 3
25178115Grade 384.5Grade 3
2614080Ish grade 160.2Ish grade 1
2715089Ish grade 164.5Ish grade 1
2817980Ish grade 273.3Ish grade 2
2917989Ish grade 275.4Ish grade 2
3019982Ish grade 378.9Ish grade 3
Table 7. Shows the results of the 30 patients who were monitored and classified in the classifier 3.
Table 7. Shows the results of the 30 patients who were monitored and classified in the classifier 3.
PatientSystolicDiastolicClassifier 3Fuzzy PercentageESH BP_Leves Table
113984Ishgrade 162.5High normal
213590Grade 164.4Grade 1
316098Grade 272.3Grade 2
4177110Grade 384.6Grade 3
514285Ishgrado162.5Ish grade 1
616089Grade 270.2Ish grade 2
718289Grade 283.4Ish grade 3
88550Hypotension10.2Hypotension
911070Optimal36.6Optimal
1012582Normal54.5Normal
1113585Grade 161.5High normal
1215994Grade 270.2Grade 1
13175105Grade 279.3Grade 2
14180110Grade 284.2Grade 3
1511080Normal52Normal
1612889Grade 164.4High normal
1715870Grade 270.5Ish grade 1
18150108Grade 283.2Grade 2
1919995Grade 388.6Grade 3
2017999Grade 281.8Grade 2
21181100Grade 382.8Grade 3
2221090Grade 388.1Grade 3
23140100Grade 274.5Grade 2
24159120Grade 388.5Grade 3
25178115Grade 388.6Grade 3
2614080Ishgrado162.5Ish grade 1
2715089Grade 164.4Ish grade 1
2817980Ish grade 281.8Ish grade 2
2917989Grade 281.7Ish grade 2
3019982Ish grade 388.5Ish grade 3
Table 8. Shows the results of the 30 patients who were monitored and classified in the classifier 4.
Table 8. Shows the results of the 30 patients who were monitored and classified in the classifier 4.
PatientSystolicDiastolicOptimized Classifier 4Fuzzy PercentageESH BP_Leves Table
113984High normal61.3High normal
213590Grade 162.5Grade 1
316098Grade 274Grade 2
4177110Grade 384.3Grade 3
514285Ish grade 161.3Ish grade 1
616089Ish grade 271.8Ish grade 2
718289Ish grade 383.2Ish grade 3
88550Hypotension10.2Hypotension
911070Optimal36.6Optimal
1012582Normal55.2Normal
1113585High normal60.8High normal
1215994Grade 171.8Grade 1
13175105Grade 279.3Grade 2
14180110Grade 384Grade 3
1511080Normal52Normal
1612889High normal56.9High normal
1715877Ish grade 166.4Ish grade 1
18150108Grade 282.9Grade 2
1919995Grade 387.8Grade 3
2017999Grade 281.6Grade 2
21181100Grade 382.6Grade 3
2221090Grade 387.4Grade 3
23140100Grade 275.8Grade 2
24159120Grade 387.7Grade 3
25178115Grade 387.8Grade 3
2614080Ish grade 159.7Ish grade 1
2715089Ish grade 165.2Ish grade 1
2817980Ish grade 273.8Ish grade 2
2917989Ish grade 281.6Ish grade 2
3019982Ish grade 377.8Ish grade 3
Table 9. Shows the results of the 30 patients who were monitored and classified in the classifier based in an expert.
Table 9. Shows the results of the 30 patients who were monitored and classified in the classifier based in an expert.
PatientSystolicDiastolicClassifier 2Fuzzy PercentageESH BP_Leves Table
113984Grade 162.4High normal
213590Grade 162.5Grade 1
316098Grade 270.9Grade 2
4177110Grade 384.4Grade 3
514285ish_grado161.8Ish grade 1
616089Grade 270.2Ish_Grade 2
718289Grade 276.7Ish_Grade 3
88550Hypotension10.2Hypotension
911070Optimal36.6Optimal
1012582Normal54.4Normal
1113585Grade 161.1High normal
1215994Grade 270Grade 1
13175105Grade 278.9Grade 2
14180110Grade 384.8Grade 3
1511080Normal52Normal
1612889High Normal60.7High normal
1715870Ish grade 170.5Ish grade 1
18150108Grade 277.1Grade 2
1919995Grade 381.3Grade 3
2017999Grade 280.5Grade 2
21181100Grade 380.9Grade 3
2221090Grade 380Grade 3
23140100Grade 269.5Grade 2
24159120Grade 379.3Grade 3
25178115Grade 384.5Grade 3
2614080Ish grade 160.2Ish grade 1
2715089Ish grade 164.5Ish grade 1
2817980Ish grade 273.3Ish grade 2
2917989Ish grade 275.4Ish grade 2
3019982Ish grade 378.9Ish grade 3
Table 10. Shows the results of the 30 patients who were monitored and classified in the classifier optimized with GA.
Table 10. Shows the results of the 30 patients who were monitored and classified in the classifier optimized with GA.
PatientSystolicDiastolicOptimized Classifier 4Fuzzy PercentageESH BP_Leves Table
113984High normal61.3High normal
213590Grade 162.5Grade 1
316098Grade 274Grade 2
4177110Grade 384.3Grade 3
514285Ish grade 161.3Ish grade 1
616089Ish grade 271.8Ish_grade 2
718289Ish grade 383.2Ish_grade 3
88550Hypotension10.2Hypotension
911070Optimal36.6Optimal
1012582Normal55.2Normal
1113585High normal60.8High normal
1215994Grade 171.8Grade 1
13175105Grade 279.3Grade 2
14180110Grade 384Grade 3
1511080Normal52Normal
1612889High normal56.9High normal
1715877Ish grade166.4Ish grade 1
18150108Grade 282.9Grade 2
1919995Grade 387.8Grade 3
2017999Grade 281.6Grade 2
21181100Grade 382.6Grade 3
2221090Grade 387.4Grade 3
23140100Grade 275.8Grade 2
24159120Grade 387.7Grade 3
25178115Grade 387.8Grade 3
2614080Ish grade 159.7Ish grade 1
2715089Ish grade 165.2Ish grade 1
2817980Ish grade 273.8Ish grade 2
2917989Ish grade 281.6Ish grade 2
3019982Ish grade 377.8Ish grade 3

Share and Cite

MDPI and ACS Style

Guzman, J.C.; Melin, P.; Prado-Arechiga, G. Design of an Optimized Fuzzy Classifier for the Diagnosis of Blood Pressure with a New Computational Method for Expert Rule Optimization. Algorithms 2017, 10, 79. https://doi.org/10.3390/a10030079

AMA Style

Guzman JC, Melin P, Prado-Arechiga G. Design of an Optimized Fuzzy Classifier for the Diagnosis of Blood Pressure with a New Computational Method for Expert Rule Optimization. Algorithms. 2017; 10(3):79. https://doi.org/10.3390/a10030079

Chicago/Turabian Style

Guzman, Juan Carlos, Patricia Melin, and German Prado-Arechiga. 2017. "Design of an Optimized Fuzzy Classifier for the Diagnosis of Blood Pressure with a New Computational Method for Expert Rule Optimization" Algorithms 10, no. 3: 79. https://doi.org/10.3390/a10030079

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop