VLSI hardware implemented rule-based expert system apparatus and method
First Claim
1. A hardware-implemented rule-based expert system apparatus suitable for performing high speed inferencing based upon a rule set for an application domain, comprising:
- working memory means for storing therein facts pertaining to the application domain;
rule memory means for storing therein the rule set for the application domain, comprised of a series of instructions each defining a condition or an action;
logic means;
a first communications bus for communicatively connecting said working memory means to said logic means;
a second communications bus for communicatively connecting said rule memory means to said logic means;
said logic means comprising means for successively executing the instructions in said rule memory means obtained via said second communications bus, with reference to the stored facts in said working memory means obtained via said first communications bus, to thereby deduce new facts at high speed, and for storing the deduced new facts in said memory means;
host computer means communicatively connected to said working memory means, for providing the facts pertaining to the application domain to said working memory means and for accepting the deduced new facts from said working memory means; and
wherein each of the instructions of said rule set includes an operator, a condition/action flag, and a pair of operands; and
wherein said logic means includes an instruction decoder for testing said condition/action flag to determine whether the instruction is a condition or an action;
means operable if the instruction is a condition for comparing the operands in accordance with the logical operation specified by the operator to generate a logic result; and
means operable if the instruction is an action for performing the action specified by the operator on the operands.
3 Assignments
0 Petitions
Accused Products
Abstract
The hardware-implemented rule-based expert system of this invention is suitable for performing high speed inferencing in artificial intelligence (AI) applications, and is characterized by being domain independent so that it can be applied to a variety of different application domains. The expert system includes a working memory in which, at the beginning of an inferencing operation, is stored known information or facts pertaining to the application domain. Additionally, a rule memory is provided for storing a rule set for the application domain. The rule set is comprised of a series of instructions, each defining a condition or an action. Instructions are successively loaded from the rule memory into via a first data bus. The logic unit successively executes the instructions in working memory with reference to the stored facts in working memory to thereby deduce new facts. The logic unit is coupled to working memory via a second data bus. During the inferencing operation, as new facts are deduced, they are stored in working memory and may be used for the execution of subsequent instructions. Upon the completion of the inferencing operation, an input/output interface transfers the facts stored in working memory to an output device.
25 Citations
47 Claims
-
1. A hardware-implemented rule-based expert system apparatus suitable for performing high speed inferencing based upon a rule set for an application domain, comprising:
-
working memory means for storing therein facts pertaining to the application domain; rule memory means for storing therein the rule set for the application domain, comprised of a series of instructions each defining a condition or an action; logic means; a first communications bus for communicatively connecting said working memory means to said logic means; a second communications bus for communicatively connecting said rule memory means to said logic means; said logic means comprising means for successively executing the instructions in said rule memory means obtained via said second communications bus, with reference to the stored facts in said working memory means obtained via said first communications bus, to thereby deduce new facts at high speed, and for storing the deduced new facts in said memory means; host computer means communicatively connected to said working memory means, for providing the facts pertaining to the application domain to said working memory means and for accepting the deduced new facts from said working memory means; and wherein each of the instructions of said rule set includes an operator, a condition/action flag, and a pair of operands; and
wherein said logic means includes an instruction decoder for testing said condition/action flag to determine whether the instruction is a condition or an action;
means operable if the instruction is a condition for comparing the operands in accordance with the logical operation specified by the operator to generate a logic result; and
means operable if the instruction is an action for performing the action specified by the operator on the operands. - View Dependent Claims (2, 3, 4)
-
-
5. A hardware-implemented rule-based expert system apparatus suitable for performing high speed inferencing based upon a rule set for an application domain, comprising:
-
working memory means for storing therein facts pertaining to the application domain; rule memory means for storing therein the rule set for the application domain, comprised of a series of instructions each defining a condition or an action; logic means; a first communications bus for communicatively connecting said working memory means to said logic means; a second communications bus for communicatively connecting said rule memory means to said logic means; said logic means comprising means for successively executing the instructions in said rule memory means obtained via said second communications bus, with reference to the stored facts in said working memory means obtained via said first communications bus, to thereby deduce new facts at high speed, and for storing the deduced new facts in said memory means; host computer means communicatively connected to said working memory means, for providing the facts pertaining to the application domain to said working memory means and for accepting the deduced new facts from said working memory means; and wherein at least one of said instructions of each rule represents a condition to be satisfied by the facts of a given problem and including; (i) an operation code defining a logical operation to be performed; (ii) a first operand defining a first value to be compared by said logical operation; and (iii) a second operand defining the address in said working memory containing a second value to be compared by said logical operation.
-
-
6. A hardware-implemented rule-based expert system apparatus suitable for performing high speed inferencing based upon a rule set for an application domain, comprising:
-
working memory means for storing therein facts pertaining to the application domain; rule memory means for storing therein the rule set for the application domain, comprised of a series of instructions each defining a condition or an action; logic means; a first communications bus for communicatively connecting said working memory means to said logic means; a second communications bus for communicatively connecting said rule memory means to said logic means; said logic means comprising means for successively executing the instructions in said rule memory means obtained via said second communications bus, with reference to the stored facts in said working memory means obtained via said first communications bus, to thereby deduce new facts at high speed, and for storing the deduced new facts in said memory means; host computer means communicatively connected to said working memory means, for providing the facts pertaining to the application domain to said working memory means and for accepting the deduced new facts from said working memory means; and wherein said rule set comprises a series of instructions in successive memory addresses beginning at one end of said rule memory means, and additionally including means for storing a rule index in successive memory addresses beginning at the opposite end of said rule memory means, the rule index comprising a series of memory addresses defining the beginning memory address of each rule of said rule set.
-
-
7. A hardware-implemented rule-based expert system apparatus suitable for performing high speed inferencing based upon a rule set for an application domain, comprising:
-
working memory means for storing therein facts pertaining to the application domain; rule memory means for storing therein the rule set for the application domain, comprised of a series of instructions each defining a condition or an action; logic means; a first communications bus for communicatively connecting said working memory means to said logic means; a second communications bus for communicatively connecting said rule memory means to said logic means; said logic means comprising means for successively executing the instructions in said rule memory means obtained via said second communications bus, with reference to the stored facts in said working memory means obtained via said first communications bus, to thereby deduce new facts at high speed, and for storing the deduced new facts in said memory means; host computer means communicatively connected to said working memory means, for providing the facts pertaining to the application domain to said working memory means and for accepting the deduced new facts from said working memory means; and wherein at least one of said instructions of each rule represents an action to be performed if all of the conditions of the rule are satisfied, and including; (i) an operation code defining the action to be performed; and (ii) a first operand defining a value for a fact, and (iii) a second operand defining the address in said working memory means where the value defined in the first operand is to be stored. - View Dependent Claims (8, 9, 10, 11)
-
-
12. A hardware-implemented rule-based expert system apparatus suitable for performing high speed inferencing based upon a rule set for an application domain, comprising:
-
working memory means for storing therein facts pertaining to the application domain; rule memory means for storing therein the rule set for the application domain, comprised of a series of instructions each defining a condition or an action; logic means; a first communications bus for communicatively connecting said working memory means to said logic means; a second communications bus for communicatively connecting said rule memory means to said logic means; said logic means comprising means for successively executing the instructions in said rule memory means obtained via said second communications bus, with reference to the stored facts in said working memory means obtained via said first communications bus, to thereby deduce new facts at high speed; and wherein at least one of said instructions of each rule represents an action to be performed if all of the conditions of the rule are satisfied, and including; (i) an operation code defining the action to be performed; and (ii) a first operand defining a value for a fact, and (iii) a second operand defining the address in said working memory where the value defined in the first operand is to be stored.
-
-
13. A hardware-implemented rule-based expert system apparatus suitable for performing high speed inferencing based upon a rule set for an application domain, comprising:
-
working memory means for storing therein facts pertaining to the application domain; rule memory means for storing therein the rule set for the application domain, comprised of a series of instructions each defining a condition or an action; logic means; a first communications bus for communicatively connecting said working memory means to said logic means; a second communications bus for communicatively connecting said rule memory means to said logic means; said logic means comprising means for successively executing the instructions in said rule memory means obtained via said second communications bus, with reference to the stored facts in said working memory means obtained via said first communications bus, to thereby deduce new facts at high speed; and wherein said rule set is stored as a series of instructions in successive memory addresses beginning at one end of said rule memory means, and additionally includes means for storing a rule index in successive memory addresses beginning at the opposite end of said rule memory means, the rule index comprising a series of memory addresses defining the beginning memory address of each rule of said rule set.
-
-
14. A hardware-implemented rule-based expert system apparatus suitable for performing high speed inferencing based upon a rule set for an application domain, comprising:
-
working memory means for storing therein facts pertaining to the application domain; rule memory means for storing therein the rule set for the application domain, comprised of a series of instructions each defining a condition or an action; logic means; a first bidirectional communications bus for communicatively connecting said working memory means and said logic means; a second unidirectional communications bus for communicatively connecting said rule memory means to said logic means; said logic means comprising means for successively executing the instructions in said rule memory means obtained via said second communications bus, with reference to the stored facts in said working memory means obtained via said first communications bus, to thereby deduce new facts at high speed, for storing the deduced new facts in said working memory means; and an input-output interface means, and a bidirectional input-output interface bus communicatively connecting said working memory means and said input-output interface means, for storing in said working memory from an external system, the facts pertaining to the application domain and for transferring the deduced new facts stored in said working memory to an external system; and wherein at least one of said instructions of each rule represents a condition to be satisfied by the facts of a given problem and including; (i) an operation code defining a logical operation be performed; (ii) a first operand defining a first value to be compared by said logical operation; and (iii) a second operand defining the address in said working memory a second value to be compared by said logical operation.
-
-
15. A hardware-implemented rule-based expert system apparatus suitable for performing high speed inferencing based upon a rule set for an application domain, comprising:
-
working memory means for storing therein facts pertaining to the application domain; rule memory means for storing therein the rule set for the application domain, comprised of a series of instructions each defining a condition or an action; logic means; a first communications bus for communicatively connecting said working memory means to said logic means; a second communications bus for communicatively connecting said rule memory means to said logic means; said logic means comprising means for successively executing the instructions in said rule memory means obtained via said second communications bus, with reference to the stored facts in said working memory means obtained via said first communications bus, to thereby deduce new facts at high speed; and wherein at least one of said instructions of each rule represent a condition to be satisfied by the facts of a given problem and including; (i) an operation code defining a logical operation to be performed; (ii) a first operand defining a first value to be compared by said logical operation; and (iii) a second operand defining the address in said working memory containing a second value to be compared by said logical operation. - View Dependent Claims (16, 17, 18, 19, 20, 21)
-
-
22. A hardware-implemented rule-based expert system apparatus suitable for performing high speed inferencing based upon a rule set for an application domain, comprising:
-
working memory means for storing therein facts pertaining to the application domain; rule memory means for storing therein the rule set for the application domain, comprised of a series of instructions each defining a condition or an action; logic means; a first bidirectional communications bus for communicatively connecting said working memory means and said logic means; a second unidirectional communications bus for communicatively connecting said rule memory means to said logic means; said logic means comprising means for successively executing the instructions in said rule memory means obtained via said second communications bus, with reference to the stored facts in said working memory means obtained via said first communications bus, to thereby deduce new facts at high speed, for storing the deduced new facts in said working memory means; an input-output interface means, and a bidirectional input-output interface bus communicatively connecting said working memory means and said input-output interface means, for storing in said working memory from an external system, the facts pertaining to the application domain and for transferring the deduced new facts stored in said working memory to an external system; and wherein at least one of said instructions of each rule represents an action to be performed if all of the conditions of the rule are satisfied, and including; (i) an operation code defining the action to be performed; and (ii) a first operand defining a value for a fact, and (iii) a second operand defining an address in said working memory means where the value defined in the first operand is to be stored.
-
-
23. A hardware-implemented rule-based expert system apparatus suitable for performing high speed inferencing based upon a rule set for an application domain, comprising:
-
working memory means for storing therein facts pertaining to the application domain; rule memory means for storing therein the rule set for the application domain, comprised of a series of instructions each defining a condition or an action; logic means; a first bidirectional communications bus for communicatively connecting said working memory means and said logic means; a second unidirectional communications bus for communicatively connecting said rule memory means to said logic means; said logic means comprising means for successively executing the instructions in said rule memory means obtained via said second communications bus, with reference to the stored facts in said working memory means obtained via said first communications bus, to thereby deduce new facts at high speed, for storing the deduced new facts in said working memory means; and an input-output interface means, and a bidirectional input-output interface bus communicatively connecting said working memory means and said input-output interface means, for storing in said working memory from an external system, the facts pertaining to the application domain and for transferring the deduced new facts storing in said working memory to an external system; and wherein said rule set is stored as a series of instructions in successive memory addresses beginning at one end of said rule memory means, and additionally includes means for storing a rule index in successive memory addresses beginning at the opposite end of said rule memory means, the rule index comprising a series of memory addresses defining the beginning memory address of each rule of said rule set.
-
-
24. A hardware-implemented rule-based expert system apparatus suitable for performing high speed inferencing based upon a rule set for an application domain, comprising:
-
working memory means for storing therein facts pertaining to the application domain; rule memory means for storing therein the rule set for the application domain, comprised of a series of instructions each defining a condition or an action; logic means; a first bidirectional communications bus for communicatively connecting said working memory means and said logic means; a second unidirectional communications bus for communicatively connecting said rule memory means to said logic means; said logic means comprising means for successively executing the instructions in said rule memory means obtained via said second communications bus, with reference to the stored facts in said working memory means obtained via said first communications bus, to thereby deduce new facts at high speed, for storing the deduced new facts in said working memory means; an input-output interface means, and a bidirectional input-output interface bus communicatively connecting said working memory means and said input-output interface means, for storing in said working memory from an external system, the facts pertaining to the application domain and for transferring the deduced new facts storing in said working memory to an external system; and wherein each of the instructions of said rule set includes an operator, a condition/action flag, and a pair of operands; and
wherein said logic means includes an instruction decoder for testing said condition/action flag to determine whether the instruction is a condition or an action;
means operable if the instruction is a condition for comparing the operands in accordance with the logical operation specified by the operator to generate a logic result; and
means operable if the instruction is an action for performing the action specified by the operator on the operands. - View Dependent Claims (25, 26, 27, 28, 29, 30, 31, 32)
-
-
33. A hardware-implemented rule-based expert system apparatus suitable for performing high speed inferencing based upon a rule set for an application domain, comprising:
-
logic means; working memory means for storing therein facts pertaining to the application domain; rule memory means for storing therein the rule set for the application domain, comprised of a series of instructions each defining a condition or an action each of the instructions of said rule set including an operator, a condition/action flag, and a pair of operands; a first communications bus for communicatively connecting said working memory means to said logic means; and a second communications bus for communicatively connecting said rule memory means to said logic means; said logic means comprising means for success executing the instructions in said rule memory means obtained via said second communications bus, with reference to the stored facts in said working memory means obtained via said first communications bus, to thereby deduce new facts at high speed;
said logic means further comprising an instruction decoder for testing said condition/action flag to determine whether the instruction is a condition or an action;
means operable if the instruction is a condition for comparing the operands in accordance with the logical operation specified by the operator to generate a logic result; and
means operable if the instruction is an action for performing the action specified by the operator on the operands. - View Dependent Claims (34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47)
-
Specification