# US 10,901,376 B2 · Building management system with self-optimizing control modeling framework

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 10,901,376 B2
- Document ID: US10901376B2
- Status: Granted
- Kind: B2
- Application number: 16/381,851
- Filed: 2019-04-11
- Published: 2020-10-15
- Granted: 2021-01-26
- Earliest claimed: 2019-04-11
- Assignees: Johnson Controls Technology Company
- Applicants: Johnson Controls Technology Company
- Inventors: Carlos Felipe Alcala Perez; Timothy I. Salsbury; John M. House
- Web page: https://patentgrep.com/patent/US10901376B2

## CPC

- G05B 13/041: {in which a variable is automatically adjusted to optimise the performance}
- G06N 3/084: Backpropagation, e.g. using gradient descent
- G05B 13/027: {using neural networks only}
- G05B 13/042: {in which a parameter or coefficient is automatically adjusted to optimise the performance}
- G05B 13/047: {the criterion being a time optimal performance criterion}
- G05B 13/048: {using a predictor}
- G05B 15/02: electric
- G05B 19/02: electric
- G05B 19/048: Monitoring; Safety
- G06N 20/10: using kernel methods, e.g. support vector machines [SVM]
- G06N 20/20: Ensemble learning
- G05B 2219/24053: Diagnostic of controlled machine
- G05B 2219/2614: HVAC, heating, ventillation, climate control
- G05B 2219/2642: Domotique, domestic, home control, automation, smart house
- G05B 2219/43112: Using feedforward prediction of position
- G06N 3/048: Activation functions
- G06N 5/01: Dynamic search techniques; Heuristics; Dynamic trees; Branch-and-bound
- G05B: CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS (systems for controlling or regulating non-electric variables G05D; systems for regulating electric or magnetic variables G05F; control devices or systems insofar as characterised by mechanical features only G05G)
- G06N: COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS

## Abstract

A self-optimizing controller for equipment of a plant provides a manipulated variable as an input to the plant and receives an output variable as feedback. The controller generates a performance variable model defining the performance variable as a function of the manipulated variable and an output variable model defining the output variable as a function of the manipulated variable. The controller uses the performance variable model to determine a gradient of the performance variable, uses the output variable model to determine a gradient of the output variable, and generates a self-optimizing variable based on the gradient of the performance variable model and the gradient of the output variable model. The controller operates the equipment of the plant to affect a variable state or condition of the building based on the value of the self-optimizing variable from the self-optimizing variable model.

## Claims

### Claim 1

A building management system comprising:
a plant comprising building equipment operable to affect a variable state or condition of a building, the plant operating at a cost indicated by a performance variable; and
a self-optimizing controller configured to:
provide a manipulated variable as a control input to the plant and receive an output variable as a feedback from the plant;
generate a performance variable model that defines the performance variable as a function of the output variable and the manipulated variable;
generate an output variable model that defines the output variable as a function of the manipulated variable;
use the performance variable model to determine a gradient of the performance variable with respect to at least one of the output variable and the manipulated variable;
use the output variable model to determine a gradient of the output variable with respect to the manipulated variable;
generate a model of a self-optimizing variable based on the gradient of the performance variable model and the gradient of the output variable model; and
operate the building equipment of the plant to affect the variable state or condition of the building based on a value of the self-optimizing variable defined by the self-optimizing variable model.

### Claim 2 (depends on 1)

The system of claim 1, wherein the performance variable model and the output variable model are generated using a regression technique.

### Claim 3 (depends on 2)

The system of claim 2, wherein the regression technique is any of a linear regression, a Taylor expansion, a support vector machine, a K-nearest neighbor regression, a partial least square fit regression, a regression tree, a generalized linear model, a neural network, and a random forest.

### Claim 4 (depends on 1)

The system of claim 1, wherein determining the gradient of the performance variable with respect to at least one of the output variable and the manipulated variable comprises:
determining a partial derivative of the performance variable with respect to the manipulated variable; and
determining another partial derivative of the performance variable with respect to the output variable.

### Claim 5 (depends on 1)

The system of claim 1, wherein the self-optimizing controller is configured to perturb the manipulated variable with a step input to determine values of the manipulated variable over a time duration and provide the values of the manipulated variable over the time duration to the plant as the control input.

### Claim 6 (depends on 1)

The system of claim 1, wherein the performance variable model is generated based on a set of values of the performance variable, the manipulated variable, and the output variable.

### Claim 7 (depends on 1)

The system of claim 1, wherein the output variable model is generated based on a set of values of the output variable and the manipulated variable.

### Claim 8 (depends on 1)

The system of claim 1, wherein the self-optimizing controller is configured to generate control signals for the building equipment such that the self-optimizing variable is driven toward zero.

### Claim 9 (depends on 1)

The system of claim 1, wherein the output variable of the plant is influenced by a disturbance, and wherein the performance variable is influenced by the disturbance.

### Claim 10

A self-optimizing controller for building equipment of a plant, the controller configured to:
provide a manipulated variable as a control input to the plant and receive an output variable as a feedback from the plant;
generate a performance variable model that defines the performance variable as a function of the manipulated variable;
generate an output variable model that defines the output variable as a function of the manipulated variable;
use the performance variable model to determine a gradient of the performance variable with respect to at least one of the output variable and the manipulated variable;
use the output variable model to determine a gradient of the output variable with respect to the manipulated variable;
generate a self-optimizing variable based on the gradient of the performance variable model and the gradient of the output variable model; and
operate the building equipment of the plant to affect a variable state or condition of the building based on the value of the self-optimizing variable defined by the self-optimizing variable model.

### Claim 11 (depends on 10)

The controller of claim 10, wherein the performance variable model and the output variable model are generated using a regression technique.

### Claim 12 (depends on 11)

The controller of claim 11, wherein the regression technique is any of a linear regression, a Taylor expansion, a support vector machine, a K-nearest neighbor regression, a partial least square fit regression, a regression tree, a generalized linear model, a neural network, and a random forest.

### Claim 13 (depends on 10)

The controller of claim 10, wherein determining the gradient of the performance with respect to at least one of the output variable and the manipulated variable comprises:
determining a partial derivative of the performance variable with respect to the manipulated variable; and
determining another partial derivative of the performance variable with respect to the output variable.

### Claim 14 (depends on 10)

The controller of claim 10, wherein the controller is configured to perturb the manipulated variable with a step input to determine values of the manipulated variable over a time duration and provide the values of the manipulated variable over the time duration to the plant as the control input.

### Claim 15 (depends on 10)

The controller of claim 10, wherein the performance variable model is generated based on a set of values of the performance variable, the manipulated variable, and the output variable.

### Claim 16 (depends on 10)

The controller of claim 10, wherein the output variable model is generated based on a set of values of the output variable and the manipulated variable.

### Claim 17 (depends on 10)

The controller of claim 10, wherein the controller is further configured to generate control signals for the building equipment such that the self-optimizing variable is driven toward zero.

### Claim 18

A method for performing self-optimizing control on a plant, the method comprising:
providing a manipulated variable as a control input to the plant and receiving an output variable as a feedback from the plant;
generating a performance variable model that defines the performance variable as a function of the output variable and the manipulated variable;
generating an output variable model that defines the output variable as a function of the manipulated variable;
using the performance variable model to determine a gradient of the performance variable with respect to at least one of the output variable and the manipulated variable;
using the output variable model to determine a gradient of the output variable with respect to the manipulated variable;
generating a model of a self-optimizing variable based on the gradient of the performance variable model and the gradient of the output variable model; and
operating the building equipment of the plant to affect the variable state or condition of the building based on a value of the self-optimizing variable defined by the self-optimizing variable model.

### Claim 19 (depends on 18)

The method of claim 18, wherein using the performance variable model to determine a gradient of the performance variable comprises:
determining a partial derivative of the performance variable with respect to the manipulated variable; and
determining another partial derivative of the performance variable with respect to the output variable.

### Claim 20 (depends on 18)

The method of claim 18, further comprising generating control signals for the building equipment such that the self-optimizing variable is driven toward zero.
