Universal robust filtering process
First Claim
1. A universal robust filtering process, comprising the steps of:
- (a) inputting measurement data from a measurement input interface into a fuzzy logic validation module;
(b) providing an expected measurement in said fuzzy logic validation module;
(c) validating said input measurement data through a fuzzy logic inference process in said fuzzy logic validation module by comparing with said expected measurement and outputting an approved measurement, a corrected measurement and a rejected-measurement flag to a state estimate module; and
(d) producing an estimate of system state based on said approved measurement and corrected measurement output from said fuzzy logic validation module in said state estimate module.
1 Assignment
0 Petitions
Accused Products
Abstract
A universal robust filtering process is adapted for eliminating the need of prediscretizing a continuous-time differential model into a discrete-time difference model. It provides a universal robust solution to the most general formulation, in the sense that the system dynamics are described by nonlinear continuous-time differential equations, and the nonlinear measurements are taken at intermittent discrete times randomly spaced. The universal robust filtering process includes the procedures of validating the measurement using fuzzy logic, and incorporating factorized forward filtering and backward smoothing to guarantee numerical stability. It provides users a reliable and convenient solution to extracting internal dynamic system state estimates from noisy measurements, with wider applications, better accuracy, better stability, easier design, and easier implementation.
23 Citations
28 Claims
-
1. A universal robust filtering process, comprising the steps of:
-
(a) inputting measurement data from a measurement input interface into a fuzzy logic validation module;
(b) providing an expected measurement in said fuzzy logic validation module;
(c) validating said input measurement data through a fuzzy logic inference process in said fuzzy logic validation module by comparing with said expected measurement and outputting an approved measurement, a corrected measurement and a rejected-measurement flag to a state estimate module; and
(d) producing an estimate of system state based on said approved measurement and corrected measurement output from said fuzzy logic validation module in said state estimate module. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28)
(i) extracting a first estimate of system state from said approved measurement passed from said fuzzy logic validation module;
(ii) extracting a second estimate of system state from said corrected measurement sent from said fuzzy logic validation module; and
(iii) predicting a third estimate of system state without measurement data when receiving said rejected measurement flag from said fuzzy logic validation module.
-
-
6. A universal robust filtering process, as recited in claim 5, after the step (d), further comprises a step (e) of outputting said obtained first, second and third estimates of system state by a state estimate output interface.
-
7. A universal robust filtering process, as recited in claim 1, wherein the step (c) further comprises the steps of:
-
(c1) receiving said measurement data from said measurement input interface in a fuzzifier module, performing a scale mapping on said original measurement data, which transfers said prescribed acceptance range and said prescribed rejection range of measurement into a corresponding universe of discourse, perform fuzzification and converting said measurement data into suitable linguistic values which are labeled as fuzzy sets to form crisp measurement data, interpreting said crisp measurement data as fuzzy sets with membership functions, and output said fuzzy sets to a fuzzy interface engine.
-
-
8. A universal robust filtering process, as recited in claim 7, after the step (c1), further comprising the step of:
(c2) receiving said fuzzy sets from said fuzzifier module in a fuzzy interface engine, wherein human decision making is simulated to infer fuzzy outputs which are sent to a defuzzifier module, by using fuzzy implication and said fuzzy logic inference rules provided by a fuzzy rule base.
-
9. A universal robust filtering process, as recited in claim 8, after the step (c2), further comprising the step of:
-
(c3) providing said fuzzy logic inference rules for said fuzzy interface engine in said fuzzy rule base, characterizing goals and a domain knowledge of experts by means of a set of linguistic rules in said fuzzy rule base, wherein said fuzzy rule base comprises said knowledge of said application domain and said attendant goal, and primarily determining a performance of said fuzzy logic validation by said fuzzy rule base.
-
-
10. A universal robust filtering process, as recited in claim 9, after the step (c3), further comprising the step of:
-
(c4) receiving said fizzy outputs from said fuzzy interface engine in said defuzzifier module, selectively approving said measurement data to form said approved measurement which is passed down without change to said state estimate module, generating crisp corrected measurement data to form said corrected measurement that represents a possibility distribution of said inferred fuzzy outputs from said fuzzy interface engine, and outputting said corrected measurement to said state estimate module, and rejecting said measurement data to form said rejected-measurement flag and outputting said rejected-measurement flag to said state estimate module.
-
-
11. A universal robust filtering process, as recited in claim 6, wherein, the step (c) further comprises the steps of:
-
(c1) receiving said measurement data from said measurement input interface in a fuzzifier module, performing a scale mapping on said original measurement data, which transfers said prescribed acceptance range and said prescribed rejection range of measurement into a corresponding universe of discourse, perform fuzzification and converting said measurement data into suitable linguistic values which are labeled as fuzzy sets to form crisp measurement data, interpreting said crisp measurement data as fuzzy sets with membership functions, and output said fuzzy sets to a fuzzy interface engine.
-
-
12. A universal robust filtering process, as recited in claim 11, after the step (c1), further comprising the step of:
(c2) receiving said fuzzy sets from said fuzzifier module in a fuzzy interface engine, wherein human decision making is simulated to infer fuzzy outputs which are sent to a defuzzifier module, by using fuzzy implication and said fuzzy logic inference rules provided by a fuzzy rule base.
-
13. A universal robust filtering process, as recited in claim 12, wherein after the step (c2) further comprises the step of:
-
(c3) providing said fuzzy logic inference rules for said fuzzy interface engine in said fuzzy rule base, characterizing goals and a domain knowledge of experts by means of a set of linguistic rules in said fuzzy rule base, wherein said fuzzy rule base comprises said knowledge of said application domain and said attendant goal, and primarily determining a performance of said fuzzy logic validation by said fuzzy rule base.
-
-
14. A universal robust filtering process, as recited in claim 13, after the step (c3), further comprising the step of:
-
(c4) receiving said fuzzy outputs from said fuzzy interface engine in said defuzzifier module, selectively approving said measurement data to form said approved measurement which is passed down without change to said state estimate module, generating crisp corrected measurement data to form said corrected measurement that represents a possibility distribution of said inferred fuzzy outputs from said fuzzy interface engine, and outputting said corrected measurement to said state estimate module, and rejecting said measurement data to form said rejected-measurement flag and outputting said rejected-measurement flag to said state estimate module.
-
-
15. A universal robust filtering process, as recited in claim 14, wherein the step (d) further comprises the step of:
(d1) computing a model relevant information for a time update and a measurement update in a model selection, wherein said model selection provides an initial condition of said system estimate for a system model computation in said time update, an initial condition of said covariance error matrix for a derivative system model computation in said time update, a system model for said system model computation in said time update, a derivative system model for said derivative system model computation in said time update, a measurement model for a measurement model computation in said measurement update, and a derivative measurement model for a derivative measurement model computation in said measurement update.
-
16. A universal robust filtering process, as recited in claim 15, after the step (d1), further comprising the step of:
-
(d2) propagating said state estimate during an interval of last two consecutive valid measurements in said time update which is based upon a system model; and
(d3) correcting said state estimate by using a latest measurement data in said measurement update, said measurement update being based upon said measurement model and said measurement data, wherein when said rejected-measurement flag is received corresponding to said latest measurement data from said fuzzy logic validation, said measurement update for said latest measurement data is skipped and said time update continues, and that when said latest measurement data is adopted, results obtained in said time update are utilized as initial conditions.
-
-
17. A universal robust filtering process, as recited in claim 16, wherein said step (d2) further comprises the step of:
-
(d2-1) computing an interval span between said last two consecutive valid measurements in order to determine how long said time update propagates without said measurement update;
(d2-2) receiving said system model from a model selection and computing a time derivative of said system state at a latest estimate of said system state in said system model computation;
(d2-3) receiving said derivative system model from said model selection and computing a time derivative of a covariance error matrix for said system state at said latest estimate of said system state in said derivative system model computation;
(d2-4) propagating said state estimate by utilizing said time derivative of said system state computed in said system model computation in a prediction update, using a Runge-Kutta integration algorithm with adaptive stepsize control; and
(d2-5) propagating said covariance error matrix of said state estimate by utilizing said time derivative of said covariance error matrix computed in said derivative system model computation in a prediction covariance update, using a factorized implementation.
-
-
18. A universal robust filtering process, as recited in claim 16, wherein said step (d3) further comprises the step of:
-
(d3-1) receiving said measurement model from said model selection and computing a predicted measurement at a latest estimate of system state in said measurement model computation, (d3-2) receiving said derivative measurement model from said model selection and computing a measurement Jacobian matrix at said latest estimate of system state in said derivative measurement model computation, (d3-3) updating said covariance error matrix by using measurement update equations in said estimate covariance update, and (d3-4) updating an optimal estimate of system state by using said measurement update equations in said estimate update.
-
-
19. A universal robust filtering process, as recited in claim 17, wherein said step (d3) further comprises the step of:
-
(d3-1) receiving said measurement model from said model selection and computing a predicted measurement at a latest estimate of system state in said measurement model computation, (d3-2) receiving said derivative measurement model from said model selection and computing a measurement Jacobian matrix at said latest estimate of system state in said derivative measurement model computation, (d3-3) updating said covariance error matrix by using measurement update equations in said estimate covariance update, and (d3-4) updating an optimal estimate of system state by using said measurement update equations in said estimate update.
-
-
20. A universal robust filtering process, as recited in claim 18, after the step (b3), further comprising the steps of:
-
(d4) calculating an interval from which a backward smoothed estimate is extracted;
(d5) obtaining said forward state estimate and a covariance error matrix thereof in a forward measurement update and a forward time update by performing the step (d2) and the step (d3);
(d6) propagating a backward estimate during said interval of said last two consecutive reversed measurements in a backward time update based upon said backward system model so as to define said backward state estimate and said associated covariance error matrix thereof for said backward system model respectively, just after said last reversed measurement being processed by said backward measurement update;
(d7) correcting said backward state estimate by using said reversed measurement data in a backward measurement update based upon said measurement model and said measurement data, wherein results obtained in said backward time update are utilized as initial conditions, wherein a state estimate and an associated covariance error matrix thereof obtained from said backward time update just before a new measurement is processed by said backward measurement update;
(d8) computing a covariance error matrix for a smoothed state estimate using said covariance error matrix of said forward system estimate and said covariance error matrix of said backward system estimate in a smoothed estimate covariance update; and
(d9) computing said smoothed state estimate using said forward system estimate and said backward system estimate in a smoothed estimate update.
-
-
21. A universal robust filtering process, as recited in claim 19, after the step (b3), further comprising the steps of:
-
(d4) calculating an interval from which a backward smoothed estimate is extracted;
(d5) obtaining said forward state estimate and a covariance error matrix thereof in a forward measurement update and a forward time update by performing the step (d2) and the step (d3);
(d6) propagating a backward estimate during said interval of said last two consecutive reversed measurements in a backward time update based upon said backward system model so as to define said backward state estimate and said associated covariance error matrix thereof for said backward system model respectively, just after said last reversed measurement being processed by said backward measurement update;
(d7) correcting said backward state estimate by using said reversed measurement data in a backward measurement update based upon said measurement model and said measurement data, wherein results obtained in said backward time update are utilized as initial conditions, wherein a state estimate and an associated covariance error matrix thereof obtained from said backward time update just before a new measurement is processed by said backward measurement update;
(d8) computing a covariance error matrix for a smoothed state estimate using said covariance error matrix of said forward system estimate and said covariance error matrix of said backward system estimate in a smoothed estimate covariance update; and
(d9) computing said smoothed state estimate using said forward system estimate and said backward system estimate in a smoothed estimate update.
-
-
22. A universal robust filtering process, as recited in claim 20, wherein said step (d6) further comprise said steps of:
-
(d6-1) computing said interval span between said last two consecutive reserved valid measurements so as to determine how long said backward time update propagates without a measurement update;
(d6-2) receiving said system model and said derivative system model from a model selection, computing a system function and a Jacobian matrix at said forward state estimate obtained in forward filtering, and calculating a time derivative of said backward system state in a system model computation;
(d6-3) receiving said derivative system model from said model selection and computing a time derivative of said covariance error matrix for said backward system state at said forward state estimate in a derivative system model computation;
(d6-4) propagating said backward state estimate by utilizing said time derivative of said backward system state computed in said system model computation in a backward prediction update, using a Runge-Kutta integration algorithm with adaptive stepsize control; and
(d6-5) propagating said covariance error matrix of said backward state estimate by utilizing said time derivative of said covariance error matrix computed in said derivative system model computation in a backward prediction covariance update, using a factorized implementation.
-
-
23. A universal robust filtering process, as recited in claim 21, wherein said step (d6) further comprise said steps of:
-
(d6-1) computing said interval span between said last two consecutive reserved valid measurements so as to determine how long said backward time update propagates without a measurement update;
(d6-2) receiving said system model and said derivative system model from a model selection, computing a system function and a Jacobian matrix at said forward state estimate obtained in forward filtering, and calculating a time derivative of said backward system state in a system model computation;
(d6-3) receiving said derivative system model from said model selection and computing a time derivative of said covariance error matrix for said backward system state at said forward state estimate in a derivative system model computation;
(d6-4) propagating said backward state estimate by utilizing said time derivative of said backward system state computed in said system model computation in a backward prediction update, using a Runge-Kutta integration algorithm with adaptive stepsize control; and
(d6-5) propagating said covariance error matrix of said backward state estimate by utilizing said time derivative of said covariance error matrix computed in said derivative system model computation in a backward prediction covariance update, using a factorized implementation.
-
-
24. A universal robust filtering process, as recited in claim 20, wherein said step (d7) further comprise said steps of:
-
(d7-1) receiving said measurement model from said model selection and computing a predicted measurement at said forward state estimate in a measurement model computation;
(d7-2) receiving said derivative measurement model from said model selection and computing a measurement Jacobian matrix at said forward state estimate in a derivative measurement model computation;
(d7-3) updating said covariance error matrix of said backward system estimate using said backward measurement update equations in a backward estimate covariance update; and
(d7-4) updating said backward state estimate by using said backward measurement update equations in a backward estimate update.
-
-
25. A universal robust filtering process, as recited in claim 21, wherein said step (d7) further comprise said steps of:
-
(d7-1) receiving said measurement model from said model selection and computing a predicted measurement at said forward state estimate in a measurement model computation;
(d7-2) receiving said derivative measurement model from said model selection and computing a measurement Jacobian matrix at said forward state estimate in a derivative measurement model computation;
(d7-3) updating said covariance error matrix of said backward system estimate using said backward measurement update equations in a backward estimate covariance update; and
(d7-4) updating said backward state estimate by using said backward measurement update equations in a backward estimate update.
-
-
26. A universal robust filtering process, as recited in claim 22, wherein said step (d7) further comprise said steps of:
-
(d7-1) receiving said measurement model from said model selection and computing a predicted measurement at said forward state estimate in a measurement model computation;
(d7-2) receiving said derivative measurement model from said model selection and computing a measurement Jacobian matrix at said forward state estimate in a derivative measurement model computation;
(d7-3) updating said covariance error matrix of said backward system estimate using said backward measurement update equations in a backward estimate covariance update; and
(d7-4) updating said backward state estimate by using said backward measurement update equations in a backward estimate update.
-
-
27. A universal robust filtering process, as recited in claim 23, wherein said step (d7) further comprise said steps of:
-
(d7-1) receiving said measurement model from said model selection and computing a predicted measurement at said forward state estimate in a measurement model computation;
(d7-2) receiving said derivative measurement model from said model selection and computing a measurement Jacobian matrix at said forward state estimate in a derivative measurement model computation;
(d7-3) updating said covariance error matrix of said backward system estimate using said backward measurement update equations in a backward estimate covariance update; and
(d7-4) updating said backward state estimate by using said backward measurement update equations in a backward estimate update.
-
-
28. A universal robust filtering process, as recited in claim 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, or 27, before the step (a), further comprising the steps of:
-
selecting system state elements to be a square root of abundance of candidate materials, which guarantees nonnegativeness of abundance;
establishing a dynamical system model, by converting a two-dimensional spatial index into a one-dimensional index, and assuming that a relationship of said square root of abundance between two adjacent pixels is modeled as a Gauss-Markov process; and
establishing a measurement model, by assuming that a spectrum of each of said pixels is modeled as a linear mixture of spectral signatures of materials within said pixel.
-
Specification