Subgradient Method
Manopt.subgradient_method — Functionsubgradient_method(M, F, ∂F, x)perform a subgradient method $x_{k+1} = \mathrm{retr}(x_k, s_k∂F(x_k))$,
where $\mathrm{retr}$ is a retraction, $s_k$ can be specified as a function but is usually set to a constant value. Though the subgradient might be set valued, the argument ∂F should always return one element from the subgradient, but not necessarily deterministic.
Input
M– a manifold $\mathcal M$F– a cost function $F:\mathcal M→ℝ$ to minimize∂F– the (sub)gradient $\partial F: \mathcal M→ T\mathcal M$ of F restricted to always only returning one value/element from the subgradient. This function can be passed as an allocation function(M, y) -> Xor a mutating function(M, X, y) -> X, seeevaluation.x– an initial value $x ∈ \mathcal M$
Optional
evaluation– (AllocatingEvaluation) specify whether the subgradient works by allocation (default) form∂F(M, y)orMutatingEvaluationin place, i.e. is of the form∂F!(M, X, x).stepsize– (ConstantStepsize(1.)) specify aStepsizeretraction– (default_retraction_method(M)) aretraction(M,x,ξ)to use.stopping_criterion– (StopAfterIteration(5000)) a functor, seeStoppingCriterion, indicating when to stop.
... and the ones that are passed to decorate_options for decorators.
Output
the obtained (approximate) minimizer $x^*$, see get_solver_return for details
Manopt.subgradient_method! — Functionsubgradient_method!(M, F, ∂F, x)perform a subgradient method $x_{k+1} = \mathrm{retr}(x_k, s_k∂F(x_k))$ in place of x
Input
M– a manifold $\mathcal M$F– a cost function $F:\mathcal M→ℝ$ to minimize∂F- the (sub)gradient $\partial F:\mathcal M→ T\mathcal M$ of F restricted to always only returning one value/element from the subgradient. This function can be passed as an allocation function(M, y) -> Xor a mutating function(M, X, y) -> X, seeevaluation.x– an initial value $x ∈ \mathcal M$
for more details and all optional parameters, see subgradient_method.
Options
Manopt.SubGradientMethodOptions — TypeSubGradientMethodOptions <: Optionsstories option values for a subgradient_method solver
Fields
retraction_method– the retration to use withinstepsize– aStepsizestop– aStoppingCriterionx– (initial or current) value the algorithm is atx_optimal– optimal value∂the current element from the possible subgradients atxthat is used
For DebugActions and RecordActions to record (sub)gradient, its norm and the step sizes, see the steepest Descent actions.