tkoolen / Parametron.jl

Efficiently solving instances of a parameterized family of (possibly mixed-integer) linear/quadratic optimization problems in Julia
Other
73 stars 7 forks source link

Cannot add latest version of Parametron #109

Open nxtruong opened 4 years ago

nxtruong commented 4 years ago

I posted my question here, but figured out this could be an issue with Parametron.

I am using Julia version 1.3.1 (2019-12-30) on Mac OS, official binary downloaded from Julia website.

I added Parametron using Julia's Pkg interface. It reported that the version of Parametron installed was 0.8.0. However, on the github repo and in the Julia's registries, the current version is 0.9.1. No matter how I tried (removed the package then reinstalled it), the version is always 0.8.0. I have MathOptInterface v0.9.9.

What could be wrong? And how do I resolve the problem and get the latest version of Parametron?

tkoolen commented 4 years ago

Could you post your Project.toml?

nxtruong commented 4 years ago

My Project.tom is pasted below. I think I know what the problem was. From the Project.toml of Parametron (https://github.com/tkoolen/Parametron.jl/blob/master/Project.toml), it looks like Parametron's latest version requires MOI version 0.8, whereas Parametron version 0.8.0 specifies both MOI 0.8 and 0.9 (MathOptInterface 0.8 0.9). The latest MOI version is 0.9 and other packages (JuMP and solvers) require MOI 0.9; that's why only version 0.8 of Parametron can be installed. Is there any reason MOI 0.9 is not supported by Paramatron 0.9? Or is it just an oversight? I think if Parametron supports MOI 0.9 and you update that in your project and on the Registries, it should fix the problem.

[deps]
Atom = "c52e3926-4ff0-5f6e-af25-54175e0327b1"
BSON = "fbb218c0-5317-5bc6-957e-2ee96dd4b1f0"
BenchmarkTools = "6e4b80f9-dd63-53aa-95a3-0cdb28fa8baf"
Calculus = "49dc2e85-a5d0-5ad3-a950-438e2897f1b9"
Conda = "8f4d0f93-b110-5947-807f-2305c1781a2d"
DifferentialEquations = "0c46a032-eb83-5123-abaf-570d42b7fbaa"
Distances = "b4f34e82-e78d-54a5-968a-f98e89d6e8f7"
Distributions = "31c24e10-a181-5473-b8eb-7969acd0382f"
ForwardDiff = "f6369f11-7733-5829-9624-2563aa707210"
GR = "28b8d3ca-fb5f-59d9-8090-bfdbd6d07a71"
GaussianProcesses = "891a1506-143c-57d2-908e-e1f8e92e6de9"
Gurobi = "2e9cd046-0924-5485-92f1-d5272153d98b"
JuMP = "4076af6c-e467-56ae-b986-b466b2749572"
Juno = "e5e0dc1b-0480-54bc-9374-aad01c23163d"
LinearAlgebra = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e"
MAT = "23992714-dd62-5051-b70f-ba57cb901cac"
NLsolve = "2774e3e8-f4cf-5e23-947b-6d7e65073b56"
OSQP = "ab2f91bb-94b4-55e3-9ba0-7f65df51de79"
Optim = "429524aa-4258-5aef-a3af-852621145aeb"
PDMats = "90014a1f-27ba-587c-ab20-58faa44d9150"
Parametron = "41fac6d6-0ffa-5bcc-b863-17dd4947be41"
Plots = "91a5bcdd-55d7-5caf-9e0b-520d859cae80"
ProximalOperators = "a725b495-10eb-56fe-b38b-717eba820537"
PyCall = "438e738f-606a-5dbb-bf0a-cddfbfd45ab0"
Revise = "295af30f-e4ad-537b-8983-00126c2a3abe"
StaticArrays = "90137ffa-7385-5640-81b9-e52037218182"
Statistics = "10745b16-79ce-11e8-11f9-7d13ad32a3b2"
StatsPlots = "f3b207a7-027a-5e70-b257-86293d7955fd"
Zygote = "e88e6eb3-aa80-5325-afca-941959d7151f"
tkoolen commented 4 years ago

Yeah I'm a little behind in terms of MOI support. I'll try to get to this soonish.

tkoolen commented 4 years ago

It appears the first order of business is getting OSQP.jl to work on Julia 1.3. It doesn't seem to be passing its own tests.

nxtruong commented 4 years ago

@tkoolen Any update on this issue? I can use the latest version of OSQP.jl (0.6.0) just fine on Julia 1.4.1. The issue with Parametron still exists as of today. If I want to use the latest version of Parametron, I am forced to downgrade MOI and all solvers (OSQP, Gurobi, etc.). If I want to use the latest versions of MOI and solvers, I am forced to use Parametron 0.8.0.

nxtruong commented 4 years ago

By the way, were there significant changes in the API of MOI between v0.8 and v0.9 that Parametron hasn't yet supported MOI 0.9 (while an older version of Parametron supports MOI 0.9)?