IP Library Granted Patent US 10,373,519
Granted Patent B1
US 10,373,519 · App. 15/340,578 · Granted Aug 6, 2019

System and method for determining and providing activity recommendations

Inventors: Reid Offringa (San Francisco, CA); Michael S. Greenfield (Mountain View, CA)
Assignee: Glooko Inc.
G09B19/003A61B5/14532A61B5/7242A61B5/7264
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,373,519
App. No.
15/340,578
Granted
Aug 6, 2019
Kind
B1
Abstract

A method and apparatus for determining and providing activity recommendations includes receiving glucose level data and activity data. The glucose level data is formed into two or more data sets, with each set representing a different time period. Each data set is evaluated and ranked against each other set according to one or more of several different individual factors and the individual ranking for each set are combined, resulting in an overall ranking for given data sets. A highest ranked data set is then determined, which is associated thereby with a highest ranked time period. Activities of the activity data which took place within the highest ranked time period are provided as recommendations to the user to encourage greater numbers of times those activities are undertaken.

Claims (108)

1. A computing system implemented method for determining and providing activity recommendations comprising:

receiving, from at least one glucose collection device associated with an individual, glucose level data representing a plurality of glucose level readings taken from the individual over a time span;

forming, from the glucose level data representing the plurality of glucose level readings, a plurality of subsamples of glucose level data, each subsample of glucose level data comprising glucose level data representing individual glucose levels of the plurality of glucose levels taken within a given time period associated with the subsample,

receiving, from an activity data source associated with the individual, activity data representing one or more activities performed by the individual, with at least one activity being received for each of the time periods associated with the subsamples;

determining, for each subsample, an average area under the curve associated with the glucose levels of the subsample;

determining, for each subsample, a standard deviation of the glucose readings of the subsample;

performing, for each subsample, a biotransform algorithm on each individual glucose reading of the subsample;

determining, for each subsample, a min-max total associated with the glucose readings of the subsample;

ranking each subsample against each other subsample, the rankings being at least partly based on the average area under the curve for each subsample, the standard deviation for each subsample, the biotransform for each subsample and the min-max total for each subsample;

determining a highest ranked time period associated with a highest ranked subsample;

determining one or more activities of the activity data representing one or more activities performed by the individual that were performed within the determined highest ranked time period; and

recommending that the individual increase a number of instances which the one or more determined activities are performed.

2. The computing system implemented method of claim 1 further wherein each subsample covers a different 24-hour period.

3. The computing system implemented method of claim 1 further wherein each subsample covers a 24-hour period corresponding to a day of a week.

4. The computing system implemented method of claim 1 further comprising defining a glucose range having an upper threshold glucose level and a lower threshold glucose level, the upper threshold glucose level being a higher amount of glucose above which is considered to be undesirable, the lower threshold glucose level being a lower amount of glucose below which is considered to be undesirable;

further wherein the biotransform algorithm takes into consideration the upper and lower threshold glucose levels.

5. The computing system implemented method of claim 1 wherein the biotransform algorithm places increased emphasis on glucose levels below the lower threshold glucose level as compared with an emphasis placed on glucose levels above the upper threshold glucose level.

6. The computing system implemented method of claim 1 further wherein the upper threshold glucose level is between 110 and 130.

7. The computing system implemented method of claim 4 further wherein the upper threshold glucose level is 120.

8. The computing system implemented method of claim 1 further wherein the lower threshold glucose level is between 60 and 80.

9. The computing system implemented method of claim 1 further wherein the lower threshold glucose level is 70.

10. The computing system implemented method of claim 1 wherein the glucose collection device is a continuously monitoring glucose collection device which samples glucose levels of the individual at least 100 times per time period.

11. The computing system implemented method of claim 10 wherein the glucose collection device is a continuously monitoring glucose collection device which samples glucose of the individual between 100 and 300 times per time period.

12. The computing system implemented method of claim 10 wherein the average area under the curve associated with the glucose levels of the subsample is determined by,

for each two consecutive glucose level values:

for individual ones of the two consecutive glucose level values that is above 180, subtract 180 and use the transformed result in further area under the curve operations;

for individual ones of the two consecutive glucose level values that are below the lower threshold glucose level, subtract the lower threshold glucose level, square the result, and use the squared result in further area under the curve operations; and

combine a value of the first of the two consecutive glucose levels with a value of the second of the two consecutive glucose levels, multiply with a length of time that occurred between the two readings being taken, and divide the result by two; and

add all of the individual areas under the curve together and divide by the number of individual areas under the curve being added together, resulting in an average area under the curve.

13. The computing system implemented method of claim 1 wherein ranking each subsample against each other for each glucose reading data set includes individually numerically ranking each subsample against each other subsample on the average area under the curve;

individually numerically ranking each subsample against each other subsample on the standard deviation of the subsample;

individually numerically ranking each subsample against each other subsample on the results of performing a biotransform algorithm;

individually numerically ranking each subsample against each other subsample on the min-max total;

for each given subsample, combining the numerical rankings of the subsample with respect to average area under the curve, standard deviation, the results of performing a biotransform algorithm and the min-max total, resulting in a combined ranking for the given subsample; and

for each given subsample, dividing the combined ranking for the given glucose reading data set by four resulting in an overall subsample ranking for the given subsample.

14. A nontransitory computer-readable medium having stored thereon computer-executable instructions which, when executed by a computing processor, perform a process for determining and providing activity recommendations, the process comprising:

receiving, from at least one glucose collection device associated with an individual, glucose level data representing a plurality of glucose level readings taken from the individual over a plurality of time periods;

forming, from the glucose level data representing the plurality of glucose level readings, a plurality of subsamples of glucose levels data, each subsample of glucose level data comprising glucose levels data representing individual glucose levels of the plurality of glucose levels taken within a given time period,

receiving, from an activity data source associated with the individual, activity data representing one or more activities performed by the individual, with at least one activity being received with respect to each of the time periods;

determining, for each subsample, an average area under the curve associated with the glucose levels of the subsample;

determining, for each subsample, a standard deviation of the glucose readings of the subsample;

performing, for each subsample, a biotransform algorithm on each individual glucose reading of the subsample;

determining, for each subsample, a min-max total associated with the glucose readings of the subsample;

ranking each subsample against each other subsample, the rankings being at least partly based on the average area under the curve for each subsample, the standard deviation for each subsample, the biotransform for each subsample and the min-max total for each subsample;

determining a highest ranked time period associated with a highest ranked subsample;

determining one or more activities of the activity data representing one or more activities performed by the individual that were performed within the determined highest ranked time period; and

recommending that the individual increase a number of instances which the one or more determined activities are performed.

15. The computing system implemented method of claim 14 further wherein each time period covers a 24-hour period.

16. The computing system implemented method of claim 14 further wherein each time period covers a 24-hour period corresponding to a day of a week.

17. The computing system implemented method of claim 14 further comprising defining a glucose range having an upper threshold glucose level and a lower threshold glucose level, the upper threshold glucose level being a higher amount of glucose above which is considered to be undesirable, the lower threshold glucose level being a lower amount of glucose below which is considered to be undesirable;

further wherein the biotransform algorithm takes into consideration the upper and lower threshold glucose levels.

18. The computing system implemented method of claim 17 wherein the biotransform algorithm places increased emphasis on glucose levels below the lower threshold glucose level as compared with an emphasis placed on glucose levels above the upper threshold glucose level.

19. The computing system implemented method of claim 17 further wherein the upper threshold glucose level is between 110 and 130.

20. The computing system implemented method of claim 17 further wherein the upper threshold glucose level is 120.

21. The computing system implemented method of claim 17 further wherein the lower threshold glucose level is between 60 and 80.

22. The computing system implemented method of claim 17 further wherein the lower threshold glucose level is 70.

23. The computing system implemented method of claim 14 wherein the glucose collection device is a continuously monitoring glucose collection device which samples glucose levels of the individual at least 100 times per time period.

24. The computing system implemented method of claim 23 wherein the glucose collection device is a continuously monitoring glucose collection device which samples glucose of the individual between 100 and 300 times per time period.

25. The computing system implemented method of claim 14 wherein the average area under the curve associated with the glucose levels of the subsample is determined by,

for each two consecutive glucose level values:

for individual ones of the two consecutive glucose level values that is above 180, subtract 180 and use the transformed result in further area under the curve operations;

for individual ones of the two consecutive glucose level values that are below the lower threshold glucose level, subtract the lower threshold glucose level, square the result, and use the squared result in further area under the curve operations; and

combine a value of the first of the two consecutive glucose levels with a value of the second of the two consecutive glucose levels, multiply with a length of time that occurred between the two readings being taken, and divide the result by two; and

add all of the individual areas under the curve together and divide by the number of individual areas under the curve being added together, resulting in an average area under the curve.

26. The computing system implemented method of claim 14 wherein ranking each glucose reading data set against each other for each glucose reading data set includes

individually numerically ranking each subsample against each other subsample on the average area under the curve;

individually numerically ranking each subsample against each other subsample on the standard deviation of the subsample;

individually numerically ranking each subsample against each other subsample on the results of performing a biotransform algorithm;

individually numerically ranking each subsample against each other subsample on the min-max total;

for each given subsample, combining the numerical rankings of the subsample with respect to average area under the curve, standard deviation, the results of performing a biotransform algorithm and the min-max total, resulting in a combined ranking for the given subsample; and

for each given subsample, dividing the combined ranking for the given glucose reading data set by four resulting in an overall subsample ranking for the given subsample.

27. A system for determining and providing activity recommendations, comprising:

one or more computing processors;

one or more memories operatively coupled the one or more computing processors, the one or more memories having stored therein computing processor executable instructions which when executed by the one or more computing processors perform a process for determining and providing activity recommendations comprising:

receiving, from at least one glucose collection device associated with an individual, glucose level data representing a plurality of glucose level readings taken from the individual over a plurality of time periods;

forming, from the glucose level data representing the plurality of glucose level readings, a plurality of subsamples of glucose levels data, each subsample of glucose level data comprising glucose levels data representing individual glucose levels of the plurality of glucose levels taken within a given time period,

receiving, from an activity data source associated with the individual, activity data representing one or more activities performed by the individual, with at least one activity being received with respect to each of the time periods;

determining, for each subsample, an average area under the curve associated with the glucose levels of the subsample;

determining, for each subsample, a standard deviation of the glucose readings of the subsample;

performing, for each subsample, a biotransform algorithm on each individual glucose reading of the subsample;

determining, for each subsample, a min-max total associated with the glucose readings of the subsample;

ranking each subsample against each other subsample, the rankings being at least partly based on the average area under the curve for each subsample, the standard deviation for each subsample, the biotransform for each subsample and the min-max total for each subsample;

determining a highest ranked time period associated with a highest ranked subsample;

determining one or more activities of the activity data representing one or more activities performed by the individual that were performed within the determined highest ranked time period; and

recommending that the individual increase a number of instances which the one or more determined activities are performed.

28. The computing system implemented method of claim 27 further wherein each time period covers a 24-hour period.

29. The computing system implemented method of claim 27 further wherein each time period covers a 24-hour period corresponding to a day of a week.

30. The computing system implemented method of claim 27 further comprising defining a glucose range having an upper threshold glucose level and a lower threshold glucose level, the upper threshold glucose level being a higher amount of glucose above which is considered to be undesirable, the lower threshold glucose level being a lower amount of glucose below which is considered to be undesirable;

further wherein the biotransform algorithm takes into consideration the upper and lower threshold glucose levels.

31. The computing system implemented method of claim 30 wherein the biotransform algorithm places increased emphasis on glucose levels below the lower threshold glucose level as compared with an emphasis placed on glucose levels above the upper threshold glucose level.

32. The computing system implemented method of claim 30 further wherein the upper threshold glucose level is between 110 and 130.

33. The computing system implemented method of claim 30 further wherein the upper threshold glucose level is 120.

34. The computing system implemented method of claim 30 further wherein the lower threshold glucose level is between 60 and 80.

35. The computing system implemented method of claim 30 further wherein the lower threshold glucose level is 70.

36. The computing system implemented method of claim 27 wherein the glucose collection device is a continuously monitoring glucose collection device which samples glucose levels of the individual at least 100 times per time period.

37. The computing system implemented method of claim 36 wherein the glucose collection device is a continuously monitoring glucose collection device which samples glucose of the individual between 100 and 300 times per time period.

38. The computing system implemented method of claim 27 wherein the average area under the curve associated with the glucose readings of the set is determined by,

for each two consecutive glucose level values:

for individual ones of the two consecutive glucose level values that is above 180, subtract 180 and use the transformed result in further area under the curve operations;

for individual ones of the two consecutive glucose level values that are below the lower threshold glucose level, subtract the lower threshold glucose level, square the result, and use the squared result in further area under the curve operations; and

combine a value of the first of the two consecutive glucose levels with a value of the second of the two consecutive glucose levels, multiply with a length of time that occurred between the two readings being taken, and divide the result by two; and

add all of the individual areas under the curve together and divide by the number of individual areas under the curve being added together, resulting in an average area under the curve.

39. The computing system implemented method of claim 27 wherein ranking each subsample against each other glucose reading data set includes individually numerically ranking each subsample against each other subsample on the average area under the curve;

individually numerically ranking each subsample against each other subsample on the standard deviation of the subsample;

individually numerically ranking each subsample against each other subsample on the results of performing a biotransform algorithm;

individually numerically ranking each subsample against each other subsample on the min-max total;

for each given subsample, combining the numerical rankings of the subsample with respect to average area under the curve, standard deviation, the results of performing a biotransform algorithm and the min-max total, resulting in a combined ranking for the given subsample; and

for each given subsample, dividing the combined ranking for the given glucose reading data set by four resulting in an overall subsample ranking for the given subsample.

Assignments (8)
SECURITY INTEREST Recorded Dec 18, 2025
From: GLOOKO, INC.
To: VISTARA TECHNOLOGY GROWTH FUND V MASTER, LP, AS AGENT
Reel/Frame 073263/0740 →
RELEASE OF SECURITY INTEREST IN PATENTS Recorded Dec 3, 2025
From: BANK OF MONTREAL
To: GLOOKO, INC.
Reel/Frame 073827/0969 →
SECURITY INTEREST Recorded Mar 11, 2025
From: GLOOKO, INC.
To: STIFEL BANK
Reel/Frame 070475/0025 →
SECURITY INTEREST Recorded Feb 26, 2024
From: GLOOKO, INC.
To: BANK OF MONTREAL
Reel/Frame 066556/0550 →
TERMINATION AND RELEASE OF INTELLECTUAL PROPERTY SECURITY AGREEMENT AT REEL/FRAME NO. 57688/0162 Recorded Feb 23, 2024
From: SLR INVESTMENT CORP.
To: GLOOKO, INC.
Reel/Frame 066664/0685 →
RELEASE OF SECURITY INTEREST Recorded Oct 6, 2021
From: BANK OF MONTREAL
To: GLOOKO, INC.
Reel/Frame 057726/0280 →
INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Sep 30, 2021
From: GLOOKO, INC.
To: SLR INVESTMENT CORP., AS COLLATERAL AGENT
Reel/Frame 057688/0162 →
SECURITY INTEREST Recorded Jul 6, 2020
From: GLOOKO, INC.
To: BANK OF MONTREAL
Reel/Frame 053129/0166 →
Continuity (1)
Continuation In Part 15276070 · Sep 26, 2016