Stone-Soup icon indicating copy to clipboard operation
Stone-Soup copied to clipboard

Allow default values for MeasurementInitiators

Open gawebb-dstl opened this issue 2 years ago • 4 comments

Add default value to prior_state for SimpleMeasurementInitiator & MultiMeasurementInitiator

  • The prior state is overwritten with 0s in the function so it makes little sense to require a value for it when a StateVector and CovarianceMatrix can initalised with zeros

  • Slight breaking change to MultiMeasurementInitiator as the order of arguments has changed. No effect when initialising the object with keyword arguments

Add option to skip detections in MultiMeasurementInitiator with a non reversible measurement model

gawebb-dstl avatar Sep 23 '22 16:09 gawebb-dstl

Codecov Report

Base: 94.79% // Head: 94.67% // Decreases project coverage by -0.12% :warning:

Coverage data is based on head (9626a9c) compared to base (e5955f6). Patch coverage: 60.00% of modified lines in pull request are covered.

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #727      +/-   ##
==========================================
- Coverage   94.79%   94.67%   -0.13%     
==========================================
  Files         168      168              
  Lines        8190     8218      +28     
  Branches     1560     1567       +7     
==========================================
+ Hits         7764     7780      +16     
- Misses        317      328      +11     
- Partials      109      110       +1     
Flag Coverage Δ
integration 69.34% <60.00%> (-0.03%) :arrow_down:
unittests 92.45% <60.00%> (-0.13%) :arrow_down:

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files Coverage Δ
stonesoup/initiator/simple.py 89.92% <47.05%> (-6.04%) :arrow_down:
stonesoup/initiator/wrapper.py 88.00% <76.92%> (-12.00%) :arrow_down:

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.

codecov[bot] avatar Sep 23 '22 17:09 codecov[bot]

  • The prior state is overwritten with 0s in the function so it makes little sense to require a value for it when a StateVector and CovarianceMatrix can initalised with zeros

So this currently only overwrites elements of the prior that are mapped to the measurement space. This could result in having some elements of the covariance default to zero, which would cause cause issues. I don't think this is suitable default behaviour.

Add option to skip detections in MultiMeasurementInitiator with a non reversible measurement model

The multi-measurement initiator doesn't have any calls to the inverse function of the measurement model, so not sure why this would be required?

sdhiscocks avatar Sep 26 '22 08:09 sdhiscocks

Add option to skip detections in MultiMeasurementInitiator with a non reversible measurement model

The multi-measurement initiator doesn't have any calls to the inverse function of the measurement model, so not sure why this would be required?

This additional option was used to filter the detections going into the initiator. Measurements with non-reversible measurement models generally don't have sufficient co-ordinate information to map to a single position/state. Therefore they're more likely to associate to clutter and form clutter tracks. This was an easy quick fix and may be more appropriate as a wrapper for the initiator instead

gawebb-dstl avatar Sep 26 '22 11:09 gawebb-dstl

I'm not sure if SimpleMeasurementInitiatorWithCovar adds much, let me know what you think. If you think SimpleMeasurementInitiatorWithCovar is worth having, I'll add some tests and documentation

gawebb-dstl avatar Sep 27 '22 15:09 gawebb-dstl

Yeah, I'm not sure SimpleMeasurementInitiatorWithCovar is really needed. But certainly the filtered detections would be useful.

sdhiscocks avatar Oct 25 '22 10:10 sdhiscocks

@gawebb-dstl I'll close this one for now, but the filtered detections for initiators would be useful if you could open another PR for this.

sdhiscocks avatar Feb 01 '23 09:02 sdhiscocks