Comments (5)
Gurobi needs nonnegativity to play nicely with the SOC and rotated SOC constraints. It was put in, but I suspect it got lost in the git mess I got myself into yesterday.
An interesting thing to look into later on is if this is strictly necessary; the Python example for this same problem doesn't require explicit nonnegativity.
from jump.jl.
Hi guys, I'm kind of new to this, but I think this is an issue.
I can run the example (and my own SOCP) in Python without the nonnegativity constraints with no PSD error, but I can't run it (or my model) in either JuMP or JuliaOpt code (it gives the same PSD error unless I impose nonnegativity). I'm using Gurobi in both cases.
from jump.jl.
We call Gurobi through the C interface - the Python interface probably does some magic we don't before it too calls the C interface.
from jump.jl.
The gurobi python documentation states that nonnegativity is required for SOC constraints: http://www.gurobi.com/documentation/6.0/reference-manual/py_model_addqconstr#pythonmethod:Model.addQConstr. JuMP's behavior is correct here.
from jump.jl.
Thanks. You're right - gurobipy must be making the variables nonnegative automatically.
from jump.jl.
Related Issues (20)
- Model printing is rather verbose HOT 5
- Diagnostics request: using variable in variable container bounds HOT 4
- && and || do not short-circuit in macros HOT 3
- Add support for MOI.ScalarQuadraticCoefficientChange
- Tools to test JuMP models
- NumFOCUS: GSoC 2024 Update HOT 1
- Error vcat(::NonlinearExpr, ::VariableRef, ::Float64) HOT 5
- Increase performance of SOC constraints HOT 4
- Iterating SparseAxisArray does not preserve order HOT 4
- How to improve the speed to build a complex model? HOT 2
- Coefficients of complex variables created with a GenericModel are always Float64
- LinearAlgebra.hermitian is incorrect
- *(::Real, ::Hermitian) is not hermitian HOT 5
- Cannot `convert` an object of type Float64 to an object of type JuMP.NonlinearExpr HOT 3
- Documentation Request: List whether a solver supports Indicator Constraints HOT 4
- Bullet point alignment in bibliography HOT 9
- Multiplication of matrix expression and variables leads to stack overflow and matmul error HOT 4
- Multiple Ranges for variables HOT 3
- Y' when Y is of type ::Matrix{NonlinearExpr} HOT 1
- Poor performance in complementarity models HOT 23
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from jump.jl.