Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
  • Jan 18 22:41

    mlubin on gh-pages

    build based on dd68f81 (compare)

  • Jan 18 22:20

    mlubin on constrained_doc

    (compare)

  • Jan 18 22:20

    mlubin on master

    Change docs for variables const… (compare)

  • Jan 18 22:20
    mlubin closed #2139
  • Jan 18 22:20
    mlubin closed #2133
  • Jan 18 22:20
    mlubin milestoned #2138
  • Jan 18 19:16
    codecov-io commented #1004
  • Jan 18 18:42
    Travis JuliaOpt/MathOptInterface.jl@061f093 (bl/supports_constrained_variable) passed (4289)
  • Jan 18 18:29
    codecov-io commented #1003
  • Jan 18 18:29
    codecov-io commented #1003
  • Jan 18 18:29
    codecov-io commented #1003
  • Jan 18 18:28
    codecov-io commented #1003
  • Jan 18 18:28
    codecov-io commented #1003
  • Jan 18 18:06
    Travis JuliaOpt/MathOptInterface.jl@0b94c55 (bl/empty_vectorize) passed (4287)
  • Jan 18 17:42
    blegat milestoned #1004
  • Jan 18 17:42
    blegat opened #1004
  • Jan 18 17:41

    blegat on supports_constrained_variable

    Add supports_constrained_variab… (compare)

  • Jan 18 17:41
    blegat milestoned #1003
  • Jan 18 17:41
    blegat opened #1003
  • Jan 18 17:40

    blegat on empty_vectorize

    Fix vectorize for empty vector (compare)

Carleton Coffrin
@ccoffrin
@mlubin, my attempt to distill key points, JuliaOpt/JuMP.jl#2138
Carleton Coffrin
@ccoffrin
@odow, have solver tests for ResultCount made it into MOI? Should this be added to MINLPTests.jl? I just noticed that Juniper managed to avoid implementing this.
Carleton Coffrin
@ccoffrin
Also in the case of infeasibility Ipopt returns, ResultCount()=1, "termination_status" => LOCALLY_INFEASIBLE, "dual_status" => UNKNOWN_RESULT_STATUS, "primal_status" => INFEASIBLE_POINT
Just wanted to check that is the correct semantics.
Benoît Legat
@blegat

have solver tests for ResultCount made it into MOI?

Yes, it should be implemented by most solvers now

Does the dual and primal return something else that NaN for Ipopt ?
Ole Kröger
@Wikunia
ResultCount will be in the next release of Juniper.
Oscar Dowson
@odow

Juniper should implement the MOI tests: https://github.com/lanl-ansi/Juniper.jl/blob/master/test/MOI_wrapper.jl

It currently skips a lot of unit tests, and doesn't run the linear, integer, quadratic, or model tests. See Gurobi.jl for details: https://github.com/JuliaOpt/Gurobi.jl/blob/9ae498c08c4bdcfc9895638758576bc6148d3f89/test/MOI_wrapper.jl#L53-L173

It looks like the reason is because Juniper doesn't support looking up variable/constraints by name? If so, fix that and you will get access to a much broader set of tests. No need to add to MINLPTests
It's likely that Juniper is also failing to implement (or implementing incorrectly) other attributes because it isn't running these tests.
Ole Kröger
@Wikunia
Thanks will have a look into these!
Carleton Coffrin
@ccoffrin
@blegat, in that case Ipopt does populate in primal variables with values from the stationary point that it converged to.
Miles Lubin
@mlubin
@ccoffrin That's the correct semantics. Ipopt returns an infeasible point, which is exactly what the primal status reports.
Benoît Legat
@blegat
@ccoffrin In that case, it's correct what Ipopt returns
Carleton Coffrin
@ccoffrin
Great. Thanks!
Jared Miller
@Jarmill
Hey all. New to Julia and JuMP. I'm trying to export a semidefinite program as formulated by JuMP (and solved by mosek) to file, so I can compare with other solvers. Specifically looking to dump to SDPA. I found this https://github.com/JuliaOpt/MathOptInterface.jl/blob/master/src/FileFormats/FileFormats.jl, but am getting package errors ("SDPA not defined") when I try and use it.
Code is:
' @objective(model, Max, lower)
println("About to Export")
sdpa_model = MathOptInterface.SDPA.Model()
MOI.copy_to(sdpa_model, JuMP.backend(model))
MOI.write_to_file(sdpa_model, "./LR_export.sdpa")' 
Thanks in advance
Does there exist functionality in Julia/JuMP to do this? Am I calling it wrong?
Benoît Legat
@blegat
It's MathOptInterface.FileFormats.SDPA
Jared Miller
@Jarmill
so 'sdpa_model = MathOptInterface.FileFormats.SDPA.Model()' ?
Benoît Legat
@blegat
Yes
Jared Miller
@Jarmill
It still says 'ERROR: LoadError: UndefVarError: FileFormats not defined'
am i missing an import or include call?
Oscar Dowson
@odow
It's not a tagged version yet
You'll probably need jump master
Jared Miller
@Jarmill
Thanks for your help and patience. I'm making edits to a file in a module to perform the export. Is there a way to reload the module without restarting julia? when I do Pkg.update() or Pkg.import() it says 'ERROR: The following package names could not be resolved:...'
Now it is 'ERROR: LoadError: UndefVarError: write_to_file not defined'
Oscar Dowson
@odow
If you have the latest MOI release (v0.9.9), but not JuMP#master, you can also go:
sdpa_model = MOI.FileFormats.Model(filename = "LR_export.sdpa")
bridged_model = MOI.Bridges.full_bridge_optimizer(sdpa_model, Float64)
MOI.copy_to(bridged_model, JuMP.backend(model))
MOI.write_to_file(sdpa_model, "./LR_export.sdpa")
Jared Miller
@Jarmill
'MathOptInterface.UnsupportedConstraint{MathOptInterface.VectorOfVariables,MathOptInterface.PositiveSemidefiniteConeTriangle}: MathOptInterface.VectorOfVariables-in-MathOptInterface.PositiveSemidefiniteConeTriangle constraint is not supported by the model.'
might be because this is a sum-of-squares program to be processed into an SDP?
Benoît Legat
@blegat
This is unexpected, could you post a MWE as an issue in https://github.com/JuliaOpt/MathOptInterface.jl ?
Oscar Dowson
@odow
Is this with the bridged_model formulation? Or the original.
Ole Kröger
@Wikunia
Can someone confirm that JuMP and MOI handle variable indices in a deterministic way? I currently have a set constraint and the indices in the VectorOfVariables are in a different order than in the @constraint part as well as sometimes they are not only in a different order they seem to be completely different. They seem to be consistent over several runs in the same julia instance but if I restart julia everything is changed. I'm sure it has to be something in my ConstraintSolver as I suppose you implemented it in a deterministic way but before I check every single line of my code it would be nice to hear that it should be indeed deterministic
Ole Kröger
@Wikunia
i.e if I print the indices before I use them in @constraint with x.index.value I get these variables indices: 1,10,19,2,11,20,3,12,21 but in the add_constraint call they are: 1,2,3,4,5,6,7,8,9 when I print Int[vi.value for vi in vars.variables] with vars::MOI.VectorOfVariables
Ole Kröger
@Wikunia
Okay for the latter case the problem is that @variable doesn't actually add variables directly but it adds variables in the order the constraints need them which I find odd in general but ok. Nevertheless the there is something more than just the order of the constraints as I don't change them. Will have a deeper look tmr
Jared Miller
@Jarmill
Bridged model
when i get home I can send you the relevant code
Kaarthik Sundar
@kaarthiksundar
@odow When I create a callback function and invoke JuMP.callback_value(cb, x) I get the error ERROR: LoadError: UndefVarError: callback_value not defined. What is the issue here?
Oscar Dowson
@odow
You probably have an old version of jump
Kaarthik Sundar
@kaarthiksundar
I checked I have 20.1
Hack that worked: x_val = MOI.get(JuMP.backend(JuMP.owner_model(x)), MOI.CallbackVariablePrimal(cb), JuMP.index(x))
Benoît Legat
@blegat
You need to use JuMP master
Miles Lubin
@mlubin
@/all NumFOCUS is again offering to coordinate GSOC for JuMP, and we need to let them know if we're participating. Please start thinking about if you'd like to mentor a project. We'll discuss more during the developer call next week.
Joaquim Dias Garcia
@joaquimg
Awesome!
Joaquim Dias Garcia
@joaquimg
JuMP is reeally close to 1k stars
this kind of graph will be nice for twitter/blog/webpage : https://star-history.t9t.io/#JuliaOpt/JuMP.jl