IP Library › Granted Patent US 11,355,937
Granted Patent B2
US 11,355,937 · App. 17/028,445 · Granted Jun 7, 2022

Electrical grid control and optimization

Inventor: Benjamin Hertz-Shargel (Roslyn Estates, NY)
Assignee: Energy Hub, Inc.
H02J3/46G06Q50/06H02J3/06H02J2203/20
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,355,937
App. No.
17/028,445
Granted
Jun 7, 2022
Kind
B2
Abstract

Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for determining controls to be applied to a population of devices. In one aspect, a method comprises: determining a plurality of simulated load curves, wherein each simulated load curve simulates load generated by a respective device from a population of devices based on application of a respective control from a set of controls; adjusting values of a plurality of weights during a plurality of optimization iterations using an optimization technique to optimize a loss function, wherein each weight corresponds to a respective simulated load curve, wherein the loss function measures: a sparsity of the values of the plurality of weights, and an error between: (i) an aggregate load curve that is defined by combining the simulated load curves in accordance with the values of the plurality of weights, and (ii) a target load curve.

Claims (59)

1. A method performed by one or more data processing apparatus, the method comprising:

determining a plurality of simulated load curves, comprising, for each device in a population of devices:

determining, for each control from a set of multiple feasible controls for the device, a respective simulated load curve that simulates a load generated by the device based on application of the control to the device;

obtaining a plurality of weight values that comprises, for each of the plurality of simulated load curves, a respective weight value corresponding to the simulated load curve;

adjusting the plurality of weight values during a plurality of optimization iterations using an optimization technique to optimize a loss function that measures:

a sparsity of the plurality of weight values, and

an error between: (i) an aggregate load curve that is defined by combining the simulated load curves in accordance with the plurality of weight values, and (ii) a target load curve that defines a target for the aggregate load curve;

determining, for each device in the population of devices, a respective control to be applied to the device from the set of multiple feasible controls for the device based on the plurality of weight values after a final optimization iteration, comprising, for each device:

determining that the control to be applied to the device is a control corresponding to a simulated load curve having a highest weight value from among all the simulated load curves for the device; and

transmitting instructions to cause the respective control be applied to at least one device from the population of devices.

2. The method of claim 1 , wherein adjusting the plurality of weight values during the plurality of optimization iterations using the optimization technique to optimize the loss function comprises:

optimizing the loss function subject to a constraint that, for each device from the population of devices, a norm of the weight values corresponding to simulated load curves for the device has a predefined value.

3. The method of claim 2 , wherein the norm is a Euclidean norm and the predefined value of the Euclidean norm is one.

4. The method of claim 1 , wherein adjusting the plurality of weight values during the plurality of optimization iterations using the optimization technique to optimize the loss function comprises:

optimizing the loss function subject to a constraint that each weight value be non-negative.

5. The method of claim 1 , wherein the loss function comprises a sum of a first term that measures the sparsity of the plurality of weight values and a second term that measures the error between: (i) the aggregate load curve that is defined by combining the simulated load curves in accordance with the plurality of weight values, and (ii) the target load curve that defines the target for the aggregate load curve.

6. The method of claim 1 , wherein the aggregate load curve is defined by a linear combination of the simulated load curves, wherein each simulated load curve is scaled in accordance with the weight value corresponding to the simulated load curve.

7. The method of claim 1 , wherein for each device and for each control from the set of multiple feasible controls for the device, determining a respective simulated load curve that simulates load generated by the device based on application of the control to the device comprises:

generating a plurality of possible load curves that each simulate load generated by the device based on application of the control to the device; and

determining the simulated load curve by combining the plurality of possible load curves.

8. The method of claim 1 , wherein the optimization technique is an alternating direction method of multipliers (ADMM) optimization technique.

9. A system comprising:

one or more computers; and

one or more storage devices communicatively coupled to the one or more computers, wherein the one or more storage devices store instructions that, when executed by the one or more computers, cause the one or more computers to perform operations comprising:

determining a plurality of simulated load curves, comprising, for each device in a population of devices:

determining, for each control from a set of multiple feasible controls for the device, a respective simulated load curve that simulates a load generated by the device based on application of the control to the device;

obtaining a plurality of weight values that comprises, for each of the plurality of simulated load curves, a respective weight value corresponding to the simulated load curve;

adjusting the plurality of weight values during a plurality of optimization iterations using an optimization technique to optimize a loss function that measures:

a sparsity of the plurality of weight values, and

an error between: (i) an aggregate load curve that is defined by combining the simulated load curves in accordance with the plurality of weight values, and (ii) a target load curve that defines a target for the aggregate load curve;

determining, for each device in the population of devices, a respective control to be applied to the device from the set of multiple feasible controls for the device based on the plurality of weight values after a final optimization iteration, comprising, for each device:

determining that the control to be applied to the device is a control corresponding to a simulated load curve having a highest weight value from among all the simulated load curves for the device; and

transmitting instructions to cause the respective control be applied to at least one device from the population of devices.

10. The system of claim 9 , wherein adjusting the plurality of weight values during the plurality of optimization iterations using the optimization technique to optimize the loss function comprises:

optimizing the loss function subject to a constraint that, for each device from the population of devices, a norm of the weight values corresponding to simulated load curves for the device has a predefined value.

11. The system of claim 10 , wherein the norm is a Euclidean norm and the predefined value of the Euclidean norm is one.

12. The system of claim 9 , wherein adjusting the plurality of weight values during the plurality of optimization iterations using the optimization technique to optimize the loss function comprises:

optimizing the loss function subject to a constraint that each weight value be non-negative.

13. The system of claim 9 , wherein the loss function comprises a sum of a first term that measures the sparsity of the plurality of weight values and a second term that measures the error between: (i) the aggregate load curve that is defined by combining the simulated load curves in accordance with the plurality of weight values, and (ii) the target load curve that defines the target for the aggregate load curve.

14. The system of claim 9 , wherein the aggregate load curve is defined by a linear combination of the simulated load curves, wherein each simulated load curve is scaled in accordance with the weight value corresponding to the simulated load curve.

15. The system of claim 9 , wherein for each device and for each control from the set of multiple feasible controls for the device, determining a respective simulated load curve that simulates load generated by the device based on application of the control to the device comprises:

generating a plurality of possible load curves that each simulate load generated by the device based on application of the control to the device; and

determining the simulated load curve by combining the plurality of possible load curves.

16. The system of claim 9 , wherein the optimization technique is an alternating direction method of multipliers (ADMM) optimization technique.

17. One or more non-transitory computer storage media storing instructions that when executed by one or more computers cause the one or more computers to perform operations comprising:

determining a plurality of simulated load curves, comprising, for each device in a population of devices:

determining, for each control from a set of multiple feasible controls for the device, a respective simulated load curve that simulates a load generated by the device based on application of the control to the device;

obtaining a plurality of weight values that comprises, for each of the plurality of simulated load curves, a respective weight value corresponding to the simulated load curve;

adjusting the plurality of weight values during a plurality of optimization iterations using an optimization technique to optimize a loss function that measures:

a sparsity of the plurality of weight values, and

an error between: (i) an aggregate load curve that is defined by combining the simulated load curves in accordance with the plurality of weight values, and (ii) a target load curve that defines a target for the aggregate load curve;

determining, for each device in the population of devices, a respective control to be applied to the device from the set of multiple feasible controls for the device based on the plurality of weight values after a final optimization iteration, comprising, for each device:

determining that the control to be applied to the device is a control corresponding to a simulated load curve having a highest weight value from among all the simulated load curves for the device; and

transmitting instructions to cause the respective control be applied to at least one device from the population of devices.

18. The non-transitory computer storage media of claim 17 , wherein adjusting the plurality of weight values during the plurality of optimization iterations using the optimization technique to optimize the loss function comprises:

optimizing the loss function subject to a constraint that, for each device from the population of devices, a norm of the weight values corresponding to simulated load curves for the device has a predefined value.

19. The non-transitory computer storage media of claim 18 , wherein the norm is a Euclidean norm and the predefined value of the Euclidean norm is one.

20. The non-transitory computer storage media of claim 17 , wherein adjusting the plurality of weight values during the plurality of optimization iterations using the optimization technique to optimize the loss function comprises:

optimizing the loss function subject to a constraint that each weight value be non-negative.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 21, 2020
From: HERTZ-SHARGEL, BENJAMIN
To: ENERGYHUB, INC.
Reel/Frame 054127/0431 →
Continuity (1)
Related Publication 20220094172A1 · Mar 24, 2022
Cited By (2)
US 12,253,867 US 12,355,254