Transcript lec15

Modified from the slides
by SciTech Media
전문가 시스템 (Expert Systems)
(Lecture Note #15)
인공지능
2002년 2학기
이복주
단국대학교 컴퓨터공학과
1
Outline
Expert Systems
 전문가 시스템의 배경
 Basic Components of Expert Systems
 Expert System Building Tool
 Convectional Program vs. Expert Systems
 Application Areas
 구축 과정
 지식베이스 구성과 표현
 추론 기법
 지식 공유 모델

2
전문가 시스템 (Expert Systems)





배경: 일반적인 문제 풀이 보다는 특정 문제 영역에
집중하여 성능 개선
특정의 문제를 해결하기 위해 특정의 전문적인 지식
을 기반으로 실행되는 컴퓨터 시스템
특정 문제 영역에서 그 영역의 인간 전문가가 의사
결정을 내리는 것과 유사하게 동작하는 컴퓨터 시스
템
인공지능 분야에서 상업적으로 성공한 대표적 분야
기능적 측면에서 필요한 요소
–
–
–
–
추론 엔진 (inference engine)
사용자-시스템 간의 상호작용에 의한 데이터 획득
결론의 정당화 (Justification)
모듈 구조 (Modular architecture)
3
전문가 시스템의 배경

전문가 시스템의 배경
매우 특화된 프로그램을
생성하기 위해 좁은
문제 영역에 대한 고수준의
정제된 지식을 이용
PROGRAM POWER
high
표현 및 탐색 기능을
향상시키는 일반 방법론을
찾고, 특화된 프로그램을
구축하고자 함
문제해결을 위한 일반
방법론을 찾고, 범용-목적
low
프로그램을 구축하고자 함
1960
1970
1980
4
전문가 시스템

Breakthrough
– To make a program intelligent, provide it with lots of high-quality,
specific knowledge about some problem area

Building Expert Systems
– Knowledge Engineering: The process of building an expert system
– Knowledge Engineer: Expert-system builder
– Need the interaction between the KE and human experts
• The KE extracts procedures, strategies, and rules of thumb for problem solving
• The KE builds this knowledge into the expert system
– Result: a program that solves problems like the human experts
Queries, Problems
Domain
Expert
Knowledge
Engineer
Answers, Solutions
Strategies,
Rules-of-thumb,
Domain rules
Expert
System
5
Basic Components of Expert System (ES)
Experts/Knowledge Engineer
 Knowledge Base
 Inference Engine
 User Interface

6
Basic Concepts of Expert Systems

Experts
– Recognizing and formulating the problem
– Solving the problem quickly and properly
– Explaining the solution
– Learning from experience
– Restructuring knowledge
– Determining relevance

Expertise is the extensive, task-specific knowledge
acquired from training, reading, and experience
– Theories about the problem area
– Hard-and-fast rules and procedures
– Rules (heuristics)
– Global strategies
– Meta-knowledge (knowledge about knowledge)
– Facts
7
Basic Concepts of Expert Systems (2)

Transferring Expertise
– Objective of an expert system
• To transfer expertise from an expert to a computer system
and
• Then on to other humans (non-experts)
– Activities
•
•
•
•
Knowledge
Knowledge
Knowledge
Knowledge
acquisition
representation
inference
transfer to the user
– Knowledge is stored in a knowledge base
– Two knowledge types
• Fact / Procedures (rules)
8
The Knowledge Engineer


Helps the expert(s) structure the problem area
by interpreting and integrating human
answers to questions, drawing analogies,
posing counterexamples, and bringing to light
conceptual difficulties
Knowledge Acquisition Subsystem
– Knowledge acquisition is the accumulation, transfer
and transformation of problem-solving expertise
from experts and/or documented knowledge sources
to a computer program for constructing or expanding
the knowledge base

Usually also the System Builder
9
The User

Possible Classes of Users
– A non-expert client seeking direct advice - the ES
acts as a Consultant or Advisor
– A student who wants to learn - an Instructor
– An ES builder improving or increasing the knowledge
base - a Partner
– An expert - a Colleague or Assistant

The Expert and the Knowledge Engineer
Should Anticipate Users' Needs and Limitations
When Designing ES
10
Knowledge Base


The knowledge base contains the knowledge
necessary for understanding, formulating, and
solving problems
Two Basic Knowledge Base Elements
– Facts
– Special heuristics, or rules that direct the use of
knowledge
– Knowledge is the primary raw material of ES
– Incorporated knowledge representation
11
Inference Engine
The brain of the ES
 The control structure or the rule interpreter
 Provides a methodology for reasoning
 The computer is programmed so that it can
make inferences
 Major Element

– Interpreter
– Scheduler
– Consistency Enforcer
12
User Interface



Language processor for friendly, problemoriented communication
NLP, or menus and graphics
Explanation subsystem
– Traces responsibility and explains the ES behavior by
interactively answering questions
•
•
•
•
Why?
How?
What?
(Where? When? Who?)
– Knowledge Refining System
• Learning for improving performance
13
Expert System Building Tool

Expert System Building Tool (not the expert
system)
Expert System
Building Tool
Expert System
Building Language
Expert
System
Support
Environment
User
14
What Good Are Expert Systems

What Good Are Expert Systems
– Why not use real Experts?
– Why do we develop expert systems

Comparing human and artificial expertise: the
good news
The Good News
Human Expertise
Artificial Expertise
Perishable
Permanent
Difficult to transfer
Easy to transfer
Difficult to document
Easy to document
Unpredictable
Consistent
Expensive
Affordable
15
Why keep a human in the loop

Why keep a human in the loop?
– Why not eliminate human expert replacing them with
expert systems?

Comparing human and artificial expertise: the
bad news
The Bad News
Human Expertise
Artificial Expertise
Creative
Uninspired
Adaptive
Needs to be told
Sensory experience
Symbolic input
Broad focus
Narrow focus
Commonsense
knowledge
Technical knowledge
16
How Are Expert Systems Organized

How Are Expert Systems Organized?
– Organizing Knowledge
• Knowledge: The information a computer program needs with
which it can behave intelligently

• take the form of facts and rules
• sometimes considers uncertainty
– Many of rules in expert systems are heuristics
• Comparing Algorithmic with Heuristic methods
17
The structure of an Expert System

The structure of an Expert System
Expert System
Knowledge Base
(Domain Knowledge)
Knowledge
Representations
Facts
Rules
Interpreter
Scheduler
Inference Engine
(General Problem-Solving
Knowledge)
18
Knowledge-Based Systems

Knowledge-Based Systems
Artificial
Intelligence
Programs
Exhibit intelligent
behavior by skillful
application of heuristics
Knowledge-based
Systems
Make domain knowledge
explicit and separate from
the rest of the system
Expert
Systems
Apply expert knowledge
to difficult, real world
problems
19
How Do Expert Systems Differ from
Conventional Programs

How Do Expert Systems Differ from
Conventional Programs
– Comparison of data processing and knowledge
engineering
Date Processing
Knowledge Engineering
Representations and use
of data
Representation and use
of knowledge
Algorithmic
Heuristic
Repetitive Process
Inferential process
Effective manipulation of
large data bases
Effective manipulation of
large knowledge bases
20
Basic Characteristics of an Expert
Systems

Basic Characteristics of an Expert Systems
– Characteristics of an expert system that distinguish it from
a conventional program
Expert System
Expertise
Symbolic reasoning
Depth
Self-Knowledge
Exhibit expert performance
Have high level of skill
Have adequate robustness
Represent knowledge symbolically
Reformulate symbolic knowledge
Handle difficult problem domains
Use complex rules
Examine its own reasoning
Explain its operation
• Expert Systems sometimes make mistakes
21
What Have Expert Systems Been
Used For
 What
Have Expert Systems Been Used For?
– Basic Activities of Expert Systems
Category
Problem Addressed
Interpretation
Inferring situation descriptions from sensor data
Prediction
Inferring likely consequences of given situations
Diagnosis
Inferring system malfunctions from observables
Design
Configuring objects under constraints
Planning
Designing actions
Monitoring
Comparing observations to expected outcomes
Debugging
Prescribing remedies for malfunctions
Repair
Executing plans to administer prescribed
remedies
Instruction
Diagnosing, debugging, and repairing user
behavior
Control
Governing overall system behavior
22
Summary
Expert Systems
 전문가 시스템의 배경
 Basic Components of Expert Systems
 Expert System Building Tool
 Convectional Program vs. Expert Systems
 Application Areas
 구축 과정
 지식베이스 구성과 표현
 추론 기법
 지식 공유 모델

23