IP Library Granted Patent US 11,056,902
Granted Patent B2
US 11,056,902 · App. 15/940,335 · Granted Jul 6, 2021

Battery management assistant

Inventors: Victor Muntes (Barcelona, ES); Steven Greenspan (Islandia, NY); Marc Sole Simo (Barcelona, ES)
Assignee: CA, INC.
H02J7/0071G01R31/382H01M10/425H01M10/48H02J7/0047H01M2010/4271H02J7/0048
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 11,056,902
App. No.
15/940,335
Filed
Mar 29, 2018
Granted
Jul 6, 2021
Kind
B2
Art Unit
2859
USPC
320/134
Abstract

Provided is a process of determining a future battery level of one or more battery-powered computing devices, the process including: accessing an event record in memory describing a scheduled event in which a user of a plurality of computing devices is scheduled to participate, inferring a subset of the plurality of computing devices to be used in that time period, determining present battery levels of the computing devices, the levels being values indicative of an amount of energy stored by batteries, determining present usage rates of battery energy, inferring battery outlooks corresponding to the scheduled event, a battery outlook being an estimated amount of energy consumption attributable to the scheduled event, and predicting future battery levels of computing devices based on at least a present battery level, a present usage rate, and a battery outlook corresponding to the scheduled event.

Claims (97)

1. A method of determining a future battery level of one or more battery-powered computing devices, the method comprising:

accessing, with one or more processors, an event record in memory describing a scheduled event in which a user of a plurality of computing devices is scheduled to participate in the future;

inferring, with one or more processors, a subset of the plurality of computing devices to be used in a time period corresponding to the scheduled event;

determining, with one or more processors, present battery levels of the subset of the plurality of computing devices, the levels being values indicative of an amount of energy stored by batteries;

determining, with one or more processors, present usage rates of battery energy by the subset of the plurality of computing devices;

inferring, with one or more processors, battery outlooks corresponding to the scheduled event, a battery outlook being an estimated amount of energy consumption attributable to the scheduled event;

predicting, with one or more processors, future battery levels of the subset of the plurality of computing devices based on at least a present battery level, a present usage rate, and a battery outlook corresponding to the scheduled event to improve battery usage or battery management of the computing device;

comparing a future battery level to a threshold amount;

determining, based on the comparison, that the future battery level satisfies the threshold and, in response, causing a message to be presented to the user, wherein the message is one or more of: a recommendation to charge the device, a recommendation to alter the operation of the device, a recommendation to turn off the device, or a recommendation to use alternate sources of power;

comparing a future use of the device with the message to create a determination of compliance with the message;

storing, with one or more processors, the determination of compliance with the message; and

determining whether to present a future message based on the stored determination of compliance.

2. The method of claim 1 , wherein the inferring a battery outlook corresponding to the scheduled event comprises:

programmatically associating the scheduled event with a past event based on: 1) natural language text in the record describing a geolocation of the event; or 2) a description of an activity of the event;

querying a battery usage log to retrieve a historical energy usage record having an amount of energy usage determined to be attributable to the past event;

determining, with one or more processors, based on one or more differences between the scheduled event and the past event, a scaling factor; and

scaling, based on the scaling factor, the battery usage for the past event to determine a predicted energy usage attributable to the scheduled event.

3. The method of claim 1 wherein:

determining, with one or more processors, a present usage rate of battery energy comprises estimating the present usage rate based at least two of the following:

(1) a usage rate at an identified time period in the past,

(2) a usage rate of a current user of the computing device,

(3) a usage rate based on an identified application,

(4) a usage rate based on an identified plurality of tasks, or

(5) a usage rate based on a plurality of peripheral components of the computing device or connected to the computing device.

4. The method of claim 1 , comprising:

training a supervised battery-outlook estimation model on logged event records, wherein:

each logged event record includes a plurality of features of a respective event and a respective amount of battery usage attributable to the respective event; and

training the supervised battery-outlook estimation model comprises iteratively adjusting a plurality of model parameters, scoring current parameters with an objective function that indicates an aggregate amount of error between predictions of the model with the current parameters based on logged event record features and logged event record amounts of battery usage, and selecting new parameters as current parameters that reduce the aggregate amount of error,

wherein inferring a battery outlook corresponding to the scheduled event comprises inputting features of the scheduled event into the trained supervised battery-outlook estimation model.

5. The method of claim 1 , further comprising:

obtaining, with one or more processors, a geolocation of a subset of the plurality of computing devices;

accessing, with one or more processors, a plurality of stored geolocations of charging locations; and

programmatically comparing the geolocation of the subset of the plurality of computing devices with the geolocation of plurality of charging locations to return a target charging location.

6. The method of claim 5 , further comprising:

comparing a future battery level to a threshold amount to return a power expectancy;

selecting or forming a message based on the target charging location and the power expectancy; and

causing the selected or formed message to be presented to the user.

7. The method of claim 1 , comprising predicting future battery levels of the subset of the plurality of computing devices based on at least three of the following types of scheduled events:

predicted usage of the subset of the plurality of computing devices of greater than a threshold probability based on historical usage of the subset of the plurality of computing devices;

an entry into a calendar;

an entry in an agenda,

an entry in a task list;

a natural language unstructured human readable text of a text message having a designated n-gram, or

a natural language unstructured human readable text of an email message having a designated n-gram.

8. The method of claim 1 , wherein:

predicting battery outlooks for the scheduled event step comprises determining whether subset of the plurality of computing devices will be used at the scheduled event based on one or more of the geolocation of the scheduled event and usage at an associated past event.

9. The method of claim 1 , further comprising:

adjusting a setting of firmware of a hardware component of subset of the plurality of computing devices based on the predicted future battery levels of the subset of the plurality of computing devices.

10. The method of claim 9 , wherein adjusting the setting comprises:

adjusting, with respect to a subset of the plurality of computing devices,

a screen brightness;

a clock speed; or

a threshold triggering entry into a reduced power mode of a processor.

11. The method of claim 1 , further comprising:

obtaining a task to be performed by one or more of the subset of the plurality of computing devices during the time period; and

selecting for use, based on future battery levels, one or more computing devices among the subset of plurality of computing devices suitable for the task.

12. The method of claim 1 , further comprising:

obtaining a task to be performed by one or more of the subset of the plurality of computing devices;

ranking, based on future battery levels, one or more of the subset of plurality of computing devices capable of performing the task; and

causing an indication of the ranking to be presented to the user.

13. The method of claim 1 , further comprising:

steps for predicting future battery levels based on scheduled events.

14. A method of coordinating power usage in a plurality of devices, comprising:

determining, with one or more processors, a present battery level each of the plurality of devices;

determining, with one or more processors, a present usage rate for each of the plurality of devices;

accessing, with one or more processors, a scheduled event;

calculating, with one or more processors, a battery outlook for the scheduled event for each of the plurality of devices;

calculating, with one or more processors, a future battery level, using at least the present battery level, the present usage rate, and the battery outlook for the scheduled event for each of the plurality of devices;

comparing, with one or more processors, the future battery level of one or more of the plurality of devices with a threshold level to determine a power expectancy;

determining, based on the comparison, that the future battery level satisfies the threshold and, in response, causing a message to be presented to the user, wherein the message is one or more of: a recommendation to charge the device, a recommendation to alter the operation of the device, a recommendation to turn off the device, or a recommendation to use alternate sources of power;

comparing a future use of the device with the message to create a determination of compliance with the message;

storing, with one or more processors, the determination of compliance with the message; and

determining whether to present a future message based on the stored determination of compliance or altering, based on the power expectancy, with one or more processors, at least one usage state of one or more of the plurality of devices; and

wherein altering the usage state comprises one or more of powering one or more of the plurality of devices off, closing an application, turning off an antenna, dimming a screen, or entering a sleep mode.

15. A non-transitory computer-readable medium having computer-executable instructions stored thereon which, when executed by one or more processors effectuate operations comprising:

determining, with one or more processors, a present battery level of a first computing device and a second computing device, the level being a value indicative of an amount of energy stored by the battery;

determining, with one or more processors, a present usage rate of battery energy by the first computing device;

accessing, with one or more processors, an event record in memory describing a scheduled event in which a user of the first computing device is scheduled to participate in the future;

inferring, with one or more processors, a battery outlook corresponding to the scheduled event, the battery outlook being an estimated amount of energy consumption attributable to the scheduled event;

predicting, with one or more processors, a future battery level of the first computing device based on at least the present battery level of the first computing device, the present usage rate of the first computing device, and the battery outlook corresponding to the scheduled event to improve battery usage or battery management of the computing device;

comparing a future battery level to a threshold amount;

determining, based on the comparison, that the future battery level satisfies the threshold and, in response, causing a message to be presented to the user, wherein the message is one or more of: a recommendation to charge the device, a recommendation to alter the operation of the device, a recommendation to turn off the device, or a recommendation to use alternate sources of power;

comparing a future use of the device with the message to create a determination of compliance with the message;

storing, with one or more processors, the determination of compliance with the message; and

determining whether to present a future message based on the stored determination of compliance.

16. The medium of claim 15 , wherein inferring the battery outlook for the scheduled event comprises:

programmatically associating the scheduled event with a past event;

returning a battery usage for the past event;

determining, with one or more processors, based on differences between the scheduled event and the past event, a scaling factor; and

scaling, based on the scaling factor, the battery usage for the past event to determine an anticipated battery usage for the scheduled event.

17. The medium of claim 15 , wherein the operations further comprise:

comparing the future battery level to a threshold amount;

determining, based on the comparison, that the future battery level satisfies the threshold and, in response, causing a message to be presented to the user, wherein the message to a user is one or more of a recommendation to charge the device, a recommendation to alter the operation of the device, a recommendation to turn off the device, or a recommendation to use alternate sources of power.

18. The medium of claim 15 , wherein the operations further comprise:

obtaining, with one or more processors, a geolocation of the first computing device;

accessing, with one or more processors, a plurality of stored geolocations of charging locations; and

programmatically comparing the geolocation of the first computing device with the geolocation of plurality of charging locations to return a target charging location.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 30, 2018
From: MUNTES, VICTOR; GREENSPAN, STEVEN; SOLE SIMO, MARC
To: CA, INC.
Reel/Frame 045396/0516 →
Continuity (1)
Related Publication 20190305383A1 · Oct 3, 2019
Cited By (1)
US 12,511,028