1 Introduction 2 Blackboard Architectural Pattern

1 Introduction 2 Blackboard Architectural Pattern

Two complementary patterns to build multi-exp ert systems Philipp e Lalanda Thomson-CSF Corp orate Research Lab oratory Phone: 33169339290 E-mail: [email protected] Domaine de Corb eville F-91404 Orsay, France Abstract The purp ose of this pap er is to presenttwo complementary patterns to build multi-exp ert systems, that is systems that need to integrate large, heterogeneous sp ecialized mo dules, and implement complex, non deterministic control strategies. The rst pattern summarizes the blackb oard pattern presented in [1 ]. The second pattern builds on the mo del of dynamic control where a blackb oard system has a rep ertoire of indep endent domain and control knowledge sources, a control plan expressing the system's desirable b ehavior, and a meta-controller that cho oses at each p oint in time the currently enabled knowledge source that b est matches the control plan. A system implementing this architectural pattern is able to dynamically change its control strategies as a resp onse to unpredictable events. Area: Control in complex, dynamic systems Keywords: Architectural pattern, blackb oard systems, dynamic control 1 Intro duction The blackb oard architectural pattern provides a computational framework for the design and implementation of systems that need to integrate large and diverse sp ecialized mo dules, and implement complex, non deterministic control strategies. This pattern, describ ed in [1], de nes several comp onents, of which the control comp onentis the most imp ortant. Several mo dels have b een prop osed to supp ort the de nition of this comp onent that is key for the system's global prop erties. The purp ose of this pap er is to presenttwo complementary patterns. The rst pattern summarizes the blackb oard pattern presented in [1]. The second pattern is concerned with the blackb oard pattern's control comp onent. It presents an approach building on a mo del of dynamic control that allows control strategies to be changed dynamically in resp onse to unpredictable internal and external events. 2 Blackb oard architectural pattern Name Blackb oard Example Consider an autonomous rob ot running in an oce environment. It p erforms tasks like fetching ob jects, sending messages, guiding visitors, and night-time surveillance. In so doing, it interacts with human b eings and other dynamic entities and acquires p otentially useful knowledge of its environment. The rob ot has to continuously p erform three distinct functions: It p erceives its dynamic environment in order to move and to get orders from human b eings, 1 It reasons in order to interpret the p erceived data, solve problems and determine actions to b e triggered, It acts on the environment. Di erent functions to be p erformed require various exp ertise. Mo dules sp ecialized in various domains such as data interpretation or route planning have to b e dynamically combined so that the rob ot can achieve its task. Context Software systems that need to integrate large and diverse sp ecialized mo dules, and implement complex, non deterministic control strategies. Problem Classical knowledge-based systems like exp ert systems tackle problems that do not have a feasible, deterministic solution. However, these systems are not able to deal with complex applications such as signal interpretation, pro cess control, or autonomous mobile rob ots control. The main reason is that such applications have very stringent requirements including: The problem under consideration spans several elds of exp ertise Intermediate solutions require di erent representations and paradigms The control strategy is complex and cannot b e determined statically. Solution The blackb oard paradigm de nes heterogeneous problem solving representations as indep endent mo dules called knowledge sources. Knowledge sources can b e seen as sp ecialists in sub- elds of the global application and are only able to solve sub-problems. They read and write relevant data in a blackboard which is a structured global memory where a solution to the problem under consideration is incrementally constructed. When a knowledge source pro duces a signi cantchange in the blackb oard, it generates an event. Control KS-1 KS-2. KS-n Blackboard Figure 1: The blackb oard mo del Each knowledge source has a set of triggering conditions that can b e satis ed by particular kinds of events, that is global changes in the blackb oard resulting from external inputs or previously executed knowledge sources. When an event satis es a knowledge source's triggering conditions, the knowledge source is enabled and its parameters b ound to variable values from the triggering situation. A given knowledge source will b e enabled, and therefore executable, whenever events satisfying its triggering conditions o ccur, regardless of its relative utilityinachieving the current goals. At each p oint in time, many comp eting knowledge sources may be enabled. It is the purp ose of the control comp onent to select the b est one for immediate execution. The problem solving pro cess is opportunistic in that 2 sense that the activations of knowledge sources are not scheduled in advance, but determined at every control cycle dep ending on the current situation. In the basic blackb oard mo del, control strategies are xed. The general organization of a blackb oard system is illustrated by gure 1. Dash lines represent control ux whereas solid lines stand for read/write accesses. Rob ot example: Software systems controling an autonomous rob ot have to p erform cognitive and physical tasks, including: Navigation Environment learning Reasoning ab out the goals that havetobeachieved Destination planning Route planning Execution monitoring These various tasks can be achieved by one or several sp ecialized knowledge sources. For example, a system usually includes di erentnavigation routines making use of various combinations of sensors, various strategies wal l fol lowing is an example of strategy, and various prop erties such as safety or sp eed. The blackb oard contains global information such as the current goals, destination, route and constraints. It also includes a map which stores static information ab out the environment and dynamic information related to the rob ot knowledge and previous activities level of knowledge of a given zone, routes already taken, etc.... In the basic approach, the control comp onent is a complex scheduler implementing a xed strategy. At each control cycle, that is after each knowledge source execution, it computes a priority a rating for every enabled knowledge source. The rating is computed using a set of heuristics. Examples of heuristics are a navigation routine always gets a better rating than a learning routine, or when a \wal l fol lowing" navigation routine is executable, it reveives the highest rating among navigation routines. Structure The blackb oard mo del de nes three main comp onents: The blackb oard is a structured global memory containing ob jects from the solution space. These ob jects, also called blackb oard no des or hyp otheses, are hierarchically organized into levels of analysis and can b e linked with each other. Knowledge sources can b e seen as highly sp ecialized mo dules with their own representation. They are char- acterized by a set of triggering conditions and an executable co de that retrieves data from the blackb oard and adds its contribution to the problem solving pro cess. The control comp onent selects, con gures and executes knowledge sources. Determination of executable knowledge sources is based on the state of the problem solving pro cess as expressed in the blackb oard. Structural relationships b etween these comp onents are summarized in Figure 2. Implementation The rst step when designing a blackb oard-based system is to de ne the solution space, that is the various intermediate solutions and their representation. This activity leads to the de nition of the blackb oard structure. It is then necessary to identify the knowledge sources that can provide these solutions. Obviously, these two activities are very related and in uence each other. Knowledge sources may corresp ond to existing mo dules. In that case, mo dules haveto be put in the form of knowledge sources. That means that triggering conditions have to b e added, input variables have to b e linked to blackb oard data so that they can b e b ound at run time, and results have to put in the blackb oard. This last adaptation is generally made by simple co de wrapping. 3 Control reads selectKS() activates configureKS() executeKS() 1+ Blackboard Knowledge Sources blackboardNodes operates on 1+ updateBlackboard() access() execCondition() update() execAction() Figure 2: System's structure adapted from [1] The next step is to sp ecify the control comp onent. It generally takes the form of a complex scheduler that makes use of a set of domain-sp eci c heuristics to rate the relevance of executable knowledge sources. Tuning heuristics is a very time-consuming activity. It is however a crucial setting that determines the system's suitability. Known Uses Blackb oard-based systems have b een used in numerous domains, including: Sp eech recognition [2] Vehicle identi cation and tracking [3] Identi cation of the structure of protein molecules [4] Sonar signals interpretation [5] Consequences The blackb oard mo del provides e ective solution to the design and implementation of complex systems where heterogeneous mo dules have to b e dynamically combined to solve a problem. It also ensures very imp ortant non functional prop erties such as: Reusability. Knowledge sources are indep endent sp ecialists that can b e reused in di erent pro jects. Reuse is made easier by the fact that there is no direct communication b etween knowledge sources. Changeability and maintainability.

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    9 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us