IP Library Granted Patent US 12,113,642
Granted Patent B2
US 12,113,642 · App. 18/486,857 · Granted Oct 8, 2024

Space graph based dynamic control for buildings

Inventors: Youngchoon Park (Brookfield, WI); Sudhi Sinha (Milwaukee, WI)
Assignee: JOHNSON CONTROLS TECHNOLOGY COMPANY
H04L12/2827G06F16/9024H04L12/2809H04L12/2812H04L12/2832
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 12,113,642
App. No.
18/486,857
Granted
Oct 8, 2024
Kind
B2
Abstract

A building system including one or more memory devices configured to store instructions that cause one or more processors to store a graph data structure in a data storage device including a plurality of nodes representing a plurality of entities and a plurality of edges between the plurality of nodes representing a plurality of relationships between the plurality of entities, wherein the plurality of entities include a first entity representing one of a person, place, or piece of equipment of the building, wherein a second entity of the plurality of entities represents a software component, wherein the software component performs operations for the person, place, or piece of equipment of the building indicated by one or more edges of the plurality of edges relating the first entity to the second entity and cause the software component to execute and perform the operations for the person, place, or piece of equipment.

Claims (67)

1. A building system, comprising one or more memory devices to store instructions thereon, the instructions causing one or more processors to:

store a space graph on the one or more memory devices, wherein the space graph is a graph data structure comprising a plurality of nodes representing a plurality of entities and a plurality of edges between the plurality of nodes representing a plurality of relationships between the plurality of entities;

execute a control algorithm based on the space graph to operate one or more pieces of equipment;

update the space graph to store a new edge or a new node; and

update the control algorithm based on the new edge or the new node of the space graph.

2. The building system of claim 1 , wherein the instructions cause the one or more processors to:

generate the space graph based on building data, wherein at least one relationships of the plurality of relationships are between the plurality of entities and data values of the building data associated with the plurality of entities;

generate the control algorithm based on the space graph;

receive second building data from one or more data sources;

generate one or more new relationships between a first entity of the plurality of entities and a second entity of the plurality of entities;

update the space graph to store the new edge between a first node of the plurality of nodes representing the first entity and a second node of the plurality of nodes representing the second entity; and

update the control algorithm based on the new edge.

3. The building system of claim 1 , wherein the instructions cause the one or more processors to:

identify, based on new building data, one or more new entities; and

update the space graph with the one or more new entities to store one or more new nodes.

4. The building system of claim 1 , wherein the instructions cause the one or more processors to:

update the control algorithm based on the new edge and the new node.

5. The building system of claim 1 , wherein:

the plurality of entities include an agent; and

the instructions cause the one or more processors to update the control algorithm via the agent by querying, via the agent, the space graph for information, wherein the information comprises at least some of the plurality of entities, at least some of the plurality of relationships.

6. The building system of claim 5 , wherein the instructions cause the one or more processors to:

query, via the agent, the space graph at a predefined time interval.

7. The building system of claim 1 , wherein the instructions cause the one or more processors to:

receive a query for information of the space graph from a requesting device, wherein the information is included by one of the plurality of nodes of the space graph;

retrieve the information from the space graph by traversing at least some of the plurality of entities and at least some of the plurality of edges to identify the information without traversing other entities or other relationships of a data structure other than the space graph; and

provide the information to the requesting device.

8. The building system of claim 7 , wherein the query comprises an indication of the at least some of the plurality of nodes and the at least some of the plurality of entities to traverse to identify the information.

9. The building system of claim 1 , wherein the instructions cause the one or more processors to:

determine whether a plurality of events are triggered by analyzing a plurality of rules with new building data, wherein each of the plurality of events is associated with one of the plurality of rules; and

determine, based on a pattern of the plurality of events that are triggered, the new edge.

10. The building system of claim 9 , wherein the instructions cause the one or more processors to:

determine whether a number of the plurality of events that are triggered is greater than a predefined amount; and

determine, based on the pattern of the plurality of events that are triggered, the new edge responsive to a determination that the number of the plurality of events is greater than the predefined amount.

11. The building system of claim 9 , wherein each of the plurality of rules is a conditional rule based on whether operational data of the plurality of entities exists and that at least some of the plurality of relationships exist, wherein the new building data is the operational data.

12. A method, comprising:

storing, by one or more processing circuits, a space graph on one or more memory devices, wherein the space graph is a graph data structure comprising a plurality of nodes representing a plurality of entities and a plurality of edges between the plurality of nodes representing a plurality of relationships between the plurality of entities;

executing, by the one or more processing circuits, a control algorithm based on the space graph to operate one or more pieces of equipment;

updating, by the one or more processing circuits, the space graph to store a new edge or a new node; and

updating, by the one or more processing circuits, the control algorithm based on the new edge or the new node of the space graph.

13. The method of claim 12 , comprising

generating, by the one or more processing circuits, the space graph based on building data, wherein at least one relationships of the plurality of relationships are between the plurality of entities and data values of the building data associated with the plurality of entities;

generating, by the one or more processing circuits, the control algorithm based on the space graph;

receiving, by the one or more processing circuits, second building data from one or more data sources;

generating, by the one or more processing circuits, one or more new relationships between a first entity of the plurality of entities and a second entity of the plurality of entities;

updating, by the one or more processing circuits, the space graph to store the new edge between a first node of the plurality of nodes representing the first entity and a second node of the plurality of nodes representing the second entity; and

updating, by the one or more processing circuits, the control algorithm based on the new edge.

14. The method of claim 12 , comprising:

identifying, by the one or more processing circuits, based on new building data, one or more new entities; and

updating, by the one or more processing circuits, the space graph with the one or more new entities to store one or more new nodes.

15. The method of claim 12 , comprising:

updating, by the one or more processing circuits, the control algorithm based on the new edge and the new node.

16. The method of claim 12 , wherein:

the plurality of entities include an agent; and

the method comprising updating, by the one or more processing circuits, the control algorithm via the agent by querying, via the agent, the space graph for information, wherein the information comprises at least some of the plurality of entities, at least some of the plurality of relationships.

17. The method of claim 12 , comprising:

receiving, by the one or more processing circuits, a query for information of the space graph from a requesting device, wherein the information is included by one of the plurality of nodes of the space graph;

retrieving, by the one or more processing circuits, the information from the space graph by traversing at least some of the plurality of entities and at least some of the plurality of edges to identify the information without traversing other entities or other relationships of a data structure other than the space graph; and

providing, by the one or more processing circuits, the information to the requesting device.

18. The method of claim 17 , wherein the query comprises an indication of the at least some of the plurality of nodes and the at least some of the plurality of entities to traverse to identify the information.

19. One or more non-transitory storage media to store instructions thereon, the instructions causing one or more processors to:

store a space graph on at least one memory device, wherein the space graph is a graph data structure comprising a plurality of nodes representing a plurality of entities and a plurality of edges between the plurality of nodes representing a plurality of relationships between the plurality of entities;

execute a control algorithm based on the space graph to operate one or more pieces of equipment;

update the space graph to store a new edge or a new node; and

update the control algorithm based on the new edge or the new node of the space graph.

20. The one or more non-transitory storage media of claim 19 , wherein the instructions cause the one or more processors to:

determine whether a plurality of events are triggered by analyzing a plurality of rules with new building data, wherein each of the plurality of events is associated with one of the plurality of rules; and

determine, based on a pattern of the plurality of events that are triggered, the new edge.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 13, 2023
From: PARK, YOUNGCHOON; SINHA, SUDHI
To: JOHNSON CONTROLS TECHNOLOGY COMPANY
Reel/Frame 065216/0209 →
Continuity (22)
Continuation 17345817 · Jun 11, 2021
Continuation 16895814 · Jun 8, 2020
Continuation 16688819 · Nov 19, 2019
Continuation 16260078 · Jan 28, 2019
Continuation In Part 16036685 · Jul 16, 2018
Continuation In Part 16048052 · Jul 27, 2018
Continuation In Part 16142578 · Sep 26, 2018
Continuation In Part 15644581 · Jul 7, 2017
Continuation In Part 15644519 · Jul 7, 2017
Continuation In Part 15644560 · Jul 7, 2017
Continuation In Part 16142758 · Sep 26, 2018
Provisional Application 62533581 · Jul 17, 2017
Provisional Application 62564247 · Sep 27, 2017
Provisional Application 62611987 · Dec 29, 2017
Provisional Application 62611974 · Dec 29, 2017
Provisional Application 62612167 · Dec 29, 2017
Provisional Application 62457654 · Feb 10, 2017
Provisional Application 62588190 · Nov 17, 2017
Provisional Application 62588114 · Nov 17, 2017
Provisional Application 62588179 · Nov 17, 2017
Provisional Application 62611962 · Dec 29, 2017
Related Publication 20240073055A1 · Feb 29, 2024