box_qp_f {dpglasso} | R Documentation |
box_qp_f
solves the minimization problem
\mathrm{minimize}_{u}\;\; (b +u)' Q (b + u );\;\; \mathrm{subject\;\; to}\;\; \|u\|_∞ ≤q ρ
where Q_{m \times m} is symmetric PSD, u,b \in \Re^m. The algorithm used is one-at-a-time cyclical coordinate descent.
box_qp_f(Q, u, b, rho, Maxiter, tol = 10^-4)
Q |
(Required) is a symmetric PSD matrix of dimension m \times m. This is a problem parameter. |
u |
(Required) is the optimization variable, a vector of length m.
The value of If a suitable starting point is unavailable, start with |
b |
(Required) is a vector of length m, this is a problem parameter. |
rho |
(Required) is the degree of shrinkage. This is a non-negative scalar. |
Maxiter |
(Required) is an integer denoting the maximum number of iterations (full sweeps across all the m variables), to be performed by
|
tol |
is the convergence tolerance. It is a real positive number (defaults to 10^-4).
|
This box QP function is a R wrapper to a Fortran code. This is primarily meant
to be called from the R function dpglasso
.
One needs to be very careful (as in supplying the inputs of the progra properly) while using this as a stand alone program.
u |
the optimal value of the argument |
grad_vec |
the gradient of the objective function at |
Rahul Mazumder and Trevor Hastie
This algorithm is used as a part of the algorithm DPGLASSO described in our paper: “The Graphical Lasso: New Insights and Alternatives by Rahul Mazumder and Trevor Hastie" available at http://arxiv.org/abs/1111.5479
set.seed(2008) # create problem data m<-20; aa<-array(rnorm(m^2),dim=c(m,m)); Q<-aa Q<- Q + diag(rep(0.1,m)); b<-rnorm(m); soln<-box_qp_f(Q, u=rep(0,m), b, rho=.2 , Maxiter=1000, tol = 10^-4)