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

MultiTargetTracker __next__ fails for MultipleHypothesis associations #877

Open ztarsasw opened 8 months ago

ztarsasw commented 8 months ago

v 1.1 MultiTargetTracker ExtendedKalmanUpdater PDAHypothesiser PDA Data Associator

When running a MultiTargetTracker with a data associator that returns a MultipleHypothesis object from it's associate method, the next method of MultiTargetTracker fails as the Updater expects a Hypothesis type that contains a prediction attribute. My guess is that the check for hypothesis on line 220 in stonesoup/tracker/simple.py needs to be extended to handle the MultiHypothesis case.

Definitely possible I have an implementation issue, but this seems more like a case that should be supported by the MultiTargetTracker type.

ztarsasw commented 8 months ago

Just as a follow up, when I changed my implementation to use a MultiTargetMixtureTracker, things worked as expected. This might be intended behavior, but recommend clarifying this in naming/docs if so. As a user, it's not clear that "Mixture" = "Supports MHT" without reading the source code, though that term may be defined elsewhere in the docs.