US2020175403A1PendingUtilityA1

Systems and methods for expediting rule-based data processing

Assignee: CAPITAL ONE SERVICES LLCPriority: Sep 1, 2017Filed: Feb 5, 2020Published: Jun 4, 2020
Est. expirySep 1, 2037(~11.1 yrs left)· nominal 20-yr term from priority
G06F 16/9027G06N 5/046G06Q 40/025G06Q 40/03G06N 20/00
57
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

A system includes one or more memory devices storing instructions, and one or more processors configured to execute the instructions to perform steps of a method for generating a data tree structure for expediting rule-based decision-making. The system may receive a rules file having a plurality of rules, where each rule has one or more conditions and one or more actions. The system may generate a plurality of condition frequency counts that represent the total number of rules having a condition of a particular unique condition type. The system may then generate a tree structure based on the plurality of rules and the plurality of condition frequency counts, where the tree structure includes a root node and one or more node branches, where each node branch includes a first-level node and zero or more second-level nodes that each include a node condition and zero or more node actions.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
         1 . A system for generating a data tree structure for expediting rule-based decision-making, the system comprising:
 one or more processors; and   a memory in communication with the one or more processors and storing instructions that, when executed by the one or more processors, are configured to cause the system to:
 receive a rules file comprising a plurality of rules, each rule of the plurality of rules comprising one or more conditions and one or more actions, wherein each condition is associated with a condition type; 
 generate a plurality of condition frequency counts, each condition frequency count (i) being associated with a respective unique condition type and (ii) indicating a total number of rules having a condition associated with the respective unique condition type; 
 generate, based on the plurality of rules and the plurality of condition frequency counts, the data tree structure comprising a root node and one or more node branches, each node branch comprising a respective first-level node and one or more respective second-level nodes, each respective node of a given node branch having a respective first shared node condition, and at least some of the first-level nodes and second-level nodes being associated with a node action; and 
 provide the data tree structure for rule-based decision-making. 
   
     
     
         2 . The system of  claim 1 , wherein generating the data tree structure further comprises generating, for a first node branch of the one or more node branches based on the plurality of rules and the plurality of condition frequency counts, one or more node sub-branches, each node sub-branch comprising a second-level node of the respective one or more second-level nodes and respective one or more third-level nodes, each of the one or more respective second-level nodes and the one or more respective third-level nodes of a given node sub-branch having the respective first shared node condition and a respective second shared node condition, and at least some of the second-level nodes and third-level nodes being associated with a node action. 
     
     
         3 . The system of  claim 1 , wherein at least one first-level node is formed from a single rule of the plurality of rules. 
     
     
         4 . The system of  claim 1 , wherein at least one first-level node is formed from two or more rules of the plurality of rules. 
     
     
         5 . The system of  claim 1 , wherein the data tree structure is a hierarchy of singly linked nodes. 
     
     
         6 . The system of  claim 1 , wherein the condition types comprise one or more of line-of-business in, tier in, and version. 
     
     
         7 . The system of  claim 1 , wherein the instructions, when executed by the one or more processors, are configured to further cause the system to:
 receive an input request comprising one or more input conditions;   based on the one or more input conditions, traverse each first-level node of the one or more node branches;   determine a subset of the first-level nodes having conditions that are satisfied by one or more input conditions of the input request;   traverse to each second-level node of the one or more node branches that is linked to a node of the subset of the first-level nodes, bypassing each second-level node of the one or more node branches that is not linked to a node of the subset of the first-level nodes; and   execute one or more node actions associated with at least some of the traversed nodes.   
     
     
         8 . The system of  claim 7 , wherein the instructions, when executed by the one or more processors, are configured to further cause the system to:
 identify a sub-group of traversed nodes, wherein each traversed node of the sub-group has a condition that is met by the one or more input conditions of the input request; and   execute the one or more node actions associated with at least some traversed nodes of the sub-group of traversed nodes.   
     
     
         9 . The system of  claim 8 , wherein:
 one or more of the node actions have a respective associated priority, and   the instructions, when executed by the one or more processors, are configured to further cause the system to:
 responsive to determining that two or more of the node actions associated with the sub-group conflict with one another, prioritize execution of the two or more conflicting node actions based on their respective associated priorities. 
   
     
     
         10 . The system of  claim 1 , wherein generating the data tree structure comprises:
 generating a root node;   prioritizing the condition types based on a magnitude of each condition type's respective frequency count;   processing a first first-rule condition of a first rule by generating a first child node to the root node, the first first-rule condition having a condition type of the highest priority and the first child node having the first first-rule condition;   processing one or more first-rule conditions of the first rule in order of their condition type priority by, for each first-rule condition, creating a first-rule child node including the first-rule condition, where the first-rule child node is a child node of a previously created first-rule node, and for the last processed condition, incorporating one or more actions into the last created first-rule child node; and   processing a second rule by:
 responsive to determining that a first second-rule condition is not included in the first child node to the root node, generating a second child node to the root node incorporating the first second-rule condition, wherein the first second-rule condition has a condition type of the highest priority; and 
 responsive to determining that the first second-rule condition is included in the first child node to the root node and that a child node of the first child node to the root node does not include a second second-rule condition, creating a second-rule child node including the second-rule condition, the second-rule child node being a child of the first child node to the root node. 
   
     
     
         11 . A computer-implemented method for generating a data tree structure to be used for expediting rule-based decision-making, the method comprising:
 receiving a rules file comprising a plurality of rules, each rule of the plurality of rules comprising one or more conditions and one or more actions, wherein each condition is associated with a condition type;   generating a plurality of condition frequency counts, each condition frequency count (i) being associated with a respective unique condition type and (ii) indicating a total number of rules having a condition associated with the respective unique condition type;   generating, based on the plurality of rules and the plurality of condition frequency counts, the data tree structure comprising a root node and one or more node branches, each node branch comprising a respective first-level node and one or more respective second-level nodes, each of the first-level nodes and the one or more second-level nodes of a given node branch having a respective first shared node condition, and at least some of the first-level nodes and second-level nodes being associated with a node action; and   providing the data tree structure for rule-based decision-making.   
     
     
         12 . The method of  claim 11 , wherein generating the data tree structure comprises generating, for a first node branch of the one or more node branches and based on the plurality of rules and the plurality of condition frequency counts, one or more node sub-branches, each node sub-branch comprising a second-level node of the respective one or more second-level nodes and one or more respective third-level nodes, each of the one or more respective second-level nodes and the one or more respective third-level nodes of a given node sub-branch having the respective first shared node condition and a respective second shared node condition, and at least some of the second-level nodes and third-level nodes being associated with a node action. 
     
     
         13 . The method of  claim 11  further comprising:
 receiving an input request comprising one or more input conditions; 
 based on the input conditions, traversing each first-level node of the one or more node branches; 
 determining a subset of the first-level nodes having conditions that are satisfied by one or more input conditions of the input request; 
 traversing to each second-level node of the one or more node branches that is linked to a node of the subset of the first-level nodes, bypassing each second-level node of the one or more node branches that is not linked to a node of the subset of the first-level nodes; and 
 executing one or more node actions associated with at least some of the traversed nodes. 
 
     
     
         14 . The method of  claim 11  further comprising:
 identifying a sub-group of traversed nodes, wherein each traversed node of the sub-group includes a condition that is met by the one or more input conditions of the input request; and 
 executing the one or more node actions associated with at least some traversed nodes of the sub-group of traversed nodes. 
 
     
     
         15 . The method of  claim 11 , wherein at least one first-level node is formed from one rule. 
     
     
         16 . The method of  claim 11 , wherein at least one first-level node is formed from two rules. 
     
     
         17 . A non-transitory computer-readable medium storing instructions for generating a data tree structure to be used for expediting rule-based decision-making that, when executed by one or more processors, cause a system to:
 receive a rules file comprising a plurality of rules, each rule of the plurality of rules comprising one or more conditions and one or more actions, wherein each condition is associated with a condition type;   generate a plurality of condition frequency counts, each frequency count (i) being associated with a respective unique condition type and (ii) indicating a total number of rules having a condition associated with the respective unique condition type;   generate, based on the plurality of rules and the plurality of condition frequency counts, the data tree structure comprising a root node and one or more node branches, each node branch comprising a respective first-level node and one or more respective second-level nodes, each of the respective first-level nodes and the one or more respective second-level nodes of a given node branch having a respective first shared node condition, and at least some of the respective first-level nodes and respective second-level nodes being associated with a node action; and   provide the data tree structure for rule-based decision-making.   
     
     
         18 . The non-transitory computer-readable medium of  claim 17 , wherein the data tree structure is a hierarchy of singly linked nodes. 
     
     
         19 . The non-transitory computer-readable medium of  claim 17 , wherein condition types comprise one or more of line-of-business in, tier in, and version. 
     
     
         20 . The non-transitory computer-readable medium of  claim 17 , wherein the instructions, when executed by the one or more processors, further cause the system to:
 receive an input request comprising one or more input conditions;   based on the one or more input conditions, traverse each first-level node of the one or more node branches;   determine a subset of the first-level nodes having conditions that are satisfied by one or more input conditions of the input request;   traverse to each second-level node of the one or more node branches that is linked to a node of the subset of the first-level nodes, bypassing each second-level node of the one or more node branches that is not linked to a node of the subset of the first-level nodes; and   execute one or more node actions associated with at least some of the traversed nodes.

Join the waitlist — get patent alerts

Track US2020175403A1 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.