Intelligent Systems in the Knowledge Systems Laboratory at

Past Project: The BB1 Blackboard Control Architecture

The BB1 project is no longer active at the KSL (June, 2003).

BB1 is freely available, but the AIS project is not currently working with the codebase. If you have technical problems, feel free to send us mail, but BB1 maintenance is a very low priority right now so it may take a while to respond.

BB1 is a software system, originally invented by Barbara Hayes-Roth in 1983, that embodies the "blackboard control architecture" for blackboard systems. In addition to the traditional properties of blackboard systems, BB1 enables an application to use a uniform reasoning method (event-based triggering and opportunistic control of reasoning operations) to build and modify explicit plans for its own behavior at run time.


Features characteristic of BB1 include:
  • uniform representation of domain & control knowledge;
  • event-based triggering of reasoning operations;
  • agenda-based control;
  • domain solutions and control plan represented on a globally accessible blackboard;
  • language frameworks for generic tasks.


BB1 is freely available to anybody who wants it.

BB1 Version 2.5

The compresed tar archive of BB1 Version 2.5 is available via anonymous ftp on host hpp. The documentation is available only in printed form.


Documentation is in the following reports. Other relevant papers can be found in AIS Publications.

Garvey, A., Hewett, M., Johnson, M.V., Jr., Schulman, R., and Hayes-Roth, B. "BB1 User Manual - Common LISP Version 2.0". Technical Report KSL 86-61, Knowledge Systems Laboratory, Stanford University, 1987.

Hewett, M. "BB1 User Manual - v2.1 Update (Common Lisp)." Technical Report KSL-86-61a, Knowledge Systems Laboratory, Stanford University, 1988.

BB1 Version 3.2

BB1 v3.2 is available via anonymous ftp:


A C++ implementation of BB1 now being used in several laboratories. Since this is an essential "kernel" of BB1 rather than a complete reimplementation of earlier versions, it is called "BBK". It is not a finished product, but is under continuous development. The manual and code corresponded to one another in late 1995, but there are now several new features that have not yet made their way into the documentation. The out-of-date documenation is incomplete rather than incorrect.

BB1 Applications

Experimental systems implemented by our group in BB1 include:
AIS Home Page KSL Home Page Contact Us