You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+51-1Lines changed: 51 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -5,8 +5,11 @@
5
5
6
6
[PolyJuMP.jl](https://github.com/jump-dev/PolyJuMP.jl) is a [JuMP](https://github.com/jump-dev/JuMP.jl)
7
7
extension for formulating and solving polynomial optimization problems.
8
+
This extension includes the following:
8
9
9
-
These problems can then be solved using [SumOfSquares.jl](https://github.com/jump-dev/SumOfSquares.jl).
10
+
* Polynomial functions on JuMP decisions variables. These can be solved with the `PolyJuMP.QCQP.Optimizer` or `PolyJuMP.KKT.Optimizer`.
11
+
* Constraints that a polynomial is nonnegative where the coefficients of the polynomials depend on JuMP decision variables.
12
+
These nonnegativity constraints can be reformulated using sufficient conditions using `PolyJuMP.RelativeEntropy` submodule or [SumOfSquares.jl](https://github.com/jump-dev/SumOfSquares.jl).
10
13
11
14
## License
12
15
@@ -20,6 +23,53 @@ import Pkg
20
23
Pkg.add("PolyJuMP")
21
24
```
22
25
26
+
## Use with JuMP
27
+
28
+
To use QCQP solver with JuMP, use a nonconvex QCQP solver, e.g., `Gurobi.Optimizer` and `PolyJuMP.QCQP.Optimizer`:
29
+
30
+
```julia
31
+
using JuMP, PolyJuMP, Gurobi
32
+
model =Model(() -> PolyJuMP.QCQP.Optimizer(Gurobi.Optimizer))
33
+
```
34
+
35
+
To use KKT solver with JuMP, use solver of algebraic systems of equations implementing the [SemialgebraicSets interface](https://github.com/JuliaAlgebra/SemialgebraicSets.jl), e.g., `HomotopyContinuation.SemialgebraicSetsHCSolver` and `PolyJuMP.KKT.Optimizer`:
0 commit comments