Fever Diagnosis Rule-Based Expert Systems

DOI : 10.17577/IJERTV2IS80292

Download Full-Text PDF Cite this Publication

Text Only Version

Fever Diagnosis Rule-Based Expert Systems

S. Govinda Rao M. Eswara Rao D. Siva Prasad

Dept. of CSE Dept. of CSE Dept. of CSE

TP inst. Of Science & Tech., TP inst. Of Science & Tech., Rajah RSRKRR College bobbili, Inida bobbili, Inida bobbili, Inida


This paper is an expert system which diagnosis the fever, provide food-diet and medicine. This rulebased system takes initial details regarding to user like age, sex, body temperature and gives the list of common symptoms regarding to fever to diagnose the severity of the fever initially. Later provide confirm dialogue for diagnose with more symptoms to identify the type of the fever (focus on malaria, typhoid and dengue), later ask to choose some more symptoms to diagnose the severity of that type of fever. At last provide Medicine, food-diet, generate report and provide some useful suggested pdfs regarding to medicine and food-diet. And Maintain the Database, Which gives more accurate results, replacing an expert for diagnose fever, and provide medicine and the best food-diet associated to fever and according to age.

Keywords: Expert system, fever, food-diet, symptoms, pdfs, rulebased.


Expert System:

In artificial intelligence, an expert system is a computer system that emulates the decision-making ability of a human expert. Expert systems are designed to solve complex problems by reasoning about knowledge, like an expert, and not by following the procedure of a developer as is the case in conventional programming. The first expert systems were created in the 1970s and then proliferated in the 1980s. Expert systems were among the first truly successful form of AI software.

An Expert system has a unique structure, different form traditional computer programming. It is divided into two parts, one fixed, independent of tpe expert system. The inference engine and one variable: the knowledge base to run an expert system, the engine reasons about the knowledge base like a human. In the 80s a third part appeared: a dialog interface to communicate with users.

Fuzzy Expert System:

  1. Fuzzy Inference System: A Fuzzy Inference System is a way of mapping an input space to an output space using fuzzy logic. A FIS tries to formalize the reasoning process of human language by means of fuzzy logic. For instance: If the service is good, even if the food is not excellent, the tip will be generous. FIS are used to solve decision problems, i.e. to make a decision and act accordingly.

  2. Structure of a fuzzy inference system: In general, a fuzzy inference system consists of four modules:

    Fuzzification module: transforms the system inputs, which are cri sp numbers, into fuzzy sets. This is done by applying a fuzzification function.

    Knowledge base: stores IF-THEN rules provided by experts.

    Inference engine: simulates the human reasoning process by making fuzzy inference on the inputs and IF-THEN rules.

    Defuzzification module: transforms the fuzzy set obtained by the inference engine into a crisp value.

  3. Why should we use Fuzzy Inference Systems?

    Fuzzy logic does not solve new problems. It uses new methods to solve everyday problems. Mathematical concepts within fuzzy reasoning are very simple. Fuzzy logic is flexible to modify a FIS just by adding or deleting rules. Fuzzy logic allows imprecise data. it handles elements in a fuzzy set, i.e. membership values. For instance, fuzzy logic works with 'He is tall to the degree 0.8' instead of 'He i s 180cm tall'. Fuzzy logic is built on top of the knowledge of experts: it relies on the know-how of the ones who understand the system. Fuzzy logic can be blended with other classic control techniques.

  4. Fuzzy IF-THEN rules:

    In its simplest form, a fuzzy if-then rule follows the pattern:

    If x is A then y is B". A and B are linguistic values defined by fuzzysets in the universes of discourse X andY. x is the input variable and y is the output variable. The meaning of is is different in the antecedent and in the consequent of the rule. This is because the antecedent is an interpretation that returns a value between 0 and 1, and the consequent assigns a fuzzy set B to the variable y The input to the rule is a crisp value given to the input variable x of the antecedent. The output to the rule is a fuzzyset assigned to the output variable y of the consequent. The rule is executed applying a fuzzy implication operator, whose arguments are the antecedent's value and the consequent's fuzzy set values. The implication results in a fuzzy set that will be the output of the rule.

  5. Classification of fuzzy inference methods

    Fuzzy inference methods are classified indirect methods and indirect methods. Direct methods, such as Mamdani's and Sugeno's, are the most commonly used. Indirect methods are more complex.

    Current System

    There are so many expert systems are existed for the fever diagnosis but those are separate for each of the fever like dengue, typhoid and malaria, and they also failed to give the more accurate results, Just giving 50 to 75% accuracy of results in diagnose of fever.

    Proposed system:

    This proposed expert system works on the basis of the symptoms chosen by the user, with more efficient fuzzification and defuzzification will be done. This system has totally about 60 rules to Diagnose the type of the fever on the basis of the symptoms given by the user and give the severity of the fever including type, and more usefully it provides medicine and Food diet to be taken by the patient, and alert signs if its needed, which replaces more than 80% of an expert for diagnose the fever and provide medicine, food diet in more user friendly way, and accurate way. Which provides medicine and food-diet on the basis of age.

    • Initially give the details like age, gender, temperature and choose basic symptoms of the fever to diagnose the fever initially.

    • Later Diagnose for the Malaria or typhoid or dengue on user symptoms chosen.

    • Provide type or severity of those fevers including medicine and food-diet to be followed by the patient and report will be generated.


      The scope of the system is to take initial required symptoms, temperature and details to diagnose the normal fever, and then on the basis of the result proceed for further symptoms chosen by the user to diagnose the three deadly severe fevers.


      The objectives of the system are as follows.

    • Initial classification of the fever and ask for the diagnose with more symptoms.

    • Fuzzification will be done using associated membership functions, and perform aggregation if needed.

    • Match the classified inputted parameter with rules and identify the maximum degree of occurrence of result, membership functions and aggregation will be done for the final result if needed and then defuzzify the result.

    • The above two steps will be followed by various severe fevers diagnosis on the basis of the different level of symptoms chosen by user.

    • Finally provide the type of fever, severity, medicine, food-diet to be followed and generate report for more clear representation of the diagnosed fever with necessary precautions and medicine.


      The overview of the system is as follows.

    • System age, body temperature, sex, and initial symptoms of the fever.

    • Initial individual classification on inputed test results.

    • Match with rules in rule base and aggregate output.

    • Defuzzify the aggregate output that gives is need to check with more symptoms or just a fever or not a fever.

    • Later on the basis of result ask for symptoms to diagnose the malaria, dengue & typhoid.

    • After found one of three check for type or severity of that fever, and finally provide medicine on the basis of age, and provide alerts and emergency situations if needed.

    • And finally generate report and insert results into database for further review.


About Mamdani Inference Fuzzy Expert rulebase System

Mamdani's method is the most commonly used in applications, due to its simple tructure of 'min-max' operations. The steps of the method includes

Step 1: Evaluate the antecedent for each rule. Step 2: Obtain each rule's conclusion.

Step 3: Aggregate conclusions. Step 4: Defuzzification.

Step 1. Evaluate the antecedent for each rule:

Given the inputs (cri sp values) we obtain their membership values. This process is called 'input fuzzification'. If the antecedent of the rule has more than one part, a fuzzy operator (t- normor t-conorm) is applied to obtain a single membership value. Let's take a look at the example:

Step 2. Obtain each rule's conclusion:

Given the consequent of each rule (a fuzzy set) and the antecedent value obtained in step 1, we apply a fuzzy implication operator to obtain a new fuzzy set. Two of the most commonly used implication methods are the minimum, which truncates the consequent's membership function, and the product, which scales it. In the example below, the minimum operator is used:

Step 3. Aggregate conclusions:

In this step we combine the outputs obtained for each rule i n step 2 into a single fuzzy set, using a fuzzy aggregation operator. Some of the most commonly used aggregation operators are the maxi mum, the sum and the probabilistic sum.

Step 4. Defuzzification:

For the tipping problem for instance, we do not want the system to tell us to give a generous ti p. What we want to know i show much tip we should give. So, we need to transform the fuzzy set we obtained in step 3 into a single numerical value. One of the most popular defuzzification methods i s the centroid, which returns the center of the area under the fuzzy set obtained i n step 3. The calculations are shown below:

Dataset (Rulebase) to this expert system: Rules for Diagnose the severity of the fever:

  1. If (temperature ==370C) then fever=false

  2. If (temperature >370C&&temperature<=38.30C) then fever=lowfever

  3. If (temperature >38.30C&&temperature<=39.40C) then fever=high

  4. If(temperature>39.40C) then fever=veryhigh

  5. If(morethan2 symptoms are selected) then show the confirm dialogue for diagnose with more symptoms

    Rules for Diagnose the type of fever(malaria/dengue/typhoid):

  6. If(Bodyachesorpains) then type=Malaria

  7. If(Bodyachesorpains) then type=Dengue

  8. If(Chills) then type=Malaria

  9. If(Chills) then type=Dengue

  10. If(fever(high)) then type=Malaria

  11. If(fever(high)) then type=Typhoid

  12. If(fever(high)) then type=Dengue

  13. If(Headache) then type=Malaria

  14. If(Headache) then type=Typhoid

  15. If(Headache) then type=Dengue

  16. If(NauseaorVomiting) then type=Malaria

  17. If(NauseaorVomiting) then type=Dengue

  18. If(ExcessiveSweating) then type=Malaria

  19. If(DarkColoredUrine) then type=Malaria

  20. If(Weakness(generalized)) then type=Malaria

  21. If(jointaches) then type=Dengue

  22. If(jointaches) then type=Typhoid

  23. If(Diarrhea) then type=Dengue

  24. If(Diarrhea) then type=Typhoid

  25. If(Fatigue) then type=Dengue

  26. If(Fatigue) then type=Typhoid

  27. If(Skinrash) then type=Dengue

  28. If(Skinrash) then type=Typhoid

  29. If(Painordiscomfort) then type=Typhoid

  30. If(confusion) then type=Typhoid

  31. If(Decreased appetite) then type=Typhoid

  32. If(Disorientation) then type=typhoid

    Rules for Diagnose the type of Malaria(P.F./P.O./P.V./P.M.):

  33. If(Dizziness) then type=P.F.

  34. If(Fatigue) then type=P.F.

  35. If(Fatigue) then type=P.V.

  36. If(Fatigue) then type=P.O.

  37. If(fever) then type=P.F.

  38. If(fever) then type=P.V.

  39. If(fever) then type=P.O.

  40. If(fever) then type=P.M.

  41. If(chills) then type=P.V.

  42. If(chills) then type=P.O.

  43. If(chills) then type=P.M.

  44. If( Diarrhea) then type=P.V.

  45. If( Diarrhea) then type=P.O.

  46. If(Abdominalpain) then type=P.F.

  47. If(musclepain) then type=P.F.

  48. If(Enlargementof thespleen) then type=p.F.

  49. If(backpain) then type=P.F.

  50. If(joinaches) then type=P.F.

  51. If(Seizures) then type=P.F.

  52. If(vomiting) then type=P.F.

  53. If(severeanemia) then type=P.F.

  54. If(Headache) then type=P.F.

  55. If(Highgradefever) then type=P.M.

  56. If(belongs or have a recent travelling history to Africa) then type=P.O.

    Rules for Diagnose the severity of Dengue :

  57. If(Highfever) then severity=high

  58. If(Highfever) then severity=veryhigh

  59. If(Anorexia) then severity=high

  60. If(Vomitingandabnormalpain) then severity=high

  61. If(Haemorrhagicdiathesis) then severity=high

  62. If(Hematuria) then severity=high

  63. If(enlargementoftheliver) then severity=high

  64. If(Bleedingnose&gums,hematemesis)then severity=veryhigh

  65. If(Refusaltofoodordrink) then severity=veryhigh

  66. If(Difficultyinbreathing) then severity=veryhigh

    Rule to Diagnose the severity of Typhoid:

  67. If(10to14dayssufferingfromsymptoms) then severity=high


This current system Fever Diagnosis Rulebased Expert System which is designed with the various memebership functions and more than 60 rules in the rulebase for the better diagnose of the fever type and severity and provides the food-diet and medicine on the basis of the age of the patient and generate report. As this system is designed in Object Oriented approach through java, we can add any new method and modify existed, change and diagnose more fevers can be extended easily in future.


[1]. Jackson, Peter(1998), Introduction to Expert Systems (3rd edition), Addison Wesley, p. 2, ISBN 978-0-201-87686-42.

[2]. Regina Barzilay, Daryl McCullough, Owen Rambow, Jonathan DeCristofaro, Tanya Koreisky, Benoit Lavoie, A new approach to expert system explanations.

Leave a Reply