SeDuMi.jl is wrapper for the SeDuMi solver.
The wrapper has two components:
- an exported
sedumifunction that is a thin wrapper on top of the
- an interface to MathOptInterface
This wrapper is maintained by the JuMP community and is not an official wrapper of SeDuMi.
SeDuMi.jl is licensed under the MIT License.
The underlying solver, sqlp/sedumi is licensed under the GPL v2 license.
In addition, SeDuMi requires an installation of MATLAB, which is a closed-source commercial product for which you must obtain a license.
Use with JuMP
To use SeDuMi with JuMP, do:
using JuMP, SeDuMi model = Model(SeDuMi.Optimizer) set_attribute(model, "fid", 0)
First, make sure that you satisfy the requirements of the MATLAB.jl Julia package, and that the SeDuMi software is installed in your MATLAB™ installation.
import Pkg Pkg.add("SeDuMi")
If you get the error:
Undefined function or variable 'sedumi'. Error using save Variable 'jx_sedumi_arg_out_1' not found. ERROR: LoadError: MATLAB.MEngineError("failed to get variable jx_sedumi_arg_out_1 from MATLAB session")
The error means that we couldn't find the
sedumi function with one output argument using the MATLAB C API.
This most likely means that you did not add SeDuMi to the MATLAB's path, that is, the
toolbox/local/pathdef.m does not work, the following should work, where
/path/to/sedumi/ is the directory where the
sedumi folder is located:
julia> import MATLAB julia> cd("/path/to/sedumi/") do MATLAB.mat"install_sedumi" end julia> MATLAB.mat"savepath"