Recent Releases of Manopt.jl

Manopt.jl - v0.5.20

Manopt v0.5.20

Diff since v0.5.19

Added

  • a DebugWarnIfStepsizeCollapsed DebugAction and a related :WarnStepsize symbol for the debug dictionary. This is to be used in conjunction with the ProximalGradientMethodBacktracking stepsize to warn if the backtracking procedure of the proximal_gradient_method hit the stepsize length threshold without converging.

Changed

  • bumped dependencies.

Fixed

  • Fixed a few typos in the docs.

Merged pull requests: - Fix enumerate in first order objective. (#485) (@kellertuer) - Debug warning for RPG backtracking (#486) (@hajg-ijk) - Bump forwarddiff. (#487) (@kellertuer)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] 11 months ago

Manopt.jl - v0.5.19

Manopt v0.5.19

Diff since v0.5.18

Added

  • a function get_differential and get_differential_function for first order objectives.
  • a ParentEvaluationType to indicate that a certain objective inherits it evaluation from the parent (wrapping) objective
  • a new AllocatingInplaceEvaluation that is used for the functions that offer both variants simultaneously.
  • a differential= keyword for providing a faster way of computing inner(M, p, grad_f(p), X), introduced to the algorithms conjugate_gradient_descent, gradient_descent, Frank_Wolfe_method, quasi_Newton

Changed

  • the ManifoldGradientObjective and the ManifoldCostGradientObjective are now merely a const special cases of the ManifoldFirstOrderObjective, since this type might now also represent a differential or other combinations of cost, grad, and differential, where they are computed together.
  • the AbstractManifoldGradientObjective is renamed to AbstractManifoldFirstOrderObjective, since the second function might now also represent a differential.

Fixed

  • fixes a small bug where calling mesh_adaptive_direct_search with a start point in some cases did not initialise the state correctly with that start point.
  • The HestenesStiefelCoefficient now also always returns a real value, similar the other coefficient rules. To the best of our knowledge, this might have been a bug previously.

Merged pull requests: - Introduce differentials parallel to gradients (#483) (@kellertuer) - Correctly pass starting point to MADS (#484) (@hajg-ijk)

Closed issues: - Introduce a get_differential (#482)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] 12 months ago

Manopt.jl - v0.5.18

Manopt v0.5.18

Diff since v0.5.17

Added

  • Introduce the algorithm proximal_gradient_method along with ManifoldProximalGradientObjective, ProximalGradientMethodState, as well as an experimental ProximalGradientMethodAcceleration.
  • Add ProximalGradientMethodBacktracking stepsize.
  • Add StopWhenGradientMappingNormLess stopping criterion.
  • Introduce a StopWhenRepeated stopping criterion that stops when the given stopping criterion has indicated to stop n times (consecutively, if consecutive=true).
  • Introduce a StopWhenCriterionWithIterationCondition stopping criterion that stops when a given stopping criterion has been satisfied together with a certain iteration condition. This can the generated even with shortcuts like sc > 5
  • Introduce a DebugCallback that allows to add a callback function to the debug system
  • Introduce a callback= keyword to all solvers.
  • Added back functions estimate_sectional_curvature, ζ_1, ζ_2, close_point from convex_bundle_method; the function call can stay the same as before since there is a curvature estimation fallback
  • Add back some fields and arguments such as p_estimate, ϱ, α, from ConvexBundleMethodState

Changed

  • make the GradientDescentState a bit more tolerant to ignore keywords it does not use.

Merged pull requests: - Updates to the convex bundle method (#478) (@hajg-ijk) - Add callback (debug) and a repeated stopping criterion (#480) (@kellertuer) - Introduce the proximal gradient method (#481) (@kellertuer)

Closed issues: - Conversion error when optimizing on ProductManifold with InvertibleMatrices (#473) - Ideas for meta stopping criteria (#477)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] 12 months ago

Manopt.jl - v0.5.17

Manopt v0.5.17

Diff since v0.5.16

Added

  • Introduce a StopWhenCostChangeLess stopping criterion that stops when the cost function changes less than a given value.

Merged pull requests: - CompatHelper: bump compat for Documenter to 1 for package docs, (keep existing compat) (#472) (@github-actions[bot]) - CompatHelper: bump compat for RipQP in [weakdeps] to 0.7, (keep existing compat) (#474) (@github-actions[bot]) - CompatHelper: bump compat for RipQP to 0.7 for package docs, (keep existing compat) (#475) (@github-actions[bot]) - add a new stopping criterion. (#476) (@kellertuer)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] about 1 year ago

Manopt.jl - v0.5.16

Manopt v0.5.16

Diff since v0.5.15

Fixed

  • fixes a bug in the LineSearches.jl extension, where two (old) retract!s were still present; they were changed to retact_fused!.

Merged pull requests: - Inplace version of vectorize and reshape (#468) (@blegat) - Fix retracts in LineSearches extension (#471) (@kellertuer)

Closed issues: - Non-array manifold with JuMP/MOI (#274)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] about 1 year ago

Manopt.jl - v0.5.15

Manopt v0.5.15

Diff since v0.5.14

Merged pull requests: - Fix CMA-ES with nonpositive covariance eigenvalues (#467) (@mateuszbaran)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] about 1 year ago

Manopt.jl - v0.5.14

Manopt v0.5.14

Diff since v0.5.13

Merged pull requests: - Fixes printing of JuMP models containg Manopt solver (#462) (@blegat) - add linear subsolver to LevenbergMarquardt API (#463) (@mateuszbaran) - Adapt to the new default_basis function. (#464) (@kellertuer) - Switch to using QuartoNotebookRunner (#465) (@kellertuer)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] about 1 year ago

Manopt.jl - v0.5.13

Manopt v0.5.13

Diff since v0.5.12

Merged pull requests: - Add support for Riemanian objective through JuMP (#448) (@blegat) - Remove leftover from merge (#452) (@blegat) - Use scaled objective (#453) (@blegat) - Wrap objective in JuMP wrapper (#455) (@blegat) - Do not scale the cost function twice. (#457) (@kellertuer) - fixing issues in quasi-Newton docs (#458) (@mateuszbaran) - Fix a typo. (#459) (@kellertuer) - Refactor Tests a bit (#460) (@kellertuer) - Fix a small bug in Quasi Newton initialisation (#461) (@kellertuer)

Closed issues: - Riemannian black box function with JuMP/MOI (#273) - Remove the circular dependency in the tests to ManopExamples (#438) - Scaled objective not working (#456)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] about 1 year ago

Manopt.jl - v0.5.12

Manopt v0.5.12

Diff since v0.5.11

Added

  • a ScaledManifoldObjective to easier build scaled versions of objectives, especially turn maximisation problems into minimisation ones using a scaling of -1.
  • Introduce a ManifoldConstrainedSetObjective
  • Introduce a projected_gradient_method

Merged pull requests: - Help with a small objective wrapper to scale objectives (#449) (@kellertuer) - minor improvements for scaled objective (#450) (@mateuszbaran) - Add a projected gradient method. (#451) (@kellertuer)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] about 1 year ago

Manopt.jl - v0.5.11

Manopt v0.5.11

Diff since v0.5.10

Added

  • Configurable subsolver for the linear subproblem in Levenberg-Marquardt. The default subsolver is now also robust to numerical issues that may cause Cholesky decomposition to fail.

Merged pull requests: - Customizable subsolver for Levenberg-Marquardt (#447) (@mateuszbaran)

Closed issues: - Small example of inaccurate tracing retraction. (#446)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] about 1 year ago

Manopt.jl - v0.5.10

Manopt v0.5.10

Diff since v0.5.9

Fixed

  • a proper implementation of the preconditioning for quasi_Newton, that can be used instead of or in combination with the initial scaling.

Merged pull requests: - Fix preconditioning for QN. (#445) (@kellertuer)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] about 1 year ago

Manopt.jl - v0.5.9

Manopt v0.5.9

Diff since v0.5.8

Added

  • add a PreconditionedDirection variant to the direction gradient processor keyword argument and its corresponding PreconditionedDirectionRule
  • make the preconditioner available in quasi Newton.
  • in gradient_descent and conjugate_gradient_descent the rule can be added anyways.

Fixed

  • the links in the AD tutorial are fixed and moved to using extref

Merged pull requests: - Fix links and move them to extref in the AD tutorial. (#443) (@kellertuer) - Add a PreconditionedDirection direction rule (#444) (@kellertuer)

Closed issues: - The link back to change_representer is not updated in use automatic differenentiatio tutorial (#442)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] about 1 year ago

Manopt.jl - v0.5.8

Manopt v0.5.8

Diff since v0.5.7

Fixed

  • fixed a small bug in the NonmonotoneLinesearchStepsize hwn the injectivity radius is an irrational number.
  • fixed a small bug in check_gradient where eps might have been called on complex types.
  • fixed a bug in several gradient based solvers like quasi_newton, such that they properly work with the combined cost grad objective.
  • fixes a few typos in the docs.

Merged pull requests: - Fix two small bugs. (#440) (@kellertuer) - Fix a bug where QN did not accept CombinedCostGrad objectives. (#441) (@kellertuer)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] over 1 year ago

Manopt.jl - v0.5.7

Manopt v0.5.7

Diff since v0.5.6

Added

  • Adds a mesh adaptive direct search algorithm (MADS), using the LTMADS variant with a lower triangular (LT) random matrix in the mesh generation.

Merged pull requests: - Introduce the LTMADS solver (#433) (@kellertuer)

Closed issues: - Add LTMADS algorithm (#184)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] over 1 year ago

Manopt.jl - v0.5.6

Manopt v0.5.6

Diff since v0.5.5

Changed

  • bump dependencies of all JuliaManifolds ecosystem packages to be consistent with ManifoldsBase 1.0

Merged pull requests: - Adapt / Bump to ManifoldsBase 1.0 (#437) (@kellertuer)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] over 1 year ago

Manopt.jl - v0.5.5

Manopt v0.5.5

Diff since v0.5.4

Added

  • the Levenberg-Marquardt algorithm internally uses a VectorGradientFunction, which allows to use a vector of gradients of a function returning all gradients as well for the algorithm
  • The VectorGradientFunctions now also have a get_jacobian function

Changed

  • Minimum Julia version is now 1.10 (the LTS which replaced 1.6)
  • The vectorial functions had a bug where the original vector function for the mutating case was not always treated as mutating.

Removed

  • The geodesic regression example, first because it is not correct, second because it should become part of ManoptExamples.jl once it is correct.

Merged pull requests: - Remove the geodesic regression tutorial. (#430) (@kellertuer) - Follow the JuliaManifolds Groove: Move to LTS 1.10 (#431) (@kellertuer) - Rework LevenbergMarquardt to use the vector function functionality (#432) (@kellertuer)

Closed issues: - Robust loss functions for outlier rejection (#332)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] over 1 year ago

Manopt.jl - v0.5.4

Manopt v0.5.4

Diff since v0.5.3

Added

  • An automated detection whether the tutorials are present if not an also no quarto run is done, an automated --exlcude-tutorials option is added.
  • Support for ManifoldDiff 0.4
  • icons upfront external links when they link to another package or wikipedia.

Merged pull requests: - CompatHelper: bump compat for ColorTypes to 0.12, (keep existing compat) (#418) (@github-actions[bot]) - CompatHelper: bump compat for Colors to 0.13, (keep existing compat) (#419) (@github-actions[bot]) - CompatHelper: bump compat for Colors to 0.13 for package docs, (keep existing compat) (#420) (@github-actions[bot]) - CompatHelper: bump compat for Colors to 0.13 for package tutorials, (keep existing compat) (#421) (@github-actions[bot]) - Bump codecov/codecov-action from 4 to 5 (#422) (@dependabot[bot]) - Improve make.jl (#424) (@kellertuer) - ManifoldDiff v0.4 compat (#425) (@mateuszbaran) - Prefix InterLinks links with the logos of the corresponding packages (#428) (@kellertuer) - Fix changelog for Manopt 0.5.4 release (#429) (@mateuszbaran)

Closed issues: - Improve make.jl usability (#423)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] over 1 year ago

Manopt.jl - v0.5.3

Manopt v0.5.3

Diff since v0.5.2

Added

  • StopWhenChangeLess, StopWhenGradientChangeLess and StopWhenGradientLess can now use the new idea (ManifoldsBase.jl 0.15.18) of different outer norms on manifolds with components like power and product manifolds and all others that support this from the Manifolds.jl Library, like Euclidean.

Merged pull requests: - Make max_stepsize more user friendly (#416) (@kellertuer) - Introduce outer norms to three stopping criteria (#417) (@kellertuer)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] over 1 year ago

Manopt.jl - v0.5.2

Manopt v0.5.2

Diff since v0.5.1

Added

  • three new symbols to easier state to record the :Gradient, the :GradientNorm, and the :Stepsize.

Changed

Merged pull requests: - CompatHelper: bump compat for JLD2 to 0.5 for package docs, (keep existing compat) (#411) (@github-actions[bot]) - update readme logo with text. (#412) (@kellertuer) - Fix a few typos on ALM docs. (#413) (@kellertuer) - Improve a few places in the docs. (#415) (@kellertuer)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] over 1 year ago

Manopt.jl - v0.5.1

Manopt v0.5.1

Diff since v0.5.0

Changed

  • slightly improves the test for the ExponentialFamilyProjection text on the about page.

## Added

  • the proximal_point method.

Merged pull requests: - Adjust text for ExponentialFamilyProjection.jl (#409) (@bvdmitri) - Proximal Point Method (#410) (@kellertuer)

Closed issues: - PPA on Stiefel (#252)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] almost 2 years ago

Manopt.jl - v0.5.0

Manopt v0.5.0

Diff since v0.4.69

This breaking release is mainly concerned with stability and usability

  • all interfaces have been unified, especially orders of arguments and names of keywords
  • for gradient rules like CG or average gradient, and stepsizes like the Armijo linesearch, specifying the manifold (yet again) is no longer necessary thanks to an idea from Dmtry
  • the documentation has been reworked to using a glossary internally
  • we now use Aqua.jl to avoid ambiguities
  • we are back to supporting Julia 1.6 again after this rework as well.

For a full list of breaking changes see the Changelog.md.

Merged pull requests: - Rework high level interfaces (#392) (@kellertuer) - Rework presentation of keywords (#393) (@kellertuer) - Bump tarides/changelog-check-action from 2 to 3 (#405) (@dependabot[bot])

Closed issues: - Unify passing of optional parts of the objective in high-level solver interfaces (#381) - Quasi-Newton update rules issues (#382) - Initialise states based on point type already and not requiring an actual point (#400) - Problems with quasi-newton and PositiveDefinite matrix (#401)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] almost 2 years ago

Manopt.jl - v0.4.69

Manopt v0.4.69

Diff since v0.4.68

Changed

  • Improved performance of Interior Point Newton Method.

Merged pull requests: - Improve performance of IPM (#404) (@mateuszbaran)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] almost 2 years ago

Manopt.jl - v0.4.68

Manopt v0.4.68

Diff since v0.4.67

Added

  • an Interior Point Newton Method, the interior_point_newton
  • a conjugate_residual Algorithm to solve a linear system on a tangent space.
  • ArmijoLinesearch now allows for additional additional_decrease_condition and additional_increase_condition keywords to add further conditions to accept additional conditions when to accept an decreasing or increase of the stepsize.
  • add a DebugFeasibility to have a debug print about feasibility of points in constrained optimisation employing the new is_feasible function
  • add a InteriorPointCentralityCondition check that can be added for step candidates within the line search of interior_point_newton
  • Add Several new functors
    • the LagrangianCost, LagrangianGradient, LagrangianHessian, that based on a constrained objective allow to construct the hessian objective of its Lagrangian
    • the CondensedKKTVectorField and its CondensedKKTVectorFieldJacobian, that are being used to solve a linear system within interior_point_newton
    • the KKTVectorField as well as its KKTVectorFieldJacobian and `KKTVectorFieldAdjointJacobian
    • the KKTVectorFieldNormSq and its KKTVectorFieldNormSqGradient used within the Armijo line search of interior_point_newton
  • New stopping criteria
    • A StopWhenRelativeResidualLess for the conjugate_residual
    • A StopWhenKKTResidualLess for the interior_point_newton

Merged pull requests: - The Riemannian Interior Point Newton Method (#399) (@kellertuer)

Closed issues: - Refine storage of subsolver states (#403)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] almost 2 years ago

Manopt.jl - v0.4.67

Manopt v0.4.67

Diff since v0.4.66

Merged pull requests: - fix typos (#398) (@spaette) - max_stepsize improvements (#402) (@mateuszbaran)

Closed issues: - typos (#397)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] almost 2 years ago

Manopt.jl - v0.4.66

Manopt v0.4.66

Diff since v0.4.65

Merged pull requests: - Bundle method(s) patch (#396) (@hajg-ijk)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] almost 2 years ago

Manopt.jl - v0.4.65

Manopt v0.4.65

Diff since v0.4.64

Changed

  • refactor stopping criteria to not store a sc.reason internally, but instead only generate the reason (and hence allocate a string) when actually asked for a reason.

Merged pull requests: - CompatHelper: bump compat for DocumenterInterLinks to 1 for package docs, (keep existing compat) (#394) (@github-actions[bot]) - Refactor get_reason (#395) (@kellertuer)

Closed issues: - Built-in stopping criterions allocate new error strings on each check, even when not required (#389)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] about 2 years ago

Manopt.jl - v0.4.64

Manopt v0.4.64

Diff since v0.4.63

Added

  • Remodel the constraints and their gradients into separate VectorGradientFunctions to reduce code duplication and encapsulate the inner model of these functions and their gradients
  • Introduce a ConstrainedManoptProblem to model different ranges for the gradients in the new VectorGradientFunctions beyond the default NestedPowerRepresentation
  • introduce a VectorHessianFunction to also model that one can provide the vector of Hessians to constraints
  • introduce a more flexible indexing beyond single indexing, to also include arbitrary ranges when accessing vector functions and their gradients and hence also for constraints and their gradients.

Changed

  • Remodel ConstrainedManifoldObjective to store an AbstractManifoldObjective internally instead of directly f and grad_f, allowing also Hessian objectives therein and implementing access to this Hessian
  • Fixed a bug that Lanczos produced NaNs when started exactly in a minimizer, since we divide by the gradient norm.

Deprecated

  • deprecate get_grad_equality_constraints(M, o, p), use get_grad_equality_constraint(M, o, p, :) from the more flexible indexing instead.

Merged pull requests: - Modularise Constraints (#386) (@kellertuer) - Fix Initial condition on Lanczos (#391) (@kellertuer)

Closed issues: - Representing gradient of constraints as tangents on a power manifold (#185) - Lanczos initial value shouldn't be zero (#390)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] about 2 years ago

Manopt.jl - v0.4.63

Manopt v0.4.63

Diff since v0.4.62

Added

  • :reinitialize_direction_update option for quasi-Newton behavior when the direction is not a descent one. It is now the new default for QuasiNewtonState.
  • Quasi-Newton direction update rules are now initialized upon start of the solver with the new internal function initialize_update!.

Fixed

  • ALM and EPM no longer keep a part of the quasi-Newton subsolver state between runs.

Changed

  • Quasi-Newton solvers: :reinitialize_direction_update is the new default behavior in case of detection of non-descent direction instead of :step_towards_negative_gradient. :step_towards_negative_gradient is still available when explicitly set using the nondescent_direction_behavior keyword argument.

Merged pull requests: - Bump julia-actions/cache from 1 to 2 (#387) (@dependabot[bot]) - :reinitialize_direction_update for quasi-Newton (#388) (@mateuszbaran)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] about 2 years ago

Manopt.jl - v0.4.62

Manopt v0.4.62

Diff since v0.4.61

Changed

  • bumped dependency of ManifoldsBase.jl to 0.15.9 and imported their numerical check functions. This changes the throw_error keyword used internally to a error= with a symbol.

Merged pull requests: - Adapt to the new checks available in ManifoldsBase. (#385) (@kellertuer)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] about 2 years ago

Manopt.jl - v0.4.61

Manopt v0.4.61

Diff since v0.4.60

Added

  • Tests now also use Aqua.jl to spot problems in the code, e.g. ambiguities.
  • introduce a feature-based list of solvers and reduce the details in the alphabetical list
  • adds a PolyakStepsize
  • added a get_subgradient for AbstractManifoldGradientObjectives since their gradient is a special case of a subgradient.

Fixed

  • get_last_stepsize was defined in quite different ways that caused ambiguities. That is now internally a bit restructured and should work nicer. Internally this means that the interims dispatch on get_last_stepsize(problem, state, step, vars...) was removed. Now the only two left are get_last_stepsize(p, s, vars...) and the one directly checking get_last_stepsize(::Stepsize) for stored values.
  • we accidentally exported set_manopt_parameter!, this is now fixed.

Changed

  • get_manopt_parameter and set_manopt_parameter! have been revised and better documented, they now use more semantic symbols (with capital letters) instead of direct field access (lower letter symbols). Since these are not exported, this is considered an internal, hence non-breaking change.
    • semantic symbols are now all nouns in upper case letters
    • :active is changed to :Activity

Merged pull requests: - Introduce Aqua.jl-based checks (#379) (@kellertuer) - Add a structured list of solvers (#380) (@kellertuer) - Unify symbols in get/set manopt parameters. (#383) (@kellertuer) - add Polyak's Step size. (#384) (@kellertuer)

Closed issues: - Polyak's stepsize (#224) - Add a structured list of solvers for different problem types (#374)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] about 2 years ago

Manopt.jl - v0.4.60

Manopt v0.4.60

Diff since v0.4.59

Added

  • RecordWhenActive to allow records to be deactivated during runtime, symbol :WhenActive
  • RecordSubsolver to record the result of a subsolver recording in the main solver, symbol :Subsolver
  • RecordStoppingReason to record the reason a solver stopped
  • made the RecordFactory more flexible and quite similar to DebugFactory, such that it is now also easy to specify recordings at the end of solver runs. This can especially be used to record final states of sub solvers.

Changed

  • being a bit more strict with internal tools and made the factories for record non-exported, so this is the same as for debug.

Fixed

  • The name :Subsolver to generate DebugWhenActive was misleading, it is now called :WhenActive – referring to “print debug only when set active, e.g. by the parent (main) solver”.
  • the old version of specifying Symbol => RecordAction for later access was ambiguous, since it could also mean to store the action in the dictionary under that symbol. Hence the order for access was switched to RecordAction => Symbol to resolve that ambiguity.

Merged pull requests: - Introduce support of subsolver records. (#377) (@kellertuer)

Closed issues: - Provide a collection of records from a subsolver (#371)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] about 2 years ago

Manopt.jl - v0.4.59

Manopt v0.4.59

Diff since v0.4.58

Added

A Riemannian variant of the CMA-ES (Covariance Matrix Adaptation Evolutionary Strategy) algorithm, cma_es. Fixed

The constructor dispatch for StopWhenAny with Vector had incorrect element type assertion which was fixed.

Merged pull requests: - typo debug.jl (#372) (@flgoyens) - CMA-ES (#373) (@mateuszbaran) - Update StopWhenAny constructor for Vector (#376) (@Vaibhavdixit02)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] about 2 years ago

Manopt.jl - v0.4.58

Manopt v0.4.58

Diff since v0.4.57

Added

  • more advanced methods to add debug to the beginning of an algorithm, a step, or the end of the algorithm with DebugAction entries at :Start, :BeforeIteration, :Iteration, and :Stop, respectively.
  • Introduce a Pair-based format to add elements to these hooks, while all others ar now added to :Iteration (no longer to :All)
  • (planned) add an easy possibility to also record the initial stage and not only after the first iteration.

Changed

  • Changed the symbol for the :Step dictionary to be :Iteration, to unify this with the symbols used in recording, and removed the :All symbol. On the fine granular scale, all but :Start debugs are now reset on init. Since these are merely internal entries in the debug dictionary, this is considered non-breaking.
  • introduce a StopWhenSwarmVelocityLess stopping criterion for particle_swarm replacing the current default of the swarm change, since this is a bit more effective to compute

Fixed

  • fixed the outdated documentation of TruncatedConjugateGradientState, that now correcly state that p is no longer stored, but the algorithm runs on TpM.
  • implemented the missing get_iterate for TruncatedConjugateGradientState.

Merged pull requests: - CompatHelper: add new compat entry for DocumenterInterLinks at version 0.3 for package docs, (keep existing compat) (#368) (@github-actions[bot]) - Change PSO SC to a more efficient way of computing. (#369) (@kellertuer) - Refine debug (#370) (@kellertuer)

Closed issues: - Change default stopping criterion in particle swarm (#347) - Try DocumenterInterLinks.jl (#364)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] about 2 years ago

Manopt.jl - v0.4.57

Manopt v0.4.57

Diff since v0.4.56

Changed

  • convex_bundle_method uses the sectional_curvature from ManifoldsBase.jl.
  • convex_bundle_method no longer has the unused k_min keyword argument.
  • ManifoldsBase.jl now is running on Documenter 1.3, Manopt.jl documentation now uses DocumenterInterLinks to refer to sections and functions from ManifoldsBase.jl

Fixed

  • fixes a type that when passing sub_kwargs to trust_regions caused an error in the decoration of the sub objective.

Merged pull requests: - Use sectional_curvature from ManifoldsBase (#365) (@mateuszbaran) - 📚Switch to using DocumenterInterLinks for ManifoldsBase.jl (#366) (@kellertuer) - Fix a typo in a decorator call. (#367) (@kellertuer)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] about 2 years ago

Manopt.jl - v0.4.56

Manopt v0.4.56

Diff since v0.4.55

Added

  • The option :step_towards_negative_gradient for nondescent_direction_behavior in quasi-Newton solvers does no longer emit a warning by default. This has been moved to a message, that can be accessed/displayed with DebugMessages
  • DebugMessages now has a second positional argument, specifying whether all messages, or just the first (:Once) should be displayed.

Merged pull requests: - Nondescent direction without warnings (#363) (@mateuszbaran)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] over 2 years ago

Manopt.jl - v0.4.55

Manopt v0.4.55

Diff since v0.4.54

Added

  • Option nondescent_direction_behavior for quasi-Newton solvers. By default it checks for non-descent direction which may not be handled well by some stepsize selection algorithms.

Fixed

  • unified documentation, especially function signatures further.
  • fixed a few typos related to math formulae in the doc strings.

Merged pull requests: - Fix a few typos and try to fix the dependency from the last PR (#360) (@kellertuer) - Checking for non-descent direction in qN (#361) (@mateuszbaran)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] over 2 years ago

Manopt.jl - v0.4.54

Manopt v0.4.54

Diff since v0.4.53

Added

  • convex_bundle_method optimization algorithm for non-smooth geodesically convex functions
  • proximal_bundle_method optimization algorithm for non-smooth functions.
  • StopWhenSubgradientNormLess, StopWhenLagrangeMultiplierLess, and stopping criteria.

Fixed

  • Doc strings now follow a vale.sh policy. Though this is not fully working, this version however improves a lot of the doc strings concerning wording and spelling.

Merged pull requests: - Introduce text checks (vale.sh) on Docstrings and comments (#353) (@kellertuer) - Implementation of two bundle methods (#357) (@hajg-ijk)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] over 2 years ago

Manopt.jl - v0.4.53

Manopt v0.4.53

Diff since v0.4.52

Fixed

  • fixes two storage action defaults, that accidentally still tried to initialize a :Population (as modified back to :Iterate 0.4.49).
  • fix a few typos in the documentation and add a reference for the subgradient menthod.

Merged pull requests: - Kellertuer/fix storages (#356) (@kellertuer)

Closed issues: - Add Warning if gradient larger than injectivity radius. (#346)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] over 2 years ago

Manopt.jl - v0.4.52

Manopt v0.4.52

Diff since v0.4.51

Added

  • introduce an environment persistent way of setting global values with the set_manopt_parameter! function using Preferences.jl.
  • introduce such a value named :Mode to enable a "Tutorial" mode that shall often provide more warnings and information for people getting started with optimisation on manifolds

Merged pull requests: - Bump codecov/codecov-action from 3 to 4 (#355) (@dependabot[bot])

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] over 2 years ago

Manopt.jl - v0.4.51

Manopt v0.4.51

Diff since v0.4.50

Added

  • A StopWhenSubgradientNormLess stopping criterion for subgradient-based optimization.

Merged pull requests: - Allow d.msg in DebugIfEntry to contain an identifier to print the field (#351) (@kellertuer) - Add StopWhenSubgradientNormLess stopping criterion (#352) (@hajg-ijk)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] over 2 years ago

Manopt.jl - v0.4.50

Manopt v0.4.50

Diff since v0.4.49

Fixed

  • Fix Quasi Newton on complex manifolds.

Merged pull requests: - Bump actions/cache from 3 to 4 (#348) (@dependabot[bot]) - Fix Quasi Newton for complex Manifolds (#350) (@kellertuer)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] over 2 years ago

Manopt.jl - v0.4.49

Manopt v0.4.49

Diff since v0.4.48

Added

A StopWhenEntryChangeLess to be able to stop on arbitrary small changes of specific fields generalises StopWhenGradientNormLess to accept arbitrary norm= functions refactor the default in particle_swarm to no longer “misuse” the iteration change check, but actually the new one one the :swarm entry

Merged pull requests: - Introduced an entry change stopping criterion and generalise the gradient norm SC. (#345) (@kellertuer)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] over 2 years ago

Manopt.jl - v0.4.48

Manopt v0.4.48

Diff since v0.4.47

Fixed

  • fixes an imprecision in the interface of get_iterate that sometimes led to the swarm of particle_swarm being returned as the iterate.
  • refactor particle_swarm in naming and access functions to avoid this also in the future. To access the whole swarm, one now should use get_manopt_parameter(pss, :Population)

Merged pull requests: - Differentiate more precisely bewteen swarm and iterate in PSO more stricly (#344) (@kellertuer)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] over 2 years ago

Manopt.jl - v0.4.47

Manopt v0.4.47

Diff since v0.4.46

Fixed

  • fixed a bug, where the retraction set in check_Hessian was not passed on to the optional inner check_gradient call, which could lead to unwanted side effects, see #342.

Merged pull requests: - Fix a bug where the retraction method in check_Hessianwas not passed on (#343) (@kellertuer)

Closed issues: - quasiNewton has issue with negative memory size. (#340) - checkHessian: retraction_method is not passed to gradient check (#342)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] over 2 years ago

Manopt.jl - v0.4.46

Manopt v0.4.46

Diff since v0.4.45

Changed

  • An error is thrown when a line search from LineSearches.jl reports search failure.
  • Changed default stopping criterion in ALM algorithm to mitigate an issue occurring when step size is very small.
  • Default memory length in default ALM subsolver is now capped at manifold dimension.
  • Replaced CI testing on Julia 1.8 with testing on Julia 1.10.

Fixed

  • A bug in LineSearches.jl extension leading to slower convergence.
  • Fixed a bug in L-BFGS related to memory storage, which caused significantly slower convergence.

Merged pull requests: - Fixes from benchmark (#341) (@mateuszbaran)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] over 2 years ago

Manopt.jl - v0.4.45

Manopt v0.4.45

Diff since v0.4.44

Manopt.jl 0.4.45

Added

  • Introduce sub_kwargs and sub_stopping_criterion for trust_regions as noticed in #336

Changed

  • WolfePowellLineSearch, ArmijoLineSearch step sizes now allocate less
  • linesearch_backtrack! is now available
  • Quasi Newton Updates can work inplace of a direction vector as well.
  • Faster safe_indices in L-BFGS.

Merged pull requests: - Faster safe_indices (#334) (@mateuszbaran) - Improve Linesearch and Quasi Newton allocations (#335) (@kellertuer) - Introduce sub_kwargs also for Trust Regions (#337) (@kellertuer)

Closed issues: - Improving performance of L-BFGS (#333)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] over 2 years ago

Manopt.jl - v0.4.44

Manopt v0.4.44

Diff since v0.4.43

Merged pull requests: - CompatHelper: add new compat entry for CSV at version 0.10 for package docs, (keep existing compat) (#316) (@github-actions[bot]) - CompatHelper: add new compat entry for DataFrames at version 1 for package docs, (keep existing compat) (#317) (@github-actions[bot]) - CompatHelper: add new compat entry for DocumenterCitations at version 1 for package docs, (keep existing compat) (#318) (@github-actions[bot]) - CompatHelper: add new compat entry for JLD2 at version 0.4 for package docs, (keep existing compat) (#319) (@github-actions[bot]) - CompatHelper: add new compat entry for Manopt at version 0.4 for package docs, (keep existing compat) (#320) (@github-actions[bot]) - CompatHelper: add new compat entry for LineSearches at version 7 for package docs, (keep existing compat) (#321) (@github-actions[bot]) - CompatHelper: add new compat entry for Literate at version 2 for package docs, (keep existing compat) (#322) (@github-actions[bot]) - CompatHelper: add new compat entry for FiniteDifferences at version 0.12 for package docs, (keep existing compat) (#323) (@github-actions[bot]) - CompatHelper: add new compat entry for Plots at version 1 for package docs, (keep existing compat) (#324) (@github-actions[bot]) - CompatHelper: add new compat entry for Images at version 0.26 for package docs, (keep existing compat) (#325) (@github-actions[bot]) - CompatHelper: add new compat entry for Colors at version 0.12 for package docs, (keep existing compat) (#326) (@github-actions[bot]) - CompatHelper: add new compat entry for LRUCache at version 1 for package docs, (keep existing compat) (#327) (@github-actions[bot]) - CompatHelper: add new compat entry for JuMP at version 1 for package docs, (keep existing compat) (#328) (@github-actions[bot]) - CompatHelper: add new compat entry for BenchmarkTools at version 1 for package tutorials, (keep existing compat) (#329) (@github-actions[bot]) - Move Examples. (#331) (@kellertuer)

Closed issues: - Unify provided Objectives (#312) - Failed calling of the retraction of submanifolds in PowerManifold (#330)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] over 2 years ago

Manopt.jl - v0.4.43

Manopt v0.4.43

Diff since v0.4.42

Merged pull requests: - A Tutorial when starting with a new manifold (#314) (@kellertuer) - Minor changes to Readme.md (#315) (@odow)

Closed issues: - Tutorial when to write an own manifold (#305)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] over 2 years ago

Manopt.jl - v0.4.42

Manopt v0.4.42

Diff since v0.4.41

Merged pull requests: - JuMP interface (#264) (@blegat)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] over 2 years ago

Manopt.jl - v0.4.41

Manopt v0.4.41

Diff since v0.4.40

Merged pull requests: - Make the trust region subsolver exchangeable. (#294) (@kellertuer) - CompatHelper: add new compat entry for Statistics at version 1, (keep existing compat) (#311) (@github-actions[bot])

Closed issues: - Make the sub solver of trust regions replaceable (#240)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] over 2 years ago

Manopt.jl - v0.4.40

Manopt v0.4.40

Diff since v0.4.39

Merged pull requests: - Only compute Jacobian in RLM if last step success (#303) (@Affie) - Add jacobiantangentbasis to docstring (#304) (@blegat) - Bump dependencies. (#309) (@kellertuer)

Closed issues: - trust_regions loses normalization on Sphere (#306) - The gradient is far from analytical in the autograd example (#308)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] over 2 years ago

Manopt.jl - v0.4.39

Manopt v0.4.39

Diff since v0.4.38

Merged pull requests: - Generalize Douglas-Rachford (Part 2) (#302) (@kellertuer)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] over 2 years ago

Manopt.jl - v0.4.38

Manopt v0.4.38

Diff since v0.4.37

Merged pull requests: - Fix typos (#298) (@DanielVandH) - Fix typos (#299) (@DanielVandH) - Alternative fix to extra allocations in get_gradient! from Jacobian (#301) (@mateuszbaran)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] over 2 years ago

Manopt.jl - v0.4.37

Manopt v0.4.37

Diff since v0.4.36

Merged pull requests: - Expose more RLM parameters and possible fixes in step solver ρk (#295) (@Affie) - Generalize Douglas Rachford's internal reflection (#296) (@kellertuer)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] over 2 years ago

Manopt.jl - v0.4.36

Manopt v0.4.36

Diff since v0.4.35

Merged pull requests: - Fix a few typos and improve format print. (#292) (@kellertuer) - Fix a bug concerning ApproxHessian and non-matrix point types. (#293) (@kellertuer)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] over 2 years ago

Manopt.jl - v0.4.35

Manopt v0.4.35

Diff since v0.4.34

Merged pull requests: - Fix a few links. (#289) (@kellertuer) - Bump actions/checkout from 3 to 4 (#290) (@dependabot[bot]) - Take objective access a bit more serious. (#291) (@kellertuer)

Closed issues: - Incorrect links in the doc (#288)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] over 2 years ago

Manopt.jl - v0.4.34

Manopt v0.4.34

Diff since v0.4.33

Closed issues: - Implement a ManifoldEuclideanGradientObjective (#217)

Merged pull requests: - Introduce an EmbeddedObjective (#286) (@kellertuer)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] almost 3 years ago

Manopt.jl - v0.4.33

Manopt v0.4.33

Diff since v0.4.32

Merged pull requests: - Absolute and relative constant and decreasing stepsizes (#287) (@hajg-ijk)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] almost 3 years ago

Manopt.jl - v0.4.32

Manopt v0.4.32

Diff since v0.4.31

Merged pull requests: - Adaptive Regularisation with Cubics (ARC) Solver (#277) (@kellertuer)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] almost 3 years ago

Manopt.jl - v0.4.31

Manopt v0.4.31

Diff since v0.4.30

Closed issues: - Improve subsolver debug output (#189) - Automatically infer return type of high level solvers (#248)

Merged pull requests: - Introduce a :Subsolver debug symbol and a DebugWhenActive (#285) (@kellertuer)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] almost 3 years ago

Manopt.jl - v0.4.30

Manopt v0.4.30

Diff since v0.4.29

Closed issues: - Unify citations to DocumenterCitations.jl (#280) - Gradient descent on the ProbabilitySimplex leaving the simplex (#282)

Merged pull requests: - Use DocumenterCitations.jl for References (#281) (@kellertuer) - Fix a typo in trust regions and extend Frank-Wolfe docs (#284) (@kellertuer)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] almost 3 years ago

Manopt.jl - v0.4.29

Manopt v0.4.29

Diff since v0.4.28

Closed issues: - Add Riemannian accelerated hybrid proximal extragradient method (#278)

Merged pull requests: - a few typos in comments (#276) (@flgoyens) - Fix decorated objectives and Cache Display (#279) (@kellertuer)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] almost 3 years ago

Manopt.jl - v0.4.28

Manopt v0.4.28

Diff since v0.4.27

Merged pull requests: - Add max_stepsize on fixed rank (#275) (@mateuszbaran)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] almost 3 years ago

Manopt.jl - v0.4.27

Manopt v0.4.27

Diff since v0.4.26

Merged pull requests: - Riemannian Levenberg-Marquardt initial residual and jacobian as kwargs (#268) (@Affie) - Improve GHA Caching (#269) (@kellertuer) - Introduce AdaptiveWNGrad. (#270) (@kellertuer) - update changelog. (#271) (@kellertuer)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] almost 3 years ago

Manopt.jl - v0.4.26

Manopt v0.4.26

Diff since v0.4.25

Merged pull requests: - Objective typos (#265) (@blegat) - A collection of small improvements (#266) (@kellertuer)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] about 3 years ago

Manopt.jl - v0.4.25

Manopt v0.4.25

Diff since v0.4.24

Closed issues: - Thoughts on improving state storage (even further) (#220)

Merged pull requests: - Fix evaluation and a copy in DCA (#263) (@kellertuer)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] about 3 years ago

Manopt.jl - v0.4.24

Manopt v0.4.24

Diff since v0.4.23

Merged pull requests: - Fix technical details in doc (#260) (@blegat) - Fix docstring for TwoManifoldProblem (#261) (@blegat) - Bump dependencies (#262) (@kellertuer)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] about 3 years ago

Manopt.jl - v0.4.23

Manopt v0.4.23

Diff since v0.4.22

Closed issues: - Splitting stochastic gradient descent objective (#249)

Merged pull requests: - 🎓Extend the Count and Cache Tutorial to also cover exchanging interims results. (#258) (@kellertuer) - Allow the stochastic cost to be a vector of costs. (#259) (@kellertuer)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] about 3 years ago

Manopt.jl - v0.4.22

Manopt v0.4.22

Diff since v0.4.21

Merged pull requests: - Typos in CountAndCache.md (#251) (@DanielVandH) - Fix minor docs issues (#253) (@mateuszbaran) - We can run Quarto on CI. (#254) (@kellertuer) - Start a Tutorial how to implement a Solver. (#255) (@kellertuer) - Switch to ArrayPartition (#256) (@mateuszbaran)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] about 3 years ago

Manopt.jl - v0.4.21

Manopt v0.4.21

Diff since v0.4.20

Closed issues: - Work counters (#176) - A Cache for calls to fields of the objective (#192)

Merged pull requests: - Count and Cache Objectives. (#244) (@kellertuer)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] about 3 years ago

Manopt.jl - v0.4.20

Manopt v0.4.20

Diff since v0.4.19

Closed issues: - check_gradient always fails (#245)

Merged pull requests: - Change defaults for checking vectors/linearity/symmetry in check_ functions (#247) (@kellertuer)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] about 3 years ago

Manopt.jl - v0.4.19

Manopt v0.4.19

Diff since v0.4.18

Closed issues: - Stabilize types in AugmentedLagrangianMethodState (#242)

Merged pull requests: - Add customizable subsolver to trust_regions (#241) (@mateuszbaran) - Make both ALM and EPM state type stable. (#243) (@kellertuer)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] about 3 years ago

Manopt.jl - v0.4.18

Manopt v0.4.18

Diff since v0.4.17

Merged pull requests: - Implement check Hessian. (#239) (@kellertuer)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] about 3 years ago

Manopt.jl - v0.4.17

Manopt v0.4.17

Diff since v0.4.16

Closed issues: - High-lever interfaces starting with solvername(M, obj, ...) (#223) - Implement a fill(p) prequel for every solver, where p might be a number. (#235)

Merged pull requests: - Nicer Interfaces for ::Number Manifolds and Objectives (#236) (@kellertuer)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] about 3 years ago

Manopt.jl - v0.4.16

Manopt v0.4.16

Diff since v0.4.15

Merged pull requests: - fix the inner products used in TCG (#238) (@kellertuer)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] about 3 years ago

Manopt.jl - v0.4.15

Manopt v0.4.15

Diff since v0.4.14

Merged pull requests: - Introduce the approximate Hessian as a default in trust regions. (#237) (@kellertuer)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] about 3 years ago

Manopt.jl - v0.4.14

Manopt v0.4.14

Diff since v0.4.13

Closed issues: - Add in-place variant of particle swarm optimization (#186)

Merged pull requests: - Improve particle swarm to work in-place (#234) (@kellertuer)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] about 3 years ago

Manopt.jl - v0.4.13

Manopt v0.4.13

Diff since v0.4.12

Closed issues: - Improve line searches (#229) - NaNs in constrained optimization (#232)

Merged pull requests: - Messages to display warnings / Improve linesearch and L-BFGS (#233) (@kellertuer)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] about 3 years ago

Manopt.jl - v0.4.12

Manopt v0.4.12

Diff since v0.4.11

Merged pull requests: - Introduce the difference of convex algorithms (#195) (@kellertuer)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] about 3 years ago

Manopt.jl - v0.4.11

Manopt v0.4.11

Diff since v0.4.10

Merged pull requests: - Relax one more test (#231) (@mateuszbaran)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] about 3 years ago

Manopt.jl - v0.4.10

Manopt v0.4.10

Diff since v0.4.9

Merged pull requests: - docs, typo fix (#225) (@dehann) - enable dependabot for GitHub actions (#226) (@mateuszbaran) - Bump actions/checkout from 2 to 3 (#227) (@dependabot[bot]) - Bump codecov/codecov-action from 1 to 3 (#228) (@dependabot[bot]) - Relax some tolerances (#230) (@mateuszbaran)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] about 3 years ago

Manopt.jl - v0.4.9

Manopt v0.4.9

Diff since v0.4.8

Merged pull requests: - LineSearches.jl wrapper and minor improvements (#221) (@mateuszbaran)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] over 3 years ago

Manopt.jl - v0.4.8

Manopt v0.4.8

Diff since v0.4.7

Closed issues: - ManoptExamples.jl (#173) - Testing convergence (#175) - More persistent tutorials (#194) - Unify ConjugateGradient update rule constructors (#207) - Incorrect gradient change debugging (#213) - Convert storage-using stopping criteria to faster storage handling (#214)

Merged pull requests: - Move Tutorials to be written in Quarto (#210) (@kellertuer) - State Summary (or: show() methods for everyone!) (#211) (@kellertuer) - Even faster storage handling (#212) (@mateuszbaran)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] over 3 years ago

Manopt.jl - v0.4.7

Manopt v0.4.7

Diff since v0.4.6

Merged pull requests: - CompatHelper: bump compat for ManifoldDiff to 0.3, (keep existing compat) (#216) (@github-actions[bot])

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] over 3 years ago

Manopt.jl - v0.4.6

Manopt v0.4.6

Diff since v0.4.5

Merged pull requests: - Fixes a small but in a StoppingCriterion (#215) (@kellertuer)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] over 3 years ago

Manopt.jl - v0.4.5

Manopt v0.4.5

Diff since v0.4.4

Merged pull requests: - Use the new default_...(M, typeof(p)) where possible. (#208) (@kellertuer) - Faster storage handling (#209) (@mateuszbaran)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] over 3 years ago

Manopt.jl - v0.4.4

Manopt v0.4.4

Diff since v0.4.3

Closed issues: - Advise on optimization over simplex (#187) - Descent direction reset for CG (#203) - Rename HeestenesStiefelCoefficient to HestenesStiefelCoefficient (#204)

Merged pull requests: - Introduce RestartCG as a decorator. (#205) (@kellertuer)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] over 3 years ago

Manopt.jl - v0.4.3

Manopt v0.4.3

Diff since v0.4.2

Closed issues: - vectortransportto function in the grassmann manifolds doesn't work unless using it with ProjectionTransport() (#201)

Merged pull requests: - Fixes grad_distance functions (#200) (@hajg-ijk) - Allow the CG coefficient β to be complex. (#202) (@kellertuer)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] over 3 years ago

Manopt.jl - Manopt v0.4.2

What's Changed

  • Max stepsize on tangent bundle by @mateuszbaran in https://github.com/JuliaManifolds/Manopt.jl/pull/198
  • Revise usage of inner in line-searches and model functions. by @kellertuer in https://github.com/JuliaManifolds/Manopt.jl/pull/199

Full Changelog: https://github.com/JuliaManifolds/Manopt.jl/compare/v0.4.1...v0.4.2

Scientific Software - Peer-reviewed - Julia
Published by kellertuer over 3 years ago

Manopt.jl - Manopt v0.4.1

This is a manual variant of the release since TagBot is broken, the main thing fixed is

What's Changed

  • Stepsize limiting on some manifolds by @mateuszbaran in https://github.com/JuliaManifolds/Manopt.jl/pull/196

Full Changelog: https://github.com/JuliaManifolds/Manopt.jl/compare/v0.4.0...v0.4.1

Scientific Software - Peer-reviewed - Julia
Published by kellertuer over 3 years ago

Manopt.jl - v0.4.0

Manopt v0.4.0

Diff since v0.3.51

Closed issues: - A combined CostGrad structure (#139) - Make DebugWarnIfCostIncreases not call objective when possible (#171) - ManoptBase.jl (or ideas for improving the basic interfaces for Manopt.jl) (#172) - Differentials and adjoint differentials in ManifoldDiff.jl (#177) - random_point and random_tangent (#178) - Nelder-Mead seems to be much worse than in Optim.jl (#179) - Introduce default_stepsize(M, O) (#180) - Add simplex size termination condition to Nelder-Mead (#183)

Merged pull requests: - Rework Problem structure to have a Objective for reusing interim computations and a Cache (#174) (@kellertuer)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] over 3 years ago

Manopt.jl - v0.3.51

Manopt v0.3.51

Diff since v0.3.50

Merged pull requests: - Don't allocate initial_operator for L-BFGS (#190) (@mateuszbaran)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] over 3 years ago

Manopt.jl - v0.3.50

Manopt v0.3.50

Diff since v0.3.49

Merged pull requests: - Introduces the RTR-SR1 method. (#137) (@TomRiem)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] over 3 years ago

Manopt.jl - v0.3.49

Manopt v0.3.49

Diff since v0.3.48

Closed issues: - Riemannian Levenberg-Marquardt (#166) - Line searches (#181)

Merged pull requests: - Small cleanup (#182) (@mateuszbaran) - Add Iterate accessor for Subgrad (#188) (@kellertuer)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] over 3 years ago

Manopt.jl - v0.3.48

Manopt v0.3.48

Diff since v0.3.47

Merged pull requests: - Riemannian Levenberg-Marquardt (#167) (@mateuszbaran)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] over 3 years ago

Manopt.jl - v0.3.47

Manopt v0.3.47

Diff since v0.3.46

Merged pull requests: - Introduce a Tutorial on how to (effectively) use Constrained Optimization (#170) (@kellertuer)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] over 3 years ago

Manopt.jl - v0.3.46

Manopt v0.3.46

Diff since v0.3.45

Merged pull requests: - Introduce memory efficient versions for ALM and Huber-EPM (#168) (@kellertuer)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] over 3 years ago

Manopt.jl - v0.3.45

Manopt v0.3.45

Diff since v0.3.44

Merged pull requests: - add a missing evaluation= keyword to the mutating variant of CG. (#169) (@kellertuer)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] over 3 years ago

Manopt.jl - v0.3.44

Manopt v0.3.44

Diff since v0.3.43

Closed issues: - Where does the logarithmic map and exponential map come from? (#160)

Merged pull requests: - Introduce the Riemannian ALM and EPM (#163) (@kellertuer) - Fix typos (#164) (@hajg-ijk) - Fix two minor bugs in Quasi Newton (#165) (@kellertuer)

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] over 3 years ago

Manopt.jl - v0.3.43

Manopt v0.3.43

Diff since v0.3.42

Scientific Software - Peer-reviewed - Julia
Published by github-actions[bot] over 3 years ago