Rule processing method, apparatus, and computer-readable medium to generate valid combinations for selection
First Claim
1. A computer-implemented method, comprising:
- characterizing compatibility between one or more enumerations of one or more products using a Zero-suppressed binary Decision Diagram (ZDD) rule model including one or more Include rules and one or more Exclude rules;
receiving one or more enumerations of a product selected by a user using a graphical interface;
recursively creating a ZDD sub-tree by scanning the one or more Include rules and, for nodes traversed during the scanning, one or more of;
if an index matches one of the one or more enumerations of the product selected by the user or if the index matches one or more valid combinations of one or more enumerations of the product provided to the user, creating a new node in a ZDD sub-tree that includes the index and one or more graphs pointed to by the Then and Else legs of the node;
if a Constant node is encountered, returning the constant;
orreturning one or more graphs pointed to by the Else leg of the node;
determining complete paths through the ZDD sub-tree terminating at a One node to produce potentially valid combinations;
excluding some of the potentially valid combinations by applying the one or more Exclude rules to the potentially valid combinations as each of the potentially valid combinations is produced;
determining the one or more valid combinations of one or more enumerations of the product responsive to the excluding the some of the potentially valid combinations; and
providing the one or more valid combinations as the list of product choices to the user.
5 Assignments
0 Petitions
Accused Products
Abstract
A method of providing, in response to user-selected ones of attributes and/or enumerations thereof, a list of product choices from products whose compatibility is characterized by a ZDD rule model having one or more Include and Exclude ZDDs. The method comprises creating a ZDD sub-tree by scanning the Include ZDDs and keeping paths having the selected enumerations set, determining complete paths through the sub-tree to produce potentially valid combinations, checking the potentially valid combinations against the Exclude ZDDs to exclude invalid combinations, and providing resulting valid combinations. The scanning optionally includes examining nodes of the Include ZDDs or of the sub-tree against Index values of the selected enumerations to create nodes in the sub-tree. Other aspects include an apparatus implementing the method, and a computer-readable medium including program instructions enabling a processing device to perform the method.
-
Citations
10 Claims
-
1. A computer-implemented method, comprising:
-
characterizing compatibility between one or more enumerations of one or more products using a Zero-suppressed binary Decision Diagram (ZDD) rule model including one or more Include rules and one or more Exclude rules; receiving one or more enumerations of a product selected by a user using a graphical interface; recursively creating a ZDD sub-tree by scanning the one or more Include rules and, for nodes traversed during the scanning, one or more of; if an index matches one of the one or more enumerations of the product selected by the user or if the index matches one or more valid combinations of one or more enumerations of the product provided to the user, creating a new node in a ZDD sub-tree that includes the index and one or more graphs pointed to by the Then and Else legs of the node; if a Constant node is encountered, returning the constant;
orreturning one or more graphs pointed to by the Else leg of the node; determining complete paths through the ZDD sub-tree terminating at a One node to produce potentially valid combinations; excluding some of the potentially valid combinations by applying the one or more Exclude rules to the potentially valid combinations as each of the potentially valid combinations is produced; determining the one or more valid combinations of one or more enumerations of the product responsive to the excluding the some of the potentially valid combinations; and providing the one or more valid combinations as the list of product choices to the user. - View Dependent Claims (2, 3, 4)
-
-
5. A system to provide a list of product choices from products whose compatibility is characterized by a Zero-suppressed binary Decision Diagram (ZDD) rule model having one or more Include rules and one or more Exclude rules, the apparatus comprising:
-
an input device to aid a user in selecting, from a list of attributes or enumerations of the products, a particular one or more of the enumerations; a processor to execute instructions that enable the processor to; recursively create a ZDD sub-tree by scanning the Include rules and keeping paths including the selected particular one or more of the enumerations and, for nodes of the Include rules traversed during the scanning, one or more of; if an index matches the selected particular one or more of the enumerations or if the index matches one or more valid ones of potentially valid combinations of a list of product choices provided to the user, creating a new node in a ZDD sub-tree that includes the index and one or more graphs pointed to by the Then and Else legs of the node; if a Constant node is encountered, returning the constant;
orreturning one or more graphs pointed to by the Else leg of the node; determine complete paths through the ZDD sub-tree terminating at a One node to produce potentially valid combinations; and check the potentially valid combinations against the Exclude rules to find valid ones of the potentially valid combinations as each of the potentially valid combinations is produced; and an output device enabled to output the valid ones of the potentially valid combinations as the list of product choices to the user. - View Dependent Claims (6, 7)
-
-
8. A computer-readable medium having a set of instructions stored therein which, when executed by a processing device, causes the processing device to perform procedures comprising:
-
characterizing compatibility between one or more enumerations of one or more products using a Zero-suppressed binary Decision Diagram (ZDD) rule model including one or more Include rules and one or more Exclude rules; receiving one or more enumerations selected by a user using a graphical interface; recursively creating a ZDD sub-tree by scanning the Include rules and, for nodes traversed during the scanning, one or more of; if an index matches one of the one or more enumerations of the product selected by the user or if the index matches one or more valid ones of potentially valid combinations of product choices provided to the user, creating a new node in a ZDD sub-tree that includes the index and one or more graphs pointed to by the Then and Else legs of the node; if a Constant node is encountered, returning the constant;
orreturning one or more graphs pointed to by the Else leg of the node; determining complete paths through the ZDD sub-tree terminating at a One node to produce potentially valid combinations; checking the potentially valid combinations against the Exclude rules to determine valid ones of the potentially valid combinations by excluding ones of the potentially valid combinations that are excluded under the Exclude rules as each of the potentially valid combinations is produced; and providing the valid ones of the potentially valid combinations as the product choices to the user. - View Dependent Claims (9, 10)
-
Specification