Matrix controlled expert system producible from examples
First Claim
Patent Images
1. An expert system for providing responses, actions or inquires in response to a set of conditions comprising:
- a set of goal variables representative of said responses and said actions;
a set of variables representative of said conditions;
a matrix of learning coefficients providing a matrix value for each combination of one from a set of resultant variables and one from a set of primary variables, said set of resultant variables at least including a set of goal variables representative of said responses and said actions and said set of primary variables at least including a set of varaibles representative of said conditions;
an external interface for receiving said conditions to establish known primary variables and outputting said responses, actions or inquiries; and
an inference engine including;
means for computing likely values of said resultant variables from known primary variables in accordance with said matrix of learning coefficients,means for determining whether said likely value is a final determination, said likely value being a final determination when said likely value would be unchanged regardless of the value of the primary variables whose values are not known;
means for determining a useful condition which will contribute to making a final determination of a resultant variable whose value has not been finally determined; and
means for causing said external interface to output responses or actions in accordance with the finally determine values of said goal variables and to output an inquiry making for said useful condition.
0 Assignments
0 Petitions
Accused Products
Abstract
An expert system in which an inference engine is controlled by a matrix of learning coefficients and a method for generating a matrix controlled expert system from examples. The inference engine determines likely values and final determinations for resultant variables in the matrix, the variables being representative of responses or actions. The inference engine also determines an input variable which will contribute to making a final determination of a resultant variable. The matrix may be generated by training examples and/or rules and it may be modified dynamically by additional examples as the system operates.
-
Citations
36 Claims
-
1. An expert system for providing responses, actions or inquires in response to a set of conditions comprising:
-
a set of goal variables representative of said responses and said actions; a set of variables representative of said conditions; a matrix of learning coefficients providing a matrix value for each combination of one from a set of resultant variables and one from a set of primary variables, said set of resultant variables at least including a set of goal variables representative of said responses and said actions and said set of primary variables at least including a set of varaibles representative of said conditions; an external interface for receiving said conditions to establish known primary variables and outputting said responses, actions or inquiries; and an inference engine including; means for computing likely values of said resultant variables from known primary variables in accordance with said matrix of learning coefficients, means for determining whether said likely value is a final determination, said likely value being a final determination when said likely value would be unchanged regardless of the value of the primary variables whose values are not known; means for determining a useful condition which will contribute to making a final determination of a resultant variable whose value has not been finally determined; and means for causing said external interface to output responses or actions in accordance with the finally determine values of said goal variables and to output an inquiry making for said useful condition. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A method for generating and operating an expert system comprising the steps of:
-
inputting into said expert system a set of training examples each including values for a plurality of conditions with corresponding values for the responses or actions which should be produced in response to said condition values; generating a matrix of learning coefficients within said expert system corresponding to said set of training examples, said matrix of learning coefficients having a matrix value for each combination of one from a set of resultant variables and one from a set of primary variables, said set of resultant variables at least including a set of variables corresponding to said responses and said actions and said set of primary variables at least including a set of variables representative of said conditions; inputting known values for a set of conditions into said expert system; and determining the value of a resultant variable by combining said known values for a set of conditions with the matrix values associated with said resultant variable; and outputting responses or actions depending on the value of the corresponding resultant variable. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23)
-
-
24. An inference engine for use in an expert system controlled by a matrix of learning coefficients having a matrix value for each combination of one from a set of resultant variables and one from a set of primary variables, said set of primary variables at least including a set of input variables, said inference engine comprising:
-
means for calculating a likely value of a resultant variable from known values of primary variables and the matrix values associated with said resultant variable; means for determining whether said likely value is a final determination, said likely value being a final determination when said likely value would be unchanged regardless of the value of the primary variables whose values are not known; and means for determinig an input variable which will contribute to making a final determination of a resultant variable whose value has not been finally determined. - View Dependent Claims (25, 26, 27)
-
-
28. A learning process for operating a general purpose computer having a knowledge base including a matrix of learning coefficients, which includes a matrix value for each combination of one of a set of resultant variables and one of a set of primary variables, to enhance said matrix, comprising the steps of:
-
(a) inputting a set of examples, each example including values for at least one primary variable and values for at least one resultant variable; (b) randomly selecting one of said examples; (c) testing, for each resultant variable which is provided a value in said example, matrix values in a temporary matrix of learning coefficients associated with said resultant variable to determine whether the matrix values combine with the primary variable values of the example to determine the proper value of said resultant variable as provided by the example; (d) replacing the matrix values associated with a resultant variable in said matrix of learning coefficients with the matrix values for said resultant variable from said temporary matrix of learning coefficients when said temporary matrix values have determined the correct value for said resultant variable for a greater number of examples than had been correctly determined by the present matrix of learning coefficients; (e) modifying the temporary matrix values associated with a resultant variable in the temporary matrix of learning coefficients when said temporary matrix values determine an incorrect response for the examples; and (f) repeating steps b-e at least a predetermined number of times. - View Dependent Claims (29, 30, 31, 32, 33, 34)
-
-
35. A learning process for operating a general purpose computer having a knowledge base, including a matrix of learning coefficients which includes a matrix value for each combination of one of a set of resultant variables and one of a set of primary variables to enhance said matrix comprising the steps of:
-
(a) providing an example including values for at least one primary variable and values for at least one resultant variable; (b) testing, for each resultant variable which is provided a value in said example, matrix values in a temporary matrix of learning coefficients associated with said resultant variable to determine whether the matrix values combine with the primary variable values of the example to determine the proper value of said resultant variable as provided by the example; (c) replacing the matrix values associated with a resultant variable in said matrix of learning coefficients with the matrix values for said resultant variable from said temporary matrix of learning coefficients when said temporary matrix values have determined the correct value for said resultant variable for a greater number of examples than had been correctly determined by the present matrix of learning coefficients; (d) modifying the temporary matrix values associated with a resultant variable in the temporary matrix of learning coefficients when said temporary matrix values determine an incorrect response for the example; and (e) repeating steps b-d at least a predetermined number of times. - View Dependent Claims (36)
-
Specification