IP Library › Granted Patent US 10,766,137
Granted Patent B1
US 10,766,137 · App. 15/803,621 · Granted Sep 8, 2020

Artificial intelligence system for modeling and evaluating robotic success at task performance

Inventors: Brandon William Porter (Yarrow Point, WA); Leonardo Ruggiero Bachega (Seattle, WA); Brian C. Beckman (Seattle, WA); Benjamin Lev Snyder (Seattle, WA); Michael Vogelsong (Seattle, WA); Corrinne Yu (Seattle, WA)
Assignee: Amazon Technologies, Inc.
B25J9/163B25J9/1697G06N3/04G06N3/08Y10S901/03Y10S901/47
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 10,766,137
App. No.
15/803,621
Granted
Sep 8, 2020
Kind
B1
Abstract

A machine learning system builds and uses computer models for identifying how to evaluate the level of success reflected in a recorded observation of a task. Such computer models may be used to generate a policy for controlling a robotic system performing the task. The computer models can also be used to evaluate robotic task performance and provide feedback for recalibrating the robotic control policy.

Claims (70)

1. A system comprising:

a robotic system configured to perform a task according to a policy comprising a set of control parameters;

an observation system positioned and configured to capture at least video data representing the robotic system performing the task; and

a robotic control system comprising one or more computing devices, the robotic control system programmed with executable instructions to, in real time as the robotic system repeatedly performs the task, monitor the robotic system by at least:

capturing, using the observation system, a video of the robotic system executing a performance the task;

evaluating the video using a convolutional neural network trained to determine a level of success of the performance depicted in the video, said convolutional neural network trained with training data that comprises a plurality of pairs of videos of robotic performance of the task, each of said pairs labeled with an indication of which video of the respective pair depicts a higher degree of success;

comparing the level of success of the performance to a threshold value based on a result of evaluating the video using the convolutional neural network;

when a result of the comparing indicates that the level of success is above the threshold value, upon the robotic system initiating a further performance of the task, controlling the robotic system using the policy to complete the further performance of the task; and

when a result of the comparing indicates the level of success is below the threshold value:

recalibrating the policy comprising the set of control parameters using a reinforcement learning system; and

upon the robotic system initiating the further performance of the task, controlling the robotic system using the recalibrated policy to complete the further performance of the task.

2. The system of claim 1 , wherein the at least one processor is programmed by the executable instructions to at least:

update a reward function representing success at performance of the task based at least partly on a result of evaluating the video using the convolutional neural network; and

recalibrate the policy based on the reward function.

3. The system of claim 2 , wherein the robotic control system is programmed with the executable instructions to at least update the reward function using a deep neural network or Bayesian inference.

4. The system of claim 1 , wherein the observation system is further configured to capture an additional recorded observation comprising one or both of sound and position sensor data, and wherein the robotic control system is programmed with the executable instructions to at least:

evaluate the recorded observation using at least one component of a machine learning classifier to determine the level of success represented in the recorded observation, the machine learning classifier comprising the at least one component and the convolutional neural network;

determine that the level of success of the performance is below the threshold value based additionally on a result of evaluating the recorded observation using the at least one component of the machine learning classifier.

5. The system of claim 1 , wherein, to evaluate the video, the robotic control system is programmed with the executable instructions to at least:

compare the video to at least one other video depicting the robotic system executing another performance the task; and

output a preference for the other video.

6. The system of claim 1 , wherein, to evaluate the video, the robotic control system is programmed with the executable instructions to at least generate a non-binary score representing the level of success depicted in the video.

7. The system of claim 1 , wherein machine learning policy recalibration tasks and robotic control tasks are performed by separate computing devices of the robotic control system.

8. The system of claim 1 , wherein the robotic control system, in evaluating the video using the convolutional neural network, is configured to analyze the video with convolutional filters having filter values reflecting pixel values or sequences of pixel values corresponding to task success, said filter values determined from said training data.

9. The system of claim 1 , wherein the training data additionally comprises, for respective videos, success scores representing non-binary degrees of task success depicted by the respective videos.

10. A computer-implemented method for real time monitoring of an agent for performance changes due to changing environmental conditions or wear on the agent as the agent repeatedly performs a task, the method comprising, as performed by at least one computing device configured to execute specific instructions:

accessing a machine learning classifier trained to evaluate whether a recorded observation representing performance of the task depicts success at performing the task, said machine learning classifier trained with training data that comprises a plurality of pairs of videos of agent performance of the task, each of said pairs labeled with an indication of which video of the respective pair depicts a higher degree of success;

accessing a recorded observation of the agent performing the task based on a policy comprising a set of control parameters;

evaluating the recorded observation using the machine learning classifier;

making a determination regarding whether to recalibrate the policy based on a result of evaluating the recorded observation;

when the determination indicates not to recalibrate the policy, controlling the agent using the policy to complete a further performance of the task; and

when the determination indicates to recalibrate the policy:

recalibrating the set of control parameters of the policy using a reinforcement learning system; and

upon the agent initiating a further performance of the task, controlling the agent using the recalibrated policy to complete the further performance of the task.

11. The computer-implemented method of claim 10 , further comprising:

recalibrating, using an additional machine learning model, a reward function modelling parameters contributing to success at performing the task based on evaluating the recorded observation and a plurality of additional recorded observations using the machine learning classifier; and

recalibrating the policy based on the reward function.

12. The computer-implemented method of claim 10 , further comprising providing the result of evaluating the recorded observation as a gradient reward to the reinforcement learning system.

13. The computer-implemented method of claim 12 , wherein evaluating the recorded observation comprises generating a non-binary score reflective of a level of success at performing the task that is represented by the recorded observation.

14. The computer-implemented method of claim 10 , wherein evaluating the recorded observation comprises:

comparing the recorded observation to a previous recorded observation of the agent executing a previous performance the task; and

outputting a preference for the previous recorded observation, wherein the machine learning classifier is configured to identify the preference for the previous recorded observation.

15. The computer-implemented method of claim 10 , further comprising:

identifying that a plurality of recorded observations of the agent performing the task represent greater than a threshold degree of success at the task; and

updating training of the machine learning classifier using the plurality of recorded observations as at least part of a training data set.

16. The computer-implemented method of claim 10 , further comprising:

identifying, using the machine learning classifier, that a plurality of recorded observations of the agent performing the task represent greater than a threshold degree of success at the task; and

training a different machine learning classifier using the plurality of recorded observations as at least part of a training data set.

17. The computer-implemented method of claim 10 , further comprising training the machine learning classifier with the plurality of pairs of videos, wherein training the machine learning classifier comprises generating convolutional filter values that encode information representing video pixels or pixel sequences corresponding to task success.

18. A non-transitory computer storage medium storing executable code, wherein the executable code configures a computing system to perform a process for real time monitoring of a robotic system for performance changes due to changing environmental conditions or wear on the robotic system as the robotic system repeatedly performs a task, the process comprising:

accessing a plurality of videos of a robotic system performing a task, wherein the plurality videos include a plurality of pairs of videos in which each pair is labeled with an indication of which video of the respective pair depicts the robotic system achieving a higher degree of task success;

training a machine learning classifier to evaluate success at performance of the task by using the plurality of videos, including the labeled pairs of videos, as at least part of a training data set;

accessing an additional video of the robotic system performing a further iteration of the task based on a policy comprising a set of control parameters;

evaluating the additional video using the machine learning classifier;

making a determination regarding whether to recalibrate the policy based on a result of evaluating the video;

when the determination indicates not to recalibrate the policy, controlling the agent using the policy to complete a further performance of the task; and

when the determination indicates to recalibrate the policy:

recalibrating the set of control parameters of the policy using a reinforcement learning system; and

upon the robotic system initiating the further performance of the task, controlling the robotic system using the recalibrated policy to complete the further performance of the task.

19. The non-transitory computer storage medium of claim 18 , the process further comprising:

recalibrating, using an additional machine learning model, a reward function modelling parameters contributing to success at performing the task based on evaluating the additional video using the machine learning classifier; and

recalibrating the policy based on the reward function.

20. The non-transitory computer storage medium of claim 18 , the process further comprising:

capturing a plurality of videos of the agent performing the task during exploration and exploitation; and

generating the feedback from the machine learning classifier by using the machine learning classifier to evaluate the plurality of recorded observations videos.

21. The non-transitory computer storage medium of claim 18 , the process further comprising providing the result of evaluating the additional video as a gradient reward to the reinforcement learning system.

22. The non-transitory computer storage medium of claim 21 , the process further comprising evaluating the additional video by generating a non-binary score reflective of a level of success at performing the task that is depicted in the video.

23. The non-transitory computer storage medium of claim 18 , further comprising determining to include the plurality of videos in the training data set based on the plurality of videos representing greater than a threshold degree of success at the task.

24. The non-transitory computer storage medium of claim 18 , wherein training the machine learning classifier comprises generating convolutional filter values that encode information representing pixels or pixel sequences corresponding to task success.

25. The non-transitory computer storage medium of claim 18 , wherein the plurality of videos include success scores representing non-binary degrees of task success depicted by the respective videos.

Assignments (2)
CORRECTIVE ASSIGNMENT TO CORRECT THE SPELLING OF 4TH INVENTOR'S LAST NAME PREVIOUSLY RECORDED ON REEL 045093 FRAME 0947. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Mar 9, 2018
From: PORTER, BRANDON WILLIAM; BACHEGA, LEONARDO RUGGIERO; BECKMAN, BRIAN C.; SNYDER, BENJAMIN LEV; VOGELSONG, MICHAEL; YU, CORRINNE
To: AMAZON TECHNOLOGIES, INC.
Reel/Frame 046633/0614 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 2, 2018
From: PORTER, BRANDON WILLIAM; BACHEGA, LEONARDO RUGGIERO; BECKMAN, BRIAN C.; SYNDER, BENJAMIN LEV; VOGELSONG, MICHAEL; YU, CORRINNE
To: AMAZON TECHNOLOGIES, INC.
Reel/Frame 045093/0947 →
Cited By (93)
US 12,226,919 US 12,233,534 US 12,239,597 US 12,249,128 US 12,275,146 US 12,282,528 US 12,283,101 US 12,299,083 US 12,299,656 US 12,306,593 US 12,306,610 US 12,307,384 US 12,314,346 US 12,314,868 US 12,325,141 US 12,332,609 US 12,332,975 US 12,333,444 US 12,333,512 US 12,339,630 US 12,339,934 US 12,350,845 US 12,354,028 US 12,360,499 US 12,361,687 US 12,373,517 US 12,386,916 US 12,386,922 US 12,393,647 US 12,393,648 US 12,393,915 US 12,403,613 US 12,406,242 US 12,411,912 US 12,427,661 US 12,430,405 US 12,430,406 US 12,443,151 US 12,449,772 US 12,449,773 US 12,450,317 US 12,454,064 US 12,455,940 US 12,461,997 US 12,479,105 US 12,487,564 US 12,488,066 US 12,488,067 US 12,499,182 US 12,505,173 US 12,505,174 US 12,505,175 US 12,511,630 US 12,535,779 US 12,536,516 US 12,541,574 US 12,541,575 US 12,552,035 US 12,554,232 US 12,554,801 US 12,554,802 US 12,554,803 US 12,554,804 US 12,561,405 US 12,561,406 US 12,561,659 US 12,561,660 US 12,572,150 US 12,576,534 US 12,579,221 US 12,579,222 US 12,579,223 US 12,579,224 US 12,585,654 US 12,585,732 US 12,585,733 US 12,596,336 US 12,596,769 US 12,664,236 US 12,667,303 US 12,675,782 US 12,682,016 US 12,682,017 US 12,688,259 US 12,688,260 US 12,711,388 US 12,715,137 US 12,724,850 US 12,736,927 US 12,737,436 US 12,741,379 US 12,743,058 US 12,748,823