Line search algorithm for optimization on Stiefel manifold based on Wen and Yin (2013). Used in 1D-algorithm for estimating the envelope subspace.
OptManiMulitBallGBB(X, opts=NULL, fun, ...)
n by k matrix such that \(X'X = I\)
Option structure with fields:
"record = 0"
-- no print out.
"maxiter"
-- max number of iterations.
"xtol"
-- stop control for \(||X_k - X_{k-1}||\).
"gtol"
-- stop control for the projected gradient.
"ftol"
-- stop control for \(\frac{|F_k - F_{k-1}|}{(1+|F_{k-1}|)}\) usually with max{xtol, gtol} > ftol
.
Objective function and its gradient:
fun(X, data1, data2)
data1, data2
are additional data.
Additional input for fun
, Calling syntax:
OptManiMulitBallGBB(X0, fun, opts, data1, data2)
.
Solution.
Gradient of X.
Output information, include estimation error, function value, iteration times etc.
Wen, Z., & Yin, W. (2013). A feasible method for optimization with orthogonality constraints. Mathematical Programming, 142(1-2), 397-434.