|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--javaslam.filter.LinearizedFilter
A filter for nonlinear systems that uses local linearizations of the dynamics and measurement models so that a linear-Gaussian filter can be used to maintain an approximate Gaussian belief state. This class permits an arbitrary combination of linearization techniques and filter techniques; for example:
UnscentedTransformation
with the
KalmanFilter
we get the Unscented Kalman filter;ExtendedTransformation
with the
InformationFilter
we get the Extended Information
filter;
Field Summary | |
protected Filter |
filter
The underlying linear-Gaussian filter. |
protected LinearizationFactory |
linearization
The factory for creating linearizations. |
Constructor Summary | |
LinearizedFilter(Filter filter,
LinearizationFactory linearization)
Constructor. |
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. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
protected Filter filter
protected LinearizationFactory linearization
Constructor Detail |
public LinearizedFilter(Filter filter, LinearizationFactory linearization)
filter
- the underlying linear-Gaussian filter used for
filteringlinearization
- a linearization factory used to
create linearizations of nonlinear modelsMethod Detail |
public void measurement(ListSet vars, NoisyVectorFunction g, double[] y)
vars
, g
, and
q
define the measurement equation as follows:
where v is an independent white noise vector. Given the actual measurementy= g
(x[vars
], v)
y
, this method updates the belief
state.
measurement
in interface NonlinearFilter
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 vy
- the measurement k-vector
IllegalArgumentException
- if there are any dimension mismatchespublic void time(ListSet vars, NoisyVectorFunction f)
vars
, f
, and q
define the
state evolution equation as follows:
where w is an independent white noise vector. All variables not inxt + 1[ vars
]=f
(xt[vars
], w)
vars
are assumed stationary.
time
in interface NonlinearFilter
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
IllegalArgumentException
- if there are any dimension mismatches
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |