quadprog
A dense quadratic program solver in pure rust, based on the Goldfarb-Idnani algorithm. This implementation draws primarily from quadprog.
Usage
Add this to your Cargo.toml:
[]
= "*"
Then solve a strictly convex QP of the form:
minimize 1/2 x' Q x + c' x
subject to A1 x = b1
A2 x <= b2
For example, to solve
minimize 1/2 x^2 + 1/2 y^2 + x
subject to x + 2 y >= 1
write
use solve_qp;
let mut q = ;
let c = ;
let a = ;
let b = ;
let sol = solve_qp.unwrap;
assert_eq!;
References
D. Goldfarb and A. Idnani (1983). A numerically stable dual method for solving strictly convex quadratic programs. Mathematical Programming, 27, 1-33.