IP Library Granted Patent US 11,775,850
Granted Patent B2
US 11,775,850 · App. 16/104,044 · Granted Oct 3, 2023

Artificial intelligence engine having various algorithms to build different concepts contained within a same AI model

Inventors: Marcos Campos (Carlsbad, CA); Aditya Gudimella (Dublin, CA); Ruofan Kong (El Cerrito, CA); Matthew Brown (Berkeley, CA)
Assignee: Microsoft Technology Licensing, LLC
G06N5/043G06F16/901G06N3/02G06N3/045G06N3/08G06N20/00G06N3/008G06N3/044
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,775,850
App. No.
16/104,044
Granted
Oct 3, 2023
Kind
B2
Abstract

The AI engine has a first module that chooses from a library of algorithms to use when automatically assembling and building different learning topologies to solve different concepts making up a resulting AI model. The AI engine may integrate both i) one or more dynamic programming training algorithms and ii) one or more policy optimization algorithms, to build the different learning topologies to solve the different concepts contained with an AI model in order to solve a wide variety of problem types. Each concept contained in the AI model can use a most appropriate approach for achieving a mission of that concept. A learning topology representing a first concept can be built by the first module with a first dynamic programming training algorithm, while a learning topology representing a second concept in the same AI model can be built by the first module with a first policy optimization algorithm.

Claims (57)

1. A computing device hosting an artificial intelligence (AI) engine, the computing device comprising:

a processor; and

a memory holding instructions executable by the processor to

display a user interface to supply information to and/or receive information from the AI engine;

receive, via the user interface, a submission requesting to generate and train an AI model for a physical task;

based upon the submission, choose one or more dynamic programming training algorithms from a library of algorithms to automatically assemble and build a first learning topology for a first aspect of the AI model;

based upon the submission, choose one or more policy optimization algorithms from the library of algorithms to automatically assemble and build a second learning topology for a second aspect of the AI model;

obtain training data;

train the AI model using the training data to generate and provide a trained AI model; and

deploy the trained AI model to a robotic device configured to perform the physical task.

2. The computing device of claim 1 , wherein the instructions are further executable by the processor to:

train the first learning topology of the AI model using the training data to achieve the first aspect of the AI model;

train the second learning topology of the AI model using the training data to achieve the second aspect of the AI model; and

train the first aspect and the second aspect of the AI model to cooperate to perform a task.

3. The computing device of claim 1 , wherein the instructions are further executable by the processor to receive the submission coded in a pedagogical software programming code.

4. The computing device of claim 3 , wherein the submission comprises one or more mental models coded in the pedagogical software programming code, each of the one or more mental models comprising one or more distinct aspects of a task, and wherein the instructions are further executable to

identify one or more learning topologies and algorithms determined to be previously trained to solve problem types determined to be similar and/or analogous to each aspect of the one or more mental models, and

build the first learning topology and the second learning topology based on identifying the one or more previously trained learning topologies and algorithms.

5. The computing device of claim 1 , wherein the instructions are further executable by the processor to choose the one or more dynamic programming training algorithms and/or the one or more policy optimization algorithms based on heuristics including a type of problem to be solved and a type of data to be utilized.

6. The computing device of claim 1 , wherein the one or more dynamic programming training algorithms comprise one or more of Q-learning with a Q-table and/or a Deep Q-Network, and wherein the one or more policy optimization algorithms comprise one or more of a Trust Region Policy Optimization (TRPO) algorithm, a Trust Region Policy Optimization with a Generalized Advantage Estimation (TRPO-GAE) algorithm, and/or a Deep Deterministic Policy Gradients (DDPG) algorithm.

7. The computing device of claim 1 , wherein the instructions are further executable by the processor to unlearn.

8. The computing device of claim 1 , wherein the instructions are further executable by the processor to select a Q-table or a Deep Q-Network algorithm to build the learning topology for the first aspect of the AI model when the first aspect comprises one or more of a state action and/or a discrete state change.

9. The computing device of claim 1 , wherein the instructions are further executable by the processor to select a Deep Deterministic Policy Gradient (DDPG) algorithm or a Trust Region Policy Optimization (TRPO) algorithm to build the learning topology for the second aspect of the AI model when the second aspect comprises continuously changing actions or state data.

10. The computing device of claim 1 , wherein the instructions are further executable by the processor to select a Deep Deterministic Policy Gradient (DDPG) algorithm to build the learning topology for the second aspect when the second aspect comprises an off-policy problem.

11. On a computing device, a method for generating an artificial intelligence (AI) model, the method comprising:

displaying a user interface to supply information to and/or receive information from an AI engine;

receiving, via the user interface, a submission requesting to generate and train an AI model for a physical task;

based upon the submission, choosing one or more dynamic programming training algorithms from a library of algorithms to automatically assemble and build a first learning topology for a first aspect of the AI model;

based upon the submission, choosing one or more policy optimization algorithms from the library of algorithms to automatically assemble and build a second learning topology for a second aspect of the AI model;

obtaining training data;

training the AI model with the training data to generate and provide a trained AI model; and

deploying the trained AI model to a robotic device configured to perform the physical task.

12. The method of claim 11 , wherein training the AI model comprises

training the first learning topology of the AI model using the training data to achieve the first aspect of the AI model;

training the second learning topology of the AI model using the training data to achieve the second aspect of the AI model; and

then training the first aspect and the second aspect of the AI model to cooperate to perform a task.

13. The method of claim 11 , wherein receiving the submission comprises receiving one or more mental models coded in a pedagogical software programming code, each of the one or more mental models comprising one or more distinct aspects of a task, and the method further comprising building the first learning topology and the second learning topology based on identifying one or more learning topologies and algorithms determined to be previously trained to solve problem types determined to be similar and/or analogous to each aspect of the one or more mental models.

14. The method of claim 11 , further comprising choosing the one or more dynamic programming training algorithms and the one or more policy optimization algorithms based on heuristics including a type of problem to be solved and a type of data to be utilized.

15. The method of claim 11 , wherein choosing the one or more dynamic programming training algorithms comprises choosing one or more of Q-learning with a Q-table and/or a deep Q-network; and

wherein choosing the one or more policy optimization algorithms comprises choosing one or more of a Trust Region Policy Optimization (TRPO) algorithm, a Trust Region Policy Optimization with a Generalized Advantage Estimation (TRPO-GAE) algorithm, and/or a Deep Deterministic Policy Gradients (DDPG) algorithm.

16. The method of claim 11 , further comprising unlearning.

17. The method of claim 11 , wherein choosing the one or more dynamic programming training algorithms comprises selecting either a Q-table or a Deep Q-Network algorithm to build the learning topology for the first aspect of the AI model when the first aspect comprises one or more of a state action and/or a discrete state change.

18. The method of claim 11 , wherein choosing the one or more policy optimization algorithms comprises selecting a Deep Deterministic Policy Gradient (DDPG) algorithm to build the learning topology for the second aspect when the second aspect comprises an off-policy problem.

19. On a computing device, a method for generating an artificial intelligence (AI) model for a physical task, the method comprising:

displaying a user interface to supply information to and/or receive information from an AI engine;

receiving, via the user interface, a submission requesting to generate and train an AI model;

receiving one or more mental models coded in a pedagogical software programming code, each of the one or more mental models comprising one or more distinct aspects of the task;

identifying one or more learning topologies and algorithms determined to be previously trained to solve problem types determined to be similar and/or analogous to each aspect of the one or more mental models;

choosing one or more dynamic programming training algorithms from a library of algorithms to automatically assemble and build a first learning topology for a first aspect of the AI model;

choosing one or more policy optimization algorithms from the library of algorithms to automatically assemble and build a second learning topology for a second aspect of the AI model;

obtaining training data;

training the first learning topology of the AI model;

training the second learning topology of the AI model;

training the first aspect and the second aspect of the AI model to cooperate to achieve the task;

generating and providing a trained AI model; and

deploying the trained AI model to a robotic device configured to perform the physical task.

20. The method of claim 19 , wherein the first learning topology and the second learning topology are trained in a temporally overlapping manner.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 1, 2020
From: BONSAI AI, INC.
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 053102/0129 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 5, 2018
From: CAMPOS, MARCOS; GUDIMELLA, ADITYA; KONG, RUOFAN; BROWN, MATTHEW
To: BONSAI AI, INC.
Reel/Frame 047414/0710 →
Continuity (5)
Continuation In Part 15417056 · Jan 26, 2017
Provisional Application 62555584 · Sep 7, 2017
Provisional Application 62547339 · Aug 18, 2017
Provisional Application 62287861 · Jan 27, 2016
Related Publication 20180357552A1 · Dec 13, 2018
Cited By (2)
US 12,487,912 US 12,602,434