-
Notifications
You must be signed in to change notification settings - Fork 98
Closed
Labels
Description
Hi folks, thanks for the great package! I have put this here, but let me know if it is better put in Convex.jl or elsewhere. Any help would be greatly appreciated!
I just started getting a failures with MOI v1.37.1 that I think are possibly related to the PR #2665? Related package info:
Convex v0.16.4
SCS v2.0.2
Optim v1.11.0
MathOptInterface v1.37.1
The code snippet of concern:
using Convex, SCS, MathOptInterface
x = Variable(size(P1,1))
constraints = [G1 * x <= h1]
problem = minimize(0.5 * quadform(x, P1; assume_psd = true) + q1' * x, constraints)
solve!(problem, SCS.Optimizer, silent=true)
where P,G,q,h are the following matrices
┌ Info: size(P1) = (5, 5)
└ eltype(P1) = Float64
┌ Info: size(q1) = (5, 1)
└ eltype(q1) = Float64
┌ Info: size(G1) = (5, 5)
└ eltype(G1) = Float64
┌ Info: size(h1) = (5, 1)
└ eltype(h1) = Float64
with MathOptInterface v1.37.0 this runs fine!
But, with MathOptInterface v1.37.1 this produces:
TypeError: in typeassert, expected Vector{Type}, got a value of type Vector{UnionAll}
Stacktrace:
[1] get(model::MathOptInterface.Utilities.CachingOptimizer{SCS.Optimizer, MathOptInterface.Utilities.UniversalFallback{MathOptInterface.Utilities.Model{Float64}}}, attr::MathOptInterface.Bridges.ListOfNonstandardBridges{Float64})
@ MathOptInterface.Utilities ~/.julia/packages/MathOptInterface/yI6C0/src/Utilities/cachingoptimizer.jl:1047
[2] full_bridge_optimizer(model::MathOptInterface.Utilities.CachingOptimizer{SCS.Optimizer, MathOptInterface.Utilities.UniversalFallback{MathOptInterface.Utilities.Model{Float64}}}, ::Type{Float64})
@ MathOptInterface.Bridges ~/.julia/packages/MathOptInterface/yI6C0/src/Bridges/Bridges.jl:58
[3] instantiate(optimizer_constructor::Any; with_bridge_type::Type{Float64}, with_cache_type::Nothing)
@ MathOptInterface ~/.julia/packages/MathOptInterface/yI6C0/src/instantiate.jl:190
[4] (Convex.Context{Float64})(optimizer_factory::Type; add_cache::Bool)
@ Convex ~/.julia/packages/Convex/IPPoR/src/Context.jl:35
[5] Context
@ ~/.julia/packages/Convex/IPPoR/src/Context.jl:28 [inlined]
[6] Convex.Context(p::Convex.Problem{Float64}, optimizer_factory::Type)
@ Convex ~/.julia/packages/Convex/IPPoR/src/problems.jl:164
[7] macro expansion
@ ./timing.jl:581 [inlined]
[8] solve!(p::Convex.Problem{Float64}, optimizer_factory::Type; silent::Bool, warmstart::Bool, silent_solver::Nothing)
...