The Blackboard pattern involves multiple independent components working on a shared data structure called the “blackboard.” These components contribute their expertise by modifying and examining the blackboard data until a solution is reached.

  • Useful when no clear deterministic solution exists.
  • Specialised subsystems assemble knowledge to incrementally build a partial or approximate solution
  • Parts: Blackboard, Knowledge source, control


Variants

  • Production System
    • Blackboard -> Working memory
    • Knowledge Source -> Condition-action rules
    • Control -> conflict resolution module
  • Repository
    • Blackboard -> Data
    • Knowledge source -> Application
    • Control -> User input

Usage

  • HEARSAY-II - Speech recognition system.
  • HASP/SIAP - Submarine detection system.
  • Crysalis - Determine protein molecule structure.

Benefits

  • Experimentation - Alternate algorithms and heuristics can be tried.
  • Incremental solution - Partial solutions built up over time.
  • Fault tolerance - Can cope with noisy or incomplete data.

Drawbacks

  • Inefficiency - Wasteful hypothesis testing.
  • No guarantee of correct solution - Depends on knowledge sources.
  • Control strategy - Hard to define optimal control heuristics.
  • Complex testing - Non-deterministic behavior.

Example

In artificial intelligence or complex problem-solving systems, different algorithms or modules work together by updating and analyzing a shared repository of information (the blackboard) to solve a problem collaboratively.