IP Library Granted Patent US 12,422,792
Granted Patent B1
US 12,422,792 · App. 17/330,213 · Granted Sep 23, 2025

Individual machine configuration based on overall process performance and latent metrics

Inventor: Bart Schouwenaars-Harms (Henley-on-Thames, GB)
Assignee: Amazon Technologies, Inc.
G05B13/042G05B13/0265H04L41/08H04L41/0803H04L41/0859
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 12,422,792
App. No.
17/330,213
Granted
Sep 23, 2025
Kind
B1
Abstract

Machine-level metrics for machines of a processing line, as well as latent metrics for results of the processing line, are obtained for the current time period. Machine configuration setting values for the machines during the current time period, as well as at the earlier time period are also obtained. Updates to current configuration setting values of the machines are determined based upon analysis of the machine-level metrics, the process-level metrics for the current time period, the latent metrics for the earlier time period, and the machine configuration setting values for the current and earlier time periods (e.g., the metrics and configuration values may be input to one or more machine learning models used to determine the updates to current configuration setting values for the individual machines). The current values may be changed to the updated values via an automated process or the updates presented as a recommendation report.

Claims (73)

1. A system, comprising:

one or more storage systems comprising:

a metrics repository for storing individual non-latent metrics including machine-level metrics data for a plurality of machines used together to implement a process that produces physical products and process-level metrics data for the process as-a-whole;

a configuration data repository for storing historical machine configuration setting values for the plurality of machines;

one or more computers comprising respective processors and memory and configured to:

obtain, during a current time period after a production time period during which processing of a physical product is performed and completed, latent metrics data for the completed physical product produced by the processing, wherein the obtained latent metrics data were unavailable during the production time period of the physical product through to immediately subsequent to the production time period and, if the physical product was tested, unavailable through testing of the physical product during and immediately subsequent to the production time period;

access the configuration data repository to determine previous machine configuration setting values for the plurality of machines during the production time period during which the physical product was processed;

provide the machine-level metrics data and the process-level metrics data for the current time period, the latent metrics data for the physical product produced by the process, and the machine configuration setting values during the production time period to one or more machine learning models to determine updated configuration setting values for the plurality of machines; and

transmit the updated configuration setting values, determined via the one or more machine learning models based at least in part on the machine-level metrics data, the process-level metrics data for the current time period, the latent metrics data for the physical product produced by the process during the production time period, and the machine configuration setting values during the production time period, to enable the plurality of machines to implement the updated configuration setting values.

2. The system of claim 1 , wherein to transmit the updated configuration setting values, the one or more computers are further configured to transmit a recommendation report for the updates to the one or more specified destinations.

3. The system of claim 1 , wherein the one or more computers are further configured to:

access an acceptance history of previous updates to machine configuration setting values determined by the one or more machine learning models;

determine whether the acceptance history meets an acceptance threshold; and

wherein said transmit the updated configuration setting values is performed responsive to the acceptance history meeting the acceptance threshold and causes configuration settings for one or more of the plurality of machines to be updated automatically.

4. The system of claim 1 , wherein the one or more computers are further configured to:

store updates to configuration settings in the configuration data repository, wherein the updates include an indication of a time associated with the updates to the configuration settings.

5. A method, comprising:

performing, by one or more computing devices:

receiving, for a current time period, non-latent metrics including machine-level metrics data for individual ones of a plurality of machines used together to implement a process and process-level metrics data for the process as-a-whole;

receiving one or more latent metrics data for one or more physical products completed by the process during an earlier time prior to the current time period that is subsequent to completion of processing of the physical products, wherein the one or more latent metrics data for the one or more physical products were unavailable during the processing during the earlier period through to immediately subsequent to the processing during the earlier period and, if the physical product was tested, unavailable through testing of the physical product during and immediately subsequent to the processing during the earlier period;

receiving machine configuration setting values for the plurality of machines during the current time period and at the earlier time period;

determining, based on one or more machine learning models, one or more updates to current configuration setting values for the plurality of machines, wherein input to the one or more machine learning models comprises the machine-level metrics data and the process-level metrics data for the current time period, the latent metrics data for the earlier time period, and the machine configuration setting values for the current and earlier time periods; and

transmitting the updates to the current configuration setting values to one or more specified destinations.

6. The method of claim 5 , wherein the machine-level metrics comprise one or more of:

an output rate of one or more of the machines,

an output quality for one or more of the machines,

an operating condition for one or more of the machines, or

an environmental condition at one or more of the machines.

7. The method of claim 5 , wherein the process-level metrics comprise one or more of:

an output rate for the process as-a-whole,

an output quality for the process as-a-whole, or

an environmental condition for the process as-a-whole.

8. The method of claim 5 , further comprising:

receiving, at a data stream storage service, metrics data from a plurality of sensors at respective ones of the plurality of machines or the process; and

parsing the data stream to load the machine-level and process-level metrics data into a metrics repository.

9. The method of claim 8 , wherein the metrics data are received via one or more network connections to the plurality of sensors.

10. The method of claim 8 , wherein the metrics data are received over an Internet connection to a hub device that collects the metrics data from the plurality of sensors.

11. The method of claim 5 , wherein the one or more latent metrics data are received from a source remote from the plurality of machines and process.

12. The method of claim 5 , wherein the one or more latent metrics data describe one or more latent qualities or defects of the one or more physical products of the process.

13. The method of claim 5 , further comprising:

repeating said receiving machine-level metrics data, said receiving one or more latent metrics data, said receiving machine configuration setting values, said determining, and said transmitting for one or more subsequent time periods.

14. The method of claim 5 , further comprising:

varying at least some of the configuration setting values for a subsequent time period;

receiving metrics data for the subsequent time period when the configuration setting values have been varied; and

inputting the received metrics data into the one or more machine learning models to search for improvements to the values of the configuration settings.

15. The method of claim 5 , further comprising:

performing, as a service for individual ones of a plurality of different processes employing different pluralities of machines, each of said receiving machine-level metrics data, said receiving one or more latent metrics data, said receiving machine configuration setting values, said determining, and said transmitting.

16. The method of claim 5 , further comprising:

updating the one or more machine learning models based on previous machine configuration setting values and the latent metrics data to produce one or more updated machine learning models;

determining, based on the updated one or more machine learning models, one or more other updated configuration setting values; and

transmitting the other updated configuration setting values to the one or more specified destinations.

17. One or more non-transitory computer-readable storage media storing program instructions that when executed on or across one or more processors cause the one or more processors to implement a configuration analyzer, configured to perform:

obtaining, for a current time period, non-latent metrics including machine-level metrics data for individual ones of a plurality of machines used together to implement a process and process-level metrics data for the complete process as-a-whole that produces one or more physical products;

obtaining one or more latent metrics data for the one or more physical products of the completed process produced at an earlier time prior to the current time period that is subsequent to completion of the process, wherein the one or more latent metrics data for the one or more physical products of the completed process as-a-whole were unavailable during the processing during the earlier period through to immediately subsequent to the processing during the earlier period and, if the physical product was tested, unavailable through testing of the physical product during and immediately subsequent to the processing during the earlier period;

obtaining machine configuration setting values for the plurality of machines during the current time period and at the earlier time period;

determining, based on one or more machine learning models, one or more updates to current configuration setting values for the plurality of machines, wherein input to the one or more machine learning models comprises the machine-level metrics data and the process-level metrics data for the current time period, the latent metrics data for the earlier time period, and the machine configuration setting values for the current and earlier time periods; and

transmitting the updates to the current configuration setting values to one or more specified destinations.

18. The one or more non-transitory computer-readable media of claim 17 , wherein the program instructions cause the one or more processors to perform:

repeating said obtaining machine-level metrics data, said obtaining one or more latent metrics data, said obtaining machine configuration setting values, said determining, and said transmitting for one or more subsequent time periods.

19. The one or more non-transitory computer-readable media of claim 17 , wherein the program instructions cause the one or more processors to perform:

varying at least some of the configuration setting values for a subsequent time period;

obtaining metrics data for the subsequent time period when the configuration setting values have been varied; and

inputting the obtained metrics data into the one or more machine learning models to search for improvements to the values of the configuration settings.

20. The one or more non-transitory computer-readable media of claim 17 , wherein the program instructions cause the one or more processors to perform:

storing updates to the configuration setting values for one or more subsequent time periods;

receiving metrics data for the one or more subsequent time periods;

determining, based at least in part on the received configuration setting values, to retrain the one or more machine learning models;

retraining the one or more machine learning models;

determining, based on one or more retrained machine learning models, one or more new updates to current configuration setting values for the plurality of machines; and

transmitting the new updates to the current configuration setting values to the one or more specified destinations.

21. The one or more non-transitory computer-readable media of claim 17 , wherein the program instructions cause the one or more processors to perform:

storing updates to the configuration settings in a configuration data repository, wherein the updates include an indication of a time associated with the updates to the configuration settings.

22. The one or more non-transitory computer-readable media of claim 17 , wherein to transmit the updates to the current configuration setting values the program instructions cause the one or more processors to perform transmitting a recommendation report for the updates to the one or more specified destinations.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 26, 2021
From: SCHOUWENAARS-HARMS, BART
To: AMAZON TECHNOLOGIES, INC.
Reel/Frame 056360/0691 →
References Cited (91)
US 7035240B1 · Balakrishnan et al. · 2006 [cited by applicant]
US 8769691B1 · Hsueh et al. · 2014 [cited by applicant]
US 9258565B1 · Jacob · 2016 [cited by applicant]
US 9306806B1 · Zhang · 2016 [cited by examiner]
US 9756570B1 · Ramachandra · 2017 [cited by applicant]
US 10387794B2 · Okanohara et al. · 2019 [cited by applicant]
US 10397594B2 · Jain et al. · 2019 [cited by applicant]
US 10554382B2 · Khanna · 2020 [cited by applicant]
US 10554726B1 · Mattison · 2020 [cited by applicant]
US 10616067B2 · Khanna · 2020 [cited by applicant]
US 10980085B2 · Kasaragod et al. · 2021 [cited by applicant]
US 20030110252A1 · Yang-Huffman · 2003 [cited by applicant]
US 20050078672A1 · Caliskan et al. · 2005 [cited by applicant]
US 20060036345A1 · Cao · 2006 [cited by examiner]
US 20060200007A1 · Brockway et al. · 2006 [cited by applicant]
US 20080065766A1 · Motoyama et al. · 2008 [cited by applicant]
US 20090044263A1 · Lingafelt et al. · 2009 [cited by applicant]
US 20090307277A1 · Grubov et al. · 2009 [cited by applicant]
US 20100262269A1 · Gladwin et al. · 2010 [cited by applicant]
US 20100332149A1 · Scholpp · 2010 [cited by applicant]
US 20110030487A1 · McRae · 2011 [cited by applicant]
US 20110200239A1 · Levine et al. · 2011 [cited by applicant]
US 20120140302A1 · Xie et al. · 2012 [cited by applicant]
US 20120208161A1 · Takata et al. · 2012 [cited by applicant]
US 20120289790A1 · Jain et al. · 2012 [cited by applicant]
US 20130021910A1 · Crisan et al. · 2013 [cited by applicant]
US 20130063767A1 · Morris et al. · 2013 [cited by applicant]
US 20140032495A1 · Erofeev · 2014 [cited by applicant]
US 20140058986A1 · Boss et al. · 2014 [cited by applicant]
US 20140115166A1 · Kucharczyk et al. · 2014 [cited by applicant]
US 20140181891A1 · Von Bokern et al. · 2014 [cited by applicant]
US 20140258513A1 · Letca et al. · 2014 [cited by applicant]
US 20140266684A1 · Poder et al. · 2014 [cited by applicant]
US 20140285813A1 · Shi et al. · 2014 [cited by applicant]
US 20140330959A1 · Zhang · 2014 [cited by applicant]
US 20150052247A1 · Threefoot et al. · 2015 [cited by applicant]
US 20150120296A1 · Stern et al. · 2015 [cited by applicant]
US 20150242760A1 · Miao et al. · 2015 [cited by applicant]
US 20150281253A1 · Lords et al. · 2015 [cited by applicant]
US 20150281401A1 · Le et al. · 2015 [cited by applicant]
US 20150350018A1 · Hui et al. · 2015 [cited by applicant]
US 20160012640A1 · Abraham · 2016 [cited by applicant]
US 20160014008A1 · Metts et al. · 2016 [cited by applicant]
US 20160028599A1 · Vasseur et al. · 2016 [cited by applicant]
US 20160034253A1 · Bang et al. · 2016 [cited by applicant]
US 20160050264A1 · Breed et al. · 2016 [cited by applicant]
US 20160063393A1 · Ramage et al. · 2016 [cited by applicant]
US 20160067864A1 · Mullan et al. · 2016 [cited by applicant]
US 20160072891A1 · Joshi et al. · 2016 [cited by applicant]
US 20160171371A1 · Andrejko et al. · 2016 [cited by applicant]
US 20160182629A1 · Korn · 2016 [cited by applicant]
US 20160188292A1 · Carter et al. · 2016 [cited by applicant]
US 20160217388A1 · Okanohara et al. · 2016 [cited by applicant]
US 20160248809A1 · Smith et al. · 2016 [cited by applicant]
US 20160315922A1 · Chew et al. · 2016 [cited by applicant]
US 20160380892A1 · Mahadevan et al. · 2016 [cited by applicant]
US 20170034700A1 · Cohen et al. · 2017 [cited by applicant]
US 20170078875A1 · Muhanna et al. · 2017 [cited by applicant]
US 20170099353A1 · Arora et al. · 2017 [cited by applicant]
US 20170109322A1 · McMahan et al. · 2017 [cited by applicant]
US 20170139803A1 · Maheshwari et al. · 2017 [cited by applicant]
US 20170195424A1 · Nasir et al. · 2017 [cited by applicant]
US 20180018081A1 · Dattilo-Green et al. · 2018 [cited by applicant]
US 20180032908A1 · Nagaraju et al. · 2018 [cited by applicant]
US 20180034913A1 · Matthieu et al. · 2018 [cited by applicant]
US 20180218085A1 · Price et al. · 2018 [cited by applicant]
US 20180270271A1 · Lee et al. · 2018 [cited by applicant]
US 20180285767A1 · Chew · 2018 [cited by applicant]
US 20180309831A1 · Sherman et al. · 2018 [cited by applicant]
US 20180316928A1 · Jain et al. · 2018 [cited by applicant]
US 20180322333A1 · Lacewell et al. · 2018 [cited by applicant]
US 20180336486A1 · Chu et al. · 2018 [cited by applicant]
US 20180365580A1 · Musuvathi et al. · 2018 [cited by applicant]
US 20180375720A1 · Yang et al. · 2018 [cited by applicant]
US 20190042386A1 · Barczak · 2019 [cited by examiner]
US 20190159044A1 · Abou-Rizk · 2019 [cited by examiner]
US 20190349266A1 · Johnsson et al. · 2019 [cited by applicant]
US 20200050918A1 · Chen et al. · 2020 [cited by applicant]
US 20200074523A1 · Wang et al. · 2020 [cited by applicant]
US 20200128077A1 · Yu et al. · 2020 [cited by applicant]
US 20200195495A1 · Parker · 2020 [cited by examiner]
US 20200372403A1 · Kursun · 2020 [cited by examiner]
WO WO2012112166A1 · 2012 [cited by examiner]
Using Metric Time-Lines for Identifying Architecture Shortcomings in Process Execution Architectures Daniel Lübke 2015 IEEE/ACM 2nd International Workshop on Software Architecture and Metrics Year: 2015 | Conference Pap… [cited by examiner]
Eaton, “How Dynamic Machine Control opens a smarter future with industrial valves”, Retrieved from https://www.eaton.com/us/en-us/services/dynamic-machine-control/dmc-articles/how-dynamic-machine-control-opens-a-smarter… [cited by applicant]
U.S. Appl. No. 16/779,330, filed Jan. 31, 2020, Aran Khanna. [cited by applicant]
U.S. Appl. No. 15/635,148, filed Jun. 27, 2017, Aran Khanna [cited by applicant]
U.S. Appl. No. 17/227,194, filed Apr. 9, 2021, Sunil Mallya Kasaragod et al. [cited by applicant]
U.S. Appl. No. 15/660,859, filed Jul. 26, 2017, Sunil Mallya Kasaragod et al. [cited by applicant]
F. Liu, et al., A Survey on Edge Computing Systems and Tools, in Proceedings of the IEEE, vol. 107, No. 8, Aug. 2019, doi: 10.1009/JPROC.2019.2920341., pp. 1537-1562. [cited by applicant]
S. Mohamed, et al., Automatic Generation of Distributed Run-Time Infrastructure for Internet of Things, 2017 IEEE International Conference on Software Architecture Workshops (ICSAW), 2017, doi: 10.1109/ICSAW.2017.51, pp… [cited by applicant]