Artificial Intelligence 人工智能

Download Report

Transcript Artificial Intelligence 人工智能

Chapter 09 Expert System

Xiu-jun GONG (Ph. D) School of Computer Science and Technology, Tianjin University [email protected]

http://cs.tju.edu.cn/faculties/gongxj/course/ai/

Outline

 The definition and its framework  Components: reasoning technology  Steps for developing an ES quickly  Successful scenarios of ESs  Pros & cons

The definition

  An Expert System (a knowledge based system)  a computer program that contains some of the subject-specific knowledge, and contains the knowledge and analytical skills of one or more human experts.

Features:   ES provides expert quality advice, diagnosis or recommendations.

ES solves real problems which normally would require a human expert.

Framework of ES

User Domain Expert

User Interface Dynamic database Interpreter

Reasoning machine Knowledge Engineer

Knowledge acquisition

Knowledge base ES Core

Components of ES (1)

   Knowledge base: store special knowledge from domain experts.

Reasoning machine: inferences from domain knowledge and user’s evidence, draws a conclusion. It consists of reasoning strategies and control sets.

Knowledge acquisition : the transformation of knowledge from the forms in which it is available in the world into forms that can be used by a knowledge system

Components of ES (2)

   Interpreter: Justify ‘why’ a question was asked and ‘how’ it reached some conclusion.

Dynamic database:   All info about the current problem.

All conclusion that the system has been able to derive User interface: interact with application developer, domain expert, and knowledge engineer.

Reasoning technology

    Deduction Abduction Induction Inference in rule-based systems

Inference in rule-based systems (1)

  Domain knowledge is represented as IF-THEN rules Data are facts about the current situation.

Inference in rule-based systems (2)

 Inference chains  Forward Chaining (Data – Driven)  for analysis and interpretation.

 Backward Chaining (Goal – Driven)  for diagnosis

Forward Chaining (Data – Driven)

     Reasoning starts from data and proceeds forward with that data Each time only the top most rule is executed.

When fired, the rule adds a new fact in the database.

Any rule can be executed only once The match-fire cycle stops when no further rule can be fired

Backward Chaining (Goal – Driven)

     The ES has the goal (a hypothetical solution) and the inference engine attempts to prove it.

Find rules that might have the desired solution in the THEN parts Subgoal(s) might be needed in proving the IF parts Search rules that can prove the subgoal The process repeats.

How to develop an ES (1)

  ES vs problem-solving system    ES = knowledge + reasoning program = data structure + algorithm The difference is the way domain know is encoded in between.

Two basic steps:   Extracting the relevant knowledge from the human expert by a knowledge engineer.

S/he then develops the knowledge base of the ES

How to develop an ES (2)

   Knowledge acquisition generally involve interviewing the expert An ES should be   easily inspected and modified able to explain its reasoning Tools for building an ES    Program language : LISP , PROLOG , C++ General ES tool: OPS, UNITS, RLL,ROSIE ES Shell: EMYCIN, KAS, EXPERT, InterModeller

LISP

   The name

LISP

derives from "LISt Processing" Components    Linked lists are one of Lisp languages' major data structures Lisp source code is itself made up of lists All program code is written as s-expressions, or parenthesized lists Two well-known dialects:   Common Lisp->CLISP: http://clisp.cons.org/ Scheme-R6RS->Ikarus: http://ikarus-scheme.org/

Prolog

   Features:   The program logic is expressed in terms of relations, represented as facts and rules A computation is initiated by running a query over these relations Standards: ISO Prolog: http://pauillac.inria.fr/~deransar/prolog/docs.html

 The precise nature of unification  The precise semantics of the language; Implementations   GNU Prolog: http://www.gprolog.org/ SWI-Prolog: http://www.swi-prolog.org

Successful scenarios of ESs

       Dendral - analyse mass spectra Dipmeter Advisor - analysis of data gathered during oil exploration Mycin - diagnose infectious blood diseases and recommend antibiotics (by Stanford University) CADUCEUS (expert system) - blood-borne infectious bacteria NEXPERT Object - An early general-purpose commercial backwards-chaining inference engine used in the development of Expert Systems SHINE Real-time Expert System - Spacecraft Health INference Engine Informavores Firefly - Browser based expert systems environment built using flow charts and used in the development of Expert Systems

Pros & Cons (1)

 Pros:     Provide consistent answers for repetitive decisions, processes and tasks Hold and maintain significant levels of information Reduces creating entry barriers to competitors Review transactions that human experts may overlook

Pros & Cons (2)

 Cons      The lack of human common sense needed in some decision makings The creative responses human experts can respond to in unusual circumstances Domain experts not always being able to explain their logic and reasoning The challenges of automating complex processes The lack of flexibility and ability to adapt to changing environments as questions are standard and cannot be changed  Not being able to recognize when no answer is available