8000 GitHub - darnstrom/ASCertain.jl: Julia package for parametrically certifying the computational complexity of active-set QP methods
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

darnstrom/ASCertain.jl

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

87 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ASCertain

CI Code coverage

An implementation of the parametric complexity certification method presented in the article A unifying complexity certification framework for active-set methods for convex quadratic programming. The package is specifically adapted for certifying the complexity of the dual active-set QP solver daqp.

Basic example

The following code applies the certification method on the mpQP labeled "contrived mpQP" in the paper A unifying complexity certification framework for active-set methods for convex quadratic programming.

using ASCertain 
# Setup problem data
H = [0.97 0.19 0.15;0.19 0.98 0.05; 0.15 0.05 0.99];
f = zeros(3,1);
f_theta = [11.3 -44.3; -3.66 -11.9; -32.6 7.81];
H_theta = zeros(0,0);
A = [2.5*0.15 2.5*0.88 2.5*0.17;0.49 0.57 0.22; 0.77 0.46 0.41];
b = zeros(3,1);
b[1:3] = [4.1;3.7;4.3];
W = [0.19 -0.89; 0.64 -1.54; -0.59 -1.01];

# Create mpQP
mpQP=ASCertain.MPQP(H,f,f_theta,H_theta,A,b,W)

# Create region of interest
P_theta = (A=zeros(2,0), b=zeros(0),lb=zeros(2),ub=1.5*ones(2))

# Run certification with default settings and an empty working set 
opts = CertSettings();
opts.storage_level = 2; # Store all regions
AS = Int64[]
@time (part,iter_max) = certify(mpQP,P_theta,AS;opts);

About

Julia package for parametrically certifying the computational complexity of active-set QP methods

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

0