New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Compatibility with the POMDPs v0.8 release #56
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Shouldn't we remove the legacy grid world now?
I don't think we should remove legacy grid world - there are a bunch of tests that rely on the exact value function for it. We should, however remove the old GridWorld alias for the LegacyGridWorld that has been deprecated. I also think we can remove the visualization of LegacyGridWorld which can remove the TikzPicture dep |
thanks for working on this! |
Project.toml
Outdated
@@ -18,8 +18,9 @@ StaticArrays = "90137ffa-7385-5640-81b9-e52037218182" | |||
StatsBase = "2913bbd2-ae8a-5f71-8c99-4fb6c76f3a91" | |||
|
|||
[compat] | |||
POMDPSimulators = "< 0.3.0" | |||
julia = "1" | |||
POMDPSimulators = "0.3.0" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This line should be POMDPSimulators = "0.3"
. Does the difference make sense?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ah, so it subsumes any 0.3.x versions?
src/TMazes.jl
Outdated
@@ -219,7 +216,7 @@ function stateindex(maze::TMaze, s::TMazeState) | |||
end | |||
end | |||
|
|||
function generate_o(maze::TMaze, s::TMazeState, rng::AbstractRNG) | |||
function gen(::DDNOut{:o}, maze::TMaze, s::TMazeState, rng::AbstractRNG) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It seems like the observation only depends on sp, so we should just implement observation(::TMaze, sp)
and no other methods of observation
or gen
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Would this observation
return a BoolDistribution
?
test/crying.jl
Outdated
# test generate_o | ||
o = generate_o(problem, true, MersenneTwister(1)) | ||
# test gen(::o,...) | ||
o = gen(DDNOut(:o), problem, true, MersenneTwister(1)) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
DDNNode
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is this because it is an initial observation? I thought solvers etc. should call DDNOut
I'm going to be unavailable for most of the rest of today. The outstanding items seem to be If this is time-sensitive, could one of @zsunberg or @MaximeBouton see this through? Otherwise, I can get to it tomorrow. |
Is there anything left to fix here? |
I'm planning to check through it this afternoon and see. Do we want to add |
So far it is using |
Oh, ok, yeah as long as we don't have |
I found a couple of A second point is that some of these implementation could really be modernized (especially TMaze), I am not sure if we should do it now or in a separate PR. |
Haha, wait @MaximeBouton DDNNode itself is not always wrong! It is only that specific one for the initial observation.
I vote another PR. Usually better to just get everything working as soon as possible, then make it nicer later |
@MaximeBouton the only bad DDNNode I see is the one in Tiger. The one in Mountain Car is right. |
The tiger POMDP had this:
This should typically be replaced by |
Thanks for helping see this to completion! |
@zsunberg did I get the compat right? |
I think it should just be "0.8.1". https://julialang.github.io/Pkg.jl/v1/compatibility/index.html#Caret-specifiers-1 - no specifier is the same as a caret specifier, and it says "^0.2.3" is compatible with the range [0.2.3, 0.3.0), and the range we want is [0.8.1, 0.9.0). I made the change. I think it looks good now though! Tag a release when ready or I can if you want me to. |
No description provided.