a introduction to common kads
DESCRIPTION
TRANSCRIPT
A introduction to CommonKADS: structured knowledge engineering
Guus Schreiber
www.commonkads.uva.nl
2
Activities in knowledge-system development
Business context
modelling
Communicationmodelling
Knowledgemodelling
System design
3
Why context modeling?
Often difficult to identify profitable use of (knowledge) technology
Laboratory is different from the ''real'' world Acceptability to users very important Fielding into ongoing process not self evident Often not clear what additional measures to
take
4
How to analyze a knowledge-intensive organization?
How to analyze a knowledge-intensive organization?
describe organization aspects:• opportunity/problems portfolio• business context, goals, strategy• internal organization:
– structure– processes– people (staff: functional roles)– power and culture – resources (knowledge, support systems, equipment,…)
do this for both current and future organization• comparison, and first decisions on where to go
5
Worksheets Organization Model
Organization Model
Problems &
Opportunities
GeneralContext
(Mission,Strategy,
Environment,CSF's,...)
PotentialSolutions
OM-1 OM-2
OrganizationFocus AreaDescription:
Structure
Process
People
Culture & Power
Resources
Knowledge
OM-3 OM-4
ProcessBreakdown
KnowledgeAssets
6
Process “Housing”
primaryprocess
secondaryprocess
data entryof applications
magazineproduction
applicationassessment
residenceassignment
statisticalanalysis
policyinformation
:residenceassignments
7
Example OM-3 for “Housing”
Task Performed by
Where Knowledge asset(s)
KI? Signifi-
cance
1. Magazine production
Magazine editor
Public service
- No 3
2. Data entry applications
Data typist / automated telephone
Residence assignment
- No 2
3. Application assessment
Assigner Residence assignment
Assessment criteria
Yes 5
4. Residence assignment
Assigner Residence
Assignment
Assignment &
urgency rules
Yes 5
8
Knowledge modelling
Specific type of conceptual modelling• Only gradual differences with “general” conceptual
modelling
Knowledge modelling from scratch is time-consuming and difficult • Knowledge reuse is important theme
Patterns exist for types of problem-solving tasks• Base on typology of problem-solving tasks
9
Analytic versus synthetic tasks
analytic tasks• system pre-exists
– it is typically not completely "known"
• input: some data about the system,• output: some characterization of the system
synthetic tasks• system does not yet exist• input: requirements about system to be
constructed• output: constructed system description
10
Task hierarchy
knowledge-intensive
task
analytictask
classification
synthetictask
assessment
diagnosis
configurationdesign
planning
scheduling
assignment
modelling
prediction
monitoring
design
11
Knowledge categories
Task knowledge• goal-oriented• functional decomposition
Domain knowledge • relevant domain knowledge and information• static
Inference knowledge• basic reasoning steps that can be made in the
domain knowledge and are applied by tasks
12
Knowledge model overview
Disease(type)
Symptom(type)
Test(type)
hypothesize(inference)
verify(inference)
DIAGNOSIS(task)
Task knowledgetask goalstask decompositiontask control
Inference knowledgebasic inferencesroles
Domain knowledgedomain typesdomain rulesdomain facts
13
Domain knowledge
domain schema• schematic description of knowledge and
information types• comparable to data model• defined through domain constructs
knowledge base• set of knowledge instances• comparable to database content• but; static nature
14
Constructs for domain schema
Concept• cf. object class (without operations)
Relation• cf. association
Attribute• primitive value
Rule type• introduces expressions => no SE equivalent
15
Example rule type
loanconstraint
restricts
person.income <= 10,000 RESTRICTS loan.amount <= 2,000
person.income > 10,000 AND person.income <= 20,000 RESTRICTS loan.amount <= 3,000
person
name: stringincome: integer
loan
amount: integerinterest-rate: number
1+
16
Inference
fully described through a declarative specification of properties of its I/O
internal process of the inference is a black box• not of interest for knowledge modeling.
I/O described using “role names”• functional names, not part of the domain
knowledge schema / data model
guideline to stop decomposition: explanation
17
Example inference: cover
complaint hypothesiscover
causalmodel
my car does not startfuel tank is empty
fuel tank is empty leads to lack of gas in engineif there is no gas in the engine, then the car does not start
dynamic input role dynamic output role
static role
inference
18
Inference structure
complaint
cover
predict compare
obtain
expectedfinding
actualfinding
result
causal model
manifestation model
hypothesis
engine doesnot start
state dependencyrules
empty fuel tank gas dial = zero/low
gas dial = normal
not equalmanifestation
rules
19
Task knowledge
describes goals• assess a mortgage application in order to
minimize the risk of losing money• find the cause of a malfunction of a photocopier in
order to restore service. • design an elevator for a new building.
describes strategies (methods, PSMs) that can be employed for realizing goals.
typically described in a hierarchical fashion:
20
UML activity diagram for method control
cover
predict
obtain compare
[no more solutionsof cover]
[new solutionof cover]
[result = equal]
[result = not equal]
solution found
no solution found
startdiagnosisthrough
generate-and-test
21
Assessment
find decision category for a case based on domain-specific norms.
typical domains: financial applications (loan application), community service
terminology: case, decision, norms
some similarities with monitoring• differences:
– timing: assessment is more static
– different output: decision versus discrepancy
22
Example assessment task:mortgage assessment
Post condition: the application is assessed according to business rulesof the bank and the client is notified whether it is eligible
Mortgage Application
Eligible(): Boolean
ClientBank
*
23
Mortgage domain information
Client
<customer attributes>
Mortgage
<mortgage attributes>
Mortgage Application
Eligible: Boolean
<mortgage application attributes>
24
Assessment: abstract & match method
Abstract the case data Specify the norms applicable to the case
• e.g. “rent-fits-income”, “correct-household-size”
Select a single norm Compute a truth value for the norm with
respect to the case See whether this leads to a decision Repeat norm selection and evaluation until a
decision is reached
25
Mortgage domain knowledge
Abstraction rules
IF customer.age =< 27THEN customeer.age-categroy := young
<other asbtraction rules>
norm rules
IF customer.age-category = youngTHEN risky :- true
IF mortgage.amount > 300.000THEN large-amount = true
<other norm rules>
decision rules
IF risky = true AND large-amount = trueTHEN application.eligible = false
<other decision rules>
26
Template (pattern) for assessment task
case
abstractedcase norms
normvaluedecision
abstract
select
match
specify
evaluate norm
27
Assessment control
abstract
match
select
specify
evaluate
[decision known] [decision unknown]
[no norm selected][norm selected]
28
Claim handling for unemployment benefits
:claim
collectdata
dataentry
decide about claim
computebenefit
sendnotification prepare
payment
[no right][right]
claim handling finacialdepartment
29
Normen en beslisregels voor WW beoordeling
Normen: Verzekerd Werkloos Wekeneis Jareneis
Beslisregels ALS niet verzekerd of
niet werkloos of niet voldoet aan wekeneis DAN geen WW
ALS wel wekeneis en niet jareneis DAN korte basisuitkering
ALS wel jareneis DAN loongerelateerde uitkering
30
In applications: typical task combinations
monitoring + diagnosis• Production process
monitoring + assessment• Nursing task
diagnosis + planning• Troubleshooting devices
classification + planning• Military applications
31
Example: apple-pest management
monitorpest
identifypest
plan preventivetreatment
plan curativetreatement
executetreatment
32
Summary
Knowledge engineering is a specialized form of software engineering
CommonKADS: model-based approach to knowledge engineering
Reuse of task-specific knowledge models is important theme
Knowledge model often outlives application