IP Library Granted Patent US 12,061,633
Granted Patent B2
US 12,061,633 · App. 17/940,408 · Granted Aug 13, 2024

Building system that maps points into a graph schema

Inventors: Santle Camilus Kulandai Samy (Sunnyvale, CA); Chenlu Zhang (Milwaukee, WI); Young M. Lee (Old Westbury, NY)
Assignee: TYCO FIRE & SECURITY GMBH
G06F16/288G05B15/02G06F16/211G06F16/2477G06F16/285G06F18/213G06F18/22
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,061,633
App. No.
17/940,408
Granted
Aug 13, 2024
Kind
B2
Abstract

A building system of a building including one or more memory devices having instructions thereon, that, when executed by one or more processors, cause the one or more processors to receive tags describing points of the building. The instructions cause the one or more processors to map the tags to classes of a schema of a graph data structure, perform clustering to generate clusters of the points. The instructions cause the one or more processors to identify, based on the clusters, relationships in the schema of the graph data structure between the tags mapped to the classes of the schema of the graph data structure. The instructions cause the one or more processors to construct the graph data structure in the schema based on the tags mapped to the classes and the relationships in the schema of the graph data structure.

Claims (115)

1. A building system of a building comprising one or more memory devices having instructions stored thereon, that, when executed by one or more processors, cause the one or more processors to:

receive a plurality of tags describing a plurality of points of the building;

map the plurality of tags to a plurality of classes of a schema of a graph data structure;

perform clustering to generate clusters of the plurality of points, wherein the clustering learns, via a machine learning technique, to cluster points to identify relationships between spaces, pieces of equipment of the building, and sensor or actuator points of the pieces of equipment;

identify, based on the clusters, a plurality of relationships in the schema of the graph data structure between the plurality of tags mapped to the plurality of classes of the schema of the graph data structure, a relationship of the plurality of relationships identified between a class mapped to a first cluster and a class mapped to a second cluster; and

construct the graph data structure in the schema based on the plurality of tags mapped to the plurality of classes and the plurality of relationships in the schema of the graph data structure.

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

receive a building layout of at least one building;

identify a plurality of spaces of the at least one building based on the building layout;

perform the clustering by:

setting a plurality of centroids based on the plurality of spaces;

clustering the plurality of points based on the plurality of centroids; and

identifying a plurality of spatial relationships of the plurality of relationships in the schema of the graph data structure based on the clustering of the plurality of points.

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

receive timeseries data for the plurality of points;

analyze the timeseries data to identify a behavior between a first point of the plurality of points and a second point of the plurality of points; and

identify a functional relationship of the plurality of relationships between a first tag representing the first point and a second tag representing the second point responsive to identifying the behavior between the first point and the second point.

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

perform a first clustering to cluster the plurality of points based on characteristics of the plurality of points;

perform a second clustering to cluster the plurality of points based on at least one building layout of at least one building;

merge a result of the first clustering and the second clustering; and

identify the plurality of relationships of the schema of the graph data structure based on the result.

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

generate an embedding of a tag of the plurality of tags;

generate a plurality of embeddings of the plurality of classes of the schema of the graph data structure;

generate a plurality of similarities between the embedding of the tag of the plurality of tags and the plurality of embeddings of the plurality of classes of the schema of the graph data structure;

select a class of the plurality of classes based on the plurality of similarities; and

map the tag to the class responsive to the selection of the class.

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

generate an embedding vector of a tag of the plurality of tags;

generate a plurality of embedding vectors of the plurality of classes of the schema of the graph data structure;

generate a plurality of similarity levels based on angles formed between the embedding vector of the tag and the plurality of embedding vectors of the plurality of classes of the schema of the graph data structure;

select a class of the plurality of classes based on the plurality of similarity levels; and

map the tag to the class responsive to the selection of the class.

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

receive an indication that similarities between an embedding of a tag of the plurality of tags and embeddings of the plurality of classes of the schema of the graph data structure are less than a threshold;

receive timeseries data for a point represented by the tag of the plurality of tags; and

determine an order to process the timeseries data with a first model and a second model,

the first model outputting a first probability of the point being mapped to a first class of the plurality of classes; and

the second model outputting a second probability of the point being mapped to a second class of the plurality of classes,

the order indicating to process the timeseries data with the first model and then the second model responsive to an identification of a first similarity between the embedding of the tag of the plurality of tags and a first embedding of the first class being greater than the embedding of the tag of the plurality of tags and a second embedding of the second class; and

process the timeseries data with the first model and then the second model.

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

receive point data describing the plurality of points;

execute a plurality of models to map the plurality of points to the plurality of tags;

map the plurality of tags to the plurality of classes of the schema of the graph data structure; and

identify the plurality of relationships responsive to mapping the plurality of points to the plurality of tags.

9. The building system of claim 1 , wherein the instructions cause the one or more processors to construct the graph data structure by:

generating, based on mappings between the plurality of tags and the plurality of classes, a plurality of nodes for the graph data structure, wherein:

a first node of the plurality of nodes is generated in a first class of the plurality of classes to represent a first tag of the plurality of tags mapped to the first class; and

a second node of the plurality of nodes is generated in a second class of the plurality of classes to represent a second tag of the plurality of tags mapped to the second class; and

generating an edge between the first node and the second node to represent a relationship of the plurality of relationships.

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

execute a control application to:

receive at least a portion of the graph data structure; and

generate a control decision based on at least the portion of the graph data structure; and

operate a piece of building equipment of the building based on the control decision.

11. A method comprising:

receiving, by one or more processing circuits, a plurality of tags describing a plurality of points of a building;

mapping, by the one or more processing circuits, the plurality of tags to a plurality of classes of a schema of a graph data structure;

performing, by the one or more processing circuits, clustering to generate clusters of the plurality of points, wherein the clustering learns, via a machine learning technique, to cluster points to identify relationships between spaces, pieces of equipment of the building, and sensor or actuator points of the pieces of equipment;

identifying, by the one or more processing circuits, based on the clusters, a plurality of relationships in the schema of the graph data structure between the plurality of tags mapped to the plurality of classes of the schema of the graph data structure, a relationship of the plurality of relationships identified between a class mapped to a first cluster and a class mapped to a second cluster; and

constructing, by the one or more processing circuits, the graph data structure in the schema based on the plurality of tags mapped to the plurality of classes and the plurality of relationships in the schema of the graph data structure.

12. The method of claim 11 , comprising:

receiving, by the one or more processing circuits, a building layout of at least one building;

identifying, by the one or more processing circuits, a plurality of spaces of the at least one building based on the building layout;

performing, by the one or more processing circuits, the clustering by:

setting a plurality of centroids based on the plurality of spaces;

clustering the plurality of points based on the plurality of centroids; and

identifying a plurality of spatial relationships of the plurality of relationships in the schema of the graph data structure based on the clustering of the plurality of points.

13. The method of claim 11 , comprising:

receiving, by the one or more processing circuits, timeseries data for the plurality of points;

analyzing, by the one or more processing circuits, the timeseries data to identify a behavior between a first point of the plurality of points and a second point of the plurality of points; and

identifying, by the one or more processing circuits, a functional relationship of the plurality of relationships between a first tag representing the first point and a second tag representing the second point responsive to identifying the behavior between the first point and the second point.

14. The method of claim 11 , comprising:

performing, by the one or more processing circuits, a first clustering to cluster the plurality of points based on characteristics of the plurality of points;

performing, by the one or more processing circuits, a second clustering to cluster the plurality of points based on at least one building layout of at least one building;

merging, by the one or more processing circuits, a result of the first clustering and the second clustering; and

identifying, by the one or more processing circuits, the plurality of relationships of the schema of the graph data structure based on the result.

15. The method of claim 11 , comprising:

generating, by the one or more processing circuits, an embedding of a tag of the plurality of tags;

generating, by the one or more processing circuits, a plurality of embeddings of the plurality of classes of the schema of the graph data structure;

generating, by the one or more processing circuits, a plurality of similarities between the embedding of the tag of the plurality of tags and the plurality of embeddings of the plurality of classes of the schema of the graph data structure;

selecting, by the one or more processing circuits, a class of the plurality of classes based on the plurality of similarities; and

mapping, by the one or more processing circuits, the tag to the class responsive to the selection of the class.

16. The method of claim 11 , comprising:

generating, by the one or more processing circuits, an embedding vector of a tag of the plurality of tags;

generating, by the one or more processing circuits, a plurality of embedding vectors of the plurality of classes of the schema of the graph data structure;

generating, by the one or more processing circuits, a plurality of similarity levels based on angles formed between the embedding vector of the tag and the plurality of embedding vectors of the plurality of classes of the schema of the graph data structure;

selecting, by the one or more processing circuits, a class of the plurality of classes based on the plurality of similarity levels; and

mapping, by the one or more processing circuits, the tag to the class responsive to the selection of the class.

17. The method of claim 11 , comprising:

receiving, by the one or more processing circuits, an indication that similarities between an embedding of a tag of the plurality of tags and embeddings of the plurality of classes of the schema of the graph data structure are less than a threshold;

receiving, by the one or more processing circuits, timeseries data for a point represented by the tag of the plurality of tags; and

determining, by the one or more processing circuits, an order to process the timeseries data with a first model and a second model,

the first model outputting a first probability of the point being mapped to a first class of the plurality of classes; and

the second model outputting a second probability of the point being mapped to a second class of the plurality of classes,

the order indicating to process the timeseries data with the first model and then the second model responsive to an identification of a first similarity between the embedding of the tag of the plurality of tags and a first embedding of the first class being greater than the embedding of the tag of the plurality of tags and a second embedding of the second class; and

processing, by the one or more processing circuits, the timeseries data with the first model and then the second model.

18. The method of claim 11 , comprising:

receiving, by the one or more processing circuits, point data describing the plurality of points;

executing, by the one or more processing circuits, a plurality of models to map the plurality of points to the plurality of tags;

mapping, by the one or more processing circuits, the plurality of tags to the plurality of classes of the schema of the graph data structure; and

identifying, by the one or more processing circuits, the plurality of relationships responsive to mapping the plurality of points to the plurality of tags.

19. The method of claim 11 , wherein constructing, by the one or more processing circuits, the graph data structure comprises:

generating, based on mappings between the plurality of tags and the plurality of classes, a plurality of nodes for the graph data structure, wherein:

a first node of the plurality of nodes is generated in a first class of the plurality of classes to represent a first tag of the plurality of tags mapped to the first class; and

a second node of the plurality of nodes is generated in a second class of the plurality of classes to represent a second tag of the plurality of tags mapped to the second class; and

generating an edge between the first node and the second node to represent a relationship of the plurality of relationships.

20. One or more computer readable media having instructions thereon, that, when executed by one or more processors, cause the one or more processors to:

receive a plurality of tags describing a plurality of points of a building;

map the plurality of tags to a plurality of classes of a schema of a graph data structure;

perform clustering to generate clusters of the plurality of points, wherein the clustering learns, via a machine learning technique, to cluster points to identify relationships between spaces, pieces of equipment of the building, and sensor or actuator points of the pieces of equipment;

identify, based on the clusters, a plurality of relationships in the schema of the graph data structure between the plurality of tags mapped to the plurality of classes of the schema of the graph data structure, a relationship of the plurality of relationships identified between a class mapped to a first cluster and a class mapped to a second cluster; and

construct the graph data structure in the schema based on the plurality of tags mapped to the plurality of classes and the plurality of relationships in the schema of the graph data structure.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 9, 2024
From: JOHNSON CONTROLS TYCO IP HOLDINGS LLP
To: TYCO FIRE & SECURITY GMBH
Reel/Frame 067056/0552 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 9, 2022
From: KULANDAI SAMY, SANTLE CAMILUS; ZHANG, CHENLU; LEE, YOUNG M.
To: JOHNSON CONTROLS TYCO IP HOLDINGS LLP
Reel/Frame 061049/0712 →
Continuity (1)
Related Publication 20240086429A1 · Mar 14, 2024