March 2008qpsolvelinear quadratic programming solverCalling Sequence[x [,iact [,iter [,f]]]]=qpsolve(Q,p,C,b,ci,cs,me)ParametersQreal positive definite symmetric matrix (dimension n
x n).preal (column) vector (dimension n)Creal matrix (dimension (me + md) x n).
This matrix may be dense or sparse.bRHS column vector (dimension m=(me +
md))cicolumn vector of lower-bounds (dimension
n). If there are no lower bound constraints, put
ci = []. If some components of
x are bounded from below, set the other
(unconstrained) values of ci to a very large
negative number (e.g. ci(j) =
-number_properties('huge').cscolumn vector of upper-bounds. (Same remarks as above).menumber of equality constraints (i.e. C(1:me,:)*x =
b(1:me))xoptimal solution found.iactvector, indicator of active constraints. The first non zero
entries give the index of the active constraintsiter. 2x1 vector, first component gives the number of "main"
iterations, the second one says how many constraints were deleted
after they became active.DescriptionThis function requires Q to be symmetric positive
definite. If that hypothesis is not satisfied, one may use the quapro
function, which is provided in the Scilab quapro toolbox.The qpsolve solver is implemented as a Scilab script, which calls
the compiled qp_solve primitive. It is provided as a facility, in order to
be a direct replacement for the former quapro solver : indeed, the qpsolve
solver has been designed so that it provides the same interface, that is,
the same input/output arguments. But the x0 and imp input arguments are
available in quapro, but not in qpsolve.ExamplesSee Alsooptimqp_solveqldThe contributed toolbox "quapro" may also be of interest, in
particular for singular Q.Memory requirementsLet r beThen the memory required by qpsolve during the computations
isAuthorsS. SteerINRIA (Scilab interface)Berwin A. TurlachSchool of Mathematics and Statistics (M019), The University of
Western Australia, Crawley, AUSTRALIA (solver code)ReferencesGoldfarb, D. and Idnani, A. (1982). "Dual and Primal-Dual
Methods for Solving Strictly Convex Quadratic Programs", in J.P.
Hennart (ed.), Numerical Analysis, Proceedings, Cocoyoc, Mexico 1981,
Vol. 909 of Lecture Notes in Mathematics, Springer-Verlag, Berlin, pp.
226-239.Goldfarb, D. and Idnani, A. (1983). "A numerically stable dual
method for solving strictly convex quadratic programs", Mathematical
Programming 27: 1-33.QuadProg (Quadratic Programming Routines), Berwin A
Turlach,http://www.maths.uwa.edu.au/~berwin/software/quadprog.htmlUsed Functionsqpgen1.f (also named QP.solve.f) developped by Berwin A. Turlach
according to the Goldfarb/Idnani algorithm