Open
Description
I tried using static vectors for parameters, which works nicely. But not when combined with autodiff:
julia> using Optimization, OptimizationOptimJL, StaticArrays, ForwardDiff
# don't specify inplace/outofplace:
julia> of = OptimizationFunction((x, p) -> sum(x), Optimization.AutoForwardDiff())
julia> prob = OptimizationProblem(of, SVector(0., 0.), nothing)
julia> solve(prob, Optim.GradientDescent())
ERROR: setindex!(::SVector{2, Float64}, value, ::Int) is not defined.
# specify out of place:
julia> of = OptimizationFunction{false}((x, p) -> sum(x), Optimization.AutoForwardDiff())
julia> prob = OptimizationProblem(of, SVector(0., 0.), nothing)
julia> solve(prob, Optim.GradientDescent())
ERROR: Use OptimizationFunction to pass the derivatives or automatically generate them with one of the autodiff backends
Is this expected?
Metadata
Metadata
Assignees
Labels
No labels