IP Library Patent Application 17964889
Patent Application
App. No. 17/964,889

CONSTRAINED OPTIMIZATION USING AN ANALOG PROCESSOR

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 None
App. No.
17/964,889
Abstract

Described herein are techniques of using a hybrid analog-digital processor to optimize parameters of a system for an objective under one or more constraints. The techniques involve using the hybrid analog-digital processor to optimizing parameter values of the system. The optimizing comprises: determining, using an analog processor of the hybrid analog-digital processor, a parameter gradient for parameter values of the system based on the objective function and the at least one constraint; and updating the parameter values of the system using the parameter gradient.

Claims (82)

1 . A method of using a hybrid analog-digital processor to optimize a system for an objective under at least one constraint, the hybrid analog-digital analog processor comprising a digital controller and an analog processor, the method comprising:

using the hybrid analog-digital processor to perform:

obtaining an objective function associated with the objective, the objective function relating sets of parameter values of the system to values providing a measure of performance of the system; and

optimizing parameters of the system, the optimizing comprising:

determining, using the analog processor, a parameter gradient for parameter values of the system based on the objective function and the at least one constraint; and

updating the parameter values of the system using the parameter gradient.

2 . The method of claim 1 , wherein determining, using the analog processor, the parameter gradient for the parameter values based on the objective function and the at least one constraint comprises:

determining, using the analog processor, a plurality of outputs of the system when configured with the parameter values; and

determining, using the analog processor, the parameter gradient using the plurality of outputs of the system configured with the parameter values.

3 . The method of claim 1 , wherein determining, using the analog processor, the parameter gradient for the parameter values based on the objective function and the at least one constraint comprises:

performing, using the analog processor, at least one matrix operation to obtain at least one output of the at least one matrix operation; and

determining the parameter gradient using the at least one output of the at least one matrix operation.

4 . The method of claim 3 , wherein performing, using the analog processor, the at least one matrix operation comprises:

determining a scaling factor for a portion of a matrix involved in the at least one matrix operation;

scaling the portion of the matrix using the scaling factor to obtain a scaled portion of the matrix;

programming the analog processor using the scaled portion of the matrix; and

performing, by the analog processor programmed using the scaled the portion of the matrix, the at least one matrix operation to obtain the at least one output of the at least one matrix operation.

5 . The method of claim 1 , wherein the at least one constraint comprises at least one constraint function and the method further comprises:

generating a combined function using the objective function and the at least one constraint function;

wherein determining, using the analog processor, the parameter gradient for the parameter values based on the objective function and the at least one constraint comprises:

determining a gradient of the combined function for the parameter values.

6 . The method of claim 1 , wherein:

the at least one constraint comprises at least one constraint function; and

determining, using the analog processor, the parameter gradient for the parameter values based on the objective function and the at least one constraint comprises:

determining a gradient of the objective function for the parameter values;

determining a gradient of the at least one constraint function for the parameter values; and

determining the parameter gradient using the gradient of the objective function and the gradient of the at least one constraint function.

7 . The method of claim 6 , wherein determining the parameter gradient using the gradient of the objective function and the gradient of the at least one constraint function comprises:

determining a normalization of the gradient of the objective function;

determining a normalization of the gradient of the at least one constraint function; and

determining the parameter gradient using normalizations of the gradient of the objective function and the gradient of the at least one constraint function.

8 . The method of claim 1 , wherein the at least one constraint comprises at least one inequality constraint.

9 . The method of claim 1 , wherein:

the at least one constraint comprises a plurality of constraints represented by a plurality of constraint functions; and

determining, using the analog processor, the parameter gradient for the parameter values comprises:

generating a barrier function using the plurality of constraint functions;

determining a gradient of the objective function for the parameter values;

determining a gradient of the barrier function for the parameter values; and

determining the parameter gradient using the gradient of the objective function and the gradient of the barrier function.

10 . The method of claim 9 , wherein generating the barrier function using the plurality of constraints comprises generating a logarithmic barrier function.

11 . The method of claim 1 , further comprising:

after optimizing the parameter values of the system, performing a subsequent optimization on the parameter values of the system using a digital processor.

12 . The method of claim 1 , wherein the system is a machine learning system, and the objective is a task to be performed by the machine learning system.

13 . An optimization system for optimizing a system for an objective under at least one constraint, the optimization system comprising:

a hybrid analog-digital processor comprising a digital controller and an analog processor, the hybrid analog-digital processor configured to:

obtain an objective function associated with the objective, the objective function relating sets of parameter values of the system to values providing a measure of performance of the system; and

optimize parameters of the system, the optimizing comprising:

determining, using the analog processor, a parameter gradient for parameter values of the system based on the objective function and the at least one constraint; and

updating the parameter values of the system using the parameter gradient.

14 . The optimization system of claim 13 , wherein determining, using the analog processor, the parameter gradient for the parameter values based on the objective function and the at least one constraint comprises:

determining, using the analog processor, a plurality of outputs of the system when configured with the parameter values; and

determining, using the analog processor, the parameter gradient using the plurality of outputs of the system configured with the parameter values.

15 . The optimization system of claim 13 , wherein determining, using the analog processor, the parameter gradient for the parameter values based on the objective function and the at least one constraint comprises:

performing, using the analog processor, at least one matrix operation to obtain at least one output of the at least one matrix operation; and

determining the parameter gradient using the at least one output of the at least one matrix operation.

16 . The optimization system of claim 15 , wherein performing, using the analog processor, the at least one matrix operation comprises:

determining a scaling factor for a portion of a matrix involved in the at least one matrix operation;

scaling the portion of the matrix using the scaling factor to obtain a scaled portion of the matrix;

programming the analog processor using the scaled portion of the matrix; and

performing, by the analog processor programmed using the scaled the portion of the matrix, the at least one matrix operation to obtain the at least one output of the at least one matrix operation.

17 . The optimization system of claim 13 , wherein the at least one constraint comprises at least one constraint function and the hybrid analog-digital processor is further configured to:

generate a combined function using the objective function and the at least one constraint function;

wherein determining, using the analog processor, the parameter gradient for the parameter values based on the objective function and the at least one constraint comprises:

determining a gradient of the combined function for the parameter values.

18 . The optimization system of claim 13 , wherein:

the at least one constraint comprises at least one constraint function; and

determining, using the analog processor, the parameter gradient for the parameter values based on the objective function and the at least one constraint comprises:

determining a gradient of the objective function for the parameter values;

determining a gradient of the at least one constraint function for the parameter values; and

determining the parameter gradient using the gradient of the objective function and the gradient of the at least one constraint function.

19 . The optimization system of claim 13 , wherein:

the at least one constraint comprises a plurality of constraints represented by a plurality of constraint functions; and

determining, using the analog processor, the parameter gradient for the parameter values comprises:

generating a barrier function using the plurality of constraint functions;

determining a gradient of the objective function for the parameter values;

determining a gradient of the barrier function for the parameter values; and

determining the parameter gradient using the gradient of the objective function and the gradient of the barrier function.

20 . A non-transitory computer-readable storage medium storing instructions that, when executed by a hybrid analog-digital processor comprising a digital controller and an analog processor, cause the hybrid analog-digital processor to perform a method of optimizing a system for an objective under at least one constraint, the method comprising:

obtaining an objective function associated with the objective, the objective function relating sets of parameter values of the system to values providing a measure of performance of the system; and

optimizing parameters of the system, the optimizing comprising:

determining, using the analog processor, a parameter gradient for parameter values of the system based on the objective function and the at least one constraint; and

updating the parameter values of the system using the parameter gradient.

Assignments (4)
TERMINATION OF IP SECURITY AGREEMENT Recorded Nov 5, 2024
From: EASTWARD FUND MANAGEMENT, LLC
To: LIGHTMATTER, INC.
Reel/Frame 069304/0700 →
RELEASE OF SECURITY INTEREST Recorded Mar 31, 2023
From: EASTWARD FUND MANAGEMENT, LLC
To: LIGHTMATTER, INC.
Reel/Frame 063209/0966 →
SECURITY INTEREST Recorded Dec 27, 2022
From: LIGHTMATTER, INC.
To: EASTWARD FUND MANAGEMENT, LLC
Reel/Frame 062230/0361 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 10, 2022
From: BUNANDAR, DARIUS
To: LIGHTMATTER, INC.
Reel/Frame 061715/0399 →