Skip to main content

Expert system architecture

Short answer

An expert system is a program with expert-level knowledge in a narrow domain. Its architecture includes knowledge base, inference engine, working memory, user interface, explanation facility, and knowledge acquisition facility.

What is an expert system? Explain the general architecture of an expert system (draw the block diagram and explain all blocks).

An expert system (ES) is a computer program that holds the knowledge of human experts in a narrow domain and uses it to give advice or solve problems at expert level (e.g. MYCIN for diagnosing infections, DENDRAL, PROSPECTOR).

Architecture

   User
    |  ^
    v  |
 +--------------------+      +-----------------------+
 |   User interface   |<---->|  Explanation          |
 +---------+----------+      |  facility             |
           |                 +-----------+-----------+
           v                             |
 +--------------------+      +-----------v-----------+
 |  Inference engine  |<---->|   Knowledge base      |
 | (reasoning control)|      |  (facts + rules)      |
 +---------+----------+      +-----------^-----------+
           |                             |
           v                 +-----------+-----------+
 +--------------------+      | Knowledge acquisition |<-- Expert /
 |  Working memory    |      | facility              |    knowledge
 | (case facts)       |      +-----------------------+    engineer
 +--------------------+

Blocks

  1. Knowledge base: stores domain knowledge as facts and, mostly, IF-THEN production rules (also frames or semantic nets). It is kept separate from the reasoning mechanism.
  2. Inference engine: the reasoning part. It matches rules against known facts and derives new conclusions using forward chaining (data-driven) or backward chaining (goal-driven). It also resolves conflicts when several rules apply.
  3. Working memory (global database): holds the facts of the current case, user inputs and intermediate conclusions.
  4. User interface: lets the user enter data and see results, usually through questions and answers or menus in language close to natural language.
  5. Explanation facility: explains how a conclusion was reached ("How?") and why a question is asked ("Why?"), which builds trust and helps debugging.
  6. Knowledge acquisition facility: helps the knowledge engineer and domain expert enter, edit and check knowledge in the knowledge base.

Roles of people

  • Domain expert: source of knowledge.
  • Knowledge engineer: encodes the expert's knowledge.
  • End user: consults the system.

Example rule: IF fever AND rash AND cough THEN disease = measles (CF 0.8).

✓ Answer checked by Claude Opus 5.5 (high effort)

All Artificial Intelligence chapter 7 questions →