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:
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:
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:
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:
where
is the Number of Training Instances Correctly Classified and
is the Number of Training instances.
The Classification Error Rate (CE) is calculated as follows:
where
is the Number of Training Instances Incorrectly Classified and
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.