Documente Academic
Documente Profesional
Documente Cultură
MILLICENT AMOLLO
REG NO: BIT-C006-0510/2014
Signature: ____________________________
Date: ______________________
This project has been submitted for examination with my approval as the University Supervisor
Signature: ____________________________
Date: ______________________
DEDICATION
I dedicate this project to my beloved parents, who supported me morally and financially during
the project development.
ii
ACKNOWLEDGMENT
My sincere thanks are due to my parents; and my sweet brothers for their support both
spiritually, financially and otherwise.
I also acknowledge with thanks the assistance given me by my supervisor Mr. Feliz Sigei, and
my lecturers, throughout this research.
I also wish to acknowledge the help of my friends, above all my lovely ones and that of my
course mates too numerous to mention.
I am also indebted to the JKUAT family, whose efforts has helped me in the pursuit of my career.
iii
ABSTRACT
This project, Expert system on Malaria and Typhoid Diagnosis, is a software system tailored for
use in the diagnosis of malaria and typhoid diseases. The software is an expert system with a
database containing an expert knowledge. The user only uses it to determine whether he or she
has any of the diseases within its domain. The software has been designed to be interactive with
audio capability eliciting from the user if they have symptoms of the diseases. The user response
helps the expert system to determine the level at which the disease is present. The user is further
advised on what next to do.
environment, Health care facility should be accessible by all at all time. But some of the people
that should access these facilities are far removed from these facilities. It would be of great
necessity to provide a computerized system that will provide a complementary medical service,
such as medical disease diagnosis in places where accessibility is a problem as well as health
care facilities where qualified experts are lacking, hence this topic, Expert System on Malaria
and typhoid fever Diagnose.
Table of Contents
DECLARATION.............................................................................................................. i
iv
DEDICATION................................................................................................................ ii
ACKNOWLEDGMENT................................................................................................... iii
ABSTRACT.................................................................................................................. iv
Table of Contents............................................................................................................. v
Definitions of Key Terms................................................................................................. vii
Abbreviations and Acronyms............................................................................................ viii
CHAPTER ONE.............................................................................................................. 1
1.0
Introduction....................................................................................................... 1
Definition of Terms/Variables.................................................................................4
2.3
2.3.1
Knowledge representation............................................................................... 7
2.3.2
Knowledge engineer...................................................................................... 7
2.4.
2.4.1
End user........................................................................................................... 8
Explanation of the end-user system..................................................................8
2.5
2.6
2.8
2.8.1
Advantages:............................................................................................... 12
2.8.2
Disadvantages:........................................................................................... 12
2.9
CHAPTER THREE........................................................................................................ 14
3.1 SYSTEM DESIGN................................................................................................. 14
3.2
3.3
3.4
vi
Definition
vii
ESE
ESE
ESE
ESE
viii
CHAPTER ONE
1.0 Introduction
An Expert System is a piece of software programmed using artificial intelligence techniques.
Such systems use databases of expert knowledge to offer advice or make decisions in such areas
as medical diagnosis and trading on the stock exchange.
1.1 Background of the Study
An expert system is a software system that attempts to reproduce the performance of one or more
human experts, most commonly in a specific problem domain, and is a traditional application
and/or subfield of artificial intelligence. A wide variety of methods can be used to simulate the
performance of the expert however common to most or all are
1) The creation of a so-called "knowledgebase" which uses some knowled+`ge representation
formalism to capture the subject matter experts (SME) knowledge and
2) A process of gathering that knowledge from the SME and codifying it according to the
formalism, which is called knowledge engineering. Expert systems may or may not have
learning components but a third common element is that once the system is developed it is
proven by being placed in the same real world problem solving situation as the human SME,
typically as an aid to human workers or a supplement to some information system.
As a premiere application of computing and artificial intelligence, the topic of expert systems has
many points of contact with general systems theory, operations research, business process
reengineering and various topics in applied mathematics and management science.
Two illustrations of actual expert systems can give an idea of how they work. In one real world
case at a chemical refinery a senior employee was about to retire and the company was
concerned that the loss of his expertise in managing a fractionating tower would severely impact
operations of the plant. A knowledge engineer was assigned to produce an expert system
reproducing his expertise saving the company the loss of the valued knowledge asset. Similarly a
system called Mycin was developed from the expertise of best diagnosticians of bacterial
infections whose performance was found to be as good as or better than the average clinician. An
1
early commercial success and illustration of another typical application (a task generally
considered overly complex for a human) was an expert system fielded by DEC in the 1980s to
quality check the configurations of their computers prior to delivery. The eighties were the time
of greatest popularity of expert systems and interest lagged after the onset of the AI Winter.
In like manner, developing one of such system to represent the repository of the knowledge of a
medical doctor is as essential as any other expert system. To this end, this project, Expert
System on the Diagnosis of non communicable diseases is a necessity.
If this prototype is fully developed will be very useful in many areas such as:
i.
It will help to retain the skill of an expert medical doctor in case of any eventuality;
ii.
iii.
It can be useful in many hospitals, both private and government, cases where the expert
is not on seat;
iv.
2.
3.
4.
Time was
another important factor that limited the extent to which I want to research.
1.7
Definition of Terms/Variables
Medical:
Malaria: An infectious disease caused by a parasite that is transmitted by the bite of infected
mosquitoes. Common in tropical countries, the disease is characterized by recurring chills and
fever.
Typhoid:
caused by ingesting food or water contaminated with the bacillus Salmonella typhoid.
Communicable: A communicable disease that can be passed from one person
Expert: somebody with a great deal of knowledge, skill, training, or experience in a particular
field or activity eg a medical expert
Knowledge-based: Information system that store wealth of ones knowledge
Symptoms: Signs of an ill health
CHAPTER TWO
2.0 LITERATURE REVIEW
2.1 Overview of Expert System
According to Omenyi A.S,(1995),The most common form of expert system is a computer
program, with a set of rules that analyzes information (usually supplied by the user of the
5
system) about a specific class of problems, and recommends one or more courses of user action.
The expert system may also provide mathematical analysis of the problem(s). The expert system
utilizes what appears to be reasoning capabilities to reach conclusions.
A related term is wizard. A wizard is an interactive computer program that helps a user solves a
problem. Originally the term wizard was used for programs that construct a database search
query based on criteria supplied by the user. However, some rule-based expert systems are also
called wizards. Other "Wizards" are a sequence of online forms that guide users through a series
of choices, such as the ones which manage the installation of new software on computers, and
these are not expert systems. Nissanoff, Daniel (2006).
2.2
Jess - Java Expert System Shell. A CLIPS engine implemented in Java used in the
development of expert systems
LogicNets - Web based expert system modeling environment to create expert systems (in
collaboration with NASA)
Mycin - Diagnose infectious blood diseases and recommend antibiotics (by Stanford
University)
2.3
Successful examples of rule processing techniques are forward chaining and backward chaining
French,C.S(1993).
2.4.
End user
The end-user usually sees an expert system through an interactive dialog, an example of which
follows:
7
Another major distinction between expert systems and traditional systems is illustrated by the
following answer given by the system when the user answers a question with another question,
"Why", as occurred in the above example. The answer is:
A. I am trying to determine the type of restaurant to suggest. So far Chinese is not a likely
choice. It is possible that French is a likely choice. I know that if the diner is a wine
drinker, and the preferred wine is French, then there is strong evidence that the restaurant
choice should include French.
It is very difficult to implement a general explanation system (answering questions like "Why"
and "How") in a traditional computer program. An expert system can generate an explanation by
retracing the steps of its reasoning. The response of the expert system to the question WHY is an
exposure of the underlying knowledge structure. It is a rule; a set of antecedent conditions which,
8
if true, allow the assertion of a consequent. The rule references values, and tests them against
various constraints or asserts constraints onto them. This, in fact, is a significant part of the
knowledge structure. There are values, which may be associated with some organizing entity.
For example, the individual diner is an entity with various attributes (values) including whether
they drink wine and the kind of wine. There are also rules, which associate the currently known
values of some attributes with assertions that can be made about other attributes. It is the orderly
processing of these rules that dictates the dialog itself.
2.5 Expert systems versus problem-solving systems
According to Nadler Ed,(1984).The principal distinction between expert systems and traditional
problem solving programs is the way in which the problem related expertise is coded. In
traditional applications, problem expertise is encoded in both program and data structures.
In the expert system approach all of the problem related expertise is encoded in data structures
only; none is in programs. This organization has several benefits.
An example may help contrast the traditional problem solving program with the expert system
approach. The example is the problem of tax advice. In the traditional approach data structures
describe the taxpayer and tax tables, and a program in which there are statements representing an
expert tax consultant's knowledge, such as statements which relate information about the
taxpayer to tax table choices. It is this representation of the tax expert's knowledge that is
difficult for the tax expert to understand or modify.
In the expert system approach, the information about taxpayers and tax computations is again
found in data structures, but now the knowledge describing the relationships between them is
encoded in data structures as well. The programs of an expert system are independent of the
problem domain (taxes) and serve to process the data structures without regard to the nature of
the problem area they describe. For example, there are programs to acquire the described data
values through user interaction, programs to represent and process special organizations of
description, and programs to process the declarations that represent semantic relationships within
the problem domain and an algorithm to control the processing sequence and focus.
The general architecture of an expert system involves two principal components: a problem
dependent set of data declarations called the knowledge base or rule base, and a problem
independent (although highly data structure dependent) program which is called the inference
sengine.
2.6 Individuals involved with expert systems
There are generally three individuals having an interaction with expert systems. Primary among
these is the end-user; the individual who uses the system for its problem solving assistance. In
the building and maintenance of the system there are two other roles: the problem domain expert
who builds and supplies the knowledge base providing the domain expertise, and a knowledge
engineer who assists the experts in determining the representation of their knowledge, enters this
knowledge into an explanation module and who defines the inference technique required to
obtain useful problem solving activity. Usually, the knowledge engineer will represent the
problem solving activity in the form of rules which is referred to as a rule-based expert system.
When these rules are created from the domain expertise, the knowledge base stores the rules of
the expert system.
10
successful expert system depends on a series of technical procedures and development that may
be designed by certain technicians and related experts.
A good example of application of expert systems in banking area is expert systems for
mortgages. Loan departments are interested in expert systems for mortgages because of the
growing cost of labour which makes the handling and acceptance of relatively small loans less
profitable. They also see in the application of expert systems a possibility for standardized,
efficient handling of mortgage loan, and appreciate that for the acceptance of mortgages there are
hard and fast rules which do not always exist with other types of loans.
While expert systems have distinguished themselves in AI research in finding practical
application, their application has been limited. Expert systems are notoriously narrow in their
domain of knowledgeas an amusing example, a researcher used the "skin disease" expert
system to diagnose his rust bucket car as likely to have developed measlesand the systems
were thus prone to making errors that humans would easily spot. Additionally, once some of the
mystique had worn off, most programmers realized that simple expert systems were essentially
just slightly more elaborate versions of the decision logic they had already been using. Therefore,
some of the techniques of expert systems can now be found in most complex programs without
any fuss about them.Popoola, S o,(2000).
An example, and a good demonstration of the limitations of, an expert system used by many
people is the Microsoft Windows operating system troubleshooting software located in the "help"
section in the taskbar menu. Obtaining expert / technical operating system support is often
difficult for individuals not closely involved with the development of the operating system.
Microsoft has designed their expert system to provide solutions, advice, and suggestions to
common errors encountered throughout using the operating systems.
Another 1970s and 1980s application of expert systems which we today would simply call AI
was in computer games. For example, the computer baseball games Earl Weaver Baseball and
Tony La Russa Baseball each had highly detailed simulations of the game strategies of those two
baseball managers. When a human played the game against the computer, the computer queried
the Earl Weaver or Tony La Russa Expert System for a decision on what strategy to follow. Even
11
those choices where some randomness was part of the natural system (such as when to throw a
surprise pitch-out to try to trick a runner trying to steal a base) were decided based on
probabilities supplied by Weaver or La Russa. Today we would simply say that "the game's AI
provided the opposing manager's strategy."
2.8
2.8.1
Advantages:
Provides consistent answers for repetitive decisions, processes and tasks
2.8.2
Disadvantages:
Lacks common sense needed in some decision making
Domain experts not always able to explain their logic and reasoning
Errors may occur in the knowledge base, and lead to wrong decisions
that. Generally, expert systems are used for problems for which there is no single "correct"
solution which can be encoded in a conventional algorithm one would not write an expert
system to find shortest paths through graphs, or sort data, as there are simply easier ways to do
these tasks.
1.
Simple systems use simple true/false logic to evaluate data. more sophisticated systems
are capable of performing at least some evaluation, taking into account real-world uncertainties,
using such methods as fuzzy logic. Such sophistication is difficult to develop and still highly
imperfect.
13
CHAPTER THREE
3.0 RESEARCH METHODOLGYAND SYSTEM ANALYSIS
3.1 SYSTEM DESIGN
The concept research design is simply referred to the specification of the relevant procedures for
collection and analysis of information (data) which would help solve the research problem at
hand.
3.2 Facts Finding Methods
This project was achieved by gathering materials from different sources. One of the invaluable
sources of data was oral interview, which I conducted with staff of Kisii Level 6 Hospital. I had
some time with doctors and nurses, who assisted me by providing some key technical facts,
especially on issues that border around treatment of some common diseases.
Another source that gave me a wealth of information was the internet, which provided some of
the details used to analyze some key issues. Several web sites were willing to let go vital
information on medical disease diagnosis.
The state and federal library were also resourceful in these achievements.
3.3 Objective of the Existing System
The main objective of the existing system was to be able to determine the level at which a
particular disease has grown in a patient, especially malaria and typhoid. Other objectives
include the following:
1.
2.
3.
To provide useful information that will help the doctor make some critical decision
Patient
Obtains a
card
Submits
Completed
Examination
Form
Desk
Officer
Create
Folder
Lab
Scientist
Examinatio
n
Recomends Lab
test
Duty
Nurse
Submits Lab
Result
Submits
Booking
Medical
Doctor
15
Fig. 3.3 Information Flow Diagram
In view of the problems inherent in the existing system, it is important to seek for an
improvement. This improvement is computerization of the diagnosis system. This new system
will be equipped with the following advantages:
1. Proper backup of the knowledge of the human expert
2. Elimination of possible human error, since several experts are involved in the design of
such system
3. Distance and accessibility is not a problem
4. The machine does not die
5. The machine is always there to render services
6. Medical history can always be stored and retrieved with ease.
16
17