artan.smoother package¶
Submodules¶
artan.smoother.linear_kalman_smoother module¶
-
class
artan.smoother.linear_kalman_smoother.
HasFixedLag
[source]¶ Bases:
pyspark.ml.param.Params
Mixin for param for fixed lag
-
fixedLag
= Param(parent='undefined', name='fixedLag', doc='Fixed lag')¶
-
-
class
artan.smoother.linear_kalman_smoother.
LinearKalmanSmoother
(stateSize, measurementSize)[source]¶ Bases:
artan.state.stateful_transformer.StatefulTransformer
,artan.filter.filter_params.KalmanFilterParams
,artan.smoother.linear_kalman_smoother.HasFixedLag
Fixed lag linear kalman smoother using Rauch-Tung-Striebel method. The smoother is implemented with a stateful spark transformer for running parallel smoother /w spark dataframes. Transforms an input dataframe of noisy measurements to dataframe of state estimates using stateful spark transformations, which can be used in both streaming and batch applications.
At a time step k and a fixed lag N, the fixed lag linear kalman smoother computes the state estimates of a linear kalman filter based on all measurements made between step k and step k-t. For each time step k >= N, the smoother outputs an estimate for all the time steps between k and k-N. When k < N, the smoother doesn’t output any estimates. As a result, the memory requirements of this filter is N times of a linear kalman filter. Since the smoother outputs multiple estimates for a single measurement, it is advised to set event time column of the measurements with setEventTimeCol.