PII: 0898-1221(89)90223-X Computers Math. Applic. Vol. 18, No. 4, pp. 381-398, 1989 0097-4943/89 $3.00 + 0.00 Printed in Great Britain. All rights reserved Copyright © 1989 Pergamon Press pie ELECTRONIC CIRCUIT DIAGNOSTIC EXPERT SYSTEMS--A SURVEY Y. Lmov AT&T Bell Laboratories, Holmdel, NJ 07733, U.S.A. (Recewedll May 1988) Abstract--The electronic circuit diagnostic problem is roughly formulated and subdivided into six subproblems. Current literature and patents are surveyed with respect to the above six subproblems. Some of the existing expert diagnostic systems as well as expert diagnostic shells are described and their limitations are outlined. A review of the relevant terms from AI is included. The bibliography list contains some 300 references. 1. I N T R O D U C T I O N This paper discusses artificial intelligence methods in circuit pack testing. Testing requires investment o f labor, capital and information about testing techniques. The added cost o f testing in the circuit pack production line is justified by several reasons: first, the defective products are not shipped; second, testing helps to develop product repair methodology; and, finally, testing helps to discover manufacturing problems, e.g. low yield due to a single fault may occur because o f malfunctioning insertion robot, a bad batch o f components, or a badly designed in-circuit test. The interested reader should refer to Towill (1987) and Williams et al. (1982) for overviews o f automatic testing. 1.I. F a u l t c a t e g o r i e s Defects in circuit packs, in general, come from three sources: bad components, damage to components or the circuit board, and mistakes in the manufacturing process. Since "different things go wrong at different times because o f different reasons" (Pynn, 1986), determining an optimal manufacturing and test strategy becomes a challenging task. Roughly speaking, one can define three different fault categories: device faults (e.g. unoperative capacitor) assembly faults (e.g. solder shorts, missing components, misoriented components, etc.) and operational faults, such as timing problems arising from apparently good components that fail to work together. According to this somewhat arbitrary fault categorization, a two-stage test strategy has been adopted by most circuit pack manufacturers: the inspection test stage and the functional test stage. Inspection test is designed to examine the circuit pack for proper construction and it consists of shorts test, in-circuit test, and visual test. The in-circuit test examines the function o f each device separately from others. Functional (system) test is designed to examine the operation o f the pack and thus tests the function o f assemblies o f components. As the complexity o f the circuit pack grows, the role o f testing becomes more important and the testing process becomes more difficult. The area o f design for testability is becoming a popular topic by necessity (Williams and Parker, 1983). With the advent of computer technology, automatic test equipment--the equipment for programmed application o f sequences o f stimuli, measurement, and comparison o f the results to the expected values---became the accepted norm. The issue o f software development for such automatic test equipment becomes both increasingly important and difficult as the complexity o f the circuit packs grows. 1.2. A u t o m a t e d d i a g n o s t i c s The ability o f software to generate stimuli and to draw conclusions about the defective components for a given circuit pack is a subtle issue dependent on the experience o f the test engineer responsible for programming o f the automatic test equipment. If the test is to perform two basic CA~aVA t s/*--e 3 81 382 Y. LIROV tasks, i.e. verification (knowing whether everything is functioning as expected), and diagnosis (identifying what causes the unexpected behavior, so it can be fixed) then it is the diagnosis which becomes an increasingly difficult task as a result o f the growing complexity of the circuit packs. 1.3. Importance o f diagnostics Diagnosis o f an electronic circuit usually refers to the process of determining the faulty component(s) that cause an undesired behavior (output) o f the given circuit for some (correctly) given input. Importance o f diagnosis stems from both practical and theoretical considerations. 1.3.1. Practical considerations. The practical considerations are primarily of an economic nature: there is a monetary value associated with every component in the pack, as well as a monetary value associated with the processes of assembly and soldering of the pack. Thus, when a pack is declared faulty, it is desirable to replace only the faulty components. Moreover, the process o f identification o f the faulty components (the diagnostics) consists o f a series o f tests each of which has an associated cost, expressed in such parameters as test setup time, component destruction, etc. The process o f identification o f the faulty components and their subsequent replacement should not be overly expensive. Thus, Observation 1: Diagnostics o f circuit packs is primarily an economic problem (Barber and Yau, 1986). Currently this problem is solved in the majority o f cases by humans who are called test analysts or diagnosticians. Training o f such human analysts is expensive. Their performance depends on the accumulated experience. Indeed, Observation 2: There are human experts that are extremely successful in the area o f diagnostics. Therefore, it is very desirable to have computer programs which are capable o f performing diagnostics. However, Observation 3: Diagnostics problem (i.e. the construction of a computer algorithm which is capable to perform diagnostics) is NP-hard (Hyafil and Rivest, 1976; Ibarra and Sahni, 1976; Karp, 1972). 1.3.2. Theoretical considerations. Therefore, in the absence o f a better alternative, we resort to the construction o f programs that perform approximate diagnostics. In other words, we are willing to give up some o f the precision o f the final description of the faulty component(s) (solution) in order to gain in the length of time spent to obtain that solution. Moreover, in many cases, in the absence o f rigorous mathematical methods to simulate the complex decision making processes which are performed by the human diagnosticians, we are forced to invent different heuristics in order to obtain in some sense similar diagnostic performance. Therefore, the development of such programs is related to the field o f computer science which is commonly known by the name o f artificial intelligence. This relation is further extended to the fields o f control systems, since, as we shall show later, a diagnostics problem is also a planning or control problem. Moreover, approximate solution approaches often employ probabilistic and fuzzy reasonings, thus relating the research in diagnostics to operations research and information theory. The time complexity considerations in the diagnostic and related algorithms requires applications and further developments o f the results belonging to the field o f computational complexity. And, o f course, the area o f application is related to electrical engineering. Diagnostics belongs to the intersection of all o f the above fields. Hence the theoretical importance o f diagnostics. 1.4. Current approaches Two basic approaches and their combinations are currently utilized in industry for conventional diagnostic software development: the fault dictionary approach and the guided probe approach. The fault dictionary approach requires simulation of the faulty behavior of the system and subsequent storage o f the simulation results (as well as the fault assumptions) in the fault dictionary. A "misbehaved" output o f the pack under test can therefore be looked up in the fault dictionary. Basically, two problems prevent the fault dictionary approach from being the widely accepted testing method. These are the overly extensive memory requirements and the diversity o f the faults. As a result, the fault dictionaries are usually incomplete and ambiguous. The guided probe approach requires only simulation o f the correctly functioning circuit pack. The basic tool in utilizing this approach is the blame-shifting mechanism applied after each Electronic circuit diagnostic expert systems---a survey 383 measurement. The upstream (from the test point view) components in the circuit are blamed only when the measurements do not agree with the expected results. The efficient sequencing o f measurements becomes the maii: problem when implementing the guided probe approach. 1.5. Outline o f the overview In order to appreciate and put into perspective the contributions o f the earlier published results on diagnostics, it is convenient to view them with relation to different aspects o f the diagnostics problem. Such a perspective not only allows us to compare different approaches but also provides us with the opportunity to identify yet unsolved problems. The rest o f the paper is organized as follows: first we state the diagnostics problem in a more formal way so as to allow its subdivision into six subproblems. Then we give a brief overview o f each of the subproblems and the tools that are used in their solution. 2. P R O B L E M S T A T E M E N T A circuit pack (plant) P = P(S, B) is modeled by its structure S and its behavior B. Structure S = S(C, T) is defined by the set C of components and topology T on the set C. Behavior B =B(IO, R) is defined by two mathematical models: (1) I 0 model describing the input--output relationships o f every c e C and (2) R model describing the reliability o f every c e C . A component c ~ C is called faulty if its observed behavior bo is different from be, the expected IO behavior (be e IO). Problem 1 (Diagnostic Problem). Given a multicomponent plant P and a symptom indicating an anomaly on the expected IO behavior, identify the subset Cf c C o f faulty components. However, the identification part o f the above problem is itself a complex process. In particular it involves repetitive generation o f hypotheses and their support or disposal. Proving or rejecting a hypothesis requires in turn to perform sequences o f measurements and subsequent sequences of symbolic computations. Therefore, the identification requirement of Problem 1 can be satisfied by recursively solving the following: Problem 2 (Classification Problem). Given a symptom and the results of previously performed measurements, obtain an estimate o f the faulty subset Cf (generate hypothesis), and Problem 3 (Planning Problem). Given an estimate o f Cf, obtain the minimum expected cost plan (sequence) of measurements, so that when performed, the initial hypothesis will be either proved or rejected. Note 1. The actual reasoning technique employed to prove or reject a hypothesis, although an important issue by itself, serves only a secondary role. Diagnostic expert system exploits diverse sources of information to detect failures in a given unit under test (UUT). The relevant information is concerned with the function of the different components, their interconnection, signal characteristics and their paths, and component reliability measures. Moreover, since usually the initial information is insufficient to diagnose correctly, a number o f additional observations (tests) is needed to complete the diagnosis. The description o f available tests, their diagnostic value and costs is yet another kind o f information necessary for diagnosis. Knowledge representation is the term used for the schemes o f storing the different kinds o f information in order to allow for its efficient processing, i.e., failure detection and cost-efficient test sequence generation. Knowledge has to be adequately represented for quick manipulation, for ease in modification, for specifying distinctions between different concepts, and for viewing of multiple levels o f abstractions. Knowledge representation is inherently related to the ways the knowledge is used. Different problem-solving strategies which use the knowledge base define the inference engine o f the diagnostic expert system. Problem 4 (Reasoning Problem). Find an efficient way o f reasoning about electrical circuits. (Such reasoning involves manipulation o f data structures which represent both structural and behavioral data.) 384 Y. L m o v Note 2. Both Problem 2 and Problem 3 involve requirements to reason along both structural and behavioral lines. Such computational requirements require novel approaches for solution of Problem 5 (Representation Problem). Find an efficient way of representing plant P = P(S, B). Efficiency of representation is determined by its level of completeness, consistency, transparency, and computability (Winston, 1984). When solving Problem 1 by using heuristic approaches and in particular by utilizing knowledge of human experts, one can not overestimate the importance of Problem 6 (Knowledge Engineering Problem). Find efficient ways to extract the heuristics about circuit pack troubleshooting from human experts. And, when interfacing to analysts at the shop floor level, one must also face Problem 7 (User Interface Problem). Find efficient ways to conduct a fruitful dialog with the human analysts performing diagnostics. We have identified six problems which belong to the field of artificially intelligent testing. Now we turn to the approaches and tools which are being used to solve those problems. It is more convenient first to address the problems of representation and reasoning, then the planning and classification problems, and, finally the issues about knowledge engineering and user interfaces. 3. R E P R E S E N T A T I O N AND R E A S O N I N G P R O B L E M S Basically two approaches and their combinations have been used to solve diagnostics problems: the rule-based (shallow modeling) approach and the conceptual (deep) modeling approach. Many diagnostic systems have their knowledge in the form of rules, representing separate and modular chunks of knowledge, e.g. "Observations =~ Hypothesis". Often such knowledge may be contra- dictory, incomplete, or too large to be manipulated efficiently. In such cases one models the domain or system under consideration and reasons with this model to generate diagnostics. Such models have been called causal, conceptual, or deep models. 3.1. Performance notions The choice of the correct approach or their combination depends on such factors as size and complexity of the diagnosed system, its reliability on the one hand, and its criticality and stability on the other hand. System size is usually defined in terms of the number of line replaceable units (LRU). System complexity reflects the size of the effort required to track down a fault and it is a function of the number of feedback loops, number of outputs and inputs to LRUs, etc. Reliability of the diagnosed system is defined as the cumulative reliability of its LRUs. Note that the more reliable the system is the more difficult is the diagnostic task. The criticality of the diagnosed system is defined in terms of the length of time interval length within which the diagnosis must be completed. Stability of the diagnosed system is defined by the number of modifications to the system per unit of time. 3.2. Rule-based appoach The rule-based approach can be further subdivided into deterministic decision trees, single relevant rule, and multiple relevant rule methods. 3.2.1. Deterministic decision tree. The deterministic decision tree method is based on the construction of a hierarchy of questions in such a way that each combination of answers can be interpreted as a leaf on the decision tree. The main advantage of this approach is in its simplicity and in its suitability to the systems of high criticality. However, this approach is limited to the systems of low complexity and high stability. 3.2.2. Single relevant rule. The single relevant rule approach is based on searching the rule base for the single rule which can be applied in a given situation or can confirm a given hypothesis. Since such search procedures can be applied recursively, they have been called forward and backward chaining respectively. The advantages and disadvantages of the single relevant rules are similar to the ones of the deterministic decision trees. However, when applying this approach one must be aware of the requirements to maintain a valid rule base, i.e. no two rules may apply to the same situation (consistency), and each situation has to be covered by a rule (completeness). Electronic circuit diagnostic expert systems---a survey 385 Optimality o f the rule base is obtained by ordering the rules in such a way that the expected time to search for the relevant rule is minimized. An entropy-based approach is usually utilized to obtain the optimal ordering o f the rule-base. Sometimes a cost is associated with the firing action o f the rule or/and with the satisfaction o f the antecedent o f the rule (i.e. query o f the user, test setup time, etc.). In such cases the optimality o f the rule-base becomes a difficult problem. The requirements o f consistency, completeness, and optimality are very difficult to satisfy in advance when dealing with systems o f low stability and high complexity. 3.2.3. Multiple relevant rules. To resolve the above problem, the multiple relevant rules approach has been developed by several authors. This approach requires application o f a heuristic to evaluate the chaining strength of the rule on a particular situation as well as a heuristic to combine the strengths o f several rules when forward or backward chaining is involved. A basic expert system building tool (a shell) has been recently patented (Hardy et al., 1987) by Teknoledge. The tool includes interactive knowledge base debugging, question generation, legal response checking, explanation, and certainty factors. (Its source code in Prolog takes 7 pages and is available in the patent documentation.) However the expert systems based on this approach and having several hundreds o f rules again exhibit great difficulties in maintaining their knowledge base. Also the multiple relevant rules approach does not contribute to the problem o f knowledge acquisition for the systems o f low stability. 3.3. Conceptual modeling approach Conceptual modeling approach takes into consideration the original system description rather than using the knowledge compiled by humans into a decision tree or a set o f rules. The conceptual modeling approach can also be subdivided into normal functioning modeling and fault functioning modeling. The overall diagnostic strategies and their relationships were described in Chandrasek- aran and Milne (1985), who used a hierarchy o f four levels: structural, behavioral, functional and pat- tern matching. Given structural representation (list o f components and their connectivity; Forbus, 1987; Bylander and Chandrasekaran, 1985) using qualitative simulation and consolidation pro- posed methods to generate the behavioral description. To generate a functional description o f the de- vice using the behavioral description, one may use the approach o f de Kleer which is based on teleo- logical (device intentions based) reasoning. The pattern matching diagnostic strategy can be applied after compiling (by a human expert or by a machine) the functional description o f the device. Deep (structural, behavioral and functional) modeling can also be used to declare the innocence o f certain components o f the unit under test (UUT; Scarlet al., 1987), or to explain the observed malfunction (Kuipers, 1987). Using de Kleer's (1983) approach, given a low level electronic description o f the components, one is able to deduce the outputs o f the circuit, and consequently diagnose faults in it. Davis (1983) proposed computing the function and the inverse o f each component and then utilizing them to propagate o f combination o f inputs to compute the outputs or vice versa. Digital troubleshooting becomes possible by comparing the expected values with the computed ones. A formal language for U U T description has been developed by (Chandrasekaran, 1985) who compiles the above description into a set o f production rules which are used for diagnosis. M ilne (1985) uses structural reasoning at both the fault isolation to a functional area and possible faults proposal stages. Using his "responsibility theory" appoach only four basic diagnostic rules are needed: two rules to propose faults using description o f structure and another two using description o f function. Forbus (1981) develops a qualitative reasoning methodology to derive the diagnostic rules given a structural description o f objects and their topology. Bylander and Chandrasekaran (1985) propose a methodology to develop the description o f behavior o f composites o f components based only on the descriptions o f the components. 4. P L A N N I N G P R O B L E M Ooel (1980) has shown that the number o f tests needed to pinpoint a fault is at worst linear in the number o f components. However, as we observed earlier, generating the best test sequence is NP-complete (Ibarra and Sahni, 1976). 386 Y. Lmov A test generation algorithm which uses the design information has been proposed some 20 years ago by Roth et al. (1967) and it is called the d-algorithm. The d-algorithm is based on activating simultaneously all the paths to the observable point in the system. Such an approach is impractical for nowadays circuits because o f its high computational requirements. An algorithm o f Cantone (1985) for deciding which test to perform is based on maximizing the ratio o f information gained and expected cost, computed over the available subcircuits. The algorithm is based on the gamma-miniaverage method (Slagle and Lee, 1971). A combi- nation o f structural information (topology o f components) and compiled knowledge (cost o f test and components' failure rates) is used to further isolate the fault to a single functional area. The D A R T algorithm (Bennett et al., 1981) exploits the heirarchy of the circuit in order to deal with the issue o f exponential growth in the number o f computations. Within each level D A R T deduces the suspects by reasoning backward to find a justification for a symptom and generates additional tests by working forward from a behavioral rule for one o f the suspects to observable outputs. For more on planning see also Allen et al. (1983), de Kleer (1977), Hyafil et al. (1976), Ibarra et al. (1976), Konolige et al. (1980), Loveland (1979), McDermott (1981, 1982), Poage et al. (1964), Rosenchein (1981), Sacerdoti (1977), Shirley (1983), Slagle et al. (1971), Vere (1983) and Warren (1976). 5. C L A S S I F I C A T I O N P R O B L E M The diagnostic mode o f reasoning is a term used by Kim and Pearl (1985) to describe the inference process o f updating the causal model o f beliefs due to modifications in the model o f symptoms. Kim and Pearl (1985) describe a computational model for causal and diagnostic reasoning which is a generalization o f the Bayesian methods previously applied to decision trees (DDI, 1973). 5.1. B a y e s i a n m e t h o d s Diagnostic reasoning requires construction o f means to assign and update a blame measure to parts o f the model, based on the observed behavioral deviations o f the physical system. The classical Bayesian probabilistic approach suffers from the following shortcomings: (1) the need to establish a p r i o r i probability o f success o f a test; (2) the need to establish a priori failure rates of the components; (3) the approach is only applicable when the events are mutally exclusive; and (4) conditional probabilities for every combination o f evidence must be computed since the independence o f evidence cannot be assumed. The Dempster-Shafer (Shafer, 1976) theory o f evidence has been proposed to remedy some o f the above problems. The theory still suffers from shortcomings 1, 2 and 4. Recently Thompson and Wojcik o f Westinghouse patented a " M e t h o d and Apparatus for System Fault Diagnosis and Control" (Thompson and Wojcik, 1987). A domain-independent set of metarules is constructed which is able to build a rule network through which belief is propagated to detect defects. 5.2. M u l t i p l e -fault a s s u m p t i o n The multiple-fault assumption poses an additional difficulty in diagnostics problems. Peng and Reggia (1987) developed a probability based approach to guide the backward chaining in such a way that the more likely situations are considered first. By only using the input/output description o f the components and the connectivity information, de Kleer (1986) developed a procedure to incrementally accept or rule-out possible faults. See also Edgar et al. (1984). Fuzzy logic applications for failure analysis were tried by Kitowski and Ksazek (1985). The applied method involves solution o f fuzzy equations derived from a failure-symptom fuzzy relations matrix. Sensor-based systems for realtime monitoring present particularly stringent requirements for expert diagnostic systems. A rule-based system utilizing multiple sensors for obtaining data about chemical parameters was recently patented (Kemper et al., 1987; Westinghouse Electric). The system is utilized to monitor a steam turbine-generator power plant. Electronic circuit diagnostic expert systems--a survey 387 5.3. L e a r n i n g Learning o f diagnostics systems has been explored only at the compiled knowledge base level reasoning: Pazzani (1987) developed a failure-driven learning mechanism to update the rule-base when a diagnostic failure occurs. 6. KNOWLI~DGE E N G I N E E R I N G PROBLEM Problem 6 (knowledge engineering) has been addressed in Cheeseman (1984), who considered the problem o f expert systems learning from data. In particular he proposed a method for extracting information from data to form the knowledge base for a probabilistic expert system. A rule acquisition method for a diagnostic expert system has been recently filed for European Patent (Alexander et al., 1986) by Tektronix. The method includes a grammar for acceptable patterns which are automatically converted to rules. The rule acquisition process includes parsing o f an input sentence as it is received and guiding the expert through the sentence creation. The system is implemented in Small Talk and Prolog. 7. USER I N T E R F A C E PROBLEM Problem 7 (user interface) is considered in Simmons (1985) and Taie et al. (1987) who addressed the issues o f graphical and animated representation o f functioning o f devices. See also Richer and Clancey (1985) and Brown et ai. (1981). 8. O P E R A T I N G I M P L E M E N T A T I O N S Several diagnostic expert systems have been developed in industry during the last few years. A review o f the capabilities and limitations o f some o f the completed projects is given to exemplify the theoretical discussion o f the applicable methods given above. ADVISR (Cooper et al., 1987) is a rule-based expert system developed by AAI Corporation, running on IBM PC/AT, working in conjunction was ATLAS test program software, and designed to indicate faults on a Navy A N / U S M - U U G (V) automatic tester. A single-fault assumption is made as well as the assumption about fully-reliable connectivities. ADS (Magliero et al., 1987) was developed by Harris Corporation as part o f the Navy Integrated Diagnostic Support System. ADS integrates several knowledge representation paradigms such as pre-computed fault-trees, design topology, logical parameters historical records, and production rules. Test selection is done by maximizing the "expected" entropy to cost ratio. The system is implemented in ADA. FCMDS (Bursch et al., 1987) is developed by Honeywell Inc., in Lisp. FCMDS uses frame representation for its knowledge base which is subdivided into Causal Model KB and Test KB. The Causal Model includes the design toplogy. The Test Base contains the basic procedural knowledge for performing tests. Test selection is done similarly as in ADS. Test interpretation procedures involve proprietary algorithms to manipulate failure likelihood measures attached to LRUs. This allows for multiple-fault assumption. A P U M A I D (McCown et al., 1987) is developed by Allied-Signal Aerospace Company (Bendix). It has a temporal, event-based description o f the diagnostic target system, The system is viewed as a sequence o f functional events composed o f location and context, e.g. time and causality. A failure model is obtained as an event-based description. The rest o f the system is implemented in a rule-based fashion. The rules describe the relationships among events, components and parameters. FIS (Pipitone, 1986) is developed at the NRL's Center for Applied Research in AI. It is based on the fault model which is a qualitative causal model composed o f a block diagram o f the U U T combined with a set o f causal rules for each block. Processing hypothesized test failures through the fault model produces an "ambiguity" set o f possibly faulty components. A rule-based test cost generation is used to evaluate the variable costs o f the tests. The best test is chosen similarly to the ADS. It is written in Lisp and runs on Sun. 388 Y. Lmov AI-Ferret (Maguire, 1987) is developed at Hughes Aircraft Company. It is written in Interlisp-D and Loops and runs on Xerox 1109 AI workstation. It is basically similar to FIS and it has been successfully applied to diagnose the TOW missile system. The resulting rule base contains 3950 rules while the connectivity model contains over 900 functions (modes). Haidex (Firdman, 1987) is another diagnostic expert system developed at Hughes. It is based on the conceptual model of the normally functioning system and the set o f deviations from the normal function. The inference engine generates a troubleshooting strategy by decomposing the U U T into its subsystems. It is developed in Zetalisp and runs on Symbolics 3670. M Y C I N (Shortlife, 1976) is one o f the first expert diagnostic systems designed at Stanford to recognize bacterial infections in blood samples. It is based on purely rule-based approach and it contains about 700 rules. Each rule has a confidence factor associated with it and the inference engine is provided with an a d h o c computation scheme to combine the factors when using backward chaining. Other M Y C I N and medical applications related papers include Adams (1976), Benbasset et al. (1976), Ben-Bassat et al. (1980), Bjerregard (1976), Blois (1980), Bosyj (1975), Cantazarite et al. (1979), Chandrasekaran (1982), Chandrasekaran et al. (1979, 1980), Charniak (1983), Cooper (1984), Elstein et al. (1978), Flehinger (1975), Gomez et al. (1981), Gorry (1973), Kolodner et al. (1987), Kulikowski (1970, 1980), Lipkin et aL (1985), Miller et al. (1982), Mittal (1980), Mittal et al. (1979), Patil et al. (1981), Patrick et al. (1981), Regia (1982), Regia et al. (1985), Rubin (1975), Szolovitz (1978) and Weiss et al. (1978). Some other expert systems ( A F H R L , 1984) include A R B Y / N D S ( D U C K ) for communications networks troubleshooting, ACE for preventive maintenance o f telephone cables, LES (frame-based with about 50rules) for electronic maintenance, STAMP, I D T (Shubin et al., 1982), CRIB (Hartley, 1984) and C R I T T E R (Kelly et al., 1982). 9. SYSTEM B U I L D I N G T O O L S The core o f an expert system has a knowledge base and an inference engine that operates on the knowledge base. User interface is considered at two different levels: when developing a system, and when deploying it. Some o f the important concepts are summarized below. 9.1. K n o w l e d g e representation There are three important aspects o f knowledge representation which must be available in any diagnostic system building tool. These are: object descriptions, actions, and certainties. The most convenient way to represent objects is by frames which are tabular data structures (records). A frame consists o f slots which are filled with either data about objects or relations to other frames. A built-in inheritance mechanism allows to inherit or override the information from other frames. Actions are used to modify the relevant database. Actions are usually implemented by rules or procedures. The degree or correctness o f data and/or knowledge is usually expressed by means o f belief functions, certainty factors, or probabilities. 9.2. I n f e r e n c e approach The inference approach in a typical diagnostic expert system may be a combination o f forward and backward chaining, hypothetical reasoning, and blackboard mechanism. 9.2. I. Chaining. Backward chaining is a method o f evaluating hypothesized conclusions to see whether they are supported by the evidence. It is usually implemented via i f - t h e n rules, starting with rules that have the hypothesized conclusions as their consequents. The set o f rules is then searched for those in which the antecedents include the previous conclusions. This process (backward chaining) is continued until the hypothesis is proved. If the p r o o f is unachievable, then some other hypothesis may be tried. Forward chaining starts with the present data with is matched with the antecedents until a relevant rule is found. The consequent o f that rule determines the new present data and the process o f matching is repeated until a desired conclusion is reached. Electronic circuit diagnostic expert systems--a survey 389 9.2.2. Hypothetical reasoning. Hypothetical reasoning (truth maintenance) refers to the solution in which hypotheses have to be assumed when initializing the search (e.g. forward or backward chaining.) Nonmonotonic reasoning refers to the ability o f retracting the consequences o f the assumptions which have been found untrue during the search process. Different tools handle nonmonotonic reasoning by using viewpoints, contexts or worlds, or nonchronological backtrack- ing. Hypothetical reasoning literature includes Doyle (1979), and McDermott (1980, 1982). The blackboard mechanism (Hayes-Roth, 1983) refers to a common data structure shared by a group of cooperating expert systems. An agenda often is used to control the development o f the solution on the blackboard. This mechanism is especially useful when several competing solutions are developed in parallel. 9.2.3. Pattern matching. Pattern matching is usually required in two mechanized reasoning instances: when matching rule atecedents to the current knowledge situation to fire the best applicable rule, and when matching partially filled frames to the existing knowledge base to determine the current knowledge. 9.3. Expert system shells A diagnostic expert system development tool is required to have the following capabilities: (1) Knowledge representation: structured rules, certainty factors, frames; (2) Inference engine: forward chaining, backward chaining, backward chaining, blackboard-like, truth maintenance, pattern matching; (3) Developer interface: KB editor, menu, check for consistency, graphics representation o f KB, graphics utilities to build end user interface, debug; and (4) Interface to general-purpose programming language (e.g. C). Unfortunately, none o f the available products in the current market have all o f the above features, although all o f the products have many features in addition to the above list. The only products that come close to our requirements are ART, KEE and Knowledge Craft (see Expert System Shells List). However, the cost o f these tools is in the range o f $10,000-$65,000, besides additional expensive training. 9.4. Diagnostic tools Two commercially available special purpose diagnostic expert system tools have been developed recently, namely, IN-ATE, and AI-Test. We give a short outline o f their characteristics. 9.4.1. I N - A T E . IN-ATE (Cantone et al., 1985) provides an excellent menu-driven syntax for specifying fault diagnosis expert rules. It also allows specification o f the signal flow and uses it when searching for the defective component. In additon it has frames-based knowledge representation and a mechanism to perform probabilistic reasoning. The system does have an interface to C, and it does have capabilities for automated testing the knowledge base consistency. It runs however only on a Macintosh computer. The system does not have a separate electronics theory and measurements related data-base. Therefore, each test point must have all the relevant information. Thus, some duplication of information and difficulties in knowledge acquisition are inevitable. 9.4.2. AI-Test. AI-Test (Ben-Bassat et al., 1987) is developed by Intelligent Electronics and runs on IBM-PC/AT. AI-Test is comprised o f two knowledge bases---the Universal Knowledge Base which contains general information relating to electronics theory, kinds o f measurements (DC, frequency, etc), signal types, etc. and the UUT-specific knowledge base which includes the block diagram o f the U U T and tests descriptions. The inference engine interprets the test results (by updating the model o f beliefs) and chooses the next best test. No mechanism is provided to update the initial failure rates o f the components. Also, the choice o f the appropriate kind o f test at a specific test point must be performed by the user. An AI system should be able to suggest the most informative test description automatically. The user interface has been improved greatly since the last release. 10. C O N C L U S I O N S New circuit pack manufacturing technologies (e.g. surface mount) contribute further to the complexity o f the circuit pack and thus make the testing even more difficult. For example a new CAMWA 18/4---F 390 Y. Lmov approach in electronic design is the Built-In-Self-Test (BIST) approach (Agarwal, 1987). This approach has the positive features o f testing the equipment at its normal operation speed, as well as running the test in parallel on all the devices. Thus a malfunctioning device can in principle declare its faulty condition faster and seemingly reduce the difficulty o f the diagnostic task. 10.I. New challenges As happened before, the new technology has posed new testing challenges. In particular, BIST technology requires separate independent testing o f the built-in test equipment. Failing to test the built-in hardware may result in two kinds o f errors: a correctly functioning device declaring itself as faulty and thus being replaced for the wrong reason (such repeated mistakes will later be propagated to mistakes in the process control) and a misbehaving device declaring itself as being healthy, thus postponing the troubleshooting to later stages and therefore increasing the manu- facturing and maintenance costs. 10.2. Drawbacks o f the rule-based approach Since the success o f MYCIN, the rule-based approach has been implemented several times in circuit pack diagnostics. The mechanisms that proved useful in medical applications were automatically applied in the electronics industry. However, in this industry only part o f the knowledge (general electronics laws) is static, while the rest o f the knowledge changes with every new design and with every new batch o f components. Moreover, the usually available statistical data is not present any more. One the other hand, another kind o f data (connectivity and signal paths) is available. These differences must be recognized and utilized (e.g. IN-ATE and AI-Test) in order to develop a successful expert system. 10.3. Classification and planning problems The diagnostic problem is still far from being resolved and it is currently an area o f active research and development. In particular in the area o f the classification problem there is a lack o f computationally efficient schemes to propagate the results o f tests. A prevailing assumption is the "perfect info" assumption underlying the construction of most o f the diagnostic expert systems. The mechanisms for dealing with partial, unreliable, and contradictory results are mainly based on the Dempster-Shaffer theory. The conditional probabilities (correlation data), which are usually available in medical applications are not generally available in electronic circuit pack diagnostics applications. Thus, the applicability o f the "classical" belief propagating schemes is questionable. This issue requires a separate investigation in light of dealing with structural circuit description in addition to rules. The issue of dealing with noisy data also requires a specialized effort. In the area o f the planning problem there is lack o f mathematically sound basis for the best test selection. Most of the existing systems either do not address the issue o f test planning or use an ad hoc method. Computational efficiency is another issue which must be addressed separately. 10.4. Deep knowledge representation and reasoning Although it is now quite obvious that a purely rule-based approach is not practical, there are not many pragmatic ways to implement a deeper kind o f knowledge besides the connectivity o f the circuit pack. The area o f knowledge representation and reasoning currently receives most of the AI community's attention. Yet it is still unclear to what extent qualitative reasoning and functional knowledge can be used for practical applications. Consequently all o f the existing diagnostic expert systems implementations are using a combination o f rule-based and connectivity knowlege with a mechanism for belief functions manipulations and an ad hoc (entropy vs cost based) best test selection heuristic. Thus, efficiency o f such systems is difficult to assess. 10.5. Learning and user interface The least amount o f work is done in the areas o f learning and user interface. It seems that the most desirable approach to "engineer" knowledge is via a mechanized interview o f the design engineers. Experiments have not been performed, nor have tools been constructed to achieve such goals. Electronic circuit diagnostic expert systems--a survey 391 10.6. More open problems Only one system (AI-Test) has implemented a separate global electronics knowledge base containing generally true facts about electronic circuits behavior, possible tests, etc. However, there is no known technique to match the best test to its proposed location and to its time occurrence. This test matching problem solution could provide an important aid in diagnostic expert system construction. And finally, applications o f new technologies (e.g. neural networks) have yet to be examined. Acknowledgements--The author is grateful to On-Ching Yue and Patricia Wirth for many constructive suggestions that improved the readability of this paper. Special thanks are due to Nancy Perine for her help in collecting the bibliography. A P A R T I A L L I S T O F E X P E R T S Y S T E M S H E L L S 1. ART, Inference Corporation, 5300 W. Century Bird, LA, CA 90045, U.S.A. 2. KEE, Intelli Corp, 1975 E1 Camino Real West, Mountain Views, CA 94040, U.S.A. 3. Knowledge Craft, Carnegie Group, 650 Commerce Court, Station Square, Pittsburgh, PA 15219, U.S.A. 4. Picon, Lisp Machine, 5 Tech Drive, Andover, MA 01810, U.S.A. 5. S. 1. M. 1, Teknoledge, 1850 Embarcadero Rd, P.O. Box 10119, Palo Alto, CA 94303, U.S.A. 6. KES, Software Architecture and Engineering, 1600 Wilson Blvd, Suite 500 Arlington, VA 22209, U.S.A. 7. Nexpert Object Newron Data Corp., 444 High St., Palo Alto, CA 94301, U.S.A. , B I B L I O G R A P H Y Adams, J., A probabilistic model of medical reasoning and MYCIN model. Math. Biosci. 32, 177-186 (1976). Addis, T. R., Towards an "expert" diagnostic system. 1CL Tech. J. 1, 79-105 (1980). Addis, T. R. and R. T. Hartley, A fault finding aid using a content addressable file source. ICL Research and Advanced Development Centre, Technical Report 79/3, Stevenage, U.K. (1979). Ahuja, S., Artificial intelligence environment of the analysis and classification of errors in discrete sequential processes, Ph.D.Dissertation, Univ. Maryland, Baltimore (1985). Aikins, J., Prototypes and production rules: a knowledge representation for computer consultations. Ph.D. Dissertation, Rep. No. STAN_CSD_80-814, Stanford University (1980). Alexander, J., M. Freiling, B. Phillips and S. Messick, Rule acquisition for expert systems. European Patent Application 85114858.5 (22 Nov. 1985). Ali, M. and D. A. Scharnhorst, Knowledge-based avionics for interactive fault assessment. WATTEC 86: 13th A. Energy Conf. Knoxville, Ten. (February 1986). Ali, M. and D. A. Scharnhorst, Sensor-based fault diagnosis in a flight expert system. Proc. IEEE 2nd Conf. Artificial Intelligence Applications, Miami, Fla., (December 1985). Andersen, S. K. and M. Woldbye, Knowledge representations for diagnostics and test planning in the domain of electromyography. 7th European Conf. Artificial Intelligence Proc., Vol. I, pp. 357-368 (1986). Andow, P. K., Real time analysis of process plant alarms using a minicomputer. Comput. chem. Engng. 4, 143-155 (1980). Andow, P. K., Computer based alarm systems. Proc. 4th IEEE Conf. Trends in On-line Computer Control Systems, IEE Publication No. 208, pp. 89-93 (1982). Andow, P. K., Propagation of faults in process plants: A state-of-the-art review. Chemical Process Hazards With Special Reference to Plant Design, 7th Int. Syrup., IChemE Symposium Series No. 58, pp. 225-243 (1980). Apfelbaum, L., An expert system for in-circuit fault diagnosis. IEEE 1985 Proc. Int. Test Conf. (1985). Arabian, J. H., User requirements for a dynamic high speed functional tester (DHSFT). Proc. 9th Automatic Test Electron. Seminar~Exhibit. June (1981). Armstrong, D. B., A deductive method for simulating faults in logic circuits. IEEE Trans. Comput. C22, 464-471 (1975). AFHRL, Artificial intelligence in maintenance. AFHL, USAF Systems Command, T. R. AFHRL-TR-84-25 (1984). Barber, J. S., Private communication. Barber, J. and C. W. Yau, Private communication. Barr, A. and E. Feigenbaum, The Handbook o f Artificial Intelligence. Kaufmann Press, Calif. (1981). Bartlett, S. L., C. Cole and R. Jain, Expert system for visual solder joint inspection. Proc. 3rd Conf. A I Applications, pp. 58-63 (1987). Basil, W. and L. Felkel, Disturbance analysis systems. In Human Detection and Diagnosis o f System Failures (Ed. J. Rasmussen and W. B. Rouse). Plenum Press, New York (1981). Benbasset, J. and A. Schiffmann, An approach to teaching the introduction to clinical medicine. Ann. internal Med. 84(4), 477-481 (1976). Ben-Bassat, M. et aL, Pattern-based interactive diagnosis of multiple disorders---the MEDAS system. IEEE Trans. Pattern Analysis Machine lntell. PAMI2, 148-160 (1980). Ben-Bassat, M., D. Ben-Arie, I. Beniaminy, J. Cheifetz and M. Klinger, A case study with AI-TEST: an expert system for electronic troubleshooting. Proc. AUTOTESTCON '87, pp. 363-370 (1987). Bennett, J. S. and C. R. Hollander, DART: an expert system for computer fault diagnosis. Proc. 7th lnt. Joint Conf. Artificial Intelligence (1981) Bjerregaard, B., J. Holst-Christensen, E. Kalaja, J. Lund.Kristensen, F. T. DeBombal and H. D. Horroeks, Computer-aided diagnosis of the acute abdomen: a system from Leeds used on Copenhagen patients. Proc. Information Processing Work Conf. TC4 (1976). 392 Y. Lxgov Blois Marsden, S., Clinical judgement and computers. N. Engl. J. Med. 303(4), 192-197 (1980). Bosyj, M. A., A diagnostic program for the design of procurement systems. MIT project MIT Technical Report 53 (1975). Breuer, M. A., Functional partitioning and simulation o f digital circuits. IEEE Trans. Comput. C19, 1038-1046 (1970). Breuer, M. A. and M. Abramovici, Fault diagnosis based on effect-cause analysis. Proc 17th Design Automation Conf., San Francisco, CA (June 1980). Breuer, M. and A. Friedman, Diagnosis and Reliable Design o f Digital Systems. Computer Science Press. New York (1976). Brown, A. L., Qualitative knowledge, causal reasoning and the localization of failures. MIT AI Lab Technical Report 362 (1976). Brown, D. C. and B. Chandrasekaran, Design consideration for picture production in a natural graphics systems. Comput. Graphics 15(2), 174-207 (1981). Brown, J. S., Remarks on building expert systems. Proc. 5th Int. Joint Conf. Artificial Intelligence, San Francisco, CA, pp. 1003-1005 (1977). Brown, J. S. and R. R. Burton, Multiple representations o f knowledge for tutorial reasoning. In Representation and Understanding (Ed. D. Bobrow and A. Collins). Academic Press, New York (1975). Brown, J. S. and R. R. Burton, Diagnostic models for procedural bugs in basic mathematical skills. Cognitive Sci. 2, 155-198 (1978). Brown, J. S., R. R. Burton and A. G. Bell, SOPHIE; a sophisticated instructional environment for teaching electronic troubleshooting (an example of AI in CAI). Bolt Beranek & Newman, Inc., Report 2790 (1974). Brown, J. S., R. R. Burton and A. G. Bell, SOPHIE: a setup towards a reactive learning environment. Int. J. Man-Machine Stud. 7, 675-696 (1975). Brown, J. S., A. Collins and G. Harris, Artificial intelligence and learning strategies. In Learning Strategies (Ed. A. O'Neil). Academic Press, New York (1978). Brown, J. S., R. Rubinstein and R. R. Burton, Reactive learning environment for computer assisted electronics instruction. Bolt Beranek & Newman, Inc., Report 3314 (1976). Brown, J. S., R. R. Burton and J. de Kleer, Pedagogical, natural language and knowledge engineering techniques in SOPHIE I, II and Ill. In Intelligent Tutoring Systems (Ed. D. Sleeman and J. S. Brown). Academic Press, New York (1982). Burger, L. and E. Zobor, On-line alarm analysis in the hierarchical control system of the WWR-SM Research factor. Nuclear Power Plant Control and Instrumentation, Vol. 2, pp. 95-107. Vienna. Academic Press, New York (1978). Burns, M. and J. Pearl Causal and diagnostic inferences: a comparison of validity. Organizl Behav. Hum. Perform. 211, 13-26 (1981). Bursch, P., J. Meisner and K. Winegar, A PC based expert diagnostic tool. Proc. A U T O T E S T C O N '87, pp. 73-78 (1987). Cain, D. and E. Zebroski, The conceptual design of a power plant safety panel. Nucl. Engng 25, 40-44 (1980). Cantone, R., Model-based probabilistic reasoning for electronic troubleshooting. Proc. 8th Int. Joint Conf. Artifical Intelligence, Karlsruhe, Germany, August (1983). Cantone, R., W. Lander, M. Marrone and W. Gaynor, INATE/2: interpreting high level fault modes. Automated Reasoning Corp., Sunnyvale, Va. (1984). Cantone, R., W. B. Lander, M. P. Marrone, and W. Gaynor, Automated knowledge acquisition in IN-ATE using component information and connectivity. Sigart Newsletter No. 93 (1985). Catanzarite, V. and A. Greenburg, Neurologist--a computer program for diagnosis in neurology. Proc. 3rd Symp. Computer Applications in Medical Care, IEEE, pp. 64-72 (1979). Chandrasekaran, B., On evaluating AI systems for medical diagnosis. Proc. M E D C O M P 82, Catalog No. 82, CH 1797-0, IEEE, New York, pp. 335-338 (1982). Chandrasekaran, B. and T. Bylander, Functional representations and behaviour composition by consolidation: two aspects of reasoning about devices. Sigart Newsletter No. 93 (1985). Chandrasekaran, B. and S. Mittal, Deep versus compiled knowledge approaches to diagnostic problem-solving. Int. J. Man-Machine Stud. 425-436 (1983). Chandrasekaran, B., F. Gomex, S. Mittal and J. W. Smith. An approach to medical diagnosis based on conceptual structures. Proc. 6th Int. Joint Conf. Artificial Intelligence, pp. 134-142 (1979). Chandrasekaran, B., S. Mittal and J. W. Smith, RADEX--towards a computer-based radiology consultant. In Pattern Recognition in Practice (Ed. E. S. Gelsema and L. N. Kanal), pp. 463-474. North-Holland, Amsterdam (1980). Chandrasekaran, B., S. Mittal and J. W. Smith, Reasoning with uncertain knowledge: the M D X approach. In Proc 1st Ann. Joint Conf. American Medical Information Association (AMIA ), (Ed. D. A. B. Lindberg et al.) pp. 335-339. Masson, New York (1982). Chandrasekaran, B., D. D. Sharma and D. W. Miller, The application of knowledge-based systems to reactor operations. Trans. A m Spc. (1982). Charniak E., The Bayesian basis of common sense medical diagnosis. Proc. Third Natn. Conf. Artificial Intelligence, AAAI, pp. 70-73 (1983). Charniak, E. and D. McDermott, Introduction to Artificial Intelligence. Addison-Wesley, Reading, Mass. (1985). Cheeseman, P., Learning of expert systems from data. Proc. A A A I (1984). Chen, C. C. J. J. Schwermann and G. W. Sturm, Private communication. Chiang, H. Y. P. et al., Comparison of parallel and deductive fault simulation. 1EEE Trans. Comput. C23, ! 132-1138 (1974). Christenson, J. et al., Implementation of an automated analysis system in an operating nuclear power plant. Engng Des. 67, 297-304 (1981). Clancey, W. J., Acquiring, representing, and evaluating a competence model of diagnostic strategy. Technical Report HPP-84-2, Stanford University, Stanford, Calif. (1984). Clancey, W. J., Heuristic classification. Technical Report KSL-85-5, Stanford University, Stanford, Calif. (1985). Clancey, W. J., The epistemology of a rule-based expert system--a framework for explanation. Artificial lntell. 20, 215-251 (1983). Clancey, W. J., Tutoring rules for guiding a case method dialogue. Int. J. Man-Machine Stud. 11, 25-49 (1979). Clancey, W. J. and R. Letsinger, NEOMYCIN: reconfiguring a rule-based expert system for application to teaching. Proc. 7th Int. Joint Conf. Artificial Intelligence, pp. 829-836 (1981). Clocksin, W. and A. Morgan, Qualitative control. European Conf. Artificial Intelligence 86, Brighton, England, 21-25 July (1986). Electronic circuit diagnostic expert systems---a survey 393 Cooper, G., NESTOR: a computer-based medical diagnostic aid that integrates causal and probabilistic knowledge. Ph.D Dissertation, Department of Computer Science, Stanford Univ. Calif. (1984). Cooper, L. and T. O. Cooper, A performance evaluation of a prototype expert system. Proc. A U T O T E S T C O N '87, pp. 55-59 (1987). Cross, S. E., An application of qualitative simulation to expert system plan justification. Sigart Newsletter No. 93 (1985). Cross, S. E., Towards an expert system architecture for flight domain applications. Proc. IEEE 1984 National Aerospace and Electronics Conf., Dayton, Ohio. Vol. 2, pp. 784-788 (1984). Cunningham, P., J. Gleeson, S. Hakiel and M. Wheatley, Diagnostic heuristics and perspectives. In Research and Development o f Expert Systems, VoL 3 (Ed. M. A. Bramer), pp. 242-253 (1987). Davis, R., Amplifying expertise with expert systems. In The A I Business (Eds P. H. Winston and K. Prendergast). MIT Press, Cambridge (1984). Davis, R., Applications of meta-level knowledge to the construction, maintenance and use of large knowledge bases. Ph.D Thesis, Stanford University [STAN-CS-76-552, HPP-76-7] (1976). Davis, R., Diagnosing via causal reasoning: paths of interaction and the locality principal. Proc. AAAI-83, Washington, D.C. (1983). Davis, R., Diagnosis based on description of structure and function. Proc. Am. Associal. Artificial Intell. 82, pp. 137-142 (1982). Davis, R., Expert systems: where are we? and where do we go from here? A I Mag. 3(2), 3-22 (1982a). Davis, R., Diagnosis reasoning based on structure and behavior. MIT AI Lab Memo, No. 739, June (1984). Davis, R., Diagnostic reasoning based on structure and behavior of digital hardware. Computer October, 75-82 (1983). Davis, R., Diagnostic reasoning based on structure and behavior. Artificial lntell. 24, 347-410 (1984). Davis, R., Metarules: reasoning about control. Artificial Intell. 15, 179-222 (1980). Davis, R., Qualitative Reasoning About Physical Systems. MIT Press, Cambridge (1985). Davis, R., Reasoning from first principles in hardware troubleshooting. Int. J. Man-Machine Stud. 17, 45-69 (1983). Davis, R. and H. Shrobe, The hardware troubleshooting group. Sigart Newsletter No. 93 (1985). Davis, R. and H. Shrobe, Representing structure and behavior. Artificial Intell. 24, 347-410 (1984). Davis, R. and H. Shrobe, Representing structure and behavior of digital hardware. IEEE Comput. October, 75-82 (1983). Davis, R., H. Shrobe, W. Hanscher, K. Wiechert, M. Shirley and S. Polit, Diagnosis based on description of structure and function. Proc. Am. Assoc. Artificial Intell. 13%142 (1982). Dempster, A., A generalization of Bayesian inference. J. R. Statist. Sci. Serv. B. 30, 205-247 (1968). Dhir, V. K. et al., Pressurized water reactor (PWR) system and simulation and disturbance analysis for anomalous transients and degraded system conditions. Proc. Winter Simulation Conf., IEEE, New York (1979). Doyle, J., A truth maintenance system. Artificial Intell., 12, 17-34 (1979). Doyle, J., Analysis by propagation of constraints in elementary geometry problem solving. MIT AI Lab Working Paper 108 (1976). Doyle, J., Truth maintenance systems for problem solving. MIT AI Lab. Technical Report 19 (1978). Duda, R., J. G. Gaschnig and P. F. Hart, Model design in the PROSPECTOR consultant system for mineral exploration. In Expert Systems in the Microelectronic Age (Ed. D. Michie), pp. 25-49. Edinburgh University Press, Edinburgh, Scotland (1979). Duda, R. O., P. E. Hart, P. Barrett, J. G. Gaschnig, K. Konolige, R. Reboh and J. Slocum, Development of the prospector consultation system for mineral exploration: final report. Technical Report SRI International, Menlo Park, Calif. (1978). Duda, R., et al., Subjective Bayesian methods for rule-based inference systems. Proc. AFIPS, Washington D.C., pp. 1075-1082 (1976). Dworzak, F. et al., Design and implementation of a computerised system for evaluation of plant status with respect to safety technical regulations. Int. Symp. Nuclear Power Plant Control and Instrumentation, Munich, Paper IAEA-SM- 265/95IAEA (1982). DDI Handbook for Decision Analysis. Decision & Design Inc., McLean, Va. (1973). Earman, L. D., et al., Hearsay-II. Comput. Surveys 12, 2 (1980). Edgar, G. and M. Petty, Location of multiple faults by diagnostic expert systems. SPIE Proc. 485, Applications o f Artifical Intelligence (1984). Edwards, J., Covers and packings in a family of sets. Bull. Am. math. Soc. 68, 494-499 (1962). Eichelberger, E. B.,, Hazard Detection in combinational and sequential switching circuits. I B M J Res. Dev. March (1965). Elstein, A. S., L. Shulman and S. Sprafka, Medical Problem Solving: An Analysis o f Clinical Reasoning. Harvard University Press, Cambridge, Mass. (1978). Erman, L. D., F. Hayes-Roth, V. R. Lesser and D. R. Reddy, The Hearsay-II speech-understanding system: integrating knowledge to resolve uncertainty. A C M Comput. Surveys 12, 213-252 (1980). Erman, L. D. and V. R. Lesser, A multi-level organization for problem-solving using many diverse cooperating sources of knowledge. Proc. 4th Int. Joint Conf. Artificial Intelligence. pp. 483-490 (1975). Fikes, R. E., Deductive retrieval mechanisms for state description models. Stanford Research Institute AI Technical Note 106 (1975). Fink, P. K. and J. C. Lusth, Expert systems for diagnostic expertise in the mechanical and electrical domains. IEEE Trans. Systems Man Cybernet. SMC17, 340-349 (1987). Firdman, E., HAIDEX: tomorrow available today. Through the Looking Glass 2(6), 2-8 (1987). Fitzgerald, M. W. et al., 5ESS T M switching system software: diagnostics. A T & T Tech. J. January (1986). Flehinger, B. and R. Engle, HEME: a self-improving computer program for diagnosis-oriented analysis of hematologic diseases. I B M J. Res. Dev. November, 557-564 0975). Florcik D. and H. Wong, A tester independent automated test preparation process for loaded boards. Proc. 1982 Int. Test. Conf., San Francisco, CA (1982). Forbus, K. D., Interpreting observation of physical system. I E E E Trans. Systems Man Cybernet. SMC17, 350-359 (1987). Forbus, K., Qualitative reasoning about physical processes Proc. 7th HCAI, Madrid, Spain (1981). Forbus, K., Qualitative process theory. MIT Technical Report 789 (1984). 394 Y. LIRoV Fox, M. S. and D. J. Moslow, Maximal consistent interpretations of errorful data in hierarchically modeled domains. Proc. 5th Int. Joint Conf. Artificial Intelligence, Cambridge, Mass. (1977). Fox, M. S., S. Lowenfeld and P. Kleinovsky, Techniques for sensor-based diagnosis. Proc. 8th IJCAI (1983). Freund, T. G., Applying knowledge engineering to TPS development. Proc. IEEE Autotestcon, pp. 381-321 (1983). Frey, T. and R. A. Kisner, Survey of methods for improving operator acceptance of computerized aids. N U R E G CR-2586 (1982). Friedman, L., Extended plausible inference. Proc. 7th Int. Joint Conf. Artificial Intelligence (1981). Frohwerk, R. A., Signature analysis: a new digital field service method. Hewlett-Packard J. May, 22-28 (1977). Fusaoka, A., H. Seki and K. Takahashi, A description and reasoning of plant controllers in temporal logic. Proc. 8th Int. Joint Conf. Artificial Intelligence, Karlsruhe, Germany, pp. 405-408 (1983). Garvey, T. D. et al., An inference technique for integrating knowledge from disparate sources. Proc. 7th Int. Joint Conf. Artificial Intelligence (1981). Genesereth, M. R., Diagnosis using hierarchical design models. Proc. AAAI-82, pp. 278-283 (1982). Genesereth, M. R., The use of design descriptions in automated diagnosis. Artificial Intell. 2,4, 411-436 (1984). Genesereth, M. R., The use of hierarchical design models in the automated diagnosis of computer hardware faults. HPP-81-20, Stanford University Heuristic Programming Project (1981). Gimmy, K. L. and E. Nomme, Automatic diagnosis of multiple alarms for reactor control rooms. Savannah River Lab Report No. DP-MS-8L-91 (1981). Goel, P., Test generation cost analysis and projections. 17th Design Automation Conf. Proc. Washington, D.C. (1980). Gomez, F., Knowledge organization and distribution for diagnosis. IEEE Trans. Systems Man Cybernet. 9, 31-40 (1979). Gomez, F. and B. Chandrasekaran, Knowledge organization and distribution for medical diagnosis. IEEE Trans. System Man Cybernet S M C l l , 34 42 (1981). Gordon, J. and E. Shortliffe, A method for managing evidential reasoning in a hierarchical hypothesis space. Artificial lntell. 26, 323-357 (1985). Gorry, G. A., Computer-assisted clinical decision-making. Meth. Inf. Med. 12, 45 51 (1973). Grillmeyer, O. and A. J. Wilkinson, The design and construction of a rule base and inference engine for test system diagnosis. Int. Test Conf. 1985 Proc., IEEE Computer Society, pp. 857-867 (1985). Guarro, S. and D. Okrent, The logic flowgraph: a new approach to process failure modeling and diagnosis for disturbance analysis applications. U.S.A. nucl. Technol. 67, 348-359 (1984). Guarro, S. and D. Okrent, On the implementation of disturbance analysis systems for detection and diagnosis of safety-related transients. Nuclear Power Plant nucl. Engng Des. 65, 3-16 (1981). Guida, G., Inference based on causal knowledge: deep versus shallow reasoning. Proc. Unicorn Seminar Expert Systems and Optimisation in Process Control, London, December (1985). Gunhold, R. and J. Zettel, An expert system for automated testing of electrical components and circuits. A I and Advanced Computer Technology Conf. Proc., p. 9 (1986). Hamscher, W. and R. Davis, Using structural and functional information in diagnostic design. MIT A1 Lab Memo 707 (1983). Hamscher, W. and R. Davis, Diagnosing circuits with state--an inherently underconstrained problem. Proc. 1984 Conf. American Association for Artificial Intelligence (1984). Hardy, S. and R. Joyce, A basic expert system tool. US Patent 4648066 (3 March 1987). Hartley, R. T., CRIB: computer fault-finding through knowledge engineering. Computer March, 76-83 (1984). Harvey, A. M. and J. Bordley III, Differential Diagnosis. Saunders, Philadelphia, Penn. (1972). Hasling, D. W., W. J. Clancey and G. R. Rennels, Strategic explanations for a diagnostic consultation system. Int. J. Man Machine Stud. 20, 3-19 (1984). Hayball, C., Fault diagnosis in the wave soldering o f printed circuit assemblies. Alvey IKBS Research Theme: Expert Systems, Deep Knowledge, Workshop No. 2, 38-43 (1986). Hayes-Roth, B., The blackboard architecture: a general framework for problem solving? Heuristic Programming Project Report No. HPP-83-30, Stanford University (1983). Hayes-Roth, B., A blackboard model of control. Heuristic Programming Project Report No. HPP-83-83, Stanford University (1983). Hayes-Roth, B. and F. Hayes-Roth, A cognitive model of planning. Cognitive Sci. 7, 275-310 (1979). Hayes-Roth, F., D. Waterman and D. Lenat (Eds) Building Expert Systems. Addison-Wesley, New York (1983). Hayes-Roth, F., D. A. Waterman and D. B. Lenat, Principles o f pattern-directed inference systems. In Pattern-Directed Inference Systems (Ed. D. A. Waterman and F. Hayes-Roth) pp. 576-601. Academic Press, New York (1978). Herbert, M. R . , A review of on-line diagnostic aids for nuclear power plant operators. Nucl. Energy 23, 259-264 (1984). Hudlicka, E. and V. Lesser, Modeling and diagnosing problem-solving system behavior. IEEE Trans. Systems Man and Cybernet. SMC17, 407-419 (1987). Hudlicka, E. and V. R. Lesser, Meta-level control through fault detection and diagnosis. Proc. 1984 Conf. American Association for Artificial Intelligence (1984). Hughes Aircraft Corp., Knowledge based systems (KBS) study for advanced mate systems. HAC Report No. FR80-75-869 (1980). Hyafil, L. and R. L. Rivest, Constructing optimal binary decision trees in NP-complete. lnfo. Process. Lett. 51, 15-17 (1976). Ibarra, O. H. and S. Sahni, Polynomially complete fault detection problems. I E E E Trans. Comput. C24, 242-250 (1976). Johnson, P., A. Duran, F. Hassebroek, J. Moiler and M. Prietula, Expertise and error in diagnostic reasoning. Cognitive Sci. 5, 235-283 (1981). Josephson, J., Explanation and induction. Ph.D. Dissertation, Department of Philosophy, Ohio State Univ. (1982). Josephson, J. R., B. Chandreseharan, J. R. Smith and M. C. Taumer, A mechanism for forming composite explanatory hypotheses. IEEE Trans. Systems Man Cybernet. SMC17, 445-455 (1987). Karp, R., Reducibility among combinatorial problems. In Complexity o f Computer Computations (Eds R. Miller and J. Thatcher), pp. 85-103. Plenum Press, New York (1972). Kelly, V. and L. Steinberg, The C R I T T E R system--analyzing digital circuits by propagating behaviors and specifications. Proc. 1982 Conf. American Association for Artificial Intelligence, pp. 284-289 (1982). Electronic circuit diagnostic expert systems--a survey 395 Kemeny, J. C., The report of the President's Commission on the accident at Three Mile Island. Kluwer, Washington D.C. (1979). Kemper, C. T., J. C. Bellows and P. J. Klinosky, Diagnostic apparatus. US Patent 4644479 (17 February 1987). Kidd, A. L., What do users ask?--Some thoughts on diagnostic advice. In Expert Systems. Warwick University (1985). Kignchi, T., H. Yoshida, H. Motoda and S. Kobayashi, The development of a plant operation guidance system utilizing knowledge engineering technique. J. atom. Energy Soc. Jpn 25, 298-305 (1983). Kim, J., CONVINCE: A CONversational INference Consolidation Engine. Ph.D. Dissertation, University of California, Los Angeles (1983). Kim, J. H. and J. Pearl, CONVINCE: A conversational inference consolidation engine. 1EEE Trans. Systems Man Cybernet. SMCIT, 120-132 (1982). King, J. J., Artificial intelligence techniques for device troubleshooting. Technical Report CSL-82-9, Hewlett-Pnckard (1982). Kitowski, J. and E. Ksiazek, Fuzzy logic applications for failure analysis and diagnosis of a primary circuit of the H T R nuclear power plant. Comput. Phys. Commun. 38, 323-327 (1985). de Kleer, J., Local methods for localizing faults in electronic circuits. MIT AI Lab. Mem. 394 (1976). de Kleer, J., The origin and resolution of ambiguities in casual arguments. Proc. 6th Int. Joint Conf. Artificial Intelligence (1979). de Kleer, J., An assumption-based truth maintenance system. Artificial Intell. 38(1) 11-23 (1986). de Kleer, J., A theory of plans for electronic circuits. MIT AI Lab. Working Paper 144 (1977) de Kleer, J., Causal and teleological reasoning in circuit recognition. MIT AI Lab. Technical Report 529 (1979). de Kleer, J., Extending the ATMS. Artificial Intell. 12(3), 12-34 (1979). de Kleer, J., Local methods for localization of faults in electronic circuits. MIT AI Lab. Memo 394 (1976). de Kleer, J. and J. S. Brown, Mental models of physical mechanisms and their acquisition. In Cognitive Skills and their Acquisition. Edbaum, New York (1980) de Kleer, J. and J. S. Brown, A qualitative physics based on confluences. Artificial Intell. 24, 7-84 (1984). de Kleer, J. and B. Williams, Reasoning about multiple faults. Proc. 5th Nam. Conf. Artificial Intelligence, Philadelphia, pp. 132-139 (1986). de Kleer, J. and G. J. Sussman, Propagation of constraints applied to circuit synthesis. Memo No. 485, MIT (1978). Kochan, S., N. Landis and D. Monson, Computer guided probing techniques. Proc. 1987 Int. Test Conf. San Francisco, CA (1987). Kolodner, J. L. and R. M. Kolodner, Using experience in clinical problem solving: introduction and framework. IEEE Trans. Systems Man and Cybernet. SMCI7, 420-431 (1987). Konolige, K., A deductive model of belief. Proc. 8th Int. Joint Conf. Artificial Intelligence, Karlsrube, West Germany, pp. 377-381 (1983). Konolige, K. and N. J. Nilsson, Multi-agent planning systems. Proc. AAAI-I, Stanford, Calif. pp. 138-142 (1980). Kuipers, B., Qualitative simulation as causal explanation. IEEE Trans. Systems Man Cybernet. SMC17, 432-444 (1987). Kuipers, B., Commonsense reasoning about causality: deriving behavior from structure. Artificial Intell. 24, 15-121 (1984). Kulikowski, C. A., Pattern recognition approach to medical diagnosis. IEEE Trans. Systems Sci. Cybernet. SSC6, 83-89 (1970). Kulikowski, C. A., Artificial intelligence methods and systems for medical consultation. IEEE Trans. Pattern Analysis med. lntell. 2, 464-476 (1980). Lai, K.-W., Functional testing of digital systems. Ph.D. Thesis, Carnegie-Mellon University Department of Computer Science, Technical Report CMU-CS-81-148 (1987). Lee, F. P., Process computer alarm and disturbance analysis: review of the state-of-the-art. Comput. chem. Engng 7, 669-694 (1983). Leitch, R., Towards intelligence control systems. Proc. Unicom Seminar on Expert Systems and Optimisation in Process Control, London, December (1985). Lenat, D. B. BEINGS: knowledge as interacting experts. Proc. 4th Int. Joint Conf. Artificial Intelligence, Tbilisi, U.S.S.R. pp. 126-133. (1975). Lin, J. C. et al., A deterministic methodology for application to a diagnosis oriented disturbance analysis system. Nucl. Engng Des. 72, 225-234 (1982). Lind, M., The use of flow models for plant diagnosis. In Human Detection and Diagnosis o f System Failures (Ed. J. Rasmussen and W. B. Rouse), pp. 411-431. Plenum Press, New York (1981). Lindsay, R. K., B. G. Buchanan, E. A. Feigenbaum and J. Lederberg Applications o f Artificial Intelligence for Organic Chemistry: The Dendral Project. McGraw-Hill, New York (1980). Lipkin, M. and J. D. Hardy, Mechanical correlation of data in differential diagnosis of hematological diseases. J. Am. med. Assoc. 166, 113-125 (1985). Long, W., A program for the management of heart failure. Sigart Newsletter No. 93 0985). Loveland, D. W., Selecting optimal test procedures from incomplete test set. Proc. 1st Int. Syrup. Policy Analysis and Information Science, Duke University, Durham, N.C., pp. 228-235 (1979). MacAloney, B. G., Fault spectrum: an analysis of system level test with proposed solutions. Proc. 1981 Int. Test Conf. (1981). Maclean, C. and P. Wilde, Knowledge-based electronic circuit diagnosis. Proc. Expert Systems 83, Technical Conf. BCS SGES, Cambridge, U.K. (1983). Magliero, A., R. Leong and R. Bethel, ADS-the IDSS adaptive diagnostic system. Proc. AUTOTESTCON '87, pp. 61-64 (1987). Magulre, J., AI-FERRET troubleshooting assistant. Advanced Products Laboratory, Support Systems, Hughes Aircraft Co., Long Beach, Calif. (1987). Martin-Soils, G. A. et al., Fault tree synthesis for design and real time applications. Trans. IChemE 60, 14-25 (1982). Masui, S., J. McDermott and A. Sobel, Decision making in time-critical situations. Proc. 8th Int. Joint Conf. Artificial Intelligence, Karlsruhe, West Germany (1983). Matsumoto, K., T. Sakagnchi and T. Wake, Fault diagnosis of a power system based on a description of the structure and function of the relay system. Expert Systems July, 2-3 (1985). 396 Y. LIROV McCown, P. and D. Lewy, APU M A I D - - a diagnostic expert system using heuristic and causal reasoning. Proc. A U T O T E S T C O N '87, pp. 371-375 (1987). McDermott, D., Circuit design as problem solving. In Artificial Intelligence and Pattern Recognition in Computer Aided Design (Ed. Latombe). North-Holland, Amsterdam (1978). McDermott, D., Non mototonic logic II: Non-Monotonic modal theories. Research Report No. 174 Department of Computer Science, Yale Univ. (1980). McDermott, D. V., Planning and acting. Cognitive Sci., 1, 17-54 (1978). McDermott, J., RI: a rule-based configurer of computer systems. Technical Report CMU-CS-80-119, Carnegie-Mellon University, Pittsburgh (1980). Merry, M., APEX 3: an expert system shell for fault diagnosis. GEC J. Res. 1, 39 (1983). Miller, R., H. Pople and J. Myers, INTRNIST- 1, an experimental computer-based diagnostic consultant for general internal medicine. N. Engl. J. Med. 307, 468-476 (1982). Milne, R., Strategies for diagnosis. IEEE Trans. Systems Man Cybernet. SMCI7, 333 (1987). Milne, R., Artificial intelligence applied to condition health monitoring. Chart. Mech. Engng May (1986). Milne, R., Diagnosing faults through responsibility. Proc. 1st Int. Conf. Applied Artificial Intelligence, Southampton, England (1986). Milne, R., Diagnosing faults through responsibility. A C M Annual Conf. Association o f Computing Machinery, Denver, Col., pp. 88-91 (1985). Milne, R., Fault diagnosis and expert systems. 6th Int. Workshop Expert Systems and their Applications, Avignon, France (1986). Milne, R., Fault diagnosis through responsibility. Proc. 9th Int. Joint Conf. Artificial Intelligence, Los Angelos, pp. 424-427 (1985). Milne, R., Reasoning about structure, behavior and function. Sigart Newsletter No. 93, pp. 4-59 (1985). Milne, R., Using AI in the testing of printed circuit boards. National Aerospace and Electronics Conf. Dayton, Ohio (1984). Milne, R. W., The theory of responsibilities. Sigart Newsletter No. 93 (1985). Mingers, J., Expert systems--experiments with rule induction. J. Op. Res. Soc. 37, 1031-1037 (1986). Minsky, M., A framework for representing knowledge. In The Psychology o f Computer Vision (Ed. P. Winston), pp. 211-217. McGraw-Hill, New York (1975). Mitchell, T., L. Steinberg, R. G. Smith, P. Schooley, V. Kelley and H. Jacobs, Representations for reasoning about digital circuits. Proc. 7th Int. Joint Conf. Artificial Intelligence, pp. 343-344 (1981). Mittal, S., Design of a distributed medical diagnosis and database system. Ph.D. Dissertation, Department of Computer and Information Science, Ohio State Univ. (1980). Mittal, S., B. Chandrasekaran and J. Smith., Overview of M D S - - a system for medical diagnosis. Proc. 3rd Symp. Computer Applications in Medical Care, IEEE, pp. 34-46 (1979). Moore, R., Expert systems in process control: applications experience. Ist Int. Conf. Applied Artificial Intelligence., Southampton, England (1986). Morris, R. and R. Nado, Representing actions with an assumption-based truth maintenance system. Proc. AAAI-86, Philadelphia, Penn. (1986). Mostow, D. J., A problem solver for making advice operational. Proc. AAAI-3, pp. 179-283 (1983). Mullis, R., Expert system for VLSI tester diagnostics. Proc. IEEE Test Conf. (1984). Nadig, H. J., Signature analysis---concepts, examples, and guidelines. Hewlett-Packard J. May, 15-21 (1977). Nau, D. and J. Reggia, Relationship between abductive and deductive inference. Proc. 1st Int. Workshop Expert Database Systems, pp. 500-509 (1984). Nawal, H., V. Lesser and E. Milies, Diagnosis using a formal theory of a signal processing system. IEEE Trans. Systems Man Cybernet. SMCI7, 369-379 (1987). Nelson, W. R., REACTOR: an expert system for diagnosis and treatment of nuclear reactor accidents. Proc. 2nd Conf. American Association for Artificial Intelligence, pp. 296-301 (1982). Nii, H. P. and N. Aiello, AGE (attempt to generalize): a knowledge-based program for building knowledge-based programs. Proc. 6th Int. Joint Conf. Artificial Intelligence, Tokyo, Japan (1979). Nilsson, N. J., Principles o f Artificial Intelligence. Tioga, Palo Alto, Calif. (1980). Patil, R., P. Szolvits and W. Schwartz, Causal understanding of patient illness in Medical diagnosis. Proc. 7th Int. Joint Conf. Artificial Intelligence, Vancouver, Canada (1981). Patrick, E. A. et al., Review of pattern recognition in medical diagnosis and consulting relative to a new system model. IEEE Trans. Systems Man. Cybernet. SMC6, 34-45 (1977). Pau, L. F., An adaptive signal classification procedure: application to aircraft engine monitoring. Pattern Recognition 9, 121-130 (1977). Pau, L. F., Applications of pattern recognition to failure analysis and diagnosis. In Human Detection and Diagnosis o f System Failures (Ed. J. Rasmussen and W. B. Rouse) pp. 429-446. Plenum Press, New York (1981). Pau, L. F., Failure Diagnosis and Performance Modelling. Dekker, New York (1981). Pau, L. F., Failure Diagnosis Systems. North-Holland, Amsterdam (1982). Pau, L. F., Failure diagnosis by an expert system and pattern classification. Pattern Recognition Lett. 2, 419-425 (1984). Pau, L. F., Integrated testing and algorithms for visual inspection of integrated circuits. IEEE Trans. Pattern Analysis Medicine Intell. PAMI5, 602-608 (1983). Pazzani, M. J., Failure driven learning of fault diagnosis heuristics. IEEE Trans. Systems Man Cybernet. SMC17, 380-394 (1987). Pearl, J., Fusion, propagation, and structuring in belief networks. Artificial Intell. 29, 241-288 (1986). Pearl, J., Heuristics: Intelligent Search Strategies for Computer Problem Solving. Addison Wesley, New York (1985). Peng, Y., A formalization of parsimonious covering and probabilistic reason in abductive diagnostic inference. Ph.D. Dissertation, Department of Computer Science Univ. Maryland, Baltimore (1986). Peng, Y. and J. Reggia, A probabilistic causal model for diagnostic problem-solving--part 1: integrating symbolic causal inference with numeric probabilistic inference. IEEE Trans. Systems Man Cybernetics. SMC17, 146-162 (1987). Peng, Y. and J. Reggia, A probabilistic causal model for diagnostic problem-solving, part two: diagnostic strategy. IEEE Trans. Systems Man Cybernet. SMCI7, 395-406. (1987). Electronic circuit diagnostic expert systems---a survey 397 Perkins, W. A. and T. J. Laffey, LES: a general expert system and its applications. SPIE Proc. 485, Applications o f Artificial Intelligence, pp. l 11-114 (1984). Pipitone, F., The FIS electronic troubleshooting system. Computer. July, 68-76 (1986). Poage, J. F. and E. J. McCluskey, Derivation of optimum tests for sequential machines. Proc. 5th A. Symp. Switching Circuit Theory Logic Designs, pp. 95-110 (1964). Pople, H., The formation of composite hypotheses in diagnostic problem solving: an exercise in synthetic reasoning. Proc. 5th Int. Joint Conf. Artificial Intelligence, Cambridge, Mass. (1977). Pople, H., On the mechanization of abductive logic. Proc. 3rd Int. Joint Conf. Artificial Intelligence, pp. 147-152 (1973). Putzolu, G. R. and J. P. Roth, A heuristic algorithm for testing of asynchronous circuits. IEEE Trans. Comput. C20, 639-664 (1971). Pynn, C., Strategies for Electronics Test. McGraw-Hill, New York (1987). Quinlan, J. R., Learning efficient classification procedures and their application to chess end game. In Machine Learning: An Artificial Intelligence Approach (Ed. R. Michalski, J. Carbonnell and T. Mitchell). Springer, New York (1984). Ramsey, J., Diagnosis using automatic test equipment and an artificial intelligence expert system. Masters Thesis, Air Force Institute of Technology (1984). Rasmussen, J. and A. Jense, Mental procedures in real-life tasks: a case study of electronic trouble shooting. Ergonomics 17, 293-307 (1974). Reggia, J., Abductive inference. Proc. Expert Systems in Government Symp., pp. 484-489 (1985). Reggia, J., Computer-assisted medical decision making. In Applications o f Computers in Medicine (Ed. M. Schwartz), pp. 198-213, IEEE Press (1982). Reggia, J. and D. Nau, An abductive non-monotonic logic. Proc. Workshop Non-Monotonic Reasoning, AAAI, pp. 385-395 (1984). Reggia, J. and S. Tuhrim, An overview of methods for computer-assisted medical decision making. In Computer-Assisted Medical Decision Making, Vol. I1 (Ed. J. Reggia and S. Tuhrim), pp. 3-45. Springer, New York (1985). Reggia, J., D. Nau, P. Wang and Y. Peng, A formal model of diagnostic inference. Infor. Sci. 37, 227-285 (1985). Reggia, J., D. Nau and P. Wang, Diagnostic expert systems based on a set covering model. Int. J. Man-Machine Stud. November, 437-460 (1983). Reggia, J., B. Perricone, D. Nau and Y. Peng, Answer justification in abductive expert systems for diagnostic problem solving. IEEE Trans. Biomed. Engng BE32, 263-272 (1985). Reiter, R., A theory of diagnosis from first principles. Department of Computer Science, Univ. Toronto, Toronto, Report ON TR-187/86 (1986). Richer, M. H. and W. J. Clancey, Guidon watch: a graphic interface for browsing and viewing a knowledge-based system. IEEE Comput. Graphics Applic. 5(11), 51-64 (1985). Rieger, C. and M. Grinbert, The declarative representation and procedural simulation of causality in physical mechanisms. Proc. 5th Int. Joint Conf. Artificial Intelligence, pp. 250-255 (1977). Robinson, J. A., A machine-oriented logic based on the resolution principle. J. Assoc. Comput. Machinery 12, 23-41 (1965). Rosenschein, S. J., Plan synthesis: a logical perspective. Proc. 7th Int. Joint Conf. Artificial Intelligence, Vancouver, Canada (1981). Roth, J. P., Computer Logic, Testing, and Verification. Computer Science Press, New York (1980). Roth, J. P., Diagnosis of automata failures: a calculus and a method. I B M J. Res. Dev. October, 278-281 (1966). Roth, J. P., W. G. Bouricius and P. R. Schneider, Programmed algorithm to compute tests to detect and distinguish faults in logic circuits. IEEE Trans. electronic Comput. ECI6 (1967). Roylance, G. L., Qualitative analysis of operational amplifier circuits. MIT Dept. of EF.&CS, MS Thesis proposal, March (1976). Rubin, A., The role of hypotheses in medical diagnosis. In Proc. 4th Int. Joint Conf. Artificial Intelligence, pp. 856--862 (1975). Ryan, P. and A. J. Wilkinson, Knowledge acquisition for ATE diagnosis. IEEE 1985 Proc. Int. Test Conf. pp. 848-856 (1985). Sacerdoti, E. D., A Structure for Plans and Behavior. Elsevier, North-Holland, Amsterdam (1977). Samuel, A., Some studies in machine learning using the game of checkers II. Recent progress. I B M J. Res. Dev. 11,601-617 (1967). Scarl, E. A., J. R. Jamieson and C. I. Delaune, Diagnosis and validation through knowledge of structure and function. IEEE Trans. Systems Man Cybernet. SMCI7, 360-368 (1987). Scarl, E. A., J. R. Jamieson and C. I. Delaune, Process monitoring and fault locations at the Kennedy Space Center. Newsletter No. 93 (1985). Schneider, P. R., On the necessity to examine D-chains in diagnostic test generation--an example. I B M J. Res. Dev. November, 114 (1967). Sembugamoorthy, V. and B. Chandrasekaran, Functional representation of devices and compilation of diagnostic problem solving systems. Cognitive Sci. 21, 54-67 (1985). Seshu, S., On an improved diagnosis program. IEEE Trans. electronic Comput. ECI2, 76-79 (1965). Seshu, S. and D. N. Freeman, The diagnosis of asynchronous sequential switching systems, lEE Trans. electronic Comput. ECll, 459-465 (1962). Sharer, G., A Mathematical Theory o f Evidence. Princeton Univ. Press (1976). Shirley, M. H., Digital test generation from hierarchical models and failure symptoms. Masters Thesis, MIT AI Lab (1983). Shirley, M. and R. Davis, Digital test generation from symptom information. IEEE VLSI Workshop (1983). Shortliffe, E., Computer-Based Medical Consultations: MYCIN. Elsevier, New York (1976). Shortliffe, E., M Y C I N - - a rule-based computer program for advising physicians regarding antimicrobial therapy selection. Stanford Univ. AI Lab., Memo AIM-251 (1974). Shortliffe, E. and B. Buchanan, A model of inexact reasoning in medicine. Math. Biosci. 23, 351-379 (1975). Simmons, F., C. Chee, S. Laughton, L. Wood, M. Purvis and D. Throop, Self explanatory device descriptions. Sigart Newsletter No. 93 (1985). Singhal, K. and J. Vlach, Symbolic analysis of analog and digital circuits. IEEE Trans. Circuits Systems. CAS24, 598-609 (1977). Slagle, J. R. and R. C. T. Lee, Application of game tree searching techniques to sequential pattern recognition. Commun. ACM, 142, 103-110 (1971). 398 Y. LIROV Stallman, R. M. and G. J. Sussman, Forward reasoning and dependency-directed backtracking in a system for computer-aided circuit analysis. Artificial Intell. 9, 135-196 (1977). Stallman, R. M. and G. J. Sussman, Problem solving about electrical circuits. In Artificial Intelligence: An M I T Perspective (Ed. P. H. Winston and R. H. Brown), pp. 33-91. MIT Press (1979). Stanfill, C., MACK, a program which deduces the behaviour of machines from their forms. Sigart Newsletter No. 93 (1985). Stefik, M. J., Planning with constraints. Artificial Intell. 16, 111-140 (1981). Stefik, M. J., Planning and meta-planning. Artificial lntell. 16, 141-169 (1981). Steinberg, L. and V. Kelly, The C R I T T E R system: analyzing digital circuits by propagating behaviors and specifications. Proc. 2nd National Conf. on Artif. Intelligence, Washington D.C., pp. 284-289 (1982). Sussman, G. J., A computational model of skill acquisition. MIT AI Lab Technical Report 297 (1973). Sussman, G. J., Electrical design--a problem for artificial intelligence research. MIT AI Memo 425 (1977). Sussman, G. J., SLICES at the boundary between analysis and synthesis. In Artificial Intelligence and Pattern Recognition in Computer Aided Design (Ed. B. Latombe). North-Holland, Amsterdam (1978). Sussman, G. J. and R. M. Stallman, Heuristic technique in computer-aided circuit analysis. IEEE Trans. Circuit Systems CAS22(11), 24 39 (1975). Swabey, M., Use of deep and shallow knowledge in electronics diagnosis. Proc. Unicom Seminar on Expert Systems and Optimization in Process Control, London (1985). Swanson, D. B. Computer simulation of expert problem solving in medical diagnosis. Ph.D. Dissertation, Univ. Minnesota (1978). Swartout, W. R., Explaining and justifying expert consulting programs. Proc. 7th Int. Joint Conf. Artificial Intelligence, pp. 815~22 (1981). Szolovits, P. and S. Pauker, Categorical and probabilistic reasoning in medical diagnosis. Artificial lntell. 2, 115-144 (1978). Szygenda, S. A. and E. W. Thompson, Modeling and digital simulation for design verification diagnosis. IEEE Trans. Comput. C25, 1242-1253 (1976). Taie, M. R. and S. Srihari, Modeling connections for circuit diagnosis. Proc. 3rd Conf. A1 Applications, pp. 81-86 (1987). Taie, M. R., S. N. Srihari, J. Geller and S. C. Shapiro, Device representation using instantiation rules and structureal templates. Proc. Canadian A I Conf-86, Presses de l'Universit6 du Qu6bec, Montr6al, pp. 124-128 (1986). Taie M. R., J. Geller, S. N. Srihari and S. C. Shapiro, Knowledge based modelling of circuit boards. Reliability and Maintenance Syrup. Proc., pp. 422-427 (1987). Tanaka, T., Representation and analysis of electrical circuits in a deductive system. Proc. 8th Int. Joint. Conf. Artificial Intelligence, West Germany, pp. 263-267 (1983). Tanaka, T., Simulation of thinking process on electronic circuits in natural language I, I1, III. Technology Report of Kyushu Univ., Vol. 44, p. 45 (1971). Tanaka, T., Structural analysis of electrical circuits in a deductive system. In Computer Expert Systems (Ed. L. Bolc). Springer, New York (1985). Tendolkar, N. N. and R. L. Swann, Automated diagnostic methodology for the IBM 3081 processor complex. I B M J. Res. and Dev. 26, 78-88 (t982). Thompson, T. F. and R. M. Wojcik, Methods and apparatus for system fault diagnosis and control. U.S. Patent 4649515 (10 March 1987). Towill, D. R., Automatic testing of control systems---past present and future. J. Inst. electronic Radio Engrs 57(2), 67-80 (1987). Tsiang, S. H. and W. Ulrich, Automatic trouble diagnosis o f complex logic circuits. Bell Syst. Tech. J. 41(4), 17-35 (1962). Tulloss, R. E., Fault dictionary compression: recognizing when a fault may be unambiguously represented by a single failure detection. Proc. 1980 Test Conf. (1980). Tulloss, R. E. et al., The diagnostic organization and retrieval-algorithm system. The Engineer. Summer (1982). Tversky, A. and D. Kahneman, Causal schemata in judgements under uncertainty. In Progress in Social Psychology (Ed. M. Fishbein). Erlbaum, Hillsdale, N.J. (1979). Ulrich, E. G., T. Baker and L. R. Williams, Fault test analysis techniques based on simulation. Proc. 9th Design Automation Workshop, pp. 111-115 (1972). Van Melle, W., A domain independent production-rule system for consultation programs. Proc. 6th Int. Joint Conf. Artificial Intelligence, pp. 923-925 (1979). Vere, S., Planning in time: windows and durations for activities and goals. IEEE Trans. Pattern Analysis Machine Intell. PAMI5, 246-267 (1983). Wang, D. T., An algorithm for the detection of test sets for combinational logic networks. IEEE Trans. Comput. C25, 742-746 (1975). Warren, D. H. D., Generating conditional plans and programs. Proc. A I S B Summer Conf., University of Edinburgh, U.K., pp. 344-354 (1976). Washio, T., M. Kitamura, K. Kotajima and K. Sugiyama, Semantic network approach to automated failure diagnosis in nuclear power plant. Proc. 1985 ANS Int. Topical Meet. Computer Applications for Nuclear Power Plant Operation and Control, Pasco, Wash. (1985). Weiss, S., C. A. Kulikowski, S. Amarel and A. Safir, A model-based method for computer-aided medical decision-making. Artificial lntell. 11, 145-172 (1978). Weiss, S. M. and C. A. Kulikowski, EXPERT: a system for developing consultation models. Proc. 6th lnt. Joint Conf. Artificial Intelligence, Tokyo, Japan, pp. 942-947 (1979). White, B. Y. and J. R. Fredericksen, QUEST: qualitative understanding o f electrical systems troubleshooting. Sigart Newsletter No. 93 (1985). Wilkinson, A. J., Benchmarking an expert system for electronic diagnosis. Proc. A U T O T E S T C O N ' 8 7 , pp. 964-971 (1986). Wilkinson, A. J., A method for test system diagnostics based on the principles of artificial intelligence. Int. Test Conf., 1984, Proc. IEEE, pp. 188-195 (1984). Wilkinson, A. J., MIND: an inside look at an expert system for electronic diagnosis. Design Test Mag. August, 69-77 (1985). Williams, T. L., Isolating multiple faults in NDS. Technical Report 010, Smart Systems Technology, Falls Church, Va. (1982). Williams, T. W. and K. P. Parker, Design for testability--A survey. I E E E Trans. Comput. C31, 9-27 (1982). Winston, P., Artificial Intelligence. Addison-Wesley, New York (1984). Yau, C. W., Private communication (1986). Yau, S. S. and S. C. Yang, Multiple fault detection for combinational logic circuits. IEEE Trans. Comput. C24, 233-242 (1975).