/
index.html
51 lines (45 loc) · 17 KB
/
index.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
<!DOCTYPE html><HTML lang="en"><head><meta charset="UTF-8"/><meta content="width=device-width, initial-scale=1.0" name="viewport"/><title>FAQ · Convex.jl</title><link href="https://fonts.googleapis.com/css?family=Lato|Roboto+Mono" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.11.2/css/fontawesome.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.11.2/css/solid.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.11.2/css/brands.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.11.1/katex.min.css" rel="stylesheet" type="text/css"/><script>documenterBaseURL=".."</script><script data-main="../assets/documenter.js" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.6/require.min.js"></script><script src="../siteinfo.js"></script><script src="../../versions.js"></script><link class="docs-theme-link" data-theme-name="documenter-dark" href="../assets/themes/documenter-dark.css" rel="stylesheet" type="text/css"/><link class="docs-theme-link" data-theme-name="documenter-light" data-theme-primary="" href="../assets/themes/documenter-light.css" rel="stylesheet" type="text/css"/><script src="../assets/themeswap.js"></script><script data-outdated-warner="">function maybeAddWarning () {
const head = document.getElementsByTagName('head')[0];
// Add a noindex meta tag (unless one exists) so that search engines don't index this version of the docs.
if (document.body.querySelector('meta[name="robots"]') === null) {
const meta = document.createElement('meta');
meta.name = 'robots';
meta.content = 'noindex';
head.appendChild(meta);
};
// Add a stylesheet to avoid inline styling
const style = document.createElement('style');
style.type = 'text/css';
style.appendChild(document.createTextNode('.outdated-warning-overlay { position: fixed; top: 0; left: 0; right: 0; box-shadow: 0 0 10px rgba(0, 0, 0, 0.3); z-index: 999; background-color: #ffaba7; color: rgba(0, 0, 0, 0.7); border-bottom: 3px solid #da0b00; padding: 10px 35px; text-align: center; font-size: 15px; } .outdated-warning-overlay .outdated-warning-closer { position: absolute; top: calc(50% - 10px); right: 18px; cursor: pointer; width: 12px; } .outdated-warning-overlay a { color: #2e63b8; } .outdated-warning-overlay a:hover { color: #363636; }'));
head.appendChild(style);
const div = document.createElement('div');
div.classList.add('outdated-warning-overlay');
const closer = document.createElement('div');
closer.classList.add('outdated-warning-closer');
// Icon by font-awesome (license: https://fontawesome.com/license, link: https://fontawesome.com/icons/times?style=solid)
closer.innerHTML = '<svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="times" class="svg-inline--fa fa-times fa-w-11" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 352 512"><path fill="currentColor" d="M242.72 256l100.07-100.07c12.28-12.28 12.28-32.19 0-44.48l-22.24-22.24c-12.28-12.28-32.19-12.28-44.48 0L176 189.28 75.93 89.21c-12.28-12.28-32.19-12.28-44.48 0L9.21 111.45c-12.28 12.28-12.28 32.19 0 44.48L109.28 256 9.21 356.07c-12.28 12.28-12.28 32.19 0 44.48l22.24 22.24c12.28 12.28 32.2 12.28 44.48 0L176 322.72l100.07 100.07c12.28 12.28 32.2 12.28 44.48 0l22.24-22.24c12.28-12.28 12.28-32.19 0-44.48L242.72 256z"></path></svg>';
closer.addEventListener('click', function () {
document.body.removeChild(div);
});
let href = '/stable';
if (window.documenterBaseURL) {
href = window.documenterBaseURL + '/../stable';
}
div.innerHTML = 'This documentation is not for the latest version. <br> <a href="' + href + '">Go to the latest documentation</a>.';
div.appendChild(closer);
document.body.appendChild(div);
};
if (document.readyState === 'loading') {
document.addEventListener('DOMContentLoaded', maybeAddWarning);
} else {
maybeAddWarning();
};
</script></head><body><div id="documenter"><nav class="docs-sidebar"><div class="docs-package-name"><span class="docs-autofit">Convex.jl</span></div><form action="../search/" class="docs-search"><input class="docs-search-query" id="documenter-search-query" name="q" placeholder="Search docs" type="text"/></form><ul class="docs-menu"><li><a class="tocitem" href="../">Home</a></li><li><a class="tocitem" href="../installation/">Installation</a></li><li><a class="tocitem" href="../quick_tutorial/">Quick Tutorial</a></li><li><a class="tocitem" href="../types/">Basic Types</a></li><li><a class="tocitem" href="../operations/">Supported Operations</a></li><li><a class="tocitem" href="../complex-domain_optimization/">Complex-domain Optimization</a></li><li><a class="tocitem" href="../solvers/">Solvers</a></li><li class="is-active"><a class="tocitem" href="">FAQ</a><ul class="internal"><li><a class="tocitem" href="#Where-can-I-get-help?-1"><span>Where can I get help?</span></a></li><li><a class="tocitem" href="#How-does-Convex.jl-differ-from-JuMP?-1"><span>How does Convex.jl differ from JuMP?</span></a></li><li><a class="tocitem" href="#Where-can-I-learn-more-about-Convex-Optimization?-1"><span>Where can I learn more about Convex Optimization?</span></a></li><li><a class="tocitem" href="#Are-there-similar-packages-available-in-other-languages?-1"><span>Are there similar packages available in other languages?</span></a></li><li><a class="tocitem" href="#How-does-Convex.jl-work?-1"><span>How does Convex.jl work?</span></a></li><li><a class="tocitem" href="#How-do-I-cite-this-package?-1"><span>How do I cite this package?</span></a></li></ul></li><li><a class="tocitem" href="../advanced/">Advanced</a></li><li><a class="tocitem" href="../problem_depot/">Problem Depot</a></li><li><a class="tocitem" href="../contributing/">Contributing</a></li><li><a class="tocitem" href="../credits/">Credits</a></li><li><a class="tocitem" href="../reference/">Reference</a></li><li><span class="tocitem">Examples</span><ul><li><input class="collapse-toggle" id="menuitem-14-1" type="checkbox"/><label class="tocitem" for="menuitem-14-1"><span class="docs-label">General examples</span><i class="docs-chevron"></i></label><ul class="collapsed"><li><a class="tocitem" href="../examples/general_examples/DCP_analysis/">DCP analysis</a></li><li><a class="tocitem" href="../examples/general_examples/basic_usage/">Basic Usage</a></li><li><a class="tocitem" href="../examples/general_examples/chebyshev_center/">Chebyshev center</a></li><li><a class="tocitem" href="../examples/general_examples/control/">Control</a></li><li><a class="tocitem" href="../examples/general_examples/huber_regression/">Huber regression</a></li><li><a class="tocitem" href="../examples/general_examples/logistic_regression/">Logistic regression</a></li><li><a class="tocitem" href="../examples/general_examples/max_entropy/">Entropy Maximization</a></li><li><a class="tocitem" href="../examples/general_examples/optimal_advertising/">Optimal advertising</a></li><li><a class="tocitem" href="../examples/general_examples/robust_approx_fitting/">Robust approximate fitting</a></li><li><a class="tocitem" href="../examples/general_examples/svm/">Support vector machine</a></li><li><a class="tocitem" href="../examples/general_examples/svm_l1regularization/">SVM with L^1 regularization</a></li><li><a class="tocitem" href="../examples/general_examples/trade_off_curves/">Trade-off curves</a></li><li><a class="tocitem" href="../examples/general_examples/worst_case_analysis/">Worst case risk analysis</a></li></ul></li><li><input class="collapse-toggle" id="menuitem-14-2" type="checkbox"/><label class="tocitem" for="menuitem-14-2"><span class="docs-label">Mixed integer</span><i class="docs-chevron"></i></label><ul class="collapsed"><li><a class="tocitem" href="../examples/mixed_integer/binary_knapsack/">Binary (or 0-1) knapsack problem</a></li><li><a class="tocitem" href="../examples/mixed_integer/n_queens/">N queens</a></li><li><a class="tocitem" href="../examples/mixed_integer/section_allocation/">Section Allocation</a></li></ul></li><li><input class="collapse-toggle" id="menuitem-14-3" type="checkbox"/><label class="tocitem" for="menuitem-14-3"><span class="docs-label">Optimization with complex variables</span><i class="docs-chevron"></i></label><ul class="collapsed"><li><a class="tocitem" href="../examples/optimization_with_complex_variables/Fidelity in Quantum Information Theory/">Fidelity in quantum information theory</a></li><li><a class="tocitem" href="../examples/optimization_with_complex_variables/phase_recovery_using_MaxCut/">Phase recovery using MaxCut</a></li><li><a class="tocitem" href="../examples/optimization_with_complex_variables/povm_simulation/">POVM simulation</a></li><li><a class="tocitem" href="../examples/optimization_with_complex_variables/power_flow_optimization/">Power flow optimization</a></li></ul></li><li><input class="collapse-toggle" id="menuitem-14-4" type="checkbox"/><label class="tocitem" for="menuitem-14-4"><span class="docs-label">Portfolio optimization</span><i class="docs-chevron"></i></label><ul class="collapsed"><li><a class="tocitem" href="../examples/portfolio_optimization/portfolio_optimization/">Portfolio Optimization</a></li><li><a class="tocitem" href="../examples/portfolio_optimization/portfolio_optimization2/">Portfolio Optimization - Markowitz Efficient Frontier</a></li></ul></li><li><input class="collapse-toggle" id="menuitem-14-5" type="checkbox"/><label class="tocitem" for="menuitem-14-5"><span class="docs-label">Supplemental material</span><i class="docs-chevron"></i></label><ul class="collapsed"><li><a class="tocitem" href="../examples/supplemental_material/Convex.jl_intro_ISMP2015/">Convex Optimization in Julia</a></li><li><a class="tocitem" href="../examples/supplemental_material/paper_examples/">Paper examples</a></li></ul></li><li><input class="collapse-toggle" id="menuitem-14-6" type="checkbox"/><label class="tocitem" for="menuitem-14-6"><span class="docs-label">Time series</span><i class="docs-chevron"></i></label><ul class="collapsed"><li><a class="tocitem" href="../examples/time_series/time_series/">Time Series Analysis</a></li></ul></li><li><input class="collapse-toggle" id="menuitem-14-7" type="checkbox"/><label class="tocitem" for="menuitem-14-7"><span class="docs-label">Tomography</span><i class="docs-chevron"></i></label><ul class="collapsed"><li><a class="tocitem" href="../examples/tomography/tomography/">Tomography</a></li></ul></li></ul></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 class="is-active"><a href="">FAQ</a></li></ul><ul class="is-hidden-tablet"><li class="is-active"><a href="">FAQ</a></li></ul></nav><div class="docs-right"><a class="docs-edit-link" href="https://github.com/jump-dev/Convex.jl/blob/master/docs/src/faq.md#L" 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" href="#" id="documenter-settings-button" title="Settings"></a><a class="docs-sidebar-button fa fa-bars is-hidden-desktop" href="#" id="documenter-sidebar-button"></a></div></header><article class="content" id="documenter-page"><h1 id="FAQ-1"><a class="docs-heading-anchor" href="#FAQ-1">FAQ</a><a class="docs-heading-anchor-permalink" href="#FAQ-1" title="Permalink"></a></h1><h2 id="Where-can-I-get-help?-1"><a class="docs-heading-anchor" href="#Where-can-I-get-help?-1">Where can I get help?</a><a class="docs-heading-anchor-permalink" href="#Where-can-I-get-help?-1" title="Permalink"></a></h2><p>For usage questions, please contact us via the <a href="https://discourse.julialang.org/c/domain/opt">Julia Discourse</a>. If you're running into bugs or have feature requests, please use the <a href="https://github.com/JuliaOpt/Convex.jl/issues">Github Issue Tracker</a>.</p><h2 id="How-does-Convex.jl-differ-from-JuMP?-1"><a class="docs-heading-anchor" href="#How-does-Convex.jl-differ-from-JuMP?-1">How does Convex.jl differ from JuMP?</a><a class="docs-heading-anchor-permalink" href="#How-does-Convex.jl-differ-from-JuMP?-1" title="Permalink"></a></h2><p>Convex.jl and JuMP are both modelling languages for mathematical programming embedded in Julia, and both interface with solvers via MathOptInterface, so many of the same solvers are available in both. Convex.jl converts problems to a standard conic form. This approach requires (and certifies) that the problem is convex and DCP compliant, and guarantees global optimality of the resulting solution. JuMP allows nonlinear programming through an interface that learns about functions via their derivatives. This approach is more flexible (for example, you can optimize non-convex functions), but can't guarantee global optimality if your function is not convex, or warn you if you've entered a non-convex formulation.</p><p>For linear programming, the difference is more stylistic. JuMP's syntax is scalar-based and similar to AMPL and GAMS making it easy and fast to create constraints by indexing and summation (like <code>sum{x[i], i=1:numLocation}</code>). Convex.jl allows (and prioritizes) linear algebraic and functional constructions (like <code>max(x,y) < A*z</code>); indexing and summation are also supported in Convex.jl, but are somewhat slower than in JuMP. JuMP also lets you efficiently solve a sequence of problems when new constraints are added or when coefficients are modified, whereas Convex.jl parses the problem again whenever the [solve!]{.title-ref} method is called.</p><h2 id="Where-can-I-learn-more-about-Convex-Optimization?-1"><a class="docs-heading-anchor" href="#Where-can-I-learn-more-about-Convex-Optimization?-1">Where can I learn more about Convex Optimization?</a><a class="docs-heading-anchor-permalink" href="#Where-can-I-learn-more-about-Convex-Optimization?-1" title="Permalink"></a></h2><p>See the freely available book <a href="http://web.stanford.edu/~boyd/cvxbook/">Convex Optimization</a> by Boyd and Vandenberghe for general background on convex optimization. For help understanding the rules of Disciplined Convex Programming, we recommend this <a href="http://dcp.stanford.edu/">DCP tutorial website</a>.</p><h2 id="Are-there-similar-packages-available-in-other-languages?-1"><a class="docs-heading-anchor" href="#Are-there-similar-packages-available-in-other-languages?-1">Are there similar packages available in other languages?</a><a class="docs-heading-anchor-permalink" href="#Are-there-similar-packages-available-in-other-languages?-1" title="Permalink"></a></h2><p>Indeed! You might use <a href="http://www.cvxpy.org">CVXPY</a> in Python, or <a href="http://cvxr.com/">CVX</a> in Matlab.</p><h2 id="How-does-Convex.jl-work?-1"><a class="docs-heading-anchor" href="#How-does-Convex.jl-work?-1">How does Convex.jl work?</a><a class="docs-heading-anchor-permalink" href="#How-does-Convex.jl-work?-1" title="Permalink"></a></h2><p>For a detailed discussion of how Convex.jl works, see <a href="http://www.arxiv.org/abs/1410.4821">our paper</a>.</p><h2 id="How-do-I-cite-this-package?-1"><a class="docs-heading-anchor" href="#How-do-I-cite-this-package?-1">How do I cite this package?</a><a class="docs-heading-anchor-permalink" href="#How-do-I-cite-this-package?-1" title="Permalink"></a></h2><p>If you use Convex.jl for published work, we encourage you to cite the software using the following BibTeX citation: :</p><pre><code class="language-none">@article{convexjl,
title = {Convex Optimization in {J}ulia},
author ={Udell, Madeleine and Mohan, Karanveer and Zeng, David and Hong, Jenny and Diamond, Steven and Boyd, Stephen},
year = {2014},
journal = {SC14 Workshop on High Performance Technical Computing in Dynamic Languages},
archivePrefix = "arXiv",
eprint = {1410.4821},
primaryClass = "math-oc",
}</code></pre></article><nav class="docs-footer"><a class="docs-footer-prevpage" href="../solvers/">« Solvers</a><a class="docs-footer-nextpage" href="../advanced/">Advanced »</a></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></p><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option></select></div><p></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> on <span class="colophon-date" title="Tuesday 25 August 2020 03:49">Tuesday 25 August 2020</span>. Using Julia version 1.0.5.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></HTML>