Proposal
Simple
- class stonesoup.proposal.simple.DynamicsProposal(transition_model: TransitionModel, control_model: ControlModel = None)[source]
Bases:
ProposalProposal that uses the dynamics model as the importance density. This proposal uses the dynamics model to predict the next state, and then uses the predicted state as the prior for the measurement model.
- Parameters:
transition_model (
TransitionModel) – The transition model used to make the predictioncontrol_model (
ControlModel, optional) – control model
- transition_model: TransitionModel
The transition model used to make the prediction
- control_model: ControlModel
control model
- rvs(prior: State, measurement=None, time_interval=None, control_input=None, **kwargs) StateVector | StateVectors[source]
Generate samples from the proposal.
- Parameters:
state (
State) – The state to generate samples from.measurement (
Detection) – the measurement that will preferably used to get time interval if provided(the default is None)time_interval (
datetime.time_delta) – time interval of the prediction is needed to propagate the statescontrol_input (
State, optional) – \(\mathbf{u}_k\) passed to control model
- Returns:
State with samples drawn from the updated proposal
- Return type:
ParticlePrediction
- class stonesoup.proposal.simple.KalmanProposal(predictor: Predictor, updater: Updater)[source]
Bases:
ProposalThis proposal uses the Kalman filter prediction and update steps to generate new set of particles and weights
- Parameters:
- rvs(prior: State, measurement: Detection = None, time_interval=None, **kwargs)[source]
Generate samples from the proposal.
Use the Kalman filter predictor and updater to create a new distribution
- Parameters:
- Returns:
State with samples drawn from the updated proposal
- Return type:
ParticlePrediction