A Julia interface to the SDPA-GMP, SDPA-DD, and SDPA-QD high precision semidefinite programming solvers.
Author ericphanson
12 Stars
Updated Last
1 Year Ago
Started In
July 2019


CI Codecov

An interface to using SDPA-GMP, SDPA-DD, and SDPA-QD in Julia ( This package is registered in the General registry; to install, type ] in the Julia command prompt, then enter

pkg> add SDPAFamily

Call SDPAFamily.Optimizer() to use this wrapper via MathOptInterface, which is an intermediate layer between low-level solvers (such as SDPA-GMP, SDPA-QD, and SDPA-DD) and high level modelling languages, such as JuMP.jl and Convex.jl.

Convex.jl 0.13+ supports MathOptInterface and can be used to solve problems with the solvers from this package.

JuMP currently only supports Float64 numeric types, which means that problems can only be specified to 64-bits of precision, and results can only be recovered at that level of precision, when using JuMP. This is tracked in the issue JuMP#2025.

Quick Example

Here is a simple optimization problem formulated with Convex.jl:

using SDPAFamily, LinearAlgebra
using Convex
y = Semidefinite(3)
p = maximize(eigmin(y), tr(y) <= 5; numeric_type = BigFloat)
solve!(p, () -> SDPAFamily.Optimizer(presolve=true))
@show p.optval

See the documentation linked above for troubleshooting help and usage information.

Used By Packages

No packages found.