Blackboard Architectures - PowerPoint PPT Presentation

1 / 23
About This Presentation
Title:

Blackboard Architectures

Description:

... is usually organized in some fashion so that the external components (agents) ... the medium through which it issues and receives instructions from other ... – PowerPoint PPT presentation

Number of Views:563
Avg rating:3.0/5.0
Slides: 24
Provided by: micha395
Category:

less

Transcript and Presenter's Notes

Title: Blackboard Architectures


1
Blackboard Architectures
  • Michael Zyda
  • Zyda_at_isi.edu

2
A hierarchy of motion behaviors
3
  • So the next thing I am going to discuss is how we
    can use a Blackboard Architecture for this
    hierarchy
  • Paper to read
  • Damian Isla Bruce Blumberg Blackboard
    Architectures, AI Game Programming Wisdom,
    Volume 1, pp. 333 - 344.
  • These notes are built from that paper as enhanced
    by some of my own thoughts

4
Blackboard architectures
  • Any type of social system requires some
    coordination of action.
  • Armies, bees, wolves, sports team
  • Individuals need to take certain roles, and
    high-level goals need to be served by
    occasionally non-obvious, low-level cooperative
    action.
  • This is as true for groups of simulated agents in
    a computer game as it is for natural and social
    systems.
  • As the number of agents in a system increases
    along with the number of potential roles for
    individual agents, controlling coordinating
    their behavior becomes increasingly difficult.

5
  • The blackboard approach is one possible means of
    handling this coordination.
  • Although simple to implement, the architecture
    has proven elegant and powerful enough to be
    useful for problems ranging from synthetic
    character control to natural language
    understanding and other reasoing problems.
  • Blackboards originated as a technique for formal
    reasoning and problem solving in the 1970s.

6
Metaphor
  • The blackboard is built around a metaphor the
    physical blackboard we all used at school wa
    sitself a problem solving tool.
  • We have all experienced crowding around a
    blackboard with a group of friends or colleagues
    to tackle a particularly nasty problem.
  • In these cases, the blackboard was useful because
    it provided a shared space in which the problem
    could be broken down and incrementally solved.
  • So think about your friends standing around the
    blackboard each willing to chip in to help solve
    the global problem you all are working on

7
(No Transcript)
8
Blackboard
  • Blackboard
  • A publicly readable/writable information display.
  • Typically, the blackboard contains a list of
    logical assertions upon which other components
    operate.
  • The blackboard is usually organized in some
    fashion so that the external components (agents)
    need only explore specific areas of the
    blackboard for the contents in which they are
    interested.
  • Some systems, for example, impose a hierarchy to
    the assertions, identifying some assertions as
    data (the initial input to the system), and other
    assertions as goals, with a specified number of
    intermediate levels.
  • Some systems also annotate assertions with a
    credibility rating, indicating how likely the
    assertion is.

9
Knowledge Sources (KSs)
  • Knowledge Sources (KSs) -
  • Flanking the blackboard are a series of
    components that are able to operate on the
    information that the blackboard contains.
  • These are the specialists (agents) that will
    collaborate to solve the problem.
  • Like all specialists, KSs only have very narrow
    regions of expertise, and so only know what to do
    in a very narrow set of circumstances.
  • Usually, KSs are inactive, awaiting specific sets
    of preconditions to become true.
  • A KS might also return a willingness to run, or
    relevance, indicating its degree of applicability
    to the current contents of the blackboard.

10
  • Knowledge Sources (KSs) -
  • When KSs are found to be relevant, they can be
    executed, their actions modifying the contents of
    the blackboard.
  • These modifications might take the form of new
    logical assertions, changes to existing
    assertions, or control signals to other KSs.
  • Significantly, KSs are only allowed to
    communicate with one another through the
    blackboard.

11
Arbiter
  • Arbiter -
  • Given a single snapshot of the blackboard
    contents, it is possible that any number of KSs
    can indicate a nonzero relevance.
  • It is the job of the arbiter to decide which of
    the relevant KSs to execute.
  • This is a critical step, and constitutes the
    entirety of the control strategy for the entire
    blackboard system.
  • In many of the earlier systems, the arbiter would
    pick a single winning KS - this was a means of
    ensuring that two conflicting actions were not
    taken in a single timestep.
  • A trivial strategy for picking a single winner
    would simply be to pick the KS with the highest
    self-generated relevance.

12
  • Arbiter -
  • However, any number of strategies is possible,
    including ones that incorporate a focus of
    attention, a motivational state, an emotional
    state, a personality model, and so forth.
  • Such state information is additional input to the
    arbiter to help it make its decision.
  • An advanced arbiter might choose the KS based not
    only on immediate relevance (which is what the KS
    returns), but also on expected relevance to the
    overall goal, resulting in behavior that is both
    data-driven and goal-driven.

13
  • On a single update, a list of relevant KSs is
    collected based on recent changes to the
    blackboard.
  • This list is passed to the arbiter, which uses
    whatever methods it wants to choose a winning KS.
  • This KS is then executed, causing further changes
    to the blackboard.
  • For some problems, the new state is examined for
    termination conditions that would indicate that
    the problem is solved (I.e. that the blackboard
    contains the solution).
  • If the termination conditions are not met, then
    the cycle is repeated.

14
  • Difference between a rule-based system and a
    blackboard -
  • Whereas many rule-based systems typically require
    a compact and uniform encoding of both
    trigger-conditions and actions in their rules,
    blackboards allow arbitrary code to be executed
    for both these parts.
  • Where one KS (the blackboard rule equivalent)
    might act solely based on the contents of the
    blackboard, another might pause execution and
    solicit input from the user, or perform any
    arbitrary complex operation.
  • A single KS could encapsulate an entire subsystem.

15
  • Difference between a rule-based system and a
    blackboard -
  • Whereas classical rule-chaining systems allow
    only forward-chaining or only backward-chaining,
    blackboard systems impose few enough constraints
    to allow one or the other or both at once.
  • Related to the above, blackboards allow multiple
    concurrent lines of reasoning.
  • There might be multiple strategies for solving a
    single problem, for example, and both might be
    investigated at the same time.
  • Maintaining these lines of reasoning depends, of
    course, on the sophistication of the arbiter.
  • Note that in principle, nothing prevents two
    contradictory assertions from being present in
    the blackboard at the same time.
  • It is simply assumed that the structure of the
    blackboard will eventually reconcile the
    contradiction at a higher level, perhaps by
    discarding the assertion with the lowest
    credibility.

16
Control rather then reasoning
  • One important trend is that blackboards are being
    used increasingly for control rather than for
    reasoning.
  • Although the line between the two is often hazt,
    it might generally be considered that the weight
    of decision-making has been moved out of the
    blackboard and arbiter and into the KSs.
  • As stated already, a single KS might encapsulate
    an entire subsystem that uses the blackboard
    simply as the medium through which it issues and
    receives instructions from other subsystems.

17
  • The assertions of the blackboard in this case are
    actually control signals.
  • Despite these differences, two fundamental
    aspects of the blackboard remain
  • A KS need not know (or need not constrain) when
    and how the assertions or control signals it
    produces will be used.
  • A KS need not know (or need not heed) the
    originator of the assertions or control signals
    it acts upon.

18
(No Transcript)
19
(No Transcript)
20
Clean Interfaces
  • Clean interfaces
  • In the end, a blackboard is a clean interface
    that all new threads can read/write in a uniform
    fashion.
  • Multiple threads
  • How does a thread (KS, agent) know when to come
    awake and put itself to asleep.

21
C4
22
BBWAR
  • On the CD is the Java source for BBWar, a simple
    RTS-like game built around a blackboard
    architecture
  • The sample code shows you how a hierarchy is
    achieved with a blackboard.
  • Opportunistic
  • Cooperative
  • Coordinated

23
(No Transcript)
Write a Comment
User Comments (0)
About PowerShow.com