CS6659 Artificial Intelligence
Topic: Expert Systems
                           III YEAR VI SEM
                            Presented by,
                               Ms. M. Rupa
                          , AP/CSE,JCTCET
         Motivation & Objectives
• Utilization of computers to deal with knowledge
• Quantity of knowledge increases rapidly
• Knowledge might get lost if not captures
• Computers have special requirements for dealing
  with knowledge
• Some knowledge related tasks can be solved better
  by computers than by humans
                   INTRODUCTION
  Expert systems are computer applications which embody
  some non-algorithmic expertise for solving certain types of
  problems.
For example :
• Diagnostic applications
• Play chess
• Financial planning decisions
• Configure computers
• Monitor real time systems
• Underwrite insurance policies
• Perform many services which previously required human
  expertise.
          What is Expert System ?
• An expert system, is an interactive computer-based
  decision tool that uses both facts and heuristics to
  solve difficult decision making problems, based on
  knowledge acquired from an expert.
• Inference engine + Knowledge = Expert system
    ( Algorithm + Data structures = Program in
  traditional computer )
• First expert system, called DENDRAL, was developed
  in the early 65's at Stanford University.
    Roles of Individuals who interact with
                  the system
• Domain expert : The individuals who currently are experts in
  solving the problems; here the system is intended to
  solve.
• Knowledge engineer : The individual who encodes the
  expert's knowledge in a declarative form that can be used
  by the expert system.
• User : The individual who will be consulting with the system
  to get advice which would have been provided by the
  expert.
• System engineer : builds the user interface, designs the
  declarative format of the knowledge base, and implements
  the inference engine.
Three Major ES Components
        User Interface
        Inference
        Engine
        Knowledge
        Base
    Components and Interfaces
• User interface : The code that controls the
  dialog between the user and the system.
• Inference engine : The code at the core of the
  system which derives recommendations from
  the knowledge base and problem specific data
  in working storage.
• Knowledge base : A declarative representation
  of the expertise often in IF THEN rules .
       Expert System Benefits
Benefits of Expert Systems
Availability − They are easily available due to mass
production of software.
Less Production Cost − Production cost is
reasonable. This makes them affordable.
Speed − They offer great speed. They reduce the
amount of work an individual puts in.
Less Error Rate − Error rate is low as compared to
human errors.
Reducing Risk − They can work in the environment
dangerous to humans.
Steady response − They work steadily without
getting motional, tensed or fatigued.
           Expert System Limitations
No technology can offer easy and complete solution.
Large systems are costly, require significant development
time, and computer resources.
ESs have their limitations which includes −
Limitations of the technology
Difficult knowledge acquisition
ES are difficult to maintain
High development costs
Applications of Expert System
              Knowledge Acquisition
• Knowledge acquisition is the process of extracting,
  structuring and organizing knowledge from one source,
  usually human experts, so it can be used in software
  such as an ES.
Typical expert systems
                         Typical expert systems
MYCIN was            an      early backward chaining expert system that        used 
artificial intelligence to identify bacteria causing severe infections. It is used in
medical field.
                             DART
DART: Expert systems for automated computer fault diagnosis.
The Dynamic Analysis and Replanning Tool, explores the
application of artificial intelligence techniques to the diagnosis of
computer faults. It assists a technician in finding the faults in a
computer system. (hardware and software).
DART uses a device-independent language for describing devices
and device-independent inference procedure for diagnosis.
The primary goal of the DART Project is to develop programs that
capture the special design knowledge and diagnostic abilities of
these experts and to make them available to field engineers.
                               XCON
• XCON – (eXpert CONfigure) is a type of computer program used by
  VAX – ("virtual address extension") or (logical address) Computers for
  selecting various components based on customers requirements.
                 Expert System Shells
Shells − A shell is nothing but an expert system without knowledge
base.
A shell provides the developers with knowledge acquisition,
inference engine, user interface, and explanation facility.
A shell is a piece of software which contains the user interface, a
format for declarative knowledge in the knowledge base, and an
inference engine.
Many expert systems are built with products called expert system
shells.
The knowledge and system engineers uses these shells in making
expert systems.
• Knowledge engineer : uses the shell to build a system for
  a particular problem domain.
• System engineer : builds the user interface, designs the
  declarative format of the knowledge base, and
  implements the inference engine.
  Depending on the size of the system, the knowledge
  engineer and the system engineer might be the same
  person.
Outcome of Human Expert Behaviors in ES
•   Recognize and formulate the problem
•   Solve problems quickly and properly
•   Explain the solution
•   Learn from experience
•   Restructure knowledge
•   Break rules
•   Determine relevance
•   Degrade gracefully