Electrical Design A Problem For Artificial Intelligence Research Gerald Jay Sueeaan
Electrical Design A Problem For Artificial Intelligence Research Gerald Jay Sueeaan
Electrical Design A Problem For Artificial Intelligence Research Gerald Jay Sueeaan
ELECTRICAL DESIGN for ruling out unfeasible plans. Finally, an engineer must be able
A PROBLEM FOR ARTIFICIAL INTELLIGENCE RESEARCH to explain the devices which he has designed. An explanation is
often a description of how the behavior of the composite device
Gerald Jay Sueeaan can be attributed to the combined behaviors of its parts. The
Artificial Intelligence Laboratory ability to explain is crucial to analysis and design. It is much
Massachusetts Institute of Technology easier to analyze a system if we know the intended operation of
Cambridge, Massachusetts 02139, USA the parts.
This paper outlines our project to construct an
electrical circuit designer program as part of an effort to
Abstract: understand the fundamental mechanisms involved in reasoning
This raport outlines the problem of intelligent failure about complex, deliberately constructed systems. Parts of this
recovery in • problem-solver for electrical design. We want our program already exist, other parts are being developed and
problem solver to learn as much as it can from its mistakes. Thus others ere still in the planning stage. Essential ideas from the
we cast the engineering design process in terms of Problem recent theses of Allen Brown on the localization of failures in
Solving by Debugging Almost-Right Plans, a paradigm for radio circuits <Brown 1975> and Drew McDermott on a r u l e -
automatic problem solving based on the belief that creation and based system of hierarchical design <McDermott 1976> are being
removal of "bugs" is an unavoidable part of the process of incorporated into this project.
solving a complex problem. The process of localization and
removal of bugs called for by the PSBOARP theory requires an
approach to engineering analysis in which every result has a A Theory of the Engineering Design Process:
justification which describes the exact set of assumptions it
depends upon. We have developed a program based on Analysis Innumerable hours can be spent tracking down a " b u g "
by Propagation of Constraints which can explain the basis of its in a computer program, an electronic device, or a mathematical
deductions. In addition to being useful to a PSBDARP designer, proof. At such times it may seem that a bug is at best a nuisance
these justifications are used in Dependency-Directed and at worst a disaster. We believe that many bugs are just
Backtracking to limit the combinatorial search in the analysis manifestations of powerful strategies of creative thinking — that
routines. creation and removal of bugs are necessary steps in the normal
Although the research we will describe is explicitly process of solving a complex problem. Following the work of
ebout electrical circuits, we believe that similar principles and Poly a <Polya 1962>, recent research <Fahlman 1973> <Sussman
methods ere employed by other kinds of engineers, including 1973> <Gold$tein 1974> predicated on this belief has resulted in
computer programmers. the development of a paradigm for problem solving which we cell
Problem Solving by Debugging Almost-Right Plans (PSBDARP).
We believe that the PSBDARP theory is a good foundation for
building expert problem-solving systems for such diverse kinds
Introduction: of engineering as circuit design and computer programming.
Engineers combine, analyze, debug, and explain
structures in the course of design. They decide how simple The PSBDARP Theory:
structures may be combined to achieve particular goals. They can Figure 1 displays the structure of a PSBDARP problem
predict the behavior of complex structures by combining the solver. When the problem solver is given a problem it first
behaviors of the substructures out of which they were formed. checks its Answer Library to determine if there is an answer
This analysis is critical for debugging plausible designs which do available whose pattern of applicability matches the problem
Applications-2: Sussman
894
statement. If so, the proposed answer is tested make sure that it the original goal may be ignored because many bugs manifest in
really works and if it passes the test it is returned as the answer terms of destructive interactions among the solutions of
to the problem posed. But suppose the answer is not subprobiems.
immediately available. The problem solver next examines a set of In PSBDARP there is a specific phase of the solution
problem decompositions to see if any are appropriate for process where debugging knowledge is applied. This knowledge
breaking the problem into more manageable chunks. If so, the is relatively domain independent and is concerned with notions of
problem solver remembers the decomposition rule chosen and causality, teleology and simultaneous constraints. The debugging
recursively calls itself to solve each subproblem separately. If phase is far more concerned with the structure of the plan
this is possible, the solutions returned are combined according to produced by the decomposition phase than it is with the goal that
the decomposition rule used to break the problem up and the evoked the plan. For example, localization of a bug in an
resulting proposal is sent off to be tested. If there are no electrical circuit or in a computer program may involve such
decomposition rules available which match the problem statement, strategies as "tracing" — examination of the conditions at various
the problem solver next checks to see if there are any changes module boundaries to determine how the expected conditions
of representation which can be applied to the problem statement compare with those that actually occur.
to put it into a form more amenable to solution. If so, the
problem is considered in terms of the alternate representation. An Example of Synthesis:
If no representation changes are appropriate, the problem solver Consider a concrete problem of engineering synthesis.
has failed on this problem and reports its failure. A failure may Suppose we want an electrical network with a specified system
cause backtracking and search. function; perhaps a network having a voltage-transfer ratio
Suppose that a composite solution is eventually whose magnitude varies with frequency as follows:
proposed and tested. If it is found to work it is returned as the
answer, but often the proposal has a bug. A bug may manifest
by a contradiction among the constraints of the modules which
are the solutions to the subproblems. The composite solution is
also analyzed to see if it actually achieves the goal. If there is a
bug the next step is to localize the cause of the failure. Since
the solution is a composite of correct solutions to subproblems,
the bug must be the result of some unanticipated interaction
between the parts of the proposed solution. In any case the
problem solver must construct a subproblem whose solution We recognize that the encoding of these requirements is not
would fix the bug. This problem is then solved (by a recursive obvious — part of the research is to determine appropriate
call to the problem solver) and the resulting patch is installed in languages for such description. The designer first checks the bag
the proposed solution. The corrected solution must then be of tricks for a plan fragment (an answer or decomposition) whose
retested against the original criteria. pattern of applicability matches the goal. (An expert engineer
would probably have an answer on tap for so simple a problem.)
Why are there bugs? "Matches" is a rather complex idea — features must be extracted
One might imagine a problem-solver based on Figure 1 such as the "flat response" between wl and w2, the fall off at
which produced only correct solutions to problems -- that is, one frequencies above w2 and below w l , the positions of the
in which the question "Does it work?" is always answered "Yes". "elbows", etc. In this case we assume that the designer does not
The. problem with this idea is that a crucial part of the problem- have a plan fragment for synthesis of the required network, so it
solving strategy is the decomposition of problems into has to look for a transformation of the problem. (In McDermott's
presumably independent subproblems. There is no guarantee terminology, we enter the "Rephrasing Protocol".) In this case,
that this is possible in general, but even when it is not possible, there is a good transformation available ~ from a magnitude
there are often general strategies for approximating a solution to graph to a pole - zero plot. (This is an algorithmic transformation
a problem by composing the solutions to almost independent which requires careful measurement of the parameters of the
subproblems. Often one can make progress on the solution to a magnitude plot.)
hard problem by considering the solution of a simplified version We get:
of the problem which is similar in some essential aspect to the
original one but which differs from it in detail. But even in those
cases where a decomposition into completely independent
subproblems is possible, it is not always feasible. In order to be
sure that the solutions to the subproblems are really independent
it is necessary to understand the problem and the possible
implementations of subsolutions so completely that one must
effectively solve the entire problem before choosing the correct
decomposition. This compromises the decomposition strategy.
Another difficulty is that in order to allow "perfect" solutions, the
decompositions and possible answers to problems must be
specified more precisely. This leads to a proliferation of stored
answers and decompositions which differ in only some minor
aspect and thus hide the power of generalization.
Superficially, PSBDARP is a kind of Means-Ends
analysis <Ernst & Newell 1969> but it is not profitable to merge
the concepts. In Means-Ends analysis the problem solver
considers the current state of the problem solution and the goal
being approached and attempts to apply an operator which will
move the solution in the direction of the goal. Often the operator
will decompose the problem Into subproblems which can be
achieved separately, to be combined into a solution of the overall
problem. At this point the PSBDARP philosophy diverges. In
Means-Ends analysis the process Is now iterated. In debugging,
Applications-2: Sussman
895
Notice that this plan fragment it more generally applicable than
just in the domain of electrical circuits. It is appropriate to any
domain in which the "stuff" being manipulated (in this case signal
represented as voltages) "flows* from process to process. Note
that this plan fragment assumes that the flow is unilateral; we will
see that this causes a bug! The system hes other generalized
decomposition rules as well. For example, if the system function
hed been e sum of terms, we could use a different plan for
decomposition:
Applicatlons-2: Sussman
896
We now have e good place to absorb our constant K, thus solving situations. Justifications are also used in the analysis of blind
the problem given: alleys to extract information which will limit future search.
EL is a set of ARS rules for electronic circuit analysis.
This set of rules encodes familiar approximations to physical laws
such as Kirchoff's laws and Ohm's law as well as models for more
complex devices such as transistors. Facts, which may be given
or deduced, represent data such as the circuit topology, device
parameters, voltages and currents. The antecedent reasoning of
ARS gives analysis by EL a "cetch-es-catch-can" flavor
suggestive of the behavior of a circuit expert. The justifications
prepared by ARS allow an EL user to examine the basis of its
conclusions. This is useful in understanding the operation of the
circuit as well as in debugging the EL rules. For example, a
device parameter not mentioned in the derivation of a voltage
value has no part in determining that value. If a user changes
some part of the circuit specification (a device parameter or an
imposed voltage or current), only those facts depending on the
changed fact need be "forgotten" and re-deduced, so small
Suppose we were using pure means-ends analysis changes in the circuit may need only a small amount of new
rather then a debugging strategy. At point * * * above we would analysis. Finally, the search-limiting combinatorial methods
then analyze our current circuit and compere it with the result supplied by ARS lead to efficient analysis of circuits with
we expected (the goat). In this case, analysis leads to the piecewise-linear models.
following result: The style of analysis performed by EL, which we call
the method of propagation of constraints, requires the
introduction and manipulation of some symbolic quantities.
Though the system has routines for symbolic algebra, they can
handle only linear relationships. Nonlinear devices such as
transistors are represented by piecewise-linear models that
cannot be used symbolically; they can be applied only after one
has guessed a particular operating region for each nonlinear
device in the circuit. Trial and error can find the right regions,
but this method of assumed states is potentially combinatorially
explosive. ARS supplies dependency-directed backtracking, a
scheme which limits the search as follows: The system notes a
contradiction when it attempts to solve an impossible algebraic
relationship, or when discovers that a device's operating point is
The difference between the answer we got and the answer we not within the possible range for its assumed region. The
wanted is just that there is an extra term (R 1 C 2 )in the second antecedents of the contradictory facts are scanned to find which
coefficient of the denominator. Why is this term present? Allen nonlinear device state guesses (more generally, which
Brown <Brown 1975> has developed methods for localizing bugs backtrackable choicepoints) are relevant) ARS nenr tries that
using causal and tepeological reasoning about a circuit but it is combination of guesses again. A short list of relevant
certainly a more difficult problem to pursue this path than the choicepoints eliminates from consideration a large number of
one we have. combinations of answers to all the other (irrelevant) choices. The
fact that the set of assumptions leading to the contradiction is
inconsistent is summarized and recorded with antecedents being
The Propagation Theory of Engineering Analysis: that part of the support of the contradiction which are
independent of the assumptions. These summaries are examined
whenever a choice has to be made, thus preventing rechoosing of
It is important that the bug localization process have
an inconsistent set of assumptions. Thus the justifications (or
access to the assumptions on which the bug manifestation is
dependency records) are used to extract and retain more
based. This depends upon analysis being able to explain its
information from each contradiction than a chronological
answers. In this section we will describe progress that has been
backtracking system. A chronological backtracking system would
made on an analysis program that reasons qualitatively about
often have to t r y many more combinations, each time wasting
circuits and can explain its results.
much labor rediscovering the original contradiction.
As part of the development of the PSBDARP circuit
designer, we have developed EL, a new Kind of electrical network Jon Doyle is now engaged in further research on the
enalysis program <Sussman ft Staliman 1975>. The literature is uses of dependency information in the control of reasoning
full of powerful and useful circuit analysis systems which <Doyle 1976>. 1 De Kleer, Jon Doyle, Guy Steele and this author
implement the formal methods. What is novel about this program have been developing an even more powerful rule-besed
it its rule-based approach to network analysis and its consequent language we call AMORD in which the EL rules can be expressed
ability to explain the basis of its deductions. in e more hierarchical form.
EL is implemented in ARS (Antecedent Reasoning
System), a problem-solving language which implements rules as
demons with multiple patterns of invocation monitoring an History of this Project and Relation to other work:
associative data base <Stallman & Sussman 1976>. It performs The PSBDARP theory of design has many
ell deductions in an antecedent manner, threading the deduced antecedents. The idea of successive refinement of plans appears
facts with Justifications which mention the antecedent facts used as a key dogma of "Structured Programming" <Dijkstra 1970>
end the rule of inference applied. These justifications may be <Wirth 1971> <Dahl et el 1972>, although it also appears in the
examined by the user to gain insight into the operation of the Artificial Intelligence problem-solving literature. The idea of
system of rules as they epply to a problem. The same relaxation of a hierarchy of constraints comes from <Freeman ft
justifications are employed by the system to determine the Newell 1971> There are also versions of GPS <Ernst ft Newell
currently active data-base context for reasoning in hypothetical 1969> which were purported to do reasoning in a hierarchy of
Applieations-2: Sussman
897
abstraction spaces. ABSTRIPS <Sacerdoti 1973> showed how <Asimow 1962>, <Buhl 1962>, <Glegg 1973>) but these are
refinement of abstract plans could be used to guide a problem mostly simple advice about how to avoid overlooking a good
solver past problems which would otherwise be combinatorially approach when working out a hard problem. They offer little
explosive. Recently the NOAH system <Sacerdoti 1975> has help in how to propose new solutions to new problems. Artificial
developed this idea to great depth. The major difference we intelligence researchers have been interested in the design
have with successive refinement is our emphasis on engineering process as a model of creativity. Computer Science in general
analysis and debugging. We are sure that it is impossible to build has been interested in design because of the "complexity
systems which can deal with complex real world problems without barriers" apparent in the design of large systems. Herbert Simon
making and removing bugs. PSBOARP is a descendent of the <Simon 1969> wrote a delightful and insightful book which relates
HACKER <Sussman 1973> and MYCROFT <Goldstein 1974> computer science to general engineering design and to cognitive
debugging systems. One might consider that GPS already theory. At Carnegie-Mellon University, for example, Grason
embodied the idea of debugging in that one may take a problem <Grason 1970> wrote a PhD thesis on the relaxation of
solver with a debugging strategy to be a special case of a architectural constraints, and Hanley <Hanley 1968> wrote a PhD
problem solver which first attempts to eliminate the main thesis on computer-aided design of computer instruction sets.
difference between the given and the goal and then reevaluates One would expect the CAD literature to deal
the situation after a step. This is true in principle, but GPS was extensively with systems to save an engineer time and effort. A
never used for debugging. Poly a <Polya 1945> had developed a survey of this literature (see <Kuo & Magnuson 1969> <Furman
theory of problem solving which included debugging but GPS only 1970> <Dertouzos 1972> <Vlietstra & Wielinga 1973>
captured the reduction and rephrasing aspects of Polya's theory. <Rosenbrock 1974>) shows that the thrust of CAD development
Recently Allen L Brown Jr. finished a PhD thesis at has been in the development of interactive graphics packages,
MIT <Brown 1975> which explored the use of causal and libraries of special purpose programs, and mathematically
teleologies! reasoning in the troubleshooting of complex electrical sophisticated programs aimed at analysis or optimization of
systems. In this thesis Brown developed a set of linguistic synthesis. Only a small amount of work has been done in the
conventions for the representation of the plan of a complex, field of synthetic reasoning, and then only in restricted domains
hierarchically-structured system. Brown's methods depend on, where algorithms are available to solve a small class of problems.
and inspired the construction of the EL analysis system Such approaches have been partially successful in the problem of
<Sussman & Stallman 1975> which uses constraint propagation printed-circuit layout (e.g. <Fletcher 1974>) and filter design (e.g.
and can explain how a result depends on assumptions. Brown <Chohan A Fidler 1974>). Director <Director 1974> describes a
needed analysis by propagation of constraints to predict the circuit design program which assumes a full-graph impedance
consequences of a hypothesized fault in a component. These network and then optimizes the network for the behavior
consequences are compared with the measured values as a test desired. In the process, many component values become zero
of the fault theory. The explanations are critical in determining and are thus discarded? The CAD literature is almost completely
the faulty assumptions. Johan de Kleer also uses this technique ignorant of non-numerical techniques (except <Powers 1973>)
in his debugging program INTER <de Kleer 1976>. A related and would benefit from an infusion of these new ideas. Besides
process of relaxation of symbolic constraints has been applied to our work, the TROPIC system <Latombe 1976> is one other
the labelling of line drawings of visual scenes <Muffman 1970>. A application of artificial intelligence ideas to CAD. John S. Brown
beautiful exposition of this technique can be found in <Waltz <Brown & Burton 1975> (at Bolt, Beranek and Newman,
1972>. Some theoretical analysis of this technique appears in Cambridge, Massachusetts) has been applying both artificial
<Freuder 1976>. intelligence ideas and CAD ideas to the problem of computer-
TOPLE <McDermott 1974> was an early attempt to aided instruction of circuit debugging skills for technicians. We
record the interactions among deductions for the purpose of expect that the work of his group will contribute to the
deciding what is currently believed to be true. McDermott used understanding of AI issues in CAD.
this information to help decide which of several assumptions must
be t h r o w n out in order to keep a consistent data base when a Conclusions:
new fact conflicted with existing ones. MYCIN <Shortliffe 1974> A major problem confronting builders of automatic
<Davis 1976> use dependency information to produce problem-solving systems is that of the combinatorial explosion of
explanations but do not use it for any control purposes. The SRI search-spaces. One way to attack this problem is to build
Computer Based Consultant <Fikes 1975> makes use of systems that effectively use the results of failures to reduce the
dependencies to determine the logical support of facts in a search space — that learn from their exploration of blind alleys.
manner similar to ARS but does not use them to control search. In simple cases, as in analysis of circuits, various automatic
Two other recent research efforts at MIT have techniques such as the dependency-directed backtracking of ARS
developed these ideas further. Drew V. McDermott finished a can go a long way toward controlling the search. In more
PhD thesis <Mc Dermott 1976> concerning the design of such complex situations, as in design, it is necessary to constrain the
systems. Drew developed a rule-based language, called NASL, in search as rapidly as possible — even if that sometimes
which it is possible to express strategies, tactics, and advice for overconstrains the problem and causes a bug. At least we can
design. He used this language to encode some general design hope that the debugging problem is easier than the search
strategies and some specific strategies for the design of problem. In either case it is necessary to build problem solvers
electrical systems. Howie Shrobe and Charles Rich <Rich & so that they can remember and explain their reasoning. Both
Shrobe 1976> designed and mostly implemented a system which dependency-directed backtracking and problem solving by
"understands" a limited class of LISP programs. They have debugging almost-right plans depend on the ability to manipulate
developed set of linguistic constructs for attaching a set of the justification of a conclusion as well as the ability to deduce it.
structured comments to a program which relate it to its plan. Saving justifications for the intermediate results of a
These plans look very much like the plans of Brown. They have computation has other merits. It is very difficult to debug
also developed a system which reasons about the program in programs containing large amounts of knowledge. The complexity
terms of its plan, and which can check that a program in fact of the interactions between the "chunks" of knowledge makes it
implements its goals. In effect their system employs the difficult to ascertain what is to blame when a bug manifests itself.
teleological information in the plan about the parts of the A program which can explain the reasons for its beliefs is more
program being checked, as an outline for the verification of the convincing when right, and it is easier to debug when wrong.
program.
Finally, there have been many books about the
strategies of the design process (for example <Alexander 1964>,
Dahl, OJ., E.W. Dijkstra and CAR. Hoare (1972) Structured Hewitt, Carl and Brian Smith (1975) Towards a Programming
Programming, London: Academic Press. Apprentice, Cambridge: MIT Artificial Intelligence
Laboratory Working Paper 90.
Davis, Randall (1976) Applications of Meta Level Knowledge to the
Construction, Maintenance, and Use of Large Knowledge Huffman, David (1970) "Impossible Objects as Nonsense
Bases, Stanford, CA: Stanford University Artificial Sentences," in Machine Intelligence 6, Edinburgh, UK.:
Intelligence Laboratory Memo 283. Edinburgh University Press (1970).
de Kleer, Johan (1976) Local Methods for Localization of Faults in Kuo, F.F. and W.G. Magnuson (1969) (Eds.) Computer-Oriented
Electronic Circuits, Cambridge: MIT Artificial Intelligence Circuit Design, Englewood Cliffs, NJ: Prentice-Hall, Inc.
Laboratory Memo 394.
Latombe, Jean-Claude (1976) Artificial Intelligence in Computer -
Dertouzos, Michael (1972) "CIRCAL-2: General-Purpose On-Line Aided Design: The Tropic System, Menlo Park, CA:
Circuit Design", Proceedings of the IEEE, Vol. 60, pp. 3 9 - Stanford Research Institute Artificial Intelligence Center
48, Jan. 1972. Technical Note 125.
Dijkttra, Edsgar (1970) "Structured Programming" in Software McDermott, Drew (1974) Assimilation of New Information by a
Engineering Techniques, JLN. Buxton and B. Randell (Eds.), Natural Language Understanding System, Cambridge: MIT
NATO Scientific Affairs Division, Bruseels, Belgium, 1970. Department of Electrical Engineering and Computer
Science Master's Thesis.
Director, S.W. (1974) T o w a r d s Automatic Design of Integrated
Circuits", in William R. Spiders (Ed.) Basic Questions of McDermott, Drew (1976) Flexibility and Efficiency in a Computer
Design Theory, New York: American Elsevier Publishing Program for Designing Circuits, Cambridge: MIT
Company, Inc., p. 303. Department of Electrical Engineering and Computer
Science Ph.D. Thesis.
Doyle, Jon (1976) The Use of Dependency Relationships in the
Control of Reasoning, Cambridge: MIT Artificial Polyt, George (1945) How to Solve It, Princeton, NJ: Princeton
Intelligence Laboratory Working Paper133. University Press,
Ernst, George W. and Allen Newell (1969) GPS: A Case Study in Polya, George (1962) Mathematical Discovery: on Understanding.
Generality end Problem-Solving, New York: Academic Learning, and Teaching Problem Solving, Vols. I and II.
Press. New York: John Wiley and Sons, Inc.
Applications-2: Sussman
899
3. The STATUS t r a n s i t i o n , if any ( e . g . , The event d i c t i o n a r y , s t a t u s diagrams, and
"PRL.XM.S" can occur only if the defendant is sequence diagrams represent the c o u r t - o r i e n t e d
in the " M a g i s t r a t e ' s Proceedings" s t a t u s , and knowledge of the CR1MNL system and are
the event w i l l not cause a s t a t u s change), d e c l a r a t i v e l y s p e c i f i e d i n t a b l e s r a t h e r than
4. The formal parameters necessary to s p e c i f y b e i n g , f o r example, p r o c e d u r a l l y embedded. The
the data contents of the event ( e . g . , system a c t s essentially as an interactive
"PRL.XM.S" r e q u i r e s t h a t the scheduled date i n t e r p r e t e r which accepts proposed events from the
of the examination be s u p p l i e d ) , user and t r i e s to apply the semantic a c t i o n s of
5. The Speedy T r i a l time accounting a c t i o n s each event t o t r a n s f o r m the c u r r e n t s t a t e o f i t s
necessary as a r e s u l t of p o s t i n g the event, subject. The i n t e l l i g e n c e o f t h e system i s
6. Any s p e c i a l p r e c o n d i t i o n s t h a t must be e x h i b i t e d by i t s responses to proposed events and
s a t i s f i e d in order f o r the event to be the reports produced for effective case
posted, monitoring. Not only can CRIMNL d e t e c t when an
7. Any s p e c i a l semantic a c t i o n s t h a t must be event is i n v a l i d based on the c u r r e n t s t a t e of i t s
performed upon p o s t i n g the event, s u b j e c t , but the system can a l s o o f f e r d i a g n o s t i c
8. The t e x t t h a t is to be p r i n t e d on a docket advice as to which events are a l l o w a b l e at t h a t
sheet when t h i s event is r e p o r t e d . time and which events need to be posted f i r s t in
order t h a t the attempted event become v a l i d . This
In addition to the event sequencing m o d e l - b a s e d v a l i d i t y c h e c k i n g and d i a g n o s t i c
c o n s t r a i n t s represented by the s t a t u s diagram, advice allows the d e t e c t i o n of c l e r i c a l e r r o r s and
arbitrary sequencing relationships may be r e s u l t s i n increased data base i n t e g r i t y . This
s p e c i f i e d to c o n t r o l the order in which events may same model-based system also provides the Courts
b e p o s t e d w i t h i n any g i v e n s t a t u s . These w i t h a v a l u a b l e t r a i n i n g t o o l f o r the i n s t r u c t i o n
r e l a t i o n s h i p s are r e p r e s e n t e d g r a p h i c a l l y as of docket clerks in criminal procedure.
SEQUENCE DIAGRAMS and extend the f i n i t e s t a t e Furthermore, as a r e s u l t of e x p l i c i t l y d e f i n i n g
nature of the STATUS DIAGRAM. In a d d i t i o n to each s u b j e c t ' s s t a t e w i t h respect t o i t s progress
s t r i c t e v e n t s e q u e n c e s , SEQUENCE DIAGRAMS may i n the c r i m i n a l proceedings, i t i s p o s s i b l e t o
denote f o r k s and j o i n s , o p t i o n a l sequences, and g e n e r a t e e x c e p t i o n r e p o r t s w h i c h m o n i t o r case
p a r a l l e l paths. The s t a t e of any given s u b j e c t progress and warn of approaching procedural time
w i t h respect to the progress of a case may be c o n s t r a i n t s , an e s p e c i a l l y complex c l e r i c a l task
described as the STATUS c o n t a i n i n g the subject- imposed on the Courts by the Speedy T r i a l A c t .
plus a v e c t o r of "program c o u n t e r " values The system is programmed in SAIL u s i n g
i n d i c a t i n g t h e s u b j e c t ' s p o s i t i o n a l o n g each DBMS-10 and runs on a DECsystem-10 computer in
p o s s i b l e p a r a l l e l path in the SEQUENCE DIAGRAM Washington, D.C., a c c e s s i b l e from t e r m i n a l s
which f u r t h e r d e f i n e s the STATUS. located in the v a r i o u s user C o u r t s via a
value-added network. The i n i t i a l " p i l o t " group o f
Federal Courts are l o c a t e d in Los Angeles, San
Francisco, Chicago, Detroit, New Y o r k , and
Washington, D.C.
REFERENCES
Buchanan, J . R . , "Management I n f o r m a t i o n Systems
f o r the Federal C o u r t s , " Proceedings of
" I n t e r a c t i v e I n f o r m a t i o n and Decision Support
Systems," O f f i c e of Naval Research, Wharton
School of Management, November 1975.
F i g u r e 2 d e p i c t s a s i m p l i f i e d event sequence
diagram for defendant subjects in the E b e r s o l e , J . L . , and J . A . H a l l , "COURTRAN, A n
" M a g i s t r a t e ' s Proceedings" s t a t u s , showing the I n f o r m a t i o n System f o r the C o u r t s , " Journal of
a l l o w a b l e sequences f o r S e t t i n g , H o l d i n g , and Computer & Law, Rutgers U n i v . , 1972.
Continuing p r e l i m i n a r y examinations. The { }
i n d i c a t e t h a t t h e e n c l o s e d sequence may be Federal Rules of C r i m i n a l Procedure f o r the United
repeated zero or more t i m e s . The v e r t i c a l bars States D i s t r i c t Courts, August 1976.
denote a f o r k and j o i n o p e r a t i o n on the enclosed
independent event sequences. The d o t t e d l i n e Lesser, V.R., R.D. F e n n e l l , L.D. Erraan, and D.R.
i n d i c a t e s t h a t the DISMISS event may be posted at Reddy, " O r g a n i z a t i o n of the Hearsay II Speech
any time between the f o r k and j o i n to i n t e r r u p t Understanding System," IEEE Trans. ASSP, 23,
and c u r t a i l the p a r a l l e l sequences. According to pp. 11-23, February 1975.
Figure 2, b e f o r e an INDICT event can be posted, a
preliminary e x a m i n a t i o n must first be set Nihan, C.W., "COURTRAN, An Assessment of
A p p l i c a t i o n s and Computer R e q u i r e m e n t s , "
(PRL.XM.S) and then held (PRL.XM.H), and
F e d e r a l J u d i c i a l C e n t e r R e p o r t , September
o p t i o n a l l y c o n t i n u e d (PRL.XM.C) and r e - h e l d
1974.
(PRL.XM.H) an a r b i t r a r y number of t i m e s . However,
at any time d u r i n g t h i s p r e l i m i n a r y examination
sequence, DISMISS may be p o s t e d , thereby escaping Speedy T r i a l Act, P u b l i c Law 93-619, 93rd
from the sequence and causing a s t a t u s change to Congress, S.754, January 1975.
the " P o s t - T r i a l " s t a t u s (see Figure 1 ) .
A p p l i c a t i o n s - 2 : Buchanan
902