@chllming/wave-orchestration 0.6.3 → 0.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (112) hide show
  1. package/CHANGELOG.md +57 -1
  2. package/README.md +39 -7
  3. package/docs/agents/wave-orchestrator-role.md +50 -0
  4. package/docs/agents/wave-planner-role.md +39 -0
  5. package/docs/context7/bundles.json +9 -0
  6. package/docs/context7/planner-agent/README.md +25 -0
  7. package/docs/context7/planner-agent/manifest.json +83 -0
  8. package/docs/context7/planner-agent/papers/cooperbench-why-coding-agents-cannot-be-your-teammates-yet.md +3283 -0
  9. package/docs/context7/planner-agent/papers/dova-deliberation-first-multi-agent-orchestration-for-autonomous-research-automation.md +1699 -0
  10. package/docs/context7/planner-agent/papers/dpbench-large-language-models-struggle-with-simultaneous-coordination.md +2251 -0
  11. package/docs/context7/planner-agent/papers/incremental-planning-to-control-a-blackboard-based-problem-solver.md +1729 -0
  12. package/docs/context7/planner-agent/papers/silo-bench-a-scalable-environment-for-evaluating-distributed-coordination-in-multi-agent-llm-systems.md +3747 -0
  13. package/docs/context7/planner-agent/papers/todoevolve-learning-to-architect-agent-planning-systems.md +1675 -0
  14. package/docs/context7/planner-agent/papers/verified-multi-agent-orchestration-a-plan-execute-verify-replan-framework-for-complex-query-resolution.md +1173 -0
  15. package/docs/context7/planner-agent/papers/why-do-multi-agent-llm-systems-fail.md +5211 -0
  16. package/docs/context7/planner-agent/topics/planning-and-orchestration.md +24 -0
  17. package/docs/evals/README.md +96 -1
  18. package/docs/evals/arm-templates/README.md +13 -0
  19. package/docs/evals/arm-templates/full-wave.json +15 -0
  20. package/docs/evals/arm-templates/single-agent.json +15 -0
  21. package/docs/evals/benchmark-catalog.json +7 -0
  22. package/docs/evals/cases/README.md +47 -0
  23. package/docs/evals/cases/wave-blackboard-inbox-targeting.json +73 -0
  24. package/docs/evals/cases/wave-contradiction-conflict.json +104 -0
  25. package/docs/evals/cases/wave-expert-routing-preservation.json +69 -0
  26. package/docs/evals/cases/wave-hidden-profile-private-evidence.json +81 -0
  27. package/docs/evals/cases/wave-premature-closure-guard.json +71 -0
  28. package/docs/evals/cases/wave-silo-cross-agent-state.json +77 -0
  29. package/docs/evals/cases/wave-simultaneous-lockstep.json +92 -0
  30. package/docs/evals/cooperbench/real-world-mitigation.md +341 -0
  31. package/docs/evals/external-benchmarks.json +85 -0
  32. package/docs/evals/external-command-config.sample.json +9 -0
  33. package/docs/evals/external-command-config.swe-bench-pro.json +8 -0
  34. package/docs/evals/pilots/README.md +47 -0
  35. package/docs/evals/pilots/swe-bench-pro-public-full-wave-review-10.json +64 -0
  36. package/docs/evals/pilots/swe-bench-pro-public-pilot.json +111 -0
  37. package/docs/evals/wave-benchmark-program.md +302 -0
  38. package/docs/guides/planner.md +48 -11
  39. package/docs/plans/context7-wave-orchestrator.md +20 -0
  40. package/docs/plans/current-state.md +8 -1
  41. package/docs/plans/examples/wave-benchmark-improvement.md +108 -0
  42. package/docs/plans/examples/wave-example-live-proof.md +1 -1
  43. package/docs/plans/examples/wave-example-rollout-fidelity.md +340 -0
  44. package/docs/plans/wave-orchestrator.md +62 -11
  45. package/docs/plans/waves/reviews/wave-1-benchmark-operator.md +118 -0
  46. package/docs/reference/coordination-and-closure.md +436 -0
  47. package/docs/reference/live-proof-waves.md +25 -3
  48. package/docs/reference/npmjs-trusted-publishing.md +3 -3
  49. package/docs/reference/proof-metrics.md +90 -0
  50. package/docs/reference/runtime-config/README.md +61 -0
  51. package/docs/reference/sample-waves.md +29 -18
  52. package/docs/reference/wave-control.md +164 -0
  53. package/docs/reference/wave-planning-lessons.md +131 -0
  54. package/package.json +5 -4
  55. package/releases/manifest.json +18 -0
  56. package/scripts/research/agent-context-archive.mjs +18 -0
  57. package/scripts/research/manifests/agent-context-expanded-2026-03-22.mjs +17 -0
  58. package/scripts/research/sync-planner-context7-bundle.mjs +133 -0
  59. package/scripts/wave-orchestrator/artifact-schemas.mjs +232 -0
  60. package/scripts/wave-orchestrator/autonomous.mjs +7 -0
  61. package/scripts/wave-orchestrator/benchmark-cases.mjs +374 -0
  62. package/scripts/wave-orchestrator/benchmark-external.mjs +1384 -0
  63. package/scripts/wave-orchestrator/benchmark.mjs +972 -0
  64. package/scripts/wave-orchestrator/clarification-triage.mjs +78 -12
  65. package/scripts/wave-orchestrator/config.mjs +175 -0
  66. package/scripts/wave-orchestrator/control-cli.mjs +1123 -0
  67. package/scripts/wave-orchestrator/control-plane.mjs +697 -0
  68. package/scripts/wave-orchestrator/coord-cli.mjs +360 -2
  69. package/scripts/wave-orchestrator/coordination-store.mjs +211 -9
  70. package/scripts/wave-orchestrator/coordination.mjs +84 -0
  71. package/scripts/wave-orchestrator/dashboard-renderer.mjs +38 -3
  72. package/scripts/wave-orchestrator/dashboard-state.mjs +22 -0
  73. package/scripts/wave-orchestrator/evals.mjs +23 -0
  74. package/scripts/wave-orchestrator/executors.mjs +3 -2
  75. package/scripts/wave-orchestrator/feedback.mjs +55 -0
  76. package/scripts/wave-orchestrator/install.mjs +55 -1
  77. package/scripts/wave-orchestrator/launcher-closure.mjs +4 -1
  78. package/scripts/wave-orchestrator/launcher-runtime.mjs +24 -21
  79. package/scripts/wave-orchestrator/launcher.mjs +796 -35
  80. package/scripts/wave-orchestrator/planner-context.mjs +75 -0
  81. package/scripts/wave-orchestrator/planner.mjs +2270 -136
  82. package/scripts/wave-orchestrator/proof-cli.mjs +195 -0
  83. package/scripts/wave-orchestrator/proof-registry.mjs +317 -0
  84. package/scripts/wave-orchestrator/replay.mjs +10 -4
  85. package/scripts/wave-orchestrator/retry-cli.mjs +184 -0
  86. package/scripts/wave-orchestrator/retry-control.mjs +225 -0
  87. package/scripts/wave-orchestrator/shared.mjs +26 -0
  88. package/scripts/wave-orchestrator/swe-bench-pro-task.mjs +1004 -0
  89. package/scripts/wave-orchestrator/traces.mjs +157 -2
  90. package/scripts/wave-orchestrator/wave-control-client.mjs +532 -0
  91. package/scripts/wave-orchestrator/wave-control-schema.mjs +309 -0
  92. package/scripts/wave-orchestrator/wave-files.mjs +17 -5
  93. package/scripts/wave.mjs +27 -0
  94. package/skills/repo-coding-rules/SKILL.md +1 -0
  95. package/skills/role-cont-eval/SKILL.md +1 -0
  96. package/skills/role-cont-qa/SKILL.md +13 -6
  97. package/skills/role-deploy/SKILL.md +1 -0
  98. package/skills/role-documentation/SKILL.md +4 -0
  99. package/skills/role-implementation/SKILL.md +4 -0
  100. package/skills/role-infra/SKILL.md +2 -1
  101. package/skills/role-integration/SKILL.md +15 -8
  102. package/skills/role-planner/SKILL.md +39 -0
  103. package/skills/role-planner/skill.json +21 -0
  104. package/skills/role-research/SKILL.md +1 -0
  105. package/skills/role-security/SKILL.md +2 -2
  106. package/skills/runtime-claude/SKILL.md +2 -1
  107. package/skills/runtime-codex/SKILL.md +1 -0
  108. package/skills/runtime-local/SKILL.md +2 -0
  109. package/skills/runtime-opencode/SKILL.md +1 -0
  110. package/skills/wave-core/SKILL.md +25 -6
  111. package/skills/wave-core/references/marker-syntax.md +16 -8
  112. package/wave.config.json +45 -0
@@ -0,0 +1,1729 @@
1
+ ---
2
+ summary: 'Converted paper text and source links for Incremental Planning to Control a Blackboard-Based Problem Solver.'
3
+ read_when:
4
+ - Reviewing harness and coordination research source material in the docs tree
5
+ - You want the extracted paper text with source links preserved
6
+ topics:
7
+ - planning-and-orchestration
8
+ - blackboard-and-shared-workspaces
9
+ kind: 'paper'
10
+ title: 'Incremental Planning to Control a Blackboard-Based Problem Solver'
11
+ ---
12
+ # Incremental Planning to Control a Blackboard-Based Problem Solver
13
+
14
+ <Note>
15
+ Converted from the source document on 2026-03-22. The repo does not retain downloaded source files; they were fetched transiently, converted to Markdown, and deleted after extraction.
16
+ </Note>
17
+
18
+ ## Metadata
19
+
20
+ | Field | Value |
21
+ | --- | --- |
22
+ | Content type | Paper / report |
23
+ | Authors | Edmund H. Durfee, Victor R. Lesser |
24
+ | Year | 1986 |
25
+ | Venue | AAAI-86 |
26
+ | Research bucket | P2 lineage and older references |
27
+ | Maps to | Incremental planning, plan monitoring, and repair for blackboard-based control. |
28
+ | Harness fit | Direct classic reference connecting planning explicitly to blackboard control. |
29
+ | Source page | [Open source](https://cdn.aaai.org/AAAI/1986/AAAI86-010.pdf) |
30
+ | Source PDF | [Open PDF](https://cdn.aaai.org/AAAI/1986/AAAI86-010.pdf) |
31
+
32
+ ## Extracted text
33
+ ### Page 1
34
+
35
+ INCREMENTAL PLANNING
36
+
37
+ TO CONTROL A BLACKBOARD-BASED
38
+
39
+ PROBLEM SOLVER
40
+
41
+ Edmund H. Durfee and Victor R. Lesser
42
+
43
+ Department of Computer and Information Science
44
+
45
+ University of Massachusetts
46
+
47
+ Amherst, Massachusetts 01003
48
+
49
+ ABSTRACT
50
+
51
+ To control problem solving activity, a planner must
52
+
53
+ resolve uncertainty about which specific long-term goals
54
+
55
+ (solutions) to pursue and about which sequences of actions
56
+
57
+ will best achieve those goals. In this paper, we describe
58
+
59
+ a planner that abstracts the problem solving state to
60
+
61
+ recognize possible competing and compatible solutions
62
+
63
+ and to roughly predict the importance and expense of
64
+
65
+ developing these solutions. With this information, the
66
+
67
+ planner plans sequences of problem solving activities that
68
+
69
+ most efficiently resolve its uncertainty about which of the
70
+
71
+ possible solutions to work toward. The planner only
72
+
73
+ details actions for the near future because the results of
74
+
75
+ these actions will influence how (and whether) a plan
76
+
77
+ should be pursued. As problem solving ‘proceeds, the
78
+
79
+ planner adds new details to the plan incrementally, and
80
+
81
+ monitors and repairs the plan to insure it achieves its goals
82
+
83
+ whenever possible. Through experiments, we illustrate
84
+
85
+ how these new mechanisms significantly improve problem
86
+
87
+ solving decisions and reduce overall computation, We
88
+
89
+ briefly discuss our current research directions, including
90
+
91
+ how these mechanisms can improve a problem solver’s real-
92
+
93
+ time response and can enhance cooperation in a distributed
94
+
95
+ problem solving network.
96
+
97
+ I INTRODUCTION
98
+
99
+ A problem solver’s planning component must resolve
100
+
101
+ control uncertainty stemming from two principal sources.
102
+
103
+ As in typical planners, it must resolve uncertainty about
104
+
105
+ which sequence of actions will satisfy its long-term goals.
106
+
107
+ Moreover, whereas most planners are given (possibly
108
+
109
+ prioritized) well-defined, long-term goals, a problem
110
+
111
+ solver’s planner must often resolve uncertainty about the
112
+
113
+ goals to achieve. For example, an interpretation problem
114
+
115
+ solver that integrates large amounts of data into “good”
116
+
117
+ overall interpretations must use its data to determine
118
+
119
+ what specific long-term goals (interpretations) it should
120
+
121
+ pursue. Because the set of possible interpretations may
122
+
123
+ be intractably large, the problem solver uses the data to
124
+
125
+ form promising partial interpretations and then extends
126
+
127
+ these to converge on likely complete interpretations. The
128
+
129
+ blackboard-based architecture developed in Hearsay-II
130
+
131
+ permits such data-directed problem solving [7).
132
+
133
+ In a purely data-directed problem solver, control
134
+
135
+ decisions can be based only on the desirability of the
136
+
137
+ This research was sponsored, in part, by the National Science
138
+
139
+ Foundation under Grant MCS-8306327, by the National Science
140
+
141
+ Foundation under Support and Maintenance Grant DCR-8318776, by
142
+
143
+ the National Science Foundation under CER Grant DCR-8500332, and
144
+
145
+ by the DefenseAdvancedResearchProjects Agency(DOD), monitored
146
+
147
+ by the Office of Naval Research under Contract NRO&-041.
148
+
149
+ expected immediate results of each action. The Hearsay-II
150
+
151
+ system developed an algorithm for measuring desirability
152
+
153
+ of actions to better focus problem solving [lo]. Extensions
154
+
155
+ to the blackboard architecture unify data-directed and
156
+
157
+ goal-directed control by representing possible extensions
158
+
159
+ and refinements to partial solutions as explicit goals
160
+
161
+ [2]. Through goal processing and subgoals, sequences
162
+
163
+ of related actions can be triggered to achieve important
164
+
165
+ goals. Further modifications separate control knowledge
166
+
167
+ and decisions from problem solving activities, permitting
168
+
169
+ the choice of problem solving actions to be influenced
170
+
171
+ by strategic considerations [9]. However, none of these
172
+
173
+ approaches develop and use a high-level view of the current
174
+
175
+ problem solving situation so that the problem solver can
176
+
177
+ recognize and work toward more specific long-term goals.
178
+
179
+ In this paper, we introduce new mechanisms that
180
+
181
+ allow a blackboard-based problem solver to form such a
182
+
183
+ high-level view. By abstracting its state, the problem
184
+
185
+ solver can recognize possible competing and compatible
186
+
187
+ interpretations, and can use the abstract view of the data to
188
+
189
+ roughly predict the importance and expense of developing
190
+
191
+ potential partial solutions. These mechanisms are much
192
+
193
+ more flexible and complex than those we previously
194
+
195
+ developed [6] and allow the recognition of relationships
196
+
197
+ between distant as well as nearby areas in the solution
198
+
199
+ space, We also present new mechanisms that use the high-
200
+
201
+ level view to form plans to achieve long-term goals. A
202
+
203
+ plan represents specific actions for the near future and
204
+
205
+ more general actions for the distant future. By forming
206
+
207
+ detailed plans only for the near future, the problem solver
208
+
209
+ does not waste time planning for situations that may never
210
+
211
+ arise; by sketching out the entire plan, details for the
212
+
213
+ near-term can be based on a long-term view. As problem
214
+
215
+ solving proceeds, the plan must be monitored (and repaired
216
+
217
+ when necessary), and new actions for the near future are
218
+
219
+ added incrementally. Thus, plan formation, monitoring,
220
+
221
+ modification, and execution are interleaved [1,3,8,12,13].
222
+
223
+ We have implemented and evaluated our new
224
+
225
+ mechanisms in a vehicle monitoring problem solver, where
226
+
227
+ they augment previously developed control mechanisms. In
228
+
229
+ the next section, we briefly describe the vehicle monitoring
230
+
231
+ problem solver. Section 3 provides details about how a
232
+
233
+ high-level view is formed as an abstraction hierarchy. The
234
+
235
+ representation of a plan and the techniques to form and
236
+
237
+ dynamically modify plans are presented in Section 4. In
238
+
239
+ Section 5, experimental results are discussed to illustrate
240
+
241
+ the benefits and the costs of the new mechanisms. Finally,
242
+
243
+ Section 6 recapitulates our approach and describes how the
244
+
245
+ new mechanisms can improve real-time responsiveness and
246
+
247
+ can lead to improved cooperation in a distributed problem
248
+
249
+ solving network.
250
+
251
+ 58 / SCIENCE
252
+
253
+ From: AAAI-86 Proceedings. Copyright ©1986, AAAI (www.aaai.org). All rights reserved.
254
+
255
+ ### Page 2
256
+
257
+ II A VEHICLE MONITORING
258
+
259
+ PROBLEM SOLVER
260
+
261
+ A vehicle monitoring problem solving node in the
262
+
263
+ Distributed Vehicle Monitoring Testbed (DVMT) applies
264
+
265
+ simplified signal processing knowledge to acoustically
266
+
267
+ sensed data in an attempt to identify, locate, and track
268
+
269
+ patterns of vehicles moving through a two-dimensional
270
+
271
+ space [ll]. Each node has a blackboard-based problem
272
+
273
+ solving architecture, with knowledge sources and levels
274
+
275
+ of abstraction appropriate for vehicle monitoring. A
276
+
277
+ knowledge source (KS) performs the basic problem
278
+
279
+ solving tasks of extending and refining hypotheses (partial
280
+
281
+ solutions). The architecture includes a goal blackboard
282
+
283
+ and goal processing module, and through goal processing
284
+
285
+ a node forms knowledge source instantiations (KSIs) that
286
+
287
+ represent potential KS applications on specific hypotheses
288
+
289
+ to satisfy certain goals. KSIs are prioritized based both on
290
+
291
+ the estimated beliefs of the hypotheses each may produce
292
+
293
+ and on the ratings of the goals each is expected to satisfy.
294
+
295
+ The goal processing component also recognizes interactions
296
+
297
+ between goals and adjusts their ratings appropriately; for
298
+
299
+ example, subgoals of an important goal might have their
300
+
301
+ ratings boosted. Goal processing can therefore alter KS1
302
+
303
+ rankings to help focus the node’s problem solving actions
304
+
305
+ on achieving the subgoals of important goals [2].
306
+
307
+ A hypothesis is characterized by one or more time-
308
+
309
+ locutions (where the vehicle was at discrete sensed times),
310
+
311
+ by an event-class (classifying the frequency or vehicle
312
+
313
+ type), by a belief (the confidence in the accuracy of
314
+
315
+ the hypothesis), and by a blackboard-level (depending on
316
+
317
+ the amount of processing that has been done on the
318
+
319
+ data). Synthesis KSs take one or more hypotheses at one
320
+
321
+ blackboard-level and use event-class constraints to generate
322
+
323
+ hypotheses at the next higher blackboard-level. Extension
324
+
325
+ KSs take several hypotheses at a given blackboard-level and
326
+
327
+ use vehicle movement constraints (maximum velocities and
328
+
329
+ accelerations) to form hypotheses at the same blackboard-
330
+
331
+ level that incorporate more time-locations.
332
+
333
+ For example, in Figure 1 each blackboard-level is
334
+
335
+ represented as a surface with spatial dimensions z and y.
336
+
337
+ At blackboard-level s (signal level) there are 10 hypotheses,
338
+
339
+ each incorporating a single time-location (the time is
340
+
341
+ indicated for each). Two of these hypotheses have been
342
+
343
+ synthesized to blackboard-level g (group level). In turn,
344
+
345
+ these hypotheses have been synthesized to blackboard-level
346
+
347
+ v (vehicle level) where an extension KS has connected them
348
+
349
+ into a single track hypothesis, indicated graphically by
350
+
351
+ connecting the two locations. Problem solving proceeds
352
+
353
+ from this point by having the goal processing component
354
+
355
+ form goals (and subgoals) to extend this track to time
356
+
357
+ 3 and instantiating KSIs to achieve these goals. The
358
+
359
+ highest rated pending KS1 is then invoked and triggers the
360
+
361
+ appropriate KS to execute. New hypotheses are posted
362
+
363
+ on the blackboard, causing further goal processing and the
364
+
365
+ cycle repeats until an acceptable track incorporating data
366
+
367
+ at each time is created. One of the potential solutions is
368
+
369
+ indicated at blackboard-level v in Figure 1.
370
+
371
+ III A HIGH-LEVEL VIEW FOR
372
+
373
+ PLANNING AND CONTROL
374
+
375
+ Planning about how to solve a problem often requires
376
+
377
+ viewing the problem from a different perspective. For
378
+
379
+ example, a chemist generally develops a plan for deriving a
380
+
381
+ new compound not by entering a laboratory and envisioning
382
+
383
+ possible sequences of actions but by representing the
384
+
385
+ Blackboard-levels are represented as surfaces containing
386
+
387
+ hypotheses (with associated sensed times). Hypotheses at
388
+
389
+ higher blackboard-levels are synthesized from lower level
390
+
391
+ data, and a potential solution is illustrated with a dotted
392
+
393
+ track at blackboard-level v.
394
+
395
+ Figure 1: An Example Problem Solving State.
396
+
397
+ problem with symbols and using these symbols to
398
+
399
+ hypothesize possible derivation paths. By transforming
400
+
401
+ the problem into this representation, the chemist can more
402
+
403
+ easily sketch out possible solutions and spot reactions that
404
+
405
+ lead nowhere, thereby improving the decisions about the
406
+
407
+ actions to take in the laboratory.
408
+
409
+ A blackboard-based, vehicle monitoring problem solver
410
+
411
+ requires the same capabilities. Transforming the node’s
412
+
413
+ problem solving state into a suitable representation
414
+
415
+ for planning requires domain knowledge to recognize
416
+
417
+ relationships-in particular, long-term relationships-in
418
+
419
+ the data. This transformation is accomplished by
420
+
421
+ incrementally clustering data into increasingly abstract
422
+
423
+ groups based on the attributes of the data: the hypotheses
424
+
425
+ can be clustered based on one attribute, the resulting
426
+
427
+ clusters can be further clustered based on another attribute,
428
+
429
+ and so on. The transformed representation is thus a
430
+
431
+ hierarchy of clusters where higher-level clusters abstract
432
+
433
+ the informat ion of lower-level clusters. More or less
434
+
435
+ detailed views of the problem solving situation are found
436
+
437
+ by accessing the appropriate level of this abstraction
438
+
439
+ hierarchy, and clusters at the same level are linked by
440
+
441
+ their relationships (such as having adjacent time frames
442
+
443
+ or blackboard-levels, or having nearby spatial regions).
444
+
445
+ We have implemented a set of knowledge-based
446
+
447
+ clustering mechanisms for vehicle monitoring, each of which
448
+
449
+ takes clusters at one level as input and forms output clusters
450
+
451
+ at a new level. Each mechanism uses different domain-
452
+
453
+ dependent relationships, including:
454
+
455
+ temporal relationships: the output cluster
456
+
457
+ combines any input clusters that represent data in
458
+
459
+ adjacent time frames and that are spatially near
460
+
461
+ enough to satisfy simple constraints about how far
462
+
463
+ a vehicle can travel in one time unit.
464
+
465
+ spatial relationships: the output cluster combines
466
+
467
+ any input clusters that represent data for the same
468
+
469
+ time frames and that are spatially near enough to
470
+
471
+ represent sensor noise around a single vehicle.
472
+
473
+ blackboard-level relationships: the output
474
+
475
+ cluster combines any input clusters that represent the
476
+
477
+ same data at different blackboard-levels.
478
+
479
+ Planning: AUTOMATED REASONING / 59
480
+
481
+ ### Page 3
482
+
483
+ l event-class relationships: the output cluster
484
+
485
+ combines any input clusters that represent data with
486
+
487
+ the same event-class (type of vehicle).
488
+
489
+ l belief relationships: the output cluster combines
490
+
491
+ input clusters representing data with similar beliefs.
492
+
493
+ The abstraction hierarchy is formed by sequentially
494
+
495
+ applying the clustering mechanisms. The order of
496
+
497
+ application depends on the bias of the problem solver:
498
+
499
+ since the order of clustering affects which relationships are
500
+
501
+ most emphasized at the highest levels of the abstraction
502
+
503
+ hierarchy, the problem solver should cluster to emphasize
504
+
505
+ the relationships it expects to most significantly influence
506
+
507
+ its control decisions. Issues in representing bias and
508
+
509
+ modifying inappropriate bias are discussed elsewhere [4].
510
+
511
+ To illustrate clustering, consider the clustering sequence
512
+
513
+ in Figure 2, which has been simplified by ignoring many
514
+
515
+ cluster attributes such as event-classes, beliefs, and volume
516
+
517
+ of data and pending work; only a cluster’s blackboard-
518
+
519
+ levels (a cluster can incorporate more than one) and its
520
+
521
+ time-regions (indicating a region rather than a specific
522
+
523
+ location for a certain time) are discussed. Initially, the
524
+
525
+ problem solving state is nearly identical to that in Figure 1,
526
+
527
+ except that for each hypothesis in Figure 1 there are
528
+
529
+ now two hypotheses at the same sensed time and slightly
530
+
531
+ different locations. In Figure 2a, each cluster CL (where 1
532
+
533
+ is the level in the abstraction hierarchy) corresponds to
534
+
535
+ a single hypothesis, and the graphical representation of
536
+
537
+ the clusters mirrors a representation of the hypotheses.
538
+
539
+ By clustering based on blackboard-level, a second level
540
+
541
+ of the abstraction hierarchy is formed with 19 clusters
542
+
543
+ (Figure 2b). As is shown graphically, this clustering
544
+
545
+ ‘Lcollapses” the blackboard by combining clusters at the
546
+
547
+ previous abstraction level that correspond to the same
548
+
549
+ data at different blackboard-levels. In Figure 2c, clustering
550
+
551
+ by spatial relationships forms 9 clusters. Clusters at the
552
+
553
+ second abstraction level whose regions were close spatially
554
+
555
+ for a given sensed time are combined into a single cluster.
556
+
557
+ Finally, clustering by temporal relationships in Figure 2d
558
+
559
+ combines any clusters at the third abstraction level that
560
+
561
+ correspond to adjacent sensed times and whose regions
562
+
563
+ satisfy weak vehicle velocity constraints.
564
+
565
+ The highest level clusters (Figure 2d) indicate four
566
+
567
+ rough estimates of potential solutions: a vehicle moving
568
+
569
+ through regions R1R2R3R4&&, through Ri&R&RkRL,
570
+
571
+ through R~R!&R4R5RG, or through R\RLR3R4Rk.Rk. The
572
+
573
+ problem solver could use this view to improve its control
574
+
575
+ decisions. For example, this view allows the problem solver
576
+
577
+ to recognize that all potential solutions pass through Rs
578
+
579
+ at sensed time 3 and R4 at sensed time 4. By boosting
580
+
581
+ the ratings of KSIs in these regions, the problem solver can
582
+
583
+ focus on building high-level results that are most likely to
584
+
585
+ be part of any eventual solution.
586
+
587
+ In some respects, the formation of the abstraction
588
+
589
+ hierarchy is akin to a rough pass at solving the problem,
590
+
591
+ as indeed it must be if it is to indicate where the
592
+
593
+ possible solutions may lie. However, abstraction differs
594
+
595
+ from problem solving because it ignores many important
596
+
597
+ constraints needed to solve the problem. Forming the
598
+
599
+ abstraction hierarchy is thus much less computationally
600
+
601
+ expensive than problem solving, and results in a
602
+
603
+ representation that is too inexact as a problem solution
604
+
605
+ but is suitable for control. For example, although the
606
+
607
+ high-level clusters in Figure 2d indicate that there are four
608
+
609
+ potential solutions, three of these are actually impossible
610
+
611
+ based on the more stringent constraints applied by the
612
+
613
+ KSs. The high-level view afforded by the abstraction
614
+
615
+ hierarchy therefore does not provide answers but only rough
616
+
617
+ indications about the long-term promise of various areas
618
+
619
+ of the solution space, and this additional knowledge can
620
+
621
+ be employed by the problem solver to make better control
622
+
623
+ decisions as it chooses its next task.
624
+
625
+ IV INCREMENTAL PLANNING
626
+
627
+ The planner further improves control decisions by
628
+
629
+ intelligently ordering the problem solving actions. Even
630
+
631
+ with the high-level view, uncertainty remains about
632
+
633
+ whether each long-term goal can actually be achieved,
634
+
635
+ about whether an action that might contribute to achieving
636
+
637
+ a long-term goal will actually do so (since long-term goals
638
+
639
+ Cluster
640
+
641
+ Time-BB-
642
+
643
+ regions levels
644
+
645
+ (hY1)(252Y2) 21
646
+
647
+ (1XlYI) 9
648
+
649
+ (2X2Y2) 9
650
+
651
+ Subclusters/X /‘:
652
+
653
+ -
654
+
655
+ 43 (6xjyg’) 4.-
656
+
657
+ (4
658
+
659
+ Cluster Time-BB-Subclusters
660
+
661
+ regions levels
662
+
663
+ C24 (~~~Y1)(~~2Y2)~~~~~c:,c~,c~,c~,c~
664
+
665
+ %
666
+
667
+ 1
668
+
669
+ C6
670
+
671
+ 4 d
672
+
673
+ CL (62;‘~;‘) s 43
674
+
675
+ (b)
676
+
677
+ Cluster
678
+
679
+ Time-BB-
680
+
681
+ regions levels Subclusters
682
+
683
+ Cluster
684
+
685
+ Time-BB-
686
+
687
+ regions fevels Subclusters
688
+
689
+ (1h)(2&)(3&) 3 3 3
690
+
691
+ “: (4&)(5&)(6R,) ‘jg’ ’
692
+
693
+ Cl, C.i>Cb,
694
+
695
+ c;, c;
696
+
697
+ wvP~:H3~3)
698
+
699
+ 3 3 3
700
+
701
+ ” (4Rzr)(5R;)(6R;) ’
702
+
703
+ c2, c3, Cd>
704
+
705
+ 3 3 3
706
+
707
+ c ~5> c 7, %I
708
+
709
+ * (4
710
+
711
+ A sequence of clustering steps are illustrated both with
712
+
713
+ tables (left) and graphically (right). cf represents cluster
714
+
715
+ z at level 1 of the abstraction hierarchy. initial clusters
716
+
717
+ (a), are clustered by blackboard-level (b), then by spatial
718
+
719
+ proximity (c), and finally by temporal relationships (d).
720
+
721
+ Figure 2: Incremental Clustering Example.
722
+
723
+ 60 i SCIENCE
724
+
725
+ ### Page 4
726
+
727
+ are inexact), and about how to most economically form a
728
+
729
+ desired result (since the same result can often be derived
730
+
731
+ in different ways). The planner reduces control uncertainty
732
+
733
+ in two ways. First, it orders the intermediate goals for
734
+
735
+ achieving long-term goals so that the results of working
736
+
737
+ on earlier intermediate goals can diminish the uncertainty
738
+
739
+ about how (and whether) to work on later intermediate
740
+
741
+ goals. Second, the planner forms a detailed sequence of
742
+
743
+ steps to achieve the next intermediate goal: it determines
744
+
745
+ the least costly way to form a result to satisfy the goal. The
746
+
747
+ planner thus sketches out long-term intentions as sequences
748
+
749
+ of intermediate goals, and forms detailed plans about the
750
+
751
+ best way to achieve the next int)ermediate goal.
752
+
753
+ A long-term vehicle monitoring goal to generate a track
754
+
755
+ consisting of several time-locations can be reduced into
756
+
757
+ a series of intermediate goals, where each intermediate
758
+
759
+ goal represents a desire to extend the track satisfying the
760
+
761
+ previous intermediate goal into a new time-location.* To
762
+
763
+ order the intermediate goals, the planner currently uses
764
+
765
+ three domain-independent heuristics:
766
+
767
+ Heuristic-l Prefer common intermediate goals. Some
768
+
769
+ intermediate goals may be common to several long-
770
+
771
+ term goals. If uncertain about which of these long-
772
+
773
+ term goals to pursue, the planner can postpone its
774
+
775
+ decision by working on common intermediate goals
776
+
777
+ and then can use these results to better distinguish
778
+
779
+ between the long-term goals. This heuristic is a
780
+
781
+ variation of least-commitment 1141.
782
+
783
+ Heuristic-2 Prefer less costly intermediate goals. Some
784
+
785
+ intermediate goals may be more costly to achieve
786
+
787
+ than others. The planner can quickly estimate the
788
+
789
+ relative costs of developing results in different areas
790
+
791
+ by comparing their corresponding clusters at a high
792
+
793
+ level of the abstraction hierarchy: the number of
794
+
795
+ event-classes and the spatial range of the data in
796
+
797
+ a cluster roughly indicates how many potentially
798
+
799
+ competing hypotheses might have to be produced.
800
+
801
+ This heuristic causes the planner to develop results
802
+
803
+ more quickly. If these results are creditable they
804
+
805
+ provide predictive information, otherwise the planner
806
+
807
+ can abandon the plan after a minimum of effort.
808
+
809
+ Heuristic-3 Prefer discriminative intermediate goals. If
810
+
811
+ the planner must discriminate between possible long-
812
+
813
+ term goals, it should prefer to work on intermediate
814
+
815
+ goals that most effectively indicate the relative
816
+
817
+ promise of each long-term goal. When no common
818
+
819
+ intermediate goals remain this heuristic triggers work
820
+
821
+ where the long-term goals differ most.
822
+
823
+ These heuristics are interdependent. For example, common
824
+
825
+ intermediate goals may also be more cost,ly, as in one of the
826
+
827
+ experiments described in the next section. The relative
828
+
829
+ influence of each heuristic can be modified parametrically.
830
+
831
+ Having identified a sequence of intermediate goals to
832
+
833
+ achieve one or more long-term goals, t,he planner can reduce
834
+
835
+ its uncertainty about how to satisfy these intermediate
836
+
837
+ goals by planning in more detail. If the planner possesses
838
+
839
+ models of the KSs that roughly indicate both the costs
840
+
841
+ of a particular action and the general characteristics of
842
+
843
+ *In general terms. an intermediate goal in any interpretation t.ask
844
+
845
+ is to process a new piece of information and to integrate it into the
846
+
847
+ current partial interpretation.
848
+
849
+ the output of that action (based on the characteristics
850
+
851
+ of the input), then the planner can search for the best
852
+
853
+ of the alternative ways to satisfy an intermediate goal.
854
+
855
+ We have provided the planner for our vehicle monitoring
856
+
857
+ problem solver with coarse KS models that allow it to make
858
+
859
+ reasonable predictions about short sequences of actions to
860
+
861
+ find the sequences that best achieve intermediate goals.“
862
+
863
+ To reduce the effort spent on planning, the planner only
864
+
865
+ forms detailed plans for the next intermediate goal: since
866
+
867
+ the results of earlier intermediate goals influence decisions
868
+
869
+ about how and whether to pursue subsequent intermediate
870
+
871
+ goals, the planner avoids expending effort forming detailed
872
+
873
+ plans that may never be used.
874
+
875
+ Given the abstraction hierarchy in Figure 2, the planner
876
+
877
+ recognizes that achieving each of the four long-term goals
878
+
879
+ (Figure 2d) entails intermediate goals of tracking the
880
+
881
+ vehicle through these regions. Influenced predominantly
882
+
883
+ by Heuristic-l, the planner decides to initially work toward
884
+
885
+ all four long-term goals at the same time by achieving
886
+
887
+ their common intermediate goals. A detailed sequence of
888
+
889
+ actions to drive the data in R3 at level s to level v is then
890
+
891
+ formulated. The planner creates a plan whose attributes
892
+
893
+ their values in this example) are:
894
+
895
+ the long-term goals the plan contributes to achieving
896
+
897
+ (in the example, there are four);
898
+
899
+ the predicted, underspecified time-regions of the
900
+
901
+ eventual solution (in the example, the time regions
902
+
903
+ are (1 RlorR:)(2 Rzor$)(3 &)...);
904
+
905
+ the predicted vehicle type(s) of the eventual solution
906
+
907
+ (in the example, there is only one type);
908
+
909
+ the order of intermediate goals (in the example, begin
910
+
911
+ with sensed time 3, then time 4, and then work both
912
+
913
+ backward to earlier times and forward to later times);
914
+
915
+ the blackboard-level for tracking, depending on the
916
+
917
+ available KSs (in the example, this is level v);
918
+
919
+ a record of past actions, updated as actions are taken
920
+
921
+ (initially empty);
922
+
923
+ a sequence of the specific actions to take in the short-
924
+
925
+ term (in the example, the detailed plan is to drive
926
+
927
+ data in region R3 at level s to level v);
928
+
929
+ a rating based on the number of long-term goals being
930
+
931
+ worked on, the effort already invested in the plan,
932
+
933
+ the average ratings of the KSIs corresponding to the
934
+
935
+ detailed short-t*erm actions, the average belief of the
936
+
937
+ partial solutions previously formed by the plan, and
938
+
939
+ the predicted beliefs of the partial solutions to be
940
+
941
+ formed by the detailed activities.
942
+
943
+ As each predicted action is consecutively pursued, the
944
+
945
+ record of past actions is updated and the actual results of
946
+
947
+ the action are compared with the general characteristics
948
+
949
+ predicted by the planner. When these agree, the next
950
+
951
+ action in the detailed short-term sequence is performed
952
+
953
+ if there is one, otherwise the planner develops another
954
+
955
+ detailed sequence for the next intermediate goal. In our
956
+
957
+ example, after forming results in R3 at a high blackboard-
958
+
959
+ level, the planner forms a sequence of actions to do the
960
+
961
+ same in R4. When the actual and predicted results disagree
962
+
963
+ **If the predict,ecl cost of satisfying an intermediate goal deviates
964
+
965
+ substantially from the crude estimate based on the abstract view, the
966
+
967
+ ordering of the intermediate goals may need to be revised.
968
+
969
+ Planning: AUTOMATED REASONING / 6 1
970
+
971
+ ### Page 5
972
+
973
+ (since the planner’s models of the KSs may be inaccurate),
974
+
975
+ the planner must modify the plan by introducing additional
976
+
977
+ actions that can get the plan back on track. If no such
978
+
979
+ actions exist, the plan is aborted and the next highest rated
980
+
981
+ plan is pursued. If the planner exhausts its plans before
982
+
983
+ forming a complete solution, it reforms the abstraction
984
+
985
+ hierarchy (incorporating new information and/or clustering
986
+
987
+ to stress different problem attributes) and attempts to
988
+
989
+ find new plans. Throughout this paper, we assume for
990
+
991
+ simplicity that no important new information arrives after
992
+
993
+ the abstraction hierarchy is formed; when part of a more
994
+
995
+ dynamic environment, the node will update its abstraction
996
+
997
+ hierarchy and plans with such information.
998
+
999
+ The planner thus generates, monitors, and revises plans,
1000
+
1001
+ and interleaves these activities with plan execution. In
1002
+
1003
+ our example, the common intermediate goals are eventually
1004
+
1005
+ satisfied and a separate plan must be formed for each of the
1006
+
1007
+ alternative ways to proceed. After finding a partial track
1008
+
1009
+ combining data from sensed times 3 and 4, the planner
1010
+
1011
+ decides to extend this track backward to sensed time 2. The
1012
+
1013
+ long-term goals indicate work in either Rz or RL. A plan
1014
+
1015
+ is generated for each possibility, and the more highly rated
1016
+
1017
+ of these plans is followed. Note, however, that the partial
1018
+
1019
+ track already developed can provide predictive information
1020
+
1021
+ that, through goal processing, can increase the rating of
1022
+
1023
+ work in one of these regions and not the other. In this
1024
+
1025
+ case, constraints that limit a vehicle’s turning rate are used
1026
+
1027
+ when goal processing (subgoaling) to increase the ratings
1028
+
1029
+ of KSI’s in R&, thus making the plan to work there next
1030
+
1031
+ more highly rated.*
1032
+
1033
+ The planner and goal processing thus work in tandem
1034
+
1035
+ to improve problem solving performance. The goal
1036
+
1037
+ processing uses a detailed view of local interactions
1038
+
1039
+ between hypotheses, goals, and KSJs to differentiate
1040
+
1041
+ between alternative actions. Goal processing can be
1042
+
1043
+ computationally wasteful, however, when it is invoked
1044
+
1045
+ based on strictly local criteria. Without the knowledge of
1046
+
1047
+ long-term reasons for building a hypothesis, the problem
1048
+
1049
+ solver simply forms goals to extend and refine the
1050
+
1051
+ hypothesis in all possible ways. These goals are further
1052
+
1053
+ processed (subgoaled) if they are at certain blackboard-
1054
+
1055
+ levels, again regardless of any long-term justification for
1056
+
1057
+ doing so. With its long-term view, the planner can
1058
+
1059
+ drastically reduce the amount of goal processing. As it
1060
+
1061
+ pursues, monitors, and repairs plans, the planner identifies
1062
+
1063
+ areas where goals and subgoals could improve its decisions
1064
+
1065
+ and selectively invokes goal processing to form only those
1066
+
1067
+ goals that it needs. As the experimental results in the next
1068
+
1069
+ section indicate, a planner with the ability to control goal
1070
+
1071
+ processing can dramatically reduce overhead.
1072
+
1073
+ V EXPERIMENTS IN INCREMENTAL
1074
+
1075
+ PLANNING
1076
+
1077
+ We illustrate the advantages and the costs of our
1078
+
1079
+ planner in several problem solving situations, shown in
1080
+
1081
+ Figure 3. Situation A is the same as in Figure 2 except
1082
+
1083
+ that each region only has one hypothesis. Also note that
1084
+
1085
+ the data in the common regions is most weakly sensed. In
1086
+
1087
+ situation B, no areas are common to all possible solutions,
1088
+
1089
+ and issues in plan monitoring and repair are therefore
1090
+
1091
+ stressed. Finally, situation C has many potential solutions,
1092
+
1093
+ where each appears equally likely from a high-level view,
1094
+
1095
+ ‘In fact the turns to RZ and Rk exceed these constraints, SO the
1096
+
1097
+ only track that satisfies the constraints is R~R~&R~&.&.
1098
+
1099
+ d14 4
1100
+
1101
+ L 4 -
1102
+
1103
+ solution = d:dad3d4dsdG
1104
+
1105
+ A
1106
+
1107
+ solutions = dldzdaddds,
1108
+
1109
+ d’d’d’d’d’1 2 3 4 5
1110
+
1111
+ C
1112
+
1113
+ solutions = dld2dsd4d5,
1114
+
1115
+ d;d;d&d;d;
1116
+
1117
+ B
1118
+
1119
+ d, = data for sensed time i,
1120
+
1121
+ l = strongly sensed,
1122
+
1123
+ l = moderately sensed,
1124
+
1125
+ 0 = weakly sensed
1126
+
1127
+ Three problem solving situations are displayed. The pos-
1128
+
1129
+ sible tracks (found in the abstraction hierarchy) are indi-
1130
+
1131
+ cated by connecting the related data points, and the ac-
1132
+
1133
+ ceptable solution(s) for each situation are given.
1134
+
1135
+ Figure 3: The Experimental Problem Situations.
1136
+
1137
+ When evaluating the new mechanisms, we consider
1138
+
1139
+ two important factors: how well do they improve control
1140
+
1141
+ decisions (reduce the number of incorrect decisions), and
1142
+
1143
+ how much additional overhead do they introduce to achieve
1144
+
1145
+ this improvement. Since each control decision causes the
1146
+
1147
+ invocation of a KSI, the first factor is measured by counting
1148
+
1149
+ KSIs invoked-the fewer the KSIs, the better the control
1150
+
1151
+ decisions. The second factor is measured as the actual
1152
+
1153
+ computation time (runtime) required by a node to solve
1154
+
1155
+ a problem, representing the combined costs of problem
1156
+
1157
+ solving and control computation.
1158
+
1159
+ The experimental results are summarized in Table 1. To
1160
+
1161
+ determine the effects of the new mechanisms, each problem
1162
+
1163
+ situation was solved both with and without them, and for
1164
+
1165
+ each case the number of KSIs and the computation time
1166
+
1167
+ were measured. We also measured the number of goals
1168
+
1169
+ generated during problem solving to illustrate how control
1170
+
1171
+ overhead can be reduced by having the planner control the
1172
+
1173
+ goal processing.
1174
+
1175
+ Experiments El and E2 illustrate how the new
1176
+
1177
+ mechanisms can dramatically reduce both the number of
1178
+
1179
+ KSIs invoked and the computation time needed to solve
1180
+
1181
+ the problem in situation A. Without these mechanisms
1182
+
1183
+ (El), the pro blem solver begins with the most highly
1184
+
1185
+ sensed data (di, da, db, and d:). This incorrect data
1186
+
1187
+ actually corresponds to noise and may have been formed
1188
+
1189
+ due to sensor errors or echoes in the sensed area. The
1190
+
1191
+ problem solver attempts to combine this data through
1192
+
1193
+ ds and da but fails because of turning constraints, and
1194
+
1195
+ then it uses the results from d3 and d4 to eventually
1196
+
1197
+ work its way back out to the moderately sensed correct
1198
+
1199
+ data. With the new mechanisms (E2), problem solving
1200
+
1201
+ begins at d3 and da and, because the track formed (d3d4)
1202
+
1203
+ triggers goal processing to stimulate work on the moderate
1204
+
1205
+ data, the solution is found much more quickly (in fact, in
1206
+
1207
+ 62 /SCIENCE
1208
+
1209
+ ### Page 6
1210
+
1211
+ Expt Situ Plan.3 KSIs Rtime Goals Comments
1212
+
1213
+ El A no 58 17.2 262 -
1214
+
1215
+ E2
1216
+
1217
+ E3
1218
+
1219
+ 2 yes 24 8.1 49 -
1220
+
1221
+ yes 32 19.4 203 1
1222
+
1223
+ E4 A’ no 58 19.9 284 2
1224
+
1225
+ E5 A’ yes 64 17.3 112 2,3
1226
+
1227
+ E6 A’ yes 38 16.5 71 214
1228
+
1229
+ no 73 21.4 371 -
1230
+
1231
+ yes 45 11.8 60 -
1232
+
1233
+ E9 B yes 45 20.6 257 1
1234
+
1235
+ El0 C no 85 29.8 465
1236
+
1237
+ El1 C yes 44 19.3 75 -
1238
+
1239
+ Situ:
1240
+
1241
+ Plan?:
1242
+
1243
+ KSIs:
1244
+
1245
+ Rtime:
1246
+
1247
+ Goals:
1248
+
1249
+ Comments:
1250
+
1251
+ Legend
1252
+
1253
+ The problem situation.
1254
+
1255
+ Are the new planning mechanisms used?
1256
+
1257
+ Number of KSIs invoked to find solution.
1258
+
1259
+ The total CPU runtime to find solution lin minutes).
1260
+
1261
+ The number of goals formed and processed.
1262
+
1263
+ I
1264
+
1265
+ Additional asoects of the exneriment:
1266
+
1267
+ 1 = independint goal procesiing and planning
1268
+
1269
+ 2 = noise in da and d4
1270
+
1271
+ 3 = Heuristic-l predominates
1272
+
1273
+ 4 = Heuristic-2 predominates
1274
+
1275
+ Table 1: Summary of Experimental Results.
1276
+
1277
+ optimal time 151). The planner controls goal processing
1278
+
1279
+ to generate and process only those goals that further the
1280
+
1281
+ plan; if goal processing is done independently of the planner
1282
+
1283
+ (E3), the overhead of the planner coupled with the only
1284
+
1285
+ slightly diminished goal processing overhead (the number
1286
+
1287
+ of goals is only modestly reduced, comparing E3 with El)
1288
+
1289
+ nullifies the computation time saved on actual problem
1290
+
1291
+ solving. Moreover, because earlier, less constrained goals
1292
+
1293
+ are subgoaled, control decisions deteriorate and more KSIs
1294
+
1295
+ must be invoked.
1296
+
1297
+ The improvements in experiment E2 were due to the
1298
+
1299
+ initial work done in the common areas d3 and d4 triggered
1300
+
1301
+ by Heuristic-l. Situation A’ is identical to situation A
1302
+
1303
+ except that areas d3 and d4 contain numerous competing
1304
+
1305
+ hypotheses. If the planner initially works in those areas
1306
+
1307
+ (E5), then many KSIs are required to develop all of these
1308
+
1309
+ hypotheses-fewer KSIs are invoked without planning at
1310
+
1311
+ all (E4). However, by estimating the relative costs of the
1312
+
1313
+ alternative intermediate goals, the planner can determine
1314
+
1315
+ that d3 and dq, although twice as common as the other
1316
+
1317
+ areas, are likely to be more than twice as costly to work
1318
+
1319
+ on. Heuristic-2 overrides Heuristic-l, and a plan is formed
1320
+
1321
+ to develop the other areas first and then use these results to
1322
+
1323
+ more tightly control processing in d3 and dq. The number
1324
+
1325
+ of KSIs and the computation time are thus reduced (E6).
1326
+
1327
+ In situation B, two solutions must be found,
1328
+
1329
+ corresponding to two vehicles moving in parallel. Without
1330
+
1331
+ the planner (EV), problem solving -begins with the most
1332
+
1333
+ strongly sensed data (the noise in the center of the area)
1334
+
1335
+ and works outward from there. Only after many incorrect
1336
+
1337
+ decisions to form short tracks that cannot be incorporated
1338
+
1339
+ into longer solutions does the problem solver generate the
1340
+
1341
+ two solutions. The high-level view of this situation, as
1342
+
1343
+ provided by the abstraction hierarchy, allows the planner
1344
+
1345
+ in experiment E8 to recognize six possible alternative
1346
+
1347
+ solutions, four of which pass through di (the most common
1348
+
1349
+ area). The planner initially forms plani, pZan2, and
1350
+
1351
+ plans, beginning in dg, ds, and d$ respectively (Heuristic-l
1352
+
1353
+ triggers the preference for dz; and subsequently Heuristic-3
1354
+
1355
+ indicates a preference for d3 and d$). Since it covers the
1356
+
1357
+ most long-term goals, plan1 is pursued first-a reasonable
1358
+
1359
+ strategy because effort is expended on the solution path if
1360
+
1361
+ the plan succeeds, and if the plan fails then the largest
1362
+
1363
+ possible number of candidate solutions are eliminated.
1364
+
1365
+ After developing di, pl an1 is divided into two plans to
1366
+
1367
+ combine this data with either d2 or d\. One of these equally
1368
+
1369
+ rated plans is chosen arbitrarily and forms the track dzd’,‘,
1370
+
1371
+ which then must be combined with di. However, because
1372
+
1373
+ of vehicle turning constraints, only dldz rather than dld2dg
1374
+
1375
+ is formed. The plan monitor flags an error, an attempt
1376
+
1377
+ to repair the plan fails, and the plan aborts. Similarly,
1378
+
1379
+ the plan to form d\did!J eventually aborts. Plan2 is then
1380
+
1381
+ invoked, and after developing d3 it finds that d2 has already
1382
+
1383
+ been developed (by the first aborted plan). However, the
1384
+
1385
+ plan monitor detects that the predicted result, dzd3 was
1386
+
1387
+ not formed, and the plan is repaired by inserting a new
1388
+
1389
+ action that takes advantage of the previous formation of
1390
+
1391
+ dldE to generate dld2d3. The predictions are then more
1392
+
1393
+ than satisfied, and the plan continues until a solution is
1394
+
1395
+ formed. The plan to form the other solution is similarly
1396
+
1397
+ successfully completed. Finally, note once again that, if the
1398
+
1399
+ planner does not control goal processing (E9), unnecessary
1400
+
1401
+ overhead costs are incurred, although this time the control
1402
+
1403
+ decisions (KSIs) are not degraded.
1404
+
1405
+ Situation C also represents two vehicles moving in
1406
+
1407
+ parallel, but this time they are closer and the data points
1408
+
1409
+ are all equally well sensed. Without the new mechanisms
1410
+
1411
+ (ElO), control decisions in this situation have little to
1412
+
1413
+ go on: from a local perspective, one area looks as good
1414
+
1415
+ as another. The problem solver thus develops the data
1416
+
1417
+ points in parallel, then forms all tracks between pairs of
1418
+
1419
+ points, then combines these into larger tracks, until finally
1420
+
1421
+ it forms the two solution tracks. The planner uses the
1422
+
1423
+ possible solutions from the abstraction hierarchy to focus
1424
+
1425
+ on generating longer tracks sooner, and by monitoring
1426
+
1427
+ its actions to extend its tracks, the planner more quickly
1428
+
1429
+ recognizes failed extensions and redirects processing toward
1430
+
1431
+ more promising extensions. The new mechanisms thus
1432
+
1433
+ improve control decisions (reduce the KSIs) without adding
1434
+
1435
+ excessive computational overhead (El 1). However, the
1436
+
1437
+ planner must consider 32 possible solutions in this case and
1438
+
1439
+ does incur significant overhead. For complex situations, the
1440
+
1441
+ planner may need additional control mechanisms to more
1442
+
1443
+ flexibly manage the many possibilities.
1444
+
1445
+ VI THE IMPLICATIONS OF
1446
+
1447
+ ABSTRACTION AND PLANNING
1448
+
1449
+ We have described and evaluated mechanisms for
1450
+
1451
+ improving control decisions in a blackboard-based vehicle
1452
+
1453
+ monitoring problem solver. Our approach is to develop
1454
+
1455
+ an abstract view of the current problem solving situation
1456
+
1457
+ and to use this view to better predict both the long-
1458
+
1459
+ term significance and cost of alternative actions. By
1460
+
1461
+ interleaving plan generation, monitoring, and repair with
1462
+
1463
+ plan execution, the mechanisms lead to more versatile
1464
+
1465
+ planning, where actions to achieve the system’s (problem
1466
+
1467
+ solving) goals and actions to satisfy the planner’s needs
1468
+
1469
+ (resolve its own uncertainty) are integrated into a single
1470
+
1471
+ plan. Although incremental planning may be inappropriate
1472
+
1473
+ in domains where constraints must be propagated to
1474
+
1475
+ determine an entire detailed plan before acting (141, the
1476
+
1477
+ approach we have described is effective in unpredictable
1478
+
1479
+ domains where plans about the near future cannot depend
1480
+
1481
+ on future states that may never arrive.
1482
+
1483
+ Planning: AUTOMATED REASONING / 63
1484
+
1485
+ ### Page 7
1486
+
1487
+ This approach can be generally applied to blackboard-
1488
+
1489
+ based problem solvers. Abstraction requires exploiting
1490
+
1491
+ relationships in the data-relationships that are used by the
1492
+
1493
+ knowledge sources as well-such as allowable combinations
1494
+
1495
+ of speech sounds [7] or how various errands are related
1496
+
1497
+ spatially or temporally 191.’ Planning requires simple
1498
+
1499
+ models of KSs, recognition of intermediate goals (to extend
1500
+
1501
+ a phrase in speech, to add another errand to a plan),
1502
+
1503
+ and heuristics to order the intermediate goals. We believe
1504
+
1505
+ that many if not all blackboard-based problem solvers
1506
+
1507
+ (and more generally, problem solvers whose long-term goals
1508
+
1509
+ depend on their current situation) could incorporate similar
1510
+
1511
+ abstraction and planning mechanisms to improve their
1512
+
1513
+ control decisions.
1514
+
1515
+ The benefits of this approach extend beyond the
1516
+
1517
+ examples demonstrated in this paper. The more global
1518
+
1519
+ view of the problem provided by the abstraction hierarchy
1520
+
1521
+ helps the problem solver decide whether a goal is adequately
1522
+
1523
+ satisfied by indicating areas where improvements are
1524
+
1525
+ possible and potentially worthwhile. The ability to
1526
+
1527
+ enumerate and compare possible solutions helps the
1528
+
1529
+ problem solver decide when a solution is the best of the
1530
+
1531
+ possible alternatives, and so, when to terminate activity.
1532
+
1533
+ These mechanisms also help a problem solver to work
1534
+
1535
+ under real-time constraints. The KS models provide
1536
+
1537
+ estimates of the cost (in time) to achieve the next
1538
+
1539
+ intermediate goal, and by generalizing this estimate to the
1540
+
1541
+ other intermediate goals, the time needs for for the entire
1542
+
1543
+ plan can be crudely predicted. With this prediction, the
1544
+
1545
+ planner can modify the plan (replace expensive actions with
1546
+
1547
+ actions that inexpensively achieve less exact results) until
1548
+
1549
+ the predicted time costs satisfy the constraints.
1550
+
1551
+ Finally, planning and prediction are vital to cooperation
1552
+
1553
+ among problem solvers. A network of problem solvers
1554
+
1555
+ that are cooperatively solving a single problem could
1556
+
1557
+ communicate about their plans, indicating what partial
1558
+
1559
+ solutions they expect to generate and when, to better
1560
+
1561
+ coordinate their activities [4,5,6]. In essence, the
1562
+
1563
+ problem solvers incrementally form a distributed plan
1564
+
1565
+ together. The inherent unpredictability of actions and
1566
+
1567
+ interactions in multi-agent domains makes incremental
1568
+
1569
+ planning particularly appropriate in distributed problem
1570
+
1571
+ solving applications.
1572
+
1573
+ We are currently augmenting our mechanisms with
1574
+
1575
+ capabilities to perform effectively in more dynamic
1576
+
1577
+ environments with multiple problem solvers. The
1578
+
1579
+ mechanisms, though they address issues previously
1580
+
1581
+ neglected, should also be integrated with other control
1582
+
1583
+ techniques (such as a blackboard architecture for control
1584
+
1585
+ 191) to be fully flexible, as seen in experiment. Eli.
1586
+
1587
+ Based on our experiences, we anticipate that the
1588
+
1589
+ further development of these mechanisms for planning in
1590
+
1591
+ blackboard-based problem solvers will greatly enhance the
1592
+
1593
+ performance of these problem solving systems, will lead to
1594
+
1595
+ improved real-time response and to better coordination in
1596
+
1597
+ distributed problem solving networks, and will increase our
1598
+
1599
+ understanding of planning and action in highly uncertain
1600
+
1601
+ domains.
1602
+
1603
+ ‘In fact, t,he WORD-SEQ knowledge source in the Hearsay-11
1604
+
1605
+ speech understanding system essentially is a clustering mechanism: by
1606
+
1607
+ applying weak grammatical constraints about pairwise sequences of
1608
+
1609
+ words, WORD-SEQ generated approximate word sequences solely to
1610
+
1611
+ control the application of the more expensive PARSE KS that. applied
1612
+
1613
+ full grammatical constraints about. sequences of arbitrary length [7].
1614
+
1615
+ PI R. T. Chien and S. Weissman. Planning and execution
1616
+
1617
+ in incompletely specified environments. In Proceedings
1618
+
1619
+ of the Fourth International Joint Conference on Artificial
1620
+
1621
+ Intelligence, pages 169- 174: August 1975.
1622
+
1623
+ REFERENCES
1624
+
1625
+ Daniel D. Corkill, Victor R. Lesser, and Eva Hudlicka.
1626
+
1627
+ Unifying data-directed and goal-directed control: an
1628
+
1629
+ example and experiments. In Proceedings of the Second
1630
+
1631
+ National Conference on Artificial Intelligence, pages 143-
1632
+
1633
+ 147, August 1982.
1634
+
1635
+ Randall Davis. A model for planning in a multi-agent en-
1636
+
1637
+ vironment: steps toward principles of teamwork. Technical
1638
+
1639
+ Report MIT AI Working Paper 217, Massachusetts Institute
1640
+
1641
+ of Technology Artificial Intelligence Laboratory, Cambridge,
1642
+
1643
+ Massachusetts, June 1981.
1644
+
1645
+ [4] Edmund H. Durfee. An Approach to Cooperation: Planning
1646
+
1647
+ and Communication in a Distributed Problem Solving
1648
+
1649
+ Network. Technical Report 86-09, Department of Computer
1650
+
1651
+ and Information Science, University of Massachusetts.
1652
+
1653
+ Amherst, Massachusetts 01003, March 1986.
1654
+
1655
+ !5j Edmund H. Durfee, Victor R. Lesser, and Daniel D.
1656
+
1657
+ Corkill. Coherent Cooperation Among Communicating
1658
+
1659
+ Problem Solvers. Technical Report 85-15, Department
1660
+
1661
+ of Computer and Information Science, University of
1662
+
1663
+ Massachusetts, Amherst, Massachusetts 01003, April 1985.
1664
+
1665
+ [6] Edmund H. Durfee, Victor R. Lesser, and Daniel D.
1666
+
1667
+ Corkill. Increasing coherence in a distributed problem
1668
+
1669
+ solving network. In Proceedings of the Ninth International
1670
+
1671
+ Joint Conference on Artificial intelligence, pages 1025-1030,
1672
+
1673
+ August 1985.
1674
+
1675
+ [7] Lee D. Erman, Frederick Hayes-Roth, Victor R. Lesser, and
1676
+
1677
+ D. Raj Reddy. The Hearsay-II speech understanding system:
1678
+
1679
+ integrating knowledge to resolve uncertainty. Computing
1680
+
1681
+ Surveys, 12(2):213-253, June 1980.
1682
+
1683
+ 18 Jerome A. Feldman and Robert F. Sproull. Decision theory
1684
+
1685
+ and artificial intelligence II: the hungry monkey. Cognitive
1686
+
1687
+ Science, 1:158-192, 1977.
1688
+
1689
+ [9] Barbara Hayes-Roth. A blackboard architecture for control.
1690
+
1691
+ Artificial Intelligence, 26:251-321, 1985
1692
+
1693
+ [lo] Frederick Hayes-Roth and Victor R. Lesser. Focus of
1694
+
1695
+ attention in the Hearsay-II speech understanding system.
1696
+
1697
+ In Proceedings of the Fifth International Joint Conference
1698
+
1699
+ on Artificial Intelligence, pages 27-35, August 1977.
1700
+
1701
+ [ll] Victor R. Lesser and Daniel D. Corkill. The distributed
1702
+
1703
+ vehicle monitorine: testbed: a tool for investigating
1704
+
1705
+ 1
1706
+
1707
+ distributed proble”m solving networks..4 I Mag‘hzinf:
1708
+
1709
+ 4(3):15-33, Fall 1983.
1710
+
1711
+ Gordon I. McCalla, Larry Reid, and Peter F. Schneider.
1712
+
1713
+ Plan creation, plan execution, and knowledge acquisition
1714
+
1715
+ in a dynamic microworld. international Journal of Alan-
1716
+
1717
+ Machine Studies, 16:89--l 12, 1982.
1718
+
1719
+ Earl D. Sacerdoti. Problem solving tactics. In Proceedings
1720
+
1721
+ of the Sirth International Joint Conference on Artificial
1722
+
1723
+ Intelligence, pages 1077-1085, August 1979.
1724
+
1725
+ Mark Stefik. Planning with constraints. Artificial
1726
+
1727
+ Intelligence, 16:111-140, 1981.
1728
+
1729
+ 6t / SCIENCE