Skip to content

Commit

Permalink
build based on 4144def
Browse files Browse the repository at this point in the history
  • Loading branch information
Documenter.jl committed Jul 7, 2023
1 parent c3af08a commit 92e5f37
Show file tree
Hide file tree
Showing 29 changed files with 1,161 additions and 16,585 deletions.
2 changes: 1 addition & 1 deletion dev/acceleration/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -4,4 +4,4 @@
gtag('js', new Date());
gtag('config', 'UA-134239283-1', {'page_path': location.pathname + location.search + location.hash});
</script><script data-outdated-warner src="../assets/warner.js"></script><link rel="canonical" href="https://oxfordcontrol.github.io/COSMO.jl/stable/acceleration/"/><link href="https://cdnjs.cloudflare.com/ajax/libs/lato-font/3.0.0/css/lato-font.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/juliamono/0.045/juliamono.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.4/css/fontawesome.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.4/css/solid.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.4/css/brands.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.13.24/katex.min.css" rel="stylesheet" type="text/css"/><script>documenterBaseURL=".."</script><script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.6/require.min.js" data-main="../assets/documenter.js"></script><script src="../siteinfo.js"></script><script src="../../versions.js"></script><link class="docs-theme-link" rel="stylesheet" type="text/css" href="../assets/themes/documenter-dark.css" data-theme-name="documenter-dark" data-theme-primary-dark/><link class="docs-theme-link" rel="stylesheet" type="text/css" href="../assets/themes/documenter-light.css" data-theme-name="documenter-light" data-theme-primary/><script src="../assets/themeswap.js"></script><link href="../assets/favicon.ico" rel="icon" type="image/x-icon"/><script src="../assets/github_buttons.js"></script><link href="../assets/custom.css" rel="stylesheet" type="text/css"/></head><body><div id="documenter"><nav class="docs-sidebar"><a class="docs-logo" href="../"><img src="../assets/logo.png" alt="COSMO.jl logo"/></a><div class="docs-package-name"><span class="docs-autofit"><a href="../">COSMO.jl</a></span></div><form class="docs-search" action="../search/"><input class="docs-search-query" id="documenter-search-query" name="q" type="text" placeholder="Search docs"/></form><ul class="docs-menu"><li><a class="tocitem" href="../">Home</a></li><li><span class="tocitem">User Guide</span><ul><li><a class="tocitem" href="../getting_started/">Getting Started</a></li><li><a class="tocitem" href="../jump/">JuMP Interface</a></li><li><a class="tocitem" href="../lin_solver/">Linear System Solver</a></li><li class="is-active"><a class="tocitem" href>Acceleration</a></li><li><a class="tocitem" href="../literate/build/custom_cone/">Custom Cone Constraint</a></li><li><a class="tocitem" href="../decomposition/">Chordal Decomposition</a></li><li><a class="tocitem" href="../literate/build/portfolio_model_updates/">Model Updates</a></li><li><a class="tocitem" href="../literate/build/arbitrary_precision/">Arbitrary Precision</a></li><li><a class="tocitem" href="../performance/">Performance Tips</a></li></ul></li><li><a class="tocitem" href="../method/">Method</a></li><li><span class="tocitem">Examples</span><ul><li><a class="tocitem" href="../examples/closest_correlation_matrix/">Closest Correlation Matrix</a></li><li><a class="tocitem" href="../examples/logistic_regression/">Logistic Regression</a></li><li><a class="tocitem" href="../examples/lovasz_petersen/">Lovász Theta Function</a></li><li><a class="tocitem" href="../examples/lp/">Linear Program</a></li><li><a class="tocitem" href="../examples/maxcut/">Maximum Cut Problem</a></li><li><a class="tocitem" href="../examples/portfolio_optimisation/">Portfolio Optimisation</a></li><li><a class="tocitem" href="../examples/qp/">Quadratic Program</a></li><li><a class="tocitem" href="../examples/sum_abs_k_eigenvalues/">Minimizing the sum of the k-largest λ</a></li><li><a class="tocitem" href="../examples/svm_primal/">Support Vector Machine</a></li><li><a class="tocitem" href="../examples/two_way_partitioning/">Relaxed Two-Way Partitioning Problem</a></li></ul></li><li><a class="tocitem" href="../citing/">Citing COSMO</a></li><li><a class="tocitem" href="../contributing/">Contributing</a></li><li><a class="tocitem" href="../api/">API Reference</a></li></ul><div class="docs-version-selector field has-addons"><div class="control"><span class="docs-label button is-static is-size-7">Version</span></div><div class="docs-selector control is-expanded"><div class="select is-fullwidth is-size-7"><select id="documenter-version-selector"></select></div></div></div></nav><div class="docs-main"><header class="docs-navbar"><nav class="breadcrumb"><ul class="is-hidden-mobile"><li><a class="is-disabled">User Guide</a></li><li class="is-active"><a href>Acceleration</a></li></ul><ul class="is-hidden-tablet"><li class="is-active"><a href>Acceleration</a></li></ul></nav><div class="docs-right"><a class="docs-edit-link" href="https://github.com/oxfordcontrol/COSMO.jl/blob/master/docs/src/acceleration.md" title="Edit on GitHub"><span class="docs-icon fab"></span><span class="docs-label is-hidden-touch">Edit on GitHub</span></a><a class="docs-settings-button fas fa-cog" id="documenter-settings-button" href="#" title="Settings"></a><a class="docs-sidebar-button fa fa-bars is-hidden-desktop" id="documenter-sidebar-button" href="#"></a></div></header><article class="content" id="documenter-page"><h1 id="Acceleration"><a class="docs-heading-anchor" href="#Acceleration">Acceleration</a><a id="Acceleration-1"></a><a class="docs-heading-anchor-permalink" href="#Acceleration" title="Permalink"></a></h1><p>By default COSMO&#39;s ADMM algorithm is wrapped in a safeguarded acceleration method to achieve faster convergence to higher precision. COSMO uses accelerators from the <a href="https://github.com/oxfordcontrol/COSMOAccelerators.jl">COSMOAccelerators.jl</a> package.</p><p>By default, the solver uses the accelerator type <code>AndersonAccelerator{T, Type2{QRDecomp}, RestartedMemory, NoRegularizer}</code>. This is the classic type-II Anderson acceleration method where the least squares subproblem is solved using an updated QR method. Moreover, the method is restarted, i.e. the history of iterates is deleted, after <code>mem</code> steps and no regularisation for the least-squares method is used.</p><p>In addition, the method is safeguarded (<code>safeguard = true</code>), i.e. the residual-norm of the accelerated point can not deviate too much from the current point. Otherwise, the point is discarded and the ADMM algorithm performs a normal step instead.</p><p>The acceleration method can be altered as usual via the solver settings and the <code>accelerator</code> keyword. To deactivate acceleration pass an <code>EmptyAccelerator</code>:</p><pre><code class="language-julia hljs">settings = COSMO.Settings(accelerator = EmptyAccelerator)</code></pre><p>To use the default accelerator but with a different memory size (number of stored iterates) use:</p><pre><code class="language-julia hljs">settings = COSMO.Settings(accelerator = with_options(AndersonAccelerator, mem = 15))</code></pre><p>To turn the safeguarding off use:</p><pre><code class="language-julia hljs">settings = COSMO.Settings(safeguard = false)</code></pre><p>To use an Anderson Accelerator of Type-I with a rolling-memory (oldest iterate replaced by newest) approach, use:</p><pre><code class="language-julia hljs">settings = COSMO.Settings(accelerator = AndersonAccelerator{Float64, Type1, RollingMemory, NoRegularizer})</code></pre><p>For more fine-grained control look at the implementation of the accelerator <a href="https://github.com/oxfordcontrol/COSMOAccelerators.jl/blob/master/src/anderson_accelerator.jl#L71">here</a>.</p><p>When JuMP is used, the accelerator settings can be passed in the usual way:</p><pre><code class="language-julia hljs">model = JuMP.Model(optimizer_with_attributes(COSMO.Optimizer, &quot;accelerator&quot; =&gt; with_options(AndersonAccelerator, mem = 15)))</code></pre><p>Or using the <code>set_optimizer_attribute()</code> method:</p><pre><code class="language-julia hljs">model = JuMP.Model(COSMO.Optimizer);
set_optimizer_attribute(model, &quot;accelerator&quot;, with_options(AndersonAccelerator, mem = 15))</code></pre></article><nav class="docs-footer"><a class="docs-footer-prevpage" href="../lin_solver/">« Linear System Solver</a><a class="docs-footer-nextpage" href="../literate/build/custom_cone/">Custom Cone Constraint »</a><div class="flexbox-break"></div><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> version 0.27.24 on <span class="colophon-date" title="Saturday 20 May 2023 11:07">Saturday 20 May 2023</span>. Using Julia version 1.9.0.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html>
set_optimizer_attribute(model, &quot;accelerator&quot;, with_options(AndersonAccelerator, mem = 15))</code></pre></article><nav class="docs-footer"><a class="docs-footer-prevpage" href="../lin_solver/">« Linear System Solver</a><a class="docs-footer-nextpage" href="../literate/build/custom_cone/">Custom Cone Constraint »</a><div class="flexbox-break"></div><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> version 0.27.25 on <span class="colophon-date" title="Friday 7 July 2023 08:25">Friday 7 July 2023</span>. Using Julia version 1.9.2.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html>
Loading

0 comments on commit 92e5f37

Please sign in to comment.