Open afansi opened 4 years ago
Hi @afansi, this is a good question, and I don't have a concise answer yet, but I am excited to start thinking about it! Both of the things that you wrote above make sense.
However, currently no POMDPs.jl solvers leverage MOMDP structure. If you just want to use the current POMDPs.jl solvers with one problem that happens to be a MOMDP, then I would recommend not messing with the DDN structure and instead just using x and y as local variables in your transition and observation code. POMDPs.jl currently makes the assumption that the only input nodes are :s
and :a
, so the DDNs you have above will not work with current code.
The rest of this post will be about how we would actually start supporting MOMDP solvers. If you meant to start this discussion, great! We are excited to start working on it :)
The current DDN functionality was designed with the constrained (PO)MDP use case in mind, which is considerably simpler (just adding a :c
node) than MOMDPs, so there may need to be some small additions/design changes in POMDPs.jl to get it right.
Given the above criteria, here are my initial thoughts:
DDNGroup
or AliasNode
or StateNode
to represent s
and sp
transition
for :sp
and observation
for :o
:y
exactly, the only thing that should be in each particle is :x
. (@lassepe has a lot of experience with this)More thoughts to come later!
I think the lowest-risk way to approach this is to develop all the components in the MOMDPs package and then move them here if we find that they work well. Moving to this issue: https://github.com/JuliaPOMDP/MOMDPs.jl/issues/1
Hello Guys,
I am asking what customization need to be performed on the DNNStructure of the DBNs to allow modeling MOMDPs.
I know that the DBN should be like this one
and I wondering if we could have a skeleton like this (my julia skills are very poor):
or
Does this definition be compatible with the JuliaPOMDPs Solvers? What is a good way to deal with MOMDPs?