+ All Categories
Home > Documents > MNF IT-272 Kunstig intelligens - høst 2002 Forelesning 6. Emner: Kunnskapsintensiv problemløsning...

MNF IT-272 Kunstig intelligens - høst 2002 Forelesning 6. Emner: Kunnskapsintensiv problemløsning...

Date post: 02-Jan-2016
Category:
Upload: eustace-tucker
View: 215 times
Download: 1 times
Share this document with a friend
29
MNF IT-272 Kunstig intelligens - høst 2002 Forelesning 6. Emner: •Kunnskapsintensiv problemløsning - kunnskapbaserte systemer, ekspertsystemer Regelbaserte systemer • Modellbaserte systemer Kunnskapsakkvisisjon og -modellering
Transcript

MNF IT-272 Kunstig intelligens - høst 2002Forelesning 6.

Emner:

• Kunnskapsintensiv problemløsning - kunnskapbaserte systemer, ekspertsystemer

• Regelbaserte systemer

• Modellbaserte systemer

• Kunnskapsakkvisisjon og -modellering

RULE BASED

Expert system: A knowledge-based computer program designed to model the problem-solving ability of a human expert. - Knowledge is acquired from various sources (e.g., primarily a human expert, but also books, reports, drawings, visual inspections). - Expert systems do not attempt to simulate human mental architecture, but emulate human expert's methodology and performance.

SYSTEMS

EXPERT

-Rule-based systems were the first expert systems, but the term now cover model-based and case-based methods as well.

Expert system application areas:

Control: control systems adaptively govern the behaviour of a given system to meet specifications(e.g., manufacturing process, treatment of a patient)

Prediction: inferring likely consequences of a given situation (e.g., predicting the expected damage to a crop from an invading insect).

Diagnosis: infer system malfunctions or faults from observable information ( finding the disease of a patient from her symptoms.)

Design: configures objects under a set of problem constraints(e.g., design of electronic circuits)

Planning: form actions to achieve a given goal under problem constraints (e.g., (a robot's accomplishment of a given work function).

Monitoring: compare observable information on the behaviour of a system with system states that are considered important to its operation (e.g., interpretation of signals from sensors).

Debugging and repair: proposing and implementing remedies for malfunctions.

Instruction: guides the education of students in a given topic.

Interpretation: produce an understanding of a situation from available information (e.g., interpretation of speech analysis results).

Important aspects of expert systems:

- separation of control from knowledge.- modularity of knowledge- ease of expansion- ability of explanation- utilization of heuristic knowledge- utilization of uncertain knowledge

Separation of control from knowledge:

The work by Newell and Simon on the production systems model implied that the human's knowledge about a problem was separate from the reasoning with that knowledge. This feature permits you to change the systems knowledge or control separately.

Advantages: - knowledge can be represented in a natural form of IF THEN rules. This form is easy for human experts to express their problem solving techniques.

- expert system builders can focus on capturing and organising problem-solving knowledge, independent from the implementation of control structures.

- one part of the knowledge base can be changed without affecting other parts of the system.

- same control and interface software can be used in a variety of systems(allows the use of shells)

- alternative control regimes can be tested for the same rule base.

Modularity of knowledge:

A rule is an independent chunk of knowledge. It logically derives facts that can be concluded about the problem contained in its THEN part from the facts that are established in its IF part. Since it is an independent piece of knowledge, you can easily review it and verify its correctness.

Ease of expansion:

The separation of the system's knowledge from its control permits you to easily add additional rules allowing for expansion of the system's knowledge.

Ability of explanation:

- Expert systems has a module called explanation facility. Using this facility, an expert system can provide an explanation to the user about why it is asking a question and how it reached some conclusion.

- The explanation facility provides a benefit to both the system's developer and user. The developer can use it to uncover errors in the system's knowledge. The user benefits from the transparency provided into the system's reasoning.

-Explaining HOW:

-Besides providing a final result, both human experts and expert systems can explain how they arrived at a result.. - Expert system works with ill-defined domains This situation brings into question the validity of the system's findings, which requires that a justification be given to support the results. - Expert systems respond to a HOW query in a similar fashion by tracing back through the rules that established the conclusion. This tracing is a map of the system's line of reasoning.

- Explaining WHY:

- An expert system can also explain why it is asking a given question. - When asked why some question is posed, the expert system respond by describing what they might conclude from the answer. Most expert systems respond to WHY query by displaying the rule itself it is currently pursuing.

Utilization of heuristic knowledge

A typical trait of human experts is that they are particularly adept at using "rules of thumb" or "heuristics" to help them to solve a problem efficiently. These heuristics are "tricks of the trade" that they learn from experience and are often more valuable to them than fundamental principles that might be learned in a classroom setting. Rule-based systems are well suited for working with these heuristics. You can write heuristic rules that work in a common-sense fashion to draw conclusions or to efficiently control the search of the knowledge base.

Utilization of uncertain knowledge:

For many problems, available information will only establish a level of belief rather than assert it with complete certainty. Rules can easily be written that capture this uncertain relationships.

Architecture of Expert Systems

user interface: - serves to provide the end user with a friendly means of communicating with the expert system. - provides convenient interaction using menus, natural language, and/or graphical display. - can be used -to pose questions to the user about the problem at hand,

- for providing explanations about why it is asking a particular question.-by the user to query how a particular decision is made

general knowledge base:

- contains the problem solving knowledge that has been gathered by the knowledge engineer from the domain expert and other sources.

- this knowledge is often heuristic in nature, but may also contain deeper, multirelational models, or specific experiences (cases).

case specific data (working memory):

- contains all the information provided by the user about the current problem and all conclusions that the program has been able to derive. - conclusions include both the final ones representing the solution required by the user and intermediate ones that act as stepping stones in the path to the ultimate conclusion.

inference engine:

- is the interpreter of the knowledge stored in the knowledge bases . - selects and applies relevant parts of the knowledge base to a particular problem.

explanation subsytem:

- knowledge-based editor:

- some systems include a user-friendly knowledge editor for entering and editing the knowledge base. - it has the advantage of verifying the consistency of the updated knowledge base.

Selecting a problem for expert system development

Some the principal reasons expert systems are developedto replace an expert are:

-The need for the solution justifies the cost and effort of building an expert system.

- Human expert is not available

- The problem may be solved using symbolic reasoning techniques.

- The problem structure does not require commonsense reasoning

- The problem may not be solved using traditiona computation methods.

- Cooperative and articulate domain expert exist.

- The problem is of proper size and scope.

The Knowledge Engineering Process

- The main players on an expert system project are the domain expert, the knowledge engineer, and the end user.

- Knowledge engineer designs, builds, and tests the expert system.

- The major tasks of an knowledge engineer:

- selecting the software and hardware tools - knowledge acquisition - organisation of this knowledge - problem-solving method identification - coding the system - testing the sytem - Domain expert possess the skill and knowledge to solve a specific problem in a manner superior the others.

- End user: The final expert system should meet the needs of the end user. These needs concern:

- user interface - level of explanation - information entry - form of final results

- Expert System development, is a highly iterative process.

- The designer partially builds the system, tests it, then modifies the system's knowledge.

- This process is repeated throughout the project where the system's knowledge grow with each test.

Phases in expert sytem development:

Assesment

Knowledge acquisition

Design

Documentation

Maintenance

Test

Refinements

Explorations

Requirements

Knowledge

Structure

Evaluation

Product

Learning

Assesment:

- determination of feasibility and justification of the candidate problem.

- definition of the overall goal of the project. - specification of important features and the scope of the project.

- establishment of the needed resources, including project personel.

Knowledge Acquisition:

- ’extraction’ of knowledge from the domain expert, analysis and modelling of the knowledge

Design:

- methods for processing the knowledge is determined.

- a software tool is chosen to represent and reason with the sytem's knowledge

- design of user interface - an initial prototype is built.

- most often a constructive process, in which the domain expert and nowledge eningeer cooperate

Testing:

- this is not a separate phase, but rather a continual process throughout the project. - each time a new knowledge is added to the sytem, the system is tested.

- the major objective of testing is to validate the overall structure of the system and its knowledge. - studies the acceptability of the system by the user.

Documentation

- all the project's knowledge is documented such as to meet the requirements of both the user and the developer of the system.

Conceptual models and their role in Knowledge Acquisition:

- the knowledge of domain expert is often vague and incomplete

- the knowledge engineer translates this knowledge into a formal language

- knowledge acquision is the bottlenect of expert system development because:

- human expertise is often not explicitely retrievable,

- human expertise has often the form of knowing how, rather than knowing what,

- human expertise is subjective

- expertise changes.

- is not a formal or executable model

- is a bridge between human expertise and its implementation, serves an intermediate role in formalization of knowledge

- is a knowledge level model of the systems and its interaction with the world

- Conceptual model

KNOWLEDGE ENGINEERING AS MODELING

Task Reality

Model ofTaskReality

Modeling

(Sub)Problem Description

(Partial)Solution to Problem

Task reality : The entire spatial and temporal extensionof the world which is relevant for accomplishinga real-world task.

Task: What is to be accomplished(goal, purpose) .

Method: How a task is accomplished(procedure, control).

Agent: The physical entity who accomplishes a task(human, machine).

Domain knowledge (Object knowledge) :Possessed by agents and used within methods

LEVELS OF SYSTEM DESCRIPTION

Knowledge Level

Functional Level

Physical Level

THE KNOWLEDGE LEVEL IN AI:

A. Newell: "There exists a distinct computer system level,lying immediately above the symbol level, which ischaracterized by knowledge as the medium and theprinciple of rationality as the law of behavior."

Knowledge levelMedium: KnowledgeBh. laws: Principle of Rationality

Symbol levelMedium: Programs, data structuresBh. laws: Sequential interpretation of programs

Register-transfer levelMedium: Bit vectorsBh. laws: Paralell logic

Logic circuit levelMedium: BitsBh. laws: Boolean algebra

Electrical circuit levelMedium: Voltage/currentBh. laws: Ohm's law, Kirchhoff's law

Electronic device levelMedium: ElectronsBh. laws: Electron physics

OPERATIONALIZING THE KL:

• KL in Newell's sense is purely intentional, andas such it contains no structure.

• A current trend in Knowledge Acquisition is todevelop knowledge engineering methodologiesbased on an 'operationalization' of the KL

- by providing high-level structuresand structuring means

- by viewing rationality as bounded.

EXAMPLES:

KADS, COMMET, GTs, RLMs, MTA , ...

Tools:KPT, KREST, MDX, SFB, PROTEGE, ...

KADS (KADS-I)

FOUR-LAYER STRUCTURE

strategic layer

task layer

inference layer

domain layer

plans, meta-rules, repairs, impasses

goals, tasks

meta-classes, knowledge sources

concepts, relations and structures

process structure

task structure

inference structure

axiomatic structure

describes

applies

controls

layer relation objects organization

INFERENCE STRUCTURE , TASK STRUCTURE

select

decompose

specify

compare

observables data complaint

conclusion

norm

difference

set of hypotehses

parameter-value

select

system-model

FIND (DIAGNOSIS)

SELECT (SYSTEM-MODEL)

WHILE (NOT CONCLUSION)

DECOMPOSE (SYSTEM MODEL)

WHILE (NUMBER-OF HYPOTHESES > 1)

SELECT (PARAMETER-VALUE)

SPECIFY (NORM)

COMPARE (PARAMETER-VALUE, NORM)

Inference structure: Task structure:

CommonKADS (KADS-II) KNOWLEDGE CATEGORIES

Application

Knowledge

Epistemological

Categories

Problem Solving

Knowledge

Domain

Knowledge

Inference

Knowledge

Task

Knowledge

Problem Solving

Methods

Strategic

Knowledge

COMMET (CONSTRUCT)COMPONENTS OF EXPERTISE

MODELS

METHODS

TASKS

TASK STRUCTURES,MODEL DEPENDENCIES,METHOD TYPES

domainmodel-1

userdomainmodel-2

casemodel-1

casemodel-2

model constructionactivity

Task Decomposition Model Dependency Diagram Control Diagram

Methods:• Decompose tasks• Execute tasks• Assign tasks to model construction ativities• Impose control over tasks

Task-1 Task-2 Task-3

c1

c2

Expert System Architecture

- Three main components: - domain knowledge base represents the expertise

- case specific data (working memory), all the knowledge related to a particular problem

- inference engine, searches the rules for a match between their premises and information contained in the case specific data. This search may be conducted either forward or backward direction.

Explanation and Transparency

- implementation of graph search

- keeping track of the search

- using the trace of this search to explain to the user

- The user can inspect the system in every step:

- by asking WHY and HOW questions.

Ex:

From a dialogue between the user and the system: (S: system, U: user)

S : gas in fuel tank?U : yes

S : gas in carburetor?U : yes

S: engine will turn over?U: Why -------------- user asks why the system asks this question

S: it has been established that: 1. engine is getting gas, therefore if 2. engine will turn over,

then the problem is spark plug.

U: how engine is getting gas?S: This follows from rule 4:

if gas in fuel tank, and gas in carburetor

then engine is getting gas. gas in fuel tank is given by the user gas in carburetor was given by the user.

Heuristics and control in Expert Systems:

- experts use heuristics to find short cuts to a solution.

- heuristics are fallible.

- Heuristic reasoning does not follow a prescribed sequence of steps (opposed to algorithms of conventional programs)

Control in expert systems

- since knowledge base and inference engine is separate, and the search strategy is determined by the inference engine,

contol of the search through the structure of the rules.

- the dual semantic of rule the following rule is interpreted as an sequential execution of P, Q, R:

if P , Q and R then S

- that is, the order of premises imposes a control on the search.

Model-Based Reasoning

• Reasoning: Based on ”deeper” knowledge than rules

Typical models:- causal- functional- behaviourial-> a combination of several submodels

• Representation

Different relations than rule-based’s ”if-then” relation:- taxonomical (”has-subclass”, ”has-instance”)- ”has-part”- ”causes”

Often multiple relations combined!


Recommended