Anda di halaman 1dari 64

Expert Systems

Expert System
Computer software that:
Emulates human expert
Deals with small, well defined domains of
expertise
Is able to solve real-world problems
Is able to act as a cost-effective consultant
Can explains reasoning behind any solutions it
finds
Should be able to learn from experience.

Expert System
An expert system is a system that employs
human knowledge captured in a computer to
solve problems that ordinarily require human
expertise.(Turban)
A computer program that emulates the
behaviour of human experts who are solving
real-world problems associated with a
particular domain of knowledge. (Pigford &
Braur)

What is an Expert?
solve simple problems easily.
ask appropriate questions (based on external stimuli sight, sound etc).
reformulate questions to obtain answers.
explain why they asked the question.
explain why conclusion reached.
judge the reliability of their own conclusions.
talk easily with other experts in their field.
learn from experience.
reason on many levels and use a variety of tools such as
heuristics, mathematical models and detailed simulations.
transfer knowledge from one domain to another.
use their knowledge efficiently

Expert System
Expert Systems manipulate knowledge while
conventional programs manipulate data.
An expert system is often defined by its
structure.
Knowledge Based System Vs Expert System

ES Development
Problem Definition.
System design(Knowledge Acquisition).
Formalization. (logical design,,,,, tree structures)
System Implementation. (building a prototype)
System Validation.

Definition
Knowledge-based expert systems or simply expert
systems
An expert system is software that attempts to
reproduce the performance of one or more
human experts, most commonly in a specific
problem domain (Wikipedia)
Use human knowledge to solve problems that
normally would require human intelligence
Embody some non-algorithmic expertise
Represent the expertise knowledge as data or
rules within the computer
Can be called upon when needed to solve
problems

Definition
Developed via specialized software tools called shells
Shells come equipped with an inference mechanism
Backward chaining
Forward chaining
Both
May or may not have learning components
They are tested by being placed in the same real world
problem solving situation
Key idea: problem solved by applying specific knowledge
rather than specific technique

Characteristics of Expert
System
Pigford & Baur
Inferential Processes
Uses various Reasoning Techniques

Heuristics
Decisions based on experience
and knowledge

Characteristics (cont)
Waterman

Expertise
Depth
Symbolic Reasoning
Self Knowledge

ability
to
manipulate
explain
ability
extend
Perform
atto
least
tohow
the
concepts
and
symbols
conclusions
are
made
and level
infer as
knowledge
same
an expert

Knowledge and Uncertainty


Facts and rules are structured into a
knowledge base and used by expert systems
to draw conclusions.
There is often a degree of uncertainty in the
knowledge.
Things are not always true or false
the knowledge may not be complete.

In an expert system certainty factors are one


way indicate degree of certainty attached to a
fact or rule.

Examples
Diagnostic applications, servicing:
People
Machinery
Play chess
Make financial planning decisions
Configure computers
Monitor real time systems
Underwrite insurance policies
Perform many other services which previously
required human expertise

Components and Human


Interfaces

Major Components
Knowledge base - a declarative representation
of the expertise, often in IF THEN rules
Working storage - the data which is specific to a
problem being solved
Inference engine - the code at the core of the
system
Derives recommendations from the knowledge
base and problem-specific data in working
storage

User interface - the code that controls the dialog


between the user and the system

Major Roles of Individuals

Domain expert currently experts solving the


problems the system is intended to solve
Knowledge engineer - encodes the expert's
knowledge in a declarative form that can be used
by the expert system
User - will be consulting with the system to get
advice which would have been provided by the
expert
Systems built with custom developed shells for
particular applications:
System engineer - the individual who builds the
user interface, designs the declarative format of the
knowledge base, and implements the inference
engine

Notes on Components
Shell - a piece of software which contains:
The user interface
A format for declarative knowledge in the knowledge base
An inference engine
Major advantage of a customized shell: the format of the knowledge
base can be designed to facilitate the knowledge engineering process
Knowledge engineer and the system engineer might be the same
person
Depending on the size of the project
One of the major bottlenecks - knowledge engineering process:
The coding of the expertise into the declarative rule format can be
a difficult and tedious task
The semantic gap between the expert's representation of the
knowledge and the representation in the knowledge base should
be minimized

Expert System Features


Goal driven reasoning or backward chaining - an inference
technique which uses IF THEN rules to repetitively break a
goal into smaller sub-goals which are easier to prove
Coping with uncertainty - the ability of the system to reason
with rules and data which are not precisely known
Data driven reasoning or forward chaining - an inference
technique which uses IF THEN rules to deduce a problem
solution from initial data
Data representation - the way in which the problem specific
data in the system is stored and accessed
User interface - that portion of the code which creates an
easy to use system
Explanations - the ability of the system to explain the
reasoning process that it used to reach a recommendation.

Goal-Driven Reasoning
Aim: to pick the best choice from many enumerated
possibilities
The knowledge is structured in rules
The rule breaks the problem into sub-problems
Difference between forward and backward chaining:

Uncertainty
Final answer is not known with complete
certainty
The expert's rules might be vague
The user might be unsure of answers to questions

Example - medical diagnostic system: multiple


possible diagnoses
One of the simplest schemes: to associate a
numeric value with each piece of information

Data Driven Reasoning


Problem of enumerating all of the possible answers before hand
Example - configuration problems
Keeps track of the current state, looks for rules moving the state
closer to a final solution
Note:
Data driven system: the system must be initially populated with data
Goal driven system: gathers data as it needs it

Advantages and Disadvantages


Advantages:
Consistent answers for repetitive decisions,
processes and tasks
Holds and maintains significant levels of
information
Encourages organizations to clarify the logic of
their decision-making
Never "forgets" to ask a question, as a human
might

Advantages and Disadvantages


Disadvantages:
Lacks common sense
Cannot make creative responses as human expert
Domain experts not always able to explain their logic and reasoning
Errors may occur in the knowledge base
Cannot adapt to changing environments

Overview of Expert Systems


Can
Explain their reasoning or suggested decisions
Display intelligent behavior
Draw conclusions from complex relationships
Provide portable knowledge

Expert system shell


A collection of software packages and tools used
to develop expert systems

Limitations of Expert Systems

Not widely used or tested


Limited to relatively narrow problems
Cannot readily deal with mixed knowledge
Possibility of error
Cannot refine own knowledge base
Difficult to maintain
May have high development costs
Raise legal and ethical concerns

Capabilities of Expert Systems


Strategic goal setting
Planning

Design
Decision making

Quality control and monitoring


Diagnosis

Explore impact of strategic goals


Impact of plans on resources
Integrate general design principles and
manufacturing limitations
Provide advise on decisions

Monitor quality and assist in finding solutions


Look for causes and suggest solutions

When to Use an Expert System


(1)
Provide a high potential payoff or significantly
reduced downside risk
Capture and preserve irreplaceable human
expertise
Provide expertise needed at a number of
locations at the same time or in a hostile
environment that is dangerous to human
health

When to Use an Expert System (2)


Provide expertise that is expensive or rare
Develop a solution faster than human experts
can
Provide expertise needed for training and
development to share the wisdom of human
experts with a large number of people

Components of an
Expert System (1)

Knowledge base

Stores all relevant information, data, rules, cases, and


relationships used by the expert system

Inference engine
Seeks information and relationships from the knowledge
base and provides answers, predictions, and suggestions in
the way a human expert would

Rule
A conditional statement that links given conditions to
actions or outcomes

Fuzzy logic

Components of an
Expert System (2)

A specialty research area in computer science that allows


shades of gray and does not require everything to be
simply yes/no, or true/false

Backward chaining
A method of reasoning that starts with conclusions and
works backward to the supporting facts

Forward chaining
A method of reasoning that starts with the facts and works
forward to the conclusions
Schematic

Explanation
facility

Knowledge
base

Inference
engine

Knowledge
base
acquisition
facility

User
interface

Experts

User

Explanation Facility
Explanation facility
A part of the expert system that allows a user or
decision maker to understand how the expert
system arrived at certain conclusions or results

Knowledge Acquisition Facility


Knowledge acquisition facility
Provides a convenient and efficient means of capturing
and storing all components of the knowledge base

Knowledge
base

Knowledge
acquisition
facility

Joe Expert

Expert Systems Development


Determining requirements

Identifying experts

Construct expert system components

Implementing results

Maintaining and reviewing system

Domain
The area of knowledge
addressed by the
expert system.

Participants in Expert Systems


Development and Use

Domain expert

The individual or group whose expertise and knowledge is


captured for use in an expert system

Knowledge user
The individual or group who uses and benefits from the
expert system

Knowledge engineer
Someone trained or experienced in the design,
development, implementation, and maintenance of an
expert system
Schematic

Expert
system

Knowledge engineer
Domain expert

Knowledge user

Evolution of Expert Systems


Software

Expert system shell

Collection of software packages & tools to design, develop,


implement, and maintain expert systems

Ease of use

high

low

Traditional
programming
languages

Before 1980

Special and 4th


generation
languages

1980s

Expert system
shells

1990s

Advantages of Expert Systems

Easy to develop and modify


The use of satisficing
The use of heuristics
Development by knowledge engineers and
users

Expert Systems Development


Alternatives
high
Develop
from
scratch
Develop
from
shell

Development
costs

low

Use
existing
package
low

high
Time to develop expert system

Applications of Expert Systems


and
Artificial
Intelligence
Credit granting

Information management and retrieval


AI and expert systems embedded in products
Plant layout
Hospitals and medical facilities
Help desks and assistance
Employee performance evaluation
Loan analysis
Virus detection
Repair and maintenance
Shipping
Marketing
Warehouse optimization

Classification of Expert System


Classification based on Expertness or
Purpose
Expertness

An assistant
A colleague
A true expert

Components of an Expert
System
Expert System
Knowledge
Base
User
Interface
Inference
Engine
User

Desirable Features of an Expert


System
Dealing with Uncertainty
certainty factors

Explanation
Ease of Modification
Transportability
Adaptive learning

Advantages

Capture of scarce expertise


Superior problem solving
Reliability
Work with incomplete information
Transfer of knowledge

Limitations
Expertise hard to extract from experts
dont know how
dont want to tell
all do it differently

Knowledge not always readily


available
Difficult to independently
validate expertise

Limitations (cont)

High development costs


Only work well in narrow domains
Can not learn from experience
Not all problems are suitable

Creating an Expert System


Two steps involved:
extracting knowledge and methods from the
expert (knowledge acquisition)
reforming knowledge/methods into an
organised form (knowledge representation)

Acquiring the Knowledge


What is knowledge?
Data:
Raw facts, figures, measurements

Information:
Refinement and use of data to answer specific
question.

Knowledge:
Refined information

Sources of Knowledge
documented
books, journals, procedures
films, databases

undocumented
peoples knowledge and expertise
peoples minds, other senses

Types Knowledge
Type of Knowledge

Examples

Facts

dogs, teeth, carnivore

Relations

mother of Paul

Rules
Concepts

If breathing>20 then
hyperventilating
For all X & Y

Procedures

Do this then that

Levels of Knowledge
Shallow level:
very specific to a situation Limited by IF-THEN
type rules. Rules have little meaning. No
explanation.

Deep Knowledge:
problem solving. Internal causal structure. Built
from a range of inputs
emotions, common sense, intuition
difficult to build into a system.

Categories of Knowledge
Declarative
descriptive, facts, shallow knowledge

Procedural
way things work, tells how to make inferences

Semantic
symbols

Episodic
autobiographical, experimental

Meta-knowledge
Knowledge about the knowledge

Good knowledge
Knowledge should be:
accurate
nonredundant
consistent
as complete as possible
(or certainly reliable enough
for conclusions to be drawn)

Knowledge Acquisition
Knowledge acquisition is the process by which
knowledge available in the world is transformed and
transferred into a representation that can be used by
an expert system. World knowledge can come from
many sources and be represented in many forms.
Knowledge acquisition is a multifaceted problem that
encompasses many of the technical problems of
knowledge engineering, the enterprise of building
knowledge base systems. (Gruber).

Knowledge Acquisition

Five stages:
Identification: - break problem into parts
Conceptualisation: identify concepts
Formalisation: representing knowledge
Implementation: programming
Testing: validity of knowledge

Organizing the Knowledge


Knowledge Engineer
Interacts between expert and Knowledge Base
Needs to be skilled in extracting knowledge
Uses a variety of techniques

Knowledge Acquisition
The basic model of knowledge acquisition
requires that the knowledge engineer mediate
between the expert and the knowledge base.
The knowledge engineer elicits knowledge
from the expert, refines it in conjunction with
the expert and represents the knowledge in
the knowledge base using a suitable
knowledge structure.
Elicitation of knowledge done either manually
or with a computer.

Knowledge Acquisition
Manual:
interview with experts.
structured, semi structured, unstructured interviews.
track reasoning process and observing.

Semi Automatic:
Use a computerised system to support and help experts
and knowledge engineers.

Automatic:
minimise the need for a knowledge engineer or expert.

Knowledge Acquisition
Difficulties
Knowledge is not easy to acquire or maintain
More efficient and faster ways needed to acquire
knowledge.
System's performance dependant on level and quality
of knowledge "in knowledge lies power.
Transferring knowledge from one person to another is
difficult. Even more difficult in AI. For these reasons:
expressing knowledge
The problems associated with transferring the knowledge to

the form required by the knowledge base.

Other Problems
Other Reasons
experts busy or unwilling to part with
knowledge.
methods for eliciting knowledge not
refined.
collection should involve several sources
not just one.
it is often difficult to recognise the relevant
parts of the expert's knowledge.
experts change

Organizing the Knowledge


Representing the knowledge
Rules
Semantic Networks
Frames
Propositional and Predicate Logic

Representing the Knowledge


Rules
If pulse is absent and breathing is absent
Then person is dead.

Representing the Knowledge


Semantic Networks
Owns
Car

Sam

Is a
Honda
Colour
Made in
Green

Japan

Representing the Knowledge


Frames
based on objects
objects are arranged in a hierarchical manner
Frame Name

Vacation

Where

Albury

When

March

Cost

$1000

Representing the Knowledge


Propositional & Predicate Logic
based on calculus

J = Passed assignment
K = Passed exam
Z = J and K

Student has passed assignment and passes


exam

Anda mungkin juga menyukai