Boolean network rule engine
First Claim
1. A system for evaluation of a set of rules based on input data, the system comprising:
- a rules interface for receiving a set of rules from a user, each rule having at least one condition;
a network builder for building a Boolean Network representation of the set of rules in a computing system, the Boolean Network representation including transducers linked by logic gates, each transducer generating a Boolean value based on evaluating an item of input data against a condition of a rule;
wherein said network builder assigns weights to links between transducers and logic gates of the Boolean Network representation for establishing an order in which transducers and logic gates are activated; and
a runtime evaluation engine for receiving input data, detecting changed items of input data, activating links among transducers and logic gates of the Boolean Network representation based on said changed items of input data so as to utilize transducers and logic gates of the Boolean Network representation relevant to rule evaluation outcome, evaluating rules based on the input data and active transducers and logic gates of the Boolean Network representation, and returning results of evaluation of said set of rules;
wherein said runtime evaluation engine activates transducers and logic gates for evaluation based on results of evaluation of items of input data and said weights.
1 Assignment
0 Petitions
Accused Products
Abstract
A Boolean Network rule engine for evaluation of rules is described that comprises: a rules interface for receiving a set of rules, each rule having at least one condition; a network builder for building a Boolean Network representation of the set of rules including transducers linked by logic gates, each transducer generating a Boolean value based on evaluating an item of input data against a condition of a rule; and a runtime evaluation engine for receiving input data, detecting changed items of input data, activating links among transducers and logic gates of the Boolean Network representation based on the changed items of input data so as to utilize transducers and logic gates of the Boolean Network representation relevant to rule evaluation outcome, evaluating rules based on the input data and active transducers and logic gates and returning results of rule evaluation.
53 Citations
37 Claims
-
1. A system for evaluation of a set of rules based on input data, the system comprising:
-
a rules interface for receiving a set of rules from a user, each rule having at least one condition; a network builder for building a Boolean Network representation of the set of rules in a computing system, the Boolean Network representation including transducers linked by logic gates, each transducer generating a Boolean value based on evaluating an item of input data against a condition of a rule;
wherein said network builder assigns weights to links between transducers and logic gates of the Boolean Network representation for establishing an order in which transducers and logic gates are activated; anda runtime evaluation engine for receiving input data, detecting changed items of input data, activating links among transducers and logic gates of the Boolean Network representation based on said changed items of input data so as to utilize transducers and logic gates of the Boolean Network representation relevant to rule evaluation outcome, evaluating rules based on the input data and active transducers and logic gates of the Boolean Network representation, and returning results of evaluation of said set of rules; wherein said runtime evaluation engine activates transducers and logic gates for evaluation based on results of evaluation of items of input data and said weights. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A system for evaluation of a set of rules based on input data, the system comprising:
-
a rules interface for receiving a set of rules from a user, each rule having at least one condition; a network builder for building a Boolean Network representation of the set of rules in a computing system, the Boolean Network representation including transducers linked by logic gates, each transducer generating a Boolean value based on evaluating an item of input data against a condition of a rule; and a runtime evaluation engine for receiving input data, detecting changed items of input data, activating and passivating links among transducers and logic gates of the Boolean Network representation based on said changed items of input data so as to utilize transducers and logic gates of the Boolean Network representation relevant to rule evaluation outcome, evaluating rules based on the input data and active transducers and logic gates of the Boolean Network representation, and returning results of evaluation of said set of rules;
wherein said runtime evaluation engine passivates links based on results of evaluation of items of input data so as to avoid evaluating other items of input data without affect on rule outcome. - View Dependent Claims (14, 15, 16, 17)
-
-
18. A method in a computing system for evaluating a set of rules based on input data, the method comprising:
-
receiving a set of rules from a user, each rule having at least one condition; building a Boolean Network representation of the set of rules in the computing system, the Boolean Network representation including transducers linked by logic gates with each transducer generating a Boolean value based on evaluating an item of input data against a condition of a rule;
wherein said building step includes assigning weightsto links between transducers and logic gates of the Boolean Network representation for establishing an order in which transducers and logic gates are activated; detecting changed items of input data; in response to changed items of input data, activating links among transducers and logic gates of the Boolean Network representation so as to utilize transducers and logic gates of the Boolean Network representation relevant to rule evaluation outcome;
wherein said activating step includes activating transducers and logic gates based on results of evaluation of items of input data and said weights;determining results of evaluation of the set of rules based on the input data using active transducers and logic gates of the Boolean Network representation; and returning said results of evaluation. - View Dependent Claims (19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37)
-
Specification