IP Library Granted Patent US 10,147,040
Granted Patent B2
US 10,147,040 · App. 15/480,693 · Granted Dec 4, 2018

Device data quality evaluator

Inventors: Andrei Khurshudov (Niwot, CO); Stephen Skory (Boulder, CO); Nicholas Roseveare (Longmont, CO)
Assignee: Alchemy IoT
G06N5/025
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 10,147,040
App. No.
15/480,693
Granted
Dec 4, 2018
Kind
B2
Abstract

A method is provided for a device comprising at least one sensor providing sensor data. The method includes receiving, by a computer coupled to the device, the sensor data, providing the sensor data to at least one rule detector, evaluating, by the at least one rule detector, instances of sensor data triggered by the at least one rule detector, and determining, by the computer, that a sampling interval has ended, and in response calculating a data quality index based on the instances of triggered sensor data.

Claims (68)

1. A method comprising:

for a device comprising at least one sensor providing sensor data:

initializing, for at least one rule detector, a count of zero at a beginning of a sampling interval;

receiving, by a computer coupled to the device, the sensor data during the sampling interval;

providing the sensor data to the at least one rule detector;

evaluating, by the at least one rule detector, instances of sensor data triggered by the at least one rule detector;

determining, by the computer, that the sampling interval has ended, and in response:

calculating a data quality index based on the instances of triggered sensor data during the sampling interval.

2. The method of claim 1 , wherein in response to receiving the sensor data, the method further comprising:

storing sensor data for at least the sampling interval.

3. The method of claim 1 , wherein evaluating, by the at least one rule detector, instances of sensor data triggered by the at least one rule detector comprising:

maintaining a count, for each rule detector, of a number of rule violations during the sampling interval, wherein the sampling interval is one of a most recent of a series of fixed time intervals or a rolling window of fixed time duration.

4. The method of claim 3 , wherein the at least one sensor comprises a plurality of sensors, wherein different sensors of the plurality of sensors each utilize a different combination of rule detectors.

5. The method of claim 3 , wherein the at least one rule detector evaluates sensor data for at least one of: repeating data, zero value data, shifted data, a broken sensor data structure, an incorrect sensor data format, noisy data, logical sensor data outliers, null data, and split sensor data.

6. The method of claim 3 , wherein determining that a sampling interval has ended comprising one of:

the most recent of the series of fixed time intervals has elapsed;

at least a predetermined number of sensor data values has been received in the rolling window of fixed time duration; and

the predetermined number of sensor data values has been received since a previous sampling interval has ended.

7. The method of claim 1 , wherein calculating the data quality index comprising:

for each of the at least one sensor:

for each of the at least one rule detector:

calculating a normalized fraction of rule violations during the sampling interval; and

subtracting each of the normalized fraction of rule violations from a value of one to obtain rule violation contributions; and

multiplying each of the rule violation contributions together in order to obtain a sensor data quality index.

8. The method of claim 7 , wherein the normalized fraction of rule violations comprises a number of received sensor data in the sampling interval that violate a rule corresponding to one of the at least one rule detectors divided by a number of received sensor data during the sampling interval.

9. The method of claim 7 , wherein the computer calculates a device data quality index by averaging the sensor data quality indices for the at least one sensor, wherein the device data quality index is the sensor data quality index when the device has only one sensor.

10. A non-transitory computer readable storage medium configured to store instructions that when executed cause a processor to perform:

for a device comprising at least one sensor providing sensor data:

initializing, for at least one rule detector, a count of zero at a beginning of a sampling interval;

receiving, by a computer coupled to the device, the sensor data during the sampling interval;

providing the sensor data to the at least one rule detector;

evaluating, by the at least one rule detector, instances of sensor data triggered by the at least one rule detector;

determining, by the computer, that the sampling interval has ended, and in response:

calculating a data quality index based on the instances of triggered sensor data during the sampling interval.

11. The non-transitory computer readable storage medium of claim 10 , wherein evaluating, by the at least one rule detector, instances of sensor data triggered by the at least one rule detector comprising:

maintaining a count, for each rule detector, of a number of rule violations during the sampling interval, wherein the sampling interval is one of a most recent of a series of fixed time intervals or a rolling window of fixed time duration.

12. The non-transitory computer readable storage medium of claim 11 , wherein prior to receiving sensor data, the method further comprising:

determining sensors and sensor data characteristics for the device;

configuring rules and rule detectors for the at least one sensor;

configuring sensor, group, and device data quality indices; and

configuring counts for evaluating instances of sensor data triggered by the at least one rule detector.

13. The non-transitory computer readable storage medium of claim 11 , wherein calculating the data quality index comprising:

for each of the at least one sensor:

for each of the at least one rule detector:

calculating a normalized fraction of rule violations during the sampling interval; and

subtracting each of the normalized fraction of rule violations from a value of one to obtain rule violation contributions; and

multiplying each of the rule violation contributions together in order to obtain a sensor data quality index.

14. The non-transitory computer readable storage medium of claim 13 , wherein the normalized fraction of rule violations comprises a number of received sensor data in the sampling interval that violate a rule corresponding to one of the at least one rule detectors divided by a number of received sensor data during the sampling interval.

15. The non-transitory computer readable storage medium of claim 13 , the device comprising a plurality of sensors in a group, wherein the computer calculates a group data quality index by averaging the sensor data quality indices for the plurality of sensors in the group.

16. A system, comprising:

a device, comprising:

at least one sensor configured to provide sensor data; and

a server, coupled to the device, configured to:

initialize, for at least one rule detector, a count of zero at a beginning of a sampling interval;

receive and store the sensor data during the sampling interval;

provide the sensor data to the at least one rule detector;

evaluate, by the at least one rule detector, instances of sensor data triggered by the at least one rule detector;

determine that the sampling interval has ended, and in response:

calculate a data quality index based on the instances of triggered sensor data during the sampling interval.

17. The system of claim 16 , wherein the at least one rule detector evaluates sensor data for at least one of: repeating data, zero value data, shifted data, a broken sensor data structure, an incorrect sensor data format, noisy data, logical sensor data outliers, null data, and split sensor data.

18. The system of claim 16 , wherein calculating the data quality index comprising:

for each of the at least one sensor:

for each of the at least one rule detector:

calculating, by the server, a normalized fraction of rule violations during the sampling interval; and

subtracting each of the normalized fraction of rule violations from a value of one to obtain rule violation contributions; and

multiplying each of the rule violation contributions together in order to obtain a sensor data quality index.

19. The system of claim 18 , wherein the normalized fraction of rule violations comprises a number of received sensor data in the sampling interval that violate a rule corresponding to one of the at least one rule detectors divided by a number of received sensor data during the sampling interval.

20. The system of claim 18 , wherein the server calculates a device data quality index by averaging the sensor data quality indices for the at least one sensor.

Assignments (4)
MERGER Recorded May 2, 2022
From: FIIX INC.
To: ROCKWELL AUTOMATION CANADA LTD.
Reel/Frame 059784/0706 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 11, 2019
From: ALCHEMY IOT INC.
To: AWEIDA, JESSE ISSA
Reel/Frame 049723/0654 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 11, 2019
From: AWEIDA, JESSE ISSA
To: FIIX INC.
Reel/Frame 049724/0744 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 6, 2017
From: KHURSHUDOV, ANDREI; SKORY, STEPHEN; ROSEVEARE, NICHOLAS J.
To: ALCHEMY IOT
Reel/Frame 041886/0008 →
Continuity (2)
Provisional Application 62448766 · Jan 20, 2017
Related Publication 20180211168A1 · Jul 26, 2018