tapios / risk-networks

Code for risk networks: a blend of compartmental models, graphs, data assimilation and semi-supervised learning
Other
2 stars 2 forks source link

perfect + imperfect observation on same node. #132

Closed odunbar closed 4 years ago

odunbar commented 4 years ago

The perfect record, and imperfect test observations appear to work in tandem but only if they are not observing the same node. We should investigate where the issue arises - in the EAKF, or the sum_to_one function. We believe the former is more likely

Currently it can be 'essentially' avoided, by having an 'intelligent' observation (that avoids observing infectiousness where I_i~=0 ) and by observing only perfect data for positive hospital and death records. E.g below (one gets drift on the pink and green as we only observe positive jumps, we also only observe 0.25 < I_i < 0.75) )

filter_on_loaded_epidemic

This issue arises when one wishes to implement some random observations. Here is the above setting upto time 15 where we observed (0.00<I_i<0.75) so there is a clash of the perfect and imperfect observations at the first instance of a death. filter_on_loaded_epidemic

Likewise if one wishes to do negative death/hospital records, then we must observe at all nodes. Therfore the problem is immediately present ta time zeros. (here observing perfect deceased data for all nodes, and observing some infectious nodes up to time 2)

filter_on_loaded_epidemic

A proposed solution (if it turns out to be an ill conditioned EAKF update) would be to have 2 EAKF update steps, firstly all the imperfect observations are accounted for with their corresponding data, then all the perfect observations are accounted for. As perfect data is more trusted and therefore should be performed second.