Download as pdf or txt
Download as pdf or txt
You are on page 1of 17

Home 

 »  GENERAL TECHNICAL PAPERS • TECHNICAL PAPERS   »   Artificial


Intelligence and Expert System

Artificial Intelligence and Expert


System
By Ravi Bandakkanavar | May 23, 2018 4 Comments

Artificial intelligence (AI) is the intelligence of machines


and the branch of computer science that aims to create it.
According to Textbooks, Artificial Intelligence is “the study
and design of intelligent agents, where an intelligent
agent is a system that perceives its environment and takes
actions that maximize its chances of success”.

Artificial intelligence has been the subject of optimism, but


has also suffered setbacks and, today has become an
essential part of the technology industry, providing the
heavy lifting for many of the most difficult problems in
computer science.  All research is highly technical and
specialized, deeply divided into subfields that often fail to
communicate with each other  Subfields have grown up
around particular institutions, the work of individual
researchers, the solution of specific problems,
longstanding differences of opinion about how AI should
be done and the application of widely differing tools.

The use of Artificial Intelligence methods is becoming


increasingly common in the modeling and forecasting of
hydrological and water resource processes. Artificial
intelligence (AI) is the field of scientific inquiry concerned
with designing mechanical systems that can simulate
human mental processes. The field draws upon theoretical
constructs from a wide variety of disciplines, including
mathematics, psychology, linguistics, neurophysiology,
computer science, and electronic engineering.

Some of the most promising developments to come out of


recent AI research are “expert” systems or computer
programs that simulate the problem-solving techniques of
human experts in a particular domain.

There is a class of computer programs, known as expert


systems that aim to mimic human reasoning. The methods
and techniques used to build these programs are the
outcomes of efforts in a field of computer science known
as Artificial Intelligence (AI). Expert systems have been
built to diagnose disease (Pathfinder is an expert system
that assists surgical pathologists with the diagnosis of
lymph-node diseases, aid in the design chemical syntheses
(Example), the prospect for mineral deposits
(PROSPECTOR), translate natural languages, and solve the
complex mathematical problem (MACSYMA).

            Here are a few more examples from our day to day


life that use AI- Apple’s Siri, Samsung’s Bixby, Netflix
recommendation engine, games like call of duty, self-
driving cars, spam filtering engines, ride sharing in Uber,
speech and pattern recognition, etc.

Another prominent example of an AI-based machine is


Jarvis (not from Iron Man movie). Facebook’s CEO Mark
Zuckerberg has built Jarvis which is currently deployed in
his smart home. Jarvis is able to process language, control
sensors, doors, cameras, light and thermal controls and
perform face recognition.
INTRODUCTION:

         The term  Artificial Intelligence was coined by John


McCarthy,   in 1956, who defines it as “the science and
engineering of making intelligent machines.  The field was
founded on the claim that a central property of humans,
intelligence. The  sapience of  Homo sapiens can be so
precisely described that it can be simulated by a machine.
This raises philosophical issues about the nature of
the  mind and limits of scientific  hubris, issues which have
been addressed by  myth, fiction and  philosophy since
antiquity.

             Artificial Intelligence (AI) is the key technology in


many of today’s novel applications, ranging from banking
systems that detect attempted credit card fraud, to
telephone systems that understand speech, to software
systems that notice when you’re having problems and
offer appropriate advice. These technologies would not
exist today without the sustained federal support of
fundamental AI research over the past three decades.
Artificial Intelligence (AI) in the field of information
technology focused on creating machines that can
participate in behaviors that humans consider intelligent.
The possibility of intelligent machines to have human
curiosity since ancient times and today with the advent of
computer and 50 years of research into AI programming
techniques, the dream of smart machines is a reality.
Researchers create systems that can mimic human
thought, understand speech, then the best player chess
husband, and countless benefits not possible before.

This mainly concerned with one of the major branches of


AI, that is expert systems. Building an expert system is
known as knowledge engineering and its practitioners are
called  knowledge engineers. The knowledge engineer
must make sure that the computer has all the knowledge
needed to solve a problem. The knowledge engineer must
choose one or more forms in which to represent the
required knowledge as symbol patterns in the memory of
the computer – that is, he (or she) must choose
a knowledge representation. He must also ensure that the
computer can use the knowledge efficiently by selecting
from a handful of  reasoning methods. The practice of
knowledge engineering is described later. We first describe
the components of expert systems.

In conventional computer programs, problem-solving


knowledge is encoded in program logic and program-
resident data structures. Expert systems differ from
conventional programs both in the way problem
knowledge is stored and used. An expert system is a
computer program, with a set of rules encapsulating
knowledge about a particular problem domain (i.e.,
medicine, chemistry, finance, flight, etc). These rules
prescribe actions to take when certain conditions hold and
define the effect of the action on deductions or data. The
expert system, seemingly, uses reasoning capabilities to
reach conclusions or to perform analytical tasks. Expert
systems that record the knowledge needed to solve a
problem as a collection of rules stored in a knowledge-
based are called rule-based system

Expert systems are especially important to organizations


that rely on people who possess specialized knowledge of
some problem domain, especially if this knowledge and
experience cannot be easily transferred. Artificial
intelligence methods and techniques have been applied to
a broad range of problems and disciplines, some of which
are esoteric and others which are extremely practical.

Major Branches of AI :

Robotics: Mechanical and computer devices that


perform tedious tasks with high precision.
Vision system: Capture, store and manipulate the
visual images and pictures.
Natural language processing: Computer understands
and reacts to the command and statements to natural
language like English.
Learning system: Computer changes how it reacts or
functions to the feedback provided to it.
Neural system: Computer that can act like or simulate
the functioning of the brain.
Expert system: Programming computers to make
decisions in real life situations. (ex: expert system help
doctors in diagnosing the diseases)

Understanding Artificial Intelligence

Understanding Artificial Intelligence


Expert System Architecture

An expert system is, typically, composed of two major


components, the Knowledge-base, and the Expert System
Shell. The Knowledgebase is a collection of rules encoded
as metadata in a file system, or more often in a relational
database. The Expert System Shell is a problem-
independent component housing facilities for creating,
editing, and executing rules. A software architecture for an
expert system is illustrated in Figure 2.

Expert System
Architecture

The shell portion includes software modules whose


purpose it is to,

Process requests for service from system users and


application layer modules;
Support the creation and modification of business
rules by subject matter experts;
Translate business rules, created by a subject matter
experts, into machine-readable forms;
Execute business rules; and
Provide low-level support to expert system
components (e.g., retrieve metadata from and save
metadata to the knowledge base, build Abstract
Syntax Trees during rule translation of business rules,
etc.).
knowledge base, build Abstract Syntax Trees during
rule translation of business rules, etc.).

Client Interface

The Client Interface processes requests for service from


system-users and from application layer components.
Client Interface logic routes these requests to an
appropriate shell program unit. For example, when a
subject matter expert wishes to create or edit a rule, they
use the Client Interface to dispatch the Knowledge-base
Editor. Other service requests might schedule a rule, or a
group of rules, for execution by the Rule Engine.

Knowledge Base Editor

The Knowledge-base Editor is a simple text editor, a


graphical editor, or some hybrid of these two types. It
provides facilities that enable a subject matter expert to
compose and add rules to the Knowledge-base.

Rule Translator

Rules, as they are composed by subject matter experts, are


not directly executable. They must first be converted from
their human-readable form into a form that can be
interpreted by the Rule Engine. Converting rules from one
form to another is a function performed by the Rule
Translator.

The translation of rules in their original form to a machine-


readable form requires parsing the textual representation
to obtain a data structure referred to as an Abstract Syntax
Tree (AST). The AST representation of rules is the memory-
resident data structure that guides the execution of the
inference engine when it comes time to apply a rule. The
AST is an abstract data type designed to make its
interpretation by the Rule Engine simple and efficient. This
abstract data type is very expressive and permits the
construction of very complex and powerful rules. There is a
third form in which rules may be expressed. A rule AST is
converted into an equivalent form suitable for storage in
the Knowledge-base. The way in which this information
appears in the Knowledge-base depends on storage
technology.

To make these ideas concrete, consider the arithmetic


expression,

(a-b) / [x*(c-d)] ,

that might form some part of a rule. In the AST


representation, this portion of the rule would be
expressed as a binary tree, like the one in Figure 4, whose
nodes are either arithmetic operators or operands.

Abstract Syntax Tree

Abstract Syntax Tree

Once created, AST representations are converted into rule


metadata and stored in the Knowledge-base. Rule
metadata is simply a compact representation of ASTs.

In translating rules from one form to another, the


structure of the original rule is never lost. It is always
possible to recreate a human-readable rule, exactly, from
its Knowledge-base representation or from its AST
representation.

Rule Engine

The Rule Engine (often referred to as an inference engine


in AI literature) is responsible for executing Knowledge-
base rules. It retrieves rules from the Knowledge-base,
converts them to ASTs, and then provides them to its rule
interpreter for execution. The Rule Engine interpreter
traverses the AST, executing actions specified in the rule
along the way. This process is depicted in Figure 6.

Rule Object Classes

The shell component, Rule Object Classes, is a container


for object classes supporting,

Rule editing;
AST construction;
Conversion of ASTs to rule metadata;
Conversion of rule metadata to ASTs; and
Knowledge-base operations (query, update, insert,
delete).

Constructing an Expert System

The construction of an expert system is less challenging


than one might think, given the almost magical powers
attributed to this class of programs. The task is made
easier because,

Large portions of the Rule Translator can be


generated automatically using lexical analyzer and
parser generators, and
Text editors (e.g., TextPad) can be purchased,
inexpensively, and integrated into the Expert System
Shell.

The design and the construction of the expert system


involve the four major steps depicted below Figure.

Construction steps of an
Expert System

Advantages

Smarter artificial intelligence may replace human jobs,


freeing people for other pursuits by automating
manufacturing and transportation.
Self-modifying, self-writing and learning software can
relieve programmers of the burdensome tasks of
specifying the functions of different programs.
Artificial intelligence will be used as cheap labor, thus
increasing profits for the corporation.
Artificial intelligence can make deployment easier and
less resource intensive
Compared to traditional programming techniques,
expert-system approaches provide the added
flexibility (and hence easier modifiability) with the
ability to model rules as data rather than as a code. In
situations where an organization’s IT department is
overwhelmed by a software-development backlog,
rule-engines, by facilitating turnaround, provide a
means that can allow organizations to adapt more
readily to changing needs.
In practice, modern expert-system technology is
employed as an adjunct to traditional programming
techniques, and this hybrid approach allows the
combination of the strengths of both approaches.
Thus, rule engines allow control through programs
(and user interfaces) written in a traditional language
and also incorporate necessary functionality such as
interoperability with existing database technology.

Disadvantages

Rapid advances in AI could lead to massive structural


unemployment.
Unpredictable and unforeseen impacts of new
features.
An expert system or rule-based approach is not
optimal for all problems, and considerable knowledge
is required so as to not misapply the systems.
Ease of rule creation and rule modification can be
double-edged. A system can be sabotaged by a non-
knowledgeable user who can easily add worthless
rules or rules that conflict with existing ones. Reasons
for the failure of many systems include the absence of
(or neglect to employ diligently) facilities for system
audit, detection of possible conflict, and rule lifecycle
management (e.g. version control, or through testing
before deployment). The problems to be addressed
here are as much technological as organizational.

Applications:

Introduction to Machine Learning Approaches


Fuzzy Logic Improves Decision Support Software
Shell Programming in Expert Systems Applications
Smart Home Appliances for Better Quality of Life –
Combining artificial intelligence with home
automation in smart home appliances results in an
improved quality of life for many, including the elderly
and disabled.
Voice Recognition Software for Disabled Students –
Disabled students are often at a disadvantage in the
classroom. Voice recognition software improves
communication, enables note-taking, and increases
participation.
Teaching Special Needs Children with Autism – Robots
are acting as therapy assistants to help parents and
therapists in teaching special needs children with
autism.

Scope of expert systems


An expert system is able to do the work of a
professional. Moreover, a computer system can be
trained quickly, has virtually no operating cost, never
forgets what it learns, never calls in sick, retires, or
goes on vacation. Beyond those, intelligent computers
can consider a large amount of information that may
not be considered by humans.
But to what extent should these systems replace
human experts? Or, should they at all? For
example, some people once considered an
intelligent computer as a possible substitute for
human control over nuclear weapons, citing that
a computer could respond more quickly to a
threat. And many AI developers were afraid of
the possibility of programs like Eliza, the
psychiatrist, and the bond that humans were
making with the computer. We cannot, however,
overlook the benefits of having a computer
expert. Forecasting the weather, for example,
relies on many variables, and a computer expert
can more accurately pool all of its knowledge.
Still, a computer cannot rely on the hunches of a
human expert, which are sometimes necessary
for predicting an outcome.
In conclusion, in some fields such as forecasting
the weather or finding bugs in computer
software, expert systems are sometimes more
accurate than humans. But for other fields, such
as medicine, computers aiding doctors will be
beneficial, but the human doctor should not be
replaced. Expert systems have the power and
range to aid to benefit, and in some cases replace
humans, and computer experts, if used with
discretion, will benefit humankind.

FUTURE

According to many experts, faster than the majority of us


think or are prepared for.  “we will have both the hardware
and the software to achieve human-level artificial
intelligence with the broad suppleness of human
intelligence including our emotional intelligence by 2029.”
If that sounds like something from a scary movie
(“Terminator” may come to mind). It’s not to worry, such
super machines will also have morals and respect us as
their creators (the people in scary movies rarely think that
anything bad will happen to them either). He also believes
that humans themselves will be smarter, healthier, and
more capable in the near future by merging with our
technology. For example, tiny robots implanted in our
brains will work directly with our neurons to make us
smarter (this may call to mind some other movies). AI
began as an attempt to answer some of the most
fundamental questions about human existence by
understanding the nature of intelligence, but it has grown
into a scientific and technological field affecting many
aspects of commerce and society. Even as AI technology
becomes integrated into the fabric of everyday life, AI
researchers remain focused on the grand challenges of
automating intelligence. Work is progressing on
developing systems that converse in natural language, that
perceive and respond to their surroundings, and that
encode and provide useful access to all of human
knowledge and expertise.

Conclusion
         It’s now the time to sit and think upon for the future
of artificial intelligence in expert systems whether as to go
with traditional technologies or to adopt the science of
artificial intelligence. The overall motivation behind this
paper is to modernize our ancestral methods so as to bring
in a rapid change in the growth of highly developed expert
systems so as to cater to the needs of a growing
population. The development process may be incremental
but the overall concept requires a paradigm shift in the
way we think about the modernization of production that
is based more on needs and novel ways of meeting them
rather than modifying existing techniques.

GENERAL TECHNICAL PAPERS TECHNICAL PAPERS

Advancements in technology New Trends in Research and Technology

Research topics in Science and Technology

Author: Ravi Bandakkanavar    


A Techie, Blogger, Web Designer, Programmer by passion who aspires to
learn new Technologies every day. A founder of Krazytech. It's been 10+
years since I am publishing articles and enjoying every bit of it. I want to
share the knowledge and build a great community with people like you.

Suggested articles for you:

4 thoughts on “Artificial Intelligence and Expert System”

Liza
September 25, 2019

What are examples of currently used expert systems?

Loading...

Ravi Bandakkanavar Post author


September 25, 2019

Liza,

There are many.

To name a few:

CaDet – Expert system that is used to identify cancer at early stages

DENDRAL – An artificial intelligence-based expert system used for


chemical analysis to predict molecular structure.

Loading...

Ananya Ananya
September 25, 2019

Are Expert Systems still used?

Loading...
Ravi Bandakkanavar Post author
September 25, 2019

Yes

Loading...

You might also like