A system and method for case-based reasoning

Abstract: A case base system (1) does not need a decision structure such as a rule base as it uses both automatic (46) and interactive steps (47-48) which are carried out in real time to retrieve the most appropriate case. Case filtering (5) is carried out to immediately provide an initial candidate set by elimination of incompatible case records according to received free features. The free features are addressable as such in the case records. A primary processor (6) carries out pattern matching operations (46) correlating feature values and solutions in case records (10) of a candidate set. By doing this, it automatically identifies the most discriminating feature for the candidate set. The primary processor (6) interactively provides feedback (47-48) and receives a value for the most discriminating feature and further reduces the candidate set. The automatic and interactive steps are repeated in cycles until all remaining case records have the same solution (45).

Description: The invention relates to a case base system having a case base comprising case records, a processing means and an interface for interfacing between the external environment and the processing means. The invention relates particularly to the retrieval of a closest case in such a system. In some such case base systems, such as described in US 5,317,677, WO 92/15951 and EP 477490, there is a pre-stored decision structure, alternatively referred to as a rule base, or knowledge means. Such a structure is generally of hierarchial configuration. WO 93/22732, for example, describes how such a decision structure is generated. The rules at the nodes of such a structure are pre-determined so that the decision structure is capable of handling all envisaged problems to be presented to the system before the system is used. The processing means - in one example referred to as an heuristic search unit - controls a search of the case and rule memories for cases and rules which relate to the target problem. For each target problem, it is necessary to search through all levels of the decision structure, at each level prompting input of a feature value from the external environment in order to "move" to the next node. Because such case base systems comprise pre-stored decision structures, they have a large memory requirement and are of necessity quite complex. Further, it is necessary every time to progress through every level of the decision structure, each level causing:- (a) the necessity for the processing means to carry out various processing operations; and (b) the necessity for further feature value inputs to be received from the external environment. Where the target problem is complex, the fact that each level must be processed as outlined in (a) above can result in a relatively long response time of the system. Further, some of the feature values which will be required from the external environment will as outlined in (b) above be difficult or "expensive" to obtain. For example, if the target problem is the location of a fault in an electrical circuit, it will be necessary to carry out complex testing operations to obtain some feature values such as operational characteristics of components within a circuit module. Another case base system of the prior art is described in British Patent Specification No. GB 2,241,093A. In this system, there is a stored causal model database. This database is used in an iterative manner by a processor to determine whether retrieved cases are justifiably relevant to the new problem. It therefore relates primarily to post-case retrieval operations. In PCT Patent Specification No. WO 93/22732, a system is described in which quantitative and qualitative case record data is used to generate knowledge trees comprising child clusters of case bases. Again, it appears that there would be a relatively high processing power requirement and further, a relatively large number of feature value inputs would be required. In document "Les applications des ensembles flous (applications of fuzzy sets), Nimes, France, 2-3 Nov. 1992, 1992, Nanterre Cedex, France, EC2, France, pages 335-342, Salotti S., 'Filtrage flou sur des objets pour raisonner par analogie : le système FLORAN'" a case base system is described where an alternating sequence of fuzzy filtering and data input for the most discriminating features is used. The most discriminating features are determined together with their relative importance and at the same time a candidate set of reference cases to be compared with the given input case is selected. The compatibility between the reference cases in the candidate set and the given input case is determined by fuzzy filtering to arrive at a solution for the given case. The invention is directed towards providing a case base system which has underlying technical processing features which provide for a requirement for fewer feature value inputs from the external environment. Another objective is that the processing means operate to provide a fast response time in retrieval of an appropriate solution. According to the invention, there is provided a case base system comprising a case base of stored case records associated with cases, a processing means, and an interface for communication with an external environment, characterised in that, each case record has a memory structure comprising an address, a set of feature values, and a solution; said processing means comprises means for automatically performing pattern matching operations between feature values and solutions of case records in a candidate set to determine a most discriminating feature for which the values correlate most closely with the solutions; said processing means comprises means for :- interactively transmitting feedback signals requesting the interface to receive a value of said most discriminating feature, receiving a value for said feature in a target problem from the interface, and comparing the received value with values for said feature in the candidate set of case records to generate a next candidate set of reduced size; said processing means comprises means for repeating the automatic pattern matching and the interactive feedback operations to generate a candidate set in which all case records have the same solution, and for retrieving one of said case records and outputting its solution at the interface. In one embodiment, each case record includes at least one feature value addressable as a free feature value, and the processing means comprises a case filter comprising means for:- at the start of a case retrieval process, automatically directing the interface to receive values for free features; and generating an initial candidate set of cases by comparing received free feature values with the stored values in the case records and eliminating case records having incompatible free feature values. Preferably, the case record free feature values are addressable as such by their location in memory cells which are pre-defined for that function. In one embodiment, the processing means comprises means for including a case record in a candidate set if it has a non-specific value for a feature for which a value has been received at the interface, and is otherwise compatible. In another embodiment, the solutions of all case records are at a similar level of granularity whereby they correlate directly with each other in target problems. In a further embodiment, the case records are stored in a memory table structure, in which the record key is associated with the case address, the feature values, or the solution. Preferably, the system comprises a plurality of stored memory table structures, case records being common to a plurality of structures and having different keys in different structures. In another embodiment, the processing means comprises means for setting up registers in memory and for directing storage in the registers of count values representing pattern matching correlations between solutions and feature values. In one embodiment, the correlations are generated according to programs implementing information theoretic statistical algorithms, whereby case records are grouped according to common feature and solution characteristics. According to another aspect, the invention provides an automatic fault diagnosis system comprising a case base system as described above and wherein the interface comprises a bank of automatic sensors and associated controllers. In a further aspect, the invention provides a process for retrieving an appropriate case for a target problem from a case base system comprising a case base of stored case records, associated with cases, a processing means, and an interface for communication with an external environment, each case record having a memory structure comprising an address, a set of feature values, and a solution, the method comprising the steps of:- the processing means automatically performing pattern matching operations between feature values and solutions of case records in a candidate set to determine a most discriminating feature for which the values correlate most closely with the solutions; the processing means interactively providing feedback by transmitting feedback signals requesting the interface to receive a value in the target problem of said most discriminating feature, receiving a value for said feature from the interface, and comparing the received value with values for said feature in the candidate set of case records to generate a next candidate set of reduced size; said processing means repeating the automatic pattern matching and the interactive feedback operations to generate a candidate set in which all case records have the same solution, retrieving one of said case records, and outputting its solution at the interface. Preferably, each case includes at least one feature value addressable as a free feature value, and the processing means initially carries out case filtering of the case base by carrying out the steps of:- automatically directing the interface to receive values for free features; and generating an initial candidate set of cases by comparing received free feature values with the stored values in the case records, and eliminating case records having incompatible free feature values. In one embodiment, the case record free feature values are addressed by reading from memory cells which are pre-defined for that function. Preferably, the interactive feedback step comprises the sub-step of comparing the received value with values in the candidate set of case records and generating a next candidate set of reduced size by including case records in the next candidate set if the case record has a non-specific value for said feature and is otherwise compatible. In one embodiment, the solutions of all case records are at a similar level of granularity whereby they collate directly with each other in target problems. Preferably, the case records are stored in a memory table structure in which the record key is associated with the case address, the feature values or the solution. In this embodiment, there may be a plurality of stored memory hash table structures, case records being common to a plurality of structures and having different keys in different structures. In one embodiment, the automatic pattern matching step comprises the sub-steps of setting up registers in memory and directing storage in the registers of count values representing pattern matching correlations between solutions and feature values. In another embodiment, the correlations are generated according to programs implementing information theoretic statistical algorithms, whereby case records are grouped according to common feature and solution characteristics. The invention will be more clearly understood from the following description from embodiments thereof, given by way of example only with reference to the accompanying drawings on which:- Fig. 1 is a diagrammatic representation of a case base system of the invention; Figs. 2a and 2b are diagrams representing the manner in which case records are stored; Fig. 3 is a diagrammatic representation of a case record table secondary structure used in the pattern matching operations of the system; Fig. 4 is a flowchart illustrating operation of the system in more detail; and Fig. 5 is a diagram illustrating performance of the system in automatic fault diagnosis of a power supply circuit illustrated in Fig. 6. Referring to the drawings, there is shown a case base system of the invention, indicated generally by the reference numeral 1. The system 1 is for providing an appropriate retrieved case for a target problem. The solution of the case may be a full solution which is required for the target problem, or alternatively it may be an approximation to be used for further processing and modification. An example of the target problem for which the system 1 may be used is fault diagnosis in an electronic unit such as a switching mode power supply. Inputs to the system 1 assist in retrieval of the appropriate case and include values of features of the power supply. Some of these features are easily available, whereas others require testing to be determined. The system 1 comprises a case base 2 comprising a case record 10 for each case. Each case record 10 comprises an address, a number of values of features, and a solution. As shown in Fig. 2(b), there are k case records. The system 1 further comprises a set of pattern matching algorithm programs 3, operation of which is described in more detail below. There is a processor 4 comprising a case filter 5 and a primary processor 6. The processor 4 is typically a microprocessor circuit of a workstation operating according to case retrieval programs and the pattern matching algorithm programs 3. In more detail, the processor 4 is that of a Sun SPARC 2™ workstation, the programming language being COMMON LISP. The system 1 also comprises an interface 7 which in this embodiment is a bank of automatic sensors connected in a power supply circuit, and associated sensor controllers. These measure parameters such as voltage, current, temperature, time responses, impedance, and capacitance and are connected to serial ports. The interface 7 also has comprises a display screen. However, it is envisaged that different sensors may be used for capturing data, and indeed the interface 7 may comprise a keyboard for manual data input in response to displayed prompts. An individual case record 10 is represented in Fig. 2a in the manner whereby it is stored in a primary case record structure, shown in Fig. 2b. The primary case record structure is a hash table in which the case address is the key for access to the case record. The case address is stored in one cell of the case record, the cell in this case being two bytes of memory. There is a pre-set group of cells (n + m) storing values for features relevant to the case. The first n cells store values for features which are defined as free features. Free features are those for which values are very easily obtained and are usually available at the start of a case retrieval process. In a circuit test target problem, such features may be the identity of the target circuit, the voltage at which it operates, or the number of output pins. Values for these features are immediately available to the operator. The next m cells store values for expensive features. Expensive features are those for which values are not readily available and for which time and effort is required in the external environment to determine their values. An example of an expensive feature is the response of a particular module in a circuit to a particular type of signal. To determine the value of such an expensive feature, it is necessary to carry out testing operations. It is desirable to minimise the amount of such work required. The last cell in the case record is a solution cell storing the solution relevant to the particular case. An important aspect of the invention is the fact that the solution stored in this cell is at a particular granularity, this granularity being common to the solutions of all of the case records in the case base 2. For example, in a case base system relating to testing, the solutions will all be at the module level, for example. Another, different case base system may have cases in which the solutions all relate to components within modules of systems. Thus, it is envisaged that a number of case base systems of the invention may be required if the level of detail of a retrieved case is to be very specific. In the primary case record structure 11 shown in Fig. 2(b), the case records 10 are stored in a hash table structure in which the key for each record is the case address. These keys are stored in a column 12 of the table 11. The case address keys provide access to the feature cells stored in columns 13 of the structure 11. The solution cells are stored in a column 14. In this embodiment, the primary record case structure has the dimensions of (2 + n + m) x k cells, in which each cell is two bytes. However, the cells may be of any other appropriate size. In addition, the case base 2 stores secondary structures which store case records or parts thereof in a manner suitable for assisting in providing a fast response time in processing. In particular, the primary processor 6 must carry out pattern matching operations which are quite complex and a secondary table 20 shown in Fig. 3 is of major benefit in providing a good response time. The secondary structure 20 has the same structural principles as the primary case structure 11. In this structure, however, the keys are the solutions arranged in a first column 21 of cells, the total number of solutions being p. The cells which are associated with each key in the column 21 include the addresses of cases which have that solution. For example, solution 1 is associated with cases 1, 4 and 25 inter-alia . The primary case record structure 11 is also used for processing in this general manner, the key being case address. Referring now to Fig. 4, operation of the processor 4 to retrieve the most appropriate case is now described in more detail. Before starting processing, the primary processor 6 sets in read/write memory values for various registers. These registers are as follows:- CFR - current feature register, CVR - current value register, RCR - remaining cases register, and RFR - remaining features register. The process for retrieval of appropriate cases is indicated generally by the numeral 40 and in the first step, 41, the case filter 5 determines free features which have been set in construction of the case base 2. These are the features for which values are provided in the relevant cells of the primary case record structure 11. The RFR register is then set to include the identifier of all expensive features. The register RCR is set to include all cases 1 to k. In step 42, the case filter 5 directs the interface 7 to receive inputs of values for the identified free features. This involves activating the monitoring ports for reception of values from the sensors. In step 43, the case filter 5 automatically generates an initial candidate set of case records 10 by eliminating those case records 10 which are incompatible with the received free feature values. In doing this, the case filter 5 includes in the candidate set case records 10 which are not specific in some free feature value cells. For example, if case record 9 does not include any value in the cell 3 (relating to the second free feature) it is included in the initial candidate set, provided it is compatible in other ways. In other words, the initial candidate set includes all case records which could still possibly relate to the target problem. After generation of the initial candidate set in step 43, the case filter 5 sets the RCR register to include the identifiers of all cases of the candidate set. As the processing continues, the number of identifiers in the RCR register decreases. After generation of the initial candidate set in step 43, the primary processor 6 takes over and it determines in the decision step 44 if the case records of the initial candidate set all have the same solution. If so, this is the desired solution for the target problem and one of the cases is retrieved and the solution is outputted at the interface 7 in step 45. Once the solution has been outputted, it may be used in any desired way by the operator. For example, it may be used for further modification automatically, or it may be used as the basis for "manual" target problem solving work. If there are a number of solutions in the candidate set, in step 46 the primary processor 6 carries out automatic pattern matching operations to determine the most discriminating feature of the candidate set. These steps are carried out automatically without user interaction. The basis of the pattern matching operations is to correlate feature values of the case records in the candidate set with their solutions and to determine which feature appears to affect the solution most. To do this, the primary processor 6 uses information theoretic criteria algorithm programs retrieved from the storage device 3. Let |D i | represent the number of cases with solution or diagnosis D i . Then the expected information content is given by :- Assume there is testing of the feature f∈F and this feature has possible values V={v l ,...,v n }. Then V partitions a candidate set C into n groups G of cases, g l ,...,g n ; where g i contains those cases that have value v i for feature f. Let G i contain |D i j | cases with diagnosis D j , that is |D i j | instances of class D j . The expected information for f as a root is computed by determining the feature information content of f E(f) as follows:- The weight of the i th branch is the proportion of cases in C that belong to g i . The information gained from using f, or the discriminatory power of f, is given by the equation :- These pattern matching operations to identify the most discriminating feature are implemented by COMMON LISP programs 3. This language was chosen as it is effective at performing list operations and generalised pattern matching functions. These algorithms represent information theoretic criteria to determine the feature with the most discriminating power, whereby case records are grouped as described above according to common feature and solution characteristics. However, it will be appreciated that any other type of algorithm may be used. The important point is that pattern matching operations of a desired nature are carried out to correlate the feature values with solutions of case records in the candidate set in order to determine the most discriminating feature. It is also important that these operations are carried out automatically by the primary processor 6. In step 47, the interface 7 receives a value for the most discriminating feature. Generally, some work will be required of equipment in the interface 7 under automatic control of the system 1 to determine such a value. In step 48, the primary processor generates a next candidate set, using similar operations to those which are carried out in step 43. The exception being that cells n + 1 to 1 + n + m, which relate to expensive features are used. When the most discriminating feature at any stage is identified, the register CFR is set to this feature and the register CVR is set to the value of this feature after it has been received. When the next candidate set is generated in step 48, the register RCR is updated as appropriate. The automatic pattern matching operation 46 and the interactive operations 47 and 48 are repeated in cycles until all case records of the candidate set have the same solution, in which case this solution is outputted as indicated by the step 45. The following is a set of sample screen displays for a case base system of the invention, in which signals representing expensive features are received from an operator. This example is chosen because feedback is displayed and inputs keyed into the system - and may therefore be represented by way of the following screened displays. Selecting function test failure cases: Retrieved 14 >(INPUT-FILTER-1 LOCAL-PS-1 DRIVER&PS-1 CONTROL-CCT-1 CLOCK-GEN-1 CLOCK-GEN=2 CLOCK-GEN-3 DRIVER&PS-2 DRIVER&PS-3 XFMR-1 XFMR-2 XFMR-3 OUTPUT-RECT-1 OUTPUT-RECT-1) What is the value for N2? G What is the value for N3? G What is the value for N10? G What is the value for N7? G What is the value for N8? G What is the value for N5? G O.K...... Selecting candidate modules: Retrieved 2 (CLOCK-GEN-1 CLOCK-GEN-2) Validation: The fault is in CLOCK-GENERATOR if N6 is B or N6 is G. It will be appreciated that in the invention there is no need for pre-stored decision trees or rule bases. The invention is therefore a radical departure from the established convention that decision structures such as hierarchial decision trees are necessary. By virtue of the particular memory structures for the case base and of the combined automatic and interactive operation of the processor 4, the system 1 operates in real time to provide the appropriate solution. The response time is generally quicker than for prior case base systems and further, there generally is a need for fewer expensive feature values to be inputted. For example, in a case base system which has a stored decision structure, each layer of that structure must be processed in turn. If such a structure has, say, seven levels, it could be that the third and sixth levels are not essential to retrieve the appropriate solution. In the invention, the values for these two levels would not be requested. One reason is that the system initially reduces the candidate set by reception of all free features. By doing this, the invention provides a very simple method for using all free features at an early stage, thus creating the smallest possible initial candidate set and possibly eliminating the need for an expensive feature value input down-stream. The number of required expensive feature values is also reduced because the system operates according to the particular target problem at any one stage and not according to pre-stored rules generated in a general manner to be of assistance for a wider variety of target problems. It has been found that the system of the invention is particularly useful for automatic diagnosis of faults, in which inputs are often captured automatically by sensors. Any reduction in the required number of expensive feature value inputs in fault diagnosis and is of major benefit in view of the complex analysis operations required to obtain such values. Fig. 5 represents a performance comparison between a system of the invention and an expert system of the prior art which uses a pre-stored decision structure. The systems were used to diagnose faults in a power supply circuit 50 shown in Fig. 6. The horizontal axis represents a number of feature value inputs, the vertical axis representing the faults. For each fault, the upper bar indicates the number of feature value inputs required for the prior art system, while the lower bar indicates the number for the system of the invention. While it is difficult to quantify performance of a case base system, these results do demonstrate that power inputs are generally required. In overview, only 83% of the inputs required by the prior art system were required by the system of the invention in these tests. It will also be appreciated that the case base system of the invention 1 is extremely simple as simple data storage techniques are used in the case base and relatively simple processing operations are carried out. The most complex operations are the pattern matching operation and these are simplified by use of the various registers and the case record structures. The invention is not limited to the embodiments hereinbefore described, but may be varied in construction and detail. For example, it is envisaged that different types of pattern matching operations may be used, the important point being that they determine the most discriminating feature of the candidate set and are carried out automatically. It is also envisaged that the case base include additional secondary table structures for retrieval of data.

Claims: A case base system (1) comprising a case base (2) of stored case records (10) associated with cases, a processing means (4), and an interface (7) for communication with an external environment, characterised in that, each case record (10) has a memory structure comprising an address (12), a set of feature values (13), and a solution (14); said processing means (4) comprises means for automatically performing pattern matching operations between feature values and solutions of case records in a candidate set to determine a most discriminating feature for which the values correlate most closely with the solutions; said processing means comprises means for :- interactively transmitting feedback signals requesting the interface (7) to receive a value of said most discriminating feature (47); receiving a value for said feature in a target problem from the interface, and comparing the received value with values for said feature in the candidate set of case records to generate a next candidate (48) set of reduced size; said processing means comprises means for repeating the automatic pattern matching (46) and the interactive feedback operations to generate a candidate set in which all case records have the same solution (44), and for retrieving one of said case records and outputting its solution at the interface (45). A case base system as claimed in claim 1, wherein each case record includes at least one feature value addressable as a free feature value, and the processing means comprises a case filter (5) comprising means for:- at the start of a case retrieval process, automatically directing the interface to receive values for free features (42); and generating an initial candidate set of cases (43) by comparing received free feature values with the stored values in the case records and eliminating case records having incompatible free feature values. A case base system as claimed in claim 2, wherein the case record free feature values are addressable as such by their location in memory cells which are pre-defined for that function. A case base system as claimed in any preceding claim, wherein the processing means comprises means for including a case record in a candidate set if it has a non-specific value for a feature for which a value has been received at the interface, and is otherwise compatible. A case base system as claimed in any preceding claim, wherein the solutions of all case records are at a similar level of granularity whereby they correlate directly with each other in target problems. A case base system as claimed in any proceeding claim, wherein the case records are stored in a memory table structure, in which the record key is associated with the case address (12), the feature values (13), or the solution (14). A case base system as claimed in claim 6, comprising a plurality of stored memory table structures, case records being common to a plurality of structures and having different keys in different structures. A case base system as claimed in any preceding claim, wherein the processing means comprises means for setting up registers in memory and for directing storage in the registers of count values representing pattern matching correlations between solutions and feature values. A case base system as claimed in claim 8, wherein the correlations are generated according to programs implementing information theoretic statistical algorithms, whereby case records are grouped according to common feature and solution characteristics. An automatic fault diagnosis system comprising a case base system as claimed in any preceding claim and wherein the interface comprises a bank of automatic sensors and associated controllers. A process for retrieving an appropriate case for a target problem from a case base system (1) comprising a case base (2) of stored case records (10), associated with cases, a processing means (4), and an interface (7) for communication with an external environment, each case record (10) having a memory structure comprising an address (12), a set of feature values (13), and a solution (14), the method comprising the steps of:- the processing means (4) automatically performing pattern matching operations between feature values and solutions of case records in a candidate set to determine a most discriminating feature for which the values correlate most closely with the solutions; the processing means interactively providing feedback by transmitting feedback signals requesting the interface (7) to receive a value in the target problem of said most discriminating feature (47), receiving a value for said feature from the interface, and comparing the received value with values for said feature in the candidate set of case records to generate a next candidate (48) set of reduced size; said processing means repeating the automatic pattern matching (46) and the interactive feedback operations to generate a candidate set in which all case records have the same solution (44), retrieving one of said case records, and outputting its solution at the interface (45). A process as claimed in claim 11, wherein each case record includes at least one feature value addressable as a free feature value, and the processing means initially carries out case filtering of the case base by carrying out the steps of:- automatically directing the interface to receive values for free features; and generating an initial candidate set of cases by comparing received free feature values with the stored values in the case records, and eliminating case records having incompatible free feature values. A process as claimed in claim 12, wherein the case record free feature values are addressed by reading from memory cells which are pre-defined for that function. A process as claimed in claims 11 or 12, wherein the interactive feedback step comprises the sub-step of comparing the received value with values in the candidate set of case records and generating a next candidate set of reduced size by including case records in the next candidate set if the case record has a non-specific value for said feature and is otherwise compatible. A process as claimed in any of claims 11 to 14, wherein the solutions of all case records are at a similar level of granularity whereby they collate directly with each other in target problems. A process as claimed in any of claims 11 to 15, wherein the case records are stored in a memory table structure in which the record key is associated with the case address, the feature values or the solution. A process as claimed in any of claims 11 to 16, wherein there are a plurality of stored memory hash table structures, case records being common to a plurality of structures and having different keys in different structures. A process as claimed in any of claims 11 to 17, wherein the automatic pattern matching step comprises the sub-steps of setting up registers in memory and directing storage in the registers of count values representing pattern matching correlations between solutions and feature values. A process as claimed in claim 18, wherein the correlations are generated according to programs implementing information theoretic statistical algorithms, whereby case records are grouped according to common feature and solution characteristics.

Inventors: CUNNINGHAM PADRAIG, SMYTH BARRY, CUNNINGHAM, PADRAIG, SMYTH, BARRY
Applicants: HITACHI EUROP LTD, TRINITY COLLEGE DUBLIN, HITACHI EUROPE LIMITED, THE PROVOST FELLOWS AND SCHOLARS OF THE COLLEGE OF THE HOLY AND UNDIVIDED TRINITY OF QUEEN ELIZABETH NEAR DUBLIN
Application year: 1995
Main classification: G06F9
IPC codes: G06N5