change argument's type of two functions from "MDP" to "Union{MDP,POMDP}" #29
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
When I check the source code of QMDP solver, which is a POMDP solver, I find that ValueIterationSolver from this repo is used. And in this repo, a faster solver SparseValueIterationSolver is also provided. So I think maybe I can modify the source code of QMDP to add this solver as an optional solver. But soon I find that the two functions transition_matrix_a_s_sp(mdp::MDP) and reward_s_a(mdp::MDP) only accept argument of MDP Type. According to my understanding this two function can actually also accept POMDP type. I have tried the modified version in my QMDP solver and everything runs smoothly. The results are also as expected.