Artificial Intelligence - Expert Systems

AI - Expert Systems (Fully Explained)

Artificial Intelligence - Expert Systems

Expert Systems

Expert systems are one of the well-known research areas in artificial intelligence. They first appeared in the Computer Science Department at Stanford University.


What are Expert Systems?

An expert system is a computer program built to solve complex problems in a specific field. It works at a level similar to that of a skilled human expert, offering intelligence and decision-making ability within its domain.


Characteristics of Expert Systems

  • High performance
  • Understandable
  • Reliable
  • Highly responsive


Capabilities of Expert Systems

Expert systems can:

  • Advise users
  • Assist humans in making decisions
  • Demonstrate solutions
  • Derive answers
  • Diagnose problems
  • Explain their reasoning
  • Interpret data
  • Predict outcomes
  • Justify conclusions
  • Suggest alternative solutions

They cannot:

  • Replace human decision-makers entirely
  • Possess human-like thinking
  • Give correct results if the knowledge base is incomplete
  • Improve their own knowledge without updates


Components of Expert Systems

An expert system consists of three major components:

  • Knowledge Base
  • Inference Engine
  • User Interface


Knowledge Base

The knowledge base holds domain-specific information of high quality. The more accurate and detailed this knowledge, the better the system performs.

What is Knowledge?
Knowledge combines data, facts, and experience. Data is raw facts. When these facts are organized and tied to past experiences, they become knowledge.

Components of Knowledge Base:

  • Factual Knowledge: Widely accepted information from experts.
  • Heuristic Knowledge: Practical insights, judgments, and evaluations that experts use in real-life situations.

Knowledge Representation
Knowledge is stored in the form of IF-THEN-ELSE rules, making it easier for the system to process and use.

Knowledge Acquisition
Knowledge engineers gather and structure information from domain experts. They interview, observe, and record experts at work, then turn that into a usable form of rules. They also oversee system development and make sure the knowledge stays relevant and organized.


Inference Engine

The inference engine applies rules to reach logical conclusions. It is the part of the system that “reasons.”

In a knowledge-based system, it manipulates knowledge to provide answers.
In a rule-based system, it:

  • Applies rules step by step to existing facts.
  • Adds new knowledge if needed.
  • Resolves conflicts when multiple rules could apply.

Strategies used by the Inference Engine:

  • Forward Chaining: Answers “What can happen next?” It moves from facts toward a result. Example: predicting stock market changes based on interest rate updates.
  • Backward Chaining: Answers “Why did this happen?” It starts from a conclusion and works backward to find the cause. Example: diagnosing blood cancer based on observed symptoms.


User Interface

The user interface connects the system and its users. It often uses natural language so people in the field can easily interact with it, even if they are not AI experts.

It also explains how the system arrived at a conclusion, using:

  • On-screen text in natural language
  • Voice explanations
  • Lists of applied rule numbers

A good interface makes the system easier to trust and use.


Requirements of an Efficient Expert System Interface

  • Should help users achieve their goals quickly.
  • Should fit into existing workflows.
  • Should adapt to the user’s needs.
  • Should make the best use of user input.


Limitations of Expert Systems

Despite their benefits, expert systems have drawbacks:

  • Knowledge acquisition is challenging.
  • They are hard to maintain.
  • Development takes time and money.
  • They cannot solve every problem fully.


Applications of Expert Systems

ApplicationDescription
Design DomainDesigning camera lenses, automobiles.
Medical DomainDiagnosing diseases, assisting in medical procedures.
Monitoring SystemsContinuous system checks like detecting leaks in pipelines.
Process ControlManaging and controlling industrial processes.
Knowledge DomainTroubleshooting vehicles, computers.
Finance/CommerceFraud detection, stock trading, airline scheduling.

Expert System Technology

Expert systems require hardware, programming environments, and tools:

  • Development Environment: Workstations, minicomputers, mainframes, languages like LISP and PROLOG, and large databases.
  • Tools: Editors, debugging tools, and rapid prototyping features to make development faster.
  • Shells: Pre-built expert system structures without a knowledge base. Examples: Java Expert System Shell (JESS) and Vidwan (developed in Mumbai in 1993).


Development of Expert Systems

Expert systems are developed in iterative steps:

  1. Identify the Problem: Ensure the problem is suitable for an expert system and worth the cost.
  2. Design the System: Choose the right technology and decide how knowledge will be represented.
  3. Develop a Prototype: Knowledge engineers gather information and convert it into IF-THEN-ELSE rules.
  4. Test and Refine: Use sample cases to check performance and fix any issues.
  5. Complete the System: Integrate with databases, document it, train users.
  6. Maintain It: Keep the knowledge base updated and ensure compatibility with other systems.


Benefits of Expert Systems

  • Availability: Easily distributed and used.
  • Low Production Cost: Affordable compared to hiring experts for every task.
  • Speed: Reduces human workload.
  • Low Error Rate: Less prone to mistakes than humans.
  • Reduced Risk: Works in dangerous environments.
  • Consistent Performance: Provides steady, emotion-free responses.