IP Library Granted Patent US 12,198,095
Granted Patent B2
US 12,198,095 · App. 17/350,766 · Granted Jan 14, 2025

Method and system for accurately estimating amount of materials in stores

Inventors: Theodore Trebaol (Fremont, CA); Louis Trebaol (Franklin, NH); Sourav Dey (South San Francisco, CA); Joshua Hayes (San Rafael, CA)
Assignee: DataOnline, L.L.C.
G06Q10/087G06F30/20G06Q10/063114G06Q10/0639G06Q10/08
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,198,095
App. No.
17/350,766
Granted
Jan 14, 2025
Kind
B2
Abstract

Systems, methods, and apparatus are disclosed for estimating quantities of stored materials in an unmonitored store. The data from a lower-fidelity store can be collected by a person (manual or “unmonitored” stores), which are manually collected unmonitored data, whereas monitored data from a higher-fidelity store can be collected by automated sensors from one or more similar stores (“monitored” stores). The present system may take as initial input historical data from a set of monitored stores and historical data for a set of manual stores. The system may continuously receive, over time, monitored data from monitored stores data and unmonitored data from manual stores. The system generates a model using the monitored data and the unmonitored data and applies the model to user-specified input data parameters to generate estimates of an inventory parameter, such as remaining material quantities in the set of manual unmonitored stores since their latest manual data collection.

Claims (126)

1. A system for estimating an inventory parameter of an unmonitored store based on a correlation between a corresponding time and a corresponding inventory level of the unmonitored store as of the corresponding time, the system comprising:

a monitoring sensor adapted for use at a monitored store, wherein the monitoring sensor is an electronic sensor adapted to generate monitored data in a digital format, wherein the monitored data indicate an inventory level measurement at a measurement time for the monitored store; and wherein the electronic sensor is adapted to communicate via a communication device that is adapted to transmit the monitored data from the electronic sensor to a computing device;

and a computer program product, wherein the computer program product is adapted to be stored on a non-transitory machine-readable medium of the computing device and includes computer instructions that are executable using a processor of the computing device that, when executed by the processor, cause the processor to execute a computer-implemented method for estimating the correlation between the corresponding time and the corresponding inventory level of the unmonitored store as of the corresponding time;

wherein the computer-implemented method includes capabilities of:

receiving monitored data generated using the monitoring sensor providing the inventory level measurement at the measurement time for the monitored store;

receiving unmonitored data associated with the unmonitored store, wherein the unmonitored data indicate a historical corresponding inventory level as of a historical corresponding time for the unmonitored store;

generating a model to estimate the correlation between the corresponding inventory level and the corresponding time of the unmonitored store based at least on the monitored data and the unmonitored data;

estimating the correlation between the corresponding inventory level and the corresponding time for the unmonitored store based on the model; and

estimating the inventory parameter of the unmonitored store based on the model;

wherein estimating the inventory parameter of the unmonitored store includes using the correlation between the corresponding inventory level and the corresponding time of the unmonitored store to estimate a corresponding inventory level estimate of the unmonitored store for a specified time, to estimate a corresponding time estimate for a specified inventory level of the unmonitored store, or to estimate the corresponding inventory level estimate for the specified time and to estimate the corresponding time estimate for the specified inventory level;

wherein the monitored store and the unmonitored store share similarities in store configuration, store inventory, and inventory depletion, whereby these similarities enable the unmonitored store to be compared with the monitored store for purposes of estimating the inventory parameter of the unmonitored store, in which a measured inventory parameter of the monitored store may be extrapolated or interpolated to generate an estimated inventory parameter of the unmonitored store;

wherein the monitored store comprises a store that includes the monitoring sensor;

wherein the unmonitored store comprises a store that does not include an electronic sensor adapted to generate the unmonitored data and transmit the unmonitored data to the computing device; and

wherein the unmonitored data are not generated by an electronic sensor in communication with the computing device and transmitted to the computing device.

2. The system according to claim 1 , wherein:

the unmonitored data comprise a historical resupply time for the unmonitored store and a historical inventory level measurement for the unmonitored store as of the historical resupply time.

3. The system according to claim 1 , wherein:

the computer-implemented method further comprises:

receiving the monitored data measured by the monitoring sensor at a first frequency; and

receiving the unmonitored data obtained at a second frequency, in which the second frequency is lower than the first frequency.

4. The system according to claim 1 , wherein:

the model comprises a first model and a second model; and

the generating comprises:

generating the first model for a first seasonal time period, and

generating the second model for a second seasonal time period, in which the second seasonal time period is different from the first seasonal time period.

5. The system according to claim 1 , wherein:

the computer-implemented method further comprises:

receiving updated unmonitored data associated with the unmonitored store; and

updating the model based on the updated unmonitored data, wherein the model is updated to more accurately estimate the correlation between the corresponding inventory level and the corresponding time for the unmonitored store based on the model updated based on the updated unmonitored data.

6. The system according to claim 5 , wherein:

the computer-implemented method further comprises:

estimating an inventory consumption rate for the unmonitored store.

7. The system according to claim 1 , wherein:

the computer-implemented method further comprises:

receiving updated monitored data generated using the monitoring sensor associated with the monitored store; and

updating the model based on the updated monitored data, wherein the model is updated to more accurately estimate the correlation between the corresponding inventory level and the corresponding time for the unmonitored store based on the model updated based on the updated monitored data.

8. The system according to claim 7 , wherein:

the updated monitored data comprise a most recent inventory level measurement for the monitored store.

9. The system according to claim 1 , wherein:

the computer-implemented method further comprises:

estimating the corresponding inventory level estimate of the unmonitored store for the specified time.

10. The system according to claim 1 , wherein:

the computer-implemented method further comprises:

estimating the corresponding time estimate for the specified inventory level of the unmonitored store.

11. A method for estimating an inventory parameter of an unmonitored store based on a correlation between a corresponding time and a corresponding inventory level of the unmonitored store as of the corresponding time, the method comprising:

communicating with a monitoring sensor adapted for use at a monitored store, wherein the monitoring sensor is an electronic sensor adapted to generate monitored data in a digital format, wherein the monitored data indicate an inventory level measurement at a measurement time for the monitored store; and wherein the electronic sensor is adapted to communicate via a communication device that is adapted to transmit the monitored data from the electronic sensor to a computing device; and

executing a computer program product, wherein the computer program product is adapted to be stored on a non-transitory machine-readable medium of the computing device and includes computer instructions that are executable using a processor of the computing device that, when executed by the processor, cause the processor to execute a computer-implemented method for estimating the correlation between the corresponding time and the corresponding inventory level of the unmonitored store as of the corresponding time;

wherein the computer-implemented method includes capabilities of:

receiving monitored data generated using the monitoring sensor providing the inventory level measurement at the measurement time for the monitored store;

receiving unmonitored data associated with the unmonitored store, wherein the unmonitored data indicate a historical corresponding inventory level as of a historical corresponding time for the unmonitored store;

generating a model to estimate the correlation between the corresponding inventory level and the corresponding time of the unmonitored store based at least on the monitored data and the unmonitored data;

estimating the correlation between the corresponding inventory level and the corresponding time for the unmonitored store based on the model; and

estimating the inventory parameter of the unmonitored store based on the model;

wherein estimating the inventory parameter of the unmonitored store includes using the correlation between the corresponding inventory level and the corresponding time of the unmonitored store to estimate a corresponding inventory level estimate of the unmonitored store for a specified time, to estimate a corresponding time estimate for a specified inventory level of the unmonitored store, or to estimate the corresponding inventory level estimate for the specified time and to estimate the corresponding time estimate for the specified inventory level;

wherein the monitored store and the unmonitored store share similarities in store configuration, store inventory, and inventory depletion, whereby these similarities enable the unmonitored store to be compared with the monitored store for purposes of estimating the inventory parameter of the unmonitored store, in which a measured inventory parameter of the monitored store may be extrapolated or interpolated to generate an estimated inventory parameter of the unmonitored store;

wherein the monitored store comprises a store that includes the monitoring sensor;

wherein the unmonitored store comprises a store that does not include an electronic sensor adapted to generate the unmonitored data and transmit the unmonitored data to the computing device; and

wherein the unmonitored data are not generated by an electronic sensor in communication with the computing device and transmitted to the computing device.

12. The method according to claim 11 , wherein:

the unmonitored data comprise a historical resupply time for the unmonitored store and a historical inventory level measurement for the unmonitored store as of the historical resupply time.

13. The method according to claim 11 , wherein:

the computer-implemented method further comprises:

receiving the monitored data measured by the monitoring sensor at a first frequency; and

receiving the unmonitored data obtained at a second frequency, in which the second frequency is lower than the first frequency.

14. The method according to claim 11 , wherein:

the model comprises a first model and a second model;

and the generating comprises:

generating the first model for a first seasonal time period, and generating the second model for a second seasonal time period,

in which the second seasonal time period is different from the first seasonal time period.

15. The method according to claim 11 , wherein:

the computer-implemented method further comprises:

receiving updated unmonitored data associated with the unmonitored store; and

updating the model based on the updated unmonitored data, wherein the model is updated to more accurately estimate the correlation between the corresponding inventory level and the corresponding time for the unmonitored store based on the model updated based on the updated unmonitored data.

16. The method according to claim 15 , wherein:

the computer-implemented method further comprises:

estimating an inventory consumption rate for the unmonitored store.

17. The method according to claim 11 , wherein:

the computer-implemented method further comprises:

receiving updated monitored data generated using the monitoring sensor associated with the monitored store; and

updating the model based on the updated monitored data, wherein the model is updated to more accurately estimate the correlation between the corresponding inventory level and the corresponding time for the unmonitored store based on the model updated based on the updated monitored data.

18. The method according to claim 17 , wherein:

the updated monitored data comprise a most recent inventory level measurement for the monitored store.

19. The method according to claim 11 , wherein:

the computer-implemented method further comprises:

estimating the corresponding inventory level estimate of the unmonitored store for the specified time.

20. The method according to claim 11 , wherein:

the computer-implemented method further comprises:

estimating the corresponding time estimate for the specified inventory level of the unmonitored store.

21. A computer program product for estimating an inventory parameter of an unmonitored store based on a correlation between a corresponding time and a corresponding inventory level of the unmonitored store as of the corresponding time, wherein the computer program product is adapted to be stored on a non-transitory machine-readable medium of a computing device, the computer program product comprising:

computer instructions that are executable using a processor of the computing device that, when executed by the processor, cause the processor to execute a computer-implemented method for estimating the correlation between the corresponding time and the corresponding inventory level of the unmonitored store as of the corresponding time;

wherein the computer-implemented method includes capabilities of:

communicating with a monitored store having a monitoring sensor adapted for use at the monitored store, wherein the monitoring sensor is an electronic sensor adapted to generate monitored data in a digital format, wherein the monitored data indicate an inventory level measurement at a measurement time for the monitored store; and wherein the electronic sensor is adapted to communicate via a communication device that is adapted to transmit the monitored data from the electronic sensor to the computing device;

receiving monitored data generated using the monitoring sensor providing the inventory level measurement at the measurement time for the monitored store;

receiving unmonitored data associated with the unmonitored store, wherein the unmonitored data indicate a historical corresponding inventory level as of a historical corresponding time for the unmonitored store;

generating a model to estimate the correlation between the corresponding inventory level and the corresponding time of the unmonitored store based at least on the monitored data and the unmonitored data;

estimating the correlation between the corresponding inventory level and the corresponding time for the unmonitored store based on the model; and

estimating the inventory parameter of the unmonitored store based on the model;

wherein estimating the inventory parameter of the unmonitored store includes using the correlation between the corresponding inventory level and the corresponding time of the unmonitored store to estimate a corresponding inventory level estimate of the unmonitored store for a specified time, to estimate a corresponding time estimate for a specified inventory level of the unmonitored store, or to estimate the corresponding inventory level estimate for the specified time and to estimate the corresponding time estimate for the specified inventory level;

wherein the monitored store and the unmonitored store share similarities in store configuration, store inventory, and inventory depletion, whereby these similarities enable the unmonitored store to be compared with the monitored store for purposes of estimating the inventory parameter of the unmonitored store, in which a measured inventory parameter of the monitored store may be extrapolated or interpolated to generate an estimated inventory parameter of the unmonitored store;

wherein the monitored store comprises a store that includes the monitoring sensor;

wherein the unmonitored store comprises a store that does not include an electronic sensor adapted to generate the unmonitored data and transmit the unmonitored data to the computing device; and

wherein the unmonitored data are not generated by an electronic sensor in communication with the computing device and transmitted to the computing device.

22. A method for estimating an inventory parameter of an unmonitored store based on a correlation between a corresponding time and a corresponding inventory level of the unmonitored store as of the corresponding time, the method comprising:

communicating with a monitoring sensor adapted for use at a monitored store, wherein the monitoring sensor is an electronic sensor adapted to generate monitored data in a digital format, wherein the monitored data indicate an inventory level measurement at a measurement time for the monitored store; and wherein the electronic sensor is adapted to communicate via a communication device that is adapted to transmit the monitored data from the electronic sensor to a computing device; and

executing a computer program product, wherein the computer program product is adapted to be stored on a non-transitory machine-readable medium of the computing device and includes computer instructions that are executable using a processor of the computing device that, when executed by the processor, cause the processor to execute a computer-implemented method for estimating the correlation between the corresponding time and the corresponding inventory level of the unmonitored store as of the corresponding time;

wherein the computer-implemented method includes capabilities of:

receiving monitored data generated using the monitoring sensor providing the inventory level measurement at the measurement time for the monitored store;

receiving unmonitored data associated with the unmonitored store, wherein the unmonitored data indicate a historical corresponding inventory level as of a historical corresponding time for the unmonitored store;

filtering the monitored data by a monitored data filter to remove any non-compliant monitored data that do not meet a monitored data filter requirement of the monitored data;

providing to a computing environment any compliant monitored data, in which compliant monitored data comprise monitored data that pass the monitored data filter, after meeting each monitored data filter requirement, and after removing non-compliant monitored data;

filtering the unmonitored data by an unmonitored data filter to remove any non-compliant unmonitored data that do not meet an unmonitored data filter requirement of the unmonitored data;

providing to the computing environment any compliant unmonitored data, in which compliant unmonitored data comprise unmonitored data that pass the unmonitored data filter, after meeting each unmonitored data filter requirement, and after removing non-compliant unmonitored data;

collecting the compliant monitored data and the compliant unmonitored data in the computing environment for purposes of comparing any non-blocked compliant monitored data and any non-blocked compliant unmonitored data;

blocking comparison of a corresponding dataset of compliant monitored data and compliant unmonitored data by a blocking module in the computing environment, in which the blocking module blocks comparison of any blocked corresponding dataset of any blocked compliant unmonitored data and any blocked compliant unmonitored data that does not meet a blocking module requirement of the corresponding dataset of the compliant monitored data and the compliant unmonitored data, and in which the blocking module does not block comparison of any non-blocked corresponding dataset of any non-blocked compliant unmonitored data and any non-blocked compliant unmonitored data that does meet each blocking module requirement of the corresponding dataset of the compliant monitored data and the compliant unmonitored data;

computing an overlapped event history as a factor of the correlation by a computation module in the computing environment, in which the overlapped event history is computed by comparing the non-blocked corresponding dataset of the non-blocked compliant monitoring data and the non-blocked compliant unmonitored data;

storing each overlapped event history as overlapped event history data in an overlapped event history database in the computing environment, in which the overlapped event history data and the overlapped event history database are available for use in subsequent steps of the method, including any repeated steps of the method; and

generating a model to estimate the correlation between the corresponding inventory level and the corresponding time of the unmonitored store based at least on the overlapped event history data and on the non-blocked corresponding datasets of the non-blocked compliant monitored data and the non-blocked compliant unmonitored data;

estimating the correlation between the corresponding inventory level and the corresponding time for the unmonitored store based on the model; and

estimating the inventory parameter of the unmonitored store based on the model;

wherein estimating the inventory parameter of the unmonitored store includes using the correlation between the corresponding inventory level and the corresponding time of the unmonitored store to estimate a corresponding inventory level estimate of the unmonitored store for a specified time, to estimate a corresponding time estimate for a specified inventory level of the unmonitored store, or to estimate the corresponding inventory level estimate for the specified time and to estimate the corresponding time estimate for the specified inventory level;

wherein the blocking module is adapted to confirm that the monitored store and the unmonitored store share similarities in store configuration, store inventory, and inventory events, whereby these similarities enable the unmonitored store to be compared with the monitored store for purposes of estimating the inventory parameter of the unmonitored store, in which a measured inventory parameter of the monitored store may be extrapolated or interpolated to generate an estimated inventory parameter of the unmonitored store;

wherein the monitored store comprises a store that includes the monitoring sensor;

wherein the unmonitored store comprises a store that does not include an electronic sensor adapted to generate the unmonitored data and transmit the unmonitored data to the computing device; and

wherein the unmonitored data are not generated by an electronic sensor in communication with the computing device and transmitted to the computing device.

23. The method according to claim 22 , wherein:

the computing environment comprises a parallelization employing parallel processing or distributed computing.

Assignments (3)
SECURITY INTEREST Recorded Jan 20, 2026
From: DATAONLINE LLC
To: GOLUB CAPITAL LLC, AS AGENT
Reel/Frame 073515/0118 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 24, 2024
From: TREBAOL, THEODORE; TREBAOL, LOUIS
To: DATAONLINE, L.L.C.
Reel/Frame 069674/0256 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 9, 2023
From: DEY, SOURAV; HAYES, JOSHUA
To: DATAONLINE, L.L.C.
Reel/Frame 062640/0735 →
Continuity (2)
Provisional Application 63040759 · Jun 18, 2020
Related Publication 20210398062A1 · Dec 23, 2021
References Cited (22)
US 6736316B2 · Neumark · 2004 [cited by applicant]
US 7953839B2 · Sim et al. · 2011 [cited by applicant]
US 8341106B1 · Scolnicov et al. · 2012 [cited by applicant]
US 9435675B2 · Wise · 2016 [cited by applicant]
US 9811103B2 · Willig · 2017 [cited by applicant]
US 10119657B2 · Suman · 2018 [cited by applicant]
US 10533709B2 · Jacobsen et al. · 2020 [cited by applicant]
US 10692022B2 · Alphenaar et al. · 2020 [cited by applicant]
US 11003974B2 · Carr et al. · 2021 [cited by applicant]
US 20090037283A1 · Anderson · 2009 [cited by applicant]
US 20110140850A1 · Wassel · 2011 [cited by examiner]
US 20120278129A1 · Salomatin et al. · 2012 [cited by applicant]
US 20130293388A1 · Ingalsbe et al. · 2013 [cited by applicant]
US 20160072287A1 · Jia · 2016 [cited by examiner]
US 20180234748A1 · Haddy · 2018 [cited by examiner]
WO 2012073044A3 · 2012 [cited by applicant]
WO 2012099588A1 · 2012 [cited by applicant]
WO 2019082185A1 · 2019 [cited by applicant]
WO 2020002688A1 · 2020 [cited by applicant]
“Rosemount TankMaster Inventory Management Software”. Web Page <https://www.emerson.com/documents/automation/product-data-sheet-rosemount-tankmaster-en-us-29414.pdf>, retrieved on Aug. 30, 2021. [cited by applicant]
International Search Report- PCT/US2021/038040, Dataonline, L.L.C. dated Oct. 7, 2021. [cited by applicant]
Written Opinion of the International Searching Authority (ISA)—PCT/US2021/038040, Dataonline, L.L.C. dated Oct. 7, 2021. [cited by applicant]