IP Library Granted Patent US 11,288,601
Granted Patent B2
US 11,288,601 · App. 16/360,118 · Granted Mar 29, 2022

Self-learning selection of information-analysis runtimes

Inventors: Ritesh Kumar Gupta (Hyderabad, IN); Namit Kabra (Hyderabad, IN); Eric Allen Jacobson (Arlington, MA); Scott Louis Brokaw (Groton, MA); Jo Arao Ramos (Grapevine, TX)
Assignee: International Business Machines Corporation
G06N20/20G06K9/6256G06N5/025G06N5/04G06K9/6259
View Patent ↗
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 11,288,601
App. No.
16/360,118
Granted
Mar 29, 2022
Kind
B2
Abstract

A self-learning computer-based system has access to multiple runtime modules that are each capable of performing a particular algorithm. Each runtime module implements the algorithm with different code or runs in a different runtime environment. The system responds to a request to run the algorithm by selecting the runtime module or runtime environment that the system predicts will provide the most desirable results based on parameters like accuracy, performance, cost, resource-efficiency, or policy compliance. The system learns how to make such predictions through training sessions conducted by a machine-learning component. This training teaches the system that previous module selections produced certain types of results in the presence of certain conditions. After determining whether similar conditions currently exist, the system uses rules inferred from the training sessions to select the runtime module most likely to produce desired results.

Claims (74)

1. A self-learning information-analysis system comprising a processor, a memory coupled to the processor, and a computer-readable hardware storage device coupled to the processor, the storage device containing program code configured to be run by the processor via the memory to implement a method for self-learning selection of information-analysis runtimes, the method comprising:

the system receiving a request to perform an algorithm, where the system has access to a plurality of runtime modules that are each designed to perform the algorithm;

the system identifying a set of influencing factors capable of influencing the system's selection of an optimal runtime module, from the plurality of runtime modules, to perform the requested algorithm;

the system predicting outcomes that would be produced by running, in response to the request, each module of the plurality of runtime modules,

where the system has been trained to predict the outcomes by a machine-learning component that infers future outcomes from a record of previous outcomes produced by running any of the plurality of runtime modules in a presence of at least one factor of the set of influencing factors;

the system selecting an optimal runtime module of the plurality of runtime modules as a function of the predicting; and

the system initiating steps that direct the optimal runtime module to perform the algorithm.

2. The system of claim 1 ,

where at least two of the plurality of runtime modules are configured to run in different runtime environments, and

where the optimal runtime module is selected as a function of a runtime environment in which each module of the plurality of runtime modules is configured to run.

3. The system of claim 1 ,

where each factor of the set of influencing factors identifies a value selected from the group consisting of:

value of extrinsic factors that identify current conditions that are external to the system and that are external to the platform on which the system is implemented,

values of operating conditions that identify current characteristics of one or more components of the platform on which the system is implemented, and

dataset characteristics that characterize a dataset upon which the algorithm is to be performed.

4. The system of claim 1 , further comprising:

the system receiving feedback about the system's selection of the optimal runtime module,

where the feedback is used, by the machine-learning component, to further train the system to more accurately predict future outcomes produced by running the optimal runtime module.

5. The system of claim 1 , further comprising:

the system requesting and receiving authorization for the system to initiate steps that direct the optimal runtime module to perform the algorithm,

where the authorization is used, by the machine-learning component, to further train the system to more accurately predict future outcomes produced by running the optimal runtime module.

6. The system of claim 1 ,

where the selecting is performed as a further function of selection criteria selected from the group consisting of: resource efficiency, cost, accuracy, performance, security, privacy, data-pipeline priority, policy compliance, and conformance to conventions and standards.

7. The system of claim 6 ,

where at least one criterion of the selection criteria is assigned a weighting that alters a degree of influence of the one criterion upon the selection, relative to degrees of influence upon the selection of other criteria of the selection criteria.

8. A method for self-learning selection of information-analysis runtimes, the method comprising:

a self-learning information-analysis system receiving a request to perform an algorithm, where the system has access to a plurality of runtime modules that are each designed to perform the algorithm;

the system identifying a set of influencing factors capable of influencing the system's selection of an optimal runtime module, from the plurality of runtime modules, to perform the requested algorithm;

the system predicting outcomes that would be produced by running, in response to the request, each module of the plurality of runtime modules,

where the system has been trained to predict the outcomes by a machine-learning component that infers future outcomes from a record of previous outcomes produced by running any of the plurality of runtime modules in a presence of at least one factor of the set of influencing factors;

the system selecting an optimal runtime module of the plurality of runtime modules as a function of the predicting; and

the system initiating steps that direct the optimal runtime module to perform the algorithm.

9. The method of claim 8 ,

where at least two of the plurality of runtime modules are configured to run in different runtime environments, and

where the optimal runtime module is selected as a function of a runtime environment in which each module of the plurality of runtime modules is configured to run.

10. The method of claim 8 ,

where each factor of the set of influencing factors identifies a value selected from the group consisting of:

value of extrinsic factors that identify current conditions that are external to the system and that are external to the platform on which the system is implemented,

values of operating conditions that identify current characteristics of one or more components of the platform on which the system is implemented, and

dataset characteristics that characterize a dataset upon which the algorithm is to be performed.

11. The method of claim 8 , further comprising:

the system receiving feedback about the system's selection of the optimal runtime module,

where the feedback is used, by the machine-learning component, to further train the system to more accurately predict future outcomes produced by running the optimal runtime module.

12. The method of claim 8 , further comprising:

the system requesting and receiving authorization for the system to initiate steps that direct the optimal runtime module to perform the algorithm,

where the authorization is used, by the machine-learning component, to further train the system to more accurately predict future outcomes produced by running the optimal runtime module.

13. The method of claim 8 ,

where the selecting is performed as a further function of selection criteria selected from the group consisting of: resource efficiency, cost, accuracy, performance, security, privacy, data-pipeline priority, policy compliance, and conformance to conventions and standards, and

where at least one criterion of the selection criteria is assigned a weighting that alters a degree of influence of the one criterion upon the selection, relative to degrees of influence upon the selection of other criteria of the selection criteria.

14. The method of claim 8 , further comprising providing at least one support service for at least one of creating, integrating, hosting, maintaining, and deploying computer-readable program code in the computer system, wherein the computer-readable program code in combination with the computer system is configured to implement the receiving, the identifying, the predicting, the selecting, and the initiating.

15. A computer program product, comprising a computer-readable hardware storage device having a computer-readable program code stored therein, the program code configured to be executed by An information-analysis system comprising a processor, a memory coupled to the processor, and a computer-readable hardware storage device coupled to the processor, the storage device containing program code configured to be run by the processor via the memory to implement a method for self-learning selection of information-analysis runtimes, the method comprising:

the system receiving a request to perform an algorithm, where the system has access to a plurality of runtime modules that are each designed to perform the algorithm;

the system identifying a set of influencing factors capable of influencing the system's selection of an optimal runtime module, from the plurality of runtime modules, to perform the requested algorithm;

the system predicting outcomes that would be produced by running, in response to the request, each module of the plurality of runtime modules,

where the system has been trained to predict the outcomes by a machine-learning component that infers future outcomes from a record of previous outcomes produced by running any of the plurality of runtime modules in a presence of at least one factor of the set of influencing factors;

the system selecting an optimal runtime module of the plurality of runtime modules as a function of the predicting; and

the system initiating steps that direct the optimal runtime module to perform the algorithm.

16. The computer program product of claim 15 ,

where at least two of the plurality of runtime modules are configured to run in different runtime environments, and

where the optimal runtime module is selected as a function of a runtime environment in which each module of the plurality of runtime modules is configured to run.

17. The computer program product of claim 15 ,

where each factor of the set of influencing factors identifies a value selected from the group consisting of:

value of extrinsic factors that identify current conditions that are external to the system and that are external to the platform on which the system is implemented,

values of operating conditions that identify current characteristics of one or more components of the platform on which the system is implemented, and

dataset characteristics that characterize a dataset upon which the algorithm is to be performed.

18. The computer program product of claim 15 , further comprising:

the system receiving feedback about the system's selection of the optimal runtime module,

where the feedback is used, by the machine-learning component, to further train the system to more accurately predict future outcomes produced by running the optimal runtime module.

19. The computer program product of claim 15 , further comprising:

the system requesting and receiving authorization for the system to initiate steps that direct the optimal runtime module to perform the algorithm,

where the authorization is used, by the machine-learning component, to further train the system to more accurately predict future outcomes produced by running the optimal runtime module.

20. The computer program product of claim 15 ,

where the selecting is performed as a further function of selection criteria selected from the group consisting of: resource efficiency, cost, accuracy, performance, security, privacy, data-pipeline priority, policy compliance, and conformance to conventions and standards, and

where at least one criterion of the selection criteria is assigned a weighting that alters a degree of influence of the one criterion upon the selection, relative to degrees of influence upon the selection of other criteria of the selection criteria.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 21, 2019
From: GUPTA, RITESH KUMAR; KABRA, NAMIT; JACOBSON, ERIC ALLEN; BROKAW, SCOTT LOUIS; RAMOS, JO ARAO
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 048657/0302 →
Continuity (1)
Related Publication 20200302343A1 · Sep 24, 2020
Cited By (1)
US 12,591,462