Frameworks for Cooperation in Distributed Problem Solving
Summary (3 min read)
Introduction
- Task-sharing and result-sharing, also known as considered.
- In the former, nodes assist each other by sharing the computational load for the execution of subtasks of the overall problem.
- Different perspectives arise because the nodes use different knowledge sources (KS’s) (e.g., syntax versus acoustics in the case of a speech-understanding system) or different data (e.g., data that is sensed at different locations in the case of a distributed sensing system).
- Particular attention is given to control and to internode communication for the two forms of cooperation.
- For each, the basic methodology is presented and systems in which it has been used are described.
I. DISTRIBUTED PROBLEM SOLVING
- ISTRIBUTED problem solving is the cooperative solution of problems by a decentralized and loosely coupled collection of knowledge sources (KS’s) (procedures, sets of rules, etc.), located in a number of distinct processor nodes.
- Perhaps the most important distinction between distributed problem solving and distributed processing systems can be found by examining the origin of the systems and the motivations for interconnecting machines.
- The authors concerns are thus with developing frameworks for cooperative behavior between willing entities, rather than frameworks for enforcing cooperation as a form of compromise between potentially incompatible entities.
- In the former, nodes assist each other by sharing the computational load for the execution of subtasks of the overall problem.
- For each form, the basic methodology is presented, and systems in which it has been used are described.
II. COOPERATING EXPERTS
- In such a situation each expert may spend most of his time working alone on various subtasks that have been partitioned from the main task, pausing occasionally to interact with other members of the group.
- If another expert (E2) believes he is capable of carrying out the task that E1 described, he informs E1 of his availability and perhaps indicates any especially relevant skills he may have.
- An expert (El) reports a partial result for his subproblem to his neighbors (E2 and E3) when that result may have some bearing on the processing being done by them.
- First, communication among the members does not needlessly distract the entire group.
III. A PERSPECTIVE ON DISTRIBUTED PROBLEM SOLVING
- In this section the authors present a model for the phases that a distributed problem solver passes through as it solves a problem (Fig. 1).
- In the first phase, the problem is decomposed into subproblems.
- The distinct phases, however, are more obvious in a distributed problem solver, primarily because communication and cooperation must be dealt with explicitly in this case.
- There is also no answer synthesis phase for traffic-light control.
- In the answer synthesis phase, the superatoms are replaced by the actual structural fragments they represent and are embedded in the generated structures.
IV. CAVEATS FOR COOPERATION
- This obviously depends on the problem itself (e.g., there are problems for which data or computation cannot be partitioned into enough mostly independent pieces to occupy all of the processors).
- In a speech-understanding problem, for example, knowledge is available from the speech signal itself, from the syntax of the utterances, and from the semantics of the task domain [7].
- There are, of course, many architectures that do not lead to channel bandwidths of the same magnitude.
- Processing load among the nodes in order to avoid computation and communication bottlenecks.
- It is also the case that the control of processing must itself be distributed.
V. TASK-SHARING
- Task-sharing is a form of cooperation in which individual nodes assist each other by sharing the computational load for the execution of subtasks of the overall problem.
- In order to maximize system concurrency, both nodes with tasks to be executed and nodes ready to execute tasks can proceed simultaneously, engaging each other in a process that resembles contract negotiation to solve the connection problem.
- Available nodes (potential contractors) evaluate task announcements made by several managers (Fig. 4) and submit bids on those for which they are suited (Fig. 5).
- The slots have been chosen to capture the types of information that are usefully passed between nodes to determine appropriate connections without excessive communication.
- Negotiation offers a more powerful mechanism for connection than is available in current problem-solving systems.
VI. RESULT-SHARING
- Result-sharing is a form of cooperation in which individual nodes assist each other by sharing partial results, based on somewhat different perspectives on the overall problem.
- Thus the key to achieving consistent image labeling is to compare the label set of each vertex with those of its neighbors and discard inconsistent labels.
- This process continues until unique labels have been established for all nodes (i.e., one label at each node has a large certainty measure with respect to those associated with the other labels for that node) or no further updating is possible.
- Lesser and Erman [14] have experimented with distribution of the HEARSAY-II speech-understanding system [12].
- It achieves cooperation by both mutual restricttion and by mutual aggregation of results achieved by individual nodes (i.e., partial interpretations achieved at neighboring nodes are combined to form more complete interpretations).
VII. TASK-SHARING AND RESULT-SHARING: A COMPARISON
- Task-sharing is used to organize problem decomposition through formation of explicit task–subtask connections between nodes.
- Task-sharing assumes that kernel subproblems can be solved by individual nodes working independently with minimal internode communication and that the major concern is efficient matching of nodes and tasks for high-speed problem solving.
- The data but then, instead of communicating their partial interpretations directly to each other, they communicate them to a fourth node (a manager in contract net terms) that has the task of sorting out the inconsistencies.
- Just as partial results received from a remote node can suggest fruitful new lines of attack for a problem, they can also be distracting.
VIII. CONCLUSION
- Two complementary forms of cooperation in distributed problem solving have been discussed: task-sharing and result-sharing.
- These forms are useful for different types of problem and for different phases of distributed problem solving.
- It assumes that subproblem solution can be achieved with minimal communication between nodes.
- Result-sharing is useful in the subproblem solution phase when kernel subproblems cannot be solved by nodes working independently without communication with other nodes.
- The authors eventually expect to see systems in which both forms of cooperation are used, drawing upon their individual strengths to attack problems or which neither form is sufficiently powerful by itself.
Did you find this useful? Give us your feedback
Citations
3,612 citations
3,447 citations
Cites background from "Frameworks for Cooperation in Distr..."
...For ex-ample, the Contract Nets protocol [Smith and Davis 1981; Davis and Smith 19831 formalizes a sequence of messages to be exchanged by computer processors shar-ing tasks in a network....
[...]
3,003 citations
2,079 citations
1,408 citations
References
3,612 citations
1,974 citations
"Frameworks for Cooperation in Distr..." refers background in this paper
..." Hierarchical control of this type is a standard mechanism used by human organizations to deal with uncertainty [9], [8]....
[...]
...This is important because communication itself can be a major source of distraction and difficulty in large groups (see, for example, [9])....
[...]
1,431 citations
"Frameworks for Cooperation in Distr..." refers background in this paper
...) Many search problems (like symbolic integration [16]) also involve a minimal answer synthesis phase....
[...]
1,305 citations
Additional excerpts
...The connection that is effected with the contract net protocol is an extension to the pattern-directed invocation used in many AI programming languages (see [5] for an Fig....
[...]
1,062 citations
"Frameworks for Cooperation in Distr..." refers methods in this paper
...This metaphor has been used in several Al systems [10][12], [18]....
[...]
Related Papers (5)
Frequently Asked Questions (8)
Q2. What is the purpose of the answer synthesis?
Answer synthesis is performed in the third phase; that is, integration of subproblem results to achieve a solution to the overall problem.
Q3. How do the authors use negotiation to solve the connection problem?
In order to maximize system concurrency, both nodes with tasks to be executed and nodes ready to execute tasks can proceed simultaneously, engaging each other in a process that resembles contract negotiation to solve the connection problem.
Q4. How many bits must be communicated by each node?
Assume that each of the nodes operates at 108 instructions per second; the computation and communication load is shared equally by all nodes, and the problem-solving architecture is such that one bit must be communicated by each node for every ten instructions that it executes.
Q5. What is the common metaphor for a problem solver?
A familiar metaphor for a problem solver operating in a distributed processor is a group of human experts experienced at working together, trying to complete a large task.
Q6. What is the purpose of the contract net protocol?
The connection that is effected with the contract net protocol is an extension to the pattern-directed invocation used in many AI programming languages (see [5] for anin-depth discussion).
Q7. What is the definition of a block world image?
A blocks world image is a line drawing that shows the edges of a collection of simple objects (e.g., cubes, wedges, and pyramids) in a scene.
Q8. What is the key to achieving consistent image labeling?
Thus the key to achieving consistent image labeling is to compare the label set of each vertex with those of its neighbors and discard inconsistent labels.