Changes
Page history
Update Thornton Bierman factorization
authored
Sep 15, 2021
by
Gabriel François Laupré
Show whitespace changes
Inline
Side-by-side
Thornton-Bierman-factorization.md
View page @
aeb10980
...
@@ -22,9 +22,9 @@ containing the diagonal coefficients.
...
@@ -22,9 +22,9 @@ containing the diagonal coefficients.
### Initial decomposition
### Initial decomposition
Even th
at we always work wit
h the factorized covariance
, we still read
Even th
oug
h the factorized covariance
is used for computation, the unfactorized
the unfactorized
initial covariance matrix from the configuration file.
initial covariance matrix
is read
from the configuration file.
Therefore,
we need to factorize
this initial covariance matrix before
Therefore, this initial covariance matrix
needs to be factorized
before
beginning to filter. This is done by the
`EKF::UDDecomp()`
method. This
beginning to filter. This is done by the
`EKF::UDDecomp()`
method. This
factorization is a variant of the Cholewsky decomposition, and the
factorization is a variant of the Cholewsky decomposition, and the
implementation is largely inspired from the source of Eigen's
`LDLT`
implementation is largely inspired from the source of Eigen's
`LDLT`
...
@@ -51,12 +51,12 @@ implementation is very close to the Matlab
...
@@ -51,12 +51,12 @@ implementation is very close to the Matlab
implementation, since it is not possible to use many block operations in
implementation, since it is not possible to use many block operations in
this case. It is implemented in the
`EKF::updateState`
method.
this case. It is implemented in the
`EKF::updateState`
method.
Since the algorithm only support single-dimensional updates,
we have to
Since the algorithm only support
s
single-dimensional updates,
each component of
compu
te ea
ch component of the measurement
sequentially. This implies
t
h
e
m
ea
surement has to be computed
sequentially. This implies
that
we
must
re
compute
the residuals
after every component update. Since
that
the residuals
must
be
compute
d
after every component update. Since
the measurement model is non-linear,
we recompute
the h function after
the measurement model is non-linear, the h function
is reevaluated
after
every iteration, and the results differ significantly from the result of
every iteration, and the results differ significantly from the result of
the standard Kalman filter algorithm. The difference can be greatly
the standard Kalman filter algorithm. The difference can be greatly
reduced by using a linearized version of the
of the
measurement model.
reduced by using a linearized version of the measurement model.
In the absence of ground truth, it is not possible to tell which results
In the absence of ground truth, it is not possible to tell which results
are closest to reality, and this would require further research.
are closest to reality, and this would require further research.
\ No newline at end of file