  Manifold optimization appears in a wide variety of computational problems in
the applied sciences. In recent statistical methodologies such as sufficient
dimension reduction and regression envelopes, estimation relies on the
optimization of likelihood functions over spaces of matrices such as the
Stiefel or Grassmann manifolds. Recently, Huang, Absil, Gallivan, and Hand
(2016) have introduced the library ROPTLIB, which provides a framework and
state of the art algorithms to optimize real-valued objective functions over
commonly used matrix-valued Riemannian manifolds. This article presents
ManifoldOptim, an R package that wraps the C++ library ROPTLIB. ManifoldOptim
enables users to access functionality in ROPTLIB through R so that optimization
problems can easily be constructed, solved, and integrated into larger R codes.
Computationally intensive problems can be programmed with Rcpp and
RcppArmadillo, and otherwise accessed through R. We illustrate the practical
use of ManifoldOptim through several motivating examples involving dimension
reduction and envelope methods in regression.
