IP Library Granted Patent US 9,519,461
Granted Patent B2
US 9,519,461 · App. 14/306,856 · Granted Dec 13, 2016

Dynamically evolving cognitive architecture system based on third-party developers

Inventors: Mark Gabel (San Jose, CA); Christopher Brigham (San Jose, CA); Adam Cheyer (San Jose, CA); Dag Kittlaus (San Jose, CA)
Assignee: VIV LABS, INC.
G06F8/00G06F17/277G06F17/28G06N5/02
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 9,519,461
App. No.
14/306,856
Granted
Dec 13, 2016
Kind
B2
Abstract

A dynamically evolving cognitive architecture system based on third-party developers is described. A system forms an intent based on a user input, and creates a plan based on the intent. The plan includes a first action object that transforms a first concept object associated with the intent into a second concept object and also includes a second action object that transforms the second concept object into a third concept object associated with a goal of the intent. The first action object and the second action object are selected from multiple action objects. The system executes the plan, and outputs a value associated with the third concept object.

Claims (33)

1. A system for a dynamically evolving cognitive architecture based on third-party developers, the system comprising:

one or more processors; and

a non-transitory computer readable medium storing a plurality of instructions, which

when executed, cause the one or more processors to:

match a first object and a second object with a user input, the first object comprising one of an input action object, an input concept object and an output concept object, the second object comprising another one of the input action object, the input concept object, and the output concept object;

form an intent based on the user input;

create a plan based on the intent, the plan comprising the input action object selected from a plurality of action objects and provided by a first third-party developer that transforms the input concept object associated with the intent into an intermediate concept object, and the output action object selected from the plurality of action objects and provided by a second third-party developer that transforms another intermediate concept object into the output concept object associated with a goal of the intent, the other intermediate concept object being one of the same as the intermediate concept object and different from the intermediate concept object;

execute the plan, and

output a value associated with the output concept object to a user interface associated with the user input.

2. The system of claim 1 , wherein the input concept object is provided by a third third-party developer, the intermediate concept object is provided by a fourth third-party developer, and the output concept object is provided by a fifth third-party developer.

3. The system of claim 1 , wherein the input concept object comprises first data which provides instantiations of the input concept object, the intermediate concept object comprises second data which provides instantiations of the intermediate concept object, and the output concept object comprises third data which provides instantiations of the output concept object.

4. The system of claim 1 , wherein an input parameter of the input action object is mapped to a web service parameter and a web service result is mapped to an output value of the input action object.

5. The system of claim 1 , wherein a another action object is provided by a third third-party developer after the intent is formed based on the user input and before the value associated with the output concept object is output.

6. A computer-implemented method for a dynamically evolving cognitive architecture system based on third-party developers, the method comprising:

matching a first object and a second object with a user input, the first object comprising one of an input action object, an input concept object and an output concept object, the second object comprising another one of the input action object, the input concept object, and the output concept object;

forming an intent based on the user input;

creating a plan based on the intent, the plan comprising the input action object selected from a plurality of action objects and provided by a first third-party developer that transforms the input concept object associated with the intent into an intermediate concept object, and the output action object selected from the plurality of action objects and provided by a second third-party developer that transforms another intermediate concept object into the output concept object associated with a goal of the intent, the other intermediate concept object being one of the same as the intermediate concept object and different from the intermediate concept object;

executing the plan, and

outputting a value associated with the output concept object to a user interface associated with the user input.

7. The method of claim 6 , wherein the input concept object is provided by a third third-party developer, the intermediate concept object is provided by a fourth third-party developer, and the output concept object is provided by a fifth third-party developer.

8. The method of claim 6 , wherein the input concept object comprises first data which provides instantiations of the input concept object, the intermediate concept object comprises second data which provides instantiations of the intermediate concept object, and the output concept object comprises third data which provides instantiations of the output concept object.

9. The method of claim 6 , wherein an input parameter of the input action object is mapped to a web service parameter and a web service result is mapped to an output value of the input action object.

10. A computer program product, comprising a non-transitory computer-readable medium having a computer-readable program code embodied therein to be executed by one or more processors, the program code including instructions to:

match a first object and a second object with a user input, the first object comprising one of an input action object, an input concept object and an output concept object, the second object comprising another one of the input action object, the input concept object, and the output concept object;

form an intent based on a user input;

create a plan based on the intent, the plan comprising the input action object selected from a plurality of action objects and provided by a first third-party developer that transforms the input concept object associated with the intent into an intermediate concept object, and the output action object selected from the plurality of action objects and provided by a second third-party developer that transforms another intermediate concept object into the output concept object associated with a goal of the intent, the other intermediate concept object being one of the same as the intermediate concept object and different from the intermediate concept object;

execute the plan, and

output a value associated with the output concept object to a user interface associated with the user input.

11. The computer program product of claim 10 , wherein the input concept object is provided by a third third-party developer, the intermediate concept object is provided by a fourth third-party developer, and the output concept object is provided by a fifth third-party developer.

12. The computer program product of claim 10 , wherein the input concept object comprises first data which provides instantiations of the input concept object, the intermediate concept object comprises second data which provides instantiations of the intermediate concept object, and the output concept object comprises third data which provides instantiations of the output concept object.

13. The computer program product of claim 10 , wherein an input parameter of the input action object is mapped to a web service parameter and a web service result is mapped to an output value of the input action object.

14. The computer program product of claim 10 , wherein a another action object is provided by a third third-party developer after the intent is formed based on the user input and before the value associated with the output concept object is output.

15. The method of claim 6 , wherein a another action object is provided by a third third-party developer after the intent is formed based on the user input and before the value associated with the output concept object is output.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 26, 2021
From: VIV LABS, INC.
To: SAMSUNG ELECTRONICS CO., LTD
Reel/Frame 055432/0711 →
CHANGE OF NAME Recorded Aug 25, 2014
From: SIX FIVE LABS, INC.
To: VIV LABS, INC.
Reel/Frame 033605/0705 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 20, 2014
From: GABEL, MARK; BRIGHAM, CHRISTOPHER; CHEYER, ADAM; KITTLAUS, DAG
To: SIX FIVE LABS, INC.
Reel/Frame 033147/0532 →
Continuity (4)
Provisional Application 61837354 · Jun 20, 2013
Provisional Application 61888907 · Oct 9, 2013
Provisional Application 61917541 · Dec 18, 2013
Related Publication 20140380263A1 · Dec 25, 2014