ManifoldOptim: An R Interface to the ROPTLIB Library for Riemannian Manifold Optimization

An R interface to the 'ROPTLIB' optimization library (see <http://www.math.fsu.edu/~whuang2> for more information). Optimize real-valued functions over manifolds such as Stiefel, Grassmann, and Symmetric Positive Definite matrices.

Author
Kofi P. Adragni [aut, cre, cph], Sean R. Martin [aut, cph], Andrew M. Raim [aut, cph], Wen Huang [aut, cph]
Date of publication
2016-11-21 21:22:36
Maintainer
Kofi P. Adragni <kofi@umbc.edu>
License
GPL (>= 2)
Version
0.1.1

View on CRAN

Man pages

get.manifold.params
Get parameters to initialize manifold
get.solver.params
Get parameters to initialize solver
Manifold-definitions
Manifold definitions
manifold.optim
Manifold optimization
orthonorm
Orthonormalize the columns of a matrix
print.ManifoldOptim
Print summary from 'manifold.optim' results
Problem-definition
Problem definition
Product-manifold-definition
Product manifold definition
Trace
Compute the trace of a square matrix

Files in this package

ManifoldOptim
ManifoldOptim/inst
ManifoldOptim/inst/examples
ManifoldOptim/inst/examples/test_util.R
ManifoldOptim/inst/examples/product_rproblem.R
ManifoldOptim/inst/examples/pfc_groupwise
ManifoldOptim/inst/examples/pfc_groupwise/MainFunctions_P.R
ManifoldOptim/inst/examples/pfc_groupwise/pfc_delta.png
ManifoldOptim/inst/examples/pfc_groupwise/opt_gamma_delta.png
ManifoldOptim/inst/examples/pfc_groupwise/pfc_unstruc_delta_gamma.R
ManifoldOptim/inst/examples/pfc_groupwise/pfc_delta_gamma.R
ManifoldOptim/inst/examples/pfc_groupwise/opt_delta.png
ManifoldOptim/inst/examples/pfc_groupwise/true_delta.png
ManifoldOptim/inst/examples/pfc_groupwise/pfc_delta.R
ManifoldOptim/inst/examples/grassmann_rproblem.R
ManifoldOptim/inst/examples/sphere_rproblem.R
ManifoldOptim/inst/examples/spd_rproblem.R
ManifoldOptim/inst/examples/brockett
ManifoldOptim/inst/examples/brockett/cpp_sourceCpp
ManifoldOptim/inst/examples/brockett/cpp_sourceCpp/driver.R
ManifoldOptim/inst/examples/brockett/cpp_sourceCpp/driver-minimal.Rin
ManifoldOptim/inst/examples/brockett/cpp_pkg
ManifoldOptim/inst/examples/brockett/cpp_pkg/driver.R
ManifoldOptim/inst/examples/brockett/rproblem
ManifoldOptim/inst/examples/brockett/rproblem/driver.R
ManifoldOptim/inst/examples/brockett/rproblem/driver-minimal.Rin
ManifoldOptim/inst/examples/brockett/rproblem/driver-withhessian.R
ManifoldOptim/inst/examples/brockett/cpp_standalone
ManifoldOptim/inst/examples/brockett/cpp_standalone/driver.R
ManifoldOptim/inst/examples/brockett/cpp_standalone/brockett_problem.cpp
ManifoldOptim/inst/examples/envelope
ManifoldOptim/inst/examples/envelope/glm_example.R
ManifoldOptim/inst/examples/envelope/wheatprotein.dat
ManifoldOptim/inst/examples/envelope/ais_example.R
ManifoldOptim/inst/examples/envelope/valgrind_report.txt
ManifoldOptim/inst/examples/envelope/normal_means.R
ManifoldOptim/inst/examples/envelope/wheat_data.R
ManifoldOptim/inst/examples/envelope/ais.txt
ManifoldOptim/inst/examples/envelope/glm_comparison.R
ManifoldOptim/inst/include
ManifoldOptim/inst/include/VectorManifoldOptimProblem.h
ManifoldOptim/inst/include/ManifoldOptimProblem.h
ManifoldOptim/inst/include/ManifoldOptimException.h
ManifoldOptim/inst/include/ManifoldOptim.h
ManifoldOptim/inst/include/MatrixManifoldOptimProblem.h
ManifoldOptim/src
ManifoldOptim/src/Solvers
ManifoldOptim/src/Solvers/LRTRSR1.cpp
ManifoldOptim/src/Solvers/LRTRSR1.h
ManifoldOptim/src/Solvers/RSD.cpp
ManifoldOptim/src/Solvers/RTRSD.cpp
ManifoldOptim/src/Solvers/MRankAdaptive.cpp
ManifoldOptim/src/Solvers/RBFGS.h
ManifoldOptim/src/Solvers/RCG.cpp
ManifoldOptim/src/Solvers/RTRNewton.h
ManifoldOptim/src/Solvers/RWRBFGS.h
ManifoldOptim/src/Solvers/RWRBFGS.cpp
ManifoldOptim/src/Solvers/RNewton.cpp
ManifoldOptim/src/Solvers/RBroydenFamily.h
ManifoldOptim/src/Solvers/RNewton.h
ManifoldOptim/src/Solvers/SolversLS.h
ManifoldOptim/src/Solvers/RTRSD.h
ManifoldOptim/src/Solvers/MRankAdaptive.h
ManifoldOptim/src/Solvers/Solvers.h
ManifoldOptim/src/Solvers/RBroydenFamily.cpp
ManifoldOptim/src/Solvers/RBFGS.cpp
ManifoldOptim/src/Solvers/RTRSR1.cpp
ManifoldOptim/src/Solvers/SolversTR.cpp
ManifoldOptim/src/Solvers/SolversLS.cpp
ManifoldOptim/src/Solvers/Solvers.cpp
ManifoldOptim/src/Solvers/RTRNewton.cpp
ManifoldOptim/src/Solvers/LRBFGS.cpp
ManifoldOptim/src/Solvers/RSD.h
ManifoldOptim/src/Solvers/RCG.h
ManifoldOptim/src/Solvers/LRBFGS.h
ManifoldOptim/src/Solvers/SolversTR.h
ManifoldOptim/src/Solvers/RTRSR1.h
ManifoldOptim/src/Problems
ManifoldOptim/src/Problems/SPDMean
ManifoldOptim/src/Problems/SPDMean/SPDMean.h
ManifoldOptim/src/Problems/SPDMean/SPDMean.cpp
ManifoldOptim/src/Problems/EucQuadratic
ManifoldOptim/src/Problems/EucQuadratic/EucQuadratic.cpp
ManifoldOptim/src/Problems/EucQuadratic/EucQuadratic.h
ManifoldOptim/src/Problems/StieSumBrockett
ManifoldOptim/src/Problems/StieSumBrockett/StieSumBrockett.h
ManifoldOptim/src/Problems/StieSumBrockett/StieSumBrockett.cpp
ManifoldOptim/src/Problems/StieSoftICA
ManifoldOptim/src/Problems/StieSoftICA/StieSoftICA.h
ManifoldOptim/src/Problems/StieSoftICA/StieSoftICA.cpp
ManifoldOptim/src/Problems/EucFrechetMean
ManifoldOptim/src/Problems/EucFrechetMean/EucFrechetMean.cpp
ManifoldOptim/src/Problems/EucFrechetMean/EucFrechetMean.h
ManifoldOptim/src/Problems/ElasticCurvesRO
ManifoldOptim/src/Problems/ElasticCurvesRO/ElasticCurvesRO.h
ManifoldOptim/src/Problems/ElasticCurvesRO/DriverElasticCurvesRO.h
ManifoldOptim/src/Problems/ElasticCurvesRO/DriverElasticCurvesRO.cpp
ManifoldOptim/src/Problems/ElasticCurvesRO/ElasticCurvesRO.cpp
ManifoldOptim/src/Problems/mexProblem.cpp
ManifoldOptim/src/Problems/ObliqueTestSparsePCA
ManifoldOptim/src/Problems/ObliqueTestSparsePCA/ObliqueTestSparsePCA.cpp
ManifoldOptim/src/Problems/ObliqueTestSparsePCA/ObliqueTestSparsePCA.h
ManifoldOptim/src/Problems/Problem.cpp
ManifoldOptim/src/Problems/StieBrockett
ManifoldOptim/src/Problems/StieBrockett/StieBrockett.cpp
ManifoldOptim/src/Problems/StieBrockett/StieBrockett.h
ManifoldOptim/src/Problems/mexProblem.h
ManifoldOptim/src/Problems/WeightedLowrank
ManifoldOptim/src/Problems/WeightedLowrank/WeightedLowRank.h
ManifoldOptim/src/Problems/WeightedLowrank/WeightedLowRank.cpp
ManifoldOptim/src/Problems/PreShapePathStraighten
ManifoldOptim/src/Problems/PreShapePathStraighten/PreShapePathStraighten.cpp
ManifoldOptim/src/Problems/PreShapePathStraighten/PreShapePathStraighten.h
ManifoldOptim/src/Problems/GrassRQ
ManifoldOptim/src/Problems/GrassRQ/GrassRQ.h
ManifoldOptim/src/Problems/GrassRQ/GrassRQ.cpp
ManifoldOptim/src/Problems/SPDTensorDL
ManifoldOptim/src/Problems/SPDTensorDL/SPDTensorDL.h
ManifoldOptim/src/Problems/SPDTensorDL/SPDTensorDL.cpp
ManifoldOptim/src/Problems/Problem.h
ManifoldOptim/src/Makevars
ManifoldOptim/src/Others
ManifoldOptim/src/Others/randgen.h
ManifoldOptim/src/Others/randgen.cpp
ManifoldOptim/src/Others/Timer.cpp
ManifoldOptim/src/Others/MyMatrix.h
ManifoldOptim/src/Others/ForDebug.h
ManifoldOptim/src/Others/Spline.h
ManifoldOptim/src/Others/Timer.h
ManifoldOptim/src/Others/Spline.cpp
ManifoldOptim/src/Others/def.h
ManifoldOptim/src/Others/ForDebug.cpp
ManifoldOptim/src/Others/MyMatrix.cpp
ManifoldOptim/src/MyRcppExports.cpp
ManifoldOptim/src/Manifolds
ManifoldOptim/src/Manifolds/ProductElement.cpp
ManifoldOptim/src/Manifolds/Manifold.h
ManifoldOptim/src/Manifolds/Manifold.cpp
ManifoldOptim/src/Manifolds/Sphere
ManifoldOptim/src/Manifolds/Sphere/SphereVector.cpp
ManifoldOptim/src/Manifolds/Sphere/Sphere.cpp
ManifoldOptim/src/Manifolds/Sphere/Sphere.h
ManifoldOptim/src/Manifolds/Sphere/SphereVariable.cpp
ManifoldOptim/src/Manifolds/Sphere/SphereVariable.h
ManifoldOptim/src/Manifolds/Sphere/SphereVector.h
ManifoldOptim/src/Manifolds/ProductManifold.cpp
ManifoldOptim/src/Manifolds/SharedSpace.cpp
ManifoldOptim/src/Manifolds/LinearOPE.h
ManifoldOptim/src/Manifolds/SPDVector.cpp
ManifoldOptim/src/Manifolds/SPDVector.h
ManifoldOptim/src/Manifolds/LinearOPE.cpp
ManifoldOptim/src/Manifolds/Euclidean
ManifoldOptim/src/Manifolds/Euclidean/EucVariable.cpp
ManifoldOptim/src/Manifolds/Euclidean/EucVector.h
ManifoldOptim/src/Manifolds/Euclidean/EucVariable.h
ManifoldOptim/src/Manifolds/Euclidean/Euclidean.cpp
ManifoldOptim/src/Manifolds/Euclidean/EucVector.cpp
ManifoldOptim/src/Manifolds/Euclidean/Euclidean.h
ManifoldOptim/src/Manifolds/Stiefel
ManifoldOptim/src/Manifolds/Stiefel/StieVariable.h
ManifoldOptim/src/Manifolds/Stiefel/StieVector.h
ManifoldOptim/src/Manifolds/Stiefel/StieVector.cpp
ManifoldOptim/src/Manifolds/Stiefel/Stiefel.cpp
ManifoldOptim/src/Manifolds/Stiefel/StieVariable.cpp
ManifoldOptim/src/Manifolds/Stiefel/Stiefel.h
ManifoldOptim/src/Manifolds/SPDVariable.cpp
ManifoldOptim/src/Manifolds/SPDManifold.cpp
ManifoldOptim/src/Manifolds/Oblique
ManifoldOptim/src/Manifolds/Oblique/Oblique.cpp
ManifoldOptim/src/Manifolds/Oblique/ObliqueVariable.cpp
ManifoldOptim/src/Manifolds/Oblique/ObliqueVariable.h
ManifoldOptim/src/Manifolds/Oblique/ObliqueVector.h
ManifoldOptim/src/Manifolds/Oblique/Oblique.h
ManifoldOptim/src/Manifolds/Oblique/ObliqueVector.cpp
ManifoldOptim/src/Manifolds/SPDManifold.h
ManifoldOptim/src/Manifolds/PreShapeCurves
ManifoldOptim/src/Manifolds/PreShapeCurves/PSCVariable.h
ManifoldOptim/src/Manifolds/PreShapeCurves/PSCVariable.cpp
ManifoldOptim/src/Manifolds/PreShapeCurves/PreShapeCurves.h
ManifoldOptim/src/Manifolds/PreShapeCurves/PSCVector.cpp
ManifoldOptim/src/Manifolds/PreShapeCurves/PSCVector.h
ManifoldOptim/src/Manifolds/PreShapeCurves/PreShapeCurves.cpp
ManifoldOptim/src/Manifolds/L2Sphere
ManifoldOptim/src/Manifolds/L2Sphere/L2Sphere.cpp
ManifoldOptim/src/Manifolds/L2Sphere/L2SphereVector.h
ManifoldOptim/src/Manifolds/L2Sphere/L2Sphere.h
ManifoldOptim/src/Manifolds/L2Sphere/L2SphereVariable.h
ManifoldOptim/src/Manifolds/L2Sphere/L2SphereVariable.cpp
ManifoldOptim/src/Manifolds/L2Sphere/L2SphereVector.cpp
ManifoldOptim/src/Manifolds/SPDTensor
ManifoldOptim/src/Manifolds/SPDTensor/SPDTensor.h
ManifoldOptim/src/Manifolds/SPDTensor/SPDTVector.cpp
ManifoldOptim/src/Manifolds/SPDTensor/SPDTVariable.cpp
ManifoldOptim/src/Manifolds/SPDTensor/SPDTVector.h
ManifoldOptim/src/Manifolds/SPDTensor/SPDTensor.cpp
ManifoldOptim/src/Manifolds/SPDTensor/SPDTVariable.h
ManifoldOptim/src/Manifolds/SharedSpace.h
ManifoldOptim/src/Manifolds/SPDVariable.h
ManifoldOptim/src/Manifolds/ProductElement.h
ManifoldOptim/src/Manifolds/LowRank
ManifoldOptim/src/Manifolds/LowRank/LowRank.h
ManifoldOptim/src/Manifolds/LowRank/LowRankVariable.h
ManifoldOptim/src/Manifolds/LowRank/LowRankVector.h
ManifoldOptim/src/Manifolds/LowRank/LowRank.cpp
ManifoldOptim/src/Manifolds/LowRank/LowRankVariable.cpp
ManifoldOptim/src/Manifolds/LowRank/LowRankVector.cpp
ManifoldOptim/src/Manifolds/CpxNStQOrth
ManifoldOptim/src/Manifolds/CpxNStQOrth/CSOVariable.h
ManifoldOptim/src/Manifolds/CpxNStQOrth/CSOVariable.cpp
ManifoldOptim/src/Manifolds/CpxNStQOrth/CSOVector.h
ManifoldOptim/src/Manifolds/CpxNStQOrth/CpxNStQOrth.h
ManifoldOptim/src/Manifolds/CpxNStQOrth/CpxNStQOrth.cpp
ManifoldOptim/src/Manifolds/CpxNStQOrth/CSOVector.cpp
ManifoldOptim/src/Manifolds/SmartSpace.h
ManifoldOptim/src/Manifolds/ProductManifold.h
ManifoldOptim/src/Manifolds/Grassmann
ManifoldOptim/src/Manifolds/Grassmann/GrassVector.cpp
ManifoldOptim/src/Manifolds/Grassmann/Grassmann.h
ManifoldOptim/src/Manifolds/Grassmann/GrassVariable.cpp
ManifoldOptim/src/Manifolds/Grassmann/GrassVector.h
ManifoldOptim/src/Manifolds/Grassmann/Grassmann.cpp
ManifoldOptim/src/Manifolds/Grassmann/GrassVariable.h
ManifoldOptim/src/Manifolds/SmartSpace.cpp
ManifoldOptim/src/Manifolds/OrthGroup
ManifoldOptim/src/Manifolds/OrthGroup/OrthGroupVector.h
ManifoldOptim/src/Manifolds/OrthGroup/OrthGroupVariable.cpp
ManifoldOptim/src/Manifolds/OrthGroup/OrthGroup.cpp
ManifoldOptim/src/Manifolds/OrthGroup/OrthGroupVector.cpp
ManifoldOptim/src/Manifolds/OrthGroup/OrthGroup.h
ManifoldOptim/src/Manifolds/OrthGroup/OrthGroupVariable.h
ManifoldOptim/src/Manifolds/Element.cpp
ManifoldOptim/src/Manifolds/Element.h
ManifoldOptim/src/ManifoldOptim
ManifoldOptim/src/ManifoldOptim/ManifoldOptimModule.cpp
ManifoldOptim/src/ManifoldOptim/VariableFactory.h
ManifoldOptim/src/ManifoldOptim/SolverFactory.h
ManifoldOptim/src/ManifoldOptim/ManifoldFactory.h
ManifoldOptim/src/ManifoldOptim/ProblemAdapter.cpp
ManifoldOptim/src/ManifoldOptim/SolverFactory.cpp
ManifoldOptim/src/ManifoldOptim/ManifoldOptim.cpp
ManifoldOptim/src/ManifoldOptim/ProblemAdapter.h
ManifoldOptim/src/ManifoldOptim/Util.h
ManifoldOptim/src/ManifoldOptim/VariableFactory.cpp
ManifoldOptim/src/ManifoldOptim/BrockettProblem.cpp
ManifoldOptim/src/ManifoldOptim/ManifoldFactory.cpp
ManifoldOptim/src/ManifoldOptim/Util.cpp
ManifoldOptim/src/ManifoldOptim/ManifoldOptim.h
ManifoldOptim/src/ManifoldOptim/RProblem.cpp
ManifoldOptim/src/ManifoldOptim/RProblem.h
ManifoldOptim/src/Makevars.win
ManifoldOptim/NAMESPACE
ManifoldOptim/R
ManifoldOptim/R/ManifoldOptim-package.R
ManifoldOptim/R/manifolds.R
ManifoldOptim/R/manifold_optim.R
ManifoldOptim/R/params.R
ManifoldOptim/R/util.R
ManifoldOptim/R/zzz.R
ManifoldOptim/R/ld_flags.R
ManifoldOptim/MD5
ManifoldOptim/DESCRIPTION
ManifoldOptim/man
ManifoldOptim/man/Problem-definition.Rd
ManifoldOptim/man/Manifold-definitions.Rd
ManifoldOptim/man/Trace.Rd
ManifoldOptim/man/get.manifold.params.Rd
ManifoldOptim/man/get.solver.params.Rd
ManifoldOptim/man/print.ManifoldOptim.Rd
ManifoldOptim/man/manifold.optim.Rd
ManifoldOptim/man/Product-manifold-definition.Rd
ManifoldOptim/man/orthonorm.Rd