HOME

TheInfoList



OR:

An alpha beta filter (also called alpha-beta filter, f-g filter or g-h filterEli Brookner: Tracking and Kalman Filtering Made Easy. Wiley-Interscience, 1st edition, 4 1998.) is a simplified form of
observer An observer is one who engages in observation or in watching an experiment. Observer may also refer to: Computer science and information theory * In information theory, any system which receives information from an object * State observer in co ...
for estimation, data smoothing and control applications. It is closely related to
Kalman filter For statistics and control theory, Kalman filtering, also known as linear quadratic estimation (LQE), is an algorithm that uses a series of measurements observed over time, including statistical noise and other inaccuracies, and produces estimat ...
s and to linear state observers used in
control theory Control theory is a field of mathematics that deals with the control of dynamical systems in engineered processes and machines. The objective is to develop a model or algorithm governing the application of system inputs to drive the system to a ...
. Its principal advantage is that it does not require a detailed system model.


Filter equations

An alpha beta filter presumes that a system is adequately approximated by a model having two internal states, where the first state is obtained by integrating the value of the second state over time. Measured system output values correspond to observations of the first model state, plus disturbances. This very low order approximation is adequate for many simple systems, for example, mechanical systems where position is obtained as the time integral of velocity. Based on a mechanical system analogy, the two states can be called ''position x'' and ''velocity v''. Assuming that velocity remains approximately constant over the small time interval ''ΔT'' between measurements, the position state is projected forward to predict its value at the next sampling time using equation 1. : \text \quad \hat_ \leftarrow \hat_ + \Delta \textrm\ \textbf \hat_ Since velocity variable ''v'' is presumed constant, its projected value at the next sampling time equals the current value. : \text \quad \hat_ \leftarrow \hat_ If additional information is known about how a driving function will change the ''v'' state during each time interval, equation 2 can be modified to include it. The output measurement is expected to deviate from the prediction because of noise and dynamic effects not included in the simplified dynamic model. This prediction error ''r'' is also called the ''residual'' or ''innovation'', based on statistical or Kalman filtering interpretations : \text \quad \hat_ \leftarrow \textbf_ - \hat_ Suppose that residual ''r'' is positive. This could result because the previous ''x'' estimate was low, the previous ''v'' was low, or some combination of the two. The alpha beta filter takes selected ''alpha'' and ''beta'' constants (from which the filter gets its name), uses ''alpha'' times the deviation ''r'' to correct the position estimate, and uses ''beta'' times the deviation ''r'' to correct the velocity estimate. An extra ''ΔT'' factor conventionally serves to normalize magnitudes of the multipliers. : \text \quad \hat_ \leftarrow \hat_ + (\alpha)\ \hat_ : \text\quad \hat_ \leftarrow \hat_ + ( \beta / \Delta \textrm )\ \hat_ The corrections can be considered small steps along an estimate of the gradient direction. As these adjustments accumulate, error in the state estimates is reduced. For convergence and stability, the values of the ''alpha'' and ''beta'' multipliers should be positive and small:C. Frank Asquith: Weight selection in first-order linear filters. Technical report, Army Intertial Guidance and Control Laboratory Center, Redstone Arsenal, Alabama, 1969. https://doi.org/10.21236/ad0859332 : \quad 0 < \alpha < 1 : \quad 0 < \beta \leq 2 : \quad 0 < 4 - 2\alpha - \beta Noise is suppressed only if 0 < \beta < 1, otherwise the noise is amplified. Values of ''alpha'' and ''beta'' typically are adjusted experimentally. In general, larger ''alpha'' and ''beta'' gains tend to produce faster response for tracking transient changes, while smaller ''alpha'' and ''beta'' gains reduce the level of noise in the state estimates. If a good balance between accurate tracking and noise reduction is found, and the algorithm is effective, filtered estimates are more accurate than the direct measurements. This motivates calling the alpha-beta process a ''filter''.


Algorithm summary

Initialize. # Set the initial values of state estimates ''x'' and ''v'', using prior information or additional measurements; otherwise, set the initial state values to zero. # Select values of the ''alpha'' and ''beta'' correction gains. Update. Repeat for each time step ΔT: # Project state estimates x and v using equations 1 and 2 # Obtain a current measurement of the output value # Compute the residual r using equation 3 # Correct the state estimates using equations 4 and 5 # Send updated x and optionally v as the filter outputs


Sample program

Alpha Beta filter can be implemented in CTremor Cancellation in Handheld Microsurgical Devices, TC83 by Gaurav Mittal, Deepansh Sehgal and Harsimran Jit Singh,
Punjab Engineering College Punjab Engineering College (abbreviated PEC or PEC Chandigarh) is a public research & technical institution in Chandigarh. It was founded in 1921 in Lahore, established in Chandigarh in 1953, and focuses on the field of applied sciences, particu ...
as follows: #include #include int main()


Result

The following images depict the outcome of the above program in graphical format. In each image, the blue trace is the input signal; the output is red in the first image, yellow in the second, and green in the third. For the first two images, the output signal is visibly smoother than the input signal and lacks extreme spikes seen in the input. Also, the output moves in an estimate of
gradient In vector calculus, the gradient of a scalar-valued differentiable function of several variables is the vector field (or vector-valued function) \nabla f whose value at a point p is the "direction and rate of fastest increase". If the gradi ...
direction of input. The higher the alpha parameter, the higher is the effect of input and the less damping is seen. A low value of beta is effective in controlling sudden surges in velocity. Also, as alpha increases beyond unity, the output becomes rougher and more uneven than the input.


Relationship to general state observers

More general state observers, such as the
Luenberger observer In control theory, a state observer or state estimator is a system that provides an estimate of the internal state of a given real system, from measurements of the input and output of the real system. It is typically computer-implemented, and pr ...
for linear control systems, use a rigorous system model. Linear observers use a gain matrix to determine state estimate corrections from multiple deviations between measured variables and predicted outputs that are linear combinations of state variables. In the case of alpha beta filters, this gain matrix reduces to two terms. There is no general theory for determining the best observer gain terms, and typically gains are adjusted experimentally for both. The linear Luenberger observer equations reduce to the alpha beta filter by applying the following specializations and simplifications. * The discrete state transition matrix A is a square matrix of dimension 2, with all main diagonal terms equal to 1, and the first super-diagonal terms equal to ''ΔT''. * The observation equation matrix C has one row that selects the value of the first state variable for output. * The filter correction gain matrix L has one column containing the alpha and beta gain values. * Any known driving signal for the second state term is represented as part of the input signal vector u, otherwise the u vector is set to zero. * Input coupling matrix B has a non-zero gain term as its last element if vector u is non-zero.


Relationship to Kalman filters

A
Kalman filter For statistics and control theory, Kalman filtering, also known as linear quadratic estimation (LQE), is an algorithm that uses a series of measurements observed over time, including statistical noise and other inaccuracies, and produces estimat ...
estimates the values of state variables and corrects them in a manner similar to an alpha beta filter or a state observer. However, a Kalman filter does this in a much more formal and rigorous manner. The principal differences between Kalman filters and alpha beta filters are the following. * Like state observers, Kalman filters use a detailed dynamic system model that is not restricted to two states. * Like state observers, Kalman filters in general use multiple observed variables to correct state variable estimates, and these do not have to be direct measurements of individual system states. * A Kalman filter uses covariance noise models for states and observations. Using these, a time-dependent estimate of state covariance is updated automatically, and from this the Kalman gain matrix terms are calculated. Alpha beta filter gains are manually selected and static. * For certain classes of problems, a Kalman filter is Wiener optimal, while alpha beta filtering is in general suboptimal. A Kalman filter designed to track a moving object using a constant-velocity target dynamics (process) model (i.e., constant velocity between measurement updates) with process noise covariance and measurement covariance held constant will converge to the same structure as an alpha-beta filter. However, a Kalman filter's gain is computed recursively at each time step using the assumed process and measurement error statistics, whereas the alpha-beta's gain is computed ad hoc.


Choice of parameters

The alpha-beta filter becomes a steady-state Kalman filter if filter parameters are calculated from the sampling interval T, the process variance \sigma_w^2 and the noise variance \sigma_v^2 like thisPaul R. Kalata: The tracking index: A generalized parameter for α-β and α-β-γ target trackers. IEEE Transactions on Aerospace and Electronic Systems, AES-20(2):174–181, March 1984.J. E. Gray and W. J. Murray: A derivation of an analytic expression for the tracking index for the alpha-beta-gamma filter. IEEE Trans. on Aerospace and Electronic Systems, 29:1064–1065, 1993. :\lambda = \frac :r = \frac :\alpha = 1 - r^2 :\beta = 2\left(2 - \alpha\right) - 4\sqrt This choice of filter parameters minimizes the mean square error. The steady state innovation variance s can be expressed as: :s = \frac


Variations


Alpha filter

A simpler member of this family of filters is the alpha filter which observes only one state: : \hat_ \leftarrow \hat_ + (\alpha)\ \hat_ with the optimal parameter calculated like this: : \begin \lambda & = \frac \\ \alpha & = \frac \end This calculation is identical for a
moving average In statistics, a moving average (rolling average or running average) is a calculation to analyze data points by creating a series of averages of different subsets of the full data set. It is also called a moving mean (MM) or rolling mean and is ...
and a
low-pass filter A low-pass filter is a filter that passes signals with a frequency lower than a selected cutoff frequency and attenuates signals with frequencies higher than the cutoff frequency. The exact frequency response of the filter depends on the filter des ...
.
Exponential smoothing Exponential smoothing is a rule of thumb technique for smoothing time series data using the exponential window function. Whereas in the simple moving average the past observations are weighted equally, exponential functions are used to assign expo ...
is mathematically identical to the purposed Alpha filter.


Alpha beta gamma filter

When the second state variable varies quickly, i.e. when the acceleration of the first state is large, it can be useful to extend the states of the alpha beta filter by one level. In this extension, the second state variable ''v'' is obtained from integrating a third ''acceleration'' state, analogous to the way that the first state is obtained by integrating the second. An equation for the ''a'' state is added to the equation system. A third multiplier, ''gamma'', is selected for applying corrections to the new ''a'' state estimates. This yields the ''alpha beta gamma'' update equations. : \hat_ \leftarrow \hat_ + ( \alpha )\ \textbf_ : \hat_ \leftarrow \hat_ + ( \beta / \Delta \textrm )\ \textbf_ : \hat_ \leftarrow \hat_ + ( 2\gamma / \Delta \textrm \textrm )\ \textbf_ Similar extensions to additional higher orders are possible, but most systems of higher order tend to have significant interactions among the multiple states, so approximating the system dynamics as a simple integrator chain is less likely to prove useful. Calculating optimal parameters for the alpha-beta-gamma filter is a bit more involved than for the alpha-beta filter: : \begin \lambda & = \frac \\ exb & = \frac - 3 \\ c & = \frac + 3 \\ d & = -1 \\ p & = c - \frac \\ q & = \frac - \frac + d \\ v & = \sqrt \\ z & = -\sqrt \\ s & = z - \frac - \frac \\ ex\alpha & = 1 - s^2 \\ \beta & = 2(1 - s)^2 \\ \gamma & = \frac \end


See also

*
Kalman filter For statistics and control theory, Kalman filtering, also known as linear quadratic estimation (LQE), is an algorithm that uses a series of measurements observed over time, including statistical noise and other inaccuracies, and produces estimat ...
*
Control theory Control theory is a field of mathematics that deals with the control of dynamical systems in engineered processes and machines. The objective is to develop a model or algorithm governing the application of system inputs to drive the system to a ...
*
State space (controls) In control engineering, a state-space representation is a mathematical model of a physical system as a set of input, output and state variables related by first-order differential equations or difference equations. State variables are variables w ...
*
Moving average In statistics, a moving average (rolling average or running average) is a calculation to analyze data points by creating a series of averages of different subsets of the full data set. It is also called a moving mean (MM) or rolling mean and is ...


References

;Sources
"The Alpha-Beta Filter", Penoyer, Robert; C Users Journal, July 1993
*[http://ieeexplore.ieee.org/Xplore/login.jsp?url=/iel4/7/2265/00062250.pdf?arnumber=62250 "Reconciling steady-state Kalman and alpha-beta filter design", by Painter, J.H.; Kerstetter, D.; Jowers, S. IEEE Transactions on Aerospace and Electronic Systems, Volume 26, Issue 6, Nov. 1990, pp. 986–991]
Fixed-lag alpha-beta filter for target trajectory smoothing Ogle, T.L.; Blair, W.D. Aerospace and Electronic Systems, IEEE Transactions on Volume 40, Issue 4, Oct. 2004, pp. 1417–1421"Description of an alpha-beta Filter in Cartesian Coordinates", by Cantrell, Ben H., NAVAL RESEARCH LAB WASHINGTON DC, March 21, 1973"Comparison of Four Filtering Options for a Radar Tracking Problem", by Lawton, John A. ; Jesionowski, Robert J. ; Zarchan, Paul. NAVAL SURFACE WARFARE CENTER DAHLGREN DIV VA, 1979.''Mathematical Techniques in Multisensor Data Fusion''
By David Lee Hall, Sonya A. H., Artech House, 2004, {{ISBN, 1-58053-335-3, section 4.4.4


External links


Alpha-Beta C# source code sample
Filter theory Signal processing Statistical approximations Articles with example C code