Title: COM362 Knowledge Engineering
1Blackboard ArchitecturesandProblem Solving
Methods
- John MacIntyre
- 0191 515 3778
- john.macintyre_at_sunderland.ac.uk
2Content
- Introduction to Blackboard Architectures
- Introduction to Other Representations
- Introduction to Problem Solving Methods
3Background to Blackboards
- Grew out of attempts to build automatic speech
understanding mechanisms - the HEARSAY project (Erman et al, 1980)
- required many different knowledge sources to
process the waveform generated by speech - difficult problem!
- Noise in the data
- subjective interpretations and context
- I scream vs ice cream
- introduced the idea of triggers for different
knowledge sources
4Background to Blackboards
- Further developed by others
- ACCORD (1986)
- solving arrangement problems
- BB1 (1986)
- first attempt at a generic blackboard
architecture - PROTEAN (1987)
- deriving protein structures from constraints
- Generic Blackboard Builder (1988)
- further attempt to develop a blackboard shell
- ERASMUS (1989)
- aircraft design - developed by Boeing
5The Blackboard Metaphor
Blackboard architectures are a metaphor because
they organise and process knowledge in a fashion
similar to a group of people working around a
blackboard
The blackboard is used as a repository for
knowledge
The group leader provides a control function,
guiding and focusing the activities of the
knowledge sources
Each person represents a knowledge source
6The Blackboard Metaphor
- A group of experts meet in a classroom (with a
blackboard) trying to solve a problem - Each expert has relevant (but different)
expertise for solving the problem - The problem, and any initial data are written up
on the blackboard - All experts watch the blackboard to see how the
development of a solution is progressing - If any expert feels they can make a contribution,
they perform some analysis and write the results
up on the blackboard
7The Blackboard Metaphor
- New information added from one expert might spur
another expert to produce more new information - The process is collaborative, using many experts,
and the progressive development of the solution
is stored on the blackboard - Experts continue to make contributions until a
satisfactory solution has bee reached - Early expert systems tried to model this
methodology for large-scale systems
8Blackboard Architectures
- Provide a problem-solving model for organising
knowledge and potentially a strategy for applying
that knowledge - Allows a range of knowledge representation
methods to be applied - Segments the knowledge base making it more
maintainable and making the implementation more
efficient - It can be argued that blackboard architectures
are flexible and powerful - especially where many
knowledge sources are used
9Requirements forBlackboard Architectures
- The knowledge sources MUST all use the same
language when putting information on to the
blackboard - There must be some way of deciding who puts
information on the blackboard and when - resolution of multiple requests to post
information need a means of deciding who will go
first! - We therefore need three things
- the blackboard itself
- the knowledge sources
- and a SCHEDULER to CONTROL information posting
10Flexibility of Representation
- Because the knowledge sources are independent of
each other, they can use their own, individual
knowledge representation and inferencing schemes
Knowledge Sources
Blackboard
Working Memory
IE
KB
11Blackboard Architectures
- Each module must provide information in an agreed
format so that the other modules can use it - Working memory is subdivided into regions and
structured appropriately - this is called the
Blackboard - Communication between modules takes place only
via the blackboard - Each knowledge source contributes to the solution
whenever the data it requires is available on the
blackboard
12Example KBS House Design
- Imagine a KBS to design a house, segmented into
- a KBS to design the general layout of the house,
the grounds and the paths - a KBS that, given general layout, will design
gardens - a KBS that, given the general layout, will design
the internal structure of a house, allocate
rooms, set room sizes and specify windows, doors
etc
13House Design (continued)
- a KBS that given specific room details, size
shape etc, will design the kitchen - similarly other KBSs that will respectively
design the dining room, living room, bathroom and
bedrooms - Imagine also a blackboard designed to develop and
communicate these designs
14Pictorially
15The system in operation.
- Initially the blackboard will be empty
- While all knowledge sources will have access to
it, only the KBS to design the general layout
will have sufficient information to proceed - After it has finished the KBS for garden design
and the KBS to design the internal structure will
both be able to start their work - The scheduler will determine which of these can
post information to the blackboard, and when
16House Design (continued)
- As the internal design progresses and provides
general details on the individual rooms to the
blackboard, the KBSs responsible for the detailed
design of those rooms will begin their work. - Thus the overall problem is broken down into
specific tasks - aids maintenance
- improves efficiency
- allows flexibility of representation and
inferencing
17Disadvantages ofBlackboard Architectures
- Blackboard architectures do not explicitly
specify the control of the individual knowledge
sources - The internal structure of each knowledge source
has a profound effect on the quality of the
reasoning - Control is the most important aspect of
blackboard architectures - difficult to control dynamic issues of
concurrency and parallelism
18Other Representations
- Semantic Nets
- Logic
- propositional
- predicate
- Many other forms of representation!!
19Semantic Nets
- One of the oldest and easiest to understand
knowledge representation schemes - first introducted by Ross Quillian in 1968
- Represents DECLARATIVE knowledge
- A graphical description of knowledge that shows
relationships between objects - Essentially, a set of nodes and links
- nodes represent objects or concepts
- links represent relationships between objects
20Semantic Nets
Example semantic net, depicting relationships
KEY
Nodes which represent objects
Links show the relationship between objects
21Advantages ofSemantic Nets
- Semantic networks are a powerful, flexible and
graphical way of representing knowledge - Often used as communication tool between
knowledge engineer and expert during knowledge
acquisition phase of project - can be used to develop domain model
- can be used to identify objects and relationships
previously unknown to KE
22Disadvantages ofSemantic Nets
- However very difficult to inference as IE must
understand each type of link - Less reliable than rules as inferring becomes a
process of searching across diagram - Diagrams can become complex especially when they
need to represent exception clauses
23Propositional Logic
- Based on the idea that knowledge can be
represented as a set of statements which are
either true or false - John is a fantastic teacher
- Students love Monday mornings
- Knowledge can then be represented symbolically
- A John is a fantastic teacher
- B John teaches students on Monday mornings
- C Students love Monday mornings
- this leads us to IF A and B then C
24Propositional Logic
- This can be re-written as follows
- A ? B ? C
- Note that C is inferred from the presence of A
and B, it is not asserted directly - Propositional logic is limited because it only
allows us to represent knowledge with
propositions which can be either true or false - A more powerful representation is known as
Predicate Logic
25Predicate Logic
- Predicate logic allows us to break down
propositions into two components - arguments
- predicates
- Also allows use of variables, as well as
propositional inferencing - Example
- IS_A(John,fantastic teacher)
- IS_A is the PREDICATE
- John, fantastic teacher are the ARGUMENTS
26Predicate Logic
- Predicate logic allows much more powerful use of
symbolic representation - ? x, Man(x) ? ? y, s.t. Woman(y) ? Loves (x,y)
- For any object x in the world, if x is a Man,
then there exists an object y, such that y is a
Woman and x Loves y - Development of predicate logic led to the
development of special languages for developing
expert systems - LISP, Prolog, etc etc
27Problem Solving Methods
- Experts develop particular methods for solving
particular types of problem - this is part of
their expertise - These methods differ for different types of
problem, eg - Design, Diagnosis, Scheduling
- Modelling the problem solving behaviour of
experts we can develop methods for generic tasks
28Problem Solving Methods
- PSMs specify the sequence of inference tasks that
are needed to solve a problem and the domain
knowledge required by the method
29Advantages of PSMs
- Two or more PSMs for solving the same generic
task can be compared and we can use which ever is
more suited to our task - The PSM is open to inspection and can be
improved, without necessarily affecting the
domain knowledge - Separating the PSM from the domain knowledge
enables re-use the PSM can be reused on other
similar problems in different domains - the general process of designing a car may be
very similar to the general process employed when
designing a house
30Complexities in Developing PSM
- To enable reuse we need to develop a library of
PSMs - These are difficult to classify as we need to
specify the - task independence (ie how generic)
- formality (informal descriptions or implemented
software) - granularity (size)
- of the PSMs contained within the library.
- Reusability - usability trade off to consider
- Task independent PSMs will require refinement and
adaptation before they can be used. They can
however be reused in a range of situations. Task
dependent PSMs require little adaptation before
use, however they are less easily used elsewhere