SlideShare une entreprise Scribd logo
1  sur  53
Télécharger pour lire hors ligne
Knowledge Model Basics
Challenges in knowledge modeling
Basic knowledge-modeling constructs
Comparison to general software analysis
Knowledge-modelling basics 2
Knowledge model
■  specialized tool for specification of knowledge-
intensive tasks
■  abstracts from communication aspects
■  real-world oriented
■  reuse is central theme
Knowledge-modelling basics 3
Relation to other models
organization model
task model
agent model
knowledge-
intensive
task
communication
model
knowledge
model
design
model
requirements
specification
for interaction functions
requirements
specification
for reasoning functions
task selected in feasibility study
and further detailed in
Task and Agent Models
Knowledge-modelling basics 4
The term “knowledge”
■  “information about information”
■  example: sub-class hierarchy of object types
■  no hard borderline between information and
knowledge
➤  knowledge is “just“ semantically rich information
■  target: “knowledge-intensive” systems
➤  large bulk of meaningful information is present
➤  scope is broader than traditional KBS
Knowledge-modelling basics 5
Challenges in specifying
knowledge
pers on
age
income
loan
amount
interes t
J ohn	
  has	
  a	
  loan	
  of	
  $1,750
Harry	
  has	
  a	
  loan	
  of	
  $2,500
A	
  person	
  with	
  a	
  loan	
  should	
  be	
  at	
  least	
  18	
  years	
  old
A	
  person	
  with	
  an	
  income	
  up	
  to	
  $10,000	
  can	
  get	
  a	
  maximum	
  loan	
  of	
  $2,000
A	
  person	
  with	
  an	
  income	
  between	
  $10,000	
  and	
  $20,000	
  can	
  get	
  a	
  maximum	
  loan	
  of	
  $3,000
INF OR MATION
KNOW L E DGE
has	
  loan
Knowledge-modelling basics 6
Structuring a knowledge base
R ule	
  1:	
  IF 	
  ...	
  T HE N	
  ...
R ule	
  2:	
  IF 	
  ...	
  T HE N	
  ...
R ule	
  3:	
  IF 	
  ...	
  T HE N	
  ...
R ule	
  12:	
  IF 	
  ...	
  T HE N	
  ...
R ule	
  4:	
  IF 	
  ...	
  T HE N	
  ...
R ule	
  5:	
  IF 	
  ...	
  T HE N	
  ...
R ule	
  6:	
  IF 	
  ...	
  T HE N	
  ...
R ule	
  7:	
  IF 	
  ...	
  T HE N	
  ...
R ule	
  8:	
  IF 	
  ...	
  T HE N	
  ...
R ule	
  9:	
  IF 	
  ...	
  T HE N	
  ...
R ule	
  10:	
  IF 	
  ...	
  T HE N	
  ...
R ule	
  11:	
  IF 	
  ...	
  T HE N	
  ...
<plus	
  many	
  others>
s ingle	
  flat	
  
knowledge	
  bas e
multiple	
  rule	
  s ets
containing	
  rules
with	
  s imilar	
  s tructure
rules 	
  of	
  type	
  A
rules 	
  of	
  type	
  D
rules 	
  of	
  type	
  B
rules 	
  of	
  type	
  C
Knowledge-modelling basics 7
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
Knowledge-modelling basics 8
Knowledge model overview
Dis eas e
(type)
S ymptom
(type)
Tes t
(type)
hypothesize
(inference)
verify
(inference)
DIAGNOS IS
(task)
Task	
  knowledge
task	
  goals
task	
  decomposition
task	
  control
Inference	
  knowledge
basic	
  inferences
roles
Domain	
  knowledge
domain	
  types
domain	
  rules
domain	
  facts
	
  	
  
Knowledge-modelling basics 9
Example domain: car diagnosis
fuel	
  tank
empty
battery
low
battery	
  dial
zero
gas 	
  dial
zero
power
off
engine	
  behavior
does 	
  not	
  s tart engine	
  behavior
s tops
gas 	
  in	
  engine
fals e
fus e
blow n
fus e	
  ins pection
broken
1
2 3
4 5
6
7 8 9
Knowledge-modelling basics 10
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
Knowledge-modelling basics 11
Constructs for domain schema
■  Concept
➤  cf. object class (without operations)
■  Relation
➤  cf. association
■  Attribute
➤  primitive value
■  Rule type
➤  introduces expressions => no SE equivalent
Knowledge-modelling basics 12
Concept & attribute
■  “Concept” describes a set of objects or instances
■  multiple concept hierarchies
➤  along distinct dimensions
■  can have any number of attributes
■  Am attribute refers to a value
■  values are atomic and are defined through a value
type
■  attribute may not refer to another concept
➤  use relation construct
Knowledge-modelling basics 13
Example: car concepts
VALUE -­‐TY P E 	
  dial-­‐value;
	
  	
  	
  	
  VALUE -­‐LIS T:	
  {zero,	
  low,	
  normal};
	
  	
  	
  	
  TY P E :	
  ORDINAL;
E ND	
  VALUE -­‐TY P E 	
  dial-­‐value;
CONCE P T	
  gas	
  dial;
	
  	
  	
  	
  ATTRIBUTE S :
	
  	
  	
  	
  	
  	
  	
  	
  value:	
  dial-­‐value;
E ND	
  CONCE P T	
  gas-­‐dial; CONCE P T	
  fuel-­‐tank;
	
  	
  	
  	
  ATTRIBUTE S
	
  	
  	
  	
  	
  	
  	
  	
  status:	
  	
  {full,	
  almost-­‐empty,	
  empty};
E ND	
  CONCE P T	
  fuel-­‐tank;
gas 	
  dial
value:	
  dial-­‐value
fuel	
  tank
status:	
  {full,	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  almost-­‐empty,	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  empty}
Knowledge-modelling basics 14
Example: apple concept
apple
color:	
  {yellow,	
  yellow-­‐green,	
  green}
rusty-­‐surface:	
  boolean
greasy-­‐surface:	
  boolean
form:	
  {flat,	
  high}
Granny	
  S mith:
apple	
  class
Golden	
  Delicious:
apple	
  class
Grey	
  Reinet:
apple	
  class
Present	
  of	
  England:
apple	
  class
apple	
  class
has	
  class
	
  	
  
Knowledge-modelling basics 15
Example: car subtypes
car	
  state
status:	
  universal
observable:	
  boolean
invisible
car	
  state
observable:	
  {false}
visible
car	
  state
observable:	
  {true}
car	
  observable
value:	
  universal
fuel	
  tank
status:	
  {full,
	
  	
  	
  	
  	
  	
  	
  almost-­‐empty,
	
  	
  	
  	
  	
  	
  	
  empty}
battery
status:	
  {normal,
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  low}
fuse
status:	
  {normal,
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  blown}
gas	
  in	
  engine
status:	
  boolean
power
status:	
  {on,	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  off}
engine	
  behavior
status:	
  {normal,	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  does-­‐not-­‐start,
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  stops}
fuse	
  
inspection
value:	
  {normal,
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  broken}
gas	
  dial
value:	
  dial	
  value
battery	
  dial
value:	
  dial-­‐value
	
  	
  
Knowledge-modelling basics 16
Example: house sub-types
apartment
entrance-­‐floor:	
  natural
lift-­‐available:	
  boolean
res idence
hous e
square-­‐meters:	
  natural
CONCE P T	
  house;
	
  	
  	
  	
  DE S CRIP TION:
	
  	
  	
  	
  	
  	
  "a	
  residence	
  with	
  its	
  own	
  territory";
	
  	
  	
  	
  S UB-­‐TY P E -­‐OF:	
  residence;
	
  	
  	
  	
  ATTRIBUTE S :
	
  	
  	
  	
  	
  	
  	
  	
  square-­‐meters:	
  NATURAL;
E ND	
  CONCE P T	
  house;
CONCE P T	
  apartment;
	
  	
  	
  	
  DE S CRIP TION:	
  
	
  	
  	
  	
  	
  	
  	
  "part	
  of	
  of	
  a	
  larger	
  estate";
	
  	
  	
  	
  S UB-­‐TY P E -­‐OF:	
  residence;
	
  	
  	
  	
  ATTRIBUTE S :
	
  	
  	
  	
  	
  	
  	
  	
  	
  entrance-­‐floor:	
  NATURAL;
	
  	
  	
  	
  	
  	
  	
  	
  	
  lift-­‐available:	
  BOOLE AN;
E ND	
  CONCE P T	
  apartment;
Knowledge-modelling basics 17
Relation
■  typically between concepts, any arity
■  cardinality specification
■  special construct for binary relations
■  relations can have subtypes as well as attributes
■  reification of a relation is allowed
➤  relation functions as a concept
➤  cf. Association class in UML
➤  a form of higher order relations
Knowledge-modelling basics 18
Example: car relation
car pers on
car pers on
ownership
owners hip
purchase	
  date:	
  date;
a)
b) car pers on
owned-­‐by
c)
0+ 0-­‐1
	
  	
  
Knowledge-modelling basics 19
N-ary relation
agent
name
position
obs ervation
value
date
time
obs ervable
type
location
department
hospital
patient
name
diagnosis
Knowledge-modelling basics 20
Modelling rules
■  “rules” are a common form for symbolic knowledge
■  do not need to be formal
■  knowledge analysis is focused on finding rules with a
common structure
➤  a rule as an instance of a rule type
Knowledge-modelling basics 21
Rule type
■  models a relation between expressions about feature
values (e.g. attribute values)
gas-dial.value = zero -> fuel-tank.status = empty
■  models set of real-world “rules” with a similar
structure
■  dependency is usually not strictly logical (=
implication)
➤  specify connection symbol
Knowledge-modelling basics 22
Example rule type
loan
constraint
	
  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:	
  string
income:	
  integer
loan
amount:	
  integer
interest-­‐rate:	
  number
1+
Knowledge-modelling basics 23
Rule type structure
■  <antecedent> <connection-symbol> <consequent>
■  example rule:
fuel-supply.status = blocked
CAUSES
gas-in-engine.status = false;
■  flexible use for almost any type of dependency
➤  multiple types for antecedent and consequent
Knowledge-modelling basics 24
Rule types for car diagnosis
invisible
car	
  state
car	
  state
car	
  
observable
invisible
car	
  state
manifestation
rule
state
dependency
	
  causes	
  
has
manifestation
1 1
11
Knowledge-modelling basics 25
Knowledge base
■  = conceptual knowledge-base partition
■  contains instances of knowledge types
■  rule-type instances = “rules”
■  structure:
➤  USES: <types used> from <schema>
➤  EXPRESSIONS: <instances>
■  instance representation:
➤  intuitive natural language
–  connection symbol
➤  formal expression language (appendix of book)
Knowledge-modelling basics 26
Example knowledge base
KNOWLEDGE-BASE car-network;
USES: state-dependency FROM car-diagnosis-schema,
manifestation-rule FROM car-diagnosis-schema;
EXPRESSIONS:
/* state dependencies */
fuse.status = blown CAUSES power.status = off;
battery.status = low CAUSES power.status = off;
….
/* manifestation rules */
fuse.status = blown HAS-MANIFESTATION
fuse-inspection.value = broken;
battery.status = low HAS-MANIFESTATION
battery-dial.value = zero; …..
END KNOWLEDGE-BASE car-network;
Knowledge-modelling basics 27
Inference knowledge
■  describes the lowest level of functional decomposition
■  basic information-processing units:
➤  inference => reasoning
➤  transfer function => communication with other agents
■  why special status?
➤  indirectly related to domain knowledge
➤  enables reuse of inference
Knowledge-modelling basics 28
Example inference: cover
complaint hypothesiscover
causal
model
my	
  car	
  does	
  not	
  start
fuel	
  tank	
  is	
  empty
fuel	
  tank	
  is	
  empty	
  leads	
  to	
  lack	
  of	
  gas	
  in	
  engine
if	
  there	
  is	
  no	
  gas	
  in	
  the	
  engine,	
  then	
  the	
  car	
  does	
  not	
  start
dynamic	
  input	
  role dynamic	
  output	
  role
static	
  role
inference
Knowledge-modelling basics 29
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
Knowledge-modelling basics 30
Knowledge role
■  Functional name for data/knowledge elements
■  Name captures the “role” of the element in the
reasoning process
■  Explicit mapping onto domain types
■  Dynamic role: variant input/output
■  Static role: invariant input
➤  cf. a knowledge basel
Knowledge-modelling basics 31
Example inference
INFERENCE cover;
ROLES:
INPUT: complaint;
OUTPUT: hypothesis;
STATIC: causal-model;
SPECIFICATION:
"Each time this inference is invoked, it generates a candidate
solution that could have caused the complaint. The output
thus should be an initial state in the state dependency network
which causally ``covers'' the input complaint.";
END INFERENCE cover;
Knowledge-modelling basics 32
Example dynamic
knowledge roles
KNOWLEDGE-ROLE complaint;
TYPE: DYNAMIC;
DOMAIN-MAPPING: visible-state;
END KNOWLEDGE-ROLE complaint;
KNOWLEDGE-ROLE hypothesis;
TYPE: DYNAMIC;
DOMAIN-MAPPING: invisible-state;
END KNOWLEDGE-ROLE hypothesis;
Knowledge-modelling basics 33
Example static knowledge role
KNOWLEDGE-ROLE causal-model;
TYPE: STATIC;
DOMAIN-MAPPING: state-dependency FROM car-network;
END KNOWLEDGE-ROLE causal-model;
Knowledge-modelling basics 34
Transfer functions
■  transfers an information item between the reasoning
agent and another agent
■  from the knowledge-model point of view black box:
only its name and I/O
■  detailed specification of transfer functions is part of
communication model
■  standard names
Knowledge-modelling basics 35
Types of transfer functions
obtain receive
present provide
s ys tem
initiative
external
initiative
external
information
internal
information
Knowledge-modelling basics 36
Inference structure
■  combined set of inferences specifies the basic
inference capability of the target system
■  graphical representation: inference structure
■  provides constraints for control flow
Knowledge-modelling basics 37
Example: car inferences
complaint
	
  
cover
predict compare
obtain
expected
finding
actual
finding
result
causal
	
  model
manifestation
	
  model
hypothesis
Knowledge-modelling basics 38
Using inference structures
■  Important communication vehicle during development
process
■  Often provisional inference structures
■  Can be difficult to understand because of
“vague” (non domain-specific terms)
■  Often useful to annotate with domain-specific
examples
Knowledge-modelling basics 39
Annotated inference structure
complaint
	
  
cover
predict compare
obtain
expected
finding
actual
finding
result
causal
	
  model
manifestation
	
  model
hypothesis
engine	
  does
not	
  start
state	
  dependency
rules
empty	
  fuel	
  tank
gas	
  dial	
  =	
  zero/low
gas	
  dial	
  =	
  normal
not	
  equal
manifestation
rules
Knowledge-modelling basics 40
Reusing inferences
■  Standard set of inferences?!
➤  difficult subject
■  See catalog in Ch. 13
■  Use as much as possible standard names
Knowledge-modelling basics 41
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 that can be employed for
realizing goals.
■  typically described in a hierarchical fashion:
Knowledge-modelling basics 42
Task decomposition for
car diagnosis
diagnosis
diagnosis
through
generate-and-test
obtain
cover
predict
task
task method
compare
decomposition
inferences
transfer function
Knowledge-modelling basics 43
Task
■  Description of the input/output
■  Main distinction with traditional functions is that the
data manipulated by the task are (also) described in a
domain-independent way.
➤  example, the output of a medical diagnosis task would not
be a “disease” but an abstract name such as “fault
category”
Knowledge-modelling basics 44
Example task
TASK car-fault-category;
GOAL: "Find a likely cause for the complaint of the user";
ROLES:
INPUT:
complaint: "Complaint about the behavior of the car";
OUTPUT:
fault-category: "A hypothesis explained by the
evidence";
evidence: "Set of observations obtained during the
diagnostic process";
SPEC: "Find an initial state that explains the complaint
and is consistent with the evidence obtained";
END TASK car-diagnosis;
Knowledge-modelling basics 45
Task method
■  describes how a task is realized through a
decomposition into sub-functions
■  sub-functions: another task, inference, transfer
function
■  core part of a method: “control structure”
➤  describes ordering of sub-functions small program,
captured reasoning strategy
■  additional task roles
➤  to store intermediate reasoning results
Knowledge-modelling basics 46
Example task method
TASK-METHOD diagnosis-through-generate-and-test;
DECOMPOSITION:
INFERENCES: cover, predict, compare;
TRANSFER-FUNCTIONS: obtain;
ROLES:
INTERMEDIATE:
expected-finding: "The finding predicted,
in case the hypothesis is true";
actual-finding: "The finding actually observed";
Knowledge-modelling basics 47
Example method control
CONTROL-STRUCTURE:
REPEAT
cover(complaint -> hypothesis);
predict(hypothesis -> expected-finding);
obtain(expected-finding -> actual-finding);
evidence := evidence ADD actual-finding;
compare(expected-finding + actual-finding -> result);
UNTIL "result = equal or no more solutions of over";
END REPEAT
IF result == equal
THEN fault-category := hypothesis;
ELSE "no solution found";
END IF
Knowledge-modelling basics 48
UML activity diagram for
method control
cover
predict
obtain compare
[no	
  more	
  solutions
of	
  cover]
[new	
  solution
of	
  cover]
[result	
  =	
  equal]
[result	
  =	
  not	
  equal]
solution	
  found
no	
  solution	
  found
start
diagnosis
through
generate-­‐and-­‐test
Knowledge-modelling basics 49
Control structure elements
■  “procedure” calls:
➤  tasks, transfer functions, inferences
■  role operations
➤  assign, add/append, delete/subtract, retrieve, ..
■  control primitives
➤  repeat-until, while-do, foreach-do, if-then-else
Knowledge-modelling basics 50
Control structures (cont.)
Conditions:
■  logical expressions about roles:
➤  until differential = empty
■  two special conditions
➤  has-solution
–  invocation of inference that can fail
➤  new solution
–  invocation of inference that can succeed multiple times, e.g. the
cover inference in the car-diagnosis model
Knowledge-modelling basics 51
Inference or task?
■  “If the internal behavior of a function are important
for explaining the behavior of the system as a whole,
then one needs to define this function as a task”
■  During development: provisional inference structures
■  Function = task or inference (or transfer function)
Knowledge-modelling basics 52
Knowledge model vs.
SE analysis model
■  “Data model” contains “data about data”
➤  = knowledge
■  Functions are described data-model independent
➤  enables reuse of reasoning functions
■  Emphasis on “internal control”
➤  strategy of reasoning process
■  Knowledge model abstracts from communication
aspects
Knowledge-modelling basics 53
The data-function debate
DATA
viewpoint
FUNC TION
viewpoint
Object-­‐Oriented	
  Analysis
(OMT,	
  Booch,	
  ....)
S tructured	
  Analysis
(Y ourdon)
CommonK ADS :
function-­‐data	
  decoupling
functional	
  decomposition	
  is	
  starting	
  point
data	
  types	
  are	
  derived	
  from	
  DFDs
static	
  information	
  structure	
  is	
  starting	
  point
functions	
  are	
  grouped	
  with	
  the	
  data
reuse	
  of	
  data/function	
  groups	
  ("objects")
parallel	
  function/data	
  description
reusable	
  functional	
  decompositions
reusable	
  data/knowledge	
  types

Contenu connexe

En vedette

CommonKADS project management
CommonKADS project managementCommonKADS project management
CommonKADS project managementGuus Schreiber
 
CommonKADS communication model
CommonKADS communication modelCommonKADS communication model
CommonKADS communication modelGuus Schreiber
 
Knowledge management system life cycle
Knowledge management system life cycleKnowledge management system life cycle
Knowledge management system life cycleAkash Mathapati
 
Knowledge Management System & Technology
Knowledge Management System & TechnologyKnowledge Management System & Technology
Knowledge Management System & TechnologyElijah Ezendu
 

En vedette (6)

CommonKADS project management
CommonKADS project managementCommonKADS project management
CommonKADS project management
 
CommonKADS communication model
CommonKADS communication modelCommonKADS communication model
CommonKADS communication model
 
Metodología CommonKADS
Metodología CommonKADSMetodología CommonKADS
Metodología CommonKADS
 
Unlock Security Insight from Machine Data
Unlock Security Insight from Machine DataUnlock Security Insight from Machine Data
Unlock Security Insight from Machine Data
 
Knowledge management system life cycle
Knowledge management system life cycleKnowledge management system life cycle
Knowledge management system life cycle
 
Knowledge Management System & Technology
Knowledge Management System & TechnologyKnowledge Management System & Technology
Knowledge Management System & Technology
 

Plus de Guus Schreiber

How the Semantic Web is transforming information access
How the Semantic Web is transforming information accessHow the Semantic Web is transforming information access
How the Semantic Web is transforming information accessGuus Schreiber
 
Semantics and the Humanities: some lessons from my journey 2000-2012
Semantics and the Humanities: some lessons from my journey 2000-2012Semantics and the Humanities: some lessons from my journey 2000-2012
Semantics and the Humanities: some lessons from my journey 2000-2012Guus Schreiber
 
Ontologies: vehicles for reuse
Ontologies: vehicles for reuseOntologies: vehicles for reuse
Ontologies: vehicles for reuseGuus Schreiber
 
Linking historical ship records to a newspaper archive
Linking historical ship records to a newspaper archiveLinking historical ship records to a newspaper archive
Linking historical ship records to a newspaper archiveGuus Schreiber
 
CommonKADS design and implementation
CommonKADS design and implementationCommonKADS design and implementation
CommonKADS design and implementationGuus Schreiber
 
Web Science: the digital heritage case
Web Science: the digital heritage caseWeb Science: the digital heritage case
Web Science: the digital heritage caseGuus Schreiber
 
Principles and pragmatics of a Semantic Culture Web
 Principles and pragmatics of a Semantic Culture Web Principles and pragmatics of a Semantic Culture Web
Principles and pragmatics of a Semantic Culture WebGuus Schreiber
 
Semantics for visual resources: use cases from e-culture
Semantics for visual resources: use cases from e-cultureSemantics for visual resources: use cases from e-culture
Semantics for visual resources: use cases from e-cultureGuus Schreiber
 
Semantic Web: From Representations to Applications
Semantic Web: From Representations to ApplicationsSemantic Web: From Representations to Applications
Semantic Web: From Representations to ApplicationsGuus Schreiber
 
Principles for knowledge engineering on the Web
Principles for knowledge engineering on the WebPrinciples for knowledge engineering on the Web
Principles for knowledge engineering on the WebGuus Schreiber
 
The Semantic Web: status and prospects
The Semantic Web: status and prospectsThe Semantic Web: status and prospects
The Semantic Web: status and prospectsGuus Schreiber
 
NoTube: integrating TV and Web with the help of semantics
NoTube: integrating TV and Web with the help of semanticsNoTube: integrating TV and Web with the help of semantics
NoTube: integrating TV and Web with the help of semanticsGuus Schreiber
 
The artof of knowledge engineering, or: knowledge engineering of art
The artof of knowledge engineering, or: knowledge engineering of artThe artof of knowledge engineering, or: knowledge engineering of art
The artof of knowledge engineering, or: knowledge engineering of artGuus Schreiber
 
E-Culture semantic search pilot
E-Culture semantic search pilotE-Culture semantic search pilot
E-Culture semantic search pilotGuus Schreiber
 
Ontologies for multimedia: the Semantic Culture Web
Ontologies for multimedia: the Semantic Culture WebOntologies for multimedia: the Semantic Culture Web
Ontologies for multimedia: the Semantic Culture WebGuus Schreiber
 
Knowledge engineering and the Web
Knowledge engineering and the WebKnowledge engineering and the Web
Knowledge engineering and the WebGuus Schreiber
 
Ontology Engineering: Ontology Use
Ontology Engineering: Ontology UseOntology Engineering: Ontology Use
Ontology Engineering: Ontology UseGuus Schreiber
 
Ontology engineering: Ontology alignment
Ontology engineering: Ontology alignmentOntology engineering: Ontology alignment
Ontology engineering: Ontology alignmentGuus Schreiber
 
Ontology Engineering: Ontology evaluation
Ontology Engineering: Ontology evaluationOntology Engineering: Ontology evaluation
Ontology Engineering: Ontology evaluationGuus Schreiber
 

Plus de Guus Schreiber (20)

How the Semantic Web is transforming information access
How the Semantic Web is transforming information accessHow the Semantic Web is transforming information access
How the Semantic Web is transforming information access
 
Semantics and the Humanities: some lessons from my journey 2000-2012
Semantics and the Humanities: some lessons from my journey 2000-2012Semantics and the Humanities: some lessons from my journey 2000-2012
Semantics and the Humanities: some lessons from my journey 2000-2012
 
Ontologies: vehicles for reuse
Ontologies: vehicles for reuseOntologies: vehicles for reuse
Ontologies: vehicles for reuse
 
Linking historical ship records to a newspaper archive
Linking historical ship records to a newspaper archiveLinking historical ship records to a newspaper archive
Linking historical ship records to a newspaper archive
 
CommonKADS design and implementation
CommonKADS design and implementationCommonKADS design and implementation
CommonKADS design and implementation
 
Web Science: the digital heritage case
Web Science: the digital heritage caseWeb Science: the digital heritage case
Web Science: the digital heritage case
 
Principles and pragmatics of a Semantic Culture Web
 Principles and pragmatics of a Semantic Culture Web Principles and pragmatics of a Semantic Culture Web
Principles and pragmatics of a Semantic Culture Web
 
Semantics for visual resources: use cases from e-culture
Semantics for visual resources: use cases from e-cultureSemantics for visual resources: use cases from e-culture
Semantics for visual resources: use cases from e-culture
 
Semantic Web: From Representations to Applications
Semantic Web: From Representations to ApplicationsSemantic Web: From Representations to Applications
Semantic Web: From Representations to Applications
 
Principles for knowledge engineering on the Web
Principles for knowledge engineering on the WebPrinciples for knowledge engineering on the Web
Principles for knowledge engineering on the Web
 
The Semantic Web: status and prospects
The Semantic Web: status and prospectsThe Semantic Web: status and prospects
The Semantic Web: status and prospects
 
NoTube: integrating TV and Web with the help of semantics
NoTube: integrating TV and Web with the help of semanticsNoTube: integrating TV and Web with the help of semantics
NoTube: integrating TV and Web with the help of semantics
 
The artof of knowledge engineering, or: knowledge engineering of art
The artof of knowledge engineering, or: knowledge engineering of artThe artof of knowledge engineering, or: knowledge engineering of art
The artof of knowledge engineering, or: knowledge engineering of art
 
E-Culture semantic search pilot
E-Culture semantic search pilotE-Culture semantic search pilot
E-Culture semantic search pilot
 
Ontologies for multimedia: the Semantic Culture Web
Ontologies for multimedia: the Semantic Culture WebOntologies for multimedia: the Semantic Culture Web
Ontologies for multimedia: the Semantic Culture Web
 
Knowledge engineering and the Web
Knowledge engineering and the WebKnowledge engineering and the Web
Knowledge engineering and the Web
 
Vista-TV overview
Vista-TV overviewVista-TV overview
Vista-TV overview
 
Ontology Engineering: Ontology Use
Ontology Engineering: Ontology UseOntology Engineering: Ontology Use
Ontology Engineering: Ontology Use
 
Ontology engineering: Ontology alignment
Ontology engineering: Ontology alignmentOntology engineering: Ontology alignment
Ontology engineering: Ontology alignment
 
Ontology Engineering: Ontology evaluation
Ontology Engineering: Ontology evaluationOntology Engineering: Ontology evaluation
Ontology Engineering: Ontology evaluation
 

Dernier

ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesrafiqahmad00786416
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusZilliz
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native ApplicationsWSO2
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityWSO2
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...apidays
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxRustici Software
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Victor Rentea
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfOrbitshub
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDropbox
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Victor Rentea
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...apidays
 

Dernier (20)

ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 

CommonKADS knowledge modelling basics

  • 1. Knowledge Model Basics Challenges in knowledge modeling Basic knowledge-modeling constructs Comparison to general software analysis
  • 2. Knowledge-modelling basics 2 Knowledge model ■  specialized tool for specification of knowledge- intensive tasks ■  abstracts from communication aspects ■  real-world oriented ■  reuse is central theme
  • 3. Knowledge-modelling basics 3 Relation to other models organization model task model agent model knowledge- intensive task communication model knowledge model design model requirements specification for interaction functions requirements specification for reasoning functions task selected in feasibility study and further detailed in Task and Agent Models
  • 4. Knowledge-modelling basics 4 The term “knowledge” ■  “information about information” ■  example: sub-class hierarchy of object types ■  no hard borderline between information and knowledge ➤  knowledge is “just“ semantically rich information ■  target: “knowledge-intensive” systems ➤  large bulk of meaningful information is present ➤  scope is broader than traditional KBS
  • 5. Knowledge-modelling basics 5 Challenges in specifying knowledge pers on age income loan amount interes t J ohn  has  a  loan  of  $1,750 Harry  has  a  loan  of  $2,500 A  person  with  a  loan  should  be  at  least  18  years  old A  person  with  an  income  up  to  $10,000  can  get  a  maximum  loan  of  $2,000 A  person  with  an  income  between  $10,000  and  $20,000  can  get  a  maximum  loan  of  $3,000 INF OR MATION KNOW L E DGE has  loan
  • 6. Knowledge-modelling basics 6 Structuring a knowledge base R ule  1:  IF  ...  T HE N  ... R ule  2:  IF  ...  T HE N  ... R ule  3:  IF  ...  T HE N  ... R ule  12:  IF  ...  T HE N  ... R ule  4:  IF  ...  T HE N  ... R ule  5:  IF  ...  T HE N  ... R ule  6:  IF  ...  T HE N  ... R ule  7:  IF  ...  T HE N  ... R ule  8:  IF  ...  T HE N  ... R ule  9:  IF  ...  T HE N  ... R ule  10:  IF  ...  T HE N  ... R ule  11:  IF  ...  T HE N  ... <plus  many  others> s ingle  flat   knowledge  bas e multiple  rule  s ets containing  rules with  s imilar  s tructure rules  of  type  A rules  of  type  D rules  of  type  B rules  of  type  C
  • 7. Knowledge-modelling basics 7 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
  • 8. Knowledge-modelling basics 8 Knowledge model overview Dis eas e (type) S ymptom (type) Tes t (type) hypothesize (inference) verify (inference) DIAGNOS IS (task) Task  knowledge task  goals task  decomposition task  control Inference  knowledge basic  inferences roles Domain  knowledge domain  types domain  rules domain  facts    
  • 9. Knowledge-modelling basics 9 Example domain: car diagnosis fuel  tank empty battery low battery  dial zero gas  dial zero power off engine  behavior does  not  s tart engine  behavior s tops gas  in  engine fals e fus e blow n fus e  ins pection broken 1 2 3 4 5 6 7 8 9
  • 10. Knowledge-modelling basics 10 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
  • 11. Knowledge-modelling basics 11 Constructs for domain schema ■  Concept ➤  cf. object class (without operations) ■  Relation ➤  cf. association ■  Attribute ➤  primitive value ■  Rule type ➤  introduces expressions => no SE equivalent
  • 12. Knowledge-modelling basics 12 Concept & attribute ■  “Concept” describes a set of objects or instances ■  multiple concept hierarchies ➤  along distinct dimensions ■  can have any number of attributes ■  Am attribute refers to a value ■  values are atomic and are defined through a value type ■  attribute may not refer to another concept ➤  use relation construct
  • 13. Knowledge-modelling basics 13 Example: car concepts VALUE -­‐TY P E  dial-­‐value;        VALUE -­‐LIS T:  {zero,  low,  normal};        TY P E :  ORDINAL; E ND  VALUE -­‐TY P E  dial-­‐value; CONCE P T  gas  dial;        ATTRIBUTE S :                value:  dial-­‐value; E ND  CONCE P T  gas-­‐dial; CONCE P T  fuel-­‐tank;        ATTRIBUTE S                status:    {full,  almost-­‐empty,  empty}; E ND  CONCE P T  fuel-­‐tank; gas  dial value:  dial-­‐value fuel  tank status:  {full,                          almost-­‐empty,                          empty}
  • 14. Knowledge-modelling basics 14 Example: apple concept apple color:  {yellow,  yellow-­‐green,  green} rusty-­‐surface:  boolean greasy-­‐surface:  boolean form:  {flat,  high} Granny  S mith: apple  class Golden  Delicious: apple  class Grey  Reinet: apple  class Present  of  England: apple  class apple  class has  class    
  • 15. Knowledge-modelling basics 15 Example: car subtypes car  state status:  universal observable:  boolean invisible car  state observable:  {false} visible car  state observable:  {true} car  observable value:  universal fuel  tank status:  {full,              almost-­‐empty,              empty} battery status:  {normal,                              low} fuse status:  {normal,                            blown} gas  in  engine status:  boolean power status:  {on,                                  off} engine  behavior status:  {normal,                                does-­‐not-­‐start,                              stops} fuse   inspection value:  {normal,                            broken} gas  dial value:  dial  value battery  dial value:  dial-­‐value    
  • 16. Knowledge-modelling basics 16 Example: house sub-types apartment entrance-­‐floor:  natural lift-­‐available:  boolean res idence hous e square-­‐meters:  natural CONCE P T  house;        DE S CRIP TION:            "a  residence  with  its  own  territory";        S UB-­‐TY P E -­‐OF:  residence;        ATTRIBUTE S :                square-­‐meters:  NATURAL; E ND  CONCE P T  house; CONCE P T  apartment;        DE S CRIP TION:                "part  of  of  a  larger  estate";        S UB-­‐TY P E -­‐OF:  residence;        ATTRIBUTE S :                  entrance-­‐floor:  NATURAL;                  lift-­‐available:  BOOLE AN; E ND  CONCE P T  apartment;
  • 17. Knowledge-modelling basics 17 Relation ■  typically between concepts, any arity ■  cardinality specification ■  special construct for binary relations ■  relations can have subtypes as well as attributes ■  reification of a relation is allowed ➤  relation functions as a concept ➤  cf. Association class in UML ➤  a form of higher order relations
  • 18. Knowledge-modelling basics 18 Example: car relation car pers on car pers on ownership owners hip purchase  date:  date; a) b) car pers on owned-­‐by c) 0+ 0-­‐1    
  • 19. Knowledge-modelling basics 19 N-ary relation agent name position obs ervation value date time obs ervable type location department hospital patient name diagnosis
  • 20. Knowledge-modelling basics 20 Modelling rules ■  “rules” are a common form for symbolic knowledge ■  do not need to be formal ■  knowledge analysis is focused on finding rules with a common structure ➤  a rule as an instance of a rule type
  • 21. Knowledge-modelling basics 21 Rule type ■  models a relation between expressions about feature values (e.g. attribute values) gas-dial.value = zero -> fuel-tank.status = empty ■  models set of real-world “rules” with a similar structure ■  dependency is usually not strictly logical (= implication) ➤  specify connection symbol
  • 22. Knowledge-modelling basics 22 Example rule type loan constraint  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:  string income:  integer loan amount:  integer interest-­‐rate:  number 1+
  • 23. Knowledge-modelling basics 23 Rule type structure ■  <antecedent> <connection-symbol> <consequent> ■  example rule: fuel-supply.status = blocked CAUSES gas-in-engine.status = false; ■  flexible use for almost any type of dependency ➤  multiple types for antecedent and consequent
  • 24. Knowledge-modelling basics 24 Rule types for car diagnosis invisible car  state car  state car   observable invisible car  state manifestation rule state dependency  causes   has manifestation 1 1 11
  • 25. Knowledge-modelling basics 25 Knowledge base ■  = conceptual knowledge-base partition ■  contains instances of knowledge types ■  rule-type instances = “rules” ■  structure: ➤  USES: <types used> from <schema> ➤  EXPRESSIONS: <instances> ■  instance representation: ➤  intuitive natural language –  connection symbol ➤  formal expression language (appendix of book)
  • 26. Knowledge-modelling basics 26 Example knowledge base KNOWLEDGE-BASE car-network; USES: state-dependency FROM car-diagnosis-schema, manifestation-rule FROM car-diagnosis-schema; EXPRESSIONS: /* state dependencies */ fuse.status = blown CAUSES power.status = off; battery.status = low CAUSES power.status = off; …. /* manifestation rules */ fuse.status = blown HAS-MANIFESTATION fuse-inspection.value = broken; battery.status = low HAS-MANIFESTATION battery-dial.value = zero; ….. END KNOWLEDGE-BASE car-network;
  • 27. Knowledge-modelling basics 27 Inference knowledge ■  describes the lowest level of functional decomposition ■  basic information-processing units: ➤  inference => reasoning ➤  transfer function => communication with other agents ■  why special status? ➤  indirectly related to domain knowledge ➤  enables reuse of inference
  • 28. Knowledge-modelling basics 28 Example inference: cover complaint hypothesiscover causal model my  car  does  not  start fuel  tank  is  empty fuel  tank  is  empty  leads  to  lack  of  gas  in  engine if  there  is  no  gas  in  the  engine,  then  the  car  does  not  start dynamic  input  role dynamic  output  role static  role inference
  • 29. Knowledge-modelling basics 29 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
  • 30. Knowledge-modelling basics 30 Knowledge role ■  Functional name for data/knowledge elements ■  Name captures the “role” of the element in the reasoning process ■  Explicit mapping onto domain types ■  Dynamic role: variant input/output ■  Static role: invariant input ➤  cf. a knowledge basel
  • 31. Knowledge-modelling basics 31 Example inference INFERENCE cover; ROLES: INPUT: complaint; OUTPUT: hypothesis; STATIC: causal-model; SPECIFICATION: "Each time this inference is invoked, it generates a candidate solution that could have caused the complaint. The output thus should be an initial state in the state dependency network which causally ``covers'' the input complaint."; END INFERENCE cover;
  • 32. Knowledge-modelling basics 32 Example dynamic knowledge roles KNOWLEDGE-ROLE complaint; TYPE: DYNAMIC; DOMAIN-MAPPING: visible-state; END KNOWLEDGE-ROLE complaint; KNOWLEDGE-ROLE hypothesis; TYPE: DYNAMIC; DOMAIN-MAPPING: invisible-state; END KNOWLEDGE-ROLE hypothesis;
  • 33. Knowledge-modelling basics 33 Example static knowledge role KNOWLEDGE-ROLE causal-model; TYPE: STATIC; DOMAIN-MAPPING: state-dependency FROM car-network; END KNOWLEDGE-ROLE causal-model;
  • 34. Knowledge-modelling basics 34 Transfer functions ■  transfers an information item between the reasoning agent and another agent ■  from the knowledge-model point of view black box: only its name and I/O ■  detailed specification of transfer functions is part of communication model ■  standard names
  • 35. Knowledge-modelling basics 35 Types of transfer functions obtain receive present provide s ys tem initiative external initiative external information internal information
  • 36. Knowledge-modelling basics 36 Inference structure ■  combined set of inferences specifies the basic inference capability of the target system ■  graphical representation: inference structure ■  provides constraints for control flow
  • 37. Knowledge-modelling basics 37 Example: car inferences complaint   cover predict compare obtain expected finding actual finding result causal  model manifestation  model hypothesis
  • 38. Knowledge-modelling basics 38 Using inference structures ■  Important communication vehicle during development process ■  Often provisional inference structures ■  Can be difficult to understand because of “vague” (non domain-specific terms) ■  Often useful to annotate with domain-specific examples
  • 39. Knowledge-modelling basics 39 Annotated inference structure complaint   cover predict compare obtain expected finding actual finding result causal  model manifestation  model hypothesis engine  does not  start state  dependency rules empty  fuel  tank gas  dial  =  zero/low gas  dial  =  normal not  equal manifestation rules
  • 40. Knowledge-modelling basics 40 Reusing inferences ■  Standard set of inferences?! ➤  difficult subject ■  See catalog in Ch. 13 ■  Use as much as possible standard names
  • 41. Knowledge-modelling basics 41 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 that can be employed for realizing goals. ■  typically described in a hierarchical fashion:
  • 42. Knowledge-modelling basics 42 Task decomposition for car diagnosis diagnosis diagnosis through generate-and-test obtain cover predict task task method compare decomposition inferences transfer function
  • 43. Knowledge-modelling basics 43 Task ■  Description of the input/output ■  Main distinction with traditional functions is that the data manipulated by the task are (also) described in a domain-independent way. ➤  example, the output of a medical diagnosis task would not be a “disease” but an abstract name such as “fault category”
  • 44. Knowledge-modelling basics 44 Example task TASK car-fault-category; GOAL: "Find a likely cause for the complaint of the user"; ROLES: INPUT: complaint: "Complaint about the behavior of the car"; OUTPUT: fault-category: "A hypothesis explained by the evidence"; evidence: "Set of observations obtained during the diagnostic process"; SPEC: "Find an initial state that explains the complaint and is consistent with the evidence obtained"; END TASK car-diagnosis;
  • 45. Knowledge-modelling basics 45 Task method ■  describes how a task is realized through a decomposition into sub-functions ■  sub-functions: another task, inference, transfer function ■  core part of a method: “control structure” ➤  describes ordering of sub-functions small program, captured reasoning strategy ■  additional task roles ➤  to store intermediate reasoning results
  • 46. Knowledge-modelling basics 46 Example task method TASK-METHOD diagnosis-through-generate-and-test; DECOMPOSITION: INFERENCES: cover, predict, compare; TRANSFER-FUNCTIONS: obtain; ROLES: INTERMEDIATE: expected-finding: "The finding predicted, in case the hypothesis is true"; actual-finding: "The finding actually observed";
  • 47. Knowledge-modelling basics 47 Example method control CONTROL-STRUCTURE: REPEAT cover(complaint -> hypothesis); predict(hypothesis -> expected-finding); obtain(expected-finding -> actual-finding); evidence := evidence ADD actual-finding; compare(expected-finding + actual-finding -> result); UNTIL "result = equal or no more solutions of over"; END REPEAT IF result == equal THEN fault-category := hypothesis; ELSE "no solution found"; END IF
  • 48. Knowledge-modelling basics 48 UML activity diagram for method control cover predict obtain compare [no  more  solutions of  cover] [new  solution of  cover] [result  =  equal] [result  =  not  equal] solution  found no  solution  found start diagnosis through generate-­‐and-­‐test
  • 49. Knowledge-modelling basics 49 Control structure elements ■  “procedure” calls: ➤  tasks, transfer functions, inferences ■  role operations ➤  assign, add/append, delete/subtract, retrieve, .. ■  control primitives ➤  repeat-until, while-do, foreach-do, if-then-else
  • 50. Knowledge-modelling basics 50 Control structures (cont.) Conditions: ■  logical expressions about roles: ➤  until differential = empty ■  two special conditions ➤  has-solution –  invocation of inference that can fail ➤  new solution –  invocation of inference that can succeed multiple times, e.g. the cover inference in the car-diagnosis model
  • 51. Knowledge-modelling basics 51 Inference or task? ■  “If the internal behavior of a function are important for explaining the behavior of the system as a whole, then one needs to define this function as a task” ■  During development: provisional inference structures ■  Function = task or inference (or transfer function)
  • 52. Knowledge-modelling basics 52 Knowledge model vs. SE analysis model ■  “Data model” contains “data about data” ➤  = knowledge ■  Functions are described data-model independent ➤  enables reuse of reasoning functions ■  Emphasis on “internal control” ➤  strategy of reasoning process ■  Knowledge model abstracts from communication aspects
  • 53. Knowledge-modelling basics 53 The data-function debate DATA viewpoint FUNC TION viewpoint Object-­‐Oriented  Analysis (OMT,  Booch,  ....) S tructured  Analysis (Y ourdon) CommonK ADS : function-­‐data  decoupling functional  decomposition  is  starting  point data  types  are  derived  from  DFDs static  information  structure  is  starting  point functions  are  grouped  with  the  data reuse  of  data/function  groups  ("objects") parallel  function/data  description reusable  functional  decompositions reusable  data/knowledge  types