javaslam.filter
Interface NonlinearFilter

All Known Implementing Classes:
LinearizedFilter

public interface NonlinearFilter

A filter for nonlinear systems that maintains an approximate Gaussian belief state.


Method Summary
 void measurement(ListSet vars, NoisyVectorFunction g, double[] y)
          Performs an approximate nonlinear measurement update.
 void time(ListSet vars, NoisyVectorFunction f)
          Performs an approximate nonlinear time update.
 

Method Detail

measurement

public void measurement(ListSet vars,
                        NoisyVectorFunction g,
                        double[] y)
Performs an approximate nonlinear measurement update. The parameters vars, g, and q define the measurement equation as follows:
y=g(x[vars], v)
where v is an independent white noise vector. Given the actual measurement y, this method updates the belief state.

Parameters:
vars - an ordered set of the variables with sum dimension n in the belief state that causally influenced this measurement.
g - the noisy measurement function with input dimension n + m and output dimension k; the input is formed from x[vars] stacked on top of the noise vector v
y - the measurement k-vector
Throws:
IllegalArgumentException - if there are any dimension mismatches

time

public void time(ListSet vars,
                 NoisyVectorFunction f)
Performs an approximate nonlinear time update. The parameters vars, f, and q define the state evolution equation as follows:
xt + 1[vars]= f(xt[vars], w)
where w is an independent white noise vector. All variables not in vars are assumed stationary.

Parameters:
vars - an ordered set of the variables with sum dimension n in the belief state that evolve.
f - the state evolution function with input dimension n + m and output dimension n
Throws:
IllegalArgumentException - if there are any dimension mismatches