Next: 4.6 Storing Execution Trace Segments in Memory Up: 4. Memory of Coordinated Behavior Previous: 4.4 Preparing Execution Trace Segments

  
4.5 Heuristic Optimizations

As our empirical results demonstrate, the common viewpoint that is inherent in plans derived from shared experience has leverage. However, situations like the one shown in Figure 4 highlight an opportunity for improvement. When the actors do see the setting in the same way, and recall compatible plans from memory, they should not need explicit communication to coordinate them. A hand-truck operator can hope that a lifter will load and unload the hand-truck at the appropriate times, and the lifter can hope that hand-truck operator will get the hand-truck to the street if the lifter loads a box on it.

Two simple heuristics have been adopted in MW to implement this. Any agreements made to accomplish a request for service (as opposed to a request for joint action) are dropped instead of being converted into WAIT-FORs. Reciprocally, any agreed-to requests for service are changed into implicit expectations, represented by WAIT-IMPs.


Same Goals
Round  7: <STAND-HANDTR HANDTR3 PR34-STREET1> done by HTO1
Round  8: L2 places a call to L1:
  "L1, would you help me achieve (HOLDING-TOGETHER PR34-XLBOX1)
      via (UNLOAD-TOGETHER PR34-XLBOX1 HANDTR3)?
      This is a subgoal to the top-level goal (ON PR34-XLBOX1 TRUCK3)."
  "L2, sure!  Lets get to it."
Round  9: <UNLOAD-TOGETHER PR34-XLBOX1 HANDTR3> done by L1 and L2
Round 10: L2 places a call to L1:
  "L1, would you help me achieve (ON PR34-XLBOX1 TRUCK3)
      via (LOAD-TOGETHER PR34-XLBOX1 TRUCK3)?"
  "L2, sure!  Lets get to it."
Round 11: <LOAD-TOGETHER PR34-XLBOX1 TRUCK3> done by L1 and L2
Different Goals
Round  7: <STAND-HANDTR HANDTR3 PR59-STREET1> done by HTO1
Round 12: HTO became frustrated since WAIT-IMP not satisfied
Round 12: HTO1 places a call to L2:
  "L2, would you help me achieve (ON PR59-XLBOX1 TRUCK3)?"
  "HTO1, I'll help, but you'll have to wait a bit."
Round 13: <MOVE PR59-STREET1> done by L2
Round 15: <UNLOAD-TOGETHER PR59-XLBOX1 HANDTR3> done by L1 and L2
Round 17: HTO became frustrated since WAIT not satisfied
Round 17: HTO1 got no answer when calling L2
Round 17: <LOAD-TOGETHER PR59-XLBOX1 TRUCK3> done by L1 and L2
Figure 7: The rewards and risks of implicit expectation:
L1 and L2 jointly unload the hand-truck for HTO1. When HTO1 and the lifters have the same goal, HTO1's implicit expectation saves communication: HTO1 does not have to explicitly request assistance. When the lifters have different goals from HTO1, the implicit expectation leads to inefficiencies in performance.

Figure 7 shows scenarios where these optimizations have been made. In both of these scenarios, the box is extra-large and so requires two lifters to handle. As the dialogues in rounds 8 and 10 of the top half of the figure show, not all communication has been removed; namely, communication about joint actions (which require more fine-grained coordination) has been kept. Despite this, the optimizations have led to a highly efficient solution by the community. In the lower half of the figure, the risk of the optimizations is revealed. In this case, four rounds have gone by without any progress being made because the lifters did not see the situation in the same way that the hand-truck operator did. Except for the delay, everything proceeds as it would have by first principles (the joint actions by L1 and L2 are preceded by conversations that are not shown).


Next: 4.6 Storing Execution Trace Segments in Memory Up: 4. Memory of Coordinated Behavior Previous: 4.4 Preparing Execution Trace Segments
Last Update: March 10, 1999 by Andy Garland