Oscar Dowson
Oscar Dowson
Second example is: ```Julia julia> using JuMP julia> import JuMP._MA as MA julia> y = ones(2, 3); julia> model = Model(); julia> @variable(model, x[1:2, 1:1, 1:3]); julia> MA.broadcast!!(MA.sub_mul, x, y);...
This is what should happen: ```Julia julia> A = rand(2, 1, 3) 2×1×3 Array{Float64, 3}: [:, :, 1] = 0.1524404350076013 0.8671340260214189 [:, :, 2] = 0.9476682352354726 0.6380799807793498 [:, :, 3]...
> Because i've summed along the wrong dimension, and "expected" it would get caught in comparison. JuMP can't "see" that you've summed. We just see a matrix, and the sizes...
It didn't get caught because your typo still resulted in valid code
> Ouch. Well, now you have your answer No, I think that is expected behavior (to match Base Julia). You probably want to use `dropdims`: ```Julia julia> A = rand(2,...
Moving to MutableArithmetics: ```Julia julia> using Revise julia> import MutableArithmetics as MA julia> A = rand(2, 1, 3) 2×1×3 Array{Float64, 3}: [:, :, 1] = 0.19212165666948622 0.22056184518998745 [:, :, 2]...
I'll clean this up
I decided just to merge this. We can make improvements in subsequent PRs
You are entirely correct that the forward pass does not need to "optimize" anything and that we can select the trial points somewhat arbitrarily. I don't have any suggestions for...
A few other comments on this: * I don't have plans to implement anything similar to this * A key feature of SDDP is precisely that it has poor approximations...