Manopt.jl

Manopt.jl: Optimization on Manifolds in Julia - Published in JOSS (2022)

https://github.com/juliamanifolds/manopt.jl

Science Score: 98.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 7 DOI reference(s) in README and JOSS metadata
  • Academic publication links
    Links to: joss.theoj.org, zenodo.org
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
    Published in Journal of Open Source Software

Keywords

julia manifolds manopt optimization

Keywords from Contributors

unconstrained-optimization unconstrained-optimisation optimisation optim graphics standardization meshing julialang simulations fluxes
Last synced: 4 months ago · JSON representation ·

Repository

🏔️Optimization on Riemannian Manifolds in Julia

Basic Info
  • Host: GitHub
  • Owner: JuliaManifolds
  • License: other
  • Language: Julia
  • Default Branch: master
  • Homepage: http://manoptjl.org
  • Size: 57.4 MB
Statistics
  • Stars: 376
  • Watchers: 11
  • Forks: 43
  • Open Issues: 11
  • Releases: 162
Topics
julia manifolds manopt optimization
Created about 9 years ago · Last pushed 4 months ago
Metadata Files
Readme Changelog Contributing License Citation Zenodo

Readme.md

Manifolds.jl logo with text on the side

Optimization Algorithm on Riemannian Manifolds.

Code Style: Blue CI codecov Aqua QA

DOI DOI

For a function $f: ℳ → ℝ$ that maps from a Riemannian manifold ℳ to the real line, this package aims to solve

Find the minimizer p on ℳ, that is, the (or a) point where f attains its minimum.

Manopt.jl provides

  • A framework to implement arbitrary optimization algorithms on Riemannian Manifolds
  • A library of optimization algorithms on Riemannian manifolds
  • an easy-to-use interface for (debug) output and recording values during an algorithm run.
  • several tools to investigate the algorithms, gradients, and optimality criteria

Getting started

In Julia you can get started by just typing

julia using Pkg; Pkg.add("Manopt");

and then checkout the 🏔️ Get started with Manopt.jl tutorial.

Related packages

Manopt.jl is based on ManifoldsBase.jl, hence the algorithms can be used with any manifold following this interface for defining a Riemannian manifold.

The following packages are related to Manopt.jl

Citation

If you use Manopt.jl in your work, please cite the following

biblatex @article{Bergmann2022, Author = {Ronny Bergmann}, Doi = {10.21105/joss.03866}, Journal = {Journal of Open Source Software}, Number = {70}, Pages = {3866}, Publisher = {The Open Journal}, Title = {Manopt.jl: Optimization on Manifolds in {J}ulia}, Volume = {7}, Year = {2022}, }

To refer to a certain version or the source code in general please cite for example

biblatex @software{manoptjl-zenodo-mostrecent, Author = {Ronny Bergmann}, Copyright = {MIT License}, Doi = {10.5281/zenodo.4290905}, Publisher = {Zenodo}, Title = {Manopt.jl}, Year = {2024}, }

for the most recent version or a corresponding version specific DOI, see the list of all versions.

If you are also using Manifolds.jl please consider to cite

biblatex @article{AxenBaranBergmannRzecki:2023, AUTHOR = {Axen, Seth D. and Baran, Mateusz and Bergmann, Ronny and Rzecki, Krzysztof}, ARTICLENO = {33}, DOI = {10.1145/3618296}, JOURNAL = {ACM Transactions on Mathematical Software}, MONTH = {dec}, NUMBER = {4}, TITLE = {Manifolds.jl: An Extensible Julia Framework for Data Analysis on Manifolds}, VOLUME = {49}, YEAR = {2023} }

as well. Note that all citations are in BibLaTeX format.

Manopt.jl belongs to the Manopt family:

Did you use Manopt.jl somewhere? Let us know! We'd love to collect those here as well.

Owner

  • Name: Julia Manifolds
  • Login: JuliaManifolds
  • Kind: organization

JOSS Publication

Manopt.jl: Optimization on Manifolds in Julia
Published
February 10, 2022
Volume 7, Issue 70, Page 3866
Authors
Ronny Bergmann ORCID
Norwegian University of Science and Technology, Department of Mathematical Sciences, Trondheim, Norway
Editor
David P. Sanders ORCID
Tags
Riemannian manifolds optimization numerical analysis

Citation (CITATION.bib)

@article{Bergmann2022,
    AUTHOR    = {Ronny Bergmann},
    DOI       = {10.21105/joss.03866},
    JOURNAL   = {Journal of Open Source Software},
    NUMBER    = {70},
    PAGES     = {3866},
    PUBLISHER = {The Open Journal},
    TITLE     = {Manopt.jl: Optimization on Manifolds in Julia},
    VOLUME    = {7},
    YEAR      = {2022}
}
@software{Bergmann2023-zenodo,
    AUTHOR = {Ronny Bergmann},
    COPYRIGHT = {MIT License},
    DOI = {10.5281/zenodo.4290905},
    PUBLISHER = {Zenodo},
    TITLE = {Manopt.jl},
    YEAR = {2016--2022},
}

GitHub Events

Total
  • Create event: 71
  • Commit comment event: 27
  • Issues event: 15
  • Release event: 13
  • Watch event: 50
  • Delete event: 44
  • Issue comment event: 329
  • Push event: 578
  • Pull request review comment event: 239
  • Pull request review event: 180
  • Pull request event: 119
  • Fork event: 2
Last Year
  • Create event: 71
  • Commit comment event: 27
  • Issues event: 15
  • Release event: 13
  • Watch event: 50
  • Delete event: 44
  • Issue comment event: 329
  • Push event: 578
  • Pull request review comment event: 239
  • Pull request review event: 180
  • Pull request event: 119
  • Fork event: 2

Committers

Last synced: 5 months ago

All Time
  • Total Commits: 718
  • Total Committers: 30
  • Avg Commits per committer: 23.933
  • Development Distribution Score (DDS): 0.226
Past Year
  • Commits: 75
  • Committers: 7
  • Avg Commits per committer: 10.714
  • Development Distribution Score (DDS): 0.373
Top Committers
Name Email Commits
Ronny Bergmann g****t@r****t 556
Mateusz Baran m****9@g****m 56
github-actions[bot] 4****] 39
Benoît Legat b****t@g****m 11
hajg-ijk 1****k 10
dependabot[bot] 4****] 8
Constantin c****e 3
Daniel VandenHeuvel 9****H 3
Johannes Terblanche 6****e 3
Tim Quelch t****m@t****m 3
Dehann Fourie d****n 3
Florentin Goyens f****s@h****m 2
TomRiem 4****m 2
qrebjock 3****k 2
r-dornig 6****g 2
Bagaev Dmitry b****i@g****m 1
Daniel Karrasch d****h@p****e 1
Felix Kastner k****x@g****m 1
Fábio Meneghetti 1****m 1
Harald Schilly h****y@g****m 1
IWalds 9****s 1
Johannes VK j****k@p****m 1
Mathieu Besançon m****n@g****m 1
Nikdwal n****e@g****m 1
Oscar Dowson o****w 1
Stefanos Carlström j****t 1
Vaibhav Kumar Dixit v****t@g****m 1
freemin7 2****7 1
spaette 1****e 1
wdiepeveen 4****n 1
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 4 months ago

All Time
  • Total issues: 87
  • Total pull requests: 358
  • Average time to close issues: 3 months
  • Average time to close pull requests: 6 days
  • Total issue authors: 24
  • Total pull request authors: 18
  • Average comments per issue: 7.51
  • Average comments per pull request: 4.95
  • Merged pull requests: 295
  • Bot issues: 1
  • Bot pull requests: 75
Past Year
  • Issues: 12
  • Pull requests: 131
  • Average time to close issues: 21 days
  • Average time to close pull requests: 3 days
  • Issue authors: 7
  • Pull request authors: 8
  • Average comments per issue: 4.5
  • Average comments per pull request: 2.7
  • Merged pull requests: 97
  • Bot issues: 1
  • Bot pull requests: 27
Top Authors
Issue Authors
  • kellertuer (30)
  • mateuszbaran (29)
  • blegat (4)
  • Nimrais (3)
  • Watayo (2)
  • juliohm (1)
  • orfeasliossatos (1)
  • JuliaTagBot (1)
  • fayolle (1)
  • projekter (1)
  • salbert83 (1)
  • benjione (1)
  • fph (1)
  • github-actions[bot] (1)
  • JoshuaLampert (1)
Pull Request Authors
  • kellertuer (172)
  • github-actions[bot] (60)
  • mateuszbaran (49)
  • blegat (22)
  • hajg-ijk (16)
  • dependabot[bot] (15)
  • flgoyens (4)
  • Affie (4)
  • DanielVandH (3)
  • bvdmitri (2)
  • jonas-pueschel (2)
  • spaette (2)
  • Vaibhavdixit02 (2)
  • rikhuijzer (1)
  • Gertian (1)
Top Labels
Issue Labels
enhancement (31) help wanted (9) good first issue (4) breaking (2) question (1) bug (1) discussion (1) documentation (1) not-possible (1) Ready-for-Review (1)
Pull Request Labels
Ready-for-Review (93) enhancement (22) documentation (19) dependencies (17) breaking (2) bug (1) not-possible (1) WIP (1)

Packages

  • Total packages: 1
  • Total downloads:
    • julia 58 total
  • Total dependent packages: 2
  • Total dependent repositories: 0
  • Total versions: 162
juliahub.com: Manopt

🏔️Optimization on Riemannian Manifolds in Julia

  • Versions: 162
  • Dependent Packages: 2
  • Dependent Repositories: 0
  • Downloads: 58 Total
Rankings
Stargazers count: 3.1%
Forks count: 4.4%
Dependent repos count: 9.9%
Average: 10.1%
Dependent packages count: 23.0%
Last synced: 4 months ago