Blackboard system

Last updated

A blackboard system is an artificial intelligence approach based on the blackboard architectural model, [1] [2] [3] [4] 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, where the solution is the sum of its parts.

Contents

Metaphor

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

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.

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.
  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 each other 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.

Learnable Task Modeling Language

A blackboard system is the central space in a multi-agent system. It's used for describing the world as a communication platform for agents. To realize a blackboard in a computer program, a machine readable notation is needed in which facts can be stored. One attempt in doing so is a SQL database, another option is the Learnable Task Modeling Language (LTML). The syntax of the LTML planning language is similar to PDDL, but adds extra features like control structures and OWL-S models. [5] [6] LTML was developed in 2007 [7] as part of a much larger project called POIROT (Plan Order Induction by Reasoning from One Trial), [8] which is a Learning from demonstrations framework for process mining. In POIROT, Plan traces and hypotheses are stored in the LTML syntax for creating semantic web services. [9]

Here is a small example: A human user is executing a workflow in a computer game. The user presses some buttons and interacts with the game engine. While the user interacts with the game, a plan trace is created. That means the user's actions are stored in a logfile. The logfile gets transformed into a machine readable notation which is enriched by semantic attributes. The result is a textfile in the LTML syntax which is put on the blackboard. Agents (software programs in the blackboard system) are able to parse the LTML syntax.

Implementations

We start by discussing two well known early blackboard systems, BB1 and GBB, below and then discuss more recent implementations and applications.

The BB1 blackboard architecture [10] was originally inspired by studies of how humans plan to perform multiple tasks in a trip, used task-planning as a simplified example of tactical planning for the Office of Naval Research. [11] Hayes-Roth & Hayes-Roth found that human planning was more closely modeled as an opportunistic process, in contrast to the primarily top-down planners used at the time:

While not incompatible with successive-refinement models, our view of planning is somewhat different. We share the assumption that planning processes operate in a two-dimensional planning space defined on time and abstraction dimensions. However, we assume that people's planning activity is largely opportunistic. That is, at each point in the process, the planner's current decisions and observations suggest various opportunities for plan development. The planner's subsequent decisions follow up on selected opportunities. Sometimes, these decision-sequences follow an orderly path and produce a neat top-down expansion as described above. However, some decisions and observations might also suggest less orderly opportunities for plan development. [12]

A key innovation of BB1 was that it applied this opportunistic planning model to its own control, using the same blackboard model of incremental, opportunistic, problem-solving that was applied to solve domain problems. Meta-level reasoning with control knowledge sources could then monitor whether planning and problem-solving were proceeding as expected or stalled. If stalled, BB1 could switch from one strategy to another as conditions – such as the goals being considered or the time remaining – changed. BB1 was applied in multiple domains: construction site planning, [13] inferring 3-D protein structures from X-ray crystallography, [14] intelligent tutoring systems, [15] and real-time patient monitoring. [16]

BB1 also allowed domain-general language frameworks to be designed for wide classes of problems. For example, the ACCORD [17] language framework defined a particular approach to solving configuration problems. The problem-solving approach was to incrementally assemble a solution by adding objects and constraints, one at a time. Actions in the ACCORD language framework appear as short English-like commands or sentences for specifying preferred actions, events to trigger KSes, preconditions to run a KS action, and obviation conditions to discard a KS action that is no longer relevant.

GBB [18] focused on efficiency, in contrast to BB1, which focused more on sophisticated reasoning and opportunistic planning. GBB improves efficiency by allowing blackboards to be multi-dimensional, where dimensions can be either ordered or not, and then by increasing the efficiency of pattern matching. GBB1, [19] one of GBB's control shells implements BB1's style of control while adding efficiency improvements.

Other well-known of early academic blackboard systems are the Hearsay II speech recognition system and Douglas Hofstadter's Copycat and Numbo projects.

Some more recent examples of deployed real-world applications include:

Blackboard systems are used routinely in many military C4ISTAR systems for detecting and tracking objects. Another example of current use is in Game AI, where they are considered a standard AI tool to help with adding AI to video games. [22] [23]

Recent developments

Blackboard-like systems have been constructed within modern Bayesian machine learning settings, using agents to add and remove Bayesian network nodes. In these 'Bayesian Blackboard' systems, the heuristics can acquire more rigorous probabilistic meanings as proposal and acceptances in Metropolis Hastings sampling though the space of possible structures. [24] [25] [26] Conversely, using these mappings, existing Metropolis-Hastings samplers over structural spaces may now thus be viewed as forms of blackboard systems even when not named as such by the authors. Such samplers are commonly found in musical transcription algorithms for example. [27]

Blackboard systems have also been used to build large-scale intelligent systems for the annotation of media content, automating parts of traditional social science research. In this domain, the problem of integrating various AI algorithms into a single intelligent system arises spontaneously, with blackboards providing a way for a collection of distributed, modular natural language processing algorithms to each annotate the data in a central space, without needing to coordinate their behavior. [28]

See also

Related Research Articles

Artificial intelligence (AI) is the intelligence of machines or software, as opposed to the intelligence of humans or animals. It is a field of study in computer science that develops and studies intelligent machines. Such machines may be called AIs.

<span class="mw-page-title-main">Expert system</span> Computer system emulating the decision-making ability of a human expert

In artificial intelligence, an expert system is a computer system emulating the decision-making ability of a human expert. Expert systems are designed to solve complex problems by reasoning through bodies of knowledge, represented mainly as if–then rules rather than through conventional procedural code. The first expert systems were created in the 1970s and then proliferated in the 1980s. Expert systems were among the first truly successful forms of artificial intelligence (AI) software. An expert system is divided into two subsystems: the inference engine and the knowledge base. The knowledge base represents facts and rules. The inference engine applies the rules to the known facts to deduce new facts. Inference engines can also include explanation and debugging abilities.

Knowledge representation and reasoning is the field of artificial intelligence (AI) dedicated to representing information about the world in a form that a computer system can use to solve complex tasks such as diagnosing a medical condition or having a dialog in a natural language. Knowledge representation incorporates findings from psychology about how humans solve problems, and represent knowledge in order to design formalisms that will make complex systems easier to design and build. Knowledge representation and reasoning also incorporates findings from logic to automate various kinds of reasoning, such as the application of rules or the relations of sets and subsets.

<span class="mw-page-title-main">Douglas Lenat</span> Computer scientist and AI pioneer

Douglas Bruce Lenat was an American computer scientist and researcher in artificial intelligence who was the founder and CEO of Cycorp, Inc. in Austin, Texas.

A Bayesian network is a probabilistic graphical model that represents a set of variables and their conditional dependencies via a directed acyclic graph (DAG). While it is one of several forms of causal notation, causal networks are special cases of Bayesian networks. Bayesian networks are ideal for taking an event that occurred and predicting the likelihood that any one of several possible known causes was the contributing factor. For example, a Bayesian network could represent the probabilistic relationships between diseases and symptoms. Given symptoms, the network can be used to compute the probabilities of the presence of various diseases.

Distributed Artificial Intelligence (DAI) also called Decentralized Artificial Intelligence is a subfield of artificial intelligence research dedicated to the development of distributed solutions for problems. DAI is closely related to and a predecessor of the field of multi-agent systems.

In artificial intelligence, symbolic artificial intelligence is the term for the collection of all methods in artificial intelligence research that are based on high-level symbolic (human-readable) representations of problems, logic and search. Symbolic AI used tools such as logic programming, production rules, semantic nets and frames, and it developed applications such as knowledge-based systems, symbolic mathematics, automated theorem provers, ontologies, the semantic web, and automated planning and scheduling systems. The Symbolic AI paradigm led to seminal ideas in search, symbolic programming languages, agents, multi-agent systems, the semantic web, and the strengths and limitations of formal knowledge and reasoning systems.

Collaborative intelligence characterizes multi-agent, distributed systems where each agent, human or machine, is autonomously contributing to a problem solving network. Collaborative autonomy of organisms in their ecosystems makes evolution possible. Natural ecosystems, where each organism's unique signature is derived from its genetics, circumstances, behavior and position in its ecosystem, offer principles for design of next generation social networks to support collaborative intelligence, crowdsourcing individual expertise, preferences, and unique contributions in a problem solving process.

Intelligent control is a class of control techniques that use various artificial intelligence computing approaches like neural networks, Bayesian probability, fuzzy logic, machine learning, reinforcement learning, evolutionary computation and genetic algorithms.

<span class="mw-page-title-main">Multi-agent system</span> Built of multiple interacting agents

A multi-agent system is a computerized system composed of multiple interacting intelligent agents. Multi-agent systems can solve problems that are difficult or impossible for an individual agent or a monolithic system to solve. Intelligence may include methodic, functional, procedural approaches, algorithmic search or reinforcement learning.

A knowledge-based system (KBS) is a computer program that reasons and uses a knowledge base to solve complex problems. The term is broad and refers to many different kinds of systems. The one common theme that unites all knowledge based systems is an attempt to represent knowledge explicitly and a reasoning system that allows it to derive new knowledge. Thus, a knowledge-based system has two distinguishing features: a knowledge base and an inference engine.

An intelligent tutoring system (ITS) is a computer system that aims to provide immediate and customized instruction or feedback to learners, usually without requiring intervention from a human teacher. ITSs have the common goal of enabling learning in a meaningful and effective manner by using a variety of computing technologies. There are many examples of ITSs being used in both formal education and professional settings in which they have demonstrated their capabilities and limitations. There is a close relationship between intelligent tutoring, cognitive learning theories and design; and there is ongoing research to improve the effectiveness of ITS. An ITS typically aims to replicate the demonstrated benefits of one-to-one, personalized tutoring, in contexts where students would otherwise have access to one-to-many instruction from a single teacher, or no teacher at all. ITSs are often designed with the goal of providing access to high quality education to each and every student.

Means–ends analysis (MEA) is a problem solving technique used commonly in artificial intelligence (AI) for limiting search in AI programs.

<span class="mw-page-title-main">Rick Hayes-Roth</span> American computer scientist and educator (born 1947)

Frederick Hayes-Roth is an American computer scientist and educator. His principal work focuses on how to use computing processes to winnow data down to only those information items that are valuable to the receiver, using technology to deliver those items, and in designing IT systems structured for this task. Frederick Hayes-Roth is also known as Rick Roth and has published under the names Rick Hayes-Roth and Frederick Roth.

The following outline is provided as an overview of and topical guide to artificial intelligence:

In artificial intelligence, a procedural reasoning system (PRS) is a framework for constructing real-time reasoning systems that can perform complex tasks in dynamic environments. It is based on the notion of a rational agent or intelligent agent using the belief–desire–intention software model.

<span class="mw-page-title-main">Situated approach (artificial intelligence)</span> Concept in artificial intelligence research

In artificial intelligence research, the situated approach builds agents that are designed to behave effectively successfully in their environment. This requires designing AI "from the bottom-up" by focussing on the basic perceptual and motor skills required to survive. The situated approach gives a much lower priority to abstract reasoning or problem-solving skills.

Inductive programming (IP) is a special area of automatic programming, covering research from artificial intelligence and programming, which addresses learning of typically declarative and often recursive programs from incomplete specifications, such as input/output examples or constraints.

This glossary of artificial intelligence is a list of definitions of terms and concepts relevant to the study of artificial intelligence, its sub-disciplines, and related fields. Related glossaries include Glossary of computer science, Glossary of robotics, and Glossary of machine vision.

<span class="mw-page-title-main">Thomas Dean (computer scientist)</span> American computer scientist

Thomas L. Dean is an American computer scientist known for his work in robot planning, probabilistic graphical models, and computational neuroscience. He was one of the first to introduce ideas from operations research and control theory to artificial intelligence. In particular, he introduced the idea of the anytime algorithm and was the first to apply the factored Markov decision process to robotics. He has authored several influential textbooks on artificial intelligence.

References

  1. Erman, L. D.; Hayes-Roth, F.; Lesser, V. R.; Reddy, D. R. (1980). "The Hearsay-II Speech-Understanding System: Integrating Knowledge to Resolve Uncertainty". ACM Computing Surveys. 12 (2): 213. doi:10.1145/356810.356816. S2CID   118556.
  2. Corkill, Daniel D. (September 1991). "Blackboard Systems" (PDF). AI Expert. 6 (9): 40–47.
    • Nii, H. Penny (1986). Blackboard Systems (PDF) (Technical report). Department of Computer Science, Stanford University. STAN-CS-86-1123. Retrieved 2013-04-12.
  3. Hayes-Roth, B. (1985). "A blackboard architecture for control". Artificial Intelligence. 26 (3): 251–321. doi:10.1016/0004-3702(85)90063-3.
  4. Goldman, Robert P and Maraist, John (2010). Shopper: A System for Executing and Simulating Expressive Plans. ICAPS. pp. 230–233.{{cite conference}}: CS1 maint: multiple names: authors list (link)
  5. Pechoucek, Michal (2010). Agent-Based Computing in Distributed Adversarial Planning (Technical report). Czech Technical Univ Prague.
  6. Burstein, Mark and Brinn, Marshall and Cox, Mike and Hussain, Talib and Laddaga, Robert and McDermott, Drew and McDonald, David and Tomlinson, Ray (2007). An architecture and language for the integrated learning of demonstrations. AAAI Workshop Acquiring Planning Knowledge via Demonstration. pp. 6–11.{{cite conference}}: CS1 maint: multiple names: authors list (link)
  7. Morrison, Clayton T and Cohen, Paul R (2007). Designing experiments to test planning knowledge about plan-step order constraints. ICAPS workshop on Intelligent Planning and Learning.{{cite conference}}: CS1 maint: multiple names: authors list (link)
  8. Burstein, Mark and Bobrow, Robert and Ferguson, William and Laddaga, Robert and Robertson, Paul (2010). Learning from Observing: Vision and POIROT-Using Metareasoning for Self Adaptation. Self-Adaptive and Self-Organizing Systems Workshop (SASOW), 2010 Fourth IEEE International Conference on. pp. 300–307.{{cite conference}}: CS1 maint: multiple names: authors list (link)
  9. Hayes-Roth, Barbara (1985). "A blackboard architecture for control". Artificial Intelligence. 26 (3): 251–321. doi:10.1016/0004-3702(85)90063-3.
  10. Hayes-Roth, Barbara (1980). Human Planning Processes. RAND.
  11. Hayes-Roth, Barbara; Hayes-Roth, Frederick (1979). "A Cognitive Model of Planning". Cognitive Science. 3 (4): 275–310. doi: 10.1207/s15516709cog0304_1 .
  12. Tommelein, Iris D.; Levitt, Raymond E.; Hayes-Roth, Barbara (1989). "Sightplan: An Artificial Intelligence Tool to Assist Construction Managers with Site Layout". Proceedings of the International Symposium on Automation and Robotics in Construction (IAARC). Proceedings of the 6th International Symposium on Automation and Robotics in Construction (ISARC). doi:10.22260/ISARC1989/0043. ISSN   2413-5844 . Retrieved 2023-03-17., inferring 3D
  13. Hayes-Roth, Barbara; Buchanan, Bruce G.; Lichtarge, Olivier; Hewitt, Mike; Altman, Russ B.; Brinkley, James F.; Cornelius, Craig; Duncan, Bruce S.; Jardetzky, Oleg (1986). PROTEAN: Deriving Protein Structure from Constraints. AAAI. pp. 904–909. Retrieved 2012-08-11.
  14. Murray, William R. (1989). "Control for Intelligent Tutoring Systems: A Blackboard-based Dynamic Instructional Planner". Proceedings of the 4th International Conference on Artificial Intelligence and Education. 4th International Conference of AI and Education. Amsterdam, Holland: IOS. pp. 150–168.
  15. Hayes-Roth, Barbara (1995-01-01). "An architecture for adaptive intelligent systems". Artificial Intelligence. 72 (1): 329–365. doi:10.1016/0004-3702(94)00004-K. hdl: 2060/19970037819 . ISSN   0004-3702 . Retrieved 2023-02-09.
  16. Hayes-Roth, Barbara; Vaughan Johnson, M.; Garvey, Alan; Hewett, Michael (1986-10-01). "Application of the BB1 blackboard control architecture to arrangement-assembly tasks" . Artificial Intelligence in Engineering. 1 (2): 85–94. doi:10.1016/0954-1810(86)90052-X. ISSN   0954-1810 . Retrieved 2018-12-21.
  17. Corkill, Daniel; Gallagher, Kevin; Murray, Kelly (1986). GBB: A Generic Blackboard Development System. Proceedings of the Fifth National Conference on Artificial Intelligence. pp. 1008–1014.
  18. Corkill, Dan (1987). Integrating BB1-Style Control into the Generic Blackboard System. Workshop on Blackboard Systems. Coins Technical Report 87-59. Seattle, Washington.
  19. Corkill, Daniel D. "Countdown to success: Dynamic objects, GBB, and RADARSAT-1." Communications of the ACM 40.5 (1997): 48-58.
  20. Khosravi, H., & Kabir, E. (2009). A blackboard approach towards integrated Farsi OCR system. International Journal of Document Analysis and Recognition (IJDAR), 12(1), 21-32.
  21. Millington, Ian (2019-03-26). AI for Games, Third Edition (3rd ed.). Boca Raton: CRC Press. ISBN   978-1-138-48397-2.
  22. Dill, Kevin (2023). "Structural Architecture— Common Tricks of the Trade". In Steve Rabin (ed.). Game AI Pro: Collected Wisdom of Game AI Professionals. Vol. 1 (1st ed.). A K Peters/CRC Press. pp. 61–71. ISBN   978-1-03-247745-9.
  23. Fox C, Evans M, Pearson M, Prescott T (2011). "Towards hierarchical blackboard mapping on a whiskered robot" (PDF). Robotics and Autonomous Systems. 60 (11): 1356–66. doi:10.1016/j.robot.2012.03.005. S2CID   10880337.
  24. Sutton C. A Bayesian Blackboard for Information Fusion, Proc. Int. Conf. Information Fusion, 2004
  25. Carver, Norman (May 1997). "A Revisionist View of Blackboard Systems". Proceedings of the 1997 Midwest Artificial Intelligence and Cognitive Science Society Conference.
  26. Godsill, Simon, and Manuel Davy. "Bayesian harmonic models for musical pitch estimation and analysis." Acoustics, Speech, and Signal Processing (ICASSP), 2002 IEEE International Conference on. Vol. 2. IEEE, 2002.
  27. Flaounas, Ilias; Lansdall-Welfare, Thomas; Antonakaki, Panagiota; Cristianini, Nello (2014-02-25). "The Anatomy of a Modular System for Media Content Analysis". arXiv: 1402.6208 [cs.MA].

Further reading