Expert System Implementation for the Diagnosis of Skin Diseases
Using Forward Chaining Method
Cindy Pamela Cornelia Munaiseche, Julyeta Paulina Amelia Runtuwene, Vivi Peggie Rantung,
Gladly Caren Rorimpandey, Ferdinan Ivan Sangkop, and Parabelem Tinno Dolf Rompas
Department of Informatics, Universitas Negeri Manado, Tondano 95618, North Sulawesi, Indonesia
Keywords: Expert system, inference, forward chaining, skin disease, black box testing
Abstract: Expert system is a system that is trying to adopt human knowledge into a computer, so that the computer
can resolve the issue as was done by experts. The purpose of this study to design an application of expert
system for diagnosis the human skin diseases by using forward chaining method as one of inference
technique that aims to discover symptoms of the disease that is displayed in the form of questions. The skin
organ chosen because in the interaction between humans, skin is the first organ that used to shake hands,
touch, kiss, etc, so that some diseases can be transmitted only through touch or by interaction of skin with
skin, and many cases of skin diseases that resulted in death due to delayed handled. The expert system
application design consists of seven stages: preliminary studies, data collection, data analysis, system
design, system implementation, system evaluation (testing) and the last, drawing conclusions. Expert system
software application built to recognize the type of skin disease after consultation by answering a few
questions displayed by the system, and can infer the type of skin diseases suffered by the patient. Based on
the results of black box testing, the expert system application has been running with good.
1 INTRODUCTION
Expert system is a software designed specifically
based on Artificial Intelligence, where the system
seeks to adopt human knowledge to the computer so
that the computer can solve a particular problem by
imitating the work of the experts. Expert systems
development requires knowledge acquisition from
people, involving both knowledge engineers and
application domain experts in specialist
interactions with computing systems. Expert
systems may be used to provide support and
advice to a user of any complex information
system and hence to improve the human-computer
interface (Brian, 2010).
One of the medical problems occurring recently
is the imbalance between the number of patient and
the number doctor. Limitations of an expert (doctor)
sometimes become an obstacle for people who will
consult to get the best treatment solution associated
with the disease suffered. In addition, most people
are not trained medically so they do not know what
to do when they experience symptoms of illness. It
is unfortunate when the symptoms which can
actually be dealt with early develop into a more
serious disease due to lack of knowledge. People can
obtain knowledge about health from books or
internet sites. However, it is not easy to learn that
way because it takes a long time. In addition, these
sources cannot diagnose types of diseases as the
doctors do. In this case, expert system is presented
as an alternative in solving the problem.
There are different areas in medicine where an
expert system has been designed and implemented to
profers solution to health status stability in human.
Among these diverse areas includes an expert
system for Eye, Skin, Pregnancy, Blood Disorder
and several other human diseases. In previous study,
Gudu et al (2012) in their research for expert system
to diagnosis and treat hypertension in pregnancy
stated that the diagnostic and treatment expert
system for hypertension in pregnancy has so far
remained at the testing phase of its life cycle and is
yet to be implemented. Ayangbekun et al (2014)
develop an expert system for diagnosis of blood
disorder. There were two hospital which was taken
as the case study of the research. The information
was gathered from the hematology department and
Munaiseche, C., Amel, J., Rantung, V., Rorimpandey, G., Sangkop, F. and Rompas, P.
Expert System Implementation for the Diagnosis of Skin Diseases using Forward Chaining Method.
DOI: 10.5220/0009009902870291
In Proceedings of the 7th Engineering International Conference on Education, Concept and Application on Green Technology (EIC 2018), pages 287-291
ISBN: 978-989-758-411-4
Copyright
c
2020 by SCITEPRESS Science and Technology Publications, Lda. All rights reserved
287
the blood department of the two hospitals
respectively. The information gotten was analyzed
and manipulated based on the symptoms and causes
of the blood disorders and then turned into rules for
easy programming into the computer. In addition,
Ayangbekun et al (2015) also developed an expert
system for diagnosing brain diseases, using the
C#.NET programming language and Microsoft SQL
Server 2012 served as the RDBMS. From the study,
this application serves as a model tool that will
enable hospitals to effectively monitor patients
medical records without ambiguity.
The skin is the sense of touch and the widest
organ making up the human body which is located at
the outermost and covers the entire surface of the
body. Because of its outer location, the skin first
receives stimuli such as touch, pain, or bad
influences from outside. In interaction between
humans, the skin is the first organ used to shake
hands, touch, kiss, etc. while some diseases can be
transmitted only through touch, or the interaction of
skin with skin, or through the used media (towels,
clothes, jackets, handkerchiefs , etc.) by people who
have infectious skin diseases. Maybe many people
consider skin diseases to be trivial, but actually these
skin diseases can be very dangerous if they are not
handled. In fact, not a few cases of skin disease that
resulted in death due to delayed handled,
This study aimed to design an expert system
application for diagnosis skin diseases using forward
chaining and analyze the software functionality
requirements through blackbox testing. The scope of
the study is extended to 15 types of skin diseases
with 54 symptoms of the disease, arranged in 15
rules that were called the Rule-Based System.
The main contribution is the experts system for
diagnosing skin disease has become an expert
knowledge sharing tool to be used by other medical
personnel who are not specialists in diagnosis of
skin diseases, specially for hospitals that do not have
a dermatologist. The research’s novelty is the expert
system based on web and user friendly so that can be
accessed by everyone wherever and whenever easily
and using PHP programming language and MySQL
as the Relational Database Management System
(RDBMS). The advantage of this research, as a
guide for the patient in taking initial action if they
know the possibility of suffering skin disease (early
detection).
2 LITERATURE REVIEW
Expert system is a piece of software programmed
using Artificial Intelligence (AI) 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
(Munaiseche et al., 2016). An expert system is a
system that employs human knowledge captured in a
computer to solve problems that ordinarily require
human expertise. Expert system seeks and utilizes
relevant information from their human users and
from available knowledge bases in order to make
recommendations. With the expert system, the user
can interact with a computer to solve a certain
problem. This can occur because the expert system
can store heuristic knowledge. Generally to develop
an expert system, a rule based method is required to
analyze and compute the knowledge base (Patra et.
al., 2010).
2.1 System Architecture
Expert system consists of domain expert, designer,
inference engine, knowledge base, user interface and
user. There is relationship between these
subdivisions which makes it expert system. The
domain expert is connected to the knowledge base in
order to give rules and fact. The domain experts are
normally the expert in the body or field. The
knowledge base stores the rule and fact collected.
The knowledge base is also connected to inference
engine in which is used to process the rule to deduce
another set of rule or fact.
The inference engine is normally designed by the
programmer or designer. The inference engine is
then connected to the user interface in which is used
to collect data from the users. This is also developed
by the designer. This trend can also be followed
backward. The user interface gives information to
the inference engine and the knowledge base for
user data to be processed. Also for the knowledge
base update, a need to contact the domain expert is
needed. All this can be represented below (Figure 1).
User
User
Interface
Inference
Engine
Knowledge
base
Domain
Expert
Description of
new cases
Advice and
Explanation
EXPERT SYSTEM
Figure 1: Expert system architecture (Ayangbekun, 2015)
EIC 2018 - The 7th Engineering International Conference (EIC), Engineering International Conference on Education, Concept and
Application on Green Technology
288
2.2 Medical Knowledge
The medical knowledge of specialized doctor is
required for the development of an expert system.
This knowledge is collected in two phases. In the
first phase, the medical background of skin diseases
is recorded through the creation of personal
interview with doctors and patients. In the second
phase, a set of rules is created where each rule
contains in IF part that has the symptoms and in
THEN part that has the disease that should be
realized. The inference engine (forward chaining) is
a mechanism through which rules are selected to be
fired. It is based on a pattern matching algorithm
whose main purpose is to associate the facts (input
data) with applicable rules from the rule base. The
search is done by using rules whose premise
matches the known facts to gain new facts and
continue the process until the goal is reached or until
there is no more rules whose premises match the
known facts as well as the facts obtained. Finally,
the skin diseases are produced by the inference
engine.
3 RESEARCH METHOD
This document was research procedures consist of:
preliminary study, data collection, data analysis,
system design, system implementation, system
evaluation, and drawing conclusion (Munaiseche et
al., 2018)
Preliminary Study. At this stage, the authors
collected information, study materials and data
sources related to expert systems, forward chaining
methods, rule-based reasoning, the types of skin
diseases in humans, symptoms of skin diseases and
treatment or preventive solutions.
Data Collection. Data sources used in expert
systems to diagnose skin diseases in humans include
data of the skin disease type, skin disease symptoms,
disease information and solutions provided. The data
required in this study were obtained from Literature
Study and Consultation/interview with experts, in
this case dermatologist.
Data Analysis. Based on the collected data, the
researcher conducted following analysis steps: 1)
Made a list and coded eye diseases along with
symptoms. This expert system software can
diagnose 15 types of eye diseases with 54 symptoms
of the disease; 2) Made Rule-Based System. In order
to recognize the type of skin disease, rules in expert
system tracing are required. There are 15 Rules and
a forward chaining hierarchy called the Rule-Based
System.
System Design. The design of this system
includes design process described by using decision
tree, context diagram explaining the relationship
between input / output between system with outer
world, data flow diagram (DFD), the design of the
database and user interface.
System Implementation. The activitiy
performed at this stage was the programming or
coding. This stage was the translation of the design
into the form of computer programming language.
This research employed PHP programming
language.
Preliminary Study
1. Forward Chaining Method
2. Rule-based Reasoning
3. Types, symptoms of skin diseases and
treatment or preventive solution
Data Collection
Literature Study
Data of types and symptoms of skin disease
and treatment or preventive solution
Interview with Expert
(Dermatologist)
Data Analysis
1. Giving code the types and symptoms of each skin desease
2. Creating a Knowledge Table
3. Creating a Rule-Based System (Knowledge Represenation)
System Design
1. Process design (Decision Tree)
2. Context and Data Flow Diagram
3. Database design
Conclusions
System Implementation
Programming/Coding (PHP and MySQL)
System Evaluation (Black Box Testing)
Figure 2: Research procedures
System Evaluation. The evaluation of this
expert system uses black box testing. This
evaluation aims to find out a function erroron the
software that has been built. In addition, this test was
carried out by trying all the possibilities that
happened and done repeatedly. If the test found an
error, it will be traced and corrected all errors that
occur.
Expert System Implementation for the Diagnosis of Skin Diseases using Forward Chaining Method
289
Conclusion. A conclusion will be drawn from
the results of these evaluations based on the results
of testing (black box testing) of the expert system.
The research prossedure is shown in Figure 2.
4 RESULT AND DISCUSSION
4.1 Result
This research results in a web-based expert system
that can recognize the type of skin disease in humans
based on the symptoms experienced by patients.
This system performs analysis based on the
dialogue between the system with the user/patient.
The web-based expert system of skin disease
diagnosis is designed by using PHP programming
language and MySQL for database processing. Some
interfaces from the skin disease diagnosis expert
system are shown in Figure 3 and Figure 4.
Figure 3: The main page interface (home menu)
The main page interface of the application
(Figure 3) consist of five Menus (Home, Daftar
Penyakit, Konsultasi, Login Pakar and Kontak).
Figure 4: Interface of admin menu
Interface of admin page (Figure 4) consist of
eight menus (Input Penyakit, Input Gejala, Input
Relasi, Ubah Penyakit, Ubah Gejala, Laporan
Penyakit, Laporan Gejala dan Logout).
4.2 Discussion
Testing is an important part of a software
development. Testing is intended to find errors on
the system and ensure that the system built is in
accordance with what is pre-planned. Tests are
carried out to ensure quality and also find out the
weaknesses of the software. The purpose of this test
is to ensure that the software built has quality
reliable, namely being able to present the principal
studies of the analysis specifications, design and
coding of the software itself.
Tests performed on the functionality of this
software use the Black Box method. This test is a
test that focuses on the functional requirements of
software. The purpose of testing with the Black Box
method is to find malfunctions in the software that
has been built. In addition, this test is done by trying
all the possibilities that occur and are done
repeatedly. If an error is found in the test, a search
and repair will be carried out to correct the error.
Blackbox testing includes: expert login testing,
data filling, expert consultation and testing of system
diagnostic results, which are made in several test
scenarios. Based on the results of black box testing,
the expert system application has been running with
good. However, it does not rule out the possibility of
errors when the application is used in a real
environment. In addition, the software built is free of
syntax errors and according to expected
functionality.
5 CONCLUSIONS
From this study some conclusions can be drawn,
namely:
1. Build an expert system applications to diagnose
skin diseases in humans can use the search
process with the forward chaining as a inference
method.
2. Patients can immediately consult a software
system without having to consult with a expert
(dermatologist) on condition that they have to
register as a patient first.
3. The system can only diagnose one patient in
consultation and can only recognize and
EIC 2018 - The 7th Engineering International Conference (EIC), Engineering International Conference on Education, Concept and
Application on Green Technology
290
diagnose the type of skin disease in the truth
table of the disease.
4. Admin can manipulate data rules or rules.
5. Based on the results of black box testing that has
been done, it can concluded that this application
that has been built has been running with good.
However, it does not rule out the possibility of
errors when the application is used in a real
environment.
REFERENCES
Brian, R., Gaines, 2010. Designing Expert System for
Usability, Available from:
http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.
1.1.414.583&rep=rep1&type=pdf
Gudu, J., Gichoya, D., Nyongesa, P., Muumbo, A., 2012.
Development of a Medical Expert System as an Expert
Knowledge Sharing Tool on Diagnosis and Treatment
of Hypertension in Pregnancy. Int. J. of Bioscience,
Biochemisry and Bioinformatic, Vol 2(5) pp. 297-300
Ayangbekun, O. J., Olatunde, A. Ii., Bankole, F. O., 2014.
An Expert System for Diagnosis of Blood Disorder,
Int. J. of Comp. Applic. (ISSN: 0975-8887), Vol 100,
pp 36-40
Ayangbekun O. J., Jimoh I. A., 2015. Expert System for
Diagnosis Neurodegenerative Diseases. Int. J. of
Comp. and Inf. Technol., Vol 04, pp. 694-698
Munaiseche, C. P. C., Liando O. E. S., 2016. Evaluation of
Expert System Application Based On Usability
Aspects. IOP Conference Series: Materials Science
and Engineering, Vol 128, pp 1-10
Patra, P. S. K., Sahu, D. P., Mandal I., 2010. An Expert
System for Diagnosis of Human Diseases. Int. J. of
Comp. Applications, Vol 1(13), pp 71-73
Munaiseche, C. P. C., Kaparang, D. R., Rompas, P. T. D.,
2018. An Expert System for Diagnosing Eye Diseases
using Forward Chaining Method. IOP Conference
Series: Materials Science and Engineering, Vol
306(1), pp 1-10
Expert System Implementation for the Diagnosis of Skin Diseases using Forward Chaining Method
291