Expert Systems
Er. Rudra Nepal
Expert Systems: Introduction Expert Systems: Introduction
• Expert Systems are computer programs built for commercial • Knowledge Engineer
application using the programming techniques of AI which – is a human with a background of computer science and AIwho
are developed for problem solving knows how to built an Expert System
• Built for varieties of purposes including Medical Diagnosis, – decides how to represent the knowledge and helps programmer to
Electronic Fault Finding, Mineral prospecting, Computer write codes
System Configuration, etc. – creates a relation with human expert to elicit knowledge from
him/her
Definition of Expert System: • Knowledge Engineering
An Expert System is a collection of programs or Computer Software – is the acquisition of knowledge from human expert or other
that solves problems in the domain of interest. It is called system
because it consists of both problem solving component and a support sources
component. • Expert
– evaluates the expert system and gives report to knowledge
engineer
• The process of building Expert System is called knowledge – the process continues until the performance is found satisfactory
engineeringand is done by knowledge Engineer by the experts
Expert system Expert Systems: Characteristics
Expert systems provide the Use of expert systems is specially • High Performance:
following important recommended when: – The quality of the advice given to the system should be very high
features: • Human experts are difficult to find – The system must respond at the competency equal to or better than
• Facility for non-expert human expert
• Human experts are expensive
personnel to solve • Expertise
• Knowledge improvement is
problems that require
important – Real expert produce good solutions + fast
some expertise • The available information is poor, – Must be skillful to produce efficient + effective solution eliminating
• Speedy solution wasteful or unnecessary calculations
• partial, incomplete – Must be robust
• Reliable solution
Problems are incompletely • Adequate response time
• Cost reduction • defined
• Power to manage without – Should respond within reasonable amount of time comparable to or
There is lack of knowledge among
human experts • better than time taken by human experts to reach the decision
all those who need it – For real time-system time, constraint specified on the performance is
•Wider areas of knowledge
The problem is rapidly changing severe when response required is within certain time interval
legal rules and codes
Expert Systems: Characteristics Expert Systems: Characteristics
• Good reliability • Understandable
– Must be reliable as that of human experts – System should be able to explain the steps of reasoning while
executing
• Self knowledge
– Explanation facility is knowledge that explains how the system – Should have explanation capability similar to the reasoning
ability of human experts
arrives its answer
– The ability to examine their reasoning process and explain their • Justification
– Should justify the solution thus proposed
operation is one of the innovative and important quality of
expert system – Justification is done via reasoning
–Self-knowledge is important in expert system because: – Ex: if the system is rule based then it provides all the rules and
• User tends to have more faith in results and more confidence in
system facts that have been used to achieve the answer
• System development is faster since the system is very easy to compile • Flexibility
and debug – Huge knowledge must have efficient mechanism to add,
• Effect of a change on the system operation is easily tested and change and delete knowledge
predicted
Architecture of an Expert System Architecture of an Expert System
Knowledge Base
•
– It contains domain-specific and high-quality knowledge.
Knowledge is required to exhibit intelligence. The success of
any ES majorly depends upon the collection of highly
accurate and precise knowledge.
–What is Knowledge?
• The data is collection of facts. The information is organized as data
and facts about the task [Link], information,andpast
experiencecombined together are termed as knowledge.
–Components of Knowledge Base
• The knowledge base of an ES is a store of both, factual and heuristic
knowledge.
• Factual Knowledge− It is the informaƟon widely accepted by the
Knowledge Engineers and scholars in the task domain.
•
Heuristic Knowledge− It is about pracƟce, accurate judgment, one’s
ability of evaluation, and guessing.
Architecture of an Expert System Architecture of an Expert System
Inference Engine User Interface
• •
– Use of efficient procedures and rules by the Inference – User interface provides interaction between user of the ES
and the ES itself. It is generally Natural Language
Engine is essential in deducting a correct, flawless Processing so as to be used by the user who is well-versed
solution. in the task domain. The user of the ES need not be
–In case of knowledge-based ES: necessarily an expert in Artificial Intelligence.
• the Inference Engine acquires and manipulates the knowledge – It explains how the ES has arrived at a particular
recommendation. The explanation may appear in the
from the knowledge base to arrive at a particular solution. following forms −
–In case of rule based ES, the inference engine: •Natural language displayed on screen.
• Applies rules repeatedly to the facts, which are obtained from •Verbal narrations in natural language.
•Listing of rule numbers displayed on the screen.
earlier rule application.
• Adds new knowledge into the knowledge base if required. – The user interface makes it easy to trace the credibility of
the deductions.
• Resolves rules conflict when multiple rules are applicable to a
particular case.
Goals Basic Activities
• The basic goals targeted while developing the • Expert systems are built to solve different types of problems
expert systems include • Basic activities can be categorized into following:
– substitution of unavailable human experts Category Problem Addressed
– combining the knowledge and experiences of Interpretation Inferring situation description from sensordata
Prediction Inferringthe likely consequences of given situation
several human experts
– Diagnosis Inferring systemmalfunction from observations
training new experts Design Configuring object under constraints
– providing requisite expertise on projects that do Planning Designing actions
– not attract or retain experts Monitoring
Debugging
Comparing observationsto expected outcomes
Prescribing remedies doe malfunctions
providing expertise on projects that can not Repair Executing plans for administer prescribed remedies
afford experts Instruction Diagnosing,Debugging and Repairing
Control Governing overall system behavior
Advantages Advantages
Some of the advantages of using expert systems are: • Explanation :Expert system can explicitly explain the
Increased availability : Expert system is mass production of reason that leads to conclusion
expertise which is available in any suitable computers • Fast Response : Depending on the software and hardware
Reduced cost : Expert system costs much cheaper than real used, an expert system may respond faster and be more
human Expert available than human expert
Reduced Danger : can be used in environment that might be • Steady, unemotional, Complete response at all times :
important in real-time and emergency situations when
hazardous to human human experts can not operate on its peak due to stress or
Permanence :unlike human expert which might retire, quit fatigue or some sentimental influence
and die expert system’s knowledge lasts indefinitely Intelligent tutor : allow students to run samples and
Multiple Expertise : Knowledge of many expert system could • explain its reasoning
be made work simultaneously and continuously on a problem Intelligent database : Expert system can be used to access
Increased Reliability : Expert system could provide second • databases intelligently
option or break a tie in case of disagreement among human
experts.
Development of Expert System Development of Expert System
The process of ES development is iterative. Steps in developing the ES • Test and Refine the Prototype
include − – The knowledge engineer uses sample cases to test the prototype
• Identify Problem Domain for any deficiencies in performance.
– The problem must be suitable for an expert system to solve it. – End users test the prototypes of the ES.
– Find the experts in task domain for the ES project.
– Establish cost-effectiveness of the system. • Develop and Complete the ES
– Test and ensure the interaction of the ES with all elements of its
• Design the System
– Identify the ES Technology environment, including end users, databases, and other
information systems.
– Know and establish the degree of integration with the other systems and – Document the ES project well.
databases. – Train the user to use ES.
–
Realize how the concepts can represent the domain knowledge best.
• Develop the Prototype •Maintain the ES
From Knowledge Base: The knowledge engineer works to − – Keep the knowledge base up-to-date by regular review and
– Acquire domain knowledge from the expert. update.
– Represent it in the form of If-THEN-ELSE rules. – Cater for new interfaces with other information systems, as those
systems evolve.
259