IP Library Granted Patent US 8,671,099
Granted Patent B2
US 8,671,099 · App. 13/338,689 · Granted Mar 11, 2014

Clustering devices in an internet of things (‘IoT’)

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 8,671,099
App. No.
13/338,689
Granted
Mar 11, 2014
Kind
B2
Abstract

Clustering devices in an Internet of Things (‘IoT’), including: receiving, by a device clustering module, a characteristic set for a device, wherein the characteristic set specifies one or more device attributes and an attribute value for each device attribute; clustering, by the device clustering module, the device into an attribute level cluster based on the one or more device attributes specified in the characteristic set for the device; and clustering, by the device clustering module, the device into a value level cluster based on the attribute value for each device attribute, wherein the value level cluster is a subset of the attribute level cluster.

Claims (63)

1. A method of clustering devices in an Internet of Things (‘IoT’), the method comprising:

receiving, by a device clustering module, a characteristic set for a device, wherein the characteristic set specifies one or more device attributes and an attribute value for each device attribute;

clustering, by the device clustering module, the device into an attribute level cluster based on the one or more device attributes specified in the characteristic set for the device; and

clustering, by the device clustering module, the device into a value level cluster based on the attribute value for each device attribute, wherein the value level cluster is a subset of the attribute level cluster.

2. The method of claim 1 wherein the characteristic set is specified as an extensible markup language (‘XML’) structured document.

3. The method of claim 1 wherein clustering the device into an attribute level cluster based on the one or more device attributes specified in the characteristic set for the device further comprises:

calculating, by the device clustering module, a commonality index between the device and a cluster representative for each attribute level cluster, wherein the cluster representative specifies a union of all attributes of each device in the attribute level cluster; and

assigning, by the device clustering module, the device to the attribute level cluster with the highest commonality index.

4. The method of claim 3 wherein calculating a commonality index between the device and a cluster representative for each attribute level cluster further comprises:

determining, by the device clustering module, the number of device attributes specified in the characteristic set for the device that are also attributes of the cluster representative;

determining, by the device clustering module, the number of device attributes specified in the characteristic set for the device that are not attributes of the cluster representative; and

dividing, by the device clustering module, the number of device attributes specified in the characteristic set for the device that are also attributes of the cluster representative by the sum of the number of device attributes specified in the characteristic set for the device that are also attributes of the cluster representative and the number of device attributes specified in the characteristic set for the device that are not attributes of the cluster representative.

5. The method of claim 1 wherein clustering the device into a value level cluster based on the attribute value for each device attribute further comprises:

calculating for each value level cluster, by the device clustering module, a similarity index between the device and all devices in the value level cluster; and

assigning, by the device clustering module, the device to the value level cluster with the highest average similarity index.

6. The method of claim 5 wherein calculating for each value level cluster a similarity index between the device and all devices in the value level cluster further comprises:

for each value level cluster:

calculating, by the device clustering module, the similarity index between the device and each of the devices in the value level cluster;

summing, by the device clustering module, the similarity index between the device and each of the devices in the value level cluster, thereby producing a similarity index sum;

determining, by the device clustering module, the number of devices in the value level cluster; and

dividing, by the device clustering module, the similarity index sum by the number of devices in the value level cluster.

7. An apparatus for clustering devices in an Internet of Things (‘IoT’), the apparatus comprising a computer processor, a computer memory operatively coupled to the computer processor, the computer memory having disposed within it computer program instructions that, when executed by the computer processor, cause the apparatus to carry out the steps of:

receiving, by a device clustering module, a characteristic set for a device, wherein the characteristic set specifies one or more device attributes and an attribute value for each device attribute;

clustering, by the device clustering module, the device into an attribute level cluster based on the one or more device attributes specified in the characteristic set for the device; and

clustering, by the device clustering module, the device into a value level cluster based on the attribute value for each device attribute, wherein the value level cluster is a subset of the attribute level cluster.

8. The apparatus of claim 7 wherein the characteristic set is specified as an extensible markup language (‘XML’) structured document.

9. The apparatus of claim 7 wherein clustering the device into an attribute level cluster based on the one or more device attributes specified in the characteristic set for the device further comprises:

calculating, by the device clustering module, a commonality index between the device and a cluster representative for each attribute level cluster, wherein the cluster representative specifies a union of all attributes of each device in the attribute level cluster; and

assigning, by the device clustering module, the device to the attribute level cluster with the highest commonality index.

10. The apparatus of claim 9 wherein calculating a commonality index between the device and a cluster representative for each attribute level cluster further comprises:

determining, by the device clustering module, the number of device attributes specified in the characteristic set for the device that are also attributes of the cluster representative;

determining, by the device clustering module, the number of device attributes specified in the characteristic set for the device that are not attributes of the cluster representative; and

dividing, by the device clustering module, the number of device attributes specified in the characteristic set for the device that are also attributes of the cluster representative by the sum of the number of device attributes specified in the characteristic set for the device that are also attributes of the cluster representative and the number of device attributes specified in the characteristic set for the device that are not attributes of the cluster representative.

11. The apparatus of claim 7 wherein clustering the device into a value level cluster based on the attribute value for each device attribute further comprises:

calculating for each value level cluster, by the device clustering module, a similarity index between the device and all devices in the value level cluster; and

assigning, by the device clustering module, the device to the value level cluster with the highest average similarity index.

12. The apparatus of claim 11 wherein calculating for each value level cluster a similarity index between the device and all devices in the value level cluster further comprises:

for each value level cluster:

calculating, by the device clustering module, the similarity index between the device and each of the devices in the value level cluster;

summing, by the device clustering module, the similarity index between the device and each of the devices in the value level cluster, thereby producing a similarity index sum;

determining, by the device clustering module, the number of devices in the value level cluster; and

dividing, by the device clustering module, the similarity index sum by the number of devices in the value level cluster.

13. A computer program product for clustering devices in an Internet of Things (‘IoT’), the computer program product disposed upon a computer readable storage medium, wherein the computer readable storage medium is not a signal, the computer program product comprising computer program instructions that, when executed, cause a computer to carry out the steps of:

receiving, by a device clustering module, a characteristic set for a device, wherein the characteristic set specifies one or more device attributes and an attribute value for each device attribute;

clustering, by the device clustering module, the device into an attribute level cluster based on the one or more device attributes specified in the characteristic set for the device; and

clustering, by the device clustering module, the device into a value level cluster based on the attribute value for each device attribute, wherein the value level cluster is a subset of the attribute level cluster.

14. The computer program product of claim 13 wherein the characteristic set is specified as an extensible markup language (‘XML’) structured document.

15. The computer program product of claim 13 wherein clustering the device into an attribute level cluster based on the one or more device attributes specified in the characteristic set for the device further comprises:

calculating, by the device clustering module, a commonality index between the device and a cluster representative for each attribute level cluster, wherein the cluster representative specifies a union of all attributes of each device in the attribute level cluster; and

assigning, by the device clustering module, the device to the attribute level cluster with the highest commonality index.

16. The computer program product of claim 15 wherein calculating a commonality index between the device and a cluster representative for each attribute level cluster further comprises:

determining, by the device clustering module, the number of device attributes specified in the characteristic set for the device that are also attributes of the cluster representative;

determining, by the device clustering module, the number of device attributes specified in the characteristic set for the device that are not attributes of the cluster representative; and

dividing, by the device clustering module, the number of device attributes specified in the characteristic set for the device that are also attributes of the cluster representative by the sum of the number of device attributes specified in the characteristic set for the device that are also attributes of the cluster representative and the number of device attributes specified in the characteristic set for the device that are not attributes of the cluster representative.

17. The computer program product of claim 13 wherein clustering the device into a value level cluster based on the attribute value for each device attribute further comprises:

calculating for each value level cluster, by the device clustering module, a similarity index between the device and all devices in the value level cluster; and

assigning, by the device clustering module, the device to the value level cluster with the highest average similarity index.

18. The computer program product of claim 17 wherein calculating for each value level cluster a similarity index between the device and all devices in the value level cluster further comprises:

for each value level cluster:

calculating, by the device clustering module, the similarity index between the device and each of the devices in the value level cluster;

summing, by the device clustering module, the similarity index between the device and each of the devices in the value level cluster, thereby producing a similarity index sum;

determining, by the device clustering module, the number of devices in the value level cluster; and

dividing, by the device clustering module, the similarity index sum by the number of devices in the value level cluster.

Assignments (8)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 24, 2024
From: DAEDALUS BLUE LLC
To: TAIWAN SEMICONDUCTOR MANUFACTURING COMPANY, LIMITED
Reel/Frame 069237/0643 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 30, 2023
From: TERRACE LICENSING LLC
To: DAEDALUS BLUE LLC
Reel/Frame 066158/0772 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 29, 2022
From: DAEDALUS BLUE LLC
To: TERRACE LICENSING LLC
Reel/Frame 058902/0482 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 28, 2022
From: DAEDALUS BLUE LLC
To: TERRACE LICENSING LLC
Reel/Frame 058895/0322 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 29, 2020
From: DAEDALUS GROUP, LLC
To: DAEDALUS BLUE LLC
Reel/Frame 051737/0191 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 27, 2020
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: DAEDALUS GROUP, LLC
Reel/Frame 051710/0445 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 14, 2019
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: DAEDALUS GROUP LLC
Reel/Frame 051032/0784 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 5, 2012
From: KAPOOR, SHALINI; SHARMA, SHACHI; SRINIVASAN, BHARAT
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 027804/0556 →