Sat, 07 Dec 2024 21:54:59 -0500
Some README and Cargo.toml details
Cargo.toml | file | annotate | diff | comparison | revisions | |
README.md | file | annotate | diff | comparison | revisions |
--- a/Cargo.toml Sat Dec 07 21:52:43 2024 -0500 +++ b/Cargo.toml Sat Dec 07 21:54:59 2024 -0500 @@ -6,7 +6,7 @@ description = "Simple optimisation experiments on non-Riemannian manifolds" #homepage = "" #repository = "" -#license-file = "LICENSE" +license-file = "LICENSE" keywords = [ "optimization", "manifold", @@ -15,8 +15,6 @@ ] categories = ["mathematics", "science", "computer-vision"] -# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html - [dependencies.alg_tools] version = "~0.3.0-dev" path = "../alg_tools"
--- a/README.md Sat Dec 07 21:52:43 2024 -0500 +++ b/README.md Sat Dec 07 21:54:59 2024 -0500 @@ -1,15 +1,18 @@ # Non-Riemannian optimisation -This package contains [Rust] codes for the manuscript “_Forward-backward methods in bilaterally bounded Alexandov spaces_” ([arXiv:????]) by Heikki von Koch and Tuomo Valkonen -⟨tuomov@iki.fi⟩. It concerns the solution of problems of the type +This package contains [Rust] codes for the manuscript “_Forward-backward +methods in bilaterally bounded Alexandov spaces_” ([arXiv:????]) +by Heikki von Koch and Tuomo Valkonen ⟨tuomov@iki.fi⟩. +It concerns the solution of problems of the type $$ \min_{x ∈ M} F(x) + G(x) $$ where $F$ is a smooth function and $G$ a possibly nonsmooth convex function -on a manifold $M$, which we do not assume to be Riemannian. -It may, for example, be an embedded manifold in $ℝ^3$, which sharp corners. -We have implemented the cube, as well as squared and non-squared distance functions. +on a manifold $M$, which we do not assume to be Riemannian. It may, +for example, be an embedded manifold in $ℝ^3$, which sharp corners. +We have implemented the cube and the cylinder, as well as squared and +non-squared distance functions. ## Installation and usage @@ -20,15 +23,13 @@ At the time of writing this README, [alg_tools] also needs to be downloaded separately. -1. Install the [Rust] infrastructure (including Cargo) with [rustup]. +1. Install the [Rust] infrastructure (including Cargo) with [rustup]. 2. Download [alg_tools] and unpack it under the same directory as this package. [rustup]: https://rustup.rs [alg_tools]: https://tuomov.iki.fi/software/alg_tools/ [Rust]: https://www.rust-lang.org/ - [GNU Scientific Library]: https://www.gnu.org/software/gsl/ - [Homebrew]: https://brew.sh [arXiv:????]: https://arxiv.org/abs/???? ### Building and running the experiments @@ -48,6 +49,17 @@ cargo run --release ``` +### Generating the graphical illustrations + +We include LaTeX/PGFPLOTS files for graphically illustrating the numerical results. +To generate `cube.pdf` and `cylinder.pdf` that visualise the computations, after running +`non-riemannian-opt` as indicated above, you can use: +```console +cd visualisations +pdflatex cube +pdflatex cylinder +``` + ## Internals If you are interested in the program internals, the integrated source code