Expert Systems & Database Systems
by A. Morsy, Ph.D.
Presented in a United Nations Seminar in Egypt.
Expert Systems Definition
Expert Systems (ES) are computer programs that use knowledge,
facts, and reasoning techniques to solve problems that normally
require the abilities of human experts.
Expert Systems Goals
Help human experts and train new experts
Assimilate knowledge and experience of several human experts
Provide expertise where scarce human expertise is unavailable.
Expert Systems Development
Expert Systems developed in the 1960s and 1970s were typically
written on a mainframe computer in programming languages based
on List Processing (LISP). Evolving from university research
laboratories, they were limited to the applications developed by
these research sites. Most of these expert systems were not
intended for commercial use. They incorporated the specific
knowledge of the experts about the problem area, termed "domain
knowledge", problem-solving heuristics (rules of thumb) and
inferencing capabilities, and an interface mechanism between the
user and the system.
Examples of the early systems
Stanford University's MYCIN, which diagnosed bacteremia
meningitis.
MACSYMA, was developed at the Massachusetts Institute of
Technology (MIT) for solving complex mathematical problems.
The University of Pittsburgh's INTERNIST/CADUCEUS, which
aided internal medicine diagnosis and decision-making.
Expert Systems Components
Researchers at Stanford University realized that MYCIN consisted of
three distinct parts, which can be visualized as a set of concentric
circles, or as a seed:
1. At the kernel of the seed is a Knowledge Base, which
contains the domain specific knowledge.
2. Outside that is the Inference Engine, the part which
contains the inferencing capabilities, problem-solving
heuristics, and control strategies.
3. Finally, the expert system is surrounded by the end
user System Interface.
By removing the domain-specific knowledge, and by adding tools
for managing knowledge sets (such as rule editors and tracers), the
scientists created a general-purpose tool for developing expert
systems, now called "Shell".
Expert System Shells
It was not until the 1980's that commercial shells were introduced
for a variety of classes of computers. Some of the more popular
shells are: lst-Class, ADS, ART, CRYSTAL, EXSYS, GoldWorks, Guru,
Level 5, Nexpert Object, KDS, KES, M.1, Personal Consultant, S.1,
TIMM, and VP Expert.
These packages not only provide the necessary tools for developing
an expert system such as the user-system interface, inference
mechanism, rule editor, and code optimizer, but can generally be
run on micro-computers in addition to mini-computers and
mainframes, are reasonably priced, and provide powerful features
without requiring an individual to learn the mechanics of an
Artificial Intelligence language or purchase specialized hardware.
With the development and widespread use of shells, the range of
expert systems applications has increased. Their introduction
played a major role in expanding expert system applications into
areas such as management, finance, office automation, computer
networking, legal processes, manufacturing, equipment training,
personnel training, education, transportation, oil and geology,
science and medicine, and agriculture.
Elements of Creating Expert Systems
1. Knowledge Acquisition: The approach used to elicit the rules
from the experts or from a set of representative examples of
good decision making.
2. Inference: The strategies and procedures for deriving a
conclusion or conclusions from a knowledge base.
3. Validitation: The procedures and guidelines by which one
may determine the integrity and evaluate the performance of
an expert system.
4. Implementation: The guidelines for implementation, control,
monitoring, and maintenance of a completed expert system.
5. Staffing and Training: A set of guidelines and suggestions for
the selection, education, and training of the knowledge
engineers, and the role and placement of the knowledge
engineers within the organization.
Suitability for the Task
There are various reasons why expert systems are suitable for
adaptation in developing countries and even in rural or remote
areas of developing countries and by less experienced computer
users, these reasons include the following:
1. ES have been tried and proven and there are several
successful ES in use in many developing countries
2. There is a variety of relatively inexpensive, off-the-
shelf expert system development packages
3. ES run on the existing and largely growing micro-
computer systems that are widely available and
relatively inexpensive
4. Small and simple ES can be extremely useful in
assisting local decision makers in making the best
choices among alternatives
5. ES are needed where there is a thin layer of expertise
at the top, a large unskilled labor force at the bottom,
and a thin layer of technicians in the middle of the
organization. Especially where accessibility to expertise
is more difficult.
6. The potential of ES to capture the relatively simple
levels of expertise is of far greater use in local
communities as ES allow less well-trained persons to
perform technical tasks assisted by an ES.
Human Experts and Computer Expert Systems
An argument could be made that Computer Expert Systems are
superior to Human Experts, because human experts:
1. May retire or join another organization
2. Can only be in one place at any one time
3. Their skills may diminish with time or illness and they
may be burnt-out
4. Their performance may be severely impacted by
emotions
5. They may become too easily distracted and, as a
result, may miss the occurrence of a critical event
6. They require considerable time in training and at the
conclusion of such training, they may not be equally
proficient, although identically trained
7. They typically become overwhelmed by too much data
8. They may find it particularly difficult to consider
interactions in complex situations and such interactions
typically play a major role in real-world situations
9. They may make errors, forget, get board, get tired, or
be biases.
Computer Expert Systems have an advantage over Human Experts
regarding all the above aspects, that is not meant to suggest the
insignificance of human experts, only to illustrate the advantages
that ES have over human experts, after all, it is the human experts
that create, maintain, and update ES.
Expert Systems and Database Systems
In order to illustrate the main differences between each of these two
systems, let us review the definition, goals, and components of each:
A Database Management System is the collection of hardware
and software that organizes and provides access to a database.
The computer program provides the mechanisms needed to
create a computerized database file, to alter data in the file, to
organize data within the file, to search for data in the file, and so
forth. In other words, it manages data.
An Expert System -on the other hand- is the methods and
techniques used for constructing human-machine systems with
specialized problem solving expertise. The pursuit of this area of
artificial intelligence has emphasized the knowledge that
underlies human expertise and has simultaneously decreased the
apparent significance of domain-independent problem solving
theory. Ultimately an Exert System assists or replaces an expert
in order to solve problems or recommend alternative solutions.
Thank you.