Blackboard system

From Wikipedia, the free encyclopedia

Jump to: navigation, search

A blackboard system is an artificial intelligence application based on the blackboard architectural model, where a common knowledge base, the "blackboard", is iteratively updated by a diverse group of specialist knowledge sources, starting with a problem specification and ending with a solution. Each knowledge source updates the blackboard with a partial solution when its internal constraints match the blackboard state. In this way, the specialists work together to solve the problem. The blackboard model was originally designed as a way to handle complex, ill-defined problems.

Contents

[edit] Metaphor

The following scenario provides a simple metaphor that gives some insight into how a blackboard system works:

A group of specialists are seated in a room with a large blackboard. They work as a team to brainstorm a solution to a problem, using the blackboard as the workplace for cooperatively developing the solution. The session begins when the problem specifications are written onto the blackboard. The specialists all watch the blackboard, looking for an opportunity to apply their expertise to the developing solution. When someone writes something on the blackboard that allows another specialist to apply their expertise, the second specialist records their contribution on the blackboard, hopefully enabling other specialists to then apply their expertise. This process of adding contributions to the blackboard continues until the problem has been solved.

[edit] Components

A blackboard-system application consists of three major components:

  1. The software specialist modules, which are called knowledge sources (KSs). Like the human experts at a blackboard, each knowledge source provides specific expertise needed by the application. The ability to support interaction and cooperation among diverse KSs creates enormous flexibility in designing and maintaining applications. As the pace of technology has intensified, it becomes ever more important to be able to replace software modules as they become outmoded or obsolete.
  2. The blackboard, a shared repository of problems, partial solutions, suggestions, and contributed information. The blackboard can be thought of as a dynamic "library" of contributions to the current problem that have been recently "published" by other knowledge sources.
  3. The control shell, which controls the flow of problem-solving activity in the system. Just as the eager human specialists need a moderator to prevent them from trampling in a mad dash to grab the chalk, KSs need a mechanism to organize their use in the most effective and coherent fashion. In a blackboard system, this is provided by the control shell.

[edit] Implementations

Famous examples of early academic blackboard systems are the Hearsay II speech recognition system and Douglas Hofstadter's Copycat and Numbo projects.

More recent examples include deployed real-world applications, such as the PLAN component of the Mission Control System for RADARSAT-1, an Earth observation satellite developed by Canada to monitor environmental changes and Earth's natural resources.

[edit] References

  • Lee D. Erman, Frederick Hayes-Roth, Victor R. Lesser, and D. Raj Reddy, The Hearsay-II Speech-Understanding System: Integrating Knowledge to Resolve Uncertainty, Computing Surveys, 12(2):213-253, June 1980.
  • Hayes-Roth, B. A blackboard architecture for control. Artificial Intelligence, 1985, 26, 251-321.
  • Nii, H. P. Blackboard Systems. 1986.
  • Iain Craig, Blackboard Systems. 1995.
  • Daniel D. Corkill, Kevin Q. Gallagher, and Philip M. Johnson. Achieving flexibility, efficiency, and generality in blackboard architectures. In Proceedings of the National Conference on Artificial Intelligence, pages 18-23, Seattle, Washington, July 1987. Retrieve Article
  • Robert S. Engelmore and Anthony Morgan, editors. Blackboard Systems. Addison-Wesley, 1988.
  • V. Jagannathan, Rajendra Dodhiawala, and Lawrence S. Baum, editors. Blackboard Architectures and Applications, Academic Press, 1989.
  • Norman Carver. A Revisionist View of Blackboard Systems. In Proceedings of the 1997 Midwest Artificial Intelligence and Cognitive Science Society Conference, May 1997. Retrieve Article
  • Daniel D. Corkill. Blackboard Systems. AI Expert, 6(9):40-47, September, 1991. Retrieve Article
  • Daniel D. Corkill. Design Alternatives for Parallel and Distributed Blackboard Systems. In V. Jagannathan, Rajendra Dodhiawala, and Lawrence S. Baum, editors, Blackboard Architectures and Applications, pages 99–136, Academic Press, 1989. Retrieve Article
  • Daniel D. Corkill. Countdown to Success: Dynamic objects, GBB, and RADARSAT-1. Communications of the ACM, 40(5):48-58, May 1997. Retrieve Article
  • Daniel D. Corkill. Collaborating Software: Blackboard and Multi-Agent Systems & the Future. In Proceedings of the International Lisp Conference, New York, New York, October 2003. Retrieve Article

[edit] External links

  • Using JavaSpaces An article on using JavaSpaces as a blackboard system.
  • Open Blackboard System An open source framework for developing blackboard systems.
  • BBTech Corporation A company that develops and maintains blackboard applications.
  • GBBopen An open source blackboard system framework.
  • SQLBusRT A blackboard implementation with temporal historical data added.
Personal tools
Languages