dstl / Stone-Soup

A software project to provide the target tracking community with a framework for the development and testing of tracking algorithms.
https://stonesoup.rtfd.io
MIT License
384 stars 126 forks source link

Multi Measurement Initiator - Error on MultipleHypothesis Associations #1035

Open ztarsasw opened 4 weeks ago

ztarsasw commented 4 weeks ago

Problem Description: The initiate method of MultiMeasurementInitiator currently assumes that the associations provided by the initiator's data_associator will be SingleHypothesis types. However, this will error when the user configures the initiator to use a hypothesiser that returns MultipleHypothesis types as it does not define measurement or prediction members.

Steps to Reproduce: Define a tracker with a MultiMeasurementInitiator that is using a PDAHypothesiser within it's data_associator.

Desired Solution:

  1. Ideally, the MultiMeasurementInitiator should be able to use any valid hypothesiser/data_associator combination, not just ones that can produce SingleHypothesis types.
  2. It may not make sense for the MultiMeasurementInitiator itself to work in a Multi-Hypothesis context (especially with the releasability criteria being number of detections). At the very least, this should be mentioned in the documentation.
  3. In the case of 2, it might make sense to implement an analogous initiator that can specifically release tracks based on some sort of analysis of the MultipleHypothesis type (like how the MixtureTracker's __next__ method is implemented).