STOP is a toolbox developed for solving the optimization problems with orthogonality constraints.
$$ \begin{equation*} \begin{aligned} \min\limits_{X \in \mathbb{R}^{n \times p}} \hspace{2mm} & f (X) \\ \mathrm{s.t.} \hspace{3mm} & X \in \mathcal{S}_{n, p} := {X \in \mathbb{R}^{n \times p} \mid X^{\top} X = I_p }. \end{aligned} \end{equation*} $$
Here, $f(X): \mathbb{R}^{n \times p} \to \mathbb{R}$ is an objective function, and the feasible set $\mathcal{S}_{n, p}$ is usually referred to as the Stiefel manifold.
There are two categories of solvers in STOP, including feasible methods and infeasible methods. Distinct from Riemannian optimization algorithms, STOP captures the special structures of Stiefel manifolds, and hence can achieve high efficiency. Unless otherwise specified, for a smooth function $g(X)$, $\nabla g(X)$ and $\nabla^2 g(X)$ stand for the Euclidean gradient and Hessian in STOP, respectively.
More information can be found in the Users’ Guide.
STOP provides a class of feasible methods, called multipliers correction methods.
Multipliers correction methods aim to minimize a smooth function over the Stiefel manifold, which combine a function value reduction step with a correction step. The former one searches along the standard Euclidean descent directions instead of the vectors in the tangent space of the Stiefel manifold, and the latter one further reduces the function value and guarantees a symmetric dual variable at the same time.
FOForth focuses on the structured objective functions $f (X) = h (X) + \mathrm{tr} (G^{\top} X)$.
ProxOrth extends the framework of FOForth to generic smooth objectives.
The orthonormalization process has low parallel scalability. With the increasing of $p$, a bottleneck of existent algorithms emerges, that is, lack of concurrency. To address this issue, STOP provides a class of infeasible methods to waive the orthonormalization process. Hence, parallelization becomes tractable in solving the optimization problems over the Stiefel manifold.
If you use these codes in an academic paper, please cite the following papers.
STOP is developed by the following authors listed in alphabetical order in the State Key Laboratory of Scientific and Engineering Computing, Institute of Computational Mathematics and Scientific/Engineering Computing, Academy of Mathematics and Systems Science, Chinese Academy of Sciences.
If you have any questions or find any bugs, please feel free to contact us by email (stmopt@foxmail.com).
In oreder to help you use STOP, we are happy to receive feedbacks, bug reports and requests for more features, and to discuss the toolbox as well as its documentation. We would also like to know how you use the toolbox.
STOP is a free software. You can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
STOP is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. Please see the GNU Lesser General Public License for more details.
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。