Claims
- 1. A tool for system modeling and monitoring a system with a plurality of sensors, each sensor generating a signal representative of a system parameter, said tool comprising:
a memory storing a plurality of historical snapshots of one or more sensor signals, said plurality of snapshots forming a training matrix ({overscore (D)}) corresponding to a universe of identified states of a monitored system; a data acquisition unit receiving signals from said sensors, each received signal being representative of a system parameter at a selected time; an information processor coupled to said data acquisition unit acquiring real-time snapshots as state vectors ({right arrow over (Y)}input) indicative of observed states of said monitored system; a similarity operator ({circle over (x)}SSCOP) implemented within said information processor operable on state vectors with said training matrix from said memory to determine similarity as a function of the absolute difference between like sensor values divided by expected sensor ranges; and said information processor generating an expected state vector ({right arrow over (Y)}expected) responsive to said similarity operator.
- 2. A tool as recited in claim 1, wherein the similarity operator defines the relationship S={overscore (D)}′{circle over (x)}SSCOP{right arrow over (Y)}input (where {overscore (D)}′ is the transpose of {overscore (D)}) and has the form:
- 3. A tool as in claim 2, wherein the information processor further comprises:
an adder adding comparison results between two vectors; and a divider dividing a sum from said adder by the number of parameters being compared in said two vectors.
- 4. A tool as in claim 3, wherein the information processor further comprises:
matrix transposition means for generating the transpose of a matrix; and matrix multiplication means for multiplying said training set by a weight unit vector {overscore (W)} to generate said expected state vector; whereby {overscore (D)}′ is the transpose of training matrix {overscore (D)}, {overscore (G)}=({overscore (D)}{circle over (x)}SSCOP{overscore (D)}), {overscore (S)}={overscore (D)}′{circle over (x)}{right arrow over (y)}input, {overscore (G)}−1 is the inverse of {overscore (G)}, the weight unit vector is defined as: {right arrow over (W)}={overscore (G)}−1·{right arrow over (S)}and {right arrow over (y)}expected={overscore (D)}·{right arrow over (W)}.
- 5. A tool as recited in claim 2, wherein said data acquisition unit comprises a personal computer based data acquisition board receiving sensor data from said sensors.
- 6. A tool as recited in claim 2, wherein said monitored system is selected from the group consisting of a machine, a process and a biological system.
- 7. A tool as recited in claim 2, said expected state vector being compared with a corresponding real time snapshot, expected state vector parameters being compared against corresponding real-time sensor signals, said information processor logging any differences indicated in said comparison.
- 8. A tool as recited in claim 7 further comprising a monitoring device for generating an alarm signal indicative of a difference between a current state and known normal states of operation of the monitored system based upon the similarity measure determined with said similarity operator.
- 9. A method of empirically monitoring a system comprising:
a) building a training set matrix ({overscore (D)}) of historical system snapshots, said training set matrix describing a universe of identified states of a system being monitored; b) receiving a state vector representative of an actual state of said monitored system, said state vector including a plurality of time related sensor parameter values; c) comparing said received state vector ({right arrow over (Y)}input) against vectors from said training set matrix to provide measures of similarity to said received state vector and states in said training set matrix based on the absolute difference of corresponding sensor values, normalized by the expected range of each sensor; and d) generating an estimated state vector ({right arrow over (Y)}expected) from results of the comparison step (c).
- 10. A method as recited in claim 9, further comprising:
f) generating an alarm signal indicative of a difference between the actual state and the estimated state of operation of the monitored system.
- 11. A method as recited in claim 10, wherein the alarm generating step (f) comprises applying a sequential probability ratio test (SPRT) to successive differences between successive actual states and estimated states.
- 12. A method as recited in claim 9, wherein the received state vector is augmented with parameter values generated for one or more virtual sensors.
- 13. A method as recited in claim 9, wherein the comparison step (c) comprises:
i) generating an operator model matrix ({overscore (G)}); ii) generating a similarity vector ({overscore (S)}); and iii) generating a weight vector ({right arrow over (W)}) from said operator model matrix and said similarity vector.
- 14. A method as in claim 13, wherein the step (i) of generating the operator model matrix (G) comprises comparing the transpose of the training matrix against the training matrix ({overscore (D)}′{circle over (x)}SSCOP{overscore (D)}), each element comparison having the form:
- 15. A method as in claim 14, wherein the step (ii) of generating a similarity vector comprises comparing for similarity said state vector with the transpose of said training set matrix ({overscore (D)}′{circle over (x)}{right arrow over (y)}input).
- 16. A method as in claim 15, wherein the step (iii) of generating a weight vector has the form:
- 17. A method as in claim 16, wherein the step (d) of generating the estimated state vector has the form:
- 18. A method as in claim 17, wherein said system being monitored is selected from the group consisting of a machine, a process being carried out in a closed system and a biological system.
- 19. A method as in claim 14, wherein tuning parameters ρ and λ are selectively chosen between 1 and 4.
- 20. A method as in claim 19 wherein for two parameters a1, a2 in a-space,
- 21. A computer program product for empirically monitoring a system, said computer program product comprising a computer usable medium having computer readable program code thereon, said computer readable program code comprising:
computer readable program code means for receiving state vectors representative of actual states of a system being monitored, each said state vector including a plurality of time related sensor parameter values; computer readable program code means for building a training set matrix ({overscore (D)}) of historical system snapshots, said training set matrix describing a universe of acceptable states of said monitored system; computer readable program code means for comparing said received state vectors ({right arrow over (Y)}input) against vectors from said training set matrix; computer readable program code means for generating expected state vectors ({right arrow over (Y)}expected) from results of said comparison; and computer readable program code means for generating an alarm signal indicative of a difference between the operational state and normal states of operation of the monitored system, based on estimates.
- 22. A computer program product for empirically monitoring a system as in claim 21, wherein the computer readable program code means for generating the alarm comprises:
computer readable program code means for applying a sequential probability ratio test (SPRT) to the difference between input sensor data and estimated sensor data.
- 23. A computer program product for empirically monitoring a system as in claim 21, wherein the computer readable program code means for comparing vectors comprises:
computer readable program code means for generating an operator model matrix ({overscore (G)}); computer readable program code means for generating a similarity vector ({overscore (S)}); and computer readable program code means for generating a weight vector ({right arrow over (W)}) from said operator model matrix and said similarity vector.
- 24. A computer program product for empirically monitoring a system as in claim 23, wherein the computer readable program code means for generating the operator model matrix (G) transposes the training matrix and compares the transposed training matrix against the training matrix ({overscore (D)}′{circle over (x)}SSCOP{overscore (D)}), each element comparison having the form:
- 25. A computer program product for empirically monitoring a system as in claim 24, wherein the computer readable program code means for generating a similarity vector compares said state vector with the transpose of said training set matrix ({overscore (D)}′{circle over (x)}{right arrow over (y)}input).
- 26. A computer program product for empirically monitoring a system as in claim 25, wherein the weight vector is generated according to:
- 27. A computer program product for empirically monitoring a system as in claim 26, wherein the expected state vector is generated according to:
- 28. A computer program product for empirically monitoring a system as in claim 27, said system being selectable from the group consisting of a machine, a process being carried out in a closed system and a biological system.
- 29. An apparatus for monitoring an operating condition of a selected system, comprising:
a first data source for providing reference data characteristic of an operating condition of a reference system; a second data source for providing selected data characteristic of an operating condition of said selected system; a similarity module operative to determine at least one measure of similarity of said selected data for said selected system relative to said reference data of said reference system, by dividing the absolute difference of related data points from said selected data and said reference data, by an expected range of the related data points in said reference data, and subtracting from one.
- 30. An apparatus according to claim 29 further comprising an estimation module operative to generate an estimate of said selected data based on said measure of similarity.
- 31. An apparatus according to claim 30 further comprising a test module operative to perform a statistical hypothesis test on said selected data and said estimate thereof, said test indicating if there is a statistically significant deviation between them.
- 32. An apparatus according to claim 31 wherein said statistical hypothesis test is a sequential probability ratio test.
- 33. An apparatus according to claim 29, wherein said measures of similarity for two related data points from said selected data and said reference data is provided according to:
- 34. An apparatus according to claim 33, wherein λ is selected in the range of 1 to 4.
- 35. An apparatus according to claim 33, wherein ρ is selected in the range of 1 to 4.
- 36. A similarity engine, comprising:
a memory for storing a plurality of known state vectors; an input bus for providing a current state vector; and a processor disposed to render a measure of similarity between the current state vector from said input bus and a selected known state vector from said memory, equal to a statistical combination of a set of similarity values for corresponding elements of the current state vector and the selected known state vector, where a similarity value for a comparison of an element from the current state vector to a corresponding element from the selected known state vector is a function of a quantity theta, theta being the absolute difference of said corresponding elements divided by the range of values for corresponding elements across the plurality of known state vectors.
- 37. A similarity engine according to claim 36, wherein said similarity value for a comparison of said corresponding elements of the current state vector and the selected known state vector is equal to theta raised to a power, then divided by a constant, with this result subtracted from one.
- 38. A similarity engine according to claim 36, wherein said measure of similarity between said current state vector and said selected known state vector is equal to the arithmetic means of all quantities theta for each corresponding pair of elements from said two vectors, subtracted from one.
- 39. A similarity engine according to claim 36, wherein said measure of similarity between said current state vector and said selected known state vector is equal to the arithmetic mean of all similarity values for each corresponding pair of elements from said two vectors.
- 40. A similarity engine according to claim 36, wherein said measure of similarity between said current state vector and said selected known state vector is equal to the median of all similarity values for each corresponding pair of elements from said two vectors.
- 41. A similarity engine according to claim 36, wherein said processor is further disposed to generate an estimated state vector in response to input of said current state vector, using at least some of said plurality of known state vectors and at least one said measure of similarity.
- 42. A similarity engine according to claim 41, wherein said processor is further disposed to compare said estimated state vector and said current state vector.
- 43. A similarity engine according to claim 42, wherein said processor employs a statistical test to a sequence of comparisons of said estimated state vectors and said current state vectors.
- 44. A method for determining a measure of similarity between a current sate of a system and a previously known state of the system comprising the steps of:
acquiring sensor values from a set of sensors indicative of said current state; for each sensor in said set:
determining an expected range over prior known values of the sensor, determining the absolute value of the difference of the current state sensor value and the sensor value from the previously known state, and calculating a similarity value for the sensor between its current state value and its previously known state value as a function of the result of said absolute value divided by said range; and statistically combining the similarity values for the set of sensors to provide a measure of similarity between the current state and the previously known state.
- 45. A method according to claim 44, wherein said similarity value for a sensor is equal to the quantity of said absolute value divided by said range, said quantity being raised to a power and divided by a constant, subtracted from one.
- 46. A method according to claim 44, wherein said step of statistically combining comprises calculating the arithmetic mean of the similarity values of the set of sensors.
- 47. A method according to claim 44, wherein said step of statistically combining comprises calculating the median of the similarity values of the set of sensors.
- 48. A method according to claim 44, wherein said step of statistically combining comprises averaging quantities equal to for each sensor, said absolute value divided by said range, and subtracting from one a value based on the average.
- 49. A method according to claim 48, wherein the average is raised to a power, then divided by a constant, and then subtracted from one.
CROSS REFERENCE TO RELATED APPLICATIONS
[0001] This application claims the benefit of priority under 35 U.S.C. § 119(e) to U.S. Provisional application Ser. No. 60/93,228 filed Mar. 30, 2000.
Provisional Applications (1)
|
Number |
Date |
Country |
|
60193228 |
Mar 2000 |
US |