jump-dev / jump-dev/ParametricOptInterface.jl

POI failing with Clarabel

Open
#201 17 comments 0 reactions 0 assignees View on GitHub
Dominant language
Julia
Stars
49
Forks
8
PR merge metrics
No merged PRs in 30d

Description

Observed in this environment:

Julia=1.10.1
POI=0.14.2
MOI=1.49.0
SCS=2.6.1

```julia
import MathOptInterface as MOI
import ParametricOptInterface as POI
using SCS

inner = MOI.instantiate(SCS.Optimizer; with_bridge_type = Float64, with_cache_type = Float64)
model = POI.Optimizer(inner)
MOI.set(model, MOI.Silent(), true)

x = MOI.add_variable(model)
p, _ = MOI.add_constrained_variable(model, MOI.Parameter(1.0))

f = MOI.ScalarAffineFunction(
[MOI.ScalarAffineTerm(1.0, x), MOI.ScalarAffineTerm(-1.0, p)],
0.0,
)
MOI.add_constraint(model, f, MOI.EqualTo(0.0))

MOI.set(model, MOI.ObjectiveSense(), MOI.MIN_SENSE)
MOI.set(
model,
MOI.ObjectiveFunction{MOI.ScalarAffineFunction{Float64}}(),
MOI.ScalarAffineFunction([MOI.ScalarAffineTerm(1.0, x)], 0.0),
)

println("first optimize")
MOI.optimize!(model)
println("x=", MOI.get(model, MOI.VariablePrimal(), x), " p=", MOI.get(model, POI.ParameterValue(), p))

MOI.set(model, POI.ParameterValue(), p, 2.0)
println("second optimize")
MOI.optimize!(model) # Fails here with ModifyConstraintNotAllowed + modify_constants(::SCS._SetConstants, ...)

```

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.