Linear Programming class

How does one estimate parameter errors / correlations produced by the QuadP classes? In particular, my application uses the same general calls as the portfolio.c (e.g. uses TGondzioSolver) Thanks

Hi Ed,

You ask how to get the parameter errors and their covariance through the
Quadratic Programming classes. The short answer is : you can not .

Now the long answer:

These classes can find the maximum of a quadratic objective function
with linear constraints between the parameters . When the optimal
parameters are close to a boundary, determination of parameter errors
becomes difficult, even for a case of simple box constraints as in Minuit,
see

wwwasdoc.web.cern.ch/wwwasdoc/mi … ght-errors

I assume that your parameter constraints contain inequalities, otherwise
it is better/simpler to use TMinuit with Lagrangian multipliers.

In the quadratic programming package, I would proceed as follows.
The class will supply you a feasible solution x for the objective
function :

c^T x + ( 1/2 ) x^T Q x

(using the terminology of root.cern.ch/root/html/examples/portfolio.C.html)

The parameter covariance is Q^-1 and the parameter variance is the
diagonal of Q^-1 for the unconstrained problem.
The equality constrain A x = b should now be added to the matrix Q
as pointed out in appendix A2 of the attached document . Inverting
this new matrix will give you the parameter variance under the
equality constrain .
Now check how far your solution is from the planes defined by

clo <= C x <= cup

and adjust your errors accordingly .

Eddy
compareLinAlg.pdf (124 KB)