ciemss / pyciemss

Causal and probabilistic reasoning with continuous time dynamical systems
Other
12 stars 4 forks source link

Add support for dynamic parameter/state interventions in `optimize` as fixed interventions #582

Open liunelson opened 1 week ago

liunelson commented 1 week ago

Optimize currently only support static parameter interventions. The dynamic variant appears to be necessary for the upcoming monthly demo. @sabinala @anirban-chaudhuri is probably working on it already?

Tom-Szendrey commented 1 day ago

Discussed with @djinnome @sabinala and they have mentioned this is not required for this specific incoming scenario test case. It sounds like this is being put on hold for the moment

liunelson commented 1 day ago

@sabinala @djinnome @anirban-chaudhuri As seen in today's meeting, we now have a Create Intervention Policy operator where one can define a policy with multiple different interventions (static/dynamic parameter/state). In case that the upcoming Monthly Demo does not require optimizing a dynamic parameter intervention, we would still need to have pyciemss.optimize accept the fixed form of all these interventions. Currently, there is only fixed_static_parameter_interventions. Could we expect also fixed_*_interventions, * = static_state, dynamic_state, dynamic_parameter?

https://github.com/ciemss/pyciemss/blob/422232cc31857765c3eb3365180c8d590599b5a9/pyciemss/interfaces.py#L786C5-L786C41

anirban-chaudhuri commented 1 day ago

@liunelson I can add in support for fixed dynamic interventions to optimize