IP Library › Patent Application 16011617
Patent Application
App. No. 16/011,617

COMPUTER SYSTEM DECISION ENGINE

Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US None
App. No.
16/011,617
Abstract

A decision system comprising a data store storing a set of decisions, a processor, a non-transitory computer readable storage medium storing computer code executable by the processor to receive, from a first service in a runtime environment, a decision request that references a decision from the set of decisions and an decision input for the decision request. The decision system generates a decision tree data structure from the set of decisions, the tree data structure including a plurality of nodes that represent decisions in the set of decisions, data sources referenced by the decisions, and decision rules that specify conditions on data. The tree data structure further represents relationships between the decisions, data sources and decision rules. The decision system uses the decision tree data structure to control fetching of data source instances and to applying decision rules.

Claims (45)

1 . A decision system comprising:

a data store storing a set of decisions;

a processor;

a non-transitory computer readable storage medium storing computer code executable by the processor to, in a runtime environment:

receive, from a first service in the runtime environment, a decision request that references a decision from the set of decisions, the decision defined separately from the computer code;

receive, from the first service, a decision input for the decision request;

generate a decision tree data structure from the set of decisions, the decision tree data structure including a plurality of nodes that represent decisions in the set of decisions, data sources referenced by the decisions, and decision rules that specify conditions on data, and the decision tree data structure further representing relationships between the decisions, data sources and decision rules;

traverse the decision tree data structure to identify a data source to fetch and decision rules to apply;

request an instance of the identified data source from a second service;

determine if a set of data meets a set of conditions specified in the identified decision rules, wherein the set of data comprises data from the instance of the data source;

based on a determination that the set of data meet the set of conditions, return to the first service a decision result that includes an indication that the decision input passed the referenced decision; and

based on a determination that the set of data do not meet the set of conditions, return to the first service a decision result that comprises a failure code.

2 . The decision system of claim 1 , wherein the decision tree data structure comprises a plurality of levels and defines the data sources and variables to be loaded for each level.

3 . The decision system of claim 1 , wherein the decision tree data structure further represents prediction models.

4 . The decision system of claim 3 , wherein the decision tree data structure comprises a plurality of levels and defines the data sources, variables and prediction models to be loaded for each level.

5 . The decision system of claim 1 , wherein the computer code is further executable to use the decision tree data structure to control prefetching of instances of the data sources.

6 . The decision system of claim 1 , wherein the decision tree data structure comprises a plurality of paths from a decision node representing the decision to leaf nodes of the decision tree data structure, each path including at least one failure code.

7 . The decision system of claim 1 , wherein the instance of the data source comprises data from a remote information provider system.

8 . The decision system of claim 1 , wherein the computer code is further executable to:

cross reference arguments required for fetching an instance of said data source with a first set of decision input attributes; and

based on a determination that decision the first set of decision input attributes do not contain the required arguments, request additional decision input attributes from the decision requestor.

9 . The decision system of claim 8 , wherein the decision tree data structure comprises a node representing the data source and includes an attribute schema defining the arguments required to fetch the instance of the data source.

10 . The decision system of claim 1 , wherein the computer code is executable to traverse the decision tree data structure beginning at a node representing the decision through n number of levels of decisions.

11 . The decision system of claim 1 , wherein the computer code is further executable to pre-fetch the instance of the data source for a subdecision of the decision based on a reference to the data source higher in the decision tree data structure than a node that represents the subdecision.

12 . A computer program product comprising a non-transitory computer readable medium storing computer code that is executable by a processor to, in a runtime environment:

receive, from a first service in the runtime environment, a decision request that references a decision from a set of decisions defined separately from the computer code;

receive, from the first service, a decision input for the decision request;

generate a decision tree data structure from the set of decisions, the decision tree data structure including a plurality of nodes that represent decisions in the set of decisions, data sources referenced by the decisions, and decision rules that specify conditions on data, and the decision tree data structure further representing relationships between the decisions, data sources and decision rules;

traverse the decision tree data structure to identify a data source to fetch and decision rules to apply;

request an instance of the identified data source from a second service;

determine if a set of data meets a set of conditions specified in the identified decision rules, wherein the set of data comprises data from the instance of the data source;

based on a determination that the set of data meets the set of conditions, return to the first service a decision result that includes an indication that the decision input passed the referenced decision; and

based on a determination that the set of data does not meet the set of conditions, return to the first service a decision result that comprises a failure code.

13 . The computer program product of claim 12 , wherein the decision tree data structure comprises a plurality of levels and defines the data sources and variables to be loaded for each level.

14 . The computer program product of claim 12 , wherein the decision tree data structure further represents prediction models.

15 . The computer program product of claim 14 , wherein the decision tree data structure comprises a plurality of levels and defines the data sources, variables and prediction models to be loaded for each level.

16 . The computer program product of claim 12 , wherein the computer code is further executable to use the decision tree data structure to control prefetching of instances of the data sources.

17 . The computer program product of claim 12 , wherein the decision tree data structure comprises a plurality of paths from a decision node representing the decision to leaf nodes of the decision tree data structure, each path including at least one failure code.

18 . The computer program product of claim 12 , wherein the instance of the data source comprises data from a remote information provider system.

19 . The computer program product of claim 12 , wherein the computer code is further executable to:

cross reference arguments required for fetching an instance of said data source with a first set of decision input attributes; and

based on a determination that decision the first set of decision input attributes do not contain the required arguments, request additional decision input attributes from the decision requestor.

20 . The computer program product of claim 19 , wherein the decision tree data structure comprises a node representing the data source and includes an attribute schema defining the arguments required to fetch the instance of the data source.

21 . The computer program product of claim 12 , wherein the computer code is executable to traverse the decision tree data structure beginning at a node representing the decision through n number of levels of decisions.

22 . The computer program product of claim 12 , wherein the computer code is further executable to pre-fetch the instance of the data source for a subdecision of the decision based on a reference to the data source higher in the decision tree data structure than a node that represents the subdecision.

Assignments (3)
ASSIGNMENT OF INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Dec 11, 2020
From: GREENSILL TRADING 2 LIMITED
To: CAYMAN PROJECT 2 LIMITED
Reel/Frame 054700/0517 →
SECURITY INTEREST Recorded Feb 20, 2020
From: FAIR IP, LLC
To: GREENSILL TRADING 2 LIMITED
Reel/Frame 051880/0282 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 15, 2019
From: NAUGHTON, RYAN JAMES; MADENIAN, SERGE
To: FAIR IP, LLC.
Reel/Frame 048883/0154 →