Skip to content

Expert System

Expert systems (ES) are one of the prominent research domains of AI. It is introduced by the researchers at Stanford University, Computer Science Department.

What are Expert Systems?

The expert systems are the computer applications developed to solve complex problems in a particular domain, at the level of extra-ordinary human intelligence and expertise.

Characteristics of Expert Systems

  • High performance
  • Understandable
  • Reliable
  • Highly responsive

Capabilities of Expert Systems

  • Advising
  • Instructing and assisting human in decision making
  • Demonstrating
  • Deriving a solution
  • Diagnosing
  • Explaining
  • Interpreting input
  • Predicting results
  • Justifying the conclusion
  • Suggesting alternative options to a problem

They are incapable of:

  • Substituting human decision makers
  • Possessing human capabilities
  • Producing accurate output for inadequate knowledge base
  • Refining their own knowledge

Components of Expert Systems

  • Knowledge Base
  • Inference Engine
  • User Interface

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 domain. Data, information, and past experience combined 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 information widely accepted by the Knowledge Engineers and scholars in the task domain.
  • Heuristic Knowledge: It is about practice, accurate judgement, one’s ability of evaluation, and guessing.

Knowledge Representation

It is the method used to organize and formalize the knowledge in the knowledge base. It is in the form of IF-THEN-ELSE rules.

Knowledge Acquisition

The success of any expert system majorly depends on the quality, completeness, and accuracy of the information stored in the knowledge base.

The knowledge base is formed by readings from various experts, scholars, and the Knowledge Engineers. The knowledge engineer is a person with the qualities of empathy, quick learning, and case analyzing skills.

He acquires information from subject expert by recording, interviewing, and observing him at work, etc. He then categorizes and organizes the information in a meaningful way, in the form of IF-THEN-ELSE rules, to be used by interference machine. The knowledge engineer also monitors the development of the ES.

Inference Engine

Use of efficient procedures and rules by the Inference Engine is essential in deducting a correct, flawless solution.

In case of knowledge-based ES, the Inference Engine acquires and manipulates the knowledge from the knowledge base to arrive at a particular solution.

In case of rule based ES, it:

  • Applies rules repeatedly to the facts, which are obtained from earlier rule application.
  • Adds new knowledge into the knowledge base if required.
  • Resolves rules conflict when multiple rules are applicable to a particular case.

To recommend a solution, the Inference Engine uses the following strategies −

  • Forward Chaining
  • Backward Chaining

User Interface

User interface provides interaction between user of the ES and the ES itself. It is generally Natural Language Processing so as to be used by the user who is well-versed in the task domain. The user of the ES need not be necessarily an expert in Artificial Intelligence.

It explains how the ES has arrived at a particular recommendation. The explanation may appear in the following forms:

  • Natural language displayed on screen.
  • Verbal narrations in natural language.
  • Listing of rule numbers displayed on the screen.

The user interface makes it easy to trace the credibility of the deductions.

Requirements of Efficient ES User Interface

  • It should help users to accomplish their goals in shortest possible way.
  • It should be designed to work for user’s existing or desired work practices.
  • Its technology should be adaptable to user’s requirements; not the other way round.
  • It should make efficient use of user input.

Expert Systems 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 include −

  • Limitations of the technology
  • Difficult knowledge acquisition
  • ES are difficult to maintain
  • High development costs

Applications of Expert System

The following table shows where ES can be applied.

ApplicationDescription
Design DomainCamera lens design, automobile design.
Medical DomainDiagnosis Systems to deduce cause of disease from observed data, conduction medical operations on humans.
Monitoring SystemsComparing data continuously with observed system or with prescribed behavior such as leakage monitoring in long petroleum pipeline.
Process Control SystemsControlling a physical process based on monitoring.
Knowledge DomainFinding out faults in vehicles, computers.
Finance/CommerceDetection of possible fraud, suspicious transactions, stock market trading, Airline scheduling, cargo scheduling.

Expert System Technology

There are several levels of ES technologies available. Expert systems technologies include

  • Expert System Development Environment− The ES development environment includes hardware and tools. They are −
    • Workstations, minicomputers, mainframes.
    • High level Symbolic Programming Languages such as LISProgramming (LISP) and PROgrammation en LOGique (PROLOG).
    • Large databases.
  • Tools− They reduce the effort and cost involved in developing an expert system to large extent.
    • Powerful editors and debugging tools with multi-windows.
    • They provide rapid prototyping
    • Have Inbuilt definitions of model, knowledge representation, and inference design.
  • 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. For example, few shells are given below −
    • Java Expert System Shell (JESS) that provides fully developed Java API for creating an expert system.
    • Vidwan, a shell developed at the National Centre for Software Technology, Mumbai in 1993. It enables knowledge encoding in the form of IF-THEN rules.

3 Comments »

Leave a Reply

error: Content is protected !!
%d bloggers like this: