© 2002-2009 Franz J. Kurfess Expert System Design 1 CPE/CSC 481: Knowledge-Based Systems Dr. Franz...

58
© 2002-2009 Franz J. Kurfess Expert System Design 1 CPE/CSC 481: Knowledge-Based Systems Dr. Franz J. Kurfess Computer Science Department Cal Poly
  • date post

    21-Dec-2015
  • Category

    Documents

  • view

    215
  • download

    1

Transcript of © 2002-2009 Franz J. Kurfess Expert System Design 1 CPE/CSC 481: Knowledge-Based Systems Dr. Franz...

Page 1: © 2002-2009 Franz J. Kurfess Expert System Design 1 CPE/CSC 481: Knowledge-Based Systems Dr. Franz J. Kurfess Computer Science Department Cal Poly.

© 2002-2009 Franz J. Kurfess Expert System Design 1

CPE/CSC 481: Knowledge-Based Systems

CPE/CSC 481: Knowledge-Based Systems

Dr. Franz J. Kurfess

Computer Science Department

Cal Poly

Page 2: © 2002-2009 Franz J. Kurfess Expert System Design 1 CPE/CSC 481: Knowledge-Based Systems Dr. Franz J. Kurfess Computer Science Department Cal Poly.

© 2002-2009 Franz J. Kurfess Expert System Design 2

Usage of the SlidesUsage of the Slides these slides are intended for the students of my

CPE/CSC 481 “Knowledge-Based Systems” class at Cal Poly SLO if you want to use them outside of my class, please let me know

([email protected]) I usually put together a subset for each quarter as a

“Custom Show” to view these, go to “Slide Show => Custom Shows”, select the

respective quarter, and click on “Show” To print them, I suggest to use the “Handout” option

4, 6, or 9 per page works fine Black & White should be fine; there are few diagrams where

color is important

Page 3: © 2002-2009 Franz J. Kurfess Expert System Design 1 CPE/CSC 481: Knowledge-Based Systems Dr. Franz J. Kurfess Computer Science Department Cal Poly.

© 2002-2009 Franz J. Kurfess Expert System Design 3

Course OverviewCourse Overview Introduction Knowledge Representation

Semantic Nets, Frames, Logic

Reasoning and Inference Predicate Logic, Inference

Methods, Resolution

Reasoning with Uncertainty Probability, Bayesian Decision

Making

Expert System Design ES Life Cycle

CLIPS Overview Concepts, Notation, Usage

Pattern Matching Variables, Functions,

Expressions, Constraints

Expert System Implementation Salience, Rete Algorithm

Expert System Examples Conclusions and Outlook

Page 4: © 2002-2009 Franz J. Kurfess Expert System Design 1 CPE/CSC 481: Knowledge-Based Systems Dr. Franz J. Kurfess Computer Science Department Cal Poly.

© 2002-2009 Franz J. Kurfess Expert System Design 4

Overview Expert System DesignOverview Expert System Design Motivation Objectives Chapter Introduction

Review of relevant concepts Overview new topics Terminology

ES Development Life Cycle Feasibility Study Rapid Prototype Refined System Field Testable Commercial Quality Maintenance and Evolution

Software Engineering and ES Design Software Development Life

Cycle

Linear Model ES Life Cycle Planning Knowledge Definition Knowledge Design Knowledge Verification

Important Concepts and Terms

Chapter Summary

Page 5: © 2002-2009 Franz J. Kurfess Expert System Design 1 CPE/CSC 481: Knowledge-Based Systems Dr. Franz J. Kurfess Computer Science Department Cal Poly.

© 2002-2009 Franz J. Kurfess Expert System Design 6

Material [Durkin 1994]Material [Durkin 1994]

Chapter: 8: Designing Backward-Chaining Rule-Based Systems

Chapter 10: Designing Forward-Chaining Rule-Based Systems

Chapter 15: Designing Frame-Based Expert Systems

Chapter 18: Knowledge Engineering

Page 6: © 2002-2009 Franz J. Kurfess Expert System Design 1 CPE/CSC 481: Knowledge-Based Systems Dr. Franz J. Kurfess Computer Science Department Cal Poly.

© 2002-2009 Franz J. Kurfess Expert System Design 7

Material [Jackson 1999]Material [Jackson 1999]

Chapter 14, 15: Constructive Problem Solving Chapter 16: Designing for Explanation

Page 7: © 2002-2009 Franz J. Kurfess Expert System Design 1 CPE/CSC 481: Knowledge-Based Systems Dr. Franz J. Kurfess Computer Science Department Cal Poly.

© 2002-2009 Franz J. Kurfess Expert System Design 8

Material [Sommerville 2001] Material [Sommerville 2001]

Chapter 3: Software processes waterfall model evolutionary development

spiral model

formal methods reuse-based methods

Chapter 8: Software prototyping rapid prototyping techniques

Page 8: © 2002-2009 Franz J. Kurfess Expert System Design 1 CPE/CSC 481: Knowledge-Based Systems Dr. Franz J. Kurfess Computer Science Department Cal Poly.

© 2002-2009 Franz J. Kurfess Expert System Design 9

LogisticsLogistics Introductions Course Materials

textbooks (see below) lecture notes

PowerPoint Slides will be available on my Web page handouts Web page

http://www.csc.calpoly.edu/~fkurfess

Term Project Lab and Homework Assignments Exams Grading

Page 9: © 2002-2009 Franz J. Kurfess Expert System Design 1 CPE/CSC 481: Knowledge-Based Systems Dr. Franz J. Kurfess Computer Science Department Cal Poly.

© 2002-2009 Franz J. Kurfess Expert System Design 10

Bridge-InBridge-In

Page 10: © 2002-2009 Franz J. Kurfess Expert System Design 1 CPE/CSC 481: Knowledge-Based Systems Dr. Franz J. Kurfess Computer Science Department Cal Poly.

© 2002-2009 Franz J. Kurfess Expert System Design 11

Pre-TestPre-Test

Page 11: © 2002-2009 Franz J. Kurfess Expert System Design 1 CPE/CSC 481: Knowledge-Based Systems Dr. Franz J. Kurfess Computer Science Department Cal Poly.

© 2002-2009 Franz J. Kurfess Expert System Design 12

MotivationMotivation

reasons to study the concepts and methods in the chapter main advantages potential benefits

understanding of the concepts and methods relationships to other topics in the same or related

courses

Page 12: © 2002-2009 Franz J. Kurfess Expert System Design 1 CPE/CSC 481: Knowledge-Based Systems Dr. Franz J. Kurfess Computer Science Department Cal Poly.

© 2002-2009 Franz J. Kurfess Expert System Design 13

ObjectivesObjectives regurgitate

basic facts and concepts understand

elementary methods more advanced methods scenarios and applications for those methods important characteristics

differences between methods, advantages, disadvantages, performance, typical scenarios

evaluate application of methods to scenarios or tasks

apply methods to simple problems

Page 13: © 2002-2009 Franz J. Kurfess Expert System Design 1 CPE/CSC 481: Knowledge-Based Systems Dr. Franz J. Kurfess Computer Science Department Cal Poly.

© 2002-2009 Franz J. Kurfess Expert System Design 14

ES Development MethodsES Development Methods

commercial quality systems require a systematic development approach ad hoc approaches may be suitable for research

prototypes or personal use, but not for widely used or critical systems

some software engineering methods are suitable for the development of expert systems

Page 14: © 2002-2009 Franz J. Kurfess Expert System Design 1 CPE/CSC 481: Knowledge-Based Systems Dr. Franz J. Kurfess Computer Science Department Cal Poly.

© 2002-2009 Franz J. Kurfess Expert System Design 15

Problem SelectionProblem Selection the development of an expert system should be

based on a specific problem to be addressed by the system

it should be verified that expert systems are the right paradigm to solve that type of problem not all problems are amenable to ES-based solutions

availability of resources for the development experts/expertise hardware/software users sponsors/funds

Page 15: © 2002-2009 Franz J. Kurfess Expert System Design 1 CPE/CSC 481: Knowledge-Based Systems Dr. Franz J. Kurfess Computer Science Department Cal Poly.

© 2002-2009 Franz J. Kurfess Expert System Design 16

Project ManagementProject Management

activity planning planning, scheduling, chronicling, analysis

product configuration management product management change management

resource management need determination acquisition resources assignment of responsibilities identification of critical resources

Page 16: © 2002-2009 Franz J. Kurfess Expert System Design 1 CPE/CSC 481: Knowledge-Based Systems Dr. Franz J. Kurfess Computer Science Department Cal Poly.

© 2002-2009 Franz J. Kurfess Expert System Design 17

ES Development StagesES Development Stages feasibility study

paper-based explanation of the main idea(s) no implementation

rapid prototype quick and dirty implementation of the main idea(s)

refined system in-house verification by knowledge engineers, experts

field test system tested by selected end users

commercial quality system deployed to a large set of end users

maintenance and evolution elimination of bugs additional functionalities

Page 17: © 2002-2009 Franz J. Kurfess Expert System Design 1 CPE/CSC 481: Knowledge-Based Systems Dr. Franz J. Kurfess Computer Science Department Cal Poly.

© 2002-2009 Franz J. Kurfess Expert System Design 18

Error Sources in ES DevelopmentError Sources in ES Development

knowledge errors semantic errors syntax errors inference engine errors inference chain errors limits of ignorance errors

Page 18: © 2002-2009 Franz J. Kurfess Expert System Design 1 CPE/CSC 481: Knowledge-Based Systems Dr. Franz J. Kurfess Computer Science Department Cal Poly.

© 2002-2009 Franz J. Kurfess Expert System Design 19

Knowledge ErrorsKnowledge Errors problem: knowledge provided by the expert is

incorrect or incomplete reflection of expert’s genuine belief omission of important aspects inadequate formulation of the knowledge by the expert

consequences existing solution not found wrong conclusions

remedy validation and verification of the knowledge

may be expensive

Page 19: © 2002-2009 Franz J. Kurfess Expert System Design 1 CPE/CSC 481: Knowledge-Based Systems Dr. Franz J. Kurfess Computer Science Department Cal Poly.

© 2002-2009 Franz J. Kurfess Expert System Design 20

Semantic ErrorsSemantic Errors problem: the meaning of knowledge is not properly

communicated knowledge engineer encodes rules that do not reflect what

the domain expert stated expert misinterprets questions from the knowledge

engineer consequences

incorrect knowledge, inappropriate solutions, solutions not found

remedy formalized protocol for knowledge elicitation validation of the knowledge base by domain experts

Page 20: © 2002-2009 Franz J. Kurfess Expert System Design 1 CPE/CSC 481: Knowledge-Based Systems Dr. Franz J. Kurfess Computer Science Department Cal Poly.

© 2002-2009 Franz J. Kurfess Expert System Design 21

Syntax ErrorsSyntax Errors

problem: rules or facts do not follow the syntax required by the tool used knowledge engineer is not familiar with the method/tool syntax not clearly specified

consequences knowledge can’t be used

solutions syntax checking and debugging tools in the ES

development environment

Page 21: © 2002-2009 Franz J. Kurfess Expert System Design 1 CPE/CSC 481: Knowledge-Based Systems Dr. Franz J. Kurfess Computer Science Department Cal Poly.

© 2002-2009 Franz J. Kurfess Expert System Design 22

Inference Engine ErrorsInference Engine Errors problem: malfunctions in the inference component of

the expert system bugs resource limitations

e.g. memory

consequences system crash incorrect solutions existing solutions not found

remedy validation and verification of the tools used

Page 22: © 2002-2009 Franz J. Kurfess Expert System Design 1 CPE/CSC 481: Knowledge-Based Systems Dr. Franz J. Kurfess Computer Science Department Cal Poly.

© 2002-2009 Franz J. Kurfess Expert System Design 23

Inference Chain ErrorsInference Chain Errors

problem: although each individual inference step may be correct, the overall conclusion is incorrect or inappropriate causes: errors listed above; inappropriate priorities of

rules, interactions between rules, uncertainty, non-monotonicity

consequences inappropriate conclusions

remedy formal validation and verification use of a different inference method

Page 23: © 2002-2009 Franz J. Kurfess Expert System Design 1 CPE/CSC 481: Knowledge-Based Systems Dr. Franz J. Kurfess Computer Science Department Cal Poly.

© 2002-2009 Franz J. Kurfess Expert System Design 24

Limits of Ignorance ErrorsLimits of Ignorance Errors

problem: the expert system doesn’t know what it doesn’t know human experts usually are aware of the limits of their

expertise

consequences inappropriate confidence in conclusions incorrect conclusions

remedy meta-reasoning methods that explore the limits of the

knowledge available to the ES

Page 24: © 2002-2009 Franz J. Kurfess Expert System Design 1 CPE/CSC 481: Knowledge-Based Systems Dr. Franz J. Kurfess Computer Science Department Cal Poly.

© 2002-2009 Franz J. Kurfess Expert System Design 25

Expert Systems and Software EngineeringExpert Systems and

Software Engineering software process models

waterfall spiral

use of SE models for ES development ES development models

evolutionary model incremental model spiral model

Page 25: © 2002-2009 Franz J. Kurfess Expert System Design 1 CPE/CSC 481: Knowledge-Based Systems Dr. Franz J. Kurfess Computer Science Department Cal Poly.

© 2002-2009 Franz J. Kurfess Expert System Design 26

Generic Software Process ModelsGeneric Software Process Models waterfall model

separate and distinct phases of specification and development

evolutionary development specification and development are interleaved

formal systems development a mathematical system model is formally transformed to an

implementation

reuse-based development the system is assembled from existing components

[Sommerville 2001]

Page 26: © 2002-2009 Franz J. Kurfess Expert System Design 1 CPE/CSC 481: Knowledge-Based Systems Dr. Franz J. Kurfess Computer Science Department Cal Poly.

© 2002-2009 Franz J. Kurfess Expert System Design 27

Waterfall ModelWaterfall Model

[Sommerville 2001]

Page 27: © 2002-2009 Franz J. Kurfess Expert System Design 1 CPE/CSC 481: Knowledge-Based Systems Dr. Franz J. Kurfess Computer Science Department Cal Poly.

© 2002-2009 Franz J. Kurfess Expert System Design 28

Suitability of Software Models for ES Development

Suitability of Software Models for ES Development

the following worksheets help with the evaluation of software models for use in the development of expert systems identify the key differences between conventional software

development and ES development with respect to a specific model

what are the positive and negative aspects of the model for ES development

evaluate the above issues, and give the model a score 10 for perfectly suited, 0 for completely unsuitable

determine the overall suitability high, medium low explanation

Page 28: © 2002-2009 Franz J. Kurfess Expert System Design 1 CPE/CSC 481: Knowledge-Based Systems Dr. Franz J. Kurfess Computer Science Department Cal Poly.

© 2002-2009 Franz J. Kurfess Expert System Design 29

Aspect Evaluation Scorekey differences

positive

negative

Waterfall WorksheetWaterfall Worksheet

overall suitability: � high � medium � low explanation

Page 29: © 2002-2009 Franz J. Kurfess Expert System Design 1 CPE/CSC 481: Knowledge-Based Systems Dr. Franz J. Kurfess Computer Science Department Cal Poly.

© 2002-2009 Franz J. Kurfess Expert System Design 30

Evolutionary DevelopmentEvolutionary Development

exploratory development objective is to work with customers and to evolve a final

system from an initial outline specification. should start with well-understood requirements

throw-away prototyping objective is to understand the system requirements. should

start with poorly understood requirements

[Sommerville 2001]

Page 30: © 2002-2009 Franz J. Kurfess Expert System Design 1 CPE/CSC 481: Knowledge-Based Systems Dr. Franz J. Kurfess Computer Science Department Cal Poly.

© 2002-2009 Franz J. Kurfess Expert System Design 31

Evolutionary DevelopmentEvolutionary Development

[Sommerville 2001]

Page 31: © 2002-2009 Franz J. Kurfess Expert System Design 1 CPE/CSC 481: Knowledge-Based Systems Dr. Franz J. Kurfess Computer Science Department Cal Poly.

© 2002-2009 Franz J. Kurfess Expert System Design 32

Aspect Evaluation Scorekey differences

positive

negative

Evolutionary Dev. WorksheetEvolutionary Dev. Worksheet

overall suitability: � high � medium � low explanation

Page 32: © 2002-2009 Franz J. Kurfess Expert System Design 1 CPE/CSC 481: Knowledge-Based Systems Dr. Franz J. Kurfess Computer Science Department Cal Poly.

© 2002-2009 Franz J. Kurfess Expert System Design 33[Sommerville 2001]

Incremental DevelopmentIncremental Development

development and delivery is broken down into increments each increment delivers part of the required functionality

user requirements are prioritised the highest priority requirements are included in early

increments

once the development of an increment is started, the requirements are frozen requirements for later increments can continue to evolve

Page 33: © 2002-2009 Franz J. Kurfess Expert System Design 1 CPE/CSC 481: Knowledge-Based Systems Dr. Franz J. Kurfess Computer Science Department Cal Poly.

© 2002-2009 Franz J. Kurfess Expert System Design 34

Incremental DevelopmentIncremental Development

[Sommerville 2001]

Page 34: © 2002-2009 Franz J. Kurfess Expert System Design 1 CPE/CSC 481: Knowledge-Based Systems Dr. Franz J. Kurfess Computer Science Department Cal Poly.

© 2002-2009 Franz J. Kurfess Expert System Design 35

Spiral DevelopmentSpiral Development

process is represented as a spiral rather than as a sequence of activities with backtracking each loop in the spiral represents a phase in the process. no fixed phases such as specification or design

loops in the spiral are chosen depending on what is required

risks are explicitly assessed and resolved throughout the process

similar to incremental development

[Sommerville 2001]

Page 35: © 2002-2009 Franz J. Kurfess Expert System Design 1 CPE/CSC 481: Knowledge-Based Systems Dr. Franz J. Kurfess Computer Science Department Cal Poly.

© 2002-2009 Franz J. Kurfess Expert System Design 36

Spiral Model SectorsSpiral Model Sectors

for quadrants in the coordinate system represent specific aspects objective setting

specific objectives for the phase are identified

risk assessment and reduction risks are assessed and activities put in place to reduce the key

risks

development and validation a development model for the system is chosen which can be any

of the generic models

planning the project is reviewed and the next phase of the spiral is planned

[Sommerville 2001]

Page 36: © 2002-2009 Franz J. Kurfess Expert System Design 1 CPE/CSC 481: Knowledge-Based Systems Dr. Franz J. Kurfess Computer Science Department Cal Poly.

© 2002-2009 Franz J. Kurfess Expert System Design 37

Spiral ModelSpiral Model

Riskanalysis

Riskanalysis

Riskanalysis

Riskanalysis Proto-

type 1

Prototype 2Prototype 3

Opera-tionalprotoype

Concept ofOperation

Simulations, models, benchmarks

S/Wrequirements

Requirementvalidation

DesignV&V

Productdesign Detailed

design

CodeUnit test

Integr ationtestAcceptance

testService Develop, verifynext-level product

Evaluate alternativesidentify, resolve risks

Determine objectivesalternatives and

constraints

Plan next phase

Integrationand test plan

Developmentplan

Requirements planLife-cycle plan

REVIEW

[Sommerville 2001]

Page 37: © 2002-2009 Franz J. Kurfess Expert System Design 1 CPE/CSC 481: Knowledge-Based Systems Dr. Franz J. Kurfess Computer Science Department Cal Poly.

© 2002-2009 Franz J. Kurfess Expert System Design 38

Aspect Evaluation Scorekey differences

positive

negative

Spiral Model WorksheetSpiral Model Worksheet

overall suitability: � high � medium � low explanation

Page 38: © 2002-2009 Franz J. Kurfess Expert System Design 1 CPE/CSC 481: Knowledge-Based Systems Dr. Franz J. Kurfess Computer Science Department Cal Poly.

© 2002-2009 Franz J. Kurfess Expert System Design 39

Formal systems developmentFormal systems development

based on the transformation of a mathematical specification through different representations to an executable program

transformations are ‘correctness-preserving’ it is straightforward to show that the program conforms to

its specification

embodied in the ‘cleanroom’ approach to software development

[Sommerville 2001]

Page 39: © 2002-2009 Franz J. Kurfess Expert System Design 1 CPE/CSC 481: Knowledge-Based Systems Dr. Franz J. Kurfess Computer Science Department Cal Poly.

© 2002-2009 Franz J. Kurfess Expert System Design 40

Formal Transformation ModelFormal Transformation Model

[Sommerville 2001]

Page 40: © 2002-2009 Franz J. Kurfess Expert System Design 1 CPE/CSC 481: Knowledge-Based Systems Dr. Franz J. Kurfess Computer Science Department Cal Poly.

© 2002-2009 Franz J. Kurfess Expert System Design 41

Aspect Evaluation Scorekey differences

positive

negative

Formal Transformations WorksheetFormal Transformations Worksheet

overall suitability: � high � medium � low explanation

Page 41: © 2002-2009 Franz J. Kurfess Expert System Design 1 CPE/CSC 481: Knowledge-Based Systems Dr. Franz J. Kurfess Computer Science Department Cal Poly.

© 2002-2009 Franz J. Kurfess Expert System Design 42

Reuse-Oriented DevelopmentReuse-Oriented Development

based on systematic reuse systems are integrated from existing components or COTS

(commercial-off-the-shelf) systems

process stages component analysis requirements modification system design with reuse development and integration

this approach is becoming more important but still limited experience with it

[Sommerville 2001]

Page 42: © 2002-2009 Franz J. Kurfess Expert System Design 1 CPE/CSC 481: Knowledge-Based Systems Dr. Franz J. Kurfess Computer Science Department Cal Poly.

© 2002-2009 Franz J. Kurfess Expert System Design 43

Reuse-oriented developmentReuse-oriented development

[Sommerville 2001]

Page 43: © 2002-2009 Franz J. Kurfess Expert System Design 1 CPE/CSC 481: Knowledge-Based Systems Dr. Franz J. Kurfess Computer Science Department Cal Poly.

© 2002-2009 Franz J. Kurfess Expert System Design 44

Aspect Evaluation Scorekey differences

positive

negative

Reuse-Oriented Model WorksheetReuse-Oriented Model Worksheet

overall suitability: � high � medium � low explanation

Page 44: © 2002-2009 Franz J. Kurfess Expert System Design 1 CPE/CSC 481: Knowledge-Based Systems Dr. Franz J. Kurfess Computer Science Department Cal Poly.

© 2002-2009 Franz J. Kurfess Expert System Design 45

Generic System Design ProcessGeneric System Design Process

[Sommerville 2001]

Page 45: © 2002-2009 Franz J. Kurfess Expert System Design 1 CPE/CSC 481: Knowledge-Based Systems Dr. Franz J. Kurfess Computer Science Department Cal Poly.

© 2002-2009 Franz J. Kurfess Expert System Design 46

System EvolutionSystem Evolution

[Sommerville 2001]

Page 46: © 2002-2009 Franz J. Kurfess Expert System Design 1 CPE/CSC 481: Knowledge-Based Systems Dr. Franz J. Kurfess Computer Science Department Cal Poly.

© 2002-2009 Franz J. Kurfess Expert System Design 47

Linear Model of ES DevelopmentLinear Model of ES Development

the life cycle repeats a sequence of stages variation of the incremental model once iteration of the sequence roughly corresponds to one

circuit in the spiral model

stages planning knowledge definition knowledge design code & checkout knowledge verification system evaluation

Page 47: © 2002-2009 Franz J. Kurfess Expert System Design 1 CPE/CSC 481: Knowledge-Based Systems Dr. Franz J. Kurfess Computer Science Department Cal Poly.

© 2002-2009 Franz J. Kurfess Expert System Design 48

Linear Model DiagramLinear Model DiagramP

lan

nin

g

Sou

rce

Iden

tifi

cati

on&

Sel

ecti

on

Acq

uis

itio

nA

nal

ysis

& E

xtra

ctio

n

Def

init

ion

Det

aile

d

Des

ign

Cod

e &

Ch

eck

out

For

mal

T

est

Tes

tA

nal

ysis

Sys

tem

Eva

luat

ion

KnowledgeDefinition

KnowledgeDesign

KnowledgeVerification

KnowledgeBaseline

DesignBaseline

ProductBaseline

Work Plan

KnowledgeReview

Knowl.System Design Review

TestAudit

Review

Final /Intermed.Review

Prelim.Data

Review

TestReadiness

Review

Page 48: © 2002-2009 Franz J. Kurfess Expert System Design 1 CPE/CSC 481: Knowledge-Based Systems Dr. Franz J. Kurfess Computer Science Department Cal Poly.

© 2002-2009 Franz J. Kurfess Expert System Design 49

PlanningPlanning

feasibility assessment resource management task phasing schedules high-level requirements preliminary functional layout

Page 49: © 2002-2009 Franz J. Kurfess Expert System Design 1 CPE/CSC 481: Knowledge-Based Systems Dr. Franz J. Kurfess Computer Science Department Cal Poly.

© 2002-2009 Franz J. Kurfess Expert System Design 50

Knowledge DefinitionKnowledge Definition knowledge source

identification and selection source identification source importance source availability source selection

knowledge acquisition, analysis and extraction acquisition strategy knowledge element

identification knowledge classification

system detailed functional layout preliminary control flow preliminary user’s manual requirements specifications knowledge baseline

Page 50: © 2002-2009 Franz J. Kurfess Expert System Design 1 CPE/CSC 481: Knowledge-Based Systems Dr. Franz J. Kurfess Computer Science Department Cal Poly.

© 2002-2009 Franz J. Kurfess Expert System Design 51

Knowledge DesignKnowledge Design knowledge definition

knowledge representation detailed control structure internal fact structure preliminary user interface initial test plan

detailed design design structure implementation strategy detailed user interface design specifications and

report detailed test plan

Page 51: © 2002-2009 Franz J. Kurfess Expert System Design 1 CPE/CSC 481: Knowledge-Based Systems Dr. Franz J. Kurfess Computer Science Department Cal Poly.

© 2002-2009 Franz J. Kurfess Expert System Design 52

Code & CheckoutCode & Checkout

coding tests source listings user manuals installation and operations guide system description document

Page 52: © 2002-2009 Franz J. Kurfess Expert System Design 1 CPE/CSC 481: Knowledge-Based Systems Dr. Franz J. Kurfess Computer Science Department Cal Poly.

© 2002-2009 Franz J. Kurfess Expert System Design 53

Knowledge VerificationKnowledge Verification formal tests

test procedures test reports

test analysis results evaluation recommendations

Page 53: © 2002-2009 Franz J. Kurfess Expert System Design 1 CPE/CSC 481: Knowledge-Based Systems Dr. Franz J. Kurfess Computer Science Department Cal Poly.

© 2002-2009 Franz J. Kurfess Expert System Design 54

System EvaluationSystem Evaluation

results evaluation summarized version of the activity from the previous stage

recommendations as above

validation system conforms to user requirements and user needs

interim or final report

Page 54: © 2002-2009 Franz J. Kurfess Expert System Design 1 CPE/CSC 481: Knowledge-Based Systems Dr. Franz J. Kurfess Computer Science Department Cal Poly.

© 2002-2009 Franz J. Kurfess Expert System Design 55

Linear Model ExerciseLinear Model Exercise

apply the linear model to your team project map activities, tasks, milestones and deliverables that you

have identified to the respective stages in the linear model use the linear model to sketch a rough timeline that

involves two iterations first prototype final system

estimate the overhead needed for the application of the linear model in our context

Page 55: © 2002-2009 Franz J. Kurfess Expert System Design 1 CPE/CSC 481: Knowledge-Based Systems Dr. Franz J. Kurfess Computer Science Department Cal Poly.

© 2002-2009 Franz J. Kurfess Expert System Design 56

Post-TestPost-Test

Page 56: © 2002-2009 Franz J. Kurfess Expert System Design 1 CPE/CSC 481: Knowledge-Based Systems Dr. Franz J. Kurfess Computer Science Department Cal Poly.

© 2002-2009 Franz J. Kurfess Expert System Design 58

Important Concepts and TermsImportant Concepts and Terms evolutionary development expert system (ES) expert system shell explanation feasibility study inference inference mechanism If-Then rules incremental development knowledge knowledge acquisition knowledge base knowledge-based system

knowledge definition knowledge design knowledge representation knowledge verification limits of ignorance linear model ES life cycle maintenance rapid prototyping reasoning rule semantic error software development life cycle spiral development syntactic error waterfall model

Page 57: © 2002-2009 Franz J. Kurfess Expert System Design 1 CPE/CSC 481: Knowledge-Based Systems Dr. Franz J. Kurfess Computer Science Department Cal Poly.

© 2002-2009 Franz J. Kurfess Expert System Design 59

Summary Expert System DesignSummary Expert System Design the design and development of knowledge-based

systems uses similar methods and techniques as software engineering some modifications are necessary the linear model of ES development is an adaptation of the

incremental SE model possible sources of errors are

knowledge and limits of knowledge errors syntactical and semantical errors inference engine and inference chain errors

Page 58: © 2002-2009 Franz J. Kurfess Expert System Design 1 CPE/CSC 481: Knowledge-Based Systems Dr. Franz J. Kurfess Computer Science Department Cal Poly.

© 2002-2009 Franz J. Kurfess Expert System Design 60