Knowledge Base Systems

Slides:



Advertisements
Similar presentations
EXPERT SYSTEMS AND KNOWLEDGE REPRESENTATION Ivan Bratko Faculty of Computer and Info. Sc. University of Ljubljana.
Advertisements

CHAPTER 13 Inference Techniques. Reasoning in Artificial Intelligence n Knowledge must be processed (reasoned with) n Computer program accesses knowledge.
Expert Systems Reasonable Reasoning An Ad Hoc approach.
CS 484 – Artificial Intelligence1 Announcements Choose Research Topic by today Project 1 is due Thursday, October 11 Midterm is Thursday, October 18 Book.
Supporting Business Decisions Expert Systems. Expert system definition Possible working definition of an expert system: –“A computer system with a knowledge.
ICT IGCSE Expert Systems.
Rule Based Systems Michael J. Watts
Chapter 12: Expert Systems Design Examples
Rule Based Systems Alford Academy Business Education and Computing
Expert System Human expert level performance Limited application area Large component of task specific knowledge Knowledge based system Task specific knowledge.
© C. Kemke1Expert Systems Tasks COMP 4200: Expert Systems Dr. Christel Kemke Department of Computer Science University of Manitoba.
© C. Kemke1Reasoning - Introduction COMP 4200: Expert Systems Dr. Christel Kemke Department of Computer Science University of Manitoba.
Introduction to Expert Systems
The role of the knowledge engineer. Knowledge acquisition.
Artificial Intelligence
1 5.0 Expert Systems Outline 5.1 Introduction 5.2 Rules for Knowledge Representation 5.3 Types of rules 5.4 Rule-based systems 5.5 Reasoning approaches.
CIS 430 ( Expert System ) Supervised By : Mr. Ashraf Yaseen Student name : Ziad N. Al-A’abed Student # : EXPERT SYSTEM.
1 Chapter 9 Rules and Expert Systems. 2 Chapter 9 Contents (1) l Rules for Knowledge Representation l Rule Based Production Systems l Forward Chaining.
Rules and Expert Systems
© C. Kemke1Reasoning - Introduction COMP 4200: Expert Systems Dr. Christel Kemke Department of Computer Science University of Manitoba.
Knowledge Acquisition CIS 479/579 Bruce R. Maxim UM-Dearborn.
Knowledge Acquisition. Knowledge Aquisition Definition – The process of acquiring, organising, & studying knowledge. Identified by many researchers and.
Marakas: Decision Support Systems, 2nd Edition © 2003, Prentice-Hall Chapter Chapter 7: Expert Systems and Artificial Intelligence Decision Support.
EXPERT SYSTEMS Part I.
Building Knowledge-Driven DSS and Mining Data
Artificial Intelligence CSC 361
Sepandar Sepehr McMaster University November 2008
Expert Systems.
Expert System Note: Some slides and/or pictures are adapted from Lecture slides / Books of Dr Zafar Alvi. Text Book - Aritificial Intelligence Illuminated.
Artificial Intelligence Lecture No. 15 Dr. Asad Ali Safi ​ Assistant Professor, Department of Computer Science, COMSATS Institute of Information Technology.
Chapter 6 Supplement Knowledge Engineering and Acquisition Chapter 6 Supplement.
Artificial Intelligence
Course Instructor: K ashif I hsan 1. Chapter # 2 Kashif Ihsan, Lecturer CS, MIHE2.
IDDS: Rules-based Expert Systems
School of Computer Science and Technology, Tianjin University
Knowledge based Humans use heuristics a great deal in their problem solving. Of course, if the heuristic does fail, it is necessary for the problem solver.
CSE & CSE6002E - Soft Computing Winter Semester, 2011 Expert Systems Introduction to Expert Systems Production Systems Architecture Applications.
Chapter 9: Rules and Expert Systems Lora Streeter.
 Architecture and Description Of Module Architecture and Description Of Module  KNOWLEDGE BASE KNOWLEDGE BASE  PRODUCTION RULES PRODUCTION RULES 
MNF IT-272 Kunstig intelligens - høst 2002 Forelesning 6. Emner: Kunnskapsintensiv problemløsning - kunnskapbaserte systemer, ekspertsystemer Regelbaserte.
Lecture 7: Requirements Engineering
CSE (c) S. Tanimoto, 2002 Expert Systems 1 Expert Systems Outline: Various Objectives in Creating Expert Systems Integration of AI Techniques into.
Educational Objectives
Chapter 13 Artificial Intelligence and Expert Systems.
Overview Of Expert System Tools Expert System Tools : are all designed to support prototyping. Prototype : is a working model that is functionally equivalent.
Expert Systems. L EARNING O BJECTIVES : By the end of this topic you should be able to: explain what is meant by an expert system describe the components.
1 Computer Group Engineering Department University of Science and Culture S. H. Davarpanah
ES component and structure Dr. Ahmed Elfaig The production system or rule-based system has three main component and subcomponents shown in Figure 1. 1.Knowledge.
Chapter 4 Decision Support System & Artificial Intelligence.
Expert Systems. Learning Objectives: By the end of this topic you should be able to: explain what is meant by an expert system describe the components.
Of An Expert System.  Introduction  What is AI?  Intelligent in Human & Machine? What is Expert System? How are Expert System used? Elements of ES.
Artificial Intelligence
Expert System Seyed Hashem Davarpanah University of Science and Culture.
1 Chapter 13 Artificial Intelligence and Expert Systems.
Survey on Expert System Seung Jun Lee Dept. of Nuclear and Quantum Engineering KAIST Mar 3, 2003.
Expert System / Knowledge-based System Dr. Ahmed Elfaig 1.ES can be defined as computer application program that makes decision or solves problem in a.
Artificial Intelligence: Applications
EXPERT SYSTEMS BY MEHWISH MANZER (63) MEER SADAF NAEEM (58) DUR-E-MALIKA (55)
Artificial Intelligence
Lecture 20. Recap The main components of an ES are –Knowledge Base (LTM) –Working Memory (STM) –Inference Engine (Reasoning)
The role of the knowledge engineer. Knowledge acquisition.
Advanced AI Session 2 Rule Based Expert System
CHAPTER 1 Introduction BIC 3337 EXPERT SYSTEM.
Chapter 9. Rules and Expert Systems
Introduction to Expert Systems Bai Xiao
Artificial Intelligence
Architecture Components
Intro to Expert Systems Paula Matuszek CSC 8750, Fall, 2004
전문가 시스템(Expert Systems)
Technology of Data Glove
Presentation transcript:

Knowledge Base Systems production rule representation.

Production Systems Introduction These are a form of knowledge representation which have found widespread application in AI particularly in the area of Expert Systems. Production systems consist of three parts: a) A rule base consisting of a set of production rules. b) the data c) an interpreter which controls the systems activity.

Production Rules A production rule can be thought of as a condition action pair. They take the form IF condition holds THEN do action e.g. IF traffic light is red THEN stop car.

Firing Production Rules A production rule whose conditions are satisfied can fire, i.e. the associated actions can be performed. Conditions are satisfied or not according to what data is currently available. Existing data may be modified as production rules are fired. Changes in data can lead to new conditions being satisfied. New production rules may then be fired.

The decision which production rule to fire next is taken by a program known as the interpreter. The interpreter therefore controls the systems decisions and actions and must know how to do this.

Production Systems Production systems were first proposed in 1943 by Post. Present day systems however bear little resemblance to those earlier ones. Newell and Simon in 1972 used the idea of production systems for their models of human cognition and AI in general has found widespread use for them.

Suitable Domains Davis and King (1977) proposed the following criteria for problem domains where productions rules are suitable. 1: Domains in which knowledge is diffuse, consisting of many different strands of knowledge rather than some domain which is based on a unified theory like Physics. 2: Domains in which processes cane be represented as a set of independent actions as opposed to domains with dependent subprocesses. 3: Domains in which knowledge can be easily separated from the manner in which it is to be used as opposed to cases where representation and control are merged.

Knowledge Base Systems Knowledge Base systems are intended to perform tasks which require some specialized knowledge and reasoning. Medical diagnosis, geological analysis, and chemical compound identification are examples of tasks to which Knowledge Base systems have been applied.

Expert Systems Knowledge Base systems are often called expert systems because the problems in their application domain are usually solved by human experts. For example medical diagnosis is usually performed by a doctor.

Parts of a Knowledge Base System Knowledge Base systems consist of Four major parts; The Knowledge Base, The Inference Engine The User Interface and The Explainer Knowledge Acquisition Module

Inference Engine Knowledge Base (rules) Working Memory (facts) Agenda Explanation Facility Knowledge Acquisition Facility User Interface 11

The knowledge to which the Knowledge Base system has access, is stored in the Knowledge Base, (hence the name). The Inference Engine is the part of a Knowledge Base system which is responsible for using its knowledge in a productive way. The Knowledge Base system's reasoning mechanisms are built into the Inference Engine. Most Knowledge Base systems employ deductive reasoning mechanisms.

The Knowledge Base system communicates with the user through the User Interface. In many applications the Knowledge Base system is required to explain its reasoning to the user. This is particularly true in situations such as the identification of chemical structures where new results must be verified. The Explainer is that part of the Expert System which provides explanation and verification

Knowledge Acquisition Modules These help with acquiring the systems knowledge. They do a variety of tasks for example in some systems they provide system analysis facilities similar to those of database development tools Mostly they help encode the knowledge from a high level format into a computer usable representation.

System Architecture

Inference Engine Knowledge Base (rules) Working Memory (facts) Agenda Explanation Facility Knowledge Acquisition Facility User Interface 16

Obviously the knowledge to which a Knowledge Base system has access is no good to it, if it cannot use it to solve the problems in the application domain. Therefore the systems knowledge must be represented in a form which can be manipulated by the reasoning mechanisms of the Inference Engine.

While the Knowledge Base, the IE and the User Interface are essential components, in many Knowledge Base systems there are also facilities to help in the acquisition of new knowledge. Teiresias, [DAVIS '76], which is used in association with MYCIN, [Shortliffe '76, Davis '76] is an example of such a system. It elicits high level information from the user which it converts into structured knowledge for its Knowledge Base. It also performs consistency checks on the updated knowledge base. The ability to acquire new knowledge is important since the amount of knowledge to which a system has access determines the range of problems which it can solve.

Applications of Knowledge Base systems Knowledge Base systems have been applied to many diverse problem domains, such as the following. Diagnostic Aids such as MYCIN, [Shortliffe '76, Davis '76], which diagnoses bacterial blood infections and PUFF, [Kunz et al '78], which diagnose pulmonary disorders. MYCIN was a joint venture between Dept. of Computer Science and the Medical School of Stanford University. Much of the work took place in the 1970's. Mycin was designed to solve the problem of diagnosing and recommending treatments for meningitis and bacteremia, (blood infections).

Aids to Design and Manufacture such as R1, [McDermott '82], which configures computers. Teaching Aids such as SCHOLAR [Carbonell '70] which gives Geography Tutorials and SOPHIE, [Brown et al '82], which teaches how to detect breakdown in electrical circuits. Problem Solving

Recognition of forms, e. g Recognition of forms, e.g. DENDRAL, [Buchanan and Feigenbaum '78, Lindsay et al '80], which recognizes the structures of chemical compounds. Robotics e.g. SHDRLU, [Winograd '73], which manipulates polygons in a restricted environment. Game playing systems such as Waterman's Poker Player, [Waterman '70], and

Automatic theorem Provers such as AM, [Lenat '82]. [Hayes-Roth et al '83, Handbook A.I. '82, Waterman '86], describe some more categories than those mentioned above. These include Planning systems such as NOAH, [Sacerdoti '75] and MOLGEN, [Friedland '75] and Prediction systems such as Political Forecasting Systems, [Schrodt '86] based on the Holland Classifier, [Holland '86].

Rule-Based Expert Systems Work with a set of facts describing the current world state a set of rules describing the expert knowledge inference mechanisms for combining facts and rules in reasoning 23

Architecture of Rule-Based XPS 1 Knowledge-Base / Rule-Base stores expert knowledge as “condition-action-rules” (or: if-then- or premise-consequence-rules) objects or frame structures are often used to represent concepts in the domain of expertise, e.g. “club” in the golf domain. Working Memory stores initial facts and generated facts derived by the inference engine additional parameters like the “degree of trust” in the truth of a fact or a rule ( certainty factors) or probabilistic measurements can be added 24

Knowledge Engineering Knowledge engineering is a general term for the processes involved in building expert systems: planning, knowledge acquisition, system building,system installation, system maintenance. In the following notes "KE" stands for knowledge engineer, and "DE" stands for domain expert.

Architecture of Rule-Based Systems Inference Engine matches condition-part of rules against facts stored in Working Memory (pattern matching); rules with satisfied condition are active rules and are placed on the agenda; among the active rules on the agenda, one is selected (see conflict resolution, priorities of rules) as next rule for execution (“firing”) – consequence of rule can add new facts to Working Memory, modify facts, retract facts, and more 26

Rule-Based Systems - Example ‘Grades’ - Rules to determine ‘grade’ If study then get good_grade If do not_study then get bad_grade If sun_shines THEN go_out If go_out then do not_study If stay_home then study If awful_weather then stay_home 27

Questions Ask the following questions of the expert System Q1: If the weather is awful, do you get a good or bad grade? Q2: When do you get a good grade?

forward reasoning rule chain given fact: awful_weather 6,5,1 backward reasoning hypothesis/goal: good_grade 1,5,6 Answer Question 1 Good Grade Exercise Answer question 2 with forward and backward chaining

Explaining Note we presented a rule chain when we solved this problem. If we asked How do you know we get a good grade in awful weather we can say that By rule 6 if the weather is awful stay at home By rule 5 If stay at home then you will study And finally By rule 1 if you study you get a good grade

In other words In order to explain how we arrive at a solution we list the chain of rules that were fired on rout to this conclusion. This is the basis of expert system explainers

Knowledge Acquisition Obtaining knowledge for use in the knowledge base of an expert system.

Sources of knowledge: Documents: textbooks, journal articles, technical reports, case histories, etc. This will almost never be sufficient to provide the knowledge base for a real-world expert system. The range of problems which a textbook examines and solves is always smaller than the range of problems that a human expert is master of.

Knowledge Analysis Simultaneously with the knowledge acquisition process, a knowledge analysis process takes place. The KE uses the data from the knowledge acquisition sessions to build a good model of the expertise that the DE is using to solve problems in the domain. This may or not rely heavily on building a prototype - see below.

Knowledge Elicitation The most important branch of knowledge acquisition is knowledge elicitation - obtaining knowledge from a human expert (or human experts) for use in an expert system. Knowledge elicitation is difficult. This is the principle reason why expert systems have not become more widespread - the knowledge elicitation bottleneck. It is necessary to find out what the expert(s) know, and how they use their knowledge..

Human experts Expert knowledge includes: domain-related facts & principles; modes of reasoning; reasoning strategies; explanations and justifications.

Knowledge elicitation and experts The knowledge elicitation (and analysis) task involves: Finding at least one expert in the domain who: is willing to provide his/her knowledge; has the time to provide his/her knowledge; is able to provide his/her knowledge. Repeated interviews with the expert(s), plus task analysis, concept sorting, etc, etc.. Knowledge structuring: converting the raw data (taken from the expert) into intermediate representations, prior to building a working system.

Knowledge Elicitation continued Building a model of the knowledge derived from the expert, for the expert to criticise. From then on, the development proceeds by stepwise refinement. One major obstacle to knowledge elicitation: experts cannot easily describe all they know about their subject. They do not necessarily have much insight into the methods they use to solve problems. Their knowledge is "compiled" (c.f. a compiled computer program – fast & efficient, but unreadable).

Techniques used in Knowledge Elicitation Various different forms of interview: Unstructured. A general discussion of the domain, designed to provide a list of topics and concepts. Structured. Concerned with a particular concept within the domain. Problem-solving. The expert is provided with a real-life problem, of a kind that they deal with during their working life, and asked to solve it. As they do so, they are required to describe each step, and their reasons for doing what they do. The transcript of their verbal account is called a protocol.

Think-aloud. As above, but the expert merely imagines that they are solving the problem presented to them, rather than actually doing it. Once again, they describe the steps involved in solving the problem. Dialogue. The expert interacts with a client, in the way that they would normally do during their normal work routine.

Review. It is standard practice to tape record KE sessions. However, KEs should be aware of the costs this involves, in time and money. The KE and DE examine the record of on of the sessions described above, together.

More Methods Sample lecture preparation. The expert prepares a lecture, and the KE analyses its content. Concept sorting ("card sort"). Questionnaires. Especially useful when the knowledge is to be elicited from several different experts. Repertory grid (particularly the "laddered grid" technique).

Computerised knowledge elicitation. The state of the art in AI (especially NLP) is not sufficiently advanced to permit fully-automated knowledge elicitation. However, 'knowledge elicitation workbenches', or 'knowledge engineering environments', are commercially available (e.g KEE, KnAcqTools); their principle use is to simplify the task of converting a protocol into frames, rules, etc., and inserting these structures into an expert system shell as soon as they are formulated.