Introduced a new B_factor_control_list variable so that the user can specify the control variables each transition factor depends on using a list similar to the B_factor_list introduced to specify state dependencies.
Made edits to utils, control, learning, agent
The shape of B matrices is now defined as: [state_dim] + lagging_state_dims + control_dims. Conditioning on actions can be done easily with B[..., *relevant_action_idx]
Added checks/assertions in agent.__init__
Added relevant tests. Fixed a bunch of failed tests due to using != rather than is not in agent.__init__.
All tests passed except for those in test_mmp.py and test_SPM_validation.py
Introduced a new
B_factor_control_list
variable so that the user can specify the control variables each transition factor depends on using a list similar to theB_factor_list
introduced to specify state dependencies.utils, control, learning, agent
[state_dim] + lagging_state_dims + control_dims
. Conditioning on actions can be done easily withB[..., *relevant_action_idx]
agent.__init__
!=
rather thanis not
inagent.__init__
.test_mmp.py
andtest_SPM_validation.py