From fceecc7dfd5b8e8a914421f8fd9ed86356e46c16 Mon Sep 17 00:00:00 2001 From: "Documenter.jl" Date: Fri, 8 Nov 2024 19:08:53 +0000 Subject: [PATCH] build based on e66396f --- dev/.documenter-siteinfo.json | 2 +- dev/JuMP.pdf | Bin 6311474 -> 6310445 bytes dev/api/JuMP.Containers/index.html | 30 +- dev/api/JuMP/index.html | 556 +- .../algebraic_modeling_languages/index.html | 2 +- dev/background/bibliography/index.html | 2 +- dev/changelog/index.html | 8 +- dev/developers/checklists/index.html | 2 +- dev/developers/contributing/index.html | 2 +- .../custom_solver_binaries/index.html | 2 +- dev/developers/extensions/index.html | 2 +- dev/developers/roadmap/index.html | 2 +- dev/developers/style/index.html | 2 +- dev/extensions/DimensionalData/index.html | 2 +- dev/extensions/introduction/index.html | 2 +- dev/index.html | 2 +- dev/installation/index.html | 2 +- dev/manual/callbacks/index.html | 2 +- dev/manual/complex/index.html | 2 +- dev/manual/constraints/index.html | 2 +- dev/manual/containers/index.html | 2 +- dev/manual/expressions/index.html | 2 +- dev/manual/models/index.html | 2 +- dev/manual/nlp/index.html | 2 +- dev/manual/nonlinear/index.html | 2 +- dev/manual/objective/index.html | 2 +- dev/manual/solutions/index.html | 7 +- dev/manual/variables/index.html | 2 +- dev/moi/background/duality/index.html | 2 +- .../infeasibility_certificates/index.html | 2 +- dev/moi/background/motivation/index.html | 2 +- .../background/naming_conventions/index.html | 2 +- dev/moi/changelog/index.html | 2 +- dev/moi/developer/checklists/index.html | 2 +- dev/moi/index.html | 2 +- dev/moi/manual/constraints/index.html | 2 +- dev/moi/manual/models/index.html | 2 +- dev/moi/manual/modification/index.html | 2 +- dev/moi/manual/solutions/index.html | 2 +- dev/moi/manual/standard_form/index.html | 2 +- dev/moi/manual/variables/index.html | 2 +- dev/moi/reference/callbacks/index.html | 2 +- dev/moi/reference/constraints/index.html | 2 +- dev/moi/reference/errors/index.html | 2 +- dev/moi/reference/models/index.html | 4 +- dev/moi/reference/modification/index.html | 2 +- dev/moi/reference/nonlinear/index.html | 2 +- dev/moi/reference/standard_form/index.html | 2 +- dev/moi/reference/variables/index.html | 2 +- dev/moi/release_notes/index.html | 2 +- .../submodules/Benchmarks/overview/index.html | 2 +- .../Benchmarks/reference/index.html | 2 +- .../Bridges/implementation/index.html | 2 +- .../Bridges/list_of_bridges/index.html | 2 +- .../submodules/Bridges/overview/index.html | 2 +- .../submodules/Bridges/reference/index.html | 2 +- .../FileFormats/overview/index.html | 2 +- .../FileFormats/reference/index.html | 2 +- .../submodules/Nonlinear/overview/index.html | 2 +- .../submodules/Nonlinear/reference/index.html | 2 +- dev/moi/submodules/Test/overview/index.html | 2 +- dev/moi/submodules/Test/reference/index.html | 2 +- .../submodules/Utilities/overview/index.html | 2 +- .../submodules/Utilities/reference/index.html | 4 +- .../tutorials/bridging_constraint/index.html | 2 +- dev/moi/tutorials/example/index.html | 2 +- dev/moi/tutorials/implementing/index.html | 2 +- dev/moi/tutorials/latency/index.html | 2 +- .../manipulating_expressions/index.html | 2 +- dev/moi/tutorials/mathprogbase/index.html | 2 +- dev/objects.inv | Bin 52849 -> 52921 bytes dev/packages/Alpine/index.html | 2 +- dev/packages/AmplNLWriter/index.html | 2 +- dev/packages/BARON/index.html | 2 +- dev/packages/BilevelJuMP/index.html | 2 +- dev/packages/CDCS/index.html | 2 +- dev/packages/CDDLib/index.html | 2 +- dev/packages/COPT/index.html | 2 +- dev/packages/COSMO/index.html | 2 +- dev/packages/CPLEX/index.html | 2 +- dev/packages/CSDP/index.html | 2 +- dev/packages/Cbc/index.html | 2 +- dev/packages/Clarabel/index.html | 2 +- dev/packages/Clp/index.html | 2 +- dev/packages/DAQP/index.html | 2 +- dev/packages/DSDP/index.html | 2 +- dev/packages/DiffOpt/index.html | 2 +- .../DisjunctiveProgramming/index.html | 2 +- dev/packages/Dualization/index.html | 2 +- dev/packages/EAGO/index.html | 4 +- dev/packages/ECOS/index.html | 2 +- dev/packages/GAMS/index.html | 2 +- dev/packages/GLPK/index.html | 2 +- dev/packages/Gurobi/index.html | 2 +- dev/packages/HiGHS/index.html | 5 +- dev/packages/Hypatia/index.html | 2 +- dev/packages/InfiniteOpt/index.html | 2 +- dev/packages/Ipopt/index.html | 4 +- dev/packages/Juniper/index.html | 2 +- dev/packages/KNITRO/index.html | 2 +- dev/packages/Loraine/index.html | 2 +- dev/packages/MAiNGO/index.html | 2 +- dev/packages/MadNLP/index.html | 2 +- dev/packages/Manopt/index.html | 2 +- dev/packages/MathOptAI/index.html | 4 +- dev/packages/MathOptSymbolicAD/index.html | 2 +- dev/packages/MiniZinc/index.html | 2 +- dev/packages/MosekTools/index.html | 2 +- .../MultiObjectiveAlgorithms/index.html | 2 +- dev/packages/NEOSServer/index.html | 2 +- dev/packages/NLopt/index.html | 2 +- dev/packages/OSQP/index.html | 2 +- dev/packages/Optim/index.html | 2 +- dev/packages/PATHSolver/index.html | 2 +- dev/packages/Pajarito/index.html | 2 +- .../ParametricOptInterface/index.html | 2 +- dev/packages/Pavito/index.html | 2 +- dev/packages/Percival/index.html | 2 +- dev/packages/PiecewiseLinearOpt/index.html | 2 +- dev/packages/Plasmo/index.html | 4 +- dev/packages/PolyJuMP/index.html | 2 +- dev/packages/ProxSDP/index.html | 2 +- dev/packages/SCIP/index.html | 16 +- dev/packages/SCS/index.html | 2 +- dev/packages/SDDP/index.html | 2 +- dev/packages/SDPA/index.html | 5 +- dev/packages/SDPLR/index.html | 2 +- dev/packages/SDPNAL/index.html | 2 +- dev/packages/SDPT3/index.html | 2 +- dev/packages/SeDuMi/index.html | 2 +- dev/packages/SumOfSquares/index.html | 2 +- dev/packages/Tulip/index.html | 2 +- dev/packages/Xpress/index.html | 2 +- dev/packages/solvers/index.html | 2 +- dev/release_notes/index.html | 8 +- dev/search_index.js | 2 +- dev/should_i_use/index.html | 2 +- .../benders_decomposition/index.html | 4 +- .../{ebd27be9.svg => 08e60219.svg} | 1002 +- .../{aeda3210.svg => 42152113.svg} | 670 +- .../index.html | 12 +- .../algorithms/parallelism/index.html | 2 +- dev/tutorials/algorithms/pdhg/index.html | 8 +- .../{d6014a50.svg => 41a50a1c.svg} | 650 +- .../{01055333.svg => f4ad87cf.svg} | 132 +- .../{577031d6.svg => f9cf1115.svg} | 200 +- .../algorithms/rolling_horizon/index.html | 4 +- .../{70805bb8.svg => af578ce8.svg} | 142 +- .../{372a46ae.svg => ce189cf5.svg} | 142 +- .../tsp_lazy_constraints/index.html | 6 +- .../optimal_power_flow/index.html | 6 +- .../{6e437519.svg => 09638cb1.svg} | 56 +- .../{373f4e36.svg => 10535846.svg} | 120 +- .../{ca423cf9.svg => 789f0399.svg} | 124 +- .../applications/power_systems/index.html | 10 +- .../two_stage_stochastic/23d9bc10.svg | 76 + .../two_stage_stochastic/269b0a7f.svg | 80 + .../two_stage_stochastic/95c6cac3.svg | 106 - .../two_stage_stochastic/b22dee81.svg | 99 + .../two_stage_stochastic/b927c891.svg | 76 - .../two_stage_stochastic/e989c7df.svg | 100 - .../two_stage_stochastic/ee4d8b6c.svg | 80 - .../two_stage_stochastic/fe3137a7.svg | 108 + .../two_stage_stochastic/index.html | 62 +- dev/tutorials/applications/web_app/index.html | 2 +- .../conic/arbitrary_precision/index.html | 4 +- dev/tutorials/conic/dualization/index.html | 50 +- .../{8fbb6975.svg => 8864c81a.svg} | 4856 +- .../{d8ee7891.svg => c4d4cf9a.svg} | 4854 +- dev/tutorials/conic/ellipse_approx/index.html | 12 +- .../conic/experiment_design/index.html | 2 +- dev/tutorials/conic/introduction/index.html | 2 +- .../conic/logistic_regression/index.html | 2 +- .../{b6fb0a70.svg => 71863a67.svg} | 70 +- .../{ffb3ad5c.svg => d5a4f8ac.svg} | 76 +- dev/tutorials/conic/min_ellipse/index.html | 6 +- .../conic/quantum_discrimination/index.html | 6 +- .../{bba5d9b2.svg => f9f05fc3.svg} | 70 +- .../conic/simple_examples/index.html | 4 +- dev/tutorials/conic/start_values/index.html | 16 +- .../conic/tips_and_tricks/index.html | 2 +- .../getting_started/debugging/index.html | 2 +- .../index.html | 2 +- .../getting_started_with_JuMP/index.html | 2 +- .../{812a798e.svg => 0634a61d.svg} | 94 +- .../{a03293c2.svg => 9e200c8d.svg} | 88 +- .../{9cc48433.svg => e8ea069f.svg} | 118 +- .../index.html | 10 +- .../getting_started_with_julia/index.html | 10 +- .../index.html | 2 +- .../getting_started/introduction/index.html | 2 +- .../performance_tips/index.html | 2 +- .../getting_started/sum_if/28d70fcc.svg | 57 - .../sum_if/{f6a18225.svg => 64cdf892.svg} | 108 +- .../getting_started/sum_if/7b4e37cd.svg | 57 + .../getting_started/sum_if/index.html | 8 +- .../getting_started/tolerances/index.html | 64 +- dev/tutorials/linear/basis/index.html | 4 +- dev/tutorials/linear/callbacks/index.html | 2 +- dev/tutorials/linear/cannery/index.html | 4 +- .../linear/constraint_programming/index.html | 2 +- dev/tutorials/linear/diet/index.html | 8 +- .../{1445cb3c.svg => 20b07bc7.svg} | 94 +- .../{1a0211b9.svg => 2e8cda3b.svg} | 84 +- .../{a9ae8e88.svg => 579492da.svg} | 108 +- .../{5786c57a.svg => 68d90bc9.svg} | 108 +- .../linear/facility_location/index.html | 8 +- .../{4523bbdf.svg => 36e4eb31.svg} | 292 +- .../{59fd28e6.svg => e1d81429.svg} | 296 +- .../{c9ce37fd.svg => ec4d6145.svg} | 124 +- .../linear/factory_schedule/index.html | 6 +- dev/tutorials/linear/finance/index.html | 2 +- .../linear/geographic_clustering/index.html | 2 +- dev/tutorials/linear/introduction/index.html | 2 +- dev/tutorials/linear/knapsack/index.html | 4 +- .../linear/lp_sensitivity/index.html | 6 +- dev/tutorials/linear/mip_duality/index.html | 2 +- dev/tutorials/linear/multi/index.html | 6 +- .../linear/multi_commodity_network/index.html | 4 +- .../multi_objective_examples/index.html | 19 +- .../{af438f46.svg => a9cbe7de.svg} | 78 +- .../{ce75559e.svg => b2801176.svg} | 80 +- .../multi_objective_knapsack/index.html | 12 +- dev/tutorials/linear/n-queens/index.html | 2 +- dev/tutorials/linear/network_flows/index.html | 2 +- .../{bdd2195e.svg => 08f41419.svg} | 66 +- .../{4d0fba8e.svg => 12bbc698.svg} | 66 +- .../{debc3f8e.svg => 1ce7d2b5.svg} | 56 +- .../{82e031ef.svg => 1ea2d4e3.svg} | 96 +- .../{9d11737b.svg => 89b2ef53.svg} | 96 +- .../{e7f4c48d.svg => 939c5d97.svg} | 58 +- .../{367303f2.svg => b3937faf.svg} | 92 +- .../{432e869a.svg => cd4d8f2c.svg} | 100 +- .../{1ea41afa.svg => ce7e5fe2.svg} | 60 +- .../{9e3eba8e.svg => db2a0b29.svg} | 62 +- .../{41b418f7.svg => df88a6ab.svg} | 90 +- .../{c5fa864b.svg => f0a8a5f7.svg} | 70 +- .../linear/piecewise_linear/index.html | 24 +- dev/tutorials/linear/sudoku/index.html | 2 +- .../linear/tips_and_tricks/index.html | 2 +- dev/tutorials/linear/transp/index.html | 2 +- .../{4b808035.svg => 15b373c9.svg} | 1056 +- .../{6c5a27ee.svg => 234adf97.svg} | 1070 +- .../{2f324d84.svg => 513547d0.svg} | 254 +- .../{01432ca0.svg => 9c4954a1.svg} | 1072 +- .../{e7b24074.svg => a0cd4aff.svg} | 2054 +- .../{e0686916.svg => a1e44493.svg} | 41796 ++++++++-------- .../{7f440fd7.svg => a6988fcc.svg} | 1058 +- .../{7ddb20d1.svg => d789805c.svg} | 256 +- .../{b350381d.svg => db43db7c.svg} | 1056 +- .../nonlinear/classifiers/index.html | 18 +- .../nonlinear/complementarity/index.html | 4 +- .../nonlinear/introduction/index.html | 2 +- .../nonlinear/nested_problems/index.html | 6 +- .../nonlinear/operator_ad/index.html | 2 +- .../portfolio/{f7086399.svg => 3d410b28.svg} | 1126 +- dev/tutorials/nonlinear/portfolio/index.html | 7 +- .../nonlinear/querying_hessians/index.html | 2 +- .../{1b3afdab.svg => c3c9930c.svg} | 206 +- .../nonlinear/rocket_control/index.html | 4 +- .../nonlinear/simple_examples/index.html | 4 +- .../{23739c64.svg => 2acc6738.svg} | 294 +- .../{162f96d2.svg => 57ae26ad.svg} | 66 +- .../{d5b25d73.svg => 5f16ba81.svg} | 148 +- .../index.html | 6 +- .../nonlinear/tips_and_tricks/index.html | 2 +- .../user_defined_hessians/index.html | 4 +- .../transitioning_from_matlab/index.html | 4 +- 268 files changed, 34752 insertions(+), 34766 deletions(-) rename dev/tutorials/algorithms/cutting_stock_column_generation/{ebd27be9.svg => 08e60219.svg} (69%) rename dev/tutorials/algorithms/cutting_stock_column_generation/{aeda3210.svg => 42152113.svg} (72%) rename dev/tutorials/algorithms/rolling_horizon/{d6014a50.svg => 41a50a1c.svg} (87%) rename dev/tutorials/algorithms/rolling_horizon/{01055333.svg => f4ad87cf.svg} (90%) rename dev/tutorials/algorithms/rolling_horizon/{577031d6.svg => f9cf1115.svg} (86%) rename dev/tutorials/algorithms/tsp_lazy_constraints/{70805bb8.svg => af578ce8.svg} (80%) rename dev/tutorials/algorithms/tsp_lazy_constraints/{372a46ae.svg => ce189cf5.svg} (80%) rename dev/tutorials/applications/power_systems/{6e437519.svg => 09638cb1.svg} (85%) rename dev/tutorials/applications/power_systems/{373f4e36.svg => 10535846.svg} (86%) rename dev/tutorials/applications/power_systems/{ca423cf9.svg => 789f0399.svg} (86%) create mode 100644 dev/tutorials/applications/two_stage_stochastic/23d9bc10.svg create mode 100644 dev/tutorials/applications/two_stage_stochastic/269b0a7f.svg delete mode 100644 dev/tutorials/applications/two_stage_stochastic/95c6cac3.svg create mode 100644 dev/tutorials/applications/two_stage_stochastic/b22dee81.svg delete mode 100644 dev/tutorials/applications/two_stage_stochastic/b927c891.svg delete mode 100644 dev/tutorials/applications/two_stage_stochastic/e989c7df.svg delete mode 100644 dev/tutorials/applications/two_stage_stochastic/ee4d8b6c.svg create mode 100644 dev/tutorials/applications/two_stage_stochastic/fe3137a7.svg rename dev/tutorials/conic/ellipse_approx/{8fbb6975.svg => 8864c81a.svg} (57%) rename dev/tutorials/conic/ellipse_approx/{d8ee7891.svg => c4d4cf9a.svg} (57%) rename dev/tutorials/conic/min_ellipse/{b6fb0a70.svg => 71863a67.svg} (88%) rename dev/tutorials/conic/min_ellipse/{ffb3ad5c.svg => d5a4f8ac.svg} (88%) rename dev/tutorials/conic/simple_examples/{bba5d9b2.svg => f9f05fc3.svg} (79%) rename dev/tutorials/getting_started/getting_started_with_data_and_plotting/{812a798e.svg => 0634a61d.svg} (84%) rename dev/tutorials/getting_started/getting_started_with_data_and_plotting/{a03293c2.svg => 9e200c8d.svg} (85%) rename dev/tutorials/getting_started/getting_started_with_data_and_plotting/{9cc48433.svg => e8ea069f.svg} (82%) delete mode 100644 dev/tutorials/getting_started/sum_if/28d70fcc.svg rename dev/tutorials/getting_started/sum_if/{f6a18225.svg => 64cdf892.svg} (60%) create mode 100644 dev/tutorials/getting_started/sum_if/7b4e37cd.svg rename dev/tutorials/linear/facility_location/{1445cb3c.svg => 20b07bc7.svg} (81%) rename dev/tutorials/linear/facility_location/{1a0211b9.svg => 2e8cda3b.svg} (80%) rename dev/tutorials/linear/facility_location/{a9ae8e88.svg => 579492da.svg} (79%) rename dev/tutorials/linear/facility_location/{5786c57a.svg => 68d90bc9.svg} (79%) rename dev/tutorials/linear/factory_schedule/{4523bbdf.svg => 36e4eb31.svg} (78%) rename dev/tutorials/linear/factory_schedule/{59fd28e6.svg => e1d81429.svg} (78%) rename dev/tutorials/linear/factory_schedule/{c9ce37fd.svg => ec4d6145.svg} (85%) rename dev/tutorials/linear/multi_objective_knapsack/{af438f46.svg => a9cbe7de.svg} (87%) rename dev/tutorials/linear/multi_objective_knapsack/{ce75559e.svg => b2801176.svg} (83%) rename dev/tutorials/linear/piecewise_linear/{bdd2195e.svg => 08f41419.svg} (94%) rename dev/tutorials/linear/piecewise_linear/{4d0fba8e.svg => 12bbc698.svg} (82%) rename dev/tutorials/linear/piecewise_linear/{debc3f8e.svg => 1ce7d2b5.svg} (86%) rename dev/tutorials/linear/piecewise_linear/{82e031ef.svg => 1ea2d4e3.svg} (80%) rename dev/tutorials/linear/piecewise_linear/{9d11737b.svg => 89b2ef53.svg} (92%) rename dev/tutorials/linear/piecewise_linear/{e7f4c48d.svg => 939c5d97.svg} (85%) rename dev/tutorials/linear/piecewise_linear/{367303f2.svg => b3937faf.svg} (82%) rename dev/tutorials/linear/piecewise_linear/{432e869a.svg => cd4d8f2c.svg} (84%) rename dev/tutorials/linear/piecewise_linear/{1ea41afa.svg => ce7e5fe2.svg} (81%) rename dev/tutorials/linear/piecewise_linear/{9e3eba8e.svg => db2a0b29.svg} (85%) rename dev/tutorials/linear/piecewise_linear/{41b418f7.svg => df88a6ab.svg} (78%) rename dev/tutorials/linear/piecewise_linear/{c5fa864b.svg => f0a8a5f7.svg} (86%) rename dev/tutorials/nonlinear/classifiers/{4b808035.svg => 15b373c9.svg} (62%) rename dev/tutorials/nonlinear/classifiers/{6c5a27ee.svg => 234adf97.svg} (62%) rename dev/tutorials/nonlinear/classifiers/{2f324d84.svg => 513547d0.svg} (73%) rename dev/tutorials/nonlinear/classifiers/{01432ca0.svg => 9c4954a1.svg} (63%) rename dev/tutorials/nonlinear/classifiers/{e7b24074.svg => a0cd4aff.svg} (62%) rename dev/tutorials/nonlinear/classifiers/{e0686916.svg => a1e44493.svg} (69%) rename dev/tutorials/nonlinear/classifiers/{7f440fd7.svg => a6988fcc.svg} (62%) rename dev/tutorials/nonlinear/classifiers/{7ddb20d1.svg => d789805c.svg} (73%) rename dev/tutorials/nonlinear/classifiers/{b350381d.svg => db43db7c.svg} (62%) rename dev/tutorials/nonlinear/portfolio/{f7086399.svg => 3d410b28.svg} (79%) rename dev/tutorials/nonlinear/rocket_control/{1b3afdab.svg => c3c9930c.svg} (89%) rename dev/tutorials/nonlinear/space_shuttle_reentry_trajectory/{23739c64.svg => 2acc6738.svg} (88%) rename dev/tutorials/nonlinear/space_shuttle_reentry_trajectory/{162f96d2.svg => 57ae26ad.svg} (87%) rename dev/tutorials/nonlinear/space_shuttle_reentry_trajectory/{d5b25d73.svg => 5f16ba81.svg} (88%) diff --git a/dev/.documenter-siteinfo.json b/dev/.documenter-siteinfo.json index c575af8ba2f..476eb71893c 100644 --- a/dev/.documenter-siteinfo.json +++ b/dev/.documenter-siteinfo.json @@ -1 +1 @@ -{"documenter":{"julia_version":"1.11.1","generation_timestamp":"2024-11-07T20:15:11","documenter_version":"1.7.0"}} \ No newline at end of file +{"documenter":{"julia_version":"1.11.1","generation_timestamp":"2024-11-08T18:45:30","documenter_version":"1.7.0"}} \ No newline at end of file diff --git a/dev/JuMP.pdf b/dev/JuMP.pdf index a6ba98e1b765300c8e92fbad07982038371b36f5..7daab5bf79ea88e2c00c091f950c6b16dfff9e9a 100644 GIT binary patch delta 2409406 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

e3$9YATB%6!=WKa)tz7 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

~{QEQ^-bG7CB;tMN_-&72N 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 N3bbwsfVw_n9xjI(eOR0D@WgQqkLWqzCuE=N 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 z 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≈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%0A8%}5WfYKP<4(Wgo$laBaO0YD=?NTt#5DAA> z(5Y-S%*c_Xe=w+fj*~zhRYgJ0{I!bT+^OFc8Y6&Pn~t-R^IUD&WC0-U>RHwgGgrx{ zgqI}Kd6k~iCpam<`3v;PTC>a^aDlMVx@&Xi>v^4by9Q_I3)L02<>lH5%{k%Kz%6J= z&$P!W*+@u5H@;kKSEXQm`_b(O)amCEj#^kXSRuRTe^ng0Ew*mpXr>xe$kiOG0R{5o zai*P6R{d<8wYy#!bhr7v6@z%}661P_;B|;L z7jbp0Uxa}x%`xP(;Lo6yd>T%V+t<2pbEl4*87pK30@kHf=q;k=*f+8cS1*p5C7E?C zUxw#8e?M3A=can@Y*{(@^#^zX`#XC5v%R3*^`pF?<$BNybmIkA#$hh0!pN?Z;1oW? zOmI*F$;-FZURdpigTGwwXxV+cgXrryS|cns{=JN!_g%MLeXUtM3hM`8oJu|33GS^v zz%D4myQksI3f>h25xB=yaK<)ewL+oopvm_He?f?Ey6PaPFAstn&53Xa)yj_!cU}n% z?k7jPcGC|Eb}iF`vCiyee7YvvlaQ>5PM8zEZNp0x)h*5-SoJUK>P{!yZidcxb_|_e zzBBappLs_bF$`#dUecnU>!r&s+%qmO3@?cbC#6Rvr0Z4ij-CL~2t?O2yuKws3jgQT zTf^o=SVkh@$o3e!9IU8OpfM%GpckOF3BOC9_D#df+s*#~Ek<_Cmr)Ec69GAwF^(w| z0W+7;QY$ByyDB}Ke-8WKo`2rRGH5A+jkocKKRrHgzHPV))@Y%0_wv4p?FdSM*PW)9 z!F1pM=w3HpIMXIdQkVSC$nN`F$69_VHuR2cD6KVSWJ4v%u-I7}1jJX_hWH?*A-(X4 zF47&N4HVPSI+CEEQ&CnDJZd4qBvs8yMWO}6rD~cjBE|S&)F-TmIxM9&tKJB-87Nbn%QcL11FxsyEOPY;Ze(7au@B+!SOr~hT$Xvr&(VRT=j2q<7)}KgvVhR2f16t>&XBwl1(f|(hh&8&d#~*7 zhf0v!snJJ=7utBE9S(6!?R{~EQ3F@`&yUuP zM>&^nng_4B|i(J?G+ak}6c#P<#*3l#Dz<3;S zh42+&e>^!mKiVUFCaX*eP6RU?v#%Z4w|^V$kRi#?4yC19@-DwQW{1LUWQPoGP~$E` zmek*8s<ttd% zg$uAZ3P~%0b6j{vC>Wh{bw^M&twZwbD_A_^^A!zVaQbLQ~yB#m`ZT(&v09atdjq z(ZcB-X{X*5(_kBI;X6k11LV}>C`1K^ijI106AJ!OW%MIX92arCUpZ&TmNf2hn=PE7 zT=g{KD%SHCBL9Nt?gly^nzVD~sK=8Ne{5fIVMM$->;ZS}3{!3H3w=eIGV4`Q`L)Q9 zHW&eD;Mh`Ip5uE27mjH_bx;V#&1spRl;~bB`IHY)hYO=QEqIe9!f00(b z=yH(ugY-mst_S!$*$@g>G=`Khx=c)Xi5iBscj&-dp`9M*PIEP5 zl3crjyE6h5Ot_mF?#rDA7!VL{U2kAg7dj8d?F{GPu5cPkpbe9et7VR(Y;(p{!G~un zuJ3{kN!uI;X9lly1TzKvSy3>o`G{I&I#a)M|(oVWP8?uGI!KH?U1dE-ee^wKSpmuBxFWm-d2`Vst(E2sDhImTWdeAu?pdAr50fVMG zhRCtCR(W5CjdfJLh@?{+Mtq7~O5gZM{cErI7_Z@TC8b_}cAM93^QBnTSexRh_nJaw z46Yt=&Z>lXRIC^cEL)qv(SawRtyT$+g6Wagp}wtA3z|wKV`(oOf343rFGX6@xwZ`S zu1&pWZHg=gJ&3n zyTE}FfOZ2#y=sIbe+kK|1JX-EIu*g0{sf5F7g1ws5pz+u;JcI>3^nPNQ+b$EYPGMb zEv=mXxCgTva%+jbFf1sS_PdeXQobH=Jd8L!4n9%1Yv-A5s>rwrH#aCOyEbxc+|EO> zwcq_v|Isr6eZ7;JbA7!V%dYRQZcJ9-$##HG zs>7zRthKarf5j6OPe$Pvyb= zUP1l-#`xiet4{J*y=7bzx~{e|tr*Q$duFzCeG|?!W**(sfQPTCCaz=s_9lJrRmR?b z!4oSr=4O=|>j)YeUZ|mirls|Li#iP*2n0A>u};G{f38@kVVqCYX&Cj5>NJX=ZuC*N zO@%S33sbF(+fC{;T!ZCx8pd&jIt}NzyiUV8eq5*FYin7ZMkyySxc_~jM#W?n_#afL z2?Q!!xKW+Pk>9s#eo#4PsPS^wi$N&lBRl4KjT4s4I3~U#)2eLDaX7|k!46h*Sf=v~ zXJ|eQEFg^d3N<_(C1~+5M)rC&f)bVxGh=w9pg~JFAfJtvf1bq@?3WnX;!1c+!>aR-C}G$YA?Z#Hxbax!e6e2Cxw zkmA1dI+~V}Kk%V7Gu^C(wSHt%{Pg>YpMH3_ygz*ZCgjO5tH9vt{kId)15ST|(@m{T z27qY+r}sZj|9s*cHC-3FBOaO`ukR24ei)}9jb_G}(=UHK_y6Ge7buhBjV;xq76^hsvq@G{tCTh*$UV!+)=E6W5; zIO`?PkAPeT74K&*4U@tY=DIRB19MK4@sHw>d3T4HlZDNyg;6mDE(?<{WG{*x`4(;I zZHv%JUG$mc6!B`pF&TtOuT=gMbnWi6hLDbdoalzU)1!=kR)%S^#c zsVI`KF!@G*H-%HC;u$?W8+g{&rO90QCB}#6Dou?WN`w?AtxV}Z7vd&TU}$eQClOk* z3N_qOyO-Iypml8O7InE@th0&NY##n`pvdZ^^I(Qpj(n)mL)(h!8IH#g-xEvODb3@ z%~i)h<=5j=TM%55_N!C7mwHrc_gp`a+B)6~GT#z5J1n&a?bcJfAAC=0_ngS@>*=k$ z*Ct`1W`genX^xs%>kjVKy8_2AJ`xWX>BM|!_&FB6k*q)~Bt=$nrNOqSU0&iUM~V2m z1r9lXgT26@jE?t$3xd*TKesKtGs~=JULee?5n0}#iCBnvzeWq=U0|6t@?_{@kqEz& z=HYqv!fPDk*#!&B5lID>OUCAsIRl4U+dq@hG`3Dv+hi$`y1rRN&7s{+5Ghfm zJwFPxsT`^2Q1H?nxwB>m;1kP4ikztyjv$4?QH!R>E$NS()=gH9l)?U?-mc0;B%CFG zCUS@Vx+q&{X56f3b;eL|gZa!;3Xp4Rjn^qM5du<+4n^4%v+GpuRH~4^yj_b6LeU0s zfm}PY+-B(u=SQjJj8lm&w_x4M432F$mCEh8>M}~UI+oV*oMFIiVbX?KDZW*sYnJSy zOUO%qI(GyCRXH1&eX6n2&lAG^ZZA$AckN1Yu?vB^)jVi*BZ3@2_2 ztJCxp1BN=vHbwp%3t8Z7xUH?Wr&~TP!>hAPr+O z*s$ekj%rcszBDn)?TrC`h>I(FmuN-T@A-pdTV&vRWF6g8!1HGxz zJQ`iaGK6y_A)$dY!2D(n3I@uZgdtR1^6J9X{Ahv9khp$y$Z;yFkHWbzbU2>_QgNIe z0Y@F5$8`1xDVfKtg}Tg=VxnGZO34h5q6Td!M#-kFP-R?g8cXgJgdi1v$k8$fgqX0J zIh=6LiI?o8x>?9oT_sp%<>>SEU7hv)gEjr7b<8L|N{fEtV@axBD02(xk0r?`v8aK8 z7%)`>5fWz+Vg|Q~ZClpv5zU9~rT0Cc7sgLF{EhL9qR#joqP$=fw!$iV* zBpTnpN4xA;1qtaG@(JaCZH;fc(nw@>Z=GqzmMVja4^;*g%v6~)Zl=oQ@%h_)Eh$fj zg-oKR>Y`_>OM<0}cQW!8eqNv@-q_7)VecVvxNVjGh+6gDYc$VwF-YKP25+t1Fo7U^ zj^9P*TJ&x#H1S1g{Ru)o@Up|ZYO6BR-STUynB+S2MFALE_9Fr#t{ zGmNx(3sdKXNAhxdTBsHl&`GDEj%@3#Zmc8daP)c9aMkCVyE-0q8w;Z!`feFt@$7wx zQ}@BjyNso}q=0&>)1&k{-)gh6vYAAX?|J1_M=1)nZ45*CR=vZ*1WcWb+Qyy8{no7; zgzw#xLQVh?Cd9LUix_m05$Y+WGQBqpi!kB$q}uQ+uU%46w@XDm?-B)SnYRlPnooCk z7o|ec-o>I@Yky&$T3NLqCk~T_)bb8MH1bTV>2T#@W4ifV=jH3!rf_}?v5@!qBp>(r zg5I-DylFm*^3sVjnbu><%*|IPU!`U=8w(bhY~J2C#UKHHmkMmULRwe7T_luKg-dNR zzT6pskWTNH|Hf(0GD*t8T6Sx_gB|v zMlqyYy=-{f%v-RM8Po&e*0#9^$zVrmuuCFx&4g38Nks4`FwH=Ou&XXv2~%k$y7q0@ zOM-(OW@fx5M+bjE#f;{PRk@9a5Fxye^8&)KgYVevyQtjsV^`Jv41J~_CDjzv=f{tK-oyb}^a^km=ePZ^bKXT?oYUU^a22M>ynaK8e zMQgOt!}lF0Lm}E7*4a~G@IQ1a4ELQ1gC_XI(ChP(*wy92C!HAcbzC|8>SXMt9+iwe z*UwGHLDohx_M`7f#-7vA;wSR846i+ZMlT<80F3M!cCWv+17IF4X(RtS0rn*)!2JIR z7*K~=J8p}Vy*J&w7M6Q;{x6&YYXfiR39XJ~-#M_>;CrRCB*&iv18u?{ekp%g2c0JsGLv|1kjKO7(=vtNDAyBB&;)9#smYR?`-t+(uc@Esk0d$1a8 zqUXW4_km~s+Qi}iH+s(dbkD;JrO!vtz^Q(6@zr_QOFb$Pd#<0GiG!?-RP0CJlZ!p4 zVY_GvJ&#^K20c4+x0K%;c(#-vR{e#YzXUsL#{l)A#(s`30_ILbs&52FHzBwa-?kL{ zKy+jIoibXA5kk-IrVgL4?+^b40d)6B0+&$?F%y?h`~fDH?yEry0WgGu8-)~dZ4z4ltAV&Wkph)IQi3FNq6KLnT1r8=`G^HALXqqvIh4|;C{$`rl+bd2pK5`Ug2INB3Z!B=5htHBQ09A6hDObIpc+V%ya0s- zs(qFMW$UvX$Z!l$5~xxiD}kC~EMaM@SO6|g+_@B#xgIz#bMoB;vyuuVKna$tK1+eM zx=xH)OMQg|F5)W~yVP8LEmpMZJ7Yo;xuw``mt7M9MO{19Al#bE$U#JZJD&y7($`9m z+}un8zQQgIc9fdCetrejwNl(cfEweO50s5?T&snoT=5JbSD5Mhu=Zsg{^z}ja)NjH^C)NU%j z&D@P)7_;iC7?#!UIbDu__%2rAOulKe77QK&8Sq4-ZYtcEQCAsWWzw&*fKR*f#Xxnw z3chTvOM`P-ab0kWR=UyP3Rcw*3ERM988V~>SN9Kz?P+IeqjkdR=Q~#JfU=RH3VEu-Mw3X4VC+OaQ~HIeXK~J zn#;$esBhddsOkX+iEsx=KcTfF`Mhvnk+#UIPXkE^To@@oCj1CE-sfrd_jQR^?G@I6?pjh&(G_h zPS+RfWuRf;1V@656Y)HeheMsw&O_gpfSq<#DH zmt*2k_%;rCj6)vdkjFS=83~;sAPoTsIA-dBn7y5d6^dA{Jwrl33MA>_5WQcnh)#62giM%)_E{Jc*(&5+z6 zMS-m(ar7q$1=>jdasu0G-h(!(lo|31QmDUjP{j?P@~a}dAx@~JNKJR7TdkBBjlNhh zL)qcF73fl?6n-gF+nRegGn}N@ls!dou~H{+QW9MK-_V9Wn0eG+_jt1g*H3vU;Ezp1 zIq#&Qe=HNyP|I~Y4dr&5hO};SjkXPu(+o+cBEI|u%aDA~{E1f=f4M|?N0r^@`7=a4 zA|28YXB8z5T{5cy`+9u`%HIPjtjthX)x!?mCM!IYJ>>vkJK#ntO0@6jS-0XX>w&_0 zhhcPf&B!#lP2d#vR`+kl*bha*S5;>#J7Hn@f0(c+bQ>0V1l@TA-8PQc&B$1y%Ek1$NkCufN)@{8SqIlpl)O)5r8ocil{8e#G)u#O{OJ_ zf8*`m%Q&Pl0gIL1c?eRK2t}4%bOipYnoueb($WBL(pJXWz}*7~VT)^%jLZ{tnZVh@ zgr804PbqV-F=s=dQ3)cciuzl_#RTnMBHvh#*AF&c%bxW zst(rCGW3t2@Hqbj29GZMaKD6@nW1IKe+eO20hpBg$CIq7KaUCud#<~n{qoO?54h;a zX~uMbqxf44si$Sv1+5ylCzZ`e`I;;+&{C<~@x37CxV9)|UkwnRLAqv0$!Jb#z-|pv zk$o7J$X2IG_b{!K9!G1wr$^E~T$!@JIR!O;LTytx-G8V|kSq*NlL?%h0SfY5f0<{i zdD==t2>Fs0p&#pH?qhKJ0zkcj|xst%76@#Fc4u_wA58rmb_d-ioD2MUq=l7v2 zc~2NxAPl+Ihz*8-47eM#c1-$L5kn;W_7XU7rcG#5tTPx~$B>IVpYrn#pA9aR^K}*J~3< z*psq}L>sXV7T144ch--sCTUX}D@nmyvfrr@L0?8BAMLx5l7%u1R8PrLNM@|Q#>t%8 z#2@4l$EKukvYF>(f*RF8RxzPV;HuZ;3Mo*%p#nMx&#=7WG(%!9F+0A>L3K({DX(Y# z3F$c&hb0=%w}=$JEhA`xd16jCuE#RS3IeV*nlM$5)6u~C{iqL2--@l=dUp+Te& zng$53;30osNWn&8V<6Ne7s5|yOTj)FCO;$Kah!q6ELzqMi>OU<%@ECGSU08)TG}c3 zXy#}-T}vE|um!wvT*n(tcU#a#D{uqWXa!y&jTXHXoUs`$nKCxRB{9Y#STbR>VX-k^ zG{U#0i*`V_WeY_+E`&$ZMc1q6i)Cx%dET&w0GfZ;vSh(=2WiBR>@9$^3&|W#T?_9Z z{1|sg)u=^8yOJi+kjBkQat>Ac4@skRiFl^~OLhts_p2$v0QJ7c*Gmb2*IYx%TgGG| z(n)qgD(iBL9_@SV2;nYNj9}7+*v&7^slpNLibpt#0B|UdjQDTm8rcF#5)7 zgu$?JHzVV*K)?YbDfP*#hUEYnZ3Me{-=vGsrG z{*C;0>b09uvs6^ajsc7*a7D7%R8z99G=^x!7SRcgfq7JLa@zL*{HMWrr$cNIu)-PI z7ZxJqx?3l#mTxr^PJTAJ{;+RuHNIYdgG|cLAT*&BlSVfi?X-#y;q}%bqw@}Dea|SF z8sjS*(872rzUWZ)^6965#;@|}XCZ$KJCcbX&v+(Q?*!txS#^SV>uK4TiIdEL>ot;j zZ8o0B6^cJR1@Agb^F`nJ9oT&8hA7QVw8-bBl{{JPj^Zu`^uF%ZuR;?#QyVfbz8$36 z--X+`Q${HbLq5fE-6^AAFmN~VmzsUH(A`R=g_!7m6Ynmvhnj|bc-K>o+M9nrP@x;h z{xlS5D3nzXISmD;XbWr}oK)+2-6*NnN&VEMT5rMiq*~YF{`LD!-}*2|1*?*g~NU^3~{XLUV z%SWj*XnoR~)M1v3N5^N|>sDp)*-HJ~`0OlL5T9*}ZI|%(#H@78Rwp&TPRt6+tW}SS z*}Fz=`#9#B=5PJzIBt90Dvn#JpBu-W1qHeeyDxut z&C0Jyh}Mu0xzBW-I>s7t0q(7)uTNT268NI^&X zx!-k3R4Uo^AA!ojN=0S4U1gahwMjVTtLHg>dt>0&_>DYEe*}1@$kR8q4+O{41Q?aU zh-ENw-%z3UFs2xAM~36C+$6^A<MTG;QH+>nSWaSa8|^ zCI#i79w9`Vb(TR%W*oE_Ze>}#RCb-OIZ-%dkZd`OKxP z*lguxrP8{z0=LYF)5HznrS6=r9c@2FDcMqrH)uBeX-x^E zXrb*lfOK2y0$i1zL}n!JkltEy*gzboaJ!SXBDEppnS>1tQbG&uZaI}orW6fckCP_| zWkBxjiuBWUZ1f4B@u+YQM$1h3oR8&zd{AS!0W=oYef zy9r_}7+Q#Gx>z8c6H<&MxL@aU*>Rw3P%}pk_(0hxU}JTe6OB@2LSqBrm3T-OlCcrk zXbAPng82z;89goZ>7;0s5v{p4$u(2TjIQBBjUE{6OoFo)qA#TUGg6}cB_V-h)|C`YzRcFIa_aRlbtxLMcATX_P1B$jXt+P3 zpt6h$@!*KkU_GeC(?H!4S#ECev>fo&7EgQP)~sv?t&T9FYca#^`KsiCNiIjcTqZfs zj;+0y+Z`LCS1MVztmMX)6~(sPo_a6yf0mR;a;)1OT0~&N)^Ufy$8TuvAIC^d;ne@Hih zJsdyD&`O`;q$2ey+S`}bk#{QYzb3IFFOyrfC`QeO+nWp1ZG!^0C|MFsTy?ock~>89 zRJA1rPPM$p>B{f%>iyy}=b)fJ;$5 z);lfV?;q833?9*YM^uk-y5(gif2w;u12MXr%N+qUX|5ufYFsE=777co(YWgZBNQal z`ZVyBf^3_Dr=&Zl&2`TwQ{!EspB3lXhN#_Hirkn=pF9T%8WyNNmq4{Zcm|mXEfv)y z8RtBc*-D8o3A3vXnp$hFi<6SmP`QPxf{&gU>b%B1AsG-om0>t;d~Fv%f6hr;D#~8< zq0$ar>?oS5ku6Q4d6nMyRPJU*Xkk5%cGAFZrkee5^?exfKt|c2J15txVW4#1|M)|k zHy}h+?BW_z>pmkhbw;L^r*u{^ zt#wPoaZ|eD`L<5!9A#{FM9@^FP$t-SB#0Ursdk$m3ND$D_8|$P@L`s}_eiV3a_2~^ zf%X+gTD}SI?2#j_2I7Gutp@VSNUPcXpplj!*GVrQT&^@&?;L40f6(52q}AX%V5HST zynm$CLR=ncwGzC2q;;TdQi*qJo*!pXYDLD`E+wr%eAzC460OKeQla^Qdg_WAJ*L%*IT7hppr}}eIJ@{)bBJk4Zw?0)`Ki{9ayH*12 zSl>3fjg@|6vY!>`St)<7yhMZ=0XcdG3uqWskPl9Q8mtF(e{375@7l3#Iar^;wkIAp zgKaP$FoSJ*S)ReR_j3CT7NllU;o!dw?DS((vstI5{N`O7Wz(`BrGAUP?f9AW0sfIo zhQ>VFKMt`T5GR-d`=1?XSs*F7 z|L0kI=2?riG*GOAs&Ubb;0?K$M-R3(7NTEe$WmCwueF z_v_o!zebBNrk4@kJ`(~kGnc^-S`?RDc@!s?a5F*#myuUJn1AR}r$1kRd*D6OoH_0P z`dj_<^7`=4L%js81Ow6i_3gp8qXZ_c=mfoVs{8(T_vPXDnrNO%$!_@h{afKCIIBa3-srS{7d;D`lCaP1quCGHgPa(hFPmm*@p= zdf`WPEygD83R{-8>nYJo%kjDwF59=I-g&8scHY>i;;T0{x^e{XuI1B71+}nmZnt!j zaUm)J@qed)sB<27&h+zMz>9yY zAKM+ms5XtVTV&(|vVQE>_CdQP6KHD6Vx4MJfHw8cH|~JE#$$E~r73y+GDcrC@b`Qrk}w6sHL<6+H26FrcBXwN@Kww(+29^ zvVY+tMsa=#wjOy}7U`lqgXy43P)ffuAVMI%@g6LgwRHeEp+fbbGmJ*qe zqR|3=dp+ZHclO?THlB57qLryy!%#MBS%20yKc~;U@v>d#(hgNC;rlg2T86Y)6~!Z3 zjDi^-b1RAmv=}u78r@Kw(P9NmG@Bii_?iwh>YTQ~zuCSGRx!F7hOV=2T{z1qJU3iz zR{_chndGve1iQscd16RL>eZ;pl}K;G(5N8495_u!r+}86m2|`Q`m^z1Kq1BIpMO)5 z7!69gaXOceD=%x)O^@-Uq&tq2(8Qnmgjg4UVct+p*>NSk%=_A z@{u2}-i=ZKH_DEqC`CLCBgOmq*I(j!6>)lqV8rlv$WLj=+p`n`Upq@VB+jzMF)Trp zsQgQrU7sExGUORnd#;`R@Sa+&nMb#_1A#~p3OF_#sRfSI3`gcTN0RQS8h?)T0!Mm= zquRY6&jAr66T;l^>{e6MyYhNKN0Mv!n+b=YB$E^d>$y`>u_FvpfEU`nn=Vabw{JtC zQqvvti9qTB@fZ+@)ZQHpsph)@8d6g{j)v3}-$p}fEx0`z;*WG-?~R63v)%{|si@us4XIah z91W=`HbwpIXh==*I2uw@d=m|+w1U>Jxqf1EZFb0qu(^vVWneibAvT&(jR` z*h$OLWD3bG(ToZ=K?9yhzf4MYlRI4;Rt#lS$Khh8=K` zkD$Ufln%f}6j`j53pSE_TS?p2Skw*RBH>80#Q+zn9xgJ)hZJ`3Wo3>R&*b@I6;t)J z5#I2d9!BZ@Syi>SU1IQ3gc-IWOu}+DoGpF;Oz#RX3I72Uz<&;4N+0=zI}Df3hf4L- z%Q5ga`YLI(|M}=SItFfruL`YRi7S;O)`3^$X0Dy29CAbODyf(MW=v)LQY^ZweB{S6 zZU=Yw+=Ts2mw#S8Faz;h&bP8&Jre-~3Vt$|;h8`b0x&a|!7nirm+@acS^=_`Okh1c z1K%y(my2LMD}VFS9{+gz^}v(ToH^~k`dk0&^mh3B(3^l-F{SMA=jVfep(HSA#Q=Z| zwHdzrHGDk$){8BJaq1I4kPlxz4c(Iu$&1#I7rEAmjTeEFYt^8&W75BhUQ{ofBUz_j z=_2cu_X2cQl4_iR9Keqi25z3vz%(k%j;g4w#C}vk@qbd}f23F-`5XOr@;PGEz-tno zn?{o&)f%Sc#1>AofdmApilnJz7k_Q_a6MZ7_WrIY`98JSsqMnV5Kwx4L?C5?GCfj2kV6k<McX~{__X>E+AGd}0(?BA@mQBvBW6+6-B^{juT zpgbn$atJ?mjzKxpkDx~LWTZyPOlX;;xt2qmG83hWkl(3U$loPrm^N4V)$a2L>e$xj zca*UW;$!faj?H|k_r42Vb^47p{h)t->V})7sDCIjX(BP@8yCCE`8?!(RP6T7q*AAq z&t@ju?Ry3#e9z}tue=@pw>XY$Pxkr|gF?x;>ZhvU+4NdPW<|YUvH?>yqR17R_$Y+m zD%F_eYVY#U-UX54APN@)AATpz!}}bGQ*7hK1s5kRLxHBd=0W5+Z%fUTvAcTP+hxlP z!+!)Uytp8Gk(kkTrcObZmMbUr75zvY4Ys=K{ zB}XY&koumUTEj~`)rPd5tN=ye_JR?(*a*DQ2;6Q2myCp6utG1kLf>eG-fRUr!L*W% z6}U1MxG)y@)nb7JjkHx4tk8?C&^KDKLo5tuMqp!wUTKA1XoX&A#oV^@+O8bscz=24 zdZ&!vgqw$irF>Dfd0U>V8bW*m@>!(HSPE@vYe!X!cU47~R>vx>mU2}_%($=Zg{c}9 z?C~@sA(nxVrzb9uoGJ%x;93{JDRr9no8*LYq3aW1!?DG+K6<%OuH_jBMw4a}nn7sV z)9Aa<3`kYgsWmjiH434VINj*4-hcmq)(o`hC7;>*fKf~v=v&VM{b#=+DpO&JORxEp za3|x!+?lrNM)kA}x{5{f$O`i+J>xmcoR~M&IKi+Jz>XV@e3F=V%vN-b@Qy zp6R{T8lo%s!K?2jkXOP6`xG0 zi~MGelIoa?zVHfkz`VJGe$=*_?mu<)F6OUVYOmv(-H-pN{6i=BzE2FBmYUY>= z&8#Ze?7DYHajujhq<^UMhQyot<`Ovvj%FXiM57tJ6&5Sa4s}XeRg`>gjtk_ppK`tQ zTlqRoH`*_Ee4S8K5{$eHUneFM>pF=$@^zi$D|}to`aEBk^jW_l@taAZD@&%z zzo=cxNr>%?CpK(}g!Q}7Tn(I&r55SBoC9;0Qd+E51^4IlV1Ku3VrcFvH=~J2JmE{S zdW_hUW=f2>dZ^#4wjLXcv@`Pv*P~N`>HeAy@cC`lF-i+|8evsQWQv?{KxUSin0=ln;p4T#YQ{{9yHz1poA4_hUp9>*O+H0hLf|A{% z(mSP^^6DQUw|`4(VLP`fKr_7i(aUbsjU0X_Z5fBZCAV^9SPzBa^X^drE6Jz!&Qa+` z-HG$=q%MdKPjDw?g{-3ewgQ;+<#;hAnV$;oBYx!~~54vU3wudU}`c5i@*oy4;+@djT?N7!6`Ls$mF zGFwind`nmcU_$!-eqkAKN<&)j4$IVL&HPymZoV2S+peHRMwVvPn?+M%o+daZ~d?LkEj2h`Xw02nc!mj=i8Hi zp(HRli%B^)gPgwqJAHZjqoEAp#Bg({*f-y=n)JfrDP;J;}>{xfxB7#Pu0 zhqs2e+}q-KFpIoY(p7vvA5Jr;WKS6h(zVEs0O4)vEIY)?wv7!cl!hrgXR0V@tx1jZ zId91d)$`<-5`vp0f3MfhFphyCi9GwX_sGL1ym4|~4N=$O{#tbJS<&8^l@AJD^0}8O z40~JiHW%7$7~z@U3QF24^k|vbllB0{M-we@LTmh!J_zq%!Tc;q#sul49^N>Qsl`55 z4)A`E`ni~HXgksZf>~!8{+G++70qF244HpgTzG%Vy_3FPf1*gd+e-&T$B&8gq`oSx zKqcYUybE$-49OUmQ>&K(q?Npos7d^RGfhgedQ(ZL_2))WB!jHJX4OR|nU{s2P_5Z? z+$!RdsH>M?7=s}g!Gvo4;Dzh}>@{l&qjZv0u#uG68jFc7Ngupvg{9Ug`}`~DIR6T| zIDoAzH*igDe<|ec&3qDrkHZMkWj=HrCgi-8`nEGoOnqmQjaDIs-7nX)1V^j7I?c3% zSE4##M?kMwUlNX5v?B49DN<5p( zTiPk~tC}0>ZfsbW=Wce`rrMi`WH~_l0sY$U_yT?@YjPRcreo2YIp?s+QmooWSdv7(2MbvX;l<&m+HSyL~?%A;>A>u}xUIyU4Y-5L#be(p)x``PJJL=W7@e(V7jf&vux2{5B_5)rJ zW{O>P?Et!+x+_-U{h&heRmFl-P?1=0q=M=Z$xyjyK9s5YbX2@K& z@twsYd+`JxdwsuKA^{;OsS%fojHSXXRV-KhqKfnRk}iTW##IS6LjjLdv5uFde=A`q zaw<|u)1ywhRlyA^>T?H5bnAFs0kAFQtrzcx(qAqUTe^lhc2vr1>ZO#Z^3$o5taUMj zLGWBKqna@9X)EAFEk4DvD)HhCfakOoq+d%h!8j$wLTQ@l$!@Ic0A9tzHfW=s7t4;0 zC*vu`TIqRiIrvfhMXB#Se{R)R$V^?F5h1#?#CLGQq z=G3DI?b;f&z`GkyUo9{z;UOhxVP@v+J!{Y%#XAy2gTj@qSV==;i1ATYV>Iebsi?6*VZ5TXve4P~HheP)W<7vSYU@wU>Of8dHK4L#K} zdfZ=(i{-U$hP7gx63nWBpKFS78kiVVd220>s%t&fwOZWF@EU}BeT7xDiGTGOUNCp7(-Ymo^0fE20+B7l*^@W&j6 zgGR^lE4*98?tDi9EZ?YPw@uFA;i{GTyY#Lm=`u*$iD!iq$!`Y1|?7i4M$BbfXw>D*bft~Dl-n}u%s1Nil2$g_}fE*D2J$pW)-f?=8`hm6F5s=gX&|8TljG&2z0??8PVq3b!#P4t45=so23fxG`&Js0|tY&?HR zYj?{PG|9TTQZB^gov<7_?;t1!*g8j+3==bazUpRFiq@`cDb>NU;)-)=W@V$|lfl9_ zE}12+$1cb$Fl)!msAR3f7*K+^h$F2R;;5I}O_ax98`D9elKoW2 z31^@zrF71aE-Q1E>_-3iuo#?R1bNf7R%sIuCtbz+c)|N95jj58LZ9iD)7wcr)xjZE z3OI5fKUWEODex(!Go&os2w6DlD085o;C9%VV+;Vg!#(CX<#<|3HkElU^AUech21$h zR-D9mKBH_lGL>b9q9>kgyAymMmrN;a(T9+Rp~W@$!D&wXqj+>;H8R2vGY>z=&%~NC z6O(3&mgJX^M9$IhAR5yw02<^3231SZdp|7jRDbZ2Y=vIV{3nQCjg-JeYbG?blz~@r zjb9sN+KBdR*~t+jl9QI=HOYTO2!%5t2jQ(4WU59AnJDLYf3zaWRQ7O+un@ay%*%5k zgA%j=TVh^1H7E5YfwTbKD*4w#Vl^JPWvF+A!xp2hhD^oO8*yXmpY^|`)gxO?){R-R zjH98dyzCCw?9Gb5xO4%#izcO7P8My5;(R!1%jjw?kTTq^jv)pGIzxZqGoqQvQrUKt z04ICJUu6e@jo$Z%DH_ETrO4ybRzq>FcvTT{hc(HU8pe*#v#2Pmy2q(ek0*}_b!cOT2BokZeN$32Zb_bNeKED?R8FDQ8&fSD8`It=*P3K0 zH8Y~8`g)Qo?G1$ei|46%%oe*9>-wU^b+^;zNC0%-1nNqv%Vd9~16N=}@j$5CP+oz$ z&DUQC>b4@?1$7%@-v#PQaHOt0G9DU=ZARV^2g)!_NxGrfA;|4s93!itcpuo#u~8FU zccn3q1p<*#11p2*Z2a(EZj&Ub24RYyX(uu6BCZIYNoIdReVxe)^kPJkJ0$Vjjo}%S z7gDwKN1Ne$S8e_JY2XrU6q8G)BdFvSm!K+4Qijt|x@#UtE?66!ruwT7wRWubOGUEIcAh=@c zDL>^YSGj+b2H(h~ni9F}NepWz&R`V-XV%)ha3+k!neg8BZvV+N5T2FNZjwyxkW3xW zc!I3btN)*bAdjh9!sa|NHG%y>b#5?I6o*LmYvVk3u9s41UUo0l=t63rZBhFcxJ>V+ z&W?G>`!zYWxKZb_sh*^~h5o#x+Yg;@Z%CbE+R1;(w3fc_>8DP80WpyRZ#6D_QyMdLb6`CS{RKp0AI!C+Gg`zqV2!UEG2GspR_p}2Qj^%j3R zDnuw-&Pyi?X%n{9oZq&k8=J?5Sl$m`+NlM_40OgnaHm#i5?LR4w$M^+_66<${Q@1c zT>U}sK);}BYEl0H{oe%ihr2aDK);5Ch_Q0+(WW zJuH9c!`;i_!;@5#Wln7Fq%l(91$db_2K!5YjC90(`iAL;<%U=&X z3H|tT=!I0?F$H4!^5gLHgdLx!(EGrd^iF?I|D8fJ1BrhVXVxf-B$(93nduko_~GB* zzW(LQKY-z||4>&xDJC>{H~ol@;DAZ#ted{)2FZ-G$Q77JxfQl(raiZ|jIAwSrh^g| zCD5*I{!Y!FDW`;J$4g{}yj;VjZOft%)zX}qes3GIY?VuxTM>nxh)Nnuk2pS$qQ`$Q z*XB8Q#Zmv94qvCkr=(qNjIr3oIUzOPjde;bX%}#H?&eX6CsGX=MsUsC4h!S2WSh7F&wB()!}f3MPajYlWoX zsO0+n%a1hh8xDJJ?vc<92+5Q-(~Wexb(&p9jy4XJO^d*Ufh|#l^X9F-IES3 z%+QlbEgUuEsMQ|h6SXSR8@eX-6npZg(!<1Gw2fELE;=^#vGkzUyBSrJ`s;ti{`8~< zNk|Hxr46!RA4S~navzoF038oi`Dokr4t!uHDfNAf8j9QlKh;W?c>wR`;p08fs2Y-4 z*Nuk6jBlCSioR?bVGHeOz1=cP&6F?eTzDltDp1F;;sTNeHO=0oUf3?OW-axWg>xRO zbnQ=;5c{c4=G3xaIUzg-y3&8%f+jJD9I_5kloXQK3XpdYCi&sX!IEtYZJxUiv|OGczQEnyKNwOjM?RCT)hE>$3ccOXdci&1OZI&T^Fw`;OJF2&JrGzOxr5m z(xjysh(&E7`nGTQqO)VCyb3M~{lrVyB7z?tV>b5>xp0QN~E$`kr!We(%6!a3n)3AGXQAPVO ze3%#LWi4REQ}SB{#Hs0j5QrMoybubiQ#l)*bPNZ;%vZmG33kojd2H1&J}c=FS146F5)iu*7)N z+!=Vt+Lc7rYk!U08J!yzM+3#HEKbfiZsE9?bVTi28B?Y35i~MuX~Vw;w7gzcVn*`v zl`Oz0#*u$cKkAG~mbDL_)w;!$@b%E-OJi_Tmjt(DdD1B?(?khD_v;9YTg04P4hN>~ z6H%DbB0D@KXGv+z)55K8cfed;nO@e)CrNo4j3G1`ff%TLZ19?bNrezxXW!1jR#2t{ zUl$GXTsI)KW|qs|4S-=@ns;#n(g5@Bie8{2_-lW50&`J=56Gg~6){%)gO|+uUYW%` zoV86cXKQ2s{Vkes4$E#CsddMy?2xP9mwss9S$9Eyk7dWZfcdxk8q)k*+&0;M#c$n? z#ce#r+ocGSntaAY7{sDbx)ET^!av>qa__%3;lf{S@JnYM@mxC3w23aoHQ(pPwBd-QihXm zcsH@;S<|-i48zw|wH>299P4{~nR9bZ6Mbp>0q0g zWvvSij6yV>#Z)}6$xf(gj|)qZp^;i;Pm)aUkW4SV?z${@zNKm85;>!Kqf;)F z(%G~5_-(8sIzAmw$K_LEkz!MjH`1E3UM;TTAn148puhKoK|GxrbG-zFgE;SwO(-%o z9A(h0s;-4z)yMjtv<9$j2o-;{j&H1#waZXbR(b`wUjw0wC2GgCedS0{@?j4VQwdVs zxBjf2Jk#xqbhr5)5Vk`?tfEoM)pcT>>p7z@%U73!o+M7$z7S z=Ccbb;etsn2a5VtK&LmzOQ9t?HSR_sUO|?^;izFmMV8==kR^|0+op+}o=;~qsJHPm za3w72lp2if3b+z*$y7c)0QH-}mAqgY-0!f`yTD40&ffXoQ6*^2?nJn!9dR0_)M)!e z9_@(hBTDpdeQypYEtV7A9gCI!0n3ppHT7K;yHAYh~&8F1#qWQHTdchLpD{~x&cY?94>N!q|ckECu^vEKEO&EeB; z6QBO}cKv$$eg`!fW>FY9ef>HKdcf(g;B-^tWQ1TE#Ps$1^v`$BrKamjm*O0NE<@if zed6UC2umXbJrOiYh|4#BqeP+sNtd8YM;aOr?mhC6xAe^4*Tlza?&$>a6^^ct%fG(< z{>GEgoH^~k`j7tC=hxeR-+C3$Y6eRtCwc>XlCtzr@yoYl zf*<~y^fcG>%^IHX3G58RY1;S)c@(y}L&B1zW-KYE7*LZ|hAA*vQuTvoCO4=%U0!1E zF44@os=MM8IM{Oxx_iCJ*(z~{&&ZJ}FKGS~Wf!yPw>n#3yRlSfu$IcjOY)~ovOUXe@1v7c6mgC-RbjUmaOyi; z9_j_^L@!W(Pt>m{89GTF5q^4?8a3MQck+c}N=mLrFa(jBc0nOC#-NL)^kp{1Y$-E2 zp+5*vD4PmVh}v9(b&U7)R7Y*YQ%qTsyPiJABWIg3=OFlPo6y>RZ%WW&)$<-7;%AI7eT+3$OvFZ6= z9uxXnX5LdLfU5T0=H?mepQkW=BX`wIw_Z+?PlkGLtFmU=aOq{T-3(jZ3={HI+{*=U zQR;mzp1$Qri9>j~dah7ZZMH$^0VJ!;W3dJiMXFnG#hFWZ9yAkh&AzC#udLX#sT_8~ zFqEo)K&1pPf{q`_el}V*;{JMei2iGmWid`gd&Ij+m2ZbET}CGhB;K`mKl0PMgGP&n z=cdSMI|PEWR8>OvTE=V&#eR`Zpar8&(iw53K5eBXP)%0S^_-TbHC=+uBG;*zlz>(S z>?)HG!;nzUF@ps?%WEH0+XY4vI;O=($7Qd7EJ;f}X)$+nxoH9?INHtyswCa5j7Uj0 z3fSZ6l9GI7r6GX{bdxfY5#meoUOA3OgJgyjZbu)+{IwMtKjgc*O9?fnLKpse5s{op zw6sj7l@nbSGKyH-oiWeCd(wApZ5R5%;WTgYy5+*W0Xs)pgWGO@6;}IPMaz|w#pG-x8OJm{7)Uj3T}H;Mjm_fXG((gf zOYvhrQaEKJ?+M#Ld29_5B-ex0(B}m(cb8ikeOq67+2JO8d6FdxG#eb;y!98dblake zBjde~c8saGW0s0j=Y?(T0%)p#b-*5WX-9`W-)-#FVws~j#{NVcV==r%=``^>QW18@ zvd{KnaB~jMC|aL7w~%uW&Zv_fIf^b%LmU8P);`+f8sf7Mr>A}#;&hz;&mc}GeT;+c zmIprQdcw0kNz$5DKIr(Gmc#8rg(t_j9o7;vH;A~yJa$Ce&|=hAPj>cyF&>6idDM6x zscBJzz}eXAKI;>%s6pd{PHBk4g0%ub!<=}#AQCg}377n(?cJ$$z zrKo2c(NinT`X_1S3LaZ=oKpnAms}gmMeLGWXWXt^-&_gfT=7>zW+~{+N{ilX#4c{Y z_I7(lO zD0{-5WHm$V1x&(E6lQJi{IYNJZdSj5JFxe)w47y5F1YP4@$g!fb&ni(6PA><^GSj0 z%MT+8v`iZL!YJ=K>U6wie-*l(k9tcT)wq5p$xlbmjE<<#Tf5-+*h{p6XTXM%-f`WC znzNQ5u7sFmKZ6)!3u!cAi-kNns?N-7kbff#4uPvF?xsX1y9`dzO@`|@F-yRYPO5wFiwe;Q>N2v}}@%?HmY zs?HpadqHiI$iU$%Yg5Z{wF5t3KcSccUB81#TZY}{e>(cPGV>EhqXh@1Ox_lB28y@z zeAI4UuVv4c&Ayx+_Gw8R6(wN@g5);vqdkiq%BZW7R97ds^C8?KtUqJx{~aRydxVas z^(3axd-_)ge_A`8HLDC`?EJ40@_7ZVV2Ey@pqP)xD7l9;3P8?BJk`^J84B}#u};3m zUK4MKy}M7s_WuL0gI1TZ=tL6&HZYgKD?${PQ;j_;e@l-WHw?b}SIi$+Mx;nRfQ5mq z6Bp>M!QP6ViYBKVn*V<&rI9o<^4MP6vq0J& zv8=JAe+{*{agENm@p+^}hccG>oze-;q;;rtF=~6+|MB|k&J>{yM3-LEqyP8$b@%tK zSHT(twle(reU}EF39{q3iilKn$oL8s|h7Afi!Z zd2lX*O+y*PC~^Pf4C$MDDQ_7Fj$=!Jih?W(f3QfJk>Fs3NwCh>p$uvQPuUnc>Ws9` zjV*!6N`pDA()L;BB>Fl}sPy{+us(H(!B3SJatHZ!7*2GS09L^)I!~G=Q)lj`N?f^$ zj6M9ZXzNB9^Q=1NE1e}CQuPh3#}rKq1wKBYliJVO!Le6Q@~1lCr)05?zR|_wkC>7E zf1*d}tKayGenSF+v2H$2T*7F>qaKZJgC$iCPEGHCQUX3%!OqR9lS+g%Ph-+~n z$AHpkd`|9U!{~&~6zX&~7B`UM@KPF$&vA7&v`vDhXEQC9dA@Cq8RgM2n!9Xm6o~|m z?S@9_DJET$bK{2&M*#%sO#2vORj_AcQSLL`U&7jOyO~T#(@;X#L6ZFM8(4I0xvc zr>=fCm#xkAx*pw$cExH}6NR~1J|Zm=TaHSnuBU8ESXd_CIw}VdKCuuAfxinnumBVf;Sl8ygsywk)MPiW?U%9rY{4ORwFn#mnt} zY`xVYMt-U)!3u(~-_piQid)-wN&T9QJMG@TKn!~H6A?TzwUx$?HcsMQNj>4n2~X7m&D{e@NCbtD`0Jh z{gXb-^DNDeZjep8M$}nNT|G^*x70+1!MfCB8C=AkL(cMCxMZ9QmCG08!~zbdi?HN& zF5q97CM*`Z;ubdN3cr{Fc}x%>5RzH|)(%MQFd!C>iA zdm2w!4Fg~Qg<2(=R!I|<6WQb`c}*F~dzZ_;<|&fb(3fc+_MT=rf9%!|Cyv1q_uoxY z>az~7eK@%u+s6+l7sERdgB~6?jPD)AvsVna7Y-feGYJ{J1|N_8Y`ap#qS@}JDKB$f^n7^(=1Z<=`&~YGpFu7_q!VfhrL_`pI=smCIATx$ zZn|~d0>_T)17WODe~#&UK7CrIcG*6(5 zFgv@+Iv@@qs&g$T*Q4((QK1|VIK0&BlG$ z(ItFLwd#pWs`v;+fygKNuOD&m^5wQK*@MODpx=u5w`C^Le|lHTr;f@4U!TxAu+wFC z+RfLF{d1pKyEd4uY8P3ltj{YCn;+{C8Q5<5O|YXl7Fo*}c{b`jU0#y?a@{Px-*V5j zTElivt&#r$1UamEx0ey#J`({jm%)oG6qoQbFDRGAlRcUP1iFs5Vw6482?Kd~qnGi< zAQJ*MF_#f%Rulp=F_)o+At#rBEo}{zs^!BOV5QKlu~PY9R2q6ZC;)=c$xw9251(*%dBqU-O$dg8=1O$WUEfZ+W&`rw%3@i3YpS z93jLR2`?7<7%yaL31z%jCn=DB9R7K9? zw{E0i6aB63wyaGD5a>rlMU9K-(R3p7OpGt$g;ueod~@y9UE#bhLQAV77E>VX6}7R6 zxyc}{5|V^m#PzzE6kg&saS;cmwOgVGjY2Co!UCdONnW|JaZw9LK!=ro^8GeG^ujqk zu2OIxpYcM?loCGXG)dCj#_ot_v=erDAGr@3DUPAgR~(f$XSOrL_(P`ap8kRph&a-dwx?g5 zp}h3gO)l=1bQLP0^aPcEWTMhO@hqn#x0ftSsQd92y~=r^r5YhelE6f1SGT`OTL=P; zTcb@eZOI+yot^ibE0Sg_utnn4`EKZ~SV($v&3a4UZ;Q30|EkkJ`=;VY;_nz15%f8S z(ds(=qUmUXarda8+t9N`S@D03R$2Cwt&%&3fRlI4Zo2G+*Mgyc><~BL?f1-HiSVjP zBIQlqnYV4mC=rw%`OuOvUT)iqbpj-gt9f4?5iXS@9~6C2kKtE@OAUe)Ghw>3FC!)J z#{3eYkwN1 zbf(0TJ}n=K-EQP(lfyD^CU{|&DBpX)MUHFI{q5cOlb6n+Ju-hUU_&B<9Hfpe+#r+6 zPBA8PsP*8E@<<=(>b#pwWafE2mXN@Lu*-^sjZ;k2xRTNp82j+n`76SUjvuW$gT5%{ zIwhbLvf_2FO-E-6_NA~DYU4PthM^^pChBZUdriGd68+jz$aU3P5HgBv6>2@nMt778 z2B2ir;)q3i-oaW;lBZUruT7D`E;kG=2nTk=c3?<}=`E-UgL)rQhhz9rXp=vj`FYk$ zX=RQJn3S~p$s|-@v${Oa0F{vn^fm)+F|KW2%yXV%<#}iz9H&lgh(7H{`UdB9RMlcPcyp~(UmKiyk0L_sDZ4lchamJ?&`m5 z)*(aK$Rb_MA}0!bNBxvS#kcyrn(dZ#rT&+6qdgseFVzv2s^)F6^dk4A|H0ZTl@#O@ zhpV0q-uUebZ~Uh1BV3!^X=57NGyxyX@<~BLQ&Ki$`9R6PqQLMSX+C-o!J7lq`~hOx zS*o;O8~=`x&hnAS??&3Ro%TFXPCY>8Ue(m7c4R#c#@TwJBioi@ovPRTTib`}Qwk`z z4kJc?fK~dGGQz1z^7>YVU-}f$)_!OD?yLWeX%~#!5-+z2Z-iQbdvZjUYrV4fzBVv=Kyi#1n2Q~2Fv2|0_Plm zw7+6XI#9`Z>&WI%LjotrN{<9Q4Xn>$P@wvHn`=1e9J%s{V7&*fq^sxvLATPz&kx(gp5oS}pZ>#x-Y)}*G3b^yrrsin=@&qzMQ4@nyIqGrkX7pTuwDR8C<&4zR4n}<^;9)zgN}= z`#-8S+LKCOt8CADTD5@j9JA|F`R=BI9&L=z&4BIs_GycfT3DqwYp7ziSg%Tdy~Tz< zo*T)P9_4F$($ZO79@%;6NMo2U9qrkhvH2WtcC<}&du*3ZA-TvfVw$QnC>@ujV^(kQ zy!GxnN##u$$5U2oG91#H*Km<^xcYA?=AoiOvrl`v!1u7o8R;{oIBTlkWiu^aw{ zX{ntsQ#)by)-9;ID*vBe&8pl8(l@Ggi&ge`R5DE zV8~PJ=@KjyWyNGOw|u(hPyXedtZ(t~I-a6pz#~s}dVt5Ij3woIY44GL!K!;2!QM3L zesZ;f)qpyDQ@s8^0MHQuJ(m&QJ`({kmodUi6PGxC1}T^Di&q4f;HNze1TYwEcbD;} zJuiO_FS}o!4J=*+tGr%bzAXx0Nc^iLHafd_rGztTdHK2g^-)Ug@H*fHQW}Go$NPZ4 z_UXZ>fISqxQP@kVrw0#;#u$y4!poI0*x$s*LPsCzU21noCpekLDWt3RiQ?1WUjDL^ z#IzLArQ7r~K7D-I{k|KQ;A9Xw!1DFyF1>#Mql5_>S0+3z?2mse-*%rzs&y`jL&_g3 zmp{HQL(3NeF?a+~I%jPMqLPR#EY1dDkT8J=AEdOnIC#bj7Y_*p)h!Y!swqW~xE*#w z5n;6mu_Y?Pnq~cy+3s49?G2CM1sFe}_(0q7A>HY8XZg+^=q`9!-@0MDE<<<`KW&#E zsXZQld1#Ts=i}?~S0HTN(4s+jnRBvFttj=Q%v%(4ji92;|Gr?yPfPBN1WXKe`OlJ? zaS(QP&f~8Eg>WFJyI=nG{oAi!|E>fM_;(tCDkC(46_%gn(E=(^G;aAp&ki-o`$dU} z3JeR%rUQlVd0cJyy6ixEp^Obp>yOkL1q9H4x*44H)TfR_ziD9(62aQa)BR{0nW=S# zyrRlQdP-DiY1JRm0V)}t22gG?PC$&- zGaAvOq@8GO7g`&&aKVAWr3K;9Xqu(YRu{`H&4RfJX)y(E;@`3T1OUTY3nWD+?#aE?4OK% zEJ~ggUXh}w-+h;Psy$YJBe9cga;Pnqe8iq6#U9B}=UzaY?rU#Hy?sZ+(_HpR`SdK) z8}nF}3~@fY?feRlJOvF?Y`sb1Ca=%ZC=$}VhUAxZ8es?toVEC#+l2yL6f(kyvAKqO zpmiVn2!u9uBSs{2?8#%D0mDb0gIaWoIx?2|4fsan2#v&vEx~4gJL^ncS81QA>#BQ2 zU;nxE-N>yzG=7y0Pe2OZnOX2`r4b?8if3Av+2HkHAP3I2#8}|6ECrVF@?M$!#}sch z@{&i{xEeB!g}~Atg{owi!h8reIhq>gAB$XTe~U~eJ){xP@8Cd37948)<{CL7Lm{7W zRM3Nrpl}w7MOIjUhg*7~9lL5I-XCw{F5kNq@6wAko+&X;8G}GNVynH_jDk}$DH>C; z>@Wy~cH-wSr)tT<1w_)$S5fm*c-o9sK=OzZi;*IGwM8k{&MeQtL^ z@t7<%zSa3m_gLRs*8ISle^ll`2ypD*^I&!D?;1PR^j~FJtd83^==3W(bp5XNB4s_J z7de4b#ra4+Y{f=x@vC%(od91YI@4YGXf&tdOqOyZ1J(+^hDbV=5UJW`9a~iK|o}iKn;cQ%&%~2Dkywl+r@- zDkXs=&Dynmxs3TRt2P&PbdFpQQE#Xvf0XPDy=Tr}+dlzEXN7a_y>aYkeJhSVwaYk8 zy@+o82Au(3p9?n@gqM?A#JL&oUUk5LRrnC!dw2U;)9zk({+{o0NL8K9T5j8AdAl{# zfb)SG=T&yfr3NP=I*y??$E~-_i_xok zW~^ZL?6PzW!pRN6g2kk8tRgayDujPZ;n)e(UGHn*IG}TKO4ahJLwY8rQZEgx4PE89 zwsw`{b?{mz<_WrDa^d0ssB|2JihisI&s+ajOUD=>`1{n3Q)pskys~!8f4%QoJ8oE* z){g69Zzvus;r%Ve;|VZm0t}i@2IhpF>dl{RIag+UfGMxL!c@+~k`54Ok%`&bf z%Qe(!hz48WT>r|ax;D>Z)|?Z#&HVc{H<)T8W&HV^Sj$nZ6>ue^X5&gNr>ux`Uo041 zZL7^F!6u_!TFknp9G$o5f5>)R&OJfRM;A1Ro19yUHH#G0BjuN(?3{0ppOSq>j(3{m zVq3G-T${?3s>n}uW|it!u30DNPfH!;yfa5fq|r=|vtJ*VpLB_Ur^~oq7y0_cajg`T ze1BV$j3r-9yX|>}?dXOxu1h@Eeo*iD+{IZ_{?$Z#MejnLqCvmOe`YqEoR2vmnGmO5 zi8O^F@8P~^+Q{>Tntx-^rZxX+GSAoin~>;=n!m#Hq%z^k zn!oF6{_TnUNSb!6mHy6Fgp0Kq+J!l{+G>p4MrP&y!XQA$q{mUkM22e$#?Ti+FRE$< z6{7GkKRrk@mL}UmE2!i``E(N`v_XEQlufG~KEt?Iu`WqvMzLR0SLo2pN4dXLgv))_ zV~%>9mte6y7yz4A+bCtm+B-+3V+)N zF6YJ}fxti#*J*(kFl;}x74)Dui@>O%4Wu>T{`-Ez)zR)|t<_pOauNZO=J1f5;oN6< zYAKRRs-w$7P7Z)6HI7vzsZ|OX78*kZPz_3A%$Nhh(n_2R6mqrkGFZ?V7-Fnh?5mu(t700E_CcofB!%J- z3W!=9!Xyc|c#C-=6a=d!(LuU#lFbo~k~o!TrVW4waRcgs9~4TrAg*fCGJj5k^-6;i z>PdOX!!RZ`HpZB?Sb@n}ORT7z)J1WMDu4z*ttV|INXDaf50V|?ErX~EW|cP9_GAps z8mKVdkOHxR1F-s95W=Ba4+3B?sfWJSu%TY+cx$OsaDRZHS6zYw1p9$n zTCAYd&FR@U-z?t#@0aD`+sn(&4_=nRe%bWuzH z^K<+>iU=roZl!LCaDU69cN5`8)R-Y)%u-@+{CFZ%TJBp$m}$o5chbNPuLr}2qY+p# zw5>j#28cNu93RX*H&_E)VK%6Pie&8vG^newl6q(8L9JT0G`u*2`)=6#_2OUu{!iM- z8JZ2Hx%~Ly!}*w%7T>Qvtghbta`A4NA}qX4i&q!x_44X6@qgy=ub{s~0a9 zZMj6f}QG;GbfNCA$ zl>>QRW6}H7>@Mt?BvX4ldJ*U{ZP6q8Wk};b z^fMh^8t00%V#1D$11?2Rz^;AIhG=U;2zmSF^Xm!l@P9BexMui}h;mPDXi#kg5I?ZG zFSRYU1KZjd>1npL(Yf*BRZ-y}8_!@Bu5OJj6|jZrv2O8>hs5 z2B#FU1(_@|s~ntiNFZ`7&RzI!yQnflj3tOUk|!jNxg#Co(lT>ar zW0pG;c7M$hdEaklmNROZA8MIB#9*bKVz7I&HoO#sw5Vyms>R;LzCD(IDKC`{dD-vh zB^Js)FSXpGk~ zs24d?6yDhptdT)O6o+{}Hvvx?q!hIva)}x8e19bZ1?`3c6j7O@)9`r;NKqXNL`mEr z92A=7Gq~cL!p|Z{4IQA2@&S)Mce5`eVkmb%#gpvK`h6rz^O-rq!J>MQVqg>prn!N%FVJ+T+(RW0w(QhJOQ_Jrrf&OJWYijR~8;=B-j$|w||Co zqM@+w{WRG>T=57R7FT7AKwjd?twm;lX9VzmX9&%rd4>=g$x4f^?r5QeDk5-4*B4az zXKoH|&+cuGMrT377Po9S*rgVv(|iJUo8!_1XDy}2y<=9?d#DRg!lW_W=!n?e=IADA zj!R#ylsVe#wdJ@Mg$@$eBgoqfNq?hs&XMus;LbpbIP2aM4sPP7$vj+HYo~0{~$ePD*9`O7nb_v4v)%C@N82l)F)@wr$#})eKl1{ed?n2z5(I}_XeQHyFiIp zD|NU)f_s;a%qzYmxX%U7;s!Xd4u>bG;spO&d;o#EimW~{ZX(29WO&8~M}G+A!HJ#V z0L9|=^2l9_&v1E6C?W#c4RTh86R;DI>l`Uh-IPza*x?lz{_uY6JVP5vEE-32i#@K` zNKat=JnnbuAd!rulPa*bPy_ft@+Xcwk#QK#8kvT8d;?T+e91u}0XY(Sy!QFd9vAc) zSlx1bF%+uLe$3#w?D~Hya(_J6-JP(ls5mQ~GLz%NdGB8B&Y7^`_+aJ_l0Oq4w3~?@ z(rzZ+_S$Ir3V^1s0Ep@Y_-rk<=(uWJO_vT0rub|LI@6w5V-?9!gun^AMT;#w*L~Pc z%Nz~wmR+KyCUDkBmymk*$Qx^Xqj0P?Y;$Dju-1;4Knklxsvsc{1i>*4fv_~q5&;8h^- zW_bHH06)r` z57Gp3s1U>O_m4w-fEJVuW&j{X&JRET8NMBUmtrSnn%~Jkq=%p12Ql(TK{0qnQ9DP} zpa`0w#lg8z+4v}g3TRTVcen z{v_*~kw0d=294rCl6pl{%(IvAygfbv8kaD=J!ct10-FLKq5(TXC?uxnGkGhIn{f*C zBAvdLm$1D(8-Kk6e6slcLWJyP(3o>}uLWO|Fq#r-6%vg~Y3VLUQ?8HGob#Nv5ugO# zSi!rLw0&Y0IH$MPS0v@k8%MJyH%XzRNhfHS&)BrWO$_sefmFwGx*F&fU8@IH$lFDOr>f z(`=7i?tz?b*9xsu%v*NfOSc`LBT8xGpIojAt+8CK>6j9(XpW(qRuZlt7u0AL(zeS~ z`T!jHBnNmljE&MxMSm;wX*GYVc5#l}Q_O=h5}Suhc~rb6DfCL2R*JfI@*Y~^o$}sG zkG$+RBSnznOPYcE1&&tv5&ME|H6JJBZv)%L`~xE~+F#rtc?AS}3rvG`%)ZQ}QO*`q zdM2p5mz`+Yv(|Pz7Nx}h6`vA|2lpFN ze`ClMm{?@&>XY+VVg<`iR>}0a@ziNTaS?`mxCe2(Ui!6=+Y1vajlCh#E=YNQU$SmB zj$T^unD3JO;&Q{zC18?UK>~xy^yh9b+~vVBg;`e~B9s z;@w~53SZ3akTS~7m(S_q`Nw{eHe3Ud>G|bONPJq=zuHQ9@MNqR)0(uAF#=J&Yjd=* zKcVeHwOxVoqfhr|F-qT4XC;ARK`LQ_%#0Q@ldt%v2{4jR*5jj>) zL}9|le+H2d>W4OSK;UzB&asYPW%WTfQQkHcN>gXqfbz8gmG5fXp>(5bT~|BK=$fzc zO~dH&yL}q5^Zy&5<~{mSSGCh?y`6i~l3bOdiKKu{N`m&d?!b1}SHZe4pv4s#50x~g|@zp*kmpH;b4S(th6bhTJ z?gW@yg1#;Gun0E2hh(ucd)U7}q#l0Ic0E0r2c`jc*|J1Z6#0oFt-H5QcOQ07ue%@K zqwRu<4ua`kzjQz^H2nunjox(uKzW4j^;`G%gVx5=^+cD|8j-F*_mO_xagPwG2hba! zUI52^uu#XKp$q8pWeoMlbblyx%&ETPc29Jo*E|l0F1%xE$A7&3xYJc=t&-F(#ZPPBZgT8x3T zsJ(Y?qD9c8THAS_6!NR0MfS0#xP33_TFs$^!=G+6-+)Q(ox1|D6g==aBcSwBZT@TJgHmi5*C z<=ISHJ`Mbg0cCxX{J;wR+(OZ*U}mcT&ks;cDup1TYtH~hamXN#YrN@khBD5<^kfTI2jMc%mH)QH7 zef0CF&1Jopo-wq$`A)V0?t@j%-vIj;A$>xS5uEXsQQS6EHwDodlQXJUX70ISbM4zS zoZC41NXHD;r+@M)|Hif<6qug_`6J;(bc!x9qcy~+@G@1W-aw2V6Rr^h!ST{8%W*Sj zLt!vV#w+O2e16iocelq4)ltyxEpBM3g5saSRK=9e+p5&)mc}Xtac8Y{S&}==RkHSH z?N#*N(qMz8vxD2xUay6zDAA<{t z6&XH$J-F~u(Iuy_1{XDImnzg-9F}UJeWfHRDpJ;>B=-k)&Uh7L8nB8}P;}w;MyM?v z{$WcaoKpNl8sT&bmyA%Ta8n}`lDP9mxFE^>Mracsw#~3>tr+1_s`2G@p1CBl;B)5k zr;a*)=znr=B7lkFg#UNkOoOPi&q*7!0EtE2{qWznFMs>|Pda;dZ~x;Fy0gkSNU{4? z9-UPf6Z-CJefBC~2py=T(UTq{ZK*)-+qk~rbGNg!O9Q$%YW>QsN!e(5f&0NZ+ZwoI zr9WzE5-`EOwXyp;Zfrsg9P*5MDfo%0)Uo_XJuh)P80AiUP!3i%N=BI^`0L;~*8-CZVdesCKyj{H>0AqfsA5zlF{o3@S^^0beC$RdmbvbS$$q?A zLFBZW?B}wA20SpdtZdS3nh_h?%vwJ!D$x)~q|_@hZ#C;mq=*>^slNAdN$iKqMJHpU z!hq+5bQF>r=MPonr@X_}mO&uEC%Y&`8<#uBJq&+>N4Uea3GY%CvlPj27buV+>qYXD$hAT(hO9fflzbN494|^EMLQ|LF$2}l_T2zE*a|eAi{xDP^^D@W5 zjjBOhsVt5bE6>;f;$}Bm!%8I72eJa8>g}+y;ADCTD=h`ynoLv(*}Ue~A~}VsO zV!r6y7WaN)%Gv3h( z?9w|?|n$ z`Jh2e@B%i7-VcC-H+MA%b&s zbdUr~=JvR!Bf>iQ_SW`y*J-l#PD42$kJ9|c^%TQlIhByhCxE|>ei6LltwHGbR2i9G zY4SS5$91_{0!XD3UQo1eN%?yJ(!V*?YSm*ZcY_++D0bXjQHy>ePnhso$eZ@ER61c= z2dXZSbp9fvDe|cf@O|#SVM*v~2~EgY@UONm+F)rH=kZaw=og;d1^1T`-aZqTF_2Ic zm*LqHDVHnDJ(_>WmwovA%U=&N6D@@|;WqrtPoG~7e;j5ONJ(KpFJFHi!VA`aovn)kv4ACG(kStnUjPXK;S4oQaNlIew z@R={>9)lEM;F2N2CPZXrG|do6^2IVnmLW#S2^w>_w10n*{9%O2uaJ!qVAKp*$$_pq z+oCWQ=Gl5h2M@5mNahkgXPVB7^sGG53e@%rd9u_jgJ(5>fGA=eMt-|M<|9_c%#u&o zh#F?3Oo`i(oD*KHpam(>mh_$Q4+`P zwme;s81UPc!!bR>l94{6lAI*)}<+n1)sv5N&?PzEWC8*tgLTw62aSz zguD_4^$nf(4Dpzh9#wNF6}r7zm0!OIs%5{R+$twI( zetxAqZ@{tUj0D{+Ii4W?-)NFD!nqb$I$9!q?o>)wc|V<+B3lu()mB@pokIsca$0FZ zdWu-@E($q`dO=GDN`SamvC4=>2DkdG7MmFLSa?z!{syY!{ z7x_}@H)WcTn-eJmEw&g-yH9zQP4Xq(TVJ0hACX4KtX9={U7t#Xq~;%E+&NZV${v3+ z`W4LnJ^Nv7w8U7|KgBr%u08*r-iDS;$IS>~SgC8)K(RyOP>$LNt*7j_a#*dfi(-XF zTkJ}0`1+FLl<1mickOM7F%wsAkS=skk4;YGhLzg!BUJSwV;pLj8rPw%U@YnzPc43y z5trr^Z6e(=oZ?O1vKCyxXJ>Xsx?0hwSuF=d~_*5)D3MrSm6v zlg(F9&L#og%!TIc8+~hr72jpsI@Pr(*5I2~1Uu+jTdvjxg-hM%(x>w1OJaX;(73U( z8T4!Lmob+u3^~WrPx^BqxU@s{%R^+%U;(V1ar%Rt>HQMTqHEm?M&|1;9qrqdBXNOxy!b&$o zj1~0;S2yECNh1uGbQ9iJ_`f~Q6d8d*S0)VE6YE+9SARFz%Bh^HPIX1up)bIedrw>f5+zrOvhIGK^}v75H#t=Rj` zz7N>_9^c$h+lddbBKI?TlG|q-V#nVDkjwr8c;@P@S;N)X(a`*X4km^MU4o*hYVZ zQ7_OTFGTw|I&B*!Ch%>b;t%lZXu>z)tl30b;H!tMU+&-@){ zywOz4Z-R3NN^^e#W0pImLufGpRt(AHHZ!?Az05Aox@4iT?~`{p5~eNdnt(9MFH1*K z;_a?6_vK=N0GFJE7YL-eg3Hs)wa~zl&<3i|b`t8sFH@(KxkW-vIt*?>>^JwAiK!S> z3-p(a0hbSYRp;)-V0@6ELASj zfji~Z{Y6{CwEzjteB~i?pJ3?VFmg^A&e>^QArCFSZmZFx3{82{wYL*&y(c%n)yheu zMQ%{!Hei2`Ywg~X`@Y=EP^&hkVn5SK17_3dk6o4it99lKSVOb0{^)}14gg@=uDD$b zfuk(JiiDkB6sl%U>s^P|tuJoqoC81*&aSYBt{*1lJLdgrth-gVGw2C>>{6iJbJ+c! ze-b6uyGwWR5hk@xlu>^=0s46Zy*t>u69-q*)9rsXY^qicdmEkI+|Rh;#6jt&=BL$J zf;eK5A#`UHa2Tom7B}s^^=>4(bl06GNxi4C-}PANurrJbnU38qT0JUWOF2` zK3(3hmHD(RCS^YVTE=O)I=So0lajM>X0B8ynby5V(8v`Ewj!<^aL@O=@Ut)O_ok*?7M@~jn&<&AtAk8j2J z4r;5dTD&)?Ug65I7P(D}JXV^!4bY4Mdt4WGHTGo6`Hj#)k4Blw$J1X?@X9!U6{BUO zI&RkGZPBo)Qr*pSTZ=CCLfP18(Q;TR)z*JtcB%>I&c^nwq7ZUzYd6^Kytmp>Dz&Lb z7p3M!-6a#K+KI*{xSIu8MO=jH8Pm+)xIpj1vjQ)SH8UmI56+TtS}0d1Y3w{n$#>At zSrYn7>_5%gvVW4ZRiZCeneN_hm7!Cvd96kU&lsgL?DVytK8p5{xEXA+vorLwJ)(c# zvd75zX?v`=-p>}bm$4r^vw2fJMC8)X&9Zz4(?ia00o;t}{Vk2O5th`1c*oEz^yibx zS*V<$!I0N%1$=Nj#+0+3QdYIxjmDz3JAIl}POeUrcG;oq{MJ*KvDKWc?M>&<^t`#l zW@~mm8`eFKe~tIuZ%;pOM47bU!N$jU>)-C5Hs3bA3R){3*z?;alC>hP zykt^YPGs2kKiJFWv1i&u35>}3Tus-U`PVMYG!TVDmG;d^=Bar zbkh&Gpu3J3&_qXYq(zQeU^Pt7(Fj~XSOYQ`cLtt7&4E2BMp00bI-&e>0_Ibx63Uv8 zr5Q6w)~3wFA3)CYAZOenN@fYYhut=NgGo3R42@#LPts;W8Lw-_4EC;_Zx(ac;j_Z3 zkmkmI^rB3J#x>D4f1_v+QA~VxWqov>NTR#twefLHdQFZm%~)in$`Qn8IH5Ge zx#3wnt>yxVPMM}Ctrk&`PI4nWW3e%b>b{t*d zSP;9;ig&cG5oxcuFlz>?j$`k@*TIq1U%{{QUf9i*%(5#R12kt?t+@)8ke93(MthF` zqY<9(;mBe+e>pe6e!#nzs-|NlrKXsXw0uB?opU!Ouc`@KRKo16jT(LmyI3FocyWSsEpemHb+Jz6Ug*vHMe-@}6x6=w#b$>zrMqJy_%Oibx z#RJcAa<&T9KQH2#bIhKjUEYk8=2FR-6^N@MvN9fJ84a>yWE|EZMX~Z;O5Cz8YB6Tv zx-V@9?IRx3m9glD;d2bn(F5^JV4bx?St*Buh-fuAht%SF?#iOpR5R{o9qzC!tM!b# zUEsb#e-uI8?BqwEsB}_SI#TJlUVWxgVH8cz3FRGhOJ3Q7o76aIi>n7J9S3DcZdN89 zRa3>?s+#dxj{Epw3%Vja$RJU~x>F8WqRCF(ZVK_(Wfog(Zh^^{mV#d8FG^5}8s8NJ zRDPGERIH+*YhqUrBzh0cl-ZsFXq;vRbVaX}e-3vYR?L-pjz4rYDmBsrCD&Ac%JE~W z(YiNYkgt?dvzvB019|7H$$E~fA9YDxjB>%DGVA4=_vQP*=c{*#_~1D_b|&7wD_%wG zLCM!!k670>B^qhXlaij}4^^W}vRn)w-`2?pWhhgYLl7s>$gP$EN@2JN_K4?P!kL0b zf2wo*)ZzlpUU3>epB*sw1|FT4eD)<98XEjP$ zG#cw|obTq-->)w}J^zlJj=la9y9$Py!%*<-Ex)2#mR=$A`dZ$7{EUwXL_A=3)yzdz z4La0;jquDi8g@^pI7Za3k&1%GYbi&Af75A&L&qjyM5=R$92>RD`#L7pSq&nRPHh_T zEpjPi<15D3QSmiilokQbt-=5_nY(l~nIN{QwG`rl2$nf5q+= zh#5@7>1d!-u+8`m&(CjV+$%NS0f9)=dbA+?r;Ei9g&N+WJ^+Fs5- zOaHb2r9fK0Ek5)d4xKM#Zgp%<@*Dp%PIL>8QihcAy3OK1r76?-az&_~hrweI8e-xT zgM_L(#Ed%B(zAt(UhF{X7V?@erN(xN%d!a>6s20sOep>{md<;BDatO;c4npmv4470 z0IPfsUf0@)ss)gCre9-cX9-oMn%jy=;V5!uvxJv9bOvV-*h4=@Q{;`ao@SR#e#71t zpUc$SqE{H%Zt34NbfXnccDmap%X}EVS9CpXv2;^T!Go|l92)JQH$tec*!lus#UFu(dqW&UZPwiIQ`TXUXDNz?SB zDaI*_asNK7jXvVc+$%ZB*pwFbmLZBSZ7st#k++t=(r?QR%l$u{@lTflc_9-5HZhlh zh6NM>IF~_j6epLr-94Xw(iL`pfBV~=%tU`U7(WDoN=ds!v2`d2R-t&LCx7?5d-^If zVTK4Z^xN=vBET3ak*483k2@j=nK5i~|2)5T7OlMoA}s2k{}Z9?FL7l*(g~1zW|&n>15DWF@L+I+CQy`HiTb%KD@l>CQ26 zXmE`<^87Qzkyqe|A>oZs>qwrTI8OJnN}?;X6XZo2R#iF6SMlM~ng14RLkr{I=gsmh z?U(R=9+f;htV_u@JEDuiXLvrTI6P%iyX z4wWP9>2$ z>&q(s$yfWkOr=%-9PYjhcOSD&unL4SR7vZ`SLD#~N+VTCjWB`ErWQ&8 zt0-iD=_Uz}-#>rP>%P*e*XA?9xd){MQuuan$v`2+PXsFl=@jxV8O%Jr%r2&waYH<7Qz1@vGGaVe}#7CO-w0<>|h*6nZa<(OQu3^xB1+M(4&Ac@JS3wKubT16GJ$LE1Lu*eC zC-e}DJFC&^e#DTi_z`_;c6LeMM%_vJ_OD?&E&GJ~#wnCj;t2wK_Jy#t;Syf4&?YV@^A|)T7)z9(CU$;@+5mw5n>C-MioF-k-C7 zVpHV8noJ+B-7iv>UuVu=doO|yyw7|i`9MY5L_SrKd;ewla`&+Zo3)QrDViJpXJk4- zlaWuk4&ohcx3rdAO}pKsi{9X1DDL9Vyx*A9SUil$w1Tcq5#z-7gL4diHvcL?t- z$0=5p`$y9LY{*XFxRM#pH||z$+ks2H{MY zL43X(qNOa7_Pd9;Qq;4QY+66lH96Uf3uNzun5(dSUM31_GS6IRv|GvX-IEOC(BL2xp>vM`7 zGGw;ws7Q3l@yNy)Q#NHBSJXy-hiM#H%T_O2>+@U^9m}D-PA?mcNhy@~!ErJk1W0I| zUvvgJyoq6*PQO)yvBb<6nu>`}O@>7Et`^Xb5MDsmGWXNSz?_T(@(fD21Xc2#Qt{!r z9QnriVFwS>L_mccVZw4~AGalp5niDZXbkAn$_R2z+LXEjs+&qXxoIeW6;L}?a7+E} zG|lN6ZP}XOblYmk72vYEv&J6|NTHPo&QVe_@!NFrEKC&dr@#C;WgLjhOO%joui7Pl zDoc)IX#~C%OS>dtIma%nMh=wQfh6+{j#4&VO=#!AxkHDt>;uV^zNuv9(>L#A83S{L z)ymY6D^LnosWHpc5awflblI!v(!r3&HLG;l6}s$Ex?D%sQo3|1?bQ^EXg@~KT{}<5 z9@SdM##fujGfg*hLpQ6esvRpk%SGFfc@M{)oh92zna0+>z|o!nSu){*n@Q`;T0h68 zfISq`+Ba8ZLcvIC+KyDW1u7_ot*QLnqWsh>i>Q)4oh_}&gf@YHQj8fl<8B<41qKvE ze80MBdK5196B%IBE1XJwrrF3@NK4jOCoDbVrrc5dkR5v=wI=2!4NYiA;+!JZ<@sZg zW#3jWOHrw8Y3f@~%1!&SnSBduEaNP1ZPR?s2e^vL>4(b;H|O_TCW&*3cxi`wh|gC*Ol83yqFpI&(R#2mImxS2MCBm{H&sS|kQ`Bw zM8Nz=5#J?6m$)t9Ki7w|2$01hEzORwV6`+b4*B3cXNT{q9mSrJYa?e}^d< zKXa)APLd30&f~u6WS2C`>vMY5b#{%2JwA-OZ}Kyvd0vT==QtWWXWHIziGdSTljGI2 z-gWKI{CL}>W$IO*#>BPpJ{GT1;B#A{eIhjDX`YZOYwD9y{^X-;NLni$^n0;2xv@$p zjv}V3<$fxE(+S<<6A264W3hFZC5>%by_o)h50w6lwe2QNjXPhTO)kmt@t1^@9mH8j>U0;c4*+|J*LCd_`2*UU4(REo-KCAX z+ypx%mUEh5sjbyPyrxm-lrU;0=xZ8v&I;$;45C?o-V%zirG}X@UfZbCQVA_*D!J0B z(|pKaCWT8nb-C}>bAO~$rzuGB^8PUu^mZ8SfUc`s}2lB zccYj2!{lLrhP3-fBKAIs7-*!3#{NjeV4`>%lcdR#ZK+r*@U2+dCAUw-_-RdO9{K!j zdT`8t449@YbXFpFNy0=vRk_f&u+rh*-BY0P(1e1QzmvE6nu`uJI3we{XVF%9^yI2T z=z#NaQBE$se;2te-GlV-W|hI1ZKSRMzfouWwiXya1|`AwT%P%!j;E-WL-`4i`qo{d z@|?HsMsCYHEKuR>C;Q)IyLrTo*$=j_pvl&MEKej(1a0Te z&-=k8*=-WnRfXf?7uuf5g?oG;8_FwR)nk>XaRQdQ|yh zD<}IgYV6c!jISm9ACo4o_m>ggJ`=HS-Py$^0awef!lH%q@M| zN0pI~b-@*vJokF8^cs!U8X8p^=^6GRs}J>n5ot!BX+c_e=rjd<#%rdiP74|IL{Zf! ze-k`4+3Hqm_$&5n+8|l>q<0W2H*E}ZsWOiwzbyKaH3-Mc7aCvYZ*wtp>hF$A)%xkY zmM68!2jTo&-fn*-+Uk8pPoB{*Cm`ycV%l+|JiT63e!Cr1QF44;NmC}$!$}!Ubg1j5 z=SY)&s!<#AZh9uew0n1f1L0*@)gH$*e+Y^$E86uo3_;lFomn#N&VaB!T+aKWkqKdL za8ElEhwG?D84TAspDaa|hVP3!fBF?3I&Cj4Os5Em%wM&J*0Wvy)JB!Hl|tKq+(-fV z1Y^zcE4r9@>!%Ovx~_we()W^Gp$FvVR((kHLTS~{SodYcaSfNOAq?MaO$sIlm)`3= zCJkHY$x^ssakqeRJtt?E5$ruFf9Sp)U+;dIxi`>CL^XW=ewW(8C}9vLMJAxQJ!_u@@WI+(^<7Sr?xA|1rha(S`OBi(8JK6 zoI30ez|nZ&y?bjMr?Vy;x4DI7JcCE`HlJa=@N+$2A!qI-%e~0?gScBzJIi09}e~mK$k1MD3B-fr*wgt?d z?cxcJ0GzKFbKq24_}-^u5}CjKrhm8H2bWYB{;>ORV)yavE0naqJG-BrotBv^-bR}_ z8M4hXbHKOGf5L~{&@!W2Q8MPlr~)7z$`!6R{W;L3&K&v$x<9Ln6xEs}I0Ndxv^Mh68RE?(NWMhrS*nq3%Z=@ruTP>)Z zsOx6iQ>Q_@^>AISMjJG_=vew<4ccAn{F@YOjIpRS`i8}tj^YiAH67(M#hR}78x?EP zTR0Zpf4W%H&3a|Arlax(r# z#nZ)_etm9HthpiXwODgQ+-tGscDPfqW*hEQtm%6nuPW4_&GIwcQw37J_5j3IfT;|IQM|cPp&Y3fs z-+JSTKdSj|zP@mz19}HHzM(gH!;xpnrcpLeL{a2Qd8{#_ZMmM?RguPI-F4YS?a)5U z_(wMJO|pr2wnK0DJ1inC=k!f|Tb{oaow;Gc5f`k6vG8l*@pMUQOck}d1Iy62ckcEj ze?9sB*qDx-4B3|SWO}i65;o$NDbFZOvc}*s9vNSPJMuact#eA()vTT_f7;unM=!VM zRRZ+Ga4U{u@w9PMh{xV?44@2&a1Wd%(^M6BX zRw+m1Ts{IBNUwAtICt;<^YzQ$KK~O{e{1;q-!wuFAhcC64BzWlgKiYVg5g{J?l4H! zcq~*R;x2~)0-nY#cA$Z+;q!0@Xw8(dfwg{1tx-S#t=Zt5?C_~0O~9InheUB~t@C~3 zjg6}|MP|COk-jA=b!_^I<7rg-njZe0y5gvR4R>FLyN?aeXz*V?S4y`8rxKvjf6XEW zDK%*)(6=ZcIHH#+SXyl5f{tB<3l2=q#(Pw_bgHehHDRfR2~15$izrZ2W36jn0ict$ zKvMJ)PlhqQwIqVf*(_CIEzpjCfBs&_eZ^59*k_@Gy9^cEI{YK1qnS&zauN#--BJ>- zcBkI7p`RX&ePAg=HA`92%uAcBej~yMb`UK*pHh5LW^G0eP;mbV_OD{w|K%G zfmz9Jk_@#sMXrZQc9TMv@wN^5@5t}qSjpmr!}Q(~g=h61*mL`J!%J1;9V%ee_jd1x z{u(pq<@?k0e$bdpvCXqL&ZpVjrA%^-6zt>_&OmRwkPb>ZsI+ml z(lv6FFv(o$@m}NDm)5JwL$^XJmTewKbA-+K`1z{xS=e3G5p{NdcedKn3Mbv9(&pPf zZnss9RJ|salgN&>DYtm@Rc*qKZlbdKW42%=PNh>nNf6i#QfW9pe^kvZJh2lTo#L9U zu5Uk83tOnnDs$A&b{>H7cHk7CBGzuzmeK6)@i=cjr9QD#h--XQdkIIftIN0>h7D=Z zxEiFF{1&oWUi)Z-vwcRWQOuU9)GA7qaKcyl_0aU{76o=Zh+v!u9bfzEK&#dbiCPt= zwDWp`>*EMe(|toNKC#;uj$<*k(sE&!7Ano3gW7D#^SHpgee(}$UUy%;XB==9REO?{ z`A^;`);8CirZkT%E;tlz=W#*3S9}kb=kz@#MxJ?)*g~s`*`c7Tnc%vG;i0<(&VoU5 z9N3Spk&{X4uh3r_v}v32AHEm;%-aB_tx#sqt;StO##|SilJCMU7JmI7o7J|Lk#qtR z12!@+myxXp6PFQhM<|!0^*y0~_qX4^{{2GJq`%#ioh(t#Xt6Y7Z6pC&?Ti(0SHMB} z@4!VVN+ocX*VOLYJZI@wpf2ebXqE4!Ri{=OKjkgbP%8Jx)TBv0{0JK;`}yBPS}R4g zWQ+4Q{d@ye73a*gel0WM9ye)yt9p&&rF&!MHPP_nSozhaRarmhOetW0!3$m8(oK9! z%R@eZZ{py4yGX;+^$6xwls*|d(~g3**cD6j-1CwjRviWBYdprAZAw6qm5$@c`i%dls`gx0EL9W;gZB~i#AMPr&NpA1{rxpI+gP$mbLI7^jgVpou}#PJz5kCIwK54=L${uJ~OpAXBGb4H~1I6Xfm z5k8MlRK)O^6taDP9-`=oGj>K%Eh5N;BwX;B7SQ2(ra)GfyC>@z;(Aig5Vak8c0HwM zh~EG`!xYc!8K$_cXIKlqgPti(9OKW{v!1Khvj>8=MV)hy99WAfZ|Gcuph}=s1ar#< zf<;FVf+}&jl=x@Y?y3yYN=!;B;@~syYM-9U;T;uGLp$n!Llh0PFpVjmu(7<4V~QUq zC?>yyC@$L=vw|?=aPR1ic(8@Xad$vVih;O;-V)}_K-@W%M5>Xvb83m9dMECjaUbcf z!+vA~NTxUr_Ux|5!Jb|EIM{_H(we=nOAaB+OzdGxsn|d6YPgn!vYE=$kL6hyP86S^ z5ChD({Yd(M_#B)d#?9o~P8mjnC7uddWMuFUZ$_YM9M6znw9soGYzm|7T)0f86 zw_D2DOzD|Q5WHCB}wP4!t>^E}Trl*+jX2Qh_O%G|cAy?MTRhD~8 z%U1>NrAI=67q|6DM5f3z-#oguX-d7+QG)wxy%5r*G<~AtQs~dpy7Q%xw0=hGnnME9 z+zCRd&K|Uy3n%k5V*w?coK#sw<>bnLLb3n~438CH3qe6=t@U7ThPCjASlnQ&bM#*l zHJ*`+-}kOMj59F_eC@>1+vdu}CBJ=xvqO_Rnrm@p!hVNu{}#Ql)WB@+SCQGMH%t+*e81!HC~@Zzs`IUa5u znOojqyY@^VB73r3Bd+_CyOkp?2zbS8E#L9hU9?2R4_P9%GK};AEl>7>*ZH~3H`)a1 ze00f>!5ZaeOIDlKHDJl<-~{u3y`6KVR)t#dP60+c#HbIpLv5g^8yK%(ibDgpYilZ zR9WuLIUaH<6pP&CL7LwcT_hg+T6Z> zk1ySXUZ&k>Y7!??+?3N&pSki|pQ4s?v2=3fQQ@wh!9;#R_6(XKqYp4-`JRCRoTL`r zr9!b8==rybl8D`KST5a8YN{ob`rr zT>(Qbl}fxsgcALk=&*7F=i$%>;TU9=y(T|gQeTsvaNw>Dn{mx2zy+&$fviQTl$fGC z+BvJNXQh8Ht;g0g(>mh_t?`QN3y1^6!XPbVLM$+fZ;5>usW4}M!KY}%v>wZwEuk!2 zNT^}Na;>k5F!fc7mnF*kd2gJz<=O$Sg+cr&Ao<4iCko9*J*ED{lqFP*jOP%= zsD;g}CP)1B%;w@Z6#jV0BwtQK3uUwP^Kf1+yl@!D9M(6pT>=syAms$6dLrs&64=<) z!_@QHMsPz~jMPqlM6uJx!jTC{BvZB;m9vG>%9R_x>*et$afQxqgeF?*Fhs8NU??0;ykH#6KO9hgsLGWMksI zeG@xpn4fFYh$J7F$vwN^*D}j?2G7e-G+h;pENdr|c0}ayh@Gx(7b%&w z5Rq|%uafwabV;)o$bC-dNG|RDk+w7T>Jah;X*P#;Wo{UWb8Vqk??9#?d6dE$fBsFC60gyIu_I(&0#(Ws zkA;hHudGj_Jr@ICGVfv2&Ou7aylIGb8!q=G(s z31!K2w%;jne}>tXY`sMNjB7e8q;zL_++yjZX_F*MdMw92a%k#5noF+jY~FmN+a=2J z)NycXR*V)*D>n1Y!Q)d39@hp9A}_RA1PvpFWxc);H6$-dA0($A-=<;YOO7GVvZ16g zL^DHyWb0|($_uhJhUiaO?Wg7j3TBZpJJyn-mK?)rf224I2{&AzImOvaFU)7=t4vnKPy!oZ3g^aW>LPUA&GwQ&fczxHX|K zdiGmxe@)g1E7gu}Jy87R))(D+(AGP+^=M%~uWPotHYnl2jnwXOZ9~FptiG);m6esd z%Y`1P*}=oU?uogIN{uJWs9me`T5iOlj&ZZR>a%}P)`B9(S&41Um&2lo#psvMXR8jy z1-`Uql%!_g(`}ylhW?ZT;T?{<-kPn0>q+m%e{2oP2vX*!q-&Cf>FPb>+CcGUi)@W+ zB{rGtoUSX^uZnMpc&)8}PJAoTXRfs!;~VoRfEISSC2fNh;Xn+O?uc#L8|I!`-sVfT zPD_`3*maPp$&TGcuI6j+7^Hbgjr$gBwGKqe;B4g-SDjxY4+)Td(vAf4RCUb$i!TXW zf6%h+ddw&f=!9{_$Z-0NOs=*88amSE8Qv4Otw}kXTYwr-!N4wluvMLZ-*^$~kVV(Os zMBPf(|9MzPZv|RiBux_T5c)$@>*;u?kp_^jF;4n!s(iP2C` zOVzfOcEqxxAr1-(9($^MsEn>A9tuWzT%d4Qp?R*MnFAKL7BA$fu5le|n){i0ZzZBs z%sS0TNHfwM^}cdWXl@_=J9G}w3G%dKZWt&Qm^GYl`8AN)*&q0*f4D?J z>C?efzWfV^FFeYrq3!k%96CXXFbXqvx^F45s055KwpM9Dtj0C$$8|u{HOG}Al{|}mQ+qjR~R*}ONNX=3=5R7Rykxt->()#!}-dssU<(2cuOs)J!c9v zQc(W->LIuUEIdLl3W&PEN={A-f16(U{AF>hB?$|AK(oqgVa=}am7-b9K{u~=c7T^a zY2l?Cce=`rRaW??zNXm*GqIdT5L|Oq=DK-`N(v&XXQQ*SG*vtmf9aHqC);z_ z{jwlsb}>@^zO~W-Zi&5zvC{C!e&v5krJ<07cRLmu1Hr1+t0Qblx^seOqAM69z^Jpk z-x>!}KGW%0N>2)3t`QR`uxo?ptjIm6Mc@3>eJ!Py#W?kU>bI_i; zQDQ(Io6UBFj}!-NkbA;MBgK1;E(&C?9Vh~5(JCXw`>irie8Vck>;}-?ZV~b^w3R5d>oIK2<ew!&FiqJo;_$LJOJ zw7u-QyrOp8NA|jVf3Z)2(VkXc6LcsnVc(3jcLwYtuI3rXrizFxc1=n6-<|sYJ-wcF zonmWvF;^>{n(Bzc#KNJBnm%;i;69O_flhGL`m)HkBoqq*d3-sgPzWn7*7NS3Vxf_YZpoFo0`ug+k z&xrs(P6_%>3LQL7|C!RT0EH$@Qdj_I={sopH~otM-~IFZx8J`04uYorJA%r|2!#;* z^fNztCupBE?MHbI!m29{bRcOHr;(HJVmQq z1o1K>4wn9{@f3ssM~c+&m4_S%1xTAMObJdRZj843t%FKfZ;hrMdf`X|^;B1@d*+d5 z-#kRP7y}RS_c*@6hheWYQdJa1+<$}fgg{3Hg~Hv;;raL1pJm>6n)R{y&Uo%YX<^V# z_tp`&Jw#l|e$lVmZvkiMV!zSOkZcjj){IYf#Vf7Z*MNkU{4_Nr<-Og{oBOnzAtX9d z%a{4VRITtqDl+fNh7C8yJ1~K?$y7ExJz{iL#DaV6Ed4@qHfSqT-W_SXYk&9=nOriBy;N!o#Nng3~@K8KDR0yOXFFmlKoAMYbX z&lmg9!X_>yia|fCyn~3}xPSVVNWjBMZW(l>W(%2BeJPwVPfW9VpWh~(&?otV(g4ml~`hS4MzlgHJ7T=jDvM6CD9C3nz10STPK1N%dDo&r_3Swq{4w=VC1tyBa<(05 zC^|zalC5cIc+~jN_9Q%<8#?@kp%k{d1T1OQ@)^{t$i00a7A&|sQyV7wm@K! zLnEWc7)+vD0mq<1KaHB=3*)@d_l#C(>WUN`c22gCbS zm7eu9>3mr^M%Jvi8;tYBum!frC0yg)kv&lwemXn$8Zs5I3gS}n9d-d@ir%1SDu-&oK3RimEm^Rw&vM%A;?i@luCw~IBb zUjguXeHdtdzo8FQg^?f!=u7RzP!2@_VBC#aUz^;YT8PZZ^OwaS94?u7TzKHKu*R~B za*~~!aaK6DV5H<^3H3DpN$YkaZ73-QWP%fvFg7Yt5`VEQoP1_R+{!M_JIU`C?&*4C zHV!FA_HS&=!>Ttj<^k&~81t~g4UBoD`Lr<)&{rDsxSNy4JSvK8-tnq}&FLn#C&Ke)Y(uNeL=Qe-pp@qp>ET7LNODoFQ^-^Gwvc-XT zokYflVSh0zW&_taFH3ob2{&+FYh}etbzeNuZJcmA4^i`Z2p3MaIX0^WR)6N<`a{09 z5Cc9fN#&g_(sbJ=CFKYyzr}X;b>;fyrJY6;8vR(>SxKQxy-8(fBnso+I<9n!-YTqg zNcWT^7sQtm4Z5X3o(={b@I`Sz31?tjbt4RL(0}NGFIbgS6XnR(A(Sp+#MP@>FX%HO z+Nh;CuJk&5gOKM*ll92)b0S{Q!iAA}R|GsQtw0==X(Qh0XxlLIrQRVy;}4%2zsE;c z#oJyI|KcGGgniPZcq_D9*zI*;PX{9q=6kab8v!pGZ4G$r6}s?<46S--T!pq9(CxTa zrhh%ky(-?oUU@#kLo3ou5;ORQ1&WTg7~c9+YgqM0kz~MnMku+$<&@Ae^6?CxQ^Lf6 z;hHSFgn$9#R+e32z$g=+&7|I~Kz}M;PacoC<)nq-)7NVpf{l$ZX4@ewPbt~>w+;RE zjCvopvQcj`Y)1mW(v71mru(;7?8c$+pnnX_<8B-Z_UHr7?Kl(?Owcg58;%=iWqOw(UhWK8-ynv+yj_p-Tdk1YeqY zLb<@_Fs;Z_L}!^in&wcw7@ZTmWq7|C6+c(Yb}<}aq)CJQgAl(cKd+Dcnttm+Q-Z8_YJzex|` z#R11fK8`kXL*CFW)O3j^mVX==dPB`lcBwLvu@kLn{U3U+6u=H~DNtvrOm-4V>p}H0 zo|C)TirrQq#n5p#dcW)1RkxSgt;A-o_6}|BH_LKSk#5Pt5Y<41{y;suu$e10AHvcj zCi_dMXyRF7jftP^d!^h%lJ>q1-#UlJ`X(v6cXqz)Tpoi(z0SYbwSQmC+1P;;??#4I zi^CXc18;;g^I1sM%sy~6yjAMqR$Yhf6<3A)#l3`75QG1forGYO0OfDkN;qJ=VK3o; z`Gsb}0s4))2_qL2yz#MXzvz{{ggvrXZzb%PyFn-6fbjZ8!T}+k>?0iHfBQB<058-{ zdw&Ovc>cjOP<04qL4Vtpfua+ZO0xm_0v&>QEFj&833SN;{b>i$&$^($3A`5I!shx< zn>3I$2?z_yqrTiwSE$sCH+paDjQT}ybOqESebr`yfqvN3W4_?&Ck(mj6}LU*>b*z5 zb=gy{-h1G;xMI#NRs)giK2mEXq+ba0x(g+b!T_Fi!Cc+LSsWM5ol*bFYvgp>)Qhd$ zgYUU%TKSJj{{RdV_~$?5yu z;c55oQR&GEZ@}U7^l1XRA?ZIz8nk9|0KzJmp1w{$-b#s^xe~^+21Je zGy~`k&@6!cjepa?Gz#egx@@AM`D(sReDI#{g>g%Kyp@3th%X!h$NfK_{=SpEXenkJ zzJ`zS*Td89*WIXsH7Ee5k6(9TTq_XDLWNriL;YS#L%Qilx=42&Fn@qSN9#xes0o6sD7YIT!6X${ zrD~e1%qSJfTAI)|WC=rPoA8|wHzuthtR#-RZY71QcS5U$E|Tm+3?f%e+%)SYANM!O zisq2`2^}!Y|Ds0S$PZN(;w)z8M_C|OSBA<9O$Hcdn|qdwSR2c0?jO(nMV#}int^2{(Nj43WK=72G+50Ryeo7ChWH22f$XlOMVc1B5F9N z@!%)&d>bl-Li&ZjfLUFqQdTInu(-Sr7t1zks{f+wZlsZ2_MP!Uk^QpP55XJLXNXc- zW*>$44Z}ATuuQQh`7qu#R3=m5I@MjGEOR{SJbx$Hyx@CC_BSg1#O35fkhOkaLtV%1cCQ?`Fo7(z>pN&?Rwyei)N*b&FLeK z5`BP7`%G`LB$ww!E}kJ&eAiS6b(zWAHPbQtanyF)S|jLWba>CscV@~l6qAfLW6p6P z9Dn7~Yvdd=&%%Pea?Tl~zEaK^xPH@|GipGqLpk7d23L)OilC9}P|=L}X4JRnbxGc^ zUeL8z$yVM-S!S4hjl2=+GPPLdR@z8OW(4eh5$~YcL&>>^k(Kmeycd*0iYvr2moH48 z6d$r_IGmU8-9myX0;NQtRgGRc%tUtQynj7anQ53`*fMtvx6izQc_{{5=gpNP;RD~( zydvKAk?UikQ7j=On_#ab8*XcK4so=uyG>L;G~l}Ra!lo<*~DzVuUYaV-^n_;bX;I0 zhX~Ewc*Ca<5^Y=T6vdq(q|ENhmTJ*OUAulN^^)&2p-ch9b#0 zC+u$46gdnVBb+ZC2-WyTwCKaIrED%hwJ6 zd0}~~sTlCm{fR9R?X959cjfYQkorpH>A>}ymZyU(4oH`lrz2PWa*hTBE`Nc(u!^=? zP*hzkQ?1voTqPUupWnQ&~p%6}T{M_(}AcD*Oyr`#Vo1s{c&8Pt)#0!E;vh7jucUYkzQp&=8t74Wwl# z#AHi`WjJO>4z)GfC|U+lSZ_4}hh8{x=#a^nbx}5tGz#Y-;*~k%q5L_HZvZgpnjlGT zX@r@n7^H8PTLK_!1CJ~x0$Xo@a3T3KNr@`?olv0bZ+czT|l z!^hoTnf6!$H9hM)K7U>$$!mLTU`k8)Ff~g|y53Y}Kb#B@70pzjo&eAobt^E6l8ORT zfY~S*vkssHVr}I&M<1oPdzt%G$jAC<$=l9UVlQ}~ULT!Q^_1fhJa*^TLzkRw?Rf;A zO%~chM$zsuI4-_4c=c)R;vg~wlW$9o=|(|>7%8{nlalUqEpHXC%? zs7^9WrHDqWXMz6s%#I+b)N-ZU(fR?%{1kvYF0r<*cVcIx{900~rmG<{mwdN9|MQ4r z3Ee!yif8$KH!OGG3rE{f*m?@+`}s0=IC8(`u&u?ZeHW&ewa>xyro&{3($TtL1M9n{ z`{Y*5nxjE^jDJ~sPW&vz@4@oE$=$2m`x`3Jl@Qnjo3#*F!&wS}KTrKME>>=8wUT2w zrD{Y3-)o1o%5a9v&YxyT7$vJm|{0Wp%0D%EoDD`?b+yk&FEBSac~$ zpd|onY~(W%QqVn} zcUNxa4pPHm<#_VhK+cO97u-%b&bW)(W5kzED}G3D=Q#RvRtcKb7dNkDlwRnCHtCt2 z(tlSE9m5y&)+vJ9c@TF=6C6W~9xX6Dka|h?e_&`f-iOrjC9T2!@*;Ny>x43m=v0$u z8^nsHIo#Ig*{}I_!UDl_^q{;h$;QSCHDj&ux{mb4+_e!}sRehl!u=ICI34NC)nD-% zq`uNKw1MmMdtLEkUrJ+5A1R}J$xFZK2|d;b?iug=^3$q;!^@9zi$>UsHZUNa>|OUb z#w~+q-U{0fV!q)+m$MN{Z@V@ig|@;;4`9Yms#O0E=il0wfhQ{ymyQxX7MBjfJt&vi zB|bENphvUGdb3zxb<5?Si(GzudU<>L;e>jz!Vy@ty#2fY-;n$bk_Qbf7C;z;1Evei3+VapZ-0K0S?C{5b*OE zS6e9-Ms3u-$fzNvz#g*5FWD(ETFGZ+D9w-S!v9kixHw~ODkdU4_)#jdyDmh9!e}$D zlBa!M%JELL8(wao7oxyzxG=A5lc;@k*FJY5VU*r*f7$15lyG`0bMTVd@k$P-a0k9* z4y=S1-YBEHxbP&1P04AByowAy{PN3x$Gk+%mY@V7J@sq;^Kp+0N+YcE@366MF~VDP z)W?Pr>}g)Z+bQe*LB%DTDbfp2zMb-}B;Yst{*8Bk5yegyp%l^%tJJ=ckObSmU-J9D zXqt12@uO@K_8Dp7xak-D`{N}Ukemuuuc=@RuOrlMruGcnGZ4=E<)>et!VQfekWV78 zlG73_zx`wR`ROks*?bmo(DIr*^hGiqWZlTuT*5fZR+PpN_2(F~CcUuuVm&avgp`?e z%n4t?a0JB^xTVMOZIF6;lq-R1+f%la4lY~C;Sw?SMoDUSfTYp1it-fyA?OZ^Er7CPT_HYKCT4S%< zXnKdz9d=2&%cl(2S?GKt{g(7)PkN|o>g}oj24?GDtUkC*Jq?dYnRngRa?lt<}ZJ%E8^Z)&ut&6h5;&0rfXeWcIhb} zOL3>pR{~cos_pX6P7|tCL}?jJjh~|D@^*LW`nlZs%XjtXdS~qr-mA&2h)+EUgW`RR zT-KQ8YT3!rf|CyB)vXh7MtHsHoIq%J+J|&bl!q24-Jy3fP`qRJWT1See=^K|PzOaB z|37~~g#*_cQQ<)CyQ9K^-yKllNbz=5I8rpbsBnye+fX4Vy%rUkKPW0x+I>e0p#U>o*X^b9=Qhf?9$8#!9vtH`2flf-}zVfi^+7xb{AlRAu1uT-*N4!9VMz#*ybIJ%z@Srj1uQolJ?Mm z-@I}FzgepW{HA&D$wJ4;GIc#7pO7^P z&?Q|Fl!qo8n#rnmE5zCLJs5-*F`M$(F+cJ*nENTlAIgHrj13KkwK-YfdE84?oVZ63 z8a2$jdo*`Muy!NTx@oD{QjPmLU471Tk0nPoFu$tV%T?c2NEC3$I6hNr`iXz7lxvXW z^=(F3K#kx}2Xx+pThc5g`a{f~NxG_QWNZXI(?G-lJk?m3yx zVJVner@hlG0*S)o+AZ>_kyXPY>2*OG&NGkgt1H{L!7lA2eQTe^Xn|_eXHk69(?i-U z4g}Goy8=DaJJs_&(TA4vgArw~ujYFKvts^Rx){a@{tU!x;i~720-h~#lt^CR8&l4U zO?=e~d;aVir4lIdcIFtO8`Q|XRPys4Nq9Au>=>P?xW5TW+4g;@{{t9RBdmi_dVS8- zz^LkyD`3?4%bE4RJI}#{ml57R6PKT-Jq?%4AORSc?W;iy0x~g|u~G#lmtHhI4}Y8w z&Jb7_*xfYS0xb~4d1!0+!OaS7(7*~D1xWvW&rrIt6s;w%a@{t76Z7)&a`1d~%sCCC2Fj{hoA*&|pV;0&H7mI3w>=!wloohSAh-$s93<9}N(NlF`U z4W%AyVX;j$teGT%ktkt5q+uxWf%NgRCsEcgp(t6@VL`+=OkmH%WtgZ*dW}vTds!q_ z1xu)POankrF0m?(U6!%M-jeFrNH^@fb=c@NY)89}UVIFyqZjv4hhF+vM|YGk`$l8` zqd$sOB96B)aB4Av*d`wP*MIS!R?LG6UNm3=B{Xgp(?!AR=nfW5qq~Z_9=MG~vO?o6 zz*w+8s4IY_k9IW~*HK5wL;zYsSEgefJz0zSP-T=PngK9o9v!1kbB~T;$9fs1n!Lz( ztI1>6G3Df&*-?}P`%Tz>=YVL;7=F>?EgWv(oZvl<6^J!LVGI~v=zlgWz-@dpF_`I_ ziNVWyk?~ejht+4_eYbdi1t;$C=~s)t{Pl0}HOmg{X|*hv$?eB?@2)Q{jM4{ zw@iy4SMOGLm+x=hEEC5EY4P%Ayk)tk%Z`fBm=`HRKt<)`&_#IOJTehJI}SYkl8 z>*ekGLy*U&i&x7JtB-eYmQh8US^atW^V^#rR-dlQhT^bWbdB%t@MUU&_GtC}?d@vQ zk!;LAyBcH{(--FOMgw8J)KdoM`7SGdfKH!tLtJ~jYYyR7di=COD zV;jDagKoJ9elvb!5TK{Z*;S7iul=*}01B7SKmltR0RIJ&b{b4b0;A=kk7}tU8&LAC zU{2%!b3*4}PJiqkb39>=eJb>ALCRF9Uk^uw{0!C*>Y2eUpr*_LOYRv#^oj8(su}J% z8Aoh{YqZnGRm#^JXOUbHQMuJDP&(2&019ugn#rDc=8#y~Km)z!UP9bpEC6chKt4Zg zyR|;U#6dj;@nvh9VcP-4)5iNg3vA)Laoq;jZNEeXdw;FA4&GaipnJL{Y&B?SJ0Io<7u0P zr$Nk!#oaOz5s3WUBHavnVmcNhWCou0o+YGyfmlZ}$2qdDUJx>mneH^hqGQYBFkoX^ zIkw=m>9(`tLFnoyWa3VP&x{YBZb(PJ6~?!6z<>D7&tZJqVf;2xcAJ5+g+S5PFhg($ z!ag$lEQqPdW-|LR)o*<^)(nAQNM(`hW|`6hED1dxN!F->}ovmz=8wy@9?qP#uG_Mi*=%n<21@h|*160|^%#Fc7fG9F^j?)*;w=~AqBxcD4uEe;MO5`^s_VhOCvgM-*v zf*EwOROsZ8Fh+=NEx}Rp<{|>=iPO@BoG92ZexwQw6pETtXuV6j~{iu<&q0%W(ry#O%; z4|_yQMr>2BPcK3q)ZugaMb!hpsCxhDtuFQN`vtv+kG;!AawmoxsrqMBpC;haEctn;|jaLLKf0W0VH`x7^=0sUF7;0mf&BA%?(&a1p2QYi#-&Mzu5jj zTG`UVi$?LVZ3a0`+e zhW>5o8;>6(SegO!1ZWn(@qIrDuLz6CJC$Uk5}No;m@RN#L+L}gCwJ;t4{H^Li$|%OnMf1e7sm#w1x(T z+zq^*(yA33YRili{i-0HN^(^xWspz=2}vTQ)3-?yLLS?cR7lI58m&S+<(X{hb>@GY zQVaBhvZuf=+kCZPc7w0p=WBtP+xc3}%m!bz%U5z_8dXn$;y12BJ2|F=;Cg9)Xr&lx zSyq+kkG2LMbEL#W41Mq9;@ljD7YYI8w~pT=h>goJhd`N;g2D$m>O6|HPPsD293kvP zJY|OY5lOQduURJ{Lfqy(@9EHPmgs+JD3$-UsSs9$jv>CQQb!>k8pUv~SRN@#VO9#U zR|-v3Dox@~DZz;N?G5jR_aA-=p+qy?L)w0o6_4yt&qlqCAN`Y}x@{5$uiLVCBhJ!^ zel;0pc>`TY+#pJbpQ>RXDIO%%HcJYvse+kZD`iY~ZTiTzNolVe9W|TF6oP+b2nyiL zn7Y9hr1tg;l7s0bJC#wdv2AP(GYdhsV3r1T4KPfR?=4W1XSPzXdtOOFr$f*kbH)!w zd~Aga>Vq9>MvlHpq}h%Gr7~iofHiNI8JG=F_D|&Tm}Yv1K1KE1{|cR8^i#J5qU_1Rb8B^$4mF(#v{p=HjaP z^5f{2=k*GJjv3Is_A{Muh9I^o5D4fgVUu*>QFdvf zf1o5VNg4`z>Tvq&U(>h4=bmbkmNQOE;veMEKC_W83CLMPN^z|bXGwpZ_N}GzM$$7O zTmd1UQXpJv;ubJ76KC2G2apqZUV-s!q&j8fs%Wmno~w}8hSM_SvxX@-=;HH!&f$5p zdcAxuicm5EwQ4h7G@6Y>jTY@l{FpO#uwyKa^YB`>iBMEl74#J5ftsq=ImxTMVEIpw zcQ*2++C~uAq)$)1fDwPWXi*>X1ilB0UT)`a9UH?e;GuQ)k_#red;|8<2Ks;Y^`18(MoYJBwqr@V)C)3%Le9Uyjps|f(#bnS?nA$c8$m(cWotcVOs+S=oRMk zr=9LiGb$CmE;n>D0+A^VJ%!!wjrJ1-@*3YOx;NvPT;N+#Le^Qixv&1Ce!1!N7lx>bt_g-j27!z>dNa47?MA zC<6?g`+ou9FeLj&n^vp zTdxO})^CzC$6H7J7g1g52~S66hi5w&1(Pm^C(_^3vQL zLAzNeRxq9`P7-+|Hr?HDJGdPXsqd>;WIcdwI6LeFCB%`65I>iCdMYJ|3@l1D-3xYq zFK6w*;XMLr8-H8sI0qN0ZEYkWVLfV-`jbt5Mp3V-`;|M^lhmJrmHn#by293z-q*r= z0fv7W9N;}rL#UK|7kn?N|3|5B!1sIDy`wlH?3>T(Kx^vDMNe7qWwcNJ)&~07atY}t z%naui=Wm*H*Pc=`4fdV;rH-rbm#)~Mqvb4fVxV?SpLAE>A$>tW*S#fiOQ7$1h4auu zy|Y*5T<`VDoZ1y$xvv}a2lU34TYWsexmSOLj%o0Hz0z^L(<>ddeXn@hwW$M-!>D9@#cTp zPZcO$-I|l{IfHqz4CbwAfV`LN4X(6&fVZh_=VIXY-ge7)w+H$HX`+L`Rs;`t&BN&Q7;MbJX^v+GM z`km!8Rmh&|T0N!hsRp;-Sx*7UsZ9+1f|5$fs82A-~Z!RP#*KIBse?$Og|-aARSCU(r-ee+TVF9t@`(L_%-!s$Z!t&0l+8aKr4TgMYM~UGEL93 z^D)|Ex)aFA0A{ab#IyLwd1;GvL`j6tQzK&3^+Q$m^VJ3-*o3IAFi@Y`s$ra9%BW(O z6|9|Rr^(qYrz1#_5#H>wAm1yFH$C+TdH&K4R;CQW(Na_xlSEe%FKM6t{P~X$A`AWDO}oj@ z2q4TzVq^hD4M@mAFdL%o@^FT%!1aW|FlQ|Ek=IL*6l3qL>Qy>LIEXV zsBtpjXYGr1<1gtn@GYNguuj=w6A@oiL_vN+_Y{MU1eBAG1j-pJ407^+QT)XSiC-ui zGfM+KWe^Lw%51WJV`V>Et>j35S{XD^zGj&&LwXTUI$C4Z6?hVAmdHyr$-pRbU5xyC z0P`hRP}yR!+JE#HI!odEwQ3h7c;Z;a4y5ZHXiG&a(D?81jyJ8L1HS+3N z3O{K_3L0!UJEdqiDMS%(=^X`yCm_`5v5t@5Ed+T;>+MPiy)T5`5#s%hQ`42|tpCZ5 zv*Q{Z=dlQH>_DBJQLXlWa>Rk&;5?IK>USVl7vn8%r=u#>*ru~f>GxarwHa>J%lAFj zkCHB|qQ|fQHG@(iIFs)(s5He0I0*-s|2hC*C;TW>q}a2MJdv(mi!t*2ZK8=Er#PDk zDDU+2uPF|bCDA`3XAM$BMGv)cCSdaL;UC|={^84C$j+v3{|r-qDSV~NKzcX*NFS}I zWrCJ{PoEtGtb``p^t30O9A#+|XaX-R17D^G1WVj0;IE_K!ziVFjuO9SaSWPmn8*z3 zP>~@}EThctdppQdRTgniMU3z%P|0h-6v`qpFRGeu}ag zazVjqIXa2~suUi7NvmXwEDsstqyQYF;w?F;jnQ_$We_OyFsNvUZnmVN!DnV}WzRg) z?3;&(7E|CMe(%ROaOn0*BSlGd4BRatqh(N0nbA!M*T28~$m_n*s*lZkqC*C!X4GbS zL=U9cI?#$ak#@tRJWuD@B`MF2KRH3>GP16Y0I~ZtHR7ayeLdEVeL4(=l(W`&0F2&8 zHy|iALpX;YyJa8VgYlGfmB>mx6A0&=_Uk7I-aVxE2)Zj9aOt3pq{5AW8hK_}pJJ;_ zlW3Wpf=7%7OjD8wZtyv*vbp$?)^8O*(!6*F`>V?gr2rraG76n~bgn3fWGOGip1FS1 zpC$@VGObR3rxZ{YxR_k*N#}OA(h7+g3xb^tS0%n@7&WNEX z?rAX^TwONKxOLa4U#Rjbaboidu(!an(Pi+Ot0D5p%9`Lcr>5o&LnGyPR!)o+N1pvc zLHMbE%9hjZl-GBxe*K%3b z{}<|>Mh4D8E>rJO%u}O_QOr~0mlX5-eOgY-dC6mwm>lR$p-{7vauKQJy@09Ol99)( zPgvb>#NuVw1xur63g}k622L|N(|s2xy`DXPuBh=jMtPny?k;IM7=5Zw!pWt*MGa~8 z)P`kw%^(y)vj{LY`zMl))v3X*_jad%99syFy4_Vx-{q+&@d&Ea@!Ur=bb1CXv)jr* zI2K@eUnEmtbuUVTyw)5v%EtWmHb|ss&}^%cEO+mPO{1eI$@-oWn|9hYxAwBS?6>xR z7OpItm+~^o%hV4?xz%A@+Y$rX7-;BQVqVP#{ZHwLDGEFR@7WRSD5{t1J77q`Fs@|V z>VQ#rW#|U)`M%!Jc?$&%+f#Z+7eZ3fK&mKl_HAI5kT$n0>xiQ6%Fq&RxJ} z>GxM>!o|lMil0h5ir3(_)(14vgbb^H?A=-%ih_IvZO1AUK5+#04aAk1m1+7tl{ntL zC7~qFh~_7^Bs#8lYDsid|D!F5eg|^XQ*pbYTcKWVOgwM0BM~AUd!&nyzm-%I53>e$soSs;R4a2ordJgwAvB zN6lfk;{mtm=}wSZt)~_i1^cbrE0=|Y0;Dz&8oPlDpcAkwp$l26PAUdX;zrNK-qGO#Uswc&)d5=T+>eYaVqgr*6Rf(Ym~CW;&UVE zMzw)YGrIt;Ht;#5^6Ycdqp77#MywPsiFTTQPA7#;*YI)?v++XjDPlHp410M;6s%FB zBBrFMfG)nam#AMl>);-L=*yvRm4|YH5_&;#*fDu}1b@*NG^OP0L^IkQcB}f6=9SR{3voe?b?1vUK~XYZ9i-=@4LuFtniUIwdggA;!lYCGraO$* zrMHd$qy)^N_G^5rB>G93(}0F*?z>fcE}A?@bq>Ge5X)W-J`cJ+S?)&pbkm_Si_TP2 zJ>w+*9%086qCz)ckWdPST*F#(823`yU#S9UN~3V> zUe_2UGdR#GkQ8fw7=)gFh*VNCTvAbeF>VRpKwn9EuzL`kt~G8bhhE5m7v%sjvjIDl zq@Z7}roLy{T|2D{$_`++VAAf{ko7N9p}yIg_T?P&;# z=KM;LhAyf$P+PN2qY?7tB$nS+YD%7RY$EiIO}@4GHCD8L&gk5A)Bbp752;o@6HiU} zqj=6T@$P+-00tyATiNvgVe;c53dvsB^iJDqR{O;Rci&BFEeF!zr;~EwIOGb zI(4)Qy4d1&pvT)ExDUTcFm3*Du*|yYgtVYQuP1zk@p4aD^!ee~z~CAK0}3>O9xa9A z2nvN+h6u@j&E-5QJ=OcMsYJ+M=P@prqFVm0Z_}+9^4!vNa>3iOea}@7;G<>Z(e;$1 z9L3L1^3(@b`;N%k=>2zb>Lb%O+T;8yM|&u^fnUsV9IZJ;`Ng7{Tfdo6zxtGK=H3FO z9R!Jc-|^V~g=k6U%db5zg{ghtsHRx|2J3SuLJDP&W z7V^$H>=9Iu*ZfWH07~k$*LGIcGeUsDe7`A!U6;Y$km32PW}_0$=tH;wA&V5CCuq1} zc=B^U^D(Xpy~VhK5iqk`*Ex=vGd{x(Jiark@?6jdQZ>G~)HUt6;(w$Mqlx1&g2@I8 zoyKZ6Ws6SxCpRov;|k+IIM-JECG$G^&1l?RSVaTkF9mD5)#xkoa#$l8Lx+W(%R*vTl?|wY0+jbm?Z-H>X3vU zA-t;aI$XY=-i-pY8GnDetQnNKUt728r{;mT>p-h9dd5}>P`#G;q@7)Bzx3C+rXG6g z`=@Oj?d~+Y>~L#)3VmWq>-g41MbnQ?bAipGXReLN;}v{V{=QU3iE3R%8$q$EjUr01 za%mK4Zd|OG#$0x|(%1{=GqhDVt|h)!jU_9#ze0Y}>F-iUCx02f)h8rN8{>)`CGw;Z z#WQM3KUzr}1pWcHIjf{~NZaZw3TX?FK66Q$t&y_Go+5Q^|bL8;qgt^qM zK0lW*nGd`uVKP1MBuuudFH4w`Z07&>2@`7)AzR_|r%sp#Z5B-&Jn%@;gqi|cqO&J( zA31H%DoWz&Qh(Z<_A1SqVrsG_s^m3W39e7qX-+6n<(xE9cHLsl%6p;xV$HhFTGx~c z1StZaHLqmW!;tQFBL&5)X2oBwHcU|%rKDT6lQO~tn42fHeVu&>&`w0`qjQzgQ>_Ja z6QUrIzPL_;5iT$_C+{bXwESC&YobfU&vSDY{o4R-zJDZ8s`yV@cCaSDHBT(Vq`h_^ z_icKNrQmJ&5@Jb%c@yTeclMXMaqW&n#UMaMMwCmN{i`Xu>P%%=M=L~#RwIJ%GVZsV zE7INw0MD53NQ~%7$f&r)m%JZ~WF34i`tMvNM~1SG6Arj3r7<7^BA<~V1I{(fllV1Jl5UoPSk+Mo}JrP<{R6E$zW0+8YQTQQkOl z(A{Xqvg_~Glftc|)T4?TW^ZT;u8(MHqW+@J2`6_p;EsO4JY(6=nDdx>g^H zr$4uMpTQztnFZemTLZh^k2t|JjB3m2PGZy${wZI-Al#4~Sufjew{b&if zD>COG+EYk^&NHoYj3lcEROxT{QK56|E`L;L(APe4yBTS3o`*GxcCLsjGVJQDWbWJU zkNVQab5rhkH`-r%!zPt(%)&|No=cdoA;gom%Q`WfvK}h6OcaX3%eWS*#5zziC$d`8A1e}K!;I@{$U z4wL)2Hm=e}D6JULjV`XzA#G^3*nh{{vPwpQ$$;gOSKd#cqY4?n`hEiA`l90&M)ii1 zJ?dJF!{&`JE4*6B^N33q@8f)*@aJ-)j8ojWQD%V-d&a>-CVtAj!D9&4!!don;lx@L z9U9=p%xd?)yBkHgg{~$i#NzW+WR8$coY6Ktqt388SaPLPiC3H|&=x_mO@Aj9dyUNVZiwBwYw{7o7Gb_SE9?aC>B zJspI6*4IwKTFkoCQ@egbWp6iVP`Dc$*Jgh%SgUn&U0$MDJ15x(Qxa|x|8g2pxpi5e1btu*~-kp3gy zNVLr-l|6)U!izu^4(<7w4xSi8Y94jN>hiUicPdnl69LeLqKu)4Ae6FFjT{u<$%j6q0rGi0o@B>E0~TWK8sG zUp^C9z1LMuNYjsu8zR^U9r5EA_TT5%%l`+18d`J#@bJgqFY$%ZAT-Sx1SOOUhkyQe z`19pIoNNInDI|@_e^4I&`Rl-1ek-W!9eJU&7IB8UAjvh&!730)j#_`c@T1JpWm*ji zW~eBIb;N5|YR&ytB2 zs(+IFvzFf`4hmGXI%7bNJvYcb1f5VYhzz)&q9Qm^!$blptmLBEl=i}qSFjNngX8D@ zCNfrp1sj?D8X<^rR_lKn+eHv*L6{ArPrZY17>1Q0?>CM06jS{TQ*#$pPpgdbq#L!N zXhYAiM$SbW)Q9O$;yY{U_%_6#Pjoo(jSFI0Wg~VUUvrkF!&0oE=d--Ky82@lSH@Dm zm_iNSaE~4+K!yW`AS~Fq`{%6E$j7OBFD&|jIxbM(2J$TwM{9qDy9dO#0D4YP-|zdB zCs3}yCA)%1fR2o%IoJEa2rP&o9V7Gr7J;J{auP-muf!umkq~(29cp+jfD!;k$nIAo z(B8^>PS7o@5l{rfXQScY{fL2tzs^IC7$GDpR%GZh^_JtEGBT(xgM&EAJr4mWpY=+0 zZt@CBnx%NWgSdazl;i1c@)~jX{Pj<&-jMb+?CJV1FKBZ4#C^!#^s;5`Y4nOsoa(M*+tO>a_Dfy^3PajhP)II zzInIAxW?VmZF}Bj&+|?gJ?OHsYicNce+H~*gX{dj>tla)W5RmldH1G-^ZmS%@#p;k z=WC+o>P?>9xqM4`+yl9@A-QOGKcU-@cNSZdq=jRSl4{H$OKaED*V$4f;IMJ#$~bp3 zhtPAF(_MUn`AyTyt7_9(%#W3+Shr2}6*otngjbj||K#1Jl1e5`_1;@*N2%(1%IH;R zudUCe;>v%I3#INs7^S3Ls#P0lgz18Nt3(&v4HWE&Ra~sKEUYH+a`E!`s?D9{tF^LX z6-|3ZpwV2644#WyZdPXVD_JtMY*T+N75Ttm(^kyS?ovKA>kWul|0iW}y0?VAFHmR2AR;y$pe)Dnf7>X>=@_>Qu;LEWL9mUe%7 zs(oA0>lv`3ycQ(&H^U0!`XpFkRDU|GFn$}b!Y#cYR=A$A77$ipg^hR+R=D2lu<``G z3#@RyKLu8}xM6-BskSzJS-VNIhYo*Ii)20) z3vgSq+Y71Bme6V8+D(#x6$*nrwZ*(v+UR}t(iIT>Wa(7kJe3ML9+QiIZjim>N)3J< z;ccl*no6a`Ql{K@p6d6Hm0+Je3zqT}tc91(_R+q{5cO2RHk7C)s3lO#&K$~3)e^X7 z`u8_#OUpB%IS6ejvqcat_)&kSn1z&k##<*D>&FH0>~vc9tH%M#t2=MoDi5_tdn%)9 z7r(s2W3K=B_B1idjOI+%MenP-|c+x$Fg^S0@Xih_ue zo=a_}d{EA^XdK(~RsIdfrR@;`1miMuq6*^Y+^*^+`H-eX^Xv27QSE6;0V>dDTjWL1 zEaN7)ZNS`}`_vFpUATYD08XcFSmIvhzV4RM9cfR*z2UTA+a(7LgurU@X3R%^i&L_3 zKx?!xl+7}NlP|7m0aj9q5r)CbPLPztYf^6i7Dy=(o94{o&#X-PaZ3B)(|A7It%|xz z*ZhcMKPn75#Bx%7cw_AATS_rVrmLJJTFXTZfA68 zAU85Hm!XFlD1Xgv+b|5i`ziDSosmAuhnvP>W`sf}`T7_d1h2yaV&OS8vHm9=wU{J+q9Fq!Y*`$iA^wP?BTlZB{o! zJBVq7_2PZ?o`5yi{)j7lmRJ;szS#x3|A55|Ie(_cq8vrg2L>N}Qw4baI0#x<(LB9#~#7M9KAvOY_zQHk!Oo5LUDci1%&Yg|L?UP69TT zef})}uPy1#Nf7IvXRjfByDBMfrwnazU#s~!LBco(b4la3jeYjGKl-6oz3oHr zA48M<8*Q(L>4ZUVsp_R8fQ!y zi7uU@O9+Q#1-bClU? zJ=bMq(8{B#$(-mz8o}( zw@St(?H%{kIal#al~vLq%IGUV;@ifzxg<>Wtxq2*P&XN{ zuQsAY5`;rDMhVs4JV=)00)8$RNE<+Pil zC^S~ZxX@iCCtQlyk`mb%a9hTJT?geH(BKsVO@kpwDZ9hfcN-tBEks`XFv!}I>j|Oa zlpQPbmYa{tGzCmUj^JQ0QDDf{tc)GUh!H9=4mwRR)lc3|FX4eKE; z$I_yIXU(K*kGqYW6CPL60!mvQYbZ5FLZ%HlXAF4(FCWpHZlsNC!3;nEx|%Vk0iXM$ zg3b$sPYz12^v;;{!ghpYzAGfiYEds6mih4^;m(npz6TP|DA6scbPd^PB@}b=AZ;L< zJ^8WF7YHxyO5$xrt9FXg3CkP7LFxyYaV-*mNGL2fqk{&}+xGCr)cch^H$(t6mp{46 z5c#sL*D%d9>Z9KIdc8LEkGS%8jQkZ69p{2tBS_nxa4X8!%I`Z?F=?TeQ%{Z@vje86 zTwKL;? zu|;mJn;lQ5acJ48Yuxyj;KIMl`3uE!?dfN6wCV2kySE8YF%n zJ$c^dvdrOQ{BEnsXt*0OZspA#%xn#R=kOYzbIhE0eDwWxW(KP{)0Sgg`w=rYyuHQI z=Hb0r=z%P_2li%z#6AC3#Dk*z4?;YxXy=pzqPUKZ<#@4MN_PY&G(Ot@FTuH`fP(Dl z=y|DZx*imTKUtvs#qyG>#BvDq@y?^G#H(Y&{eNS%$B$74Eyr7pyzY;loqyzAovZhh z&v;F#uy)l2oIfH<8I!83+N`ebVs*W(vKpozqOq_dKjb)nMq%Z;;j_F zp`b{Ln@CD>`k3VOX|sLb{Pbq*v{B=nRY|2#ZP@Fe-aFMymxH z_X6X~6&Rg}XnrF`x2hKnN-Wia`jmeX6{}uZ=*R8%sPS4atnv3Y-kvHMFPRt_6&N;P zdUyFDPRJBNts8M5Y>TxVH{y}zr3TH)8WwehJwp^8;)wAYdv;bxRM3d=3VU`z0E|F$ zzu>dLxW}Ho7NGUQ++4!D{@qldVlY9kvpbiD3!9RprCwe;8P*>g@PwJ^5ibLuqKa1#k(xxn+)X@bEp z;%{iCm~RLZ)rn?`kiuEFFsI$^IN!Cw~9zrmJFV%ex+aQ!gW0nTfQBDz;~uBbSxc%h zOJC&ZSYkxuC`bQeLcmW`f<^=;2AKYy(l9zc{zG&gy$?}f;^TrN_BTKM{_*vHUtfN~ z>|*-(i$F2a#~oM2Fn#A&4D1GtZ2HFUnEv~K(~&aP9d^R(3xY;~GI1XGGHtB(NF72m z`i({-W|bCqtvWfC7oGqMfo7=iKp5*N)BDyA&RoqT@*)Zw^hQ{CF1_OXGK*g6Y2OPd z&idc9`8sVrvsA&kl%0j3F-TBL5INA!Uk8ZC-O3Y1Una5LdxahGy1=@jY@F)`}yukz&-u{lOTaQ4MIKilv(+ zT>t*^o#%bvtWV8v#`B=G5f($`16cGa2!tzDkND?W{mtM7nmv!|?X>lOn&fMR%9?i# z2$0<8sbMFt>!B{}^U1=%*pJ2h3Bnln&qfFut<%L>2z#0kWep5ngs^*3CPg3GH3D@W zsAoWXNvdyE=|$kirZsPNsoM1gwj}-pkyHH{3s=P%ciyuywzOC2vXe37F2AQ8j%K+T zde?D6@Y`BvqZy*dQ943@zGq4tUW^X8tn_9ShCYp})pQ2yVyWYZF_l!!-dxM8)YWM* zt=U`E?3%q*+sXF!+th>cp779Y3dKtTV(`wab*V5&qP*t)oH|Ni>iUya%vlEN#D-!$ zv4MKyV$gCySfu!z)_kl}W-(E=X3mBB%%xb_TG7f@qhYjR?TS5rzVSRgj{@6lesevI zvflK!FHrEzRM{3g3(pXe={5Kgl*|1*o8+d;+-F`l~%d?6#u(1SLIVx0Re9vy6Lm zTdmPp@tYeKP6Nhe%joPfR#8dq^oV)r2-O}e<&tWIHfyb`?ad2OOTYf!-RptsmEG$B z+iBfvxx2V1HW3qBk81F@l;m%qas9vd+0ow_GTG?Hv6^BbRHOtxEUMrMp zYjwleGhz(Yn$C$gV5pQHv0c%DR*s5GKVnp{u5pfc1N0>;;aE6elCOIj|3)Yu7j(~W zJSuAZg@pvw6+L{3t{0aQv{&?M*b0qJ(q8Evt#qz-bMI*GYb|(K+pdpgdO%S?G%`&`IW@}5m zRd7Cb)t?+8?jAbpW*A6gm z?Xvn%O$qo=sitTo-?Sm-R9y}w`XVteOZR)1UfK)|^w7jOye)H+o&{q=Hekyp z*@-ywZyKKAx)MQ|Abfy-vP96<2p9DYx9I`n4NHUp^N|u^fWA|SptTa-+dC(t1Jx^& z(E;0k4=)ik{VMo@C4ve;gm~|p8w1rVwK8D);U$8ilB9|Jw=WSCI3aIZB8(WXD-i~4 z`{E6!|0DE)gIjq4PnbeRI=ktq+#u;5G18SqYHpkL%PC6JJ~T|K_fjqpce&%X5ci5x zo_{NCTpk==9^lq1?Sb`OaPNli^W1oS0R%pO=c+FTfhM_F-xXm3Yc_d@3JXKYfeK4W zCtPiGmO~4AbWOpnKK1S#rGzIHUKo_MvE7Lzr@I*L+nY<}^vUP$x;AR4zcPHOzj!vL zwrb_2)yaNcpU~OIe9Ca(bdKkBr*luv)X=}Uqwa+E^=8xlW4s3g z@v*6%qsuoU_7c+tzf;VD*Sus~KNywL@tgjH}HS z9}Hl#t7yji!qfXIeOI68BpP>sK3Qvy(Ss2X2_>pC$d^5IKBuZ#SPGdMQKyVlIPp6) z=Vj1a*rI=yXi0kyo3&Ljged8;=#Y%)A4!@SWNO!{Gh-z>-#q4K(9a310w~E|+9)%k z$J%6uY!8#%9%m9|q*c0^2!aDt#hsI0v!*bVbc+AMovkmsS6ZY zIK8W(mtMJ3y4rvdOBlwBRm)=K(A3opyZO_-%~zxz*HIK4b69g8XessZqf#3$k+m@} z2=rsS5=gxzRZb@Q`20?Ws~z;6nU1&qVpp!e&R~Dw@G++}{~Y1ZXZ;y}?*(-+{%p_0 z_Q!u6B&1LV2S2jCy6?31@Q3AMSd-_%nH9p9Hr}(R{^zcyQf;)p+ASH`#?x(v zL~-NJ6kb@kkL}W3@u34-B(3>~;9_)Wku-nTi~w|z9tn|Y1%1Kf}bXK-8CX#xB3ac*qjzCK(y&IhV7&i6Z~m*d^X zS;&?w@5g(k87()drrL>HaFpzNgy$Rbk~Hk_n8MAZ#yYdj`CPWjT-xSys;9E~9P0r# zr;nBIsHH;~=?;1HAdI=T9|gJF(FlJ8=_rh=&*8Fs1X;wTrr^iUyRh<1ZmbL+lJr;!DwE`u^Q4(FxeD$ccy z4e%^h$QlB!2`1355z6I@N3AEDQzz}b?*t~G%0tB1pq1X&DX?%Ubt&)qORQeR>ak$yGZ_9$1%k3m>SVKkGcZ+Y1sNYF-i7Jo)l_L*b12lTtSShVyK|{J;HY=V30Mdq`b6{6nLLyR+CpkQEOIh z|NZ<{_Pz41&y(+$AaXvG0sgnOay}pd1bD#KAD7YWJ`|S`?lKdWbUrM9ZsRx%z2__Z z1J#HkDak+)V45}y>}?0VE%vmSnbRD0{{OI)EXy|SG*0a1;5w0Il6s^l@};)<+1Tcf z!^`{O%NeN&CNc!qy#HuG9$5JcRt7yc0l;{K=KWXm_p`Om%k?4`S&JxFkk3)>e0)NP zG6UoZ$SA<^DG)rD=PzY{K9}#lyWC0cPA*8_MMexRBq=fnPD$GFpZ7lxwis+p>(j?{ z)8F3S5C0vs`Ap6*Hvj%Qq;Wzp7+nJx3`J^we{X&q{?bybE-UYJf7mv^e>Q65TLCZz z0nmESJOL1_ph}JRt-ewFOK0q?YAXD4>m*@27?pl9RE4jB-)+vLW#V$*dX$&_l+St#e zA(iJh{1B7eXXZMazm|lbHTL?6>hq5e?_TGrx4v31`qo*TtQ@@&%bM#Ubad|d(m|A~ zslr4)9YHoR`Q?!#JZLs7=ZX_uS~UW^~zM*3a^~DdBw`EjFm3ztO$dsGlF(<*5c$zRImA|QRJ>qZ%R;6+`Yx2Wg97xV+-AXvO3lsLG ztnXa3>nzr-WwmWRQ&hPr+u3t34YbyWBH;a?#RO^$yaz7 zHTyw43`oTQgb(g5mDY_NzmoRpJPaTk7=Fn31Re%J8ZQ6n9~hO^tzMZ*`*a=#tTQ%xOtg~j+8tAm5*Y7d8-P)=Z&bomvRM-zL;3>K3Xn?RHvY%iXoB=qQ=xxrw(8x# zE-Q3l1O1ZuoT)s;BHcshC@ePcLvnP;wWEc>n-Fve*w+iV;Dbws)<9RC|ipaq(CMB=7R*0myC z(j8`{GkNLlCE~Yx-*w1cB7+xO19g|y<9`5-W0w(|1QP-_Gnb)`1QP-=HSOzqem|K12e4i?i!35>qq|66NRnC32o7MSI%l`4mlRVdJM&|M8hbkcJ)nhk#*^ z-l&$B7a6}$d%9gM`dBnvc1i86oFHfS&`X?<2zCrtBqO}vGh9*gQA*NQYz)_Ap!Ns_ zi$WuA)$4dmQLu+koEOW?3i5scy%St9EF{t(@%H_N9A}b$xe^R#2uoq_!UR;lW9R3) zc*^(`VaYq(+$-#LYopn9%eGUME$ba!s^;tNbGg1I@&a2vqOI9 zXjsP}&AjWK<(Jl2oEI$_e#Vi&3s6p8%Gj&^UAf$Z9A_Bb={`q+?OAku|Sq zmsz_8xQ6X97ucRGlUxdLG7bNdL*rf!20REWVdP*?D#1skr*JUJkwCjA2Qx_Ak%Ji| zU*TYXhTc!&V3a|j%(FR|LF)_gN_&sG?ACTbMc;`CKxx^S@R(M(c* z@>4JMS|%y^ryq3=MU`TBUldP|q1fBB7mB@9(A!Y#N1a0vJlBi*VH8h$qS)KC7mB^q zt+CjT8c{4+kBfJ&><)VacpHB<_&@QlyvJPNUqLgH&@mb@s`747Xu7rhd6w{^P0TDP z_8rbS&A(baG$dE%Oe1f4s=k#1wR0GM;)pM&isu%sbDguaKv`iOj27%T_Zj_l3=oar zSXx-n{`)G^lf%ES61SsUrf2c*tI7y9BkJ7h`z`;rnz<#{|M%&UfAAPSpzzy)JTfxw z-Ou2T0Ia}W>$gGTj@;28`3iS5^nMa|^>9$G?y{! z3KW;@)jcPd*@-@ve~HrZkGEf+v*l4ri_%kkOiv_az& zq$i%E&qbny-T0Fsn2j(5i}fO7Ykif@P*MfHY`2lO!M%wrkRlWJM7E>2H?pUXA!|@k z+je7r8n6^WIkYv8kJ{P zt~^Vqkjui~3Y8d0`BBO5kpmoNIgZ93rm`FX4x94uOnay_D;*GZViFu|+c$+5n8Ha$ z$B}iOQ$@)V`$mtF`8C;5R0Sw-WYr4!3bv}tV)RQ>f9VB|R!5G`?)^BHlwyM3+;L&P{H}|>$fLX@e8Kw0Z23a<<$Qzg?3gvlfdX4A0$rv9M z1Ksl^QQo`?D4srL>@^}l=lI0mUt1ZVRp=L7GEOGDhAkPv83o2HWQ0+g;S)&-7LLBJDfHaqpY)gkn79e~YZ_vOCo=^kybs7Bkzz1(8&MxX_nt zF0ShBi;RyNx`hpsQGg3BIrdLYw`k?Wtr(r@F0`BJIqzmV(CKi>B}y%rZOzHmyQXS$ z#c3oYPt{T6-2h`x$(*$~jcU6u6Wz&}j5E@jM&38HQs*+ITMuk=+SEd=m0tjq4H`um zf2(5U6s!5VcNewR1_hD&s+L#eS)_lXsI?&|9J9O~^4N~zgC6XWjFnYiA%?N8+CA&H zM2Yu~V9f|V;7K3Ci9;@VGltx|GWzXUnNmLETEU$d=r=&3$!8D+YBrVDEV{x1nDa%`1n{ZyugBb#)Bdo63G!?-XfBt)w zhv+#S8ofcdmi)Cq=H}H}jV84!lf1fAWt+)jV9qY|67;V2Mw-hrSvh+e(CV(M0T--_ z5LRcJs)#qzP~Ls(dJ5+AV^P##PzL_X)-ZTf5pl=B&{3q5K!ZuH`jf?-jZD2gvRdOp zHqh%uA$jH4N%edeDs@L>y1ZLfe*nWpVC=aYT9p-mi)~n}>;n;zD{2)3&H9FV+oVg6 z&Bl3iq17U<+ZZJntGYK;e2?6ujAp#ZD$aDTW;_p2WYg5{XXa4AHJ+h8O=V7SmzY_! zoUJZz^6LW%9aZFbI+v}>wA#lO6p4qH<%$HU_e`;yfAkT9N-;H> z8|?Q`ryL9Yo;i6(vAN#&qhP#K*5Lontr$m~xzWwtdw??G^u+Tjr4{2R zMa!61&LywqNp@^7%{_DOe_mUCFL$lS8c<$`tLveg>#>}UIkP}S%96z%YQvfBSPygs zBDTHD>yQRuwV#?tqp8JRwW0iVI}f?BgOug$BzZ6q5_>jxv}Qxh2df?5dBJ(Jjm%1~ z$lR3vqitGGT;48rt5pDEX=S%+^S10tJ(ZcBQ>1E3_6*y1P2y57e-#R0v(74rBjUWJ zT`9Ke^=d`OTVT!nZ2L;NmW#|{j_J0Js#tN+xEExY7P-xgLIR+EJW^HzyAXhOw-br5#Bx%12Qx+m+`PXBnmPw zOl59obZ8(lmmxVmDVJX~JqLgHui)c$f%0-VLk?Li3}iR;c7ZMs#3|6$@Pp$B8*d%S zu;n8C_dUa_s}IO4$+Bc154Oq6A&2D5Ih-M#BUcw(4#6?wk2oclBWFj1dX(%q*cYiz zf?9!{P_aUBNvuzGsX(O3^9dS~%Naj0i7Tyhs;>5(#Z_rd!BJ?c5^7aic&GH$_@jWRz<6ZR*EQLuW~HtTCyoC;$l^siP|Q% z*{M3FSWQK79NQ`|D06?YzSXf1y227HZF0p*)keeoIknYPm@2EaR*b7{cS>?x+QKjp zSFuGDHH(@4Qed(+N{vpKZ9NrcmtGE*^`Gn%Q`c7$7p2sts|V%uP`WpIR^lnYc?LpD$4 zXufM+4db9xtcT58t;#mD(k9OswB|N)aT^mRI0<%j>>jWFBaMp(pnIvP(O zjG_8DydOPG9`CP5?Ne%>ejRQ62j zXQF&LSK5Dsy7R}6Q>*>`X8a%5{W!V*G`eqths*A7-7now7t~kYkFKW|F%^%!Pc?X~ z8gx^=FJHx8qpcRx=)OuD!3y9e~SnT)@O;o_f8PZxFtOD*i0(VU<1krk<# zk7V`?^4%^8>h?x3NAQys*I0F${cWDon#~jMU~_+%WYy+r+2+k<`=f4FprH_7?hZh` zZ~P|JCp%VDy#!;l>M55E{*ZX?5BqDU>?;UUa`p)Z!a?H&wh_&nw0nx44xk=qlh3Ah zP+!H9ZdLz1I@OnJkCA~yJ2fL9Xi!wIWNse;&9q7TDio7!Vd^D;4NU!n6ha`6qwH0Q z`UQUg%)AD`8J#{8fH^Gyn8V9aCOGko3t}a&IJc94*???>F`jeX-PAem!n!L`GcFbO z_Wc-Kx-i%u6YH~0S=UXe`j$VP@GK;l zWl};=81kw`%NFo13CxWd#TV#4_QAMf*%yBpQ)SJV8h1D5VlR}pxc||e`ngLlw7&GZ zj~^FV__5|$1fV(;$^l3Uo{R(l-bKD39FqhuvqX=)ux{cgIYcBNI1J(10WgAd2$->0 zsz?Ap1h*1U7*{4FgZGd@c30ok&B(Q(s zJbpsT0+o!+bGsy0&{RIu(Ywsm5X@CwS z5A%?wAkGjvGFuR+N$jo*)C4kwLO6dr&H_ZM<$23D_|&jVP*tCRBS6Mw7fA-K#j=AS z!Iwzuw-TpuSPQxBYVP^CwQIpSZtH;3T82XH3wA5`V%+vd2EXUzD{^hBpnF(Tlh-GL z@uQ$8hJr)ZQI7E3;&8mf>@b5OvrYAn6JPlK0pJrs7ujJYo+}bhIH%nSQwD#8gS^fL z5MtQC?7*Q0HZ0!T^&ACk2yfyKT>-CMEN?t)mjxCeQ*U>u-wMcR9b~i@$VlfPvpez` zqy}u!A+R+wt5o<_khxvO?icH(ON~?xai!9GaGDso((zyrU?h6 z*khFHjApVA!aK*2_Oh}4Tv~sX>is)eeyDW^Nd!dLu(FFJvVsuxo59TN4u2UlG30`qJG@e_r#gQVbq(p>}z!I$Q8 z{JX-#B<9R(cM|q^wugUkS@=gBI5iHO%3&zb0TPZrXfT_I@H}V`1PyZ0wWI?lmUZ6L*WoFXTg#`WD&@C?Vns2 z1X$RTLNKOmxGyWB2grZE?HW4hT>FrIZ_$qU-XG%n0e*(C5lLHnJmlHCnT1=#dvd|k zS_7PshBe#8r2WIoOl_j%)1dTZWeMGz`PgmUn9V=l|6)JieV$J59{$pGzuinfKYsMr zlP}%xk6-To{Au*x?$^iZ)yLb>n|ri<8BK4lAN=pPnCr>u>Hh@*DgaAim(lD#6_*0y zTN0O@L|G|+)mqJNo{HT)?V%3m}Y!?)7K) z=cAO$@Nwb;rPP`a%fB6;>G+_*@d)52z;^+T4;JBnF+V@$@szJkI#kbR#Rr6I#&A~I zfWl*-59i}wufHE;R#*ye!q0GOuU=jc{~TKN(OF@&>HhwC2oF$$&`x#Wl~C4qzrJzC!(lNE+^ zD?xjnahN^(o;XT~eNXhh**h(Oeb&zYB}F6pbcE<4jyBQ(SxOcpmILgpw4S1|P zueO{bV%N_s2lX7r(Oy`Z=`8y!mkl)jiE^udJ5!I9Xd)*xhv^`f51D6lPG`#3VYXzC z4@SbG<=97x~o{4k*a%xxg#HE$h1i zVtwaJdP`^zm7Ie_7+^VTDy zMe| zmOIr_O^d#j;@2&nyc}DU5{TFJS+s&N0*sm?$HMb2-K-N{&1aYkT8P+KO#9lCAxcxT zJS?c$Y^@RwCWJEd)Y&U?ebOv{de*2-(j3!OApSTT{l;38ryKfx5Xgz8kpen5H~P)K zzj;gU5Dg_-nKL`GQ(q?EtzLbz)ux%@=snA6i}=4Ha*c9Vh+I3BZA5M+`&~q?d22(h z(~1|I`ve}RWq7FejHw!N1CLXl^Q*i+BBvamkv@RPDT@N!@YRdAXC3M$~Krm#?$bYN}fqtG$YlN+%?n?lXfw4 z^%bdf8S%2*V9OlcGi&LP7??IR)+%*1_&C?qC3|b*ghtmQ6#0+|XN>Gp``zvA&x7#b zX5>$EX?FN2>`#Fc7WYhlEe+xZ_SYaSH8Q!GYUMtUK^X(lq>}e$gLA&Q!D*x~@hwHd zs@cpo)F8!?WZnIxU*NLg6z#Z251i1QF(0@`4@Pr(aXYS+1~Db7o7YQ&w$KLwX`#7o zX=if-;m9AJ8YKC$?Q<5FPh(*|n;i;t_9H3o+x#aqZonB`j=RNwdqhl)xS??aB?Z9! zecj_ja14Jy||yalY}x@l85-CU3D)pA2w ze-D__;=X;SU{^LEpMF75llGOSUlXDfN^7@@dK3SbstS>O=2q`tdY+VGm(lD#6ahAu zQF%NQ0Wy`L7$=tvbVCTYjh{Z;1PN^=Lh9;&bC{l&LHaBc12!`@mr)N569F}s!QDnD zf6bcBj^j2A$M5qLeu2@7q^J*I5nv{nEYMpQb1Ql(x_jC~_x%s0Y}t-!XW}?ow+BxW zS^iTdDd{I^Z1cUb&6lUw_oq*1a!oLiAz<_VtpT}V);iJv_?yR5ZM3q`>sK zD9Al{IsEzl+mkH~)~)lw8PV!nN5=yY$`=-s9CMR`{BmN@NwXOGM&@7cEG0hI9qPT7 zdeR^lhq}^qckJrtPlkNA)Er)$Lsu##;PY>r)dyuRccm7;l;`7Ri&~qlVzK7Re^cjD zQ(6kA&KV~8?2r8MMg4kvfBI+UC3eA}-2UswQ@-H{3`J}J*su@H&%c{*Prqx~;&E%N zJk$MQ+x-0AsFJTGjbe~AvfeXK(g>{NmTNqtL5qE$+$qOr^l5%ugh{AH5f&Alm4sxi z*!o+d?n)fox%kTEcJ_bT=1)q#e_kY&_Xa#_WwgsFD5>WI=-M=EhZIO&*__O8rA@b8 zdefg|4Mx7hpW?M3@<0t_L#@?G$=4M=pISw_mA6+s7fr&MTJ{nzdGCC9_BIa|-1@Qj zkf|B}v~M#hxr}S?Gf0Ne4;k~S{PTEJI0eb6xN}sL)d!=Z)K*00_)t_he|qCw8lrNn z9~JM!HtZdhsns?rSfX$$e)MJDI1Y2pVq_v22uUm6j!Yhl+AMhOOYtJ_?-&`;d6Q&X z&@DJEwij9E6+82LAK82Cih>oNYrAjDb^{tloY~#*zEPqq3M=i#WO(6qAL|xOhQm0$ z~{e;X~$?VrvZn`9iK^-Ju>fcb&agc0oI60(sGo0H7~AqkIt-g?C^8j z(%~I|w!NXlUwykIBTtCh0+;UHs`3Hb!FYh#7B$CTmr;TtO0YUgf3Px2y?W{f*;ePW zR2K!kMaDp6MtWC*joZTR9_;jpMy3T3M~YYf5n|ueJLW z`I(oZQTpHmaN)oif0u@dWZ6OmfS^Do#;`~bVI&Aw0vx-}ml>x}!8lv5=Y*a@KAeG8 z(FDoTUS`e(nyAJOk|LJ0q1!Jh7p{86TWEoTcpluW1ygt^a53y)m3^-E9$W&)5UdUY zys9fY*y}(KBcU!>z&5Zz@&>~UEWpa#D68Q;$b#~I2tq}&e^81Q$wDdLAPZG{C$b=6 zMUvjN?>wTcK1dcyZS5XeRX<|%(iisLYgAS%%*RS`<$PQgL-zi@($kW%3%tx$4oz^N zYi}V%2APCrulu$g5;>W`GY4LS#Ik9l?Qh2w3<6RZE*$v5&WCDMl@5^iVr;57Fe}A6 z6Mmo42l%{@f7K7TUow+Pq1K)PF@8V+SI4n!*<;Y59D_iG-e z{*LeN_SW0Jo(jqyFZRh^28^Bgus;MI+KH3>v^9sme;a{TMqxttU-B$)6r`?s=BpGd z@~l$6!LzFNPCN^;L?L!NbC|OFAkQkbbv#RNn|I5Uz1j41k0P6Zvnasn0mWoeh%?12 zd{}nsbQak9d6svFXzv|aWwiqDE5+S-U)jCE`>OWVeD9cFn|2=_(CR?j4Q9KQfmVX; zouaHBe?E5NU5e#cSf|6a!`$xZw^CTTqv4fdNn}E*5f-x8?izgj%6BQ|u>odI1RAh> zvohv`?pf+y`QHLUp&P0c9m+$gtTWbiSdxK?6V1c((BcX#85b7Uw)vg9)laq&+|tSa zWu1l9*ccxD1doYTaiuJshq>lLSqY~50na4^Cr-EQ8sBj+Ug9*ZTyJ&Wt;}uJ)p-y{ z{V%d-aV4QXWu@{j%pCC>m(lD#6qkXo6BC!<&ps)aE~`Ege;~jlGg+Xw4(3+$RCM>W zhwlGBl(Ho|rkuoaT+cy?V=Ir;6Gc8L(an!WH{W*0&)silw2fDRz?8SAl${{qLKbt@IS{ujh$jxev$j$S0;CDK_AO!9K`~>(8z~RMP;5%rz4{>|z`X&tY zhnMusocKCse+%|KX>VY zMNk+_$Rat#TeJ3qG^p2EXsI5IG=2kVu+?lDOgf!=pFaDod4bU`PH8 zy@T@FRr9JJw+mhwpqlk6A|66DQAJ=a!=K6l-s$ zy>M2se}`*u>y08~*5)>l;#Nn>ZEj;w+EyIsl->%X_fyT?JcCYIp7#~=%ovekhmsIm zH8Sz|bLOq5v)sCQ`Joa zx5xCPzmsU8E)Y`xF2!c5;;5&~h)}NE0o_vuwYH(I&m@c2Fz(}nheP6EpvW}Glu{U+Bw7*<`*kDx(lAga_mX|9Y zT)q-ctrGvva73CF^Rhr(Ue>3g_|TT;^K*=I2sw|J3A;V4fX)$g`OpG}Yk2Ege>(7J zm1!A3SwwF+3Hr{#Q|B{f2q9PU3go&{<`q{EnpX4n(9)#Pd>w@5C7q{EJr82D9RoZd zH0Q`k3_$@51(G>(aX->sl~Y+qol1}1F$gnbDrLGsot5oPuL_pLx4!7oUY;^@8DiAjlqQdSSAu4)z z^SM}2uvAc9+es0(wqP?{4SaAL$BD4ILYxT1nQ>zCTrH0iVHfoBokNZ#e~EZ4@|=oX z&_wSiBhPp)tiu*MEukCHH!Uk~t2blE8KRsM`*K)Wj>n1u7ScZTJrz0D_WU2t6Ma-b zPWsw!DSX~y%-o99>PM*hdGaj&QJM)i7lg8ODVGm=RtJCQSNIQ%Dw28vg8)03NrB#WklSKUi|w9z*#7@RNy%|y+NtwU z-8nc9nI@_4BPBA5?f&a*_j&Vj*nHZP>!L{>B6f$b9qlu zi-E5fzMQp0d`148_}y=x2og&G-vJ&0*gi!EJVMAap0C#`D>_RkZlB~H?)Y==bp+Ot zqo?Oy!%nX4--j<7+dKSe?^BnJL$qPe+Yp^$-A8XvzVP+J7Ol175WjhL%CYl~jW~9| z@7TDL2{?Yp!||66vOXYxnaUF2!J{d&t5YC(Iuttv2!lQ)?5uHoCGymLXK1FQ?*dkW zSxe{{ByFe~=_iNROuWjSrd@$_c`L-0na?9|B6A)IblybkCJsh1Bw-fi+l0d{gy){e zA~Em?SMyk(3)N1Ug>dQSW>NyYGLnN#NZvlHZ*Paq{~JxP2Qm?VL-)_OjofeqhL}6R zU_1|h|F`?P`BSUyA+yHvGxf#WO8sc$y-(^C8Ce^G_ao+kqr)?@n2pavQVS+tFxmIB z=eyCR!;mpz7+RIBkca5IRpa%wPv&|L*waDs$IuJv}>S*Ns3e3k=k@`rMxc4W^CF=L56=Z^3 zG8re@1SLO*-hTTOtmKAokE2hV`EqMj9F^6A8&>SW280-B3nv%@w3% z97C(@f}iyg9U9)5wRGjPx6M1q>802njhyG{kvq=7nB$p$ZJrwzy^660al$)8Vw~Hp zUrJ-U%}`|OhB&i@T$yBd1VrXNCQpEZFdq;(8Fp1m55drYFp`a|<%Xj)UQJN0mW6?l z4ED)a7%7BJNO>SPP|(6N8ZPC=+@`-&F*;s#5~W{XF)BkJuVT~={?Qv3CtiliG1fb^ zmMpd5Pj^j!ndl%HN6*dFpi$MJgRJXA-c|Wx%bfsn;kHV3(s5j>QeW?@Qpp0BqcEvb zqcy~7w?>uf0vJSWxM(Pi4Xae8d7(;G(koS|jk4XS;m@#bn@)dIJFlzDw6uaVTK-J&s=%!|3ws5*(8 zG3gt=$Qu|=?7q(1O&mWoL9#~u-E|)&XFQxYSkWEnW&j4_ z#jR2{v~H9rFbKKj7OFIUv_|P1(%W})vcY&C^&~I!(Ig-PYUze;6A9?iwWM#X@uSkW zdyKw+@gy&Fy#sw?>6Y|CGSSDD^o=!s?5>x%m54db{US8K5T5tN7na2N{`lvILdZ3` zJ=@F94~2GD9tzbK^8C2x`h%e%$zar&FSYgPoWV8PdS&R|HQ~ZE7khW9L>)}Lxbd`S zM9__W^wjhFPj|TLNNL(OdyY?wtF+CCU;SBDD;1jfzxMrt(W|{#?#pZj=}bN{C#=&as62B(R8Co z?jx1g-(x98?Rf>{YNKT{qcpZFT!iOZ4KF5k`6JZJWu6)@qL~*z2n{hDEBtt=5wn3) z!*dPdzdAGA6)lN==Th+pWiavom(lD#6qhlMDHNCf%rz*NKn6wxe;hduz2{fN52P$g z)CLq1Q(G1=Hyd?p^r2z2JqLR*b|3ophuW8j+`~DT0-`cQ$>8!tQj{2c`a1FHZS(ZL z`LLHb8DW z`UPkNV7E00G$IAje<-?MBCY2k&2H;|6VLSBB_5i1IHRQJLSrEPwfp`3pBtVO9<|d3 z8SyIGk!;*^u1G5+j!Nyo(6|D+$23k7m5aXzTDs?Zuf3;49Vz`UxR0`#P}YixGo;H( zC8wXH&3yFJ8=+}o5lv&6K{wNvEL4OJ5<2*jbkd`q9Ri2ue@h6{{?zA`8f4mKMukV{5 zGdEDmFlBK1{C(qpKnYCJ+yFe_%?8g8NIfH2BeTL|niylfhT!9FbGRsgWZA9FaEJcN13V_00c*`rXK< zCTg^1pvA~p@Z}gIPtpcPYB|$`2FOP^SqZO6r_+$0#8Wt$JG=l-Ld_6+kP~=8L25Vh z=?u(!sUbdHiWgNS2XEicVzZ5QCuZC{N@@u`%08Mye~PuWaikE@R^J=PUg{Nju5h%H zfpH_p(^z^x&AEzS9xFmxh6L>(7u2Gb0tMxF7^&lYCfT$?)PF&CH`2ywnmgq*Gr}~o z$u<%A4l{PUpHTW_mb*Lq$slzFKN&cl=_i=xYF`jOsRdo)^on*+{_|~~p(TBu;TTIR z-iN)if0JV<1lLO?A0>MxbV*yapiAE+m2RZH$4;j@%U2f|R(QY|;!MMcy1LqS3+dzG%f(_NZi;PC%jfGmn>AWIMzFuBX2wE75Db1Ug`?P$iVU9qBX7R*LYhh ze@F)nZt*zU28tO-{B_w)lw(HC0Jt`Ew55W?o-n3R8xi)aqZ9G#_5jO3G`|5>F}h~5 z)%8F+$&8yhIe%HSMsmRDVNIo0K3bNLj6r{O{fdGDM93;X)`dABV#$*} zA=Z~EKn_%u>NTDIxp?{WM2}G{syHX|d4jw|Z-2#rb`=PM7G&&aA(q9+vyK!KDR5`u zc7;SvVaFFs{Uloj*=z3yrE%oz99g{(}mS>FZyfl(smuc!IOj_jK#`??RdB zTe{a2<=l}9%+a=*GNdIlkqGjGW#IF)L19R`vd!o>KT4Z=i+<@V4~LDF@q}4GGn94k z9P4P3_pKc)S``sN>7s_e^IX!i{+6E4Pk;Gaf3^3Sl%D$6wD~e^J|Wj!Et=ODL8oTol z@yZEy)JM1{xB&5#jp%^Y`@JS9yUb}ZHtMpJrQjMEkhqUiqfWGITMheoHW&a*(X5>YV_YLD z2*M(>MimeaoGm5tOx=R;RJQ{cbPNk;=_vKM8RtVMQfD5NZH4ry7hjtus7z-?nA)8O zN_c76%+Rp1*nWj6d+oiK#urYqf`2a0b&d3G$4D95ljY9tKoEP6X8iYKSj`IN!JVk&j83ujzv=AtbOD+XUb@~`6 z|DJlXw3cn_Vs=KmUns>8YiaeIPAIKvYMs~$_M^IKnJZn-1^wO?xjcq>bbsK4-l=2N zDE`u8)u7(YL2N3FbfI`m?iqXjc{I%(+Q#kGF6!MwGMLx8?1Bz}ERY=Kua0aRn(1|wq>pKEoGbwi{V~D{LWTKo} zyJ|);I;oz*#`!1xOCz*5Y=2q{H>6ZSTPLgSXofsBWfAm)Qx;t|PTPS42+4$B>U+5X zgL39>nncq467wHF)F&_xW7oh>NEoTFV-)0rt72`jsIGU=zZzmwAe5~B+KvV-!t|HX zlPKCV9Ul%jpHNIg*$GKVPo<}p^-MXLp{{jZW_9oWhMJUxm@1HHFA?o{c-6>m0K-?lcfvlpcDTs*fgNacf% zVvRZ0%d1_w@={rjQ-3k*)Wv4z@{3~<1d|{~MCv*5(N?IW?Td5c!wc_(K?3%1FluNe zCKr3YtW8*`8|Q6O3)Z8I`Yu|Nz>c|-y}kvhk*cD32T~fp!M#fd5*#qVH9L?4#}zw} z1LqSR$btG!9Z1lQ)idQgHH~_qH})ZWX1}}@*^67D8#yq%y?-G&Fg)Iq9Oi%hwj`hl z$@tD5)=Tv+hQlFl*%|2B(mHQVQi78+Th8#cCfECO-D`SjsA)OUqwJfSlC&A-b88M9 zX;9AR9{Ha7+9*nW#^cshYR!x>GatIGj|NgRsjlxwtq>D{e(#wUQCd#(pC8|*j`D@@bAb49W3+DY1I>W@$r#UM z7)tnQ#7>?PN{a7a3=b&qQ}`ub7wlbEVvwjElV}P_1Y{37OX}ob!Ir3N{$YfFU_y%G zALtLtfjr=vYZR@Hbbs5w2ycQ0ff7b>#kDR}q$uWSH)N67kEO913N1qwI z05}u2_*}p-qoWQXGuXX zr>=e@&Jg8&-RKSVSo9o`_(f!0%_AZoS8LWTjZ>r?_L9H$7UcDgp5W4dC}!0dvs?3^ zz&vQc^@&g_%`8`InULc<>5t|q2{n|G3GH$wm%~N&Tci=(uhS z1d~U^1CB&a+-Y)u$&s{YR{LQM_;$I*F}wx@PFEecn|-g%PBXj)n=h0-&a(x#doXs4 zWdQQl{iKZRpA%AeCIkQMdaIKf>-zPR`Eoc(2G;i+*TX5CoANn)4yAzfLKT+RV%&?C zMoi};c=U+NF|SfXseD9+UZEU}F-2)Q-shYX59$22wgxGGN*QZxw>;1aBv*=ugiLC~-9PV; z!+}ZjAIUV*dZyI2&3ip^)-p{eHHA`+*yu<(OmaS;5Q-suDT^HIOj7!}VOBvici>1` z)e)ubyzabzy0N!f0y?Twa*>Hs;nrQ4JFH#%vJEl&0RS; z;$85g5-B|wEvjBMS@bq{Ra+c8tGn)XM!(FVK5OWUucpAP&0B?uZqjG7jt%8VbM4Ze za6KtUig_G+ZSiEF7JOY_?q8D+SN&_!X+!^dX>C-0gPY14Si*q5$8d=9v zFLSVzk2IyAIUi-p5;}Ma)MoxR24r8oe(BrMr)NH)m{IP@HC89}6KbrE<8x}Pdn+l9 ztF7&zbBT#iO6Bh;x0g`xb4w@*k{MSO2LF>1N^-%hd}0M9Jm9Gip5B2F#^e3jpFujQ zu>)~NLwZK{xYmK_xNhx0+|hz*z~&$VnG7g}O8~$CQzn?yK{{jfs9HN&I-aZroF_)382NRdDqA4hse8xUBe~E97JpFl+ zr*BV^zh8em{pSPy3A8}#oIU;c;{2x{sVkqXNGZ^sQ z6Ge)oUp`9!u)T+q!n=y4E?Dxah#1qpQw#a&jEYJKB^s{KU@J)ym`)m3pECJuvYzr; zn08J{s$wy84hhX`e_f5`mtU>*$lf(5(y9d!`Ep~G5!&l{RYt;{8~45JNveD%&qnFU zr*BV19m(8pudR|6ov)}@OQ@%Yj8)d>dOAf%Db`UFDC?30Eo-#P3g zcO?imZsvP%6`l{-^n7nVK|;WLd_om9 z*3B?S2T30_f4Yt8T<7QIfS2kOIlDLB&$3g97>E3k*Db}o5lE_blJN%8sm1wSo=H(2 zaC-c->D?P$RpH#Z>2A&J_;@|LuKcSr=InrW!Y&0xO)^Zf+}66NFrU{0_)=Yy zk`etJeX*6}d#Y%=J)U|ke`;-p9gT4PX^w5Me7bg{S$dSM4tm1P&=#?{ z%2VjQiuEvkye3zc>g46>QJd0Jj^S6FG}j26bJwUw>(J)Y!b*;{v%Z!aK9LxwV)&Euro|o!L$+e^rqj z*z$<+WVwbnb0)-B?n1Mt(YH9~YOq>d=&H$UMwGn9nKROqjrJUrxX3%S_UxD0MbN^4 zo{_q*E{xu2L-&T~FBKBJQ}qm$7ItQ+IH%*o>6L8b$)i?I26*b(cglgBIQB_AcE$R2 zTLDv{1al)H?cC2A++hh43thF7e-;GY@m>1jDK$t<5bQhp`AThpaA>pj&R*ZSu4}*g ze@{6PH%;FB z)(r7dEBjIOTTVq$u1C+$47PaoFGOl(Vg;-}1B$j&M{oh=Qf9w9I&st6QhB1JpP6Jo zl*aEt7^URqXkRHO5C!rw!>Xf$7Xjsb1A)XUIV1fzf(d4L>*k1giFlp?Usk zg7B1U-I#yMIQdI|kOzXpl{)`)NApjJ^^R&2jJNL4xyDg2xrm*Kmm4CziifD>20=nF*GKkSd*VIxifVov^2!_MRKhj)Dl~dr`BMEgD~^_ zV1}yVd@WkYNTuu0+2KutuDi55bs64GxM#|MJ(_0o*=v_{+Oe?k0)vajy`Crek?-n|&`G6Uod1i4`M;t0wbgK|NCoWFB+ zo7dx89?R?HvO*&u6Kbk9kvo_F zEHBvYUaXFOY(kl3~p; zs@Ak#Fx;Rw@9E}Hcv73yJ4FY&D{G!xJ{3MB*%&`DqZBqqBEE$)+u`T%K~kvk6Ej!g z14dz&iRohIx`U5Kg=aJIvofTyl0$IHkgvtPf2CS7v`7wVWF=YExwfv3&sXJCL!`jm zms8udG3xNX2ylV9cz=vtErB+H#&Ats_D^GIJe@Kdt?a;Vi)Qju-qZ_hpO8c)TcQhn z5=D6%_?P5RgP<7biCs`nv9aYMW84ENBX{Pe=tM4@irWI@L!)FyUz!1&!SAgp`fpin zf6MA;Ko(>99L8)El!w(i$yB(MsS(mQHnq`7|gC~=v1 zAs6b^^AMEgO?;(iyD!4eU^NB5dH9JfMFJe3n0bGwMDWU^TX&AiKS}yJD~A14rjw1c zur@w*#ym`525X*`sK3>$T1SD#_j(EdG3%xvGl z?u2hHQ<%x&R+^M^-4r@jO z?Tudud*(|79CP6mzg8!X_1lJ951>|`H4lq3MF3Wq3vE zkR`Buu*W~&e|wTyVJW-`Kf_o1@AduZpQl!Raz>yr-Ctjy!VQfe(5cR&Fxq$D{_Z|M z{oYEgV@ZA_eUR+Fed(GjpRxg+WdllMh(-nk$yU{!Fqf2-*qF3-EieKtjzZ*5APb@4@DU z8MdRG6OtP*qIF!;G8P8YN>tf@d&P^&=NKMf#<)5PV_7!dqUAsdu&^V4ZX~Xo)BT*< zA&=tQ(XQ}TZ~;T=M|6wab&k_M&M!y;b8a={7d~KTQ_It$UYpA!Cnce%PsWwOXB|BG z9^-S?Fo3x}^3N-U@L`>pgMu=hwq7W&vrZ!oT9$Eq1}-btZ|TDJ#;zp63Q2|qr=Z^(QABYyGok55LAu_ zG^Y|>Rf#@AB_yG#(zCiauUUz1S&8;hNihSd3fTo4(JdS8q!6GW-6vnSU?X$OMrI$C zq+&oi$gK-jGPkT`RwH(Q4iqo6Qqs&Jb~O9|>3+qPJ^bt@9;RgdvZs`>Uf9T|j0(fG z_@7EOIHHU=HmbNp8xTEb*`7A&T)z}Kwink|ZVro`Cs#k!%0C@}Yl?GjGQz4I>tu%I zxgX)sPQOlli8(1W!oozsEchAGX7EpRRB?OS4GM7Fs4KlHOm`W7ykoL zCIZ|%2blwIJ{(AD5iT{>j!}P!R=X9h1YBNut+Y?Gt+m5k)(6aV66VSZFs`M96Cc2= z53bO_2>dFQs`dhZJ4^VYv~va?t_P*}5-Y{Hh&;B$$|X zG4#oJ*Y*LjsKTodrbm91j}mRaeKdkS=YCBmay{A-xCZ3}$?ck6RfMZahxKLV2qs^Y1HZQt2 zXC2gU0jFx7-nS`v7V|-G@t2U#XZXp{&{w-!~HJ^bo=*7{8HrrOHEiG03~N z_XFsE0t^T*?b>nkYkf`c5M(8{K9EyETY)fU%|8ob&_6h0fPfeKeY*bwVkl9gh}QsZ zuf)qQx~YX1-G0~#4ZvI)&8iB$d93)(!@BA_b1c2-NSBEzk>4??j|Fbb>0@CHrEgRE zxbudL-i&%Xp*IG6JeOOx-~Wkxb0VKbK+QJ?BdmV`oLldgaXL2>m)X@m6#_9em!X1E zCzoN~K9ql$K7`ZX@4p|k2&`3f=`r2e}`UtXS70%!#_U`=>r*1Cg4C(1u(G>60js6-K;q-mfO!xMc-c zCu5l2Pft#RC{n+rx1oRp zQq`<26w_)R&KG>WLq}GDj)Nnw$oQ%weV(5Z9A_u=az8KQ6#1~h%P#O*GUhLDHVi@8 z=$(IAa&!KmG@0@A-{eG4PC+zJ&zaX2XjmT<>#9;SL2Nw8>g+L>tI;ZL`o-Bus2B>J zXQFs9jPu7Ld9AeXi581XkmZlXN~YabAj@xJrFMk3Z2jlF7a3W%^|I?~ch^D}1yYEi zhpvFi#VzF0yrTSAUCgZ+8Ij8`B9|b7wN8Jb9W9W)7O%{EeJO{6(Ai$)ke?>Tb!2Ym zq&cwI3ofx@K|^^JWvy3^9jK@BD(4`+u|uv^ZFo}7!v%+IhWlg;2{kVDxoOzN>+`+r z<6_rj6~;JPwJ8`%Gn~w}4HKmlM<(s0$T1*W+D{2X#CLxT=87=1iX8${J;mlQFF^Me&oYsdezbGX%4s@H zmJ3j-qI`@&l3tv7;Y*X;ZlwPY@=;^CFbb28T1m=L%+gD^l6_czb!upc@hzH`!wKQI zo6F2)+VspzDNLtaRvi?OT{eG?%0El`JWD{slo^v7`xa3S1*Sek+lNWBGWC}lg-7Te zdmdxWCs8`Xm|pH~RtM7d_WS zZmhJ%uGD7lO#;wp$NS-Y4&@(rvDW%jllLt3xl&%D-)e$h(uaCET~~iD+v-vpEwtSMlBL56Y>5=ZA_+RN4fR1YHT8$f0Zde zs3D7-?~rM$@`uw2^4ZBF-9BxyGAL`9mtLTErtxW~cpy0Ou z${;JOQc1h6ZRvniWjc;aZk|lN29*`vgMum~)S<-(L65z&=u>Kz%e$Ib% z06`gJcQu9^1YV5S4+sg#=#6)~y2p(`c9%fQAz|xJedVVV&3J~Ocx(`GEl4aNp##WsUR*+3nkuG*=02EzXV_U65h z3T19&b98cLVQrTi-aZNeHJ8Eg2NMD?IF}*G2Pc=XFHB`_XLM*FGB7Zgp@2vymp<)241XVZIm012ED8f|({x*OfgsKT z-5PmNT%qySD+RI)r2oEWC|y~KZ0kmrf*Ob|>fRw|I6P-Q=;SEb1($_fjQB{dh|5u; zBgz;gc8nhk#6@WXNNTV_btzy@%y=BCJxTbbCm3W`auY62RZWH*1;Wx&F_7YNf{LJ+ z0U07LCV#D_)mF-Q7K1HUf+HcaXP6)ouzVIrDVupYIZQB3m_|xi#Wbl|V(+xt6TGUi zEt@e?TdWkvWa73LX10A4>=m1Zf)X9aVs^tDoPxQeRL7aIioMLXJ6oeH-eru$3{pH( zHG?YFt!?imxfm9@qKhOE8Wis2Y;U!~^A$G1E`N9!3g8r+N|Vnnrsmp;k(~}kkT1#h zU~;7$Ma8-`nEonGLbN?pbwbIOs~9vN)#QYu9YP={=30!R6Ul89Fv6^C?v~7CBg`mv zHiCUhQG*DMMQV~0j4}|QZEkUi?YtzYOEKD9*qtQX42mu#>>$I=)O?6z!2#O3z(gvx zMSr1yk!?&EBh>;8P@QURYd|Rorkt(W)A26S8hAQv_xjH znTUtb5%IR9HdpOX+sJH;W*=Bl0z6gVvOoOSxCfl(k7;^M6&`21%;ZS;8c-B zPyx$|v~7S`B}JPnSS6JC5uluv^z=HeK)lV(x( zdVDjzon4M^7QxFN{d@e|)#%&l$BSUGk8nDb-(vm@GYv>fb-gc^RxW&z;fwr@7nbD?o=eO_X_U-4Z$sex!b~^iQ zJZtL0+wNc8kKK0{wD|IRd^x{B@beWbiYCvX4EXH>m?TxaM%Z@du>5)V!}QIxd*Qyi zd_VdC$9fL`I6Yl+!9KbXMtqBLQ9Pn1@`d^gE`X*!bKKH>gGpD@$v-`U`hVfHQ)YNT zR@$ksPm+ddZ}_Y`SidIFlQ|(;wFtrmKcXBZ?*>;&*^y4lHh-jZ5YHq7BvCYb zi@whV{JIT(-3$D69sGSMr9JrdfZ#`y?XBKp!J$}xWMs&Xh3Z0w3)P~**Sbxb}v<#`H?vY~6UXBy@Hwvah)kw?r)}de1UeK?1 z(AOUNwTFH^1oTlKpntJO|4!cSAQ(+;yK`w^tVgfp5pwNbNEtm$vdbfn_T6zsqL29@ z?H<|U05uYa0PO&~;1eY%!v`fA_=A@u4{9eXp*HYe^Nz^BCa@}ygppp36VD&O@l)ct z1pXA%cJuZ5w*q#D_N8tG4#Q`m?X6STgU{BC^nA99!A4`d7k^w1az7~jK>IhTEwZx;kAXh*ap`xk|Bt_QeWVt_P)0=*4T;q8w6AtRDR<}6adn_3gs zqU*s~h#n8l>jDqgCHF}oWqG?U-z`Z2-LO8JTOMKBj(>P{pNPlhF5*!i)<_Rmvr_;n zL|2t7npdyNkMShmgVEiwG%^l5<&{D-3cesI_6naIOJ9uUqwdY<-Sv1giW;Oi3@ETS zrTQuZVFS(WZpm1(_1Xg@twFXwf9{qf)N{(u=E4SnWDE9jNTQdRHenz09qhSJ;=E@P zN9>S-q<@`&cniic`NHB7;vtgz@qo8KH%Yu!b}?Gtwy-#4y9x!wG<{YYF=WME5j<{3 z+^A@1V;UgIAaKd_d_Y>aL0X1`bj=q!B&cjiEwdv9Add$~+Mhl%=>W-CqPOR}B?*;L z(&INyn^yz-=hC#DOQr4;RMJ}aAbryyebXR)c2JdrWY-AxMEj2gXc!jvLWJy^?1Hu) zBfDm9H@>|>yZOadRtmpBkQ*L}1;*xd7m1~`>x;i-B*wXc*R>*b)OOPm?0*3T^?7h1 z{TC_YYGIcV-aZtUu^&+smwEL*zkj#azdnE4*(|U%QPRisRzDp-cmM2a@dcuBgw5YS zcIgX3Fc@4T)_B$T=hx=j?)RE%&&%qT?uBjh^Ltax{E-b9yc*DoFi#8!R;@~nNHmzf z>I_Kl*0L&0A3D?klnenAC6ywaq)1kef@_M&ysYMBH6{CwVxpX$Njb5amVc$=U?|C6 zURsqVGpbV0EuaA(YiZ6N=st&Me~em}ymq3D-i=xoDyfHASlq zipNA@v(}EpM0JB&Mq6pUfg-ay%S>ya8z@HOd44kQ*HaWS8g4U+XRI#4=$KjkmhZjlMakY?!fGVunP_&zc@&BzcZGVunPcvYrTaAFN;ahPNPY<(#CM@u_ng86Po z%7$jUkE2NS+0$g?ZGXo;lZ;}#tmN`u=53bYvsy&Mv9c{pk?>WG4$Fq#6frblm@kY7sgR`|P znP_Pumu#??Jjz}GCK4~m#T(_iR}VmbnmhJAIB{)u3W}Gd?=;(|*6;T@;Ny6fhYq5w z8+QcZ733u&av7(UHhN^S>u}n2u-2Os(@8=+dDL?){qhoq85n||L)!_luwspqh$I(lug!PlJNxGY|9ioyA$d>&u& z@xfS@;rQAtT_mLb(*=#&K)=;>KWYT`J)Mvphq7ftmd2Ol*=ja(Rnes5`s<_CY20$F z3c)z-Lw`=~;9@f2o!&VxQf`BZbU($CReEzU(o}B53PG%#x?)aRT*a}I@h!T7|0<1pV|Prwhg%G z5}ls}^0izVj5ClwhlBKJ_^jpG5Mm8e7bLj_m@XF&R46Zg_*t$XD3?!oTk$|k#`)m_ zK7Ulz_uN%C8;kX3%5bFvH8sZVFHFyubWQHQCYsSqxvHLM+h19`0=V0VEVEruUuc|fD{FUy2=3sL-d?7moD~1w%m0O9BhA=JDHi3tgiOeT;c@qtya)n%W5je zd=RCSuFG}S8tJ0R!;C|hRWFh;|1YAZuz%{=UD&tphbc%eTB~<^JNzPpL(1%n&PQ$) z_NBy+t&?xe?qH>In(4m_Bx4S)!^?@r zf1L1=N9hG@BCN1FrPg|WSxYVu(Zq-kPA)Z<>yk@N<^IW~=CD1v)D$jFE{C(pB`U#Y zi*#{vIXpbMXl>VG&QC}#AYcIGDFNT!U9i6*3QyMl>RqwLzx;KK%&;id0yZ?4fv*!3m%Q;mD3_84KbU`D`tW@Ie?R;tsdiqPA1NQC zPv8GJiIJ~Wfx)u^wR1!h1%hU+;>l4^mI+q{;)~YA3&uCTSOJ(60h2{CMOdVWnzw=^ zMdIzSuZdcrqA?ORmVvCUYg(1*5f$xoqJ!Y42qi($4~{ZxJ(bOkTPa`f|l zNen51IFZDyO5%SuNwO3=e|e*DiVBU`G5yU(os{NA z2K~sn0{!Q!8jV)$kv71Sw%oGcUr^-`Lqet`YTLA?cRKR)_fC7wDWZX|d6vQ}y z^>HAg5EQp%k~=c9Rp6uK1|TAe^ZY2-6C}N4ij$FrTrcIfo9t*Ydz+{t$7?}R-;c2j zIu+Rrq>O*};}Js~$@Og2fIBEgR4xk3nfXQtwuCwAEYnZZ$`(6xc;XnIN${Y~FI33o{|~>#`6Gk*p0%VQnPDMt8nN z$dn=Rx?{T7BDA3zj>aQjzg!I1n2rK8H^CXA-V}eV(EuZ=*=99BcE_QDIN0fE1|!ir z#s-cvRM%C)5jai>bq#v&0?njAvpX=}0Bc9a+i)qk{lqzugU3$X4aB`5emz@XOVyZy z5FL5=7ZiVRsutW1NYzsQ{i#||JRns|8TY4ZsmJ}PT2kDfswKtsR4uiBM5;be?=@8) zsP})Gs*lrqOV!)--cq%UCHrD;g{#mqE% zf0{;*ip_6XrY*&|OO?1wDg4@uw$m4CYyKzI*3enD#yAfAL)8!}pkcjNY1kxFvTahj z{rrg?IIOV87522BJtjOjIiiZ<;o9>3e*S-!-PD;C{&<7>m&=IjwKyA5#i1x}pU+@T zs|1B!333(0La#Al@seDy8;W6edl}EO3J9bC*)yBXZ!V{=7txT@4ugKdsn)tyi*^(^ zVa$~@sr(-%r)4mfj6ra#fbm*A*gA$uAuQH|!%z=?stbSYmEIf*!9KnWXmk@$3zgVRrcfVK#U_z!d^gpQEiyWx!E91kj7*nEmPE;od-=TVTS@vLstfA@Kk4v+C%}sy4>byLIgZzWs!^n^V%eqrn zV06B!JC@>+b-hNPWw<1jD^l4`-*PIa<~-u9r3j&(!hU+TQo;KA6`=pd!5`1xY6VvHK?Y)!la1^RGE3MPR& zzJhIeW;Xiu%StB#R5V6%xTW>Ee&Rg0trv&Ri*XOEa$zP=Lq^#U-};t}OqYKeVxx1; zNhLdVv!CRuG^ae@V=sf;053XkkZU@w}r2PBqS%TuOdX{0^g_(>y>MFHD zCiS?do(1V>E(yNuF1bmHZdvKIoFmN2)!rL0dRd@3n|0DTZae zho~0f$)xyjPc66eOyNyki)D3aUvjcm{i9 zmrhU=XTW=2(G?U$GLe6;-^$sOJ--`03914;Nn|8u&uuJWo7)SdO^Ceh@ZI{WLK6Vc3)-F~umG5hfT>P%9(Xnh_>g(Tu2+E;J+9&lgJA zg~|f=3uVX3V}M!X`L6$dN9%wiK`Z}HC}&476KP?f+`8Q4My;c&snkZOG|XjPXD!Bl zR46OetAHPgBL-@s*wBrYO61d_XAhh{JnV3{xDg^cZS{67h0;gfR^ z9@aGgOYD0f*xuAMxY*e(4TJTj=`~L@4VU2%Kac`RpO=;8Cv6Z=8szMXYzXbL8d2>E205JAXYlUZM9> z7r42Oq7&Zx#jf6N^(x>#>xIO2SiK5X;Ip6@*7qPpv0`R&Ci?3YL6iByLiFc3J1X!AU7AEW{=NG-R{~X?!sbS=0=Q$~|`@N(R){uRQA+a$tYAPi2%V?>0X) z+EV-b9Q>yN-KaF=hMuw1x0XD`I<&?2W}B zh5-VR{cjU?{5YlFNI*yQ^8cDrvjAmHB=i8_9g)@ej}~?J%Rhf!zW(9MUogx}FaM;j zm>vj)jxkK%^Q#X6qQl|e@_WGL8xshEM9fyq6qLYs>`(``hA-2dLHh)4!_fMTS|cVT z2BU8uoRShx9qRQkgOH8$vtsFbnvisS1jdZlN4uU&D}-=@2- z)7_^cRqK?eE_YE%8>?PsLGR*Ee>s}eTi0;7<~1S%*L*=G6n?_a)` zaW6RPq=uop7gN|{Q!ca|R)$jx$!4CAQ+}P> zCvOdP4R#^-_KWM5l`8wB|TWC8?x@I6>a>?R{Ukpim8IMd|~Ff<)QL_Opbh3u_NXn2zI$5Jyz#Kq4uQh zLksDvYFL0p<;RxZt}9OyY!=eE0qNw!mb^2CrY4ly|FupH&^)E*{7Ab!3SEMQz(-YO zY+G_>w6;QBJ*C0C!!Jg?GQKK{F@@smeDnn$rkoZrsKsVgU)%(J4jGh-~_kzT)W3Xd^uI@<_#%HHybxh)-V8>S9RA#xdE}CgGr3 z_@VV1zk)nVKOWi4Le2B&vD#L>LnuBqQ8Lx1=KdW8WW$lI-)IhJFePFS7yUvOS9((| z1*QFrN|)M-jJmll*O9$wbqB_-%jxpr!yw~-jw;)J%xj&SJ{4oSN|l7!`d-69spQJJ zQ>+@O5R=<*qtrp8SxDeiYN_qoqg=FZp%I3%qg;e@R37;mC%L%fq(;Y`xiN|doa8c! z2b|r^+5)3;q3j4M zAWmJ(osy=UwwfU+n-^3|+DhdaSIRS~w;akey)MD7NR*U!NQ!IZX@$E~qHN>ckQ~=! z@SWV_`<|04&UT+{VIukFU2FWr08m z7xoT7X)zYdg|Jz&*L%lQyX1oGmy>P>^4p@k1<3O??FaG)%Dn)2PH_{+bNx9A$n)*o z2J$POY6nPF>9U3S|CP*}Za^x3l%gB{_rlxX$%Gg&fpY(acQPRa;kExCxswUrqZ53q zB#SDj0p2Rf0t{;5m@Aq4fgNZqqB#=SF^WGJ*s<9T0Ct@J{lJbht=hp|vidv(3?s}hGz20|@lNr9P*QOekevUi#ca7e7NpidnSS|~;&}fG1 z9a%y(TUIs%y5OH~;p?hT7>m|lKc2r@K}e7OhrxWaUKK|R6m?}AOmCkj9H)x-FCGW1 zE0hJgcf(k$8AsNkCSltuw_F{aLEAU8TM^?1R4^OzcJkQXZw37uy>_#gG08d;0yZ?4 z!HX*smzn5ADVLQSKbL=d{Oj%agU$-K+Oe}rFpG9k8!OsbK_)I5k;t~38i_2TGV0>! zr@SVPz_5nXI+-dXrMJfwjjc<+dsIJ_)sMs;EQqmhs>vwB+Myq#R!0-9)vpR!mdP5A z+M0|hz3@5NMg@-MiC1NI_l=B??Gf0#IagC+Q$(E$;{lK zM94#cB>p_x7~o~2Q&5g(j-g+VPpnPv;`f`~8AXD%quCuR=iHuV_u|k9SL{B{CM9ha z{xRfrWv%<26k}?EnYHwJQ4@rq(7;k6(nU65H-7Z8tDb*p5SO$j$;dJeJC)O##ByIN z0d7r9X)bcEBeoBA$Ym)`i{+DsLYMzjYW?)se@-Q~i0VtKD`t*pKvSc~;z^}+y=HZ; zVl0h{LedIuUtmx9abHR=gkiJ&h|ueQDn)f6fbZE9*<#rYmV6ikxln|2A{G-X#4QkQ z!DyS}EB=3^-agxT&w^=#`R&0DFoo{^h9i&ULVGb9h zuRpurE?tPJgA2lWRd{HGFY&NztevoOyFTO4l*QUGFiJP!zXJy?qcxKr8S9js6gEt5 z!dhXO^N!LMIki6~on8j*3d44FLb#XnS|%wEzU6djQLvEdf7o7iRpxPk1l9HV8k8bH5na5+9oYbT#a@-`ly z`=EAdJ7T}Cs2)5>^^C-HtE`2GpB~XD?PvS5>~4sx5NGc8IB68m5dVe$4r#QHlE#r1 z!a9E~!yDU`5_(yF58P>QEC;zbcOwNY5j@!{Rh5 za8m3IhZ||bIJ0-kv1jFKEsfTzBgrl0b-*87bU<9a&Py(CTxclER8~em4ZYI~Je%d8 zQvcx4dg|D5rJs>?D6Ail0-cmy5+gKIe2$+1sy5t)8ibx@47p z1q_TLQc~6(Y=9u2Dsu^1|>I}EAJmh6x-1Z3<* ztd+uVhx;Nu=9`$2%I@g4C|(bVYw>{bO^Dy~P}U&6^Qo+nw!^Wk)qnfBtU=u2VAkrm z{bbhKar@D%McjTiYZ2*UN@=aW=|yZrzP8`d?g5nxyV^Z?CHZGZyQ4M=_1x}m`Bvw^Sc;ij4jL^~f!+N9cpj!6-?Um@d2? zp?7>ifpRcl%@?G*n=k1Xd2{nEto&bfPy<+(5#Bx&msuM>6qVLiD3{RUF9d%iCk(#N zuc$vT1cP}=qmib2W>(5AtGPuvMcF;=A^ZOiF<__ys`^pg**Wy1fVPbvpABv~eV^p? z#yEiv3vo@vjUs~Y^y!)SF^?Ibmu0dVCn8|L zsa2{{3RIP-V~LN6z@zd}N@KI!XnQtwMHD2|r$WWYkq}2DYXP#b@jJek^;q;`nTN?d z(3J7I^1z&5mb{EAd=g!zQYbEdjmsTXc!N$;uA78qsw~vQ^2N9H|$Wm_l`^Q6^Kn+5B zH7P&=!A(E^nZ7;z(UX5IK`JEuCchau{ro<4BVRdyy`x}|)*90U14xPxoY2O}8e;g$ z-ulk|NV`>#ch@pD%xh*`Mu>6cf>Ky*1}^O7SnbzvAemuRW`YB2^n}I=kkxV<_NE|@ z0+qKUXEU;t(`x}P^pursU`9qCso@3sWbd!sI;-eIR#aCA0o;TCLQH*0?h#=_fdc$ydV>VB{X>zozN zxjSyf8#*4Co}k%=y5fxOR*t){LZ`z`?_nF^N~a(}2bOMeLP2?(e@iM00hSJ)lI)=r z-OIwiDcRSZ90eNasa}A&GV3uW{GR_FuP?6B$^l_r>VjPD>OC&%gNSu+xBa&p;Ew^V z+sI+VOW1#ZZyp8SZc(RF4|GO z#YK0xr=p{o8g_PL)y8nvQBBaSPheX1uwEZG*vkc>gTA-DTB_&m6?p>Qlr%e@e6utb zz&Rs!tM|YMr^H{b^YVZW0T>AHAPx0`(!QZj#L&;RwbFSe^QhU~_#-XCv^GEJqW zab{hkn^C5<6=P*IwbJ?mN+#dUr*fX@J*D~Ce=@i+mu{X7qkFbqk=}%Q<+n_#4O*k zh0A{mJ}55z^9q><85If>d~+e~*UlO>BjwxD{d|o8Nzn#c%-3gBBMk~504fSNY-~P@ z$N>uG0~fK=94KbI5<*sI}QE610UlDEbkq*tT#<}T8!0KzG?NDCvkJ8(;TA!(}fPfad2ikL7gu3{RUEb6dMt8d5df2~~PQ+%suxn)`o9 z$*y^}*cJNz4v(yCDs>HE+5Itd{wXs}r{<)Gz`6aC!@RX_- z9&^5xvzd}P`S%p>=7Z4zvmbKD;A|yxeXa&)gjKrnRl_Rr7XjUABmh)&#G0>VBJJbz zBOQbm{aq}V;=G?!wY}dDE9exY-5`I3#fl4n6 z1J%*2TXGQ&391+dWff>K)p&+S5=h0-m>pBI@_li+%&@}0!5Nr%eOYV!wOb$+TjXAu zm{#;N;?r!1GrB?N=mrt9bideG;3fS$9C#z4mg)l<762M3aFzC5^l3bshR;p!{P}!0?XRf-*o!9QrhN{OkOATiMENQScy#z0dqYGVfBud0Q^5q22Phz?E@17 zHZ?GpG3yEw0XCE1LnnXTT1#)^HW0r1SLhFfCFj8h5EyVAXMx_j$gSw9=b3Ox)U zoq>n%{|sMtfAm7zR9YU%AFPM(Ux%*cbFrOwVmoau^UQWei$Q6yHYki;*>?1(H4Aon zl1s3YU<5P6C=!3oszlPV3cQdgQdq1@knapxI*SD<&g61moQcikckQS0eAI^b(fCO@ z>C&>utcyrjhD)D0?eDBkBVB<*u_wb&6b)2AlHF!4Vz&wjd{9dpf$rA4T0DIl7oxU& z{&aQ~Ab2H6`x!W@%|&(pBI~2!*w{pSJ<%AM*E_;Pi@BC=O;Ob zZ87Fj#X!n*3MPM~;=8ul;2cUYPC2xl5d9Et zjwBxAB#nPKw4NIBr#;gBxX23FOHPv5kjrCrpGE8EPiO6k4ps2IF=pAouP9zKhA&~R zOE!pJcM`skdX40u@~g z_NfC+=gi0pi{V2_7)hJfdNHc%DE&}^J=B&epO0zRsM01$X+?ghdNwJc%rrq_Ov#k& zhoA^R+cghkPs+K*;zo`pm&li!E=288(ug?`sVRCPb=)vG*n*^iH_U6svkIY~IPMX7 z8C!q2@NDVYo-=i$wq)ZX+PdiF`)QKH4p&@b9aJ3wQLYeiOHV#UfgG2s~eYy4nI%%&0+cSSUUEUmCH=k^U76%GWLfzN-u<*CK7|8;z z)jM{ceq#@Tp_x$(ZCA>RYhh?gy_oP+MbGS{Rm0J!Fsb2VEv|E24^P`MIN6a$yXuKu zOCF^|&P~O(p#Y3PbX9Pg!%EAlZzfQiRko}Qv@J5)I_Bo;`KM0F1CD(u-{@F&H`vUMJzNk!gvizV4>HlOZRezphLaTR}JH7oYB za|4HoajD#0_N3-LsckzPL}d+4;Z&t#ty534`JtKjI5+9qxzQR~x9XFQ;eTgb?GE-_-MeZn%@Xzf)0V&QhJYKyNAobxxV+B%6pv1%LN zp-ee!+ga@7eE1dbQ-pFm=X!q_w|t@EIkA}DP(ScOMT0`2tevC{)hsx#ya~TlH4AK2 z(C}u}ED)kNf{qLMmZbb zBmutfYSyq<;NW9avxb~PgCC=sHE0zwz0Yda04oe1vz#pm4JktVicDE{H4|^y?&9CM zB#ezlMXsIa7jFoijcBtr0Ti2&AjhnADyGp(>e&>-;)Uj>s@K}#bI|pJ@5Vl0GT}+mk}X96qf?zLKK&ComME9nlC?{0Wp_2 zFh64i1-a=_x1caT#t8(fZ$E#R5g|Vm0W_CU4-FKTFDFwcm%2JXngPPMRXaZ~0)H^6 zTTP+l&eb!0%k=9*^r2%q9G-)*(I73DHDfcEczQa1x7g6PMZ0crRu7D&`hv!-7?@Gw zx|uBn<{kDA)_ZEo{JRG0lzoRafjZUZOk+x!-f6?iUZXGhp>ruWe`oJVEJW#>GOYv2 z^>tR?A-vXslnUK8i;ZI2$bDwQQGaF@u7o???s&6enIDTT zr2W7d${}@1AbFJId*n)Ii+}ETOZ3RT-4(6!H`FV4MNXy3^OpR2O7eDF zRcffNs%;y;>k4Cs^@hVYI5JfMT9QUlrkf7A^g#z!EsJqgGjp4?DQ=jknUb8QPS=wI zt|Llp2{}iE&&}9reu}|diPWvII>;yq{UK;)sBh-PdB59ET@FM&oqw616BIxRDheH} zL-saM zsUJ;y7k61QKs`R!mwkUW&nM>;9f*_|?MJ?A(gcidKea;986>`X#&W}Z{m{Gntiqs` zl@8{G!SDrd?ARK8g@4WsTzW5MdWhBp*7rCQr0ScozRwx+{+r>Z(`&%+fp7!sXb-*S z@zNl1AKa3AbICd#T3|5G*h33DXdRP7DJ(m04=webHpS$-AiggmGt+nz1B(AdCQHz0 zBS~`r)Gd=#Lw`x{&8L5!pMH7#10)UmH?dM+DJN5E5ifkJrGN3-i*I~urPrXyAZq1| zvw}S6wDoORy?+!NOV}X0!$ka+h*8>*_D5}GMv_l#Rd`3@>65sL$a8(`iA|w4K~cZz zknWNc9-D4yd>xf;)79TsRvPt}*gT2NJ^K@#_PJoGA~-twTk>Z*yi7ZQ&Zm{6U4kY3 zV4p-!D|QdHw|{qHl`c4I$ig5!0m_IrTeG=RI=d^0WK{{3)KnYjd;BoiN|c69O5za& z6KYCnyaqrAy{!=I#J1XUmui zdU*j==2==;a~U+@z3B8QhFwgS-5>1@0Eu{vH^z<7TYEArm|4`v(Hz~Vt39=cXrwfu%8gN1p5iX1@?dE&sMbf`+o#7nyU(BZe(+G za%Ev{3YWdYLk9vjHJ6c6Iuw@~LO;EKXDI&g-{*htWJdPGNxR7lLX>6;Q)5Xm+=6Mt zgD-d3^GyZ}Anpr(= zL<@5H!i!`yxt<}%dZCfVT_O|=+GfL(K48!pavgkqNbjJ`io3(z$VYU-IKN`F%z8d2 zty4PVWinq*2}iZblVn>_F>Djo6&@)TghjWKgv)9h?y_>hHhd`TrIX@OzK0d`SnN1r zc#N2ok!@L)w*hm1el?B80Jj)_9u%p06Ic;$pN6N8&%57uqYY?}LK!oC`LPQxNP$o+ zU*xx5Pk;O}ecgQ?p=Mr7A$dvq(K2brV&tdnIGtsYNMp2Ks4cJpX;xe5g^|^9(o<7{ z$aH1{!XV_RZfl6dUPb8@#GB2H_3{`Lp;xc8M$VbNtnlq8lDrsUl1KV~v}Yrr=IeY4 z1Tip}WCW;#(@*08yBILCfkdazn7~uImd0|3HvKYt*)wkfA~O8L7y%aS-In$>XQ~Yf zvaZ@V_PQN?&0bl0$QFf}&9Zan@$ET36>R{r9a&X;Rh@l5p9O|h->>L_L{k(`jni8( z`X+yb#_=w0+(n)$mni#x8GAp<*wm$3QC5`ftYXetIp;*FniCgdhU1b#CJsbpj9}*c zno8nx6H|yS2EmR9LRAjcJ4+q`b;RVJlRZ}@lG$>pR~qWwEiL8`a0hqms|p7yR*KKL zj7GKaHrUxHT+T(<;c5*d6!~~%l@eC^aaE)Uqj3}(eWnVNQk8#yS92?*K81)dFQ*V$ zd2vwQ4pQZC#URSav>-+m|4j+vrUW?~#vPa#G@El+aw#2YJkN)C6ZE#mLD}fE4*ro=Y6G zb*9er&LJ|^Il81 z((UW!)ZK7@H~7n#nk4-1A4Sl47U{^gfw-HR6s%_6(+FwV$cgYwmy4JMb93Z}r`P!o z#k4TEf6{kIBhcTo9WX*1d__!+OzMNa!8a(cg;KcaszUCphW|k*>?`0Hx~#X3-=Qv7 z+6yqPjvXRoOA(irZ67xCp6wo%FV%RHQH;x{MPF+oBdzQpx|Yi3{@UH_ljAr`XXHev zX(K+5jT^XuV`;dMzsDRV(A9 zq_2Z9wE6~H3RKJ~FeR6RdlIPj{WRQb?B;9W*SaAa1x{5Uqm{sv6O?~45CRKP2C?Sr z=Rq*4CJ8LsoWe5gdbS$4be&oYY%W2QpG)aafJ>|G2`HRQ&g%CH4hu(Oq#&%b;~Q`R=>v*;#SzQ+PT3{U86t_PSGDez>@JeRA@N1vy!)?o&BM zVL4zW;}d(_zc35ON_Sa?>4)XT^6K>c`P)Tce;`aR&R46&)n%ad<)1#Temq^BuNEP% zZ#-XKt{~$%bc26s`>N?VVl8{XtuH)P0)&@y?FL~dbRkt z+GzahzwZ~2{ObY=U9J|Ft833*t+RN!xL$s^db_w@Cp5qHx5Y2-&c9!NJo8O@+*za7 zc>W4cVinG`i@UK!y<>|4Ta-^8Lfx_$vTek!_Ag{Ek-mQ-)0VnrS{UVE(@sw>FPEK> z@y66=y`=aydP&(3ef8@bHTq-I>4!HfzxwOD%YTRI`{mUyi>od!y`KI&{WSe>me&_A z7jIW*s6>&Fi6m)EUJo)pJq2coNEWZBrvdCwryrNEmeaHF%{3l+x4isgY*zkoa&pHA zUHYd5qG*4Gyb;Ky#Druy1afPUkr{`;C-*imJ-uPyS&72MUpx(4!DQ0WuZpZHkG!PnFnec{n$gR%ghK zNQR68l2IGUyW^4~1H)zD)69C9ba#y=dn$kTodq`;vC09f2&#CGI**s#tH8%_IZazG z=l%ERyPOXJZe6YpmuqXnhX5NQ4`K#yMD2suHE+zL_rd7)V)5}1Q&g3Q{lRMca&Huc zbiEOdz8s;E4-npXhEV7ktxqSSPqMNh6o3~BrKoL3J77{~klrB0=Rq6kBmgZwSlNFk zy;z%X?~3qG$Z8n~#D`W2%+%z-V@Le@2x~t&y1#0mBeWfCUrS9@DqB%bazK;=SKNN302O z+oyn1(MIND$1+;`R(!6>C}-TG2_=6nKofWwZAs5+41X~~Hd{>l~nFCijWgIU?m9>5*@M-rsHy)slo%`?@Pw705n@j zP|9PF;9AQy6668gcmOvZz)c2llL6dh05_QdxUne8Rq@xg5uga3T#t^WeS-;$tkm~`O4DCt&@Eqv2|`pYIJ#G+U5 zw(f#~BaSUy0T=z}Fx-EkQ#OkXAA~E`N{7kzTqcLS8Mwb{)BE~-gXDmf;+iJ?YP#gI z-6fYtb;)+8OP0~^%IJ6Xh8T^nj{K=3f9lAeW#rE?@@Ezy27ykzX?N95C~wF+?-wfn<*2V2l?!yh_YtIwk19nsD!kll*D=A(;Tq zMi?MNvzyS+3e>hh!yi%-vl=gaF{_bTf2v>x^(y`-S?JWSNW`mz6>VPGOwXv&Gx43m z-6lu^0|DhH(lr}lx++x9s^(k|73Mfkvq^Z={cOp~NldLgXZW`Tx!|KV0tQM%DlydJALuEPm&8O$8nnte}nJx zlCX+*DAy@~G%^5JL0F#|NI+sND8&)T#01pFIzJ;A=7<0Aqf^iwj8trZ>`sg#LEx+J zxXHkRWg@O%roRFSxq;BMMLIL(ghV4bNfB%!JYIpHRF1u|^&>}tKjq!llIgCGn6$y}jAg|af z>$^PVn#2C-LT>N^m6B#Hj1fWf7OhQx=JoyQJ-`d1p++<+39uDnv6`S78eO)sB0&5C z{h5VFDR$k8uB4>^sKU_a6X-NAWq?;EM+_f8nkD$Ub_U z$ilDkCe9xxqp$y|tUQg@Z!%*dJm1epKjBy`C}V-ED-_6QmcYm41oAgU7-dyDsc4Or zFOi;1eTi}r?q{W771{!lZ*VsKtisJmVTq+*Crt^L6lD}SPAxd1@#S>U`o-ukHRdi< zf+WWDq*IB=Wt=D|5Ubv=e=8VqvZKH(R!e+53g@cE-~^Cup+xEZn0va&)8hTq!?b~Q z!tziDHRlNn+$85Rt#=QJYSF|Ljx&+-a1Dgnxzk$4daX^%x12$i?Z_n*hiZ7L7SHk>Z8lVwbe-_wtxnwt})_q3J z7_o7zD)BMC$4Nd&F|)~{xko_|gMvVhR0*DY>j?0U(-`RM2#(dl%bSJ7?Yuq}5}T<# z29-BEGW!WY{5QcZBW(=M*?tFP(<$CpM(~1O^$V}+!-_5>tDC$!*;4`dv<3MZ$h|-{a0mPup%QIs@9~?cS62hTwRw9 z&)@*jL6Nv#Y*`eBEoud)=gs_73X>Q!a_)SM!SK~)<>YG3wYS>TN(-{olceNsJGv%F zt(A}tdkE1d)0K#~E-a0nvt+dpR;SKINJzrDn(L+UcJ-*W3rLW47 z;A`>qcofCOe?OdRN;dPsjURqMM3T)Gr)0JbLv2F0Ar5WeRq~i4w^ttB*W)APZ3aL1 zc#8L$@6y$+x4Dbo<~cf`*YLbUYA4V8ug5)PZSnd!M!Wc?-PpzKMmKm&n6~&|z~dP{ zds#gHc)XXO*KyZyytZ&7MpiPo@<)QjSC`f3uE}v_f8XZ-MWs_xavNkiKp;X7Scfp+|@VsdYTRJDN9&O^|Mu8lUC8#4ukd5LMswl)2q2Lhr*b@ z18db?TQN1cT5iTrGXSe-5^AZoFR#-f?jE3#2aBC7iiCZnIKqt`zO7SviN&u(GT3cC#=j8{iH$YGK)~ zdxWN*PZzyoL^ruFV6-hbzl7@%W9P z*erpMYd$|p=(C~BO$%a;1vfUluC`TU_pj<#e{C1psb>=iDOz!0zh9vfM(G3l{oRT$ z7tkI1X#2alO0)5ps%6Kf1y8qMl`_Igy1!MjCqBovDdpCw%k9lQ4c$8aJe@$oqS>yZ zkBNs7<3jCjO7r;nd5SrWx6ZEDuE&L~h&4RWte=hF)l%Q?U56cHHEFW)sU=$5V9Gb! ze`?9L>uA$P#gFo4YOtn;9Ja?|in}g5EODLMpvJV(r?uQ@m#4R>tz1`-%jR-^(>DBQ zDj6f33OzR0=D4_u2Q{wpbM_|gf!8l}b8O1=TjBMax^Z?&&AiRcv&!kVm6)+AlxB#T zLk(S5iskY}NQJbnsgPQ2yFw^asgEQne>&Fgr0;~gMn)o5WtH%Cq-8g>rw__$fOHI_ zJr(eH3(#;%t+4L^Iwj0M)Bgi5HuaP_y{G}$LpiPk*sc8k*8+r4y85}kE;qn-pJ;U9 zY$EoncRi;5L}QQ3F+GBk2*0>%30!@mHXB{bTOG-6g-uaBjxTdSfVXS--l^LPe^jvb zZh^q!c&J%7hn!_PRj4j)IUb(kv1l{BjbrB|$LZK~Ix`rKSu1j$A;wXZ7Em2{l8 znjXqOx$l;@H+l??Q(Z2$30zwSN0Q1R=N+1y&3?Y%s}vcm;AFeUeuo|_FT8c#0&<+R zGU%@^8kt@2ojSg;!om9QKoI#CTC4vY$nn}=XXMnfKV@7y)0eDAW824ukLg5lJ%ijP zp;?u$SeOp+rzi0^^J4dI4m7TIxr4%WF{O5CC9lToVmR&enK`&g(d$^a+qERLnF{<@=(XQ{fHowj3bosBgAKaMO06*nG(m3_f<&` z>*3{SKkrDr#!=qbaei-9H=V< zftklj&6KgDEZ5|f+$#kA7f*VsD6}ey1=EcMG)$u$v_OX7GUwoLwr1s9vsVXACI2Nqc~*V_h6%u#{2_)n$t#3^V~%v%a7Yn9vj8ZDqkDz?H|EcjQ=7b~ zLf%X?K0OoNK4e!&*)?(6@Whyp`?+|XgLle6wedGR<m$hI_3$3K z`&u)~<~FYm3Yqw(Cq$a(GTCD5N>Tuz6HF`FgjTy=v_2`QlS>A%VMgHhDH+SfK|ED| z9N@{~FeTk*ONF*fkak-wKVK>k9W%Nr^>uN8Gm8T%%Pco16bF<9$CN#=I5ZqjE)K2y z`-?-vfnQQSA*+a#*Fx^sksfm3Ez+kf6|%KR2wbHRw<7Ou<+zZWgl5*dlX8>bmKm*)1=)mUHEQr-(*qLbg1xuPE*5+%X>x#S1N2Ox9u z$ndBbu13f9yf;Qe#a#H($h(Rgoxgs-M9h&rc)REJy_PGQ1WvA~$|=S{9P71XO?}8) zH*C1pqhgi+zPfxsHElKgd^J^8GLEX+c=;7vvK>-1=rYG*WmWM=F0#pfxgzI(zfHze zrR`*mqI8};U4JPNOil1lnsz=B%4(vyWk<76eT6 z2^dBqFjS_GVYXqHETf`{tv$I|OF|}ExJQe1#}BjDn66db?7&3l!aQa6v7-1Vu5BBj zDY_9D}!Y+~zX!jPrOgbj!OhAsm1 zzG+ur(eoM<-qC1l(OKu#GZ;daC`8L4oWX3_pvZLUk~TH-v*wWlHs>*qa_^td2#d@( zdGh&8GYf^)ClFkJ?b-&6hqAZ!&{*&V#5o?eaKR*(Gcj)4HzUbaXEOBMH0&>%E?()cazG1-4*|_fd0~?N$KvaWoTZvci&fFO@2fNS#7UW(^+LJ!v=|m+*o& zjZ5Frc<~_Im{zd0#tRieoUP<;-{o4o(qf84rKi_k;_EhlVI_ghbvkd3Zz}a;1O;tpG#&qsy6semsC7NL8oTxoVOkgy#nX`^uXSWKcUw9A_3pE6=TeI3KMU zr#L=jxntaa!jToO;do@A?I>&hm{{9Zn$@xfjJ$OA#CNM};4A|nPL7FYmb*dmSUuYt zAVM-EY|#q$JtD;WHE4N4Q3HZrqDXrAC6OEvII9A?W>K7JNjlWXgu=V>qa3EMz`3HV zbVb0YGeU%biV3T$lfkw}CCbx>lnr{0E!y<^3ZEB$-vGMA1BY>Gc4DY>*+?B5xO%aX z^;VvZW$NU*@t;wqMtDwD+2LwKW!p@K%9J(7%j%T09n}*kcuy{$-f{M76x%?;=n6H* z(+#vCqu=+snOgkG`k0>O1MhCHG|l&h#3Y;}&B`F8!s(5`L)#W!pMdc|57O%g;Xl<( zqF)j^{p}w8>2*5a2ffp_JEltz1kQ`yz0gFzKD}UT>4xlsn&a?d5E^zYtV>_}zr{># ze!qOY{0Bpom4lZNAwLwC!HX*smoz3zDVGRnKbe0|RL;lWpMSaI#O%i>?H13J5Zuf- zHC8dCn>np~g!}OW-uNMHsF87v3@BtkbGkp^-6dwUNbiHN3dyJ^y70ZS$fyc}h9|A* z5_C6_iPcuXbI~=2PKAB`WsN@iI!9Pr2?9&5sG~oLD$hcsZ%%@(m4gJ^DGA zsDs(LE9;nZemr-*VT)W14luVWEesRL%SeCyp7a;xij-D%sDd2Dxr1FnwySJY!QQRR zn#-18)g_HvJ)C^B<21ig*h{klC9&L&l0;aM4a{)5KP0$P8FoaP6P_cqsQ^=Sx!{>s zodA+&%D_sWhGbUN?gA`oAM`1bZD-wN4{~d5kuN9B60Ks#JljyauF<*5*g_tD&Xj*% z_T#+1c!SRI?ipr!V z42O2@g%l)}CO?W#`J}V|C9F>R1ekj+a3+l`5rk|>#emz|l2RD~t9R#lQBStoMt7b* z`*gCIL}zVHJtous8w&C%coq%|)wxs!|P)hyzHh0p^77)2;t6T~oMq#g)PqH)rc3S8ztk@;=} znJ^;Srsiiz7KA#&;raUa1!W8q)`^gGef}zr{mlY+l zNFL+@VWYTfH}d%kee}BuNzqGDRHL0Mx?M15L;|s*c2R4HUxr8IJiQa%k_XOVFB|y%a7ff1DCu zp2Pt8ScMk@3Qu|O+)Q{{7vo_t?tNOkxI%HWFpvt(lJaX$$He_{uFTH&l622*^mc-C`_Cmy}4A6R4r&simp>mq}EzWeN- zzSb)Z)C>T2K#9K+oMt;2;6xg0+En&uVNE&DF_N6Jd~3A$hQw;Xd?B$K>1g{;RbV^E zZ!k(QSU1Nh4p7##P?N84QVP@VH9IzQgrhxVIpym9Dtl=0dOY=2wbq0rt$$s!92hYE z*pa|^N-NC&ArdUrgji&bB_>3J4lb9Np9M~QFY;_eU=n8G{|W+Ys>!|2sjIPCCz96Y zr@x;be}4EK6It=}53Rro6>AxtqIfQ!Sgu5$z=%)vJ4(>OMNEDZa%zRgR2Vc);DrtF zAT|~PCdw{$&`$(KeTf#JTYsGE;(!y|1|5iLAdC&l`+e$xOx3hS=BbfEUxcNurB7VX ztLT%S{+p-bsz1f%QEWamc_xGZay_8@k~lG1>3|thCsGEPAX7-zvp7;f?K%VP8Ert2 zK6;CSgNSvcwp5MO-5RqD=@@1Z;$jR8;`azYBY=U|B9fw)Sm7pIhkpgGC#BR?sztKX z?}z8Q>eTl< z-41fUJl6hfY3JaqSbrNV*@JbR-?F}S2oJ^A<$EFsT{pbW8~WK5`pSNGoqeXCT{&SI zW9eYlHQa9xGc1dJ?>6H?&wGKIg`Rh%>dKyXm3QrV`+3j1=4KR*JH&yAq zaqQagpo!8zqUVxfkduSu3u(c1l<)?P>7B}%5Qdlx$V+%W*KsV(YXrhD$zSR-_j zvAb(`>}WE++s?^!SAx})Q&(vD{h+szsih-m!%RFFCKG>IIInmd!H=>CWhM%^tZvl0Dih@o znL2$SiX7q5g&x8ezdux5Q4_k*22deeqPyw=$&3{G#6y%{sH+_3F+qh)d8MP^)?5;a73o1x<`D?%6SH2_AV_~`b_X&X z7)O7=BnwRoP}eb=&H9lQq9t4pBnN~M9VmY17Su4N**?pipzoqTu9uJb*XXJ+AAPiu z_#HKx0su-S1U*Rs_zA|E>30kX%hAs0dpuCWJL@1xQbc*Fh<^V-4?w?TX>2-*(6)Nhzyb*_ycY-*0JGeS`H5Rp~f}7AP&kC(( zhQhNcWbp= z$K7ueLjO1=6euh+2Rr>|O2a}K{D*(?@eVvf5XQRTqWJDU{OjA-KY#g~61eQ&ajKjk zhPpXSKj_sUncDj4JH0zha^#F8h#9$s34%~)*1j&R17D^)&>pd)irVP+IEooyz#Nb* zHcFV_+AzK$hk;idsWxhbMKu}_9>JiADw1xNaQpt{2d(>tt3I-4 zhI6kp8o71Tz4f@u=>#hkJy?HAta&+2FSCo6ml$biH_2FvOLFHL03fA5K zv|AWhhgl0dgi**^5rVZ?Awd`RI`BqA|2vPQFVl-9YH zyr;RoVP28*GhfS-EJlChPHoZ(vinVl?=%1!&h4a|Lr${Zz*B5Er_QC+?wbI4W-JeD z+8vX6xti2lWrW9FyZ9F+mAQ;+{#?D4ewWqGOFO0abiLY6K`Ndp+F|V!!y7(64sYlQ zzb(i#a>nh}Mk|g#4qVFYlzDTkL6hMI!tRuESBjb>3GO%Q{ug( z*?Qq{v%saoxK^f0(n`^CX%#>usQgKEb|ak5V1z=650LeG6j#WNOUYm{N>PEPR3MCdL0kx*lhGHAAMip=m-O!*FGc2HO(u?uV zNktLfyj-ro9^cT_J_};e@c{Ap3W!e37-B|}oEplP3Wa zaWz6c9s7S$TOP`Yz9JeH0reCN(Qsj}{cMouECWW)U)J#kEATVUzLe(~GtwCr zJa5?W90X>?H{jVwG(x-JS-mc@o3o&*8S^={Q-cOeKkFBgyv8FG2&eR|J)(!Y(J5VM@W;NJTKln ze(sK*m)?MgWBJfffdPC9C^#&+%4uRH48TfLmFgEy;hs*6of z!sD~hThpb%4sASlDSr~CZshYjH8a)u#>?dCtX9ps>MNVP!-G5<{{o+#MNolvZ&P1k zVUK?mf9?@oj@Jq$=gB}o{4>8efi^=pusZ6jvT{qKm^aSyMR*TMNg;Q zOQ(`QlTM9wAq@Es$EYGk)o9yHkT1fH&pGH5*c-oFnAcipr`pCkNPZonYa1h7C)%_| zxy20zcXrd=b;lEa9pZ`GUYXX?dd_RsTF-y&mkgi2zpV4(yZa7(_1>WI%CH_|TXutC zaZKS3tTC%t)7JI!pc@CuFAh-L&X)XwtF=~g+*%AQZerEj2ddp~%7-%Bcbxc;GeiUPJCx?(fiV<^q&;3=r*!zHmyTcI86vvU-wFjTxV|x8$>jSo*}} ztg4<-pK(s$;++mZLf+`ZE9ZoAdYoMvVO4hLXIEO8$abrlC@_T0%TFaopZi*%-gv}4 zRnN_BN@z~^ukq>RN^kiby0JQP25Wx{jk|h(FFWqm=IT5lp2;ZIwdPrfSv$YF%2qKC z5c-xb*#oq6K2|S9TXuo%3~R-lACwz_Zyjp+AZ9&MlI+2-Q=VOk3%ey-xj3pr%L2B; z399SmW+6p^7e?JwPd&uw#wj&tCm8)k@ZKCr8l`*l>Q_>x{)qKfN)-oSfX8+y2U$}+uFoQ21zo>!Y!9o8F@$N5F2H7p&{va=@+7}#*J%O{kRcT zp3c@S#Dg$c*kq}bNG8QEHYKNSFFB<#xyA%vNh6>&rFKeA8B8LyTdaOui?|m_uB3Sb zhV=hX?8fd%TkSy86IC@BDlw3IZ$lq7;#Ei0t@`7iexW6>zC;Ujn|@r$AAY%YyAbOe z%er?zEfnY-p+Ma(6!4x^%S9O-7di^9;hT<9H_t-R=5D#uaB#_y?7NALy-8xjk)FtE zI{N;1DGf)nbr?nYOs4>z%&fKphUd%M-G2cPF!QmO5#Bx%0yZ+25l~kXmm4?-D3{>> z0tAGY-=|;R{yvhei)ndke}4b z(5=2JrQ+xtdZeh4f2|WWjq+%lsE61*uG4Kk(wqNb#QUh&;;Y&z7#oe_i3eqwULljqA#<$x{^{saB2JddCuu zbpDQiy4I%S3h(H__DM5}6Ibl6+^{*)XP_qwaeK(ViYr{iPqQyc`Y5@`wiV51AF!>G zjwv~;tuQ_XNn&@Z&~K=G66ieZ&?T_JU^+{xr1A_fUPfD2T!TZn_8GMkrZErhNv$ccENrQ6Y3=#!uN20;_apTi* ztu8vVmCiX!99L*G>V2PQ>P972PuFhEK*7{G4{%#-zc(|kcWqb_`Ryf;IhW=fs`GcH ziOgG`4Tsk?)i1zA2|h%$yUUs_nH#bv7Oy!63hG#$8T@3jJSZlNr*%xKK|x-B)T;JO zJr(5PJ@rf?S2oKc6_rk`TSsR5 zN1Z2te5E)@5pqQ(Yzfp-`SE6($V_%{(&%A}XnZkpZdvM+Fz+44?>YZe%>ftHp zcfQ@ED3-JD}ImKD#Lzk5*^+~Fm2%kpmWt&H&T3}z(>WqE0j+^XffPt&^ZLojvX`x1+ z&R1m9XsQT4Dm+C6mw_dJob#^&Eazt45^xlFf~tk~-O|*Afu1TL)?L+EDW$NkYLl(F z%cE`>D08c6iQLISf-YaV5Q$8;4waz4vq;x%jg@KhomvicoVt!X(^&u-pj8;ZU9c(K zs)`!VoxonbH>Ff_`%*zf)y;8)l6ZB!+wZXoUD-$L(o=+HvbC*`1hOinw-D}$VoV4>!BRGp=u{kk z9S*BBx^mU!gpJbgwp2h@tsAf6B$tj0TWQ;NFcSj+@?q6~x~U>PFmC;zYJR>mNg}Mf zVN&CPXA4C>RoixEX@(Hdo@kAft)gy6YBEUkZzh8}ZYtGaBt5i&hRc?SJ=4h&LI}pa7+EjQm(lN*ErpUyD?d^A z`XP0Za!Xl%w(LKWn-xySJgG};);hfCL*YTegz7^7!uTDORHiIfe%IT9rz8X5GY4OfgE<7F0`@3v-t?l+ddNO&Yr@ z*F~-N6gA%3&p9v!tNbg4y-`xiDIoLsbH7(i<7g#+mdC;19h#gO*L`(X&sJv9JxJMk z*9>_cx{GP$t?v_5Sxke0XcR3-|5!T`t&&$Lt#Xs9Ds!eAvmm#cX+@D5;AIcLX`-?&FZ{C8pI=C`;P5tz5HFG1(Eyws9&liK%TEnkmv^HCJfib zq+`a^Et5RcU12DwU@V!V6YE^OR#RN-ol@P@u~jv)H6X|xGmcY!NK#v0)~0e!lY%=L zvvNS25TuwUD|H2>AUoj%=6kY`BDc!W>jo%)b-H)f^l)vM`Ir_q0s>_Vr0FqOSqr&^ z-pMm;ErV1TW_fFWhC?Ugx<)9{lf92ccyO@FC#D94q2n4|oi|;P>k=e&W<3%zQ=`iG z!|mCeMtT}OhpWP~yQgRuFm&tU^TnoI;e|s|Xjj9O-RA@d zb!}SfilGKGZAaU8XGb^G<7ggF;A76*DdUB=OiMj=A)O)g%TAR(VN|puoTcIG#xsO; z|CW_=52OLkt7=}{0WrX8eUMQR;BByfo+T2!4PuB4$%(5&1+D~v9%#nZ>!!GBsyl0- zy)$Q*y4>Y|wMBRIyd=+8<@zmnj5S|83z1@IvO2R$0EyeNqeCi)opTJ~G$Th>CCD+T zhPI3$naGt`X{y%Gts|c2_|}i92iH4*WE}1X z#RNzxb1mpZ2(cY!GK0~Sa?%wF-fc__N>h7Jrgl$U?v$h}tJ*Q$al--k`E@{M74ue( zy6NRT0$#^}D?C>%CQCFu>oeJZM z`uE6h)nG^0r~DbZ8+hMHAt81;csu&bFMNzVpWDenJ=EEjdIS$x zpt(=b<3M@Pz=>euY^M0WNbcFBOzZ={(^rSDo^}W=%54fycr9SgKiK;A< z@F}wPlqb+IHa*}C6*RglKQ9zAP?UF{-(9=4V_rdr#?#c+#JgVcsva^nLym-f7T&qzdbIDg+jQJm`DSz>Yt0$&|Hpa{y0xhmg#G z8>y8NcC=CPrGE4i`mR3IQF0cZ)-{ATf7GOx_~t+C#&FRl7TH?+PYAo7@C%}DAo!Y~ z>xmwWIsKxT>lcSO>q|mzAgXRg+#vos;IRBPU9{<^qm7cf6KZtmcf=VX<1GK~AnOEB z%Lv=~k1&RRaU=X+?1st}ml57R69G1t(Q`u+mu8SZ#{#2|w=a=DPYML7&do-b5#Bx% zmr{^F6_?11S15nITg`IgHVnS!Df9wi3GjcWlbOV^JJVY`xpjK#boaD}?)x7KlAt7# zl5JT^4s>jq20-A$4?#r^-v>GT_Vo7g^vgx*!3l4`;qdWo0Qy4GD@dBOW^e$)Di}U~ z41fJ9C0ZJ9G_;gT(Qx$M(_i!QtiaO>pl{%n2E05w4K#nF=r;;!-Q`7x_}TOCPI+EI zTtmMP!Nv6uXc!vqR0{L_9qe?0y7)QWDkP^gE0emuo_tw1P`g9RgO zfZ^xA!?&kDTB;*2Nx#W2Mh-u}56#SAD&>JBjq1VLAXNM+D^I^mX=wBM zLW4H1NmYLc%_a+n^loBYW{B~~MN2Y`>9`PO(w;PA9z*Ii^ug4sB)MTxZYPBX+fs}M zk5utBzb9iQYIi8^cfrUXtw9%v{gb3b5Ex zMp?-<=}-&npk1vxIcVaI$7!=n2pAFDFd;{3)irT33A_gsGvVbn0aB)-+mJed~+P^sf^EOF+#*-!)C z#F_TOOZU|{tGVvQSxxN<&K@jc8U_snwm}tywxOeVS*_MkX@LscUnDq~2a;A!L$~>F zqH2P0rr(ua-Vq&pNQa%-cDRb7^OW{Wx;fHSD0K$))t*u@MLsbl$KZl4CgHKz3+sQ* z;*|gw8iMy#NQpF*S&XyihwG(UfHjO1oK}k;%?|~h_14cT==6fd5@+*R4Dm+LX!pJ1 z?LLSOY7cH(Nfb(|>x{S6j`_sV5Hu^LV=gq8^{C}OhnHFe2a^c-WLeOgYBf2p*+w*n z+G)o2!LuRh;aJ`B-dUhH6b7-Q8kTqDtZ=T||BionMfsYN zue;{=Sa~69FMFqVlXr&W{ShhQnIk(l4MlUKBbAcD=bxyxv_fe(a-TIt!|^0i9J^4b zDaMqJg5m6x^uQ;c(lMEI@DjsvQ3IUEBeLPNW+(AWkb1-+>MiVXF*^841uezq$l4Y~ z&FUR4rh-YgCxz1cSgOv=5=ws)bWD8Hy0NJi%UezZH(GNjxo65pO{zDuLse156e>m|E-R}@I4KopSDk;SjL3*CyzJit zg*xN?{4!=#tYsg0O=r%c+`v0bupHAF`%GSkZLkcJW_A_XEHegSaZEo^*?kP?z`*yB zaCFjjz7!aK8F0owF|;ur|>m;WSy2ubxyk~&#D&qA(oDEN<>?aCF>6mOJ~gu z58rTOy`}hmwR3;etX@v8{G`KzQ{6Z(x7LE-1>khgJx{5{O)sTHVM{udJ8bDCX`q^! zYaqlsPv3Is3a`GrsCAy`Ck>l9$1-yTJLQtBmB3BNthrp>*BW-p4Mw-mt9`L{^@@cE z7hu(ATd3wjl9vEz-o`>{tlHN$M)h@YJ+bj}XrTglv<-jQ@K}4ehHn&GiQaOa%}uuM zK?A;qfT`JjOm8KfnL;Pc%Kfg=L4d?|wLVpk&vbBcR-n|M4VRjWoUR7OVyI~Je$+HH zFFnomo=IwM&aU};@U><21h4t*uEIFqsDVN%Nvj_BnnQen zOl+5UX9OF~V)mPb*lPn1n#CS!mJoyvc(+yTqDYdT@ITHn-qROqqh;)F%Qz>D(>D!c zHydX0KN6b1=Z~lV0hnOBK&iV~4ll2V-;P2qhFHZ6UtYg03^yqLGm1g27Q-0Pf-SEY^6l_>q+0e;VyXZB z{Jsn$UlMqh0X(X;QXP0q5k?(2a76f95j+K9B?OZno*p#yqH^lLaSzJJ1b>|u9Dp!@ zOON?31}IzW9ZAnYlSTo`2#Ios*P(r-;5wgV5uLCtcJ7T8Ek$P3HB z*X1C&!S2d7qd)wpBhpIFn}5YYo5oMf8#F_i2T!q%ru}}jgN3WIMPRzH;eUB5X|4Z> z^?8;5>96*8o{ClfTn^us!{>ym(pno#v6c&kPi?G}GgKLo%)sXwWb+V*{&PUZyw=@QK}(in|3`N57kSOgpG2&JvG-7eC8HK9w#r zX{HlrM~+SW#!Ju65MMTs({AgSd> z&YzG0NTgaN+HW?B0X7-T$fX%Fnb4XHa80nS$u!oyq9`Z+ItgY5GJtrg&Qj7xhw6H; z6!#caf?WKVB!B3n@pn{K^h;837`aI%AzPW^dRfLrbqH@@#VO*>7i6blW{|@sPHvAS zsmR(O$DJh#Ij=`<&M+>13oLPdpaY-HWYdr`om-sJtVE%yof!CwkOaedPHJ1Tayx~} zpyH^G92b6BLYL~gdtK`DnT=q4S%evEZ~LF5SZl<##Ivn<1CYWD^ikW*HiW$SDm%@ zk%K&|?n+-84P-u>Oc<0r@W)0Ej~pMX8N(iD{AFV|*KrT-)}&$^V?e^&^e9#Cn#84= z`PIu$nSW@p1Ma;%n?WE@2%is{C}+7D)?Wo~%zqKwvn(2PiF{_z+#7TZWm-)hjo(ePZPAO36C`}l-8qqkr4FoZnZzzWQ zS(B|5=I|8Pr6fApV@)Vs;#j2$y49#|(lcvxm6Ju>TUXuqqbWe`OGH`rJkOhMIq8D0 zZhyjT#Y^{+U9|P7H6W8aTl$o+!nHB1U=;hIOEwy3WohEC=fPuA3{GA%?j@6!Vno?+ z5O%gr%1$*^!KbXdBYA)&lznc4&h^lg-gG>Osx)vw!X< zE8|27eS@t2ly&h3+WyQe?b?lexdM-VS1v9#8FP!ap`sk9okZ=JpAo2+x7+f-IotT# zO;lkQT=0=9lXDLd=tH5-QQjOmz+TclK#6*3N6uISm#EDVMn~yt=Dx<-xpKs)4MsbA zr$9xgnSE!A9d^CbVh3thSnRq#j(^$`^WG@7dwLA7tedA;T0;<5dzzP#^gH@f&H5zp zEzuzPOTYJt6LO`Xk%3RO-oB@n1Z{FphaK;WKj_JgF#}DRTJm-Cz_=b13S!)d{m%9Y zjE&_xX5oS2q(6CU1vXILXyomYIah7t4&52UbtpJSw6!Cp;4yFT0O~86Eq`Bh5;tz3 zicW;Hji#zao~RuCqu8xv)x+1fd-%Tcr3^XBC+d3$%*|!Yo;t|5v(Isf22Aehb3Mg< zpCvq%Ly_)T!c_@%7XEA?ua5iKg6(i3In1AFPH@v!nC% z1plvnj}_%ij-74^u|jY{?Fi-_HInczTsSch>`XyTL$*)`MgFkvj(-^AlLuq$onwqV z6=VD!JH!_5-#=6Qw%BskIpq~E@?Cm&fU_>R@CygU)1&U$;qcib>-4NJ&g>3`gWR+p zgoQ^(-4XTn5!UdaX~Io+7_dH3%e_J4xCp~3KPk3i^=(i4@J=h4`GupPP&bjpH?LAraokCX;`f|ufX%5wdpJ3_hD#3=I%Bl-A= zVDLY(pufBdWtS7)J`n*nm!VKZ6ahDvG29L)e^^Uz8#fTX>sRm(nBimi0t}(HV;Shp zfp0|*MNp@QxM0rdm ztI+sC;lEZ$^iBk=rMFtVyouj#l`GaWNX9B;XaTv*J7QT~j|jp-rORw2Af7nmDiQ&<@VgifWJobpzA|Vx>7>#{i9O zQlc%~LmltjKARvi;`FQunfO(!Qu3%&*NB1c&2zt;{z853NllYhoo~rNd|NI+Urv5 zbT^efa0g>o1@G z&=M#7n`bBi7zR2;@m61*lSyk3U+FdC=M7+|I&&#Mxjz>*qt)}hIpWkTS7o7Dp+$*0O zjhz6T7dPG}8I#Yv3Z!yzf3q0Ta30OY=x%RaYl4*hOYp)gb9EWhYhsEbJc~iZs_RWx z_W5iBA@Xw$&M?r7&<4XO>?_zS*)T_X0qdZ#*C}X*3486+Embw!s+z4=sZVxu*!gn57;a~P?;C?i*A0j zzZch$NZ@BNAT`zAe+#6I7_TUXS1YsP#rfGFDMSf&zf zIT2JjRa1NQ+N!C&KGvH0w^$A%;Bzw|pEEYxE;vLSZNqKtz9eGDb0@cG8k=iCt4&;r zKOV_jmNq4dw-JkegEc$HhEe&+aDj1z`{K#Xok7!BqgSghf74_kON%$(6M?r&E%92C zFEA``?yMOv*fw&$;q7U9!?6Fh#_9&7bp+X5xN@;|!pkRai z=TuGe1?3YRe>=s1iYT93?qb8H${NlY++;V51Rr^G-~DCu)HaKK*Bk)>uyr%XpK@qJ z9cQD1e}fXPtvt4>lIx5mU2m)<4_H#W8Nb`L^*!j2Pw~L_{nNu*aGZNK?>mV!H2yfQkXavzuO@WxHWvFEgPI@^ISOJSM^;zZICHk z6A?`ue{bQ^f_n1D$l}<()8}dt |6a|FKU04vDYcUl&iDsX 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®H}jpt)Cu%9w!a-2U}>)W&~tz=q` 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

PN$tzqt+*W^^q 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%0A(=^JFX)OiQkpGu0*#fFh; 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

Oke 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]BBGTT=G{!>fEv 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

}@!IUw(kO1Q?11cV? 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�|CFBnG6~gBi6hwSbuNIAa^t|));bst7+D0d+Or7Z+0$+$X@y}Dx@k?VUZ-% z*aYdM68sPYOygFxMM=)~dQ58xj#uIJbPrCr&iW4nR4kI^NabWO(4q32V=WbkEBwTP z%H?d0Ix4VG>)-@ib5Dw`7Ax)D2u|_ca^P^qo}+d|o}4gEzjIiv`)AmBCvAY0=%B}c z-SruZDwbsMOmoCv^fGGGkL!kbTdT%b&TaHWEX`X3J)*&}kQ5l0o_q7<&u*>7 zXe@g$^F+>KrluybKt;D^3mx@r3AyBc?+E=vmuZmbn4;_c>oQmY@I3{cM|9%uE|C0| zb+P&M&&%^KPk)d%bT9w%N-Eo=AE0G_ul-j?McgOK58vcFWo(GVBdDa&TWWPxGQbH$ zHV%NNZeszIrL)y!**AtF@u1ygZEhAKnQl;#ZKBu$!k|)rNY?i< z&;rjkT>{R86&Q5|(bFlI=&FGOUo*4ODRexl*yrK(^N&U;RBCuftL<16J0MJgMwF)4w4m3n3vY203L&7 zA%Mqd>;w4kZoWz??bW2zu4SN7n5i%KzR^puvOlgJphHch!p)5zx)Q&)+AUwITc<2l zr1@%%cUwSnJ$6#P6XaZf7{`9Mc8$49=HAALnTB3)z%>nt{w%aQ6Oa_rpM^@Akv=jz zLrFh7NeaT-$QPYV3Z;hjB|C1u4EK#nPw2S05@T>R1}Jpby~sqXw8i%t3UU;q3qNrv zXgrV3;su8<6~+q=1uM)4hJw}V4;l&@N_h@GcqTX}dge%Qj_jv@Oau)C%Ji3N6&SHKz56U_dZ)9_g_xo_rXR4`C6`9U+c z7!|w8$Bf((&sN^SEk<{k962sEZL>)w^cC-G(>52CwXWK*K5Q%fPCl^2Nke}6!0jNP zmzcLzvboVnMZ-sq+vbQ?r)~9{-1&d}_+?KDWo~41baG{vDvdD;0y#C8F^(w|ms&Vb zDVI?&NSc529RB(A)172wD`rXy>*D0R5eTbdW)9%-Z9F}MO&TGd77A{8gpcAkVt|O` zF;Zb&*=IGcw*1CbCLHdG9!n?CYFk%(f>BOMzdz>nJi})g-f7N>KSbTzrzK(13M=FE z@$21h6O#XKN<6reLdRgI|4wOI0BCO}DZGqxnJA)!&v{K!&FEpzW2V`Tn z8StE7lx_!fQw4_vvCNk9zVwp?t9C@9siHw6g2H=gi2KVf8q(8`%TnC+>vZ>Nx_i$| zwbp+Hk4u6zkzUb&T4O364Ib5^V{DnyUPK>_%QWBuBy)XoMl8=Mq}dr{1Sk=s_i?I6 zReH-zM{}7%Pz6GnD(`WAg9ihlI8)^l#S)Qr!o?(LkzZU2A#%G*BUrgz;tgSiJC z1t6q*XO&Pg5Uga0@M7025ic*RJ4=-GR(5~d>XS~D6N}~Ob!-5JN57vs)DnsJjmGzT z*@Bm2t=++v(VTVc052p8Xko{OVJ;M?h&mMuJ9IHRCpKeBlfjE@*wEM+$EN923}9U~ z+tZsq>+39;uSg>`nz#((oQ-2LZ^sNFop`EyI>TF6pLiU~nKPWAH@2CY0+;5<#Tb7b zdtsm*F7GzIna(tX_G>!zSbtg2Q?Rnfex~97GTd2Aha2Vl=NmPix$YQq$gx3o^^d7pCo6{?9uH*HZGgsb;0A@Uso#Q11 zZpyNvz)c&o0{<)hMe`n{CI_L>%sYR4yC_v=%<3;6dNpP5eBZg}q^1E@)s≈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


0V#2na)1N$ccmNG{N1_goweT!5WEeK<@Lk4S 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 z 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 z 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%0D&d?4K7xGt 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 z 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�$}V&`$>NX8lU~blRMJ* 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

;j`DNdRJ2u8!$5Sf~3u2P^Z0&xEkP)7OrU; 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

#xv#=p?vd5YV#8&&)denBJe9Tf-8VcN;&glM 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

8$h+N2>(QZa2UTxMEYR#tB{N>F#o;XXWeMATOKX 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�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

`r{U>oKW)yje=xr~bLJeX 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̬`!d+T7ukBB44VBjl(#Y3y8-lXwo&9Ku2P*aVg* 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�(L9{QUf;V@YMYZBBbb(MOXq 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 z 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 z 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

ME&HJq8XnLDpIVi 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

$Y)_nF7t#+f+ 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

dq% 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�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 z∾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

FQFUOTW20qy` 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

+-Y;E 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%0DFW92oz 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 z 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

S}XzN>|dw26MAxAjr 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

~CQ$UM2TAePnD*EREh#Bc8VZOZ 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

!le$d2 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

&!Kj4vdVpJy(w7OHTqV2a?kZG+ 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 z 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ⅆ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


!U$&kj3>aI1b^5Bgw;$LF{7%M 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%0Dm>D+Cj-fz+A4r z=Dg6Z0c;k_dhN>@&o(PeF?-wg?pK&nw2vO1&I+fxe-H!TIS{muayH0+>+ZCg;RPXq zSH#W+Eg6+ekuT=VMDJ&IX_L$@X}pUpnr@LL_32ycktOYR=n>Vvw@3?jizX!WAzA@EZwz$nAP ze9TrR#+J2Y@~F~R9k1MfIk~hC%T}igdOr!EQrj`{1}!tPm-^)#gy#D}ty=|kUMkm8 zzcHHnyg~bPLHkEqcK>XkKh4%`pAVpb0HShbr-hK%u1KGA8stPoX4-n~g}o8$TIFT8 zEh0o;E7BHqX^sBLea~dyLhs{m9U^n$iggaTWlU^af_C;~A3mc@gedubjYjy1Qel|L z0n{5pNJErMGjD6EBbwIvT|`G?q~THh=#-#dQK!)`bS;T!EWk|1{rEf7C>Wa`7N?(bh7LDyT9XUaEpwqxoyfdOA>Up%8w+IPgkZdon%!N>NYoUsR7>aXS1`@&6DvR^q zaXk#A;k%s|&ro)BUV-m}(RBo?ufQbP5@?(QEjr%Rv4IU6Y`^+Zd175<)ByA zQqAa^do)ggGxZy22ez7z)bd4HZ`oa%j@J#_T}<$bA|=5i-R&=l9MMyD&92zvxlQdD z3bI<^URs3av~R4EvN}~tcV~+AOj}>hUmyp6iZ*S$mOCvKH;_s6VVrq%n^ucHD5S}W z_evZq(3$Dk)~waIAo!+wcio+?4K|^Z&s4&@_*|6$#f(_Hnuj6f89P`y5qVZ1SgWXI zk5c1|f?P3lQookdx~CGEj>S?-sRU-*t(3F*g6BfJAYR|rQDluczR7t$(9au+3Cd)D zM}E#0a4S-3CCO)m8T(CAUOkzSbQ>H^_92E% z(DqBNB1lR84%vH*zF0m!I?>igPgd8m5f-Zqrrv*uhp4dww7cbxk&Q%iTXOI z!-6L4tSx6+?V)lei%@5a^C<;eWlX3kmK>Q}M&9lI5=q1nv%-qq=6RR$3+Lm>{e`AgK^#ndE?r6P{su`!F*VfWV-^}EULo3vM2^Lb z2@>bgelljNT_a}h$b^=f5*5{L?8H5L?3kDPvBD(TQoS+oJeyL$6LI}?>(lj6p`3Nt zE3~YvD717uYK30A6k*GWmd;#%MZv&8F_6Xh+$Zks4k3qD+dHi(ID4|n5s2$7vDybdl20NDF?KHm?MCI0hJ5( zKp<2UKh`$)28}ud)l9BegG-r7Mdd*IL?=LS;YhVq6hFW|KdZ@(hEza*V3R#IoweO9 zo6>=>yZY&|CW>9u_w>_$>m3)mpPp3+^^Tv^I|nKCnZqab&SQ(in+H_3lomfQJM_wX zQ**L9J9Nqftlxot!Zp_T$u^K82EU^qJ$emMncV|!0DiDxW%oG!86An9`r3~V^2*=iw zh_o{AZ_C{>$5?v1Orve?;iuI>-+^>4xe8Y9j$O0EFRy!9f2Q6{shU3MjtJJFba-u zKaPJsNr{H93tuFqQhZtd?)a`xpA8}K+$H3l&JdK6<#MukPHW*k z_>wNQEZQJ-wW6<(OD0_v9kG8D`5OlA)mHAPt4vNgURK&T!*}B)X0Df>e62P(&zCvr zXzPUXRUA6w)Y*r~M7)Dl+pP?&H41W-V)4d!>x&>VmCoWa2q9dE5E z$Q$9%k2M9N@IY5;is7E>2iOXcS}FnZ15_U+9v&~py}NVJ0601LN*-d#G55ocPzzGg zTk)Ca#KvL{eJ#Ep1Tbm*W)2jq5Do0$AjE=_=};%C-O5JpV}B9Wj)%k`SCVelZBfFN z)W_jTAe-4hv4-;{LtK9?`HPK*6h&B764h{uuElo@;kDM4)#;KAZif@bYLyx3ubAH| zN{1Yj>_{cre1}FuX-OuZIAJmTa7kZpxe_aw>zFwC2vTCT~J67~RY&asYpw*$#R3gPJQ;PS;W5 zw%1PPGFz8v_)BsOK2bS8=Uqi|oqorRB&!aRomMI9mS(@JzT+~MOM?$G7fk}0Y%O97 zZ)4@pmR~M&6?fUXa?W~$ZnfW)YoS<__nlmMV<8+SRBqD)aKi(NO{F)ojz7P0D%y${ z3WT(#ix-#4QUibbs8M%c%2iyc5}!PzT(5*7|4Z6}|EI|Z zdd++3fs=m^G@esEwH^?)e%Up(K+R#$y3Mi0NO7g*AjjRU8z}ywi30)&3GNq791yvM z^$Q};0ny){cZnscM#3ADffC|}9h;K@pUX`>C6rL?r?PVzFmi($f=n73#K7REjw5Cy zcSmkUb`igW!S@UfN=_e62~*T)ba`@+yQw{y6n%f_#%YH8r3>gdcix+ZDr{AtKUg+O zX(4gO3F;g z$<~Z~sZDSlkLXSBY=UPiq>VmmBosV-&+uRS? z`+0wC*7LZlV8;@dmc|IF=E)RI8Bf%G6=SY+&eM*Do*Bkh9j}wT>zF7|J9lFc=xU#t zO1Z@VZ`=QT1Aj=P9FhDEou;>{-Uj4xK=NFuQyCVRdfqK*kAG0)nLn~ULJh%2 zDu2h%RySHRL=eu;`6%q!ENOP44_B1>$bl`%lWy-oLyZ{sSzcbeGX!OcMe( zHkYC22NRbrDMP>ka<}g(Lly=E2xurQm%&m)6ag}q!7c$4mwZDPDSukYj^j8Cz2__Z z1Em%zQVY-sP)St=nAJvgAc_7ALM899I;Zq^QS7iYndx>~#0X z?(nhuax&C8WPy=)^>&WeWfP+QlCTSXmc3bU_8~et++N?Eb2y4!X3w(toh-e*f&M zk#E^~-iho2Nv}x>+0fC8@S;Bj^>AFj= z`jea@<5u`n%aV(DFdaliN$YIn+YLUSYektXhh7`=sF^rh;?H=Fl*MKa(M!DKz0>~1 z>KHzJDBmz@&wm;jrlTxj#cs5T-D(`5_X^QAv(=S9S4a$2IboMdBG96L#H%X!#@kyX z2w5?NXCr8?^-%=PrCmVKY7C%P)>5sZTCr6UjZ@%EBk^>WVUUELjji9{I&uNkLx0Rx_{#iHSl~)-86vN-Z##A| zhLsczjivXmgCWWCrbQMnvx~5b^X(dJ%r4p}aoMxkWv(@`3uZQX%Y0B)@R*tB9K(3! zy{RQ$&rvb|FJz^|`k1vS=x^qv-_Jx=j>Y-YeB69xS*j%KX~Rmck{G2$??wM6KV!}f zMGM{MPk-?YNH(pso#WnE?2~O~8}jNNdb_9~$!26_JGo#3FXgv=1WbC|W@t6^G8Yl2 zpPcPyWziBKH(qoW;wh&`dBBcEzxQM5Fw9P1pZ{t~nme?} zelnOzebOr7O3CApB&h*4;D(T_B;LkDWp}q(sF6dZ!q=h1Wql)^b|G8m#;a6@#7k`;FX{yE1IBn zNPmsTOD(a{3a^cqVZ+wjw4adTsJCY6m$Ald+km;3X50*4DP?133+}O1)s#8n&o&kf zk-|xGt!j)m`6uaT?JQEIzV~DEBGX6=!`Q6^SfS`lU(`v!$#TsUy`EzG5?oXn_H3p+ zI<361AA`(fYa5zzyJw;4XQB!~SNfUNy?^gr!X-vV$qRmT<#o4ZJ`L+Tkj_Lr)*9h0 zUd#KG+_S9Sz!H^EqBCcY*mS^6fRhndeD|@(a-*{c^9VJfAB1{u`JBCN45M+kYPO zW5#VWW75ivTlze~q?q@Z5?m@GiaE)IFiZf;f(?e0(!-AiW%|WFh2`gb)^ZrPBYeS3 z2^7z>6iI_)lU>E#c1(?ucD%<3S-HF^q~45PqEM;%wG@h#ew+l<2)>F!&p^#PMKNIJ z5{HJ;1~vy&B$a!mVc7IxMF#C&XQ225ZLchdWnp8lVh43MBhVE#*=IZ)2PQx4+5 zqcS>dxV@+(Zg>z^NxpIrS3UitgE+9FJ;0M2ot4%Hk5MXVw;aT+Z@=Z^k3iaT{n!yi zJ|d~4o;g^HJOhpMwg!apik#Upz$%Hi)}M!m_V0jBG0^N(2d@1q!YA�>~>Xc3t&d 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

Cu-|Cxnt@dp%7p2DvS6%t6 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

-?T=gcPV7Vp-jd) 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

MsyAGB4zb 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˻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 F3+!|0pvz`TbyLd?J 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≦KseWzVAp+G;i&{cfBfb%BUst7j&TT%3 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%0AyYR~ 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 FNNA%1fh+_wGx62k*Fu-KJ2b?bF)pB*A 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

$j*H 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

w%*w^;V_>zE@y7(IZj)4?M3%mvK>5 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

`k`9i>5!m{jUV=0Z3MG)2 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¥(iE@>D^38~eLzd-vr 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

    >eveAvwvmPf@9TZ%&&-PJO& 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

    ibL0+*&N^ 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≪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໛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

    DenseAxisArray{T}(undef, axes...) where T

    Construct an uninitialized DenseAxisArray with element-type T indexed over the given axes.

    Example

    julia> array = Containers.DenseAxisArray{Float64}(undef, [:a, :b], 1:2);
    +4
    source
    DenseAxisArray{T}(undef, axes...) where T

    Construct an uninitialized DenseAxisArray with element-type T indexed over the given axes.

    Example

    julia> array = Containers.DenseAxisArray{Float64}(undef, [:a, :b], 1:2);
     
     julia> fill!(array, 1.0)
     2-dimensional DenseAxisArray{Float64,2,...} with index sets:
    @@ -34,7 +34,7 @@
         Dimension 2, 1:2
     And data, a 2×2 Matrix{Float64}:
      1.0  5.0
    - 1.0  1.0
    source

    SparseAxisArray

    SparseAxisArray

    JuMP.Containers.SparseAxisArrayType
    struct SparseAxisArray{T,N,K<:NTuple{N, Any}} <: AbstractArray{T,N}
         data::OrderedCollections.OrderedDict{K,T}
     end

    N-dimensional array with elements of type T where only a subset of the entries are defined. The entries with indices idx = (i1, i2, ..., iN) in keys(data) has value data[idx].

    Note that, as opposed to SparseArrays.AbstractSparseArray, the missing entries are not assumed to be zero(T), they are simply not part of the array. This means that the result of map(f, sa::SparseAxisArray) or f.(sa::SparseAxisArray) has the same sparsity structure as sa, even if f(zero(T)) is not zero.

    Example

    julia> using OrderedCollections: OrderedDict
     
    @@ -51,7 +51,7 @@
       [b, 3]  =  3.0
     
     julia> array[:b, 3]
    -3.0
    source

    Containers.@container

    JuMP.Containers.@containerMacro
    @container([i=..., j=..., ...], expr[, container = :Auto])

    Create a container with indices i, j, ... and values given by expr that may depend on the value of the indices.

    @container(ref[i=..., j=..., ...], expr[, container = :Auto])

    Same as above but the container is assigned to the variable of name ref.

    The type of container can be controlled by the container keyword.

    Note

    When the index set is explicitly given as 1:n for any expression n, it is transformed to Base.OneTo(n) before being given to container.

    Example

    julia> Containers.@container([i = 1:3, j = 1:3], i + j)
    +3.0
    source

    Containers.@container

    JuMP.Containers.@containerMacro
    @container([i=..., j=..., ...], expr[, container = :Auto])

    Create a container with indices i, j, ... and values given by expr that may depend on the value of the indices.

    @container(ref[i=..., j=..., ...], expr[, container = :Auto])

    Same as above but the container is assigned to the variable of name ref.

    The type of container can be controlled by the container keyword.

    Note

    When the index set is explicitly given as 1:n for any expression n, it is transformed to Base.OneTo(n) before being given to container.

    Example

    julia> Containers.@container([i = 1:3, j = 1:3], i + j)
     3×3 Matrix{Int64}:
      2  3  4
      3  4  5
    @@ -86,7 +86,7 @@
       [1, 3]  =  4
       [2, 2]  =  4
       [2, 3]  =  5
    -  [3, 3]  =  6
    source

    Containers.container

    JuMP.Containers.containerFunction
    container(f::Function, indices[[, ::Type{C} = AutoContainerType], names])

    Create a container of type C with index names names, indices indices and values at given indices given by f.

    If the method with names is not specialized on Type{C}, it falls back to calling container(f, indices, c) for backwards compatibility with containers not supporting index names.

    Example

    julia> Containers.container((i, j) -> i + j, Containers.vectorized_product(Base.OneTo(3), Base.OneTo(3)))
    +  [3, 3]  =  6
    source

    Containers.container

    JuMP.Containers.containerFunction
    container(f::Function, indices[[, ::Type{C} = AutoContainerType], names])

    Create a container of type C with index names names, indices indices and values at given indices given by f.

    If the method with names is not specialized on Type{C}, it falls back to calling container(f, indices, c) for backwards compatibility with containers not supporting index names.

    Example

    julia> Containers.container((i, j) -> i + j, Containers.vectorized_product(Base.OneTo(3), Base.OneTo(3)))
     3×3 Matrix{Int64}:
      2  3  4
      3  4  5
    @@ -115,7 +115,7 @@
       [1, 2]  =  3
       [1, 3]  =  4
       [2, 3]  =  5
    -  [3, 3]  =  6
    source

    Containers.rowtable

    JuMP.Containers.rowtableFunction
    rowtable([f::Function=identity,] x; [header::Vector{Symbol} = Symbol[]])

    Applies the function f to all elements of the variable container x, returning the result as a Vector of NamedTuples, where header is a vector containing the corresponding axis names.

    If x is an N-dimensional array, there must be N+1 names, so that the last name corresponds to the result of f(x[i]).

    If header is left empty, then the default header is [:x1, :x2, ..., :xN, :y].

    Info

    A Vector of NamedTuples implements the Tables.jl interface, and so the result can be used as input for any function that consumes a 'Tables.jl' compatible source.

    Example

    julia> model = Model();
    +  [3, 3]  =  6
    source

    Containers.rowtable

    JuMP.Containers.rowtableFunction
    rowtable([f::Function=identity,] x; [header::Vector{Symbol} = Symbol[]])

    Applies the function f to all elements of the variable container x, returning the result as a Vector of NamedTuples, where header is a vector containing the corresponding axis names.

    If x is an N-dimensional array, there must be N+1 names, so that the last name corresponds to the result of f(x[i]).

    If header is left empty, then the default header is [:x1, :x2, ..., :xN, :y].

    Info

    A Vector of NamedTuples implements the Tables.jl interface, and so the result can be used as input for any function that consumes a 'Tables.jl' compatible source.

    Example

    julia> model = Model();
     
     julia> @variable(model, x[i=1:2, j=i:2] >= 0, start = i+j);
     
    @@ -129,7 +129,7 @@
     3-element Vector{@NamedTuple{x1::Int64, x2::Int64, y::VariableRef}}:
      (x1 = 1, x2 = 1, y = x[1,1])
      (x1 = 1, x2 = 2, y = x[1,2])
    - (x1 = 2, x2 = 2, y = x[2,2])
    source

    Containers.default_container

    Containers.nested

    Containers.default_container

    Containers.nested

    JuMP.Containers.nestedFunction
    nested(iterators...; condition = (args...) -> true)

    Create a NestedIterator.

    Example

    julia> iterator = Containers.nested(
                () -> 1:2,
                (i,) -> ["A", "B"];
                condition = (i, j) -> isodd(i) || j == "B",
    @@ -139,21 +139,21 @@
     3-element Vector{Tuple{Int64, String}}:
      (1, "A")
      (1, "B")
    - (2, "B")
    source

    Containers.vectorized_product

    Containers.vectorized_product

    Containers.build_error_fn

    JuMP.Containers.build_error_fnFunction
    build_error_fn(macro_name, args, source)

    Return a function that can be used in place of Base.error, but which additionally prints the macro from which it was called.

    source

    Containers.parse_macro_arguments

    Containers.build_error_fn

    JuMP.Containers.build_error_fnFunction
    build_error_fn(macro_name, args, source)

    Return a function that can be used in place of Base.error, but which additionally prints the macro from which it was called.

    source

    Containers.parse_macro_arguments

    JuMP.Containers.parse_macro_argumentsFunction
    parse_macro_arguments(
         error_fn::Function,
         args;
         valid_kwargs::Union{Nothing,Vector{Symbol}} = nothing,
         num_positional_args::Union{Nothing,Int,UnitRange{Int}} = nothing,
    -)

    Returns a Tuple{Vector{Any},Dict{Symbol,Any}} containing the ordered positional arguments and a dictionary mapping the keyword arguments.

    This specially handles the distinction of @foo(key = value) and @foo(; key = value) in macros.

    An error is thrown if multiple keyword arguments are passed with the same key.

    If valid_kwargs is a Vector{Symbol}, an error is thrown if a keyword is not in valid_kwargs.

    If num_positional_args is not nothing, an error is thrown if the number of positional arguments is not in num_positional_args.

    source

    Containers.parse_ref_sets

    JuMP.Containers.parse_ref_setsFunction
    parse_ref_sets(
    +)

    Returns a Tuple{Vector{Any},Dict{Symbol,Any}} containing the ordered positional arguments and a dictionary mapping the keyword arguments.

    This specially handles the distinction of @foo(key = value) and @foo(; key = value) in macros.

    An error is thrown if multiple keyword arguments are passed with the same key.

    If valid_kwargs is a Vector{Symbol}, an error is thrown if a keyword is not in valid_kwargs.

    If num_positional_args is not nothing, an error is thrown if the number of positional arguments is not in num_positional_args.

    source

    Containers.parse_ref_sets

    JuMP.Containers.parse_ref_setsFunction
    parse_ref_sets(
         error_fn::Function,
         expr;
         invalid_index_variables::Vector{Symbol} = Symbol[],
    -)

    Helper function for macros to construct container objects.

    Warning

    This function is for advanced users implementing JuMP extensions. See container_code for more details.

    Arguments

    • error_fn: a function that takes a String and throws an error, potentially annotating the input string with extra information such as from which macro it was thrown from. Use error if you do not want a modified error message.
    • expr: an Expr that specifies the container, for example, :(x[i = 1:3, [:red, :blue], k = S; i + k <= 6])

    Returns

    1. name: the name of the container, if given, otherwise nothing
    2. index_vars: a Vector{Any} of names for the index variables, for example, [:i, gensym(), :k]. These may also be expressions, like :((i, j)) from a call like :(x[(i, j) in S]).
    3. indices: an iterator over the indices, for example, Containers.NestedIterator

    Example

    See container_code for a worked example.

    source

    Containers.build_name_expr

    JuMP.Containers.build_name_exprFunction
    build_name_expr(
    +)

    Helper function for macros to construct container objects.

    Warning

    This function is for advanced users implementing JuMP extensions. See container_code for more details.

    Arguments

    • error_fn: a function that takes a String and throws an error, potentially annotating the input string with extra information such as from which macro it was thrown from. Use error if you do not want a modified error message.
    • expr: an Expr that specifies the container, for example, :(x[i = 1:3, [:red, :blue], k = S; i + k <= 6])

    Returns

    1. name: the name of the container, if given, otherwise nothing
    2. index_vars: a Vector{Any} of names for the index variables, for example, [:i, gensym(), :k]. These may also be expressions, like :((i, j)) from a call like :(x[(i, j) in S]).
    3. indices: an iterator over the indices, for example, Containers.NestedIterator

    Example

    See container_code for a worked example.

    source

    Containers.build_name_expr

    JuMP.Containers.build_name_exprFunction
    build_name_expr(
         name::Union{Symbol,Nothing},
         index_vars::Vector,
         kwargs::Dict{Symbol,Any},
    @@ -164,12 +164,12 @@
     ""
     
     julia> Containers.build_name_expr(:y, [:i, :j], Dict{Symbol,Any}(:base_name => "y"))
    -:(string("y", "[", string($(Expr(:escape, :i))), ",", string($(Expr(:escape, :j))), "]"))
    source

    Containers.add_additional_args

    Containers.add_additional_args

    JuMP.Containers.add_additional_argsFunction
    add_additional_args(
         call::Expr,
         args::Vector,
         kwargs::Dict{Symbol,Any};
         kwarg_exclude::Vector{Symbol} = Symbol[],
    -)

    Add the positional arguments args to the function call expression call, escaping each argument expression.

    This function is able to incorporate additional positional arguments to calls that already have keyword arguments.

    source

    Containers.container_code

    JuMP.Containers.container_codeFunction
    container_code(
    +)

    Add the positional arguments args to the function call expression call, escaping each argument expression.

    This function is able to incorporate additional positional arguments to calls that already have keyword arguments.

    source

    Containers.container_code

    JuMP.Containers.container_codeFunction
    container_code(
         index_vars::Vector{Any},
         indices::Expr,
         code,
    @@ -194,7 +194,7 @@
         Dimension 2, ["A", "B"]
     And data, a 2×2 Matrix{String}:
      "A"   "B"
    - "AA"  "BB"
    source

    Containers.AutoContainerType

    Containers.NestedIterator

    Containers.AutoContainerType

    Containers.NestedIterator

    JuMP.Containers.NestedIteratorType
    struct NestedIterator{T}
         iterators::T # Tuple of functions
         condition::Function
     end

    Iterators over the tuples that are produced by a nested for loop.

    Construct a NestedIterator using nested.

    Example

    julia> iterators = (() -> 1:2, (i,) -> ["A", "B"]);
    @@ -217,6 +217,6 @@
            end
     (1, "A")
     (1, "B")
    -(2, "B")
    source

    Containers.VectorizedProductIterator

    Containers.VectorizedProductIterator

    +end

    A wrapper type for Iterators.ProuctIterator that discards shape information and returns a Vector.

    Construct a VectorizedProductIterator using vectorized_product.

    source diff --git a/dev/api/JuMP/index.html b/dev/api/JuMP/index.html index 7a0f7cc86d6..c2c1ea97842 100644 --- a/dev/api/JuMP/index.html +++ b/dev/api/JuMP/index.html @@ -15,7 +15,7 @@ julia> @build_constraint(x .>= 0) 2-element Vector{ScalarConstraint{AffExpr, MathOptInterface.GreaterThan{Float64}}}: ScalarConstraint{AffExpr, MathOptInterface.GreaterThan{Float64}}(x[1], MathOptInterface.GreaterThan{Float64}(-0.0)) - ScalarConstraint{AffExpr, MathOptInterface.GreaterThan{Float64}}(x[2], MathOptInterface.GreaterThan{Float64}(-0.0))source

    @constraint

    JuMP.@constraintMacro
    @constraint(model, expr, args...; kwargs...)
    + ScalarConstraint{AffExpr, MathOptInterface.GreaterThan{Float64}}(x[2], MathOptInterface.GreaterThan{Float64}(-0.0))
    source

    @constraint

    JuMP.@constraintMacro
    @constraint(model, expr, args...; kwargs...)
     @constraint(model, [index_sets...], expr, args...; kwargs...)
     @constraint(model, name, expr, args...; kwargs...)
     @constraint(model, name[index_sets...], expr, args...; kwargs...)

    Add a constraint described by the expression expr.

    The name argument is optional. If index sets are passed, a container is built and the constraint may depend on the indices of the index sets.

    The expression expr may be one of following forms:

    • func in set, constraining the function func to belong to the set set, which is either a MOI.AbstractSet or one of the JuMP shortcuts like SecondOrderCone or PSDCone

    • a <op> b, where <op> is one of ==, , >=, , <=

    • l <= f <= u or u >= f >= l, constraining the expression f to lie between l and u

    • f(x) ⟂ x, which defines a complementarity constraint

    • z --> {expr}, which defines an indicator constraint that activates when z is 1

    • !z --> {expr}, which defines an indicator constraint that activates when z is 0

    • z <--> {expr}, which defines a reified constraint

    • expr := rhs, which defines a Boolean equality constraint

    Broadcasted comparison operators like .== are also supported for the case when the left- and right-hand sides of the comparison operator are arrays.

    JuMP extensions may additionally provide support for constraint expressions which are not listed here.

    Keyword arguments

    • base_name: sets the name prefix used to generate constraint names. It corresponds to the constraint name for scalar constraints, otherwise, the constraint names are set to base_name[...] for each index ....

    • container = :Auto: force the container type by passing container = Array,

    container = DenseAxisArray, container = SparseAxisArray, or any another container type which is supported by a JuMP extension.

    • set_string_name::Bool = true: control whether to set the MOI.ConstraintName attribute. Passing set_string_name = false can improve performance.

    Other keyword arguments may be supported by JuMP extensions.

    Example

    julia> model = Model();
    @@ -52,7 +52,7 @@
     z --> {x[1] ≥ 0}
     
     julia> @constraint(model, !z --> {2 * x[2] <= 3})
    -!z --> {2 x[2] ≤ 3}
    source

    @constraints

    JuMP.@constraintsMacro
    @constraints(model, args...)

    Adds groups of constraints at once, in the same fashion as the @constraint macro.

    The model must be the first argument, and multiple constraints can be added on multiple lines wrapped in a begin ... end block.

    The macro returns a tuple containing the constraints that were defined.

    Example

    julia> model = Model();
    +!z --> {2 x[2] ≤ 3}
    source

    @constraints

    JuMP.@constraintsMacro
    @constraints(model, args...)

    Adds groups of constraints at once, in the same fashion as the @constraint macro.

    The model must be the first argument, and multiple constraints can be added on multiple lines wrapped in a begin ... end block.

    The macro returns a tuple containing the constraints that were defined.

    Example

    julia> model = Model();
     
     julia> @variable(model, w);
     
    @@ -75,7 +75,7 @@
      sum_to_one[2] : y + z[2] = 1
      sum_to_one[3] : y + z[3] = 1
      x ≥ 1
    - -w + y ≤ 2
    source

    @expression

    @expression

    JuMP.@expressionMacro
    @expression(model::GenericModel, expression)
     @expression(model::GenericModel, [index_sets...], expression)
     @expression(model::GenericModel, name, expression)
     @expression(model::GenericModel, name[index_sets...], expression)

    Efficiently builds and returns an expression.

    The name argument is optional. If index sets are passed, a container is built and the expression may depend on the indices of the index sets.

    Keyword arguments

    • container = :Auto: force the container type by passing container = Array, container = DenseAxisArray, container = SparseAxisArray, or any another container type which is supported by a JuMP extension.

    Example

    julia> model = Model();
    @@ -102,7 +102,7 @@
     3-element Vector{AffExpr}:
      x[1] + x[2] + x[3]
      2 x[1] + 2 x[2] + 2 x[3]
    - 3 x[1] + 3 x[2] + 3 x[3]
    source

    @expressions

    JuMP.@expressionsMacro
    @expressions(model, args...)

    Adds multiple expressions to model at once, in the same fashion as the @expression macro.

    The model must be the first argument, and multiple expressions can be added on multiple lines wrapped in a begin ... end block.

    The macro returns a tuple containing the expressions that were defined.

    Example

    julia> model = Model();
    + 3 x[1] + 3 x[2] + 3 x[3]
    source

    @expressions

    JuMP.@expressionsMacro
    @expressions(model, args...)

    Adds multiple expressions to model at once, in the same fashion as the @expression macro.

    The model must be the first argument, and multiple expressions can be added on multiple lines wrapped in a begin ... end block.

    The macro returns a tuple containing the expressions that were defined.

    Example

    julia> model = Model();
     
     julia> @variable(model, x);
     
    @@ -116,7 +116,7 @@
                my_expr, x^2 + y^2
                my_expr_1[i = 1:2], a[i] - z[i]
            end)
    -(x² + y², AffExpr[-z[1] + 4, -z[2] + 5])
    source

    @force_nonlinear

    JuMP.@force_nonlinearMacro
    @force_nonlinear(expr)

    Change the parsing of expr to construct GenericNonlinearExpr instead of GenericAffExpr or GenericQuadExpr.

    This macro works by walking expr and substituting all calls to +, -, *, /, and ^ in favor of ones that construct GenericNonlinearExpr.

    This macro will error if the resulting expression does not produce a GenericNonlinearExpr because, for example, it is used on an expression that does not use the basic arithmetic operators.

    When to use this macro

    In most cases, you should not use this macro.

    Use this macro only if the intended output type is a GenericNonlinearExpr and the regular macro calls destroy problem structure, or in rare cases, if the regular macro calls introduce a large amount of intermediate variables, for example, because they promote types to a common quadratic expression.

    Example

    Use-case one: preserve problem structure.

    julia> model = Model();
    +(x² + y², AffExpr[-z[1] + 4, -z[2] + 5])
    source

    @force_nonlinear

    JuMP.@force_nonlinearMacro
    @force_nonlinear(expr)

    Change the parsing of expr to construct GenericNonlinearExpr instead of GenericAffExpr or GenericQuadExpr.

    This macro works by walking expr and substituting all calls to +, -, *, /, and ^ in favor of ones that construct GenericNonlinearExpr.

    This macro will error if the resulting expression does not produce a GenericNonlinearExpr because, for example, it is used on an expression that does not use the basic arithmetic operators.

    When to use this macro

    In most cases, you should not use this macro.

    Use this macro only if the intended output type is a GenericNonlinearExpr and the regular macro calls destroy problem structure, or in rare cases, if the regular macro calls introduce a large amount of intermediate variables, for example, because they promote types to a common quadratic expression.

    Example

    Use-case one: preserve problem structure.

    julia> model = Model();
     
     julia> @variable(model, x);
     
    @@ -144,7 +144,7 @@
     2640
     
     julia> @allocated @expression(model, @force_nonlinear(x * 2.0 * (1 + x) * x))
    -672
    source

    @objective

    JuMP.@objectiveMacro
    @objective(model::GenericModel, sense, func)

    Set the objective sense to sense and objective function to func.

    The objective sense can be either Min, Max, MOI.MIN_SENSE, MOI.MAX_SENSE or MOI.FEASIBILITY_SENSE. In order to set the sense programmatically, that is, when sense is a variable whose value is the sense, one of the three MOI.OptimizationSense values must be used.

    Example

    Minimize the value of the variable x, do:

    julia> model = Model();
    +672
    source

    @objective

    JuMP.@objectiveMacro
    @objective(model::GenericModel, sense, func)

    Set the objective sense to sense and objective function to func.

    The objective sense can be either Min, Max, MOI.MIN_SENSE, MOI.MAX_SENSE or MOI.FEASIBILITY_SENSE. In order to set the sense programmatically, that is, when sense is a variable whose value is the sense, one of the three MOI.OptimizationSense values must be used.

    Example

    Minimize the value of the variable x, do:

    julia> model = Model();
     
     julia> @variable(model, x)
     x
    @@ -165,7 +165,7 @@
     MIN_SENSE::OptimizationSense = 0
     
     julia> @objective(model, sense, x^2 - 2x + 1)
    -x² - 2 x + 1
    source

    @operator

    JuMP.@operatorMacro
    @operator(model, operator, dim, f[, ∇f[, ∇²f]])

    Add the nonlinear operator operator in model with dim arguments, and create a new NonlinearOperator object called operator in the current scope.

    The function f evaluates the operator and must return a scalar.

    The optional function ∇f evaluates the first derivative, and the optional function ∇²f evaluates the second derivative.

    ∇²f may be provided only if ∇f is also provided.

    Univariate syntax

    If dim == 1, then the method signatures of each function must be:

    • f(::T)::T where {T<:Real}
    • ∇f(::T)::T where {T<:Real}
    • ∇²f(::T)::T where {T<:Real}

    Multivariate syntax

    If dim > 1, then the method signatures of each function must be:

    • f(x::T...)::T where {T<:Real}
    • ∇f(g::AbstractVector{T}, x::T...)::Nothing where {T<:Real}
    • ∇²f(H::AbstractMatrix{T}, x::T...)::Nothing where {T<:Real}

    Where the gradient vector g and Hessian matrix H are filled in-place. For the Hessian, you must fill in the non-zero lower-triangular entries only. Setting an off-diagonal upper-triangular element may error.

    Example

    julia> model = Model();
    +x² - 2 x + 1
    source

    @operator

    JuMP.@operatorMacro
    @operator(model, operator, dim, f[, ∇f[, ∇²f]])

    Add the nonlinear operator operator in model with dim arguments, and create a new NonlinearOperator object called operator in the current scope.

    The function f evaluates the operator and must return a scalar.

    The optional function ∇f evaluates the first derivative, and the optional function ∇²f evaluates the second derivative.

    ∇²f may be provided only if ∇f is also provided.

    Univariate syntax

    If dim == 1, then the method signatures of each function must be:

    • f(::T)::T where {T<:Real}
    • ∇f(::T)::T where {T<:Real}
    • ∇²f(::T)::T where {T<:Real}

    Multivariate syntax

    If dim > 1, then the method signatures of each function must be:

    • f(x::T...)::T where {T<:Real}
    • ∇f(g::AbstractVector{T}, x::T...)::Nothing where {T<:Real}
    • ∇²f(H::AbstractMatrix{T}, x::T...)::Nothing where {T<:Real}

    Where the gradient vector g and Hessian matrix H are filled in-place. For the Hessian, you must fill in the non-zero lower-triangular entries only. Setting an off-diagonal upper-triangular element may error.

    Example

    julia> model = Model();
     
     julia> @variable(model, x)
     x
    @@ -204,7 +204,7 @@
     f (generic function with 1 method)
     
     julia> op_f = model[:op_f] = add_nonlinear_operator(model, 1, f; name = :op_f)
    -NonlinearOperator(f, :op_f)
    source

    @variable

    JuMP.@variableMacro
    @variable(model, expr, args..., kw_args...)

    Add a variable to the model model described by the expression expr, the positional arguments args and the keyword arguments kw_args.

    Anonymous and named variables

    expr must be one of the forms:

    • Omitted, like @variable(model), which creates an anonymous variable
    • A single symbol like @variable(model, x)
    • A container expression like @variable(model, x[i=1:3])
    • An anonymous container expression like @variable(model, [i=1:3])

    Bounds

    In addition, the expression can have bounds, such as:

    • @variable(model, x >= 0)
    • @variable(model, x <= 0)
    • @variable(model, x == 0)
    • @variable(model, 0 <= x <= 1)

    and bounds can depend on the indices of the container expressions:

    • @variable(model, -i <= x[i=1:3] <= i)

    Sets

    You can explicitly specify the set to which the variable belongs:

    • @variable(model, x in MOI.Interval(0.0, 1.0))

    For more information on this syntax, read Variables constrained on creation.

    Positional arguments

    The recognized positional arguments in args are the following:

    • Bin: restricts the variable to the MOI.ZeroOne set, that is, {0, 1}. For example, @variable(model, x, Bin). Note: you cannot use @variable(model, Bin), use the binary keyword instead.
    • Int: restricts the variable to the set of integers, that is, ..., -2, -1, 0, 1, 2, ... For example, @variable(model, x, Int). Note: you cannot use @variable(model, Int), use the integer keyword instead.
    • Symmetric: Only available when creating a square matrix of variables, that is when expr is of the form varname[1:n,1:n] or varname[i=1:n,j=1:n], it creates a symmetric matrix of variables.
    • PSD: A restrictive extension to Symmetric which constraints a square matrix of variables to Symmetric and constrains to be positive semidefinite.

    Keyword arguments

    Four keyword arguments are useful in all cases:

    • base_name: Sets the name prefix used to generate variable names. It corresponds to the variable name for scalar variable, otherwise, the variable names are set to base_name[...] for each index ... of the axes axes.
    • start::Float64: specify the value passed to set_start_value for each variable
    • container: specify the container type. See Forcing the container type for more information.
    • set_string_name::Bool = true: control whether to set the MOI.VariableName attribute. Passing set_string_name = false can improve performance.

    Other keyword arguments are needed to disambiguate sitations with anonymous variables:

    • lower_bound::Float64: an alternative to x >= lb, sets the value of the variable lower bound.
    • upper_bound::Float64: an alternative to x <= ub, sets the value of the variable upper bound.
    • binary::Bool: an alternative to passing Bin, sets whether the variable is binary or not.
    • integer::Bool: an alternative to passing Int, sets whether the variable is integer or not.
    • set::MOI.AbstractSet: an alternative to using x in set
    • variable_type: used by JuMP extensions. See Extend @variable for more information.

    Example

    The following are equivalent ways of creating a variable x of name x with lower bound 0:

    julia> model = Model();
    +NonlinearOperator(f, :op_f)
    source

    @variable

    JuMP.@variableMacro
    @variable(model, expr, args..., kw_args...)

    Add a variable to the model model described by the expression expr, the positional arguments args and the keyword arguments kw_args.

    Anonymous and named variables

    expr must be one of the forms:

    • Omitted, like @variable(model), which creates an anonymous variable
    • A single symbol like @variable(model, x)
    • A container expression like @variable(model, x[i=1:3])
    • An anonymous container expression like @variable(model, [i=1:3])

    Bounds

    In addition, the expression can have bounds, such as:

    • @variable(model, x >= 0)
    • @variable(model, x <= 0)
    • @variable(model, x == 0)
    • @variable(model, 0 <= x <= 1)

    and bounds can depend on the indices of the container expressions:

    • @variable(model, -i <= x[i=1:3] <= i)

    Sets

    You can explicitly specify the set to which the variable belongs:

    • @variable(model, x in MOI.Interval(0.0, 1.0))

    For more information on this syntax, read Variables constrained on creation.

    Positional arguments

    The recognized positional arguments in args are the following:

    • Bin: restricts the variable to the MOI.ZeroOne set, that is, {0, 1}. For example, @variable(model, x, Bin). Note: you cannot use @variable(model, Bin), use the binary keyword instead.
    • Int: restricts the variable to the set of integers, that is, ..., -2, -1, 0, 1, 2, ... For example, @variable(model, x, Int). Note: you cannot use @variable(model, Int), use the integer keyword instead.
    • Symmetric: Only available when creating a square matrix of variables, that is when expr is of the form varname[1:n,1:n] or varname[i=1:n,j=1:n], it creates a symmetric matrix of variables.
    • PSD: A restrictive extension to Symmetric which constraints a square matrix of variables to Symmetric and constrains to be positive semidefinite.

    Keyword arguments

    Four keyword arguments are useful in all cases:

    • base_name: Sets the name prefix used to generate variable names. It corresponds to the variable name for scalar variable, otherwise, the variable names are set to base_name[...] for each index ... of the axes axes.
    • start::Float64: specify the value passed to set_start_value for each variable
    • container: specify the container type. See Forcing the container type for more information.
    • set_string_name::Bool = true: control whether to set the MOI.VariableName attribute. Passing set_string_name = false can improve performance.

    Other keyword arguments are needed to disambiguate sitations with anonymous variables:

    • lower_bound::Float64: an alternative to x >= lb, sets the value of the variable lower bound.
    • upper_bound::Float64: an alternative to x <= ub, sets the value of the variable upper bound.
    • binary::Bool: an alternative to passing Bin, sets whether the variable is binary or not.
    • integer::Bool: an alternative to passing Int, sets whether the variable is integer or not.
    • set::MOI.AbstractSet: an alternative to using x in set
    • variable_type: used by JuMP extensions. See Extend @variable for more information.

    Example

    The following are equivalent ways of creating a variable x of name x with lower bound 0:

    julia> model = Model();
     
     julia> @variable(model, x >= 0)
     x
    julia> model = Model();
    @@ -233,14 +233,14 @@
     3-element Vector{VariableRef}:
      _[7]
      _[8]
    - _[9]
    source

    @variables

    JuMP.@variablesMacro
    @variables(model, args...)

    Adds multiple variables to model at once, in the same fashion as the @variable macro.

    The model must be the first argument, and multiple variables can be added on multiple lines wrapped in a begin ... end block.

    The macro returns a tuple containing the variables that were defined.

    Example

    julia> model = Model();
    + _[9]
    source

    @variables

    JuMP.@variablesMacro
    @variables(model, args...)

    Adds multiple variables to model at once, in the same fashion as the @variable macro.

    The model must be the first argument, and multiple variables can be added on multiple lines wrapped in a begin ... end block.

    The macro returns a tuple containing the variables that were defined.

    Example

    julia> model = Model();
     
     julia> @variables(model, begin
                x
                y[i = 1:2] >= 0, (start = i)
                z, Bin, (start = 0, base_name = "Z")
            end)
    -(x, VariableRef[y[1], y[2]], Z)
    Note

    Keyword arguments must be contained within parentheses (refer to the example above).

    source

    add_bridge

    JuMP.add_bridgeFunction
    add_bridge(
    +(x, VariableRef[y[1], y[2]], Z)
    Note

    Keyword arguments must be contained within parentheses (refer to the example above).

    source

    add_bridge

    JuMP.add_bridgeFunction
    add_bridge(
         model::GenericModel{T},
         BT::Type{<:MOI.Bridges.AbstractBridge};
         coefficient_type::Type{S} = T,
    @@ -252,11 +252,11 @@
                model,
                MOI.Bridges.Constraint.NumberConversionBridge;
                coefficient_type = Complex{Float64}
    -       )
    source

    add_constraint

    add_constraint

    JuMP.add_constraintFunction
    add_constraint(
         model::GenericModel,
         con::AbstractConstraint,
         name::String= "",
    -)

    This method should only be implemented by developers creating JuMP extensions. It should never be called by users of JuMP.

    source

    add_nonlinear_operator

    JuMP.add_nonlinear_operatorFunction
    add_nonlinear_operator(
    +)

    This method should only be implemented by developers creating JuMP extensions. It should never be called by users of JuMP.

    source

    add_nonlinear_operator

    add_to_expression!

    JuMP.add_to_expression!Function
    add_to_expression!(expression, terms...)

    Updates expression in-place to expression + (*)(terms...).

    This is typically much more efficient than expression += (*)(terms...) because it avoids the temorary allocation of the right-hand side term.

    For example, add_to_expression!(expression, a, b) produces the same result as expression += a*b, and add_to_expression!(expression, a) produces the same result as expression += a.

    When to implement

    Only a few methods are defined, mostly for internal use, and only for the cases when:

    1. they can be implemented efficiently
    2. expression is capable of storing the result. For example, add_to_expression!(::AffExpr, ::GenericVariableRef, ::GenericVariableRef) is not defined because a GenericAffExpr cannot store the product of two variables.

    Example

    julia> model = Model();
    +4.0
    source

    add_to_expression!

    JuMP.add_to_expression!Function
    add_to_expression!(expression, terms...)

    Updates expression in-place to expression + (*)(terms...).

    This is typically much more efficient than expression += (*)(terms...) because it avoids the temorary allocation of the right-hand side term.

    For example, add_to_expression!(expression, a, b) produces the same result as expression += a*b, and add_to_expression!(expression, a) produces the same result as expression += a.

    When to implement

    Only a few methods are defined, mostly for internal use, and only for the cases when:

    1. they can be implemented efficiently
    2. expression is capable of storing the result. For example, add_to_expression!(::AffExpr, ::GenericVariableRef, ::GenericVariableRef) is not defined because a GenericAffExpr cannot store the product of two variables.

    Example

    julia> model = Model();
     
     julia> @variable(model, x)
     x
    @@ -316,7 +316,7 @@
     3 x[1] + 3 x[2]
     
     julia> ex2
    -2 x[1] + 2 x[2]
    source

    add_to_function_constant

    JuMP.add_to_function_constantFunction
    add_to_function_constant(constraint::ConstraintRef, value)

    Add value to the function constant term of constraint.

    Note that for scalar constraints, JuMP will aggregate all constant terms onto the right-hand side of the constraint so instead of modifying the function, the set will be translated by -value. For example, given a constraint 2x <= 3, add_to_function_constant(c, 4) will modify it to 2x <= -1.

    Example

    For scalar constraints, the set is translated by -value:

    julia> model = Model();
    +2 x[1] + 2 x[2]
    source

    add_to_function_constant

    JuMP.add_to_function_constantFunction
    add_to_function_constant(constraint::ConstraintRef, value)

    Add value to the function constant term of constraint.

    Note that for scalar constraints, JuMP will aggregate all constant terms onto the right-hand side of the constraint so instead of modifying the function, the set will be translated by -value. For example, given a constraint 2x <= 3, add_to_function_constant(c, 4) will modify it to 2x <= -1.

    Example

    For scalar constraints, the set is translated by -value:

    julia> model = Model();
     
     julia> @variable(model, x);
     
    @@ -338,7 +338,7 @@
     julia> add_to_function_constant(con, [1, 2, 2])
     
     julia> con
    -con : [x + y + 1, x + 2, y + 2] ∈ MathOptInterface.SecondOrderCone(3)
    source

    add_variable

    JuMP.add_variableFunction
    add_variable(m::GenericModel, v::AbstractVariable, name::String = "")

    This method should only be implemented by developers creating JuMP extensions. It should never be called by users of JuMP.

    source

    all_constraints

    JuMP.all_constraintsFunction
    all_constraints(model::GenericModel, function_type, set_type)::Vector{<:ConstraintRef}

    Return a list of all constraints currently in the model where the function has type function_type and the set has type set_type. The constraints are ordered by creation time.

    See also list_of_constraint_types and num_constraints.

    Example

    julia> model = Model();
    +con : [x + y + 1, x + 2, y + 2] ∈ MathOptInterface.SecondOrderCone(3)
    source

    add_variable

    JuMP.add_variableFunction
    add_variable(m::GenericModel, v::AbstractVariable, name::String = "")

    This method should only be implemented by developers creating JuMP extensions. It should never be called by users of JuMP.

    source

    all_constraints

    JuMP.all_constraintsFunction
    all_constraints(model::GenericModel, function_type, set_type)::Vector{<:ConstraintRef}

    Return a list of all constraints currently in the model where the function has type function_type and the set has type set_type. The constraints are ordered by creation time.

    See also list_of_constraint_types and num_constraints.

    Example

    julia> model = Model();
     
     julia> @variable(model, x >= 0, Bin);
     
    @@ -354,7 +354,7 @@
     
     julia> all_constraints(model, AffExpr, MOI.LessThan{Float64})
     1-element Vector{ConstraintRef{Model, MathOptInterface.ConstraintIndex{MathOptInterface.ScalarAffineFunction{Float64}, MathOptInterface.LessThan{Float64}}, ScalarShape}}:
    - 2 x ≤ 1
    source
    all_constraints(
    + 2 x ≤ 1
    source
    all_constraints(
         model::GenericModel;
         include_variable_in_set_constraints::Bool,
     )::Vector{ConstraintRef}

    Return a list of all constraints in model.

    If include_variable_in_set_constraints == true, then VariableRef constraints such as VariableRef-in-Integer are included. To return only the structural constraints (for example, the rows in the constraint matrix of a linear program), pass include_variable_in_set_constraints = false.

    Example

    julia> model = Model();
    @@ -375,7 +375,7 @@
     julia> all_constraints(model; include_variable_in_set_constraints = false)
     2-element Vector{ConstraintRef}:
      2 x ≤ 1
    - x ^ 2.0 - 1.0 ≤ 0

    Performance considerations

    Note that this function is type-unstable because it returns an abstractly typed vector. If performance is a problem, consider using list_of_constraint_types and a function barrier. See the Performance tips for extensions section of the documentation for more details.

    source

    all_variables

    JuMP.all_variablesFunction
    all_variables(model::GenericModel{T})::Vector{GenericVariableRef{T}} where {T}

    Returns a list of all variables currently in the model. The variables are ordered by creation time.

    Example

    julia> model = Model();
    + x ^ 2.0 - 1.0 ≤ 0

    Performance considerations

    Note that this function is type-unstable because it returns an abstractly typed vector. If performance is a problem, consider using list_of_constraint_types and a function barrier. See the Performance tips for extensions section of the documentation for more details.

    source

    all_variables

    JuMP.all_variablesFunction
    all_variables(model::GenericModel{T})::Vector{GenericVariableRef{T}} where {T}

    Returns a list of all variables currently in the model. The variables are ordered by creation time.

    Example

    julia> model = Model();
     
     julia> @variable(model, x);
     
    @@ -384,12 +384,12 @@
     julia> all_variables(model)
     2-element Vector{VariableRef}:
      x
    - y
    source

    anonymous_name

    JuMP.anonymous_nameFunction
    anonymous_name(::MIME, x::AbstractVariableRef)

    The name to use for an anonymous variable x when printing.

    Example

    julia> model = Model();
    + y
    source

    anonymous_name

    JuMP.anonymous_nameFunction
    anonymous_name(::MIME, x::AbstractVariableRef)

    The name to use for an anonymous variable x when printing.

    Example

    julia> model = Model();
     
     julia> x = @variable(model);
     
     julia> anonymous_name(MIME("text/plain"), x)
    -"_[1]"
    source

    backend

    JuMP.backendFunction
    backend(model::GenericModel)

    Return the lower-level MathOptInterface model that sits underneath JuMP. This model depends on which operating mode JuMP is in (see mode).

    • If JuMP is in DIRECT mode (that is, the model was created using direct_model), the backend will be the optimizer passed to direct_model.
    • If JuMP is in MANUAL or AUTOMATIC mode, the backend is a MOI.Utilities.CachingOptimizer.

    Use index to get the index of a variable or constraint in the backend model.

    Warning

    This function should only be used by advanced users looking to access low-level MathOptInterface or solver-specific functionality.

    Notes

    If JuMP is not in DIRECT mode, the type returned by backend may change between any JuMP releases. Therefore, only use the public API exposed by MathOptInterface, and do not access internal fields. If you require access to the innermost optimizer, see unsafe_backend. Alternatively, use direct_model to create a JuMP model in DIRECT mode.

    See also: unsafe_backend.

    Example

    julia> import HiGHS
    +"_[1]"
    source

    backend

    JuMP.backendFunction
    backend(model::GenericModel)

    Return the lower-level MathOptInterface model that sits underneath JuMP. This model depends on which operating mode JuMP is in (see mode).

    • If JuMP is in DIRECT mode (that is, the model was created using direct_model), the backend will be the optimizer passed to direct_model.
    • If JuMP is in MANUAL or AUTOMATIC mode, the backend is a MOI.Utilities.CachingOptimizer.

    Use index to get the index of a variable or constraint in the backend model.

    Warning

    This function should only be used by advanced users looking to access low-level MathOptInterface or solver-specific functionality.

    Notes

    If JuMP is not in DIRECT mode, the type returned by backend may change between any JuMP releases. Therefore, only use the public API exposed by MathOptInterface, and do not access internal fields. If you require access to the innermost optimizer, see unsafe_backend. Alternatively, use direct_model to create a JuMP model in DIRECT mode.

    See also: unsafe_backend.

    Example

    julia> import HiGHS
     
     julia> model = direct_model(HiGHS.Optimizer());
     
    @@ -402,7 +402,7 @@
     A HiGHS model with 1 columns and 0 rows.
     
     julia> index(x)
    -MOI.VariableIndex(1)
    source

    barrier_iterations

    JuMP.barrier_iterationsFunction
    barrier_iterations(model::GenericModel)

    If available, returns the cumulative number of barrier iterations during the most-recent optimization (the MOI.BarrierIterations attribute).

    Throws a MOI.GetAttributeNotAllowed error if the attribute is not implemented by the solver.

    Example

    julia> import HiGHS
    +MOI.VariableIndex(1)
    source

    barrier_iterations

    JuMP.barrier_iterationsFunction
    barrier_iterations(model::GenericModel)

    If available, returns the cumulative number of barrier iterations during the most-recent optimization (the MOI.BarrierIterations attribute).

    Throws a MOI.GetAttributeNotAllowed error if the attribute is not implemented by the solver.

    Example

    julia> import HiGHS
     
     julia> model = Model(HiGHS.Optimizer);
     
    @@ -411,7 +411,7 @@
     julia> optimize!(model)
     
     julia> barrier_iterations(model)
    -0
    source

    bridge_constraints

    JuMP.bridge_constraintsFunction
    bridge_constraints(model::GenericModel)

    When in direct mode, return false.

    When in manual or automatic mode, return a Bool indicating whether the optimizer is set and unsupported constraints are automatically bridged to equivalent supported constraints when an appropriate transformation is available.

    Example

    julia> import Ipopt
    +0
    source

    bridge_constraints

    JuMP.bridge_constraintsFunction
    bridge_constraints(model::GenericModel)

    When in direct mode, return false.

    When in manual or automatic mode, return a Bool indicating whether the optimizer is set and unsupported constraints are automatically bridged to equivalent supported constraints when an appropriate transformation is available.

    Example

    julia> import Ipopt
     
     julia> model = Model(Ipopt.Optimizer);
     
    @@ -421,14 +421,14 @@
     julia> model = Model(Ipopt.Optimizer; add_bridges = false);
     
     julia> bridge_constraints(model)
    -false
    source

    build_constraint

    JuMP.build_constraintFunction
    build_constraint(error_fn::Function, func, set, args...; kwargs...)

    This method should only be implemented by developers creating JuMP extensions. It should never be called by users of JuMP.

    source

    build_variable

    build_constraint

    JuMP.build_constraintFunction
    build_constraint(error_fn::Function, func, set, args...; kwargs...)

    This method should only be implemented by developers creating JuMP extensions. It should never be called by users of JuMP.

    source

    build_variable

    JuMP.build_variableFunction
    build_variable(
         error_fn::Function,
         info::VariableInfo,
         args...;
         kwargs...,
     )

    Return a new AbstractVariable object.

    This method should only be implemented by developers creating JuMP extensions. It should never be called by users of JuMP.

    Arguments

    • error_fn: a function to call instead of error. error_fn annotates the error message with additional information for the user.
    • info: an instance of VariableInfo. This has a variety of fields relating to the variable such as info.lower_bound and info.binary.
    • args: optional additional positional arguments for extending the @variable macro.
    • kwargs: optional keyword arguments for extending the @variable macro.

    See also: @variable

    Warning

    Extensions should define a method with ONE positional argument to dispatch the call to a different method. Creating an extension that relies on multiple positional arguments leads to MethodErrors if the user passes the arguments in the wrong order.

    Example

    @variable(model, x, Foo)

    will call

    build_variable(error_fn::Function, info::VariableInfo, ::Type{Foo})

    Passing special-case positional arguments such as Bin, Int, and PSD is okay, along with keyword arguments:

    @variable(model, x, Int, Foo(), mykwarg = true)
     # or
    -@variable(model, x, Foo(), Int, mykwarg = true)

    will call

    build_variable(error_fn::Function, info::VariableInfo, ::Foo; mykwarg)

    and info.integer will be true.

    Note that the order of the positional arguments does not matter.

    source

    callback_node_status

    JuMP.callback_node_statusFunction
    callback_node_status(cb_data, model::GenericModel)

    Return an MOI.CallbackNodeStatusCode enum, indicating if the current primal solution available from callback_value is integer feasible.

    Example

    julia> import GLPK
    +@variable(model, x, Foo(), Int, mykwarg = true)

    will call

    build_variable(error_fn::Function, info::VariableInfo, ::Foo; mykwarg)

    and info.integer will be true.

    Note that the order of the positional arguments does not matter.

    source

    callback_node_status

    JuMP.callback_node_statusFunction
    callback_node_status(cb_data, model::GenericModel)

    Return an MOI.CallbackNodeStatusCode enum, indicating if the current primal solution available from callback_value is integer feasible.

    Example

    julia> import GLPK
     
     julia> model = Model(GLPK.Optimizer);
     
    @@ -449,7 +449,7 @@
     Status is: CALLBACK_NODE_STATUS_UNKNOWN
     Status is: CALLBACK_NODE_STATUS_UNKNOWN
     Status is: CALLBACK_NODE_STATUS_INTEGER
    -Status is: CALLBACK_NODE_STATUS_INTEGER
    source

    callback_value

    JuMP.callback_valueFunction
    callback_value(cb_data, x::GenericVariableRef)
    +Status is: CALLBACK_NODE_STATUS_INTEGER
    source

    callback_value

    JuMP.callback_valueFunction
    callback_value(cb_data, x::GenericVariableRef)
     callback_value(cb_data, x::Union{GenericAffExpr,GenericQuadExpr})

    Return the primal solution of x inside a callback.

    cb_data is the argument to the callback function, and the type is dependent on the solver.

    Use callback_node_status to check whether a solution is available.

    Example

    julia> import GLPK
     
     julia> model = Model(GLPK.Optimizer);
    @@ -471,7 +471,7 @@
     
     julia> optimize!(model)
     Solution is: 10.0
    -Solution is: 10.0
    source

    check_belongs_to_model

    check_belongs_to_model

    JuMP.check_belongs_to_modelFunction
    check_belongs_to_model(x::AbstractJuMPScalar, model::AbstractModel)
     check_belongs_to_model(x::AbstractConstraint, model::AbstractModel)

    Throw VariableNotOwned if the owner_model of x is not model.

    Example

    julia> model = Model();
     
     julia> @variable(model, x);
    @@ -483,7 +483,7 @@
     julia> check_belongs_to_model(x, model_2)
     ERROR: VariableNotOwned{VariableRef}(x): the variable x cannot be used in this model because
     it belongs to a different model.
    -[...]
    source

    coefficient

    JuMP.coefficientFunction
    coefficient(v1::GenericVariableRef{T}, v2::GenericVariableRef{T}) where {T}

    Return one(T) if v1 == v2 and zero(T) otherwise.

    This is a fallback for other coefficient methods to simplify code in which the expression may be a single variable.

    Example

    julia> model = Model();
    +[...]
    source

    coefficient

    JuMP.coefficientFunction
    coefficient(v1::GenericVariableRef{T}, v2::GenericVariableRef{T}) where {T}

    Return one(T) if v1 == v2 and zero(T) otherwise.

    This is a fallback for other coefficient methods to simplify code in which the expression may be a single variable.

    Example

    julia> model = Model();
     
     julia> @variable(model, x[1:2]);
     
    @@ -491,14 +491,14 @@
     1.0
     
     julia> coefficient(x[1], x[2])
    -0.0
    source
    coefficient(a::GenericAffExpr{C,V}, v::V) where {C,V}

    Return the coefficient associated with variable v in the affine expression a.

    Example

    julia> model = Model();
    +0.0
    source
    coefficient(a::GenericAffExpr{C,V}, v::V) where {C,V}

    Return the coefficient associated with variable v in the affine expression a.

    Example

    julia> model = Model();
     
     julia> @variable(model, x);
     
     julia> expr = 2.0 * x + 1.0;
     
     julia> coefficient(expr, x)
    -2.0
    source
    coefficient(a::GenericQuadExpr{C,V}, v1::V, v2::V) where {C,V}

    Return the coefficient associated with the term v1 * v2 in the quadratic expression a.

    Note that coefficient(a, v1, v2) is the same as coefficient(a, v2, v1).

    Example

    julia> model = Model();
    +2.0
    source
    coefficient(a::GenericQuadExpr{C,V}, v1::V, v2::V) where {C,V}

    Return the coefficient associated with the term v1 * v2 in the quadratic expression a.

    Note that coefficient(a, v1, v2) is the same as coefficient(a, v2, v1).

    Example

    julia> model = Model();
     
     julia> @variable(model, x[1:2]);
     
    @@ -511,14 +511,14 @@
     2.0
     
     julia> coefficient(expr, x[1], x[1])
    -0.0
    source
    coefficient(a::GenericQuadExpr{C,V}, v::V) where {C,V}

    Return the coefficient associated with variable v in the affine component of a.

    Example

    julia> model = Model();
    +0.0
    source
    coefficient(a::GenericQuadExpr{C,V}, v::V) where {C,V}

    Return the coefficient associated with variable v in the affine component of a.

    Example

    julia> model = Model();
     
     julia> @variable(model, x);
     
     julia> expr = 2.0 * x^2 + 3.0 * x;
     
     julia> coefficient(expr, x)
    -3.0
    source

    compute_conflict!

    JuMP.compute_conflict!Function
    compute_conflict!(model::GenericModel)

    Compute a conflict if the model is infeasible.

    The conflict is also called the Irreducible Infeasible Subsystem (IIS).

    If an optimizer has not been set yet (see set_optimizer), a NoOptimizer error is thrown.

    The status of the conflict can be checked with the MOI.ConflictStatus model attribute. Then, the status for each constraint can be queried with the MOI.ConstraintConflictStatus attribute.

    See also: copy_conflict

    Example

    julia> using JuMP
    +3.0
    source

    compute_conflict!

    JuMP.compute_conflict!Function
    compute_conflict!(model::GenericModel)

    Compute a conflict if the model is infeasible.

    The conflict is also called the Irreducible Infeasible Subsystem (IIS).

    If an optimizer has not been set yet (see set_optimizer), a NoOptimizer error is thrown.

    The status of the conflict can be checked with the MOI.ConflictStatus model attribute. Then, the status for each constraint can be queried with the MOI.ConstraintConflictStatus attribute.

    See also: copy_conflict

    Example

    julia> using JuMP
     
     julia> model = Model(Gurobi.Optimizer);
     
    @@ -535,21 +535,21 @@
     julia> compute_conflict!(model)
     
     julia> get_attribute(model, MOI.ConflictStatus())
    -CONFLICT_FOUND::ConflictStatusCode = 3
    source

    constant

    JuMP.constantFunction
    constant(aff::GenericAffExpr{C,V})::C

    Return the constant of the affine expression.

    Example

    julia> model = Model();
    +CONFLICT_FOUND::ConflictStatusCode = 3
    source

    constant

    JuMP.constantFunction
    constant(aff::GenericAffExpr{C,V})::C

    Return the constant of the affine expression.

    Example

    julia> model = Model();
     
     julia> @variable(model, x);
     
     julia> aff = 2.0 * x + 3.0;
     
     julia> constant(aff)
    -3.0
    source
    constant(quad::GenericQuadExpr{C,V})::C

    Return the constant of the quadratic expression.

    Example

    julia> model = Model();
    +3.0
    source
    constant(quad::GenericQuadExpr{C,V})::C

    Return the constant of the quadratic expression.

    Example

    julia> model = Model();
     
     julia> @variable(model, x);
     
     julia> quad = 2.0 * x^2 + 3.0;
     
     julia> constant(quad)
    -3.0
    source

    constraint_by_name

    JuMP.constraint_by_nameFunction
    constraint_by_name(model::AbstractModel, name::String, [F, S])::Union{ConstraintRef,Nothing}

    Return the reference of the constraint with name attribute name or Nothing if no constraint has this name attribute.

    Throws an error if several constraints have name as their name attribute.

    If F and S are provided, this method addititionally throws an error if the constraint is not an F-in-S contraint where F is either the JuMP or MOI type of the function and S is the MOI type of the set.

    Providing F and S is recommended if you know the type of the function and set since its returned type can be inferred while for the method above (that is, without F and S), the exact return type of the constraint index cannot be inferred.

    Example

    julia> model = Model();
    +3.0
    source

    constraint_by_name

    JuMP.constraint_by_nameFunction
    constraint_by_name(model::AbstractModel, name::String, [F, S])::Union{ConstraintRef,Nothing}

    Return the reference of the constraint with name attribute name or Nothing if no constraint has this name attribute.

    Throws an error if several constraints have name as their name attribute.

    If F and S are provided, this method addititionally throws an error if the constraint is not an F-in-S contraint where F is either the JuMP or MOI type of the function and S is the MOI type of the set.

    Providing F and S is recommended if you know the type of the function and set since its returned type can be inferred while for the method above (that is, without F and S), the exact return type of the constraint index cannot be inferred.

    Example

    julia> model = Model();
     
     julia> @variable(model, x)
     x
    @@ -565,7 +565,7 @@
     julia> constraint_by_name(model, "con", AffExpr, MOI.EqualTo{Float64})
     
     julia> constraint_by_name(model, "con", QuadExpr, MOI.EqualTo{Float64})
    -con : x² = 1
    source

    constraint_object

    JuMP.constraint_objectFunction
    constraint_object(con_ref::ConstraintRef)

    Return the underlying constraint data for the constraint referenced by con_ref.

    Example

    A scalar constraint:

    julia> model = Model();
    +con : x² = 1
    source

    constraint_object

    JuMP.constraint_objectFunction
    constraint_object(con_ref::ConstraintRef)

    Return the underlying constraint data for the constraint referenced by con_ref.

    Example

    A scalar constraint:

    julia> model = Model();
     
     julia> @variable(model, x);
     
    @@ -602,7 +602,7 @@
      x[3]
     
     julia> object.set
    -MathOptInterface.SecondOrderCone(3)
    source

    constraint_ref_with_index

    JuMP.constraint_ref_with_indexFunction
    constraint_ref_with_index(model::AbstractModel, index::MOI.ConstraintIndex)

    Return a ConstraintRef of model corresponding to index.

    This function is a helper function used internally by JuMP and some JuMP extensions. It should not need to be called in user-code.

    source

    constraint_string

    constraint_ref_with_index

    JuMP.constraint_ref_with_indexFunction
    constraint_ref_with_index(model::AbstractModel, index::MOI.ConstraintIndex)

    Return a ConstraintRef of model corresponding to index.

    This function is a helper function used internally by JuMP and some JuMP extensions. It should not need to be called in user-code.

    source

    constraint_string

    JuMP.constraint_stringFunction
    constraint_string(
         mode::MIME,
         ref::ConstraintRef;
         in_math_mode::Bool = false,
    @@ -613,7 +613,7 @@
     julia> @constraint(model, c, 2 * x <= 1);
     
     julia> constraint_string(MIME("text/plain"), c)
    -"c : 2 x ≤ 1"
    source

    constraints_string

    JuMP.constraints_stringFunction
    constraints_string(mode, model::AbstractModel)::Vector{String}

    Return a list of Strings describing each constraint of the model.

    Example

    julia> model = Model();
    +"c : 2 x ≤ 1"
    source

    constraints_string

    JuMP.constraints_stringFunction
    constraints_string(mode, model::AbstractModel)::Vector{String}

    Return a list of Strings describing each constraint of the model.

    Example

    julia> model = Model();
     
     julia> @variable(model, x >= 0);
     
    @@ -622,7 +622,7 @@
     julia> constraints_string(MIME("text/plain"), model)
     2-element Vector{String}:
      "c : 2 x ≤ 1"
    - "x ≥ 0"
    source

    copy_conflict

    JuMP.copy_conflictFunction
    copy_conflict(model::GenericModel)

    Return a copy of the current conflict for the model model and a GenericReferenceMap that can be used to obtain the variable and constraint reference of the new model corresponding to a given model's reference.

    This is a convenience function that provides a filtering function for copy_model.

    Note

    Model copy is not supported in DIRECT mode, that is, when a model is constructed using the direct_model constructor instead of the Model constructor. Moreover, independently on whether an optimizer was provided at model construction, the new model will have no optimizer, that is, an optimizer will have to be provided to the new model in the optimize! call.

    Example

    In the following example, a model model is constructed with a variable x and two constraints c1 and c2. This model has no solution, as the two constraints are mutually exclusive. The solver is asked to compute a conflict with compute_conflict!. The parts of model participating in the conflict are then copied into a model iis_model.

    julia> using JuMP
    + "x ≥ 0"
    source

    copy_conflict

    JuMP.copy_conflictFunction
    copy_conflict(model::GenericModel)

    Return a copy of the current conflict for the model model and a GenericReferenceMap that can be used to obtain the variable and constraint reference of the new model corresponding to a given model's reference.

    This is a convenience function that provides a filtering function for copy_model.

    Note

    Model copy is not supported in DIRECT mode, that is, when a model is constructed using the direct_model constructor instead of the Model constructor. Moreover, independently on whether an optimizer was provided at model construction, the new model will have no optimizer, that is, an optimizer will have to be provided to the new model in the optimize! call.

    Example

    In the following example, a model model is constructed with a variable x and two constraints c1 and c2. This model has no solution, as the two constraints are mutually exclusive. The solver is asked to compute a conflict with compute_conflict!. The parts of model participating in the conflict are then copied into a model iis_model.

    julia> using JuMP
     
     julia> import Gurobi
     
    @@ -650,7 +650,7 @@
     Feasibility
     Subject to
      c1 : x ≥ 2
    - c2 : x ≤ 1
    source

    copy_extension_data

    JuMP.copy_extension_dataFunction
    copy_extension_data(data, new_model::AbstractModel, model::AbstractModel)

    Return a copy of the extension data data of the model model to the extension data of the new model new_model.

    A method should be added for any JuMP extension storing data in the ext field.

    This method should only be implemented by developers creating JuMP extensions. It should never be called by users of JuMP.

    Warning

    Do not engage in type piracy by implementing this method for types of data that you did not define! JuMP extensions should store types that they define in model.ext, rather than regular Julia types.

    source

    copy_model

    JuMP.copy_modelFunction
    copy_model(model::GenericModel; filter_constraints::Union{Nothing, Function}=nothing)

    Return a copy of the model model and a GenericReferenceMap that can be used to obtain the variable and constraint reference of the new model corresponding to a given model's reference. A Base.copy(::AbstractModel) method has also been implemented, it is similar to copy_model but does not return the reference map.

    If the filter_constraints argument is given, only the constraints for which this function returns true will be copied. This function is given a constraint reference as argument.

    Note

    Model copy is not supported in DIRECT mode, that is, when a model is constructed using the direct_model constructor instead of the Model constructor. Moreover, independently on whether an optimizer was provided at model construction, the new model will have no optimizer, that is, an optimizer will have to be provided to the new model in the optimize! call.

    Example

    In the following example, a model model is constructed with a variable x and a constraint cref. It is then copied into a model new_model with the new references assigned to x_new and cref_new.

    julia> model = Model();
    + c2 : x ≤ 1
    source

    copy_extension_data

    JuMP.copy_extension_dataFunction
    copy_extension_data(data, new_model::AbstractModel, model::AbstractModel)

    Return a copy of the extension data data of the model model to the extension data of the new model new_model.

    A method should be added for any JuMP extension storing data in the ext field.

    This method should only be implemented by developers creating JuMP extensions. It should never be called by users of JuMP.

    Warning

    Do not engage in type piracy by implementing this method for types of data that you did not define! JuMP extensions should store types that they define in model.ext, rather than regular Julia types.

    source

    copy_model

    JuMP.copy_modelFunction
    copy_model(model::GenericModel; filter_constraints::Union{Nothing, Function}=nothing)

    Return a copy of the model model and a GenericReferenceMap that can be used to obtain the variable and constraint reference of the new model corresponding to a given model's reference. A Base.copy(::AbstractModel) method has also been implemented, it is similar to copy_model but does not return the reference map.

    If the filter_constraints argument is given, only the constraints for which this function returns true will be copied. This function is given a constraint reference as argument.

    Note

    Model copy is not supported in DIRECT mode, that is, when a model is constructed using the direct_model constructor instead of the Model constructor. Moreover, independently on whether an optimizer was provided at model construction, the new model will have no optimizer, that is, an optimizer will have to be provided to the new model in the optimize! call.

    Example

    In the following example, a model model is constructed with a variable x and a constraint cref. It is then copied into a model new_model with the new references assigned to x_new and cref_new.

    julia> model = Model();
     
     julia> @variable(model, x)
     x
    @@ -664,7 +664,7 @@
     x
     
     julia> cref_new = reference_map[cref]
    -cref : x = 2
    source

    delete

    JuMP.deleteFunction
    delete(model::GenericModel, con_ref::ConstraintRef)

    Delete the constraint associated with constraint_ref from the model model.

    Note that delete does not unregister the name from the model, so adding a new constraint of the same name will throw an error. Use unregister to unregister the name after deletion.

    Example

    julia> model = Model();
    +cref : x = 2
    source

    delete

    JuMP.deleteFunction
    delete(model::GenericModel, con_ref::ConstraintRef)

    Delete the constraint associated with constraint_ref from the model model.

    Note that delete does not unregister the name from the model, so adding a new constraint of the same name will throw an error. Use unregister to unregister the name after deletion.

    Example

    julia> model = Model();
     
     julia> @variable(model, x);
     
    @@ -682,7 +682,7 @@
     julia> model[:c]
     ERROR: KeyError: key :c not found
     Stacktrace:
    -[...]
    source
    delete(model::GenericModel, con_refs::Vector{<:ConstraintRef})

    Delete the constraints associated with con_refs from the model model.

    Solvers may implement specialized methods for deleting multiple constraints of the same concrete type. These methods may be more efficient than repeatedly calling the single constraint delete method.

    See also: unregister

    Example

    julia> model = Model();
    +[...]
    source
    delete(model::GenericModel, con_refs::Vector{<:ConstraintRef})

    Delete the constraints associated with con_refs from the model model.

    Solvers may implement specialized methods for deleting multiple constraints of the same concrete type. These methods may be more efficient than repeatedly calling the single constraint delete method.

    See also: unregister

    Example

    julia> model = Model();
     
     julia> @variable(model, x[1:3]);
     
    @@ -703,7 +703,7 @@
     julia> model[:c]
     ERROR: KeyError: key :c not found
     Stacktrace:
    -[...]
    source
    delete(model::GenericModel, variable_ref::GenericVariableRef)

    Delete the variable associated with variable_ref from the model model.

    Note that delete does not unregister the name from the model, so adding a new variable of the same name will throw an error. Use unregister to unregister the name after deletion.

    Example

    julia> model = Model();
    +[...]
    source
    delete(model::GenericModel, variable_ref::GenericVariableRef)

    Delete the variable associated with variable_ref from the model model.

    Note that delete does not unregister the name from the model, so adding a new variable of the same name will throw an error. Use unregister to unregister the name after deletion.

    Example

    julia> model = Model();
     
     julia> @variable(model, x)
     x
    @@ -719,7 +719,7 @@
     julia> model[:x]
     ERROR: KeyError: key :x not found
     Stacktrace:
    -[...]
    source
    delete(model::GenericModel, variable_refs::Vector{<:GenericVariableRef})

    Delete the variables associated with variable_refs from the model model. Solvers may implement methods for deleting multiple variables that are more efficient than repeatedly calling the single variable delete method.

    See also: unregister

    Example

    julia> model = Model();
    +[...]
    source
    delete(model::GenericModel, variable_refs::Vector{<:GenericVariableRef})

    Delete the variables associated with variable_refs from the model model. Solvers may implement methods for deleting multiple variables that are more efficient than repeatedly calling the single variable delete method.

    See also: unregister

    Example

    julia> model = Model();
     
     julia> @variable(model, x[1:2]);
     
    @@ -734,7 +734,7 @@
     julia> model[:x]
     ERROR: KeyError: key :x not found
     Stacktrace:
    -[...]
    source

    delete_lower_bound

    delete_lower_bound

    delete_upper_bound

    delete_upper_bound

    direct_generic_model

    direct_generic_model

    JuMP.direct_generic_modelFunction
    direct_generic_model(
         value_type::Type{T},
         backend::MOI.ModelLike;
    -) where {T<:Real}

    Return a new JuMP model using backend to store the model and solve it.

    As opposed to the Model constructor, no cache of the model is stored outside of backend and no bridges are automatically applied to backend.

    Notes

    The absence of a cache reduces the memory footprint but, it is important to bear in mind the following implications of creating models using this direct mode:

    • When backend does not support an operation, such as modifying constraints or adding variables/constraints after solving, an error is thrown. For models created using the Model constructor, such situations can be dealt with by storing the modifications in a cache and loading them into the optimizer when optimize! is called.
    • No constraint bridging is supported by default.
    • The optimizer used cannot be changed the model is constructed.
    • The model created cannot be copied.
    source
    direct_generic_model(::Type{T}, factory::MOI.OptimizerWithAttributes)

    Create a direct_generic_model using factory, a MOI.OptimizerWithAttributes object created by optimizer_with_attributes.

    Example

    julia> import HiGHS
    +) where {T<:Real}

    Return a new JuMP model using backend to store the model and solve it.

    As opposed to the Model constructor, no cache of the model is stored outside of backend and no bridges are automatically applied to backend.

    Notes

    The absence of a cache reduces the memory footprint but, it is important to bear in mind the following implications of creating models using this direct mode:

    • When backend does not support an operation, such as modifying constraints or adding variables/constraints after solving, an error is thrown. For models created using the Model constructor, such situations can be dealt with by storing the modifications in a cache and loading them into the optimizer when optimize! is called.
    • No constraint bridging is supported by default.
    • The optimizer used cannot be changed the model is constructed.
    • The model created cannot be copied.
    source
    direct_generic_model(::Type{T}, factory::MOI.OptimizerWithAttributes)

    Create a direct_generic_model using factory, a MOI.OptimizerWithAttributes object created by optimizer_with_attributes.

    Example

    julia> import HiGHS
     
     julia> optimizer = optimizer_with_attributes(
                HiGHS.Optimizer,
    @@ -785,7 +785,7 @@
     
     julia> set_attribute(model, "presolve", "off")
     
    -julia> set_attribute(model, MOI.Silent(), true)
    source

    direct_model

    JuMP.direct_modelFunction
    direct_model(backend::MOI.ModelLike)

    Return a new JuMP model using backend to store the model and solve it.

    As opposed to the Model constructor, no cache of the model is stored outside of backend and no bridges are automatically applied to backend.

    Notes

    The absence of a cache reduces the memory footprint but, it is important to bear in mind the following implications of creating models using this direct mode:

    • When backend does not support an operation, such as modifying constraints or adding variables/constraints after solving, an error is thrown. For models created using the Model constructor, such situations can be dealt with by storing the modifications in a cache and loading them into the optimizer when optimize! is called.
    • No constraint bridging is supported by default.
    • The optimizer used cannot be changed the model is constructed.
    • The model created cannot be copied.
    source
    direct_model(factory::MOI.OptimizerWithAttributes)

    Create a direct_model using factory, a MOI.OptimizerWithAttributes object created by optimizer_with_attributes.

    Example

    julia> import HiGHS
    +julia> set_attribute(model, MOI.Silent(), true)
    source

    direct_model

    JuMP.direct_modelFunction
    direct_model(backend::MOI.ModelLike)

    Return a new JuMP model using backend to store the model and solve it.

    As opposed to the Model constructor, no cache of the model is stored outside of backend and no bridges are automatically applied to backend.

    Notes

    The absence of a cache reduces the memory footprint but, it is important to bear in mind the following implications of creating models using this direct mode:

    • When backend does not support an operation, such as modifying constraints or adding variables/constraints after solving, an error is thrown. For models created using the Model constructor, such situations can be dealt with by storing the modifications in a cache and loading them into the optimizer when optimize! is called.
    • No constraint bridging is supported by default.
    • The optimizer used cannot be changed the model is constructed.
    • The model created cannot be copied.
    source
    direct_model(factory::MOI.OptimizerWithAttributes)

    Create a direct_model using factory, a MOI.OptimizerWithAttributes object created by optimizer_with_attributes.

    Example

    julia> import HiGHS
     
     julia> optimizer = optimizer_with_attributes(
                HiGHS.Optimizer,
    @@ -813,7 +813,7 @@
     
     julia> set_attribute(model, "presolve", "off")
     
    -julia> set_attribute(model, MOI.Silent(), true)
    source

    drop_zeros!

    JuMP.drop_zeros!Function
    drop_zeros!(expr::GenericAffExpr)

    Remove terms in the affine expression with 0 coefficients.

    Example

    julia> model = Model();
    +julia> set_attribute(model, MOI.Silent(), true)
    source

    drop_zeros!

    JuMP.drop_zeros!Function
    drop_zeros!(expr::GenericAffExpr)

    Remove terms in the affine expression with 0 coefficients.

    Example

    julia> model = Model();
     
     julia> @variable(model, x[1:2]);
     
    @@ -825,7 +825,7 @@
     julia> drop_zeros!(expr)
     
     julia> expr
    -x[2]
    source
    drop_zeros!(expr::GenericQuadExpr)

    Remove terms in the quadratic expression with 0 coefficients.

    Example

    julia> model = Model();
    +x[2]
    source
    drop_zeros!(expr::GenericQuadExpr)

    Remove terms in the quadratic expression with 0 coefficients.

    Example

    julia> model = Model();
     
     julia> @variable(model, x[1:2]);
     
    @@ -837,7 +837,7 @@
     julia> drop_zeros!(expr)
     
     julia> expr
    -x[2]²
    source

    dual

    JuMP.dualFunction
    dual(con_ref::ConstraintRef; result::Int = 1)

    Return the dual value of constraint con_ref associated with result index result of the most-recent solution returned by the solver.

    Use has_duals to check if a result exists before asking for values.

    See also: result_count, shadow_price.

    Example

    julia> import HiGHS
    +x[2]²
    source

    dual

    JuMP.dualFunction
    dual(con_ref::ConstraintRef; result::Int = 1)

    Return the dual value of constraint con_ref associated with result index result of the most-recent solution returned by the solver.

    Use has_duals to check if a result exists before asking for values.

    See also: result_count, shadow_price.

    Example

    julia> import HiGHS
     
     julia> model = Model(HiGHS.Optimizer);
     
    @@ -856,7 +856,7 @@
     true
     
     julia> dual(c)
    --2.0
    source

    dual_objective_value

    JuMP.dual_objective_valueFunction
    dual_objective_value(model::GenericModel; result::Int = 1)

    Return the value of the objective of the dual problem associated with result index result of the most-recent solution returned by the solver.

    Throws MOI.UnsupportedAttribute{MOI.DualObjectiveValue} if the solver does not support this attribute.

    This function is equivalent to querying the MOI.DualObjectiveValue attribute.

    See also: result_count.

    Example

    julia> import HiGHS
    +-2.0
    source

    dual_objective_value

    JuMP.dual_objective_valueFunction
    dual_objective_value(model::GenericModel; result::Int = 1)

    Return the value of the objective of the dual problem associated with result index result of the most-recent solution returned by the solver.

    Throws MOI.UnsupportedAttribute{MOI.DualObjectiveValue} if the solver does not support this attribute.

    This function is equivalent to querying the MOI.DualObjectiveValue attribute.

    See also: result_count.

    Example

    julia> import HiGHS
     
     julia> model = Model(HiGHS.Optimizer);
     
    @@ -874,7 +874,7 @@
     julia> dual_objective_value(model; result = 2)
     ERROR: Result index of attribute MathOptInterface.DualObjectiveValue(2) out of bounds. There are currently 1 solution(s) in the model.
     Stacktrace:
    -[...]
    source

    dual_shape

    JuMP.dual_shapeFunction
    dual_shape(shape::AbstractShape)::AbstractShape

    Returns the shape of the dual space of the space of objects of shape shape. By default, the dual_shape of a shape is itself. See the examples section below for an example for which this is not the case.

    Example

    Consider polynomial constraints for which the dual is moment constraints and moment constraints for which the dual is polynomial constraints. Shapes for polynomials can be defined as follows:

    struct Polynomial
    +[...]
    source

    dual_shape

    JuMP.dual_shapeFunction
    dual_shape(shape::AbstractShape)::AbstractShape

    Returns the shape of the dual space of the space of objects of shape shape. By default, the dual_shape of a shape is itself. See the examples section below for an example for which this is not the case.

    Example

    Consider polynomial constraints for which the dual is moment constraints and moment constraints for which the dual is polynomial constraints. Shapes for polynomials can be defined as follows:

    struct Polynomial
         coefficients::Vector{Float64}
         monomials::Vector{Monomial}
     end
    @@ -889,7 +889,7 @@
         monomials::Vector{Monomial}
     end
     JuMP.reshape_vector(x::Vector, shape::MomentsShape) = Moments(x, shape.monomials)

    Then dual_shape allows the definition of the shape of the dual of polynomial and moment constraints:

    dual_shape(shape::PolynomialShape) = MomentsShape(shape.monomials)
    -dual_shape(shape::MomentsShape) = PolynomialShape(shape.monomials)
    source

    dual_start_value

    JuMP.dual_start_valueFunction
    dual_start_value(con_ref::ConstraintRef)

    Return the dual start value (MOI attribute ConstraintDualStart) of the constraint con_ref.

    If no dual start value has been set, dual_start_value will return nothing.

    See also set_dual_start_value.

    Example

    julia> model = Model();
    +dual_shape(shape::MomentsShape) = PolynomialShape(shape.monomials)
    source

    dual_start_value

    JuMP.dual_start_valueFunction
    dual_start_value(con_ref::ConstraintRef)

    Return the dual start value (MOI attribute ConstraintDualStart) of the constraint con_ref.

    If no dual start value has been set, dual_start_value will return nothing.

    See also set_dual_start_value.

    Example

    julia> model = Model();
     
     julia> @variable(model, x, start = 2.0);
     
    @@ -904,19 +904,19 @@
     
     julia> set_dual_start_value(c, nothing)
     
    -julia> dual_start_value(c)
    source

    dual_status

    JuMP.dual_statusFunction
    dual_status(model::GenericModel; result::Int = 1)

    Return a MOI.ResultStatusCode describing the status of the most recent dual solution of the solver (that is, the MOI.DualStatus attribute) associated with the result index result.

    See also: result_count.

    Example

    julia> import Ipopt
    +julia> dual_start_value(c)
    source

    dual_status

    JuMP.dual_statusFunction
    dual_status(model::GenericModel; result::Int = 1)

    Return a MOI.ResultStatusCode describing the status of the most recent dual solution of the solver (that is, the MOI.DualStatus attribute) associated with the result index result.

    See also: result_count.

    Example

    julia> import Ipopt
     
     julia> model = Model(Ipopt.Optimizer);
     
     julia> dual_status(model; result = 2)
    -NO_SOLUTION::ResultStatusCode = 0
    source

    error_if_direct_mode

    JuMP.error_if_direct_modeFunction
    error_if_direct_mode(model::GenericModel, func::Symbol)

    Errors if model is in direct mode during a call from the function named func.

    Used internally within JuMP, or by JuMP extensions who do not want to support models in direct mode.

    Example

    julia> import HiGHS
    +NO_SOLUTION::ResultStatusCode = 0
    source

    error_if_direct_mode

    JuMP.error_if_direct_modeFunction
    error_if_direct_mode(model::GenericModel, func::Symbol)

    Errors if model is in direct mode during a call from the function named func.

    Used internally within JuMP, or by JuMP extensions who do not want to support models in direct mode.

    Example

    julia> import HiGHS
     
     julia> model = direct_model(HiGHS.Optimizer());
     
     julia> error_if_direct_mode(model, :foo)
     ERROR: The `foo` function is not supported in DIRECT mode.
     Stacktrace:
    -[...]
    source

    fix

    JuMP.fixFunction
    fix(v::GenericVariableRef, value::Number; force::Bool = false)

    Fix a variable to a value. Update the fixing constraint if one exists, otherwise create a new one.

    If the variable already has variable bounds and force=false, calling fix will throw an error. If force=true, existing variable bounds will be deleted, and the fixing constraint will be added. Note a variable will have no bounds after a call to unfix.

    See also FixRef, is_fixed, fix_value, unfix.

    Example

    julia> model = Model();
    +[...]
    source

    fix

    JuMP.fixFunction
    fix(v::GenericVariableRef, value::Number; force::Bool = false)

    Fix a variable to a value. Update the fixing constraint if one exists, otherwise create a new one.

    If the variable already has variable bounds and force=false, calling fix will throw an error. If force=true, existing variable bounds will be deleted, and the fixing constraint will be added. Note a variable will have no bounds after a call to unfix.

    See also FixRef, is_fixed, fix_value, unfix.

    Example

    julia> model = Model();
     
     julia> @variable(model, x);
     
    @@ -936,7 +936,7 @@
     julia> fix(x, 1.0; force = true)
     
     julia> is_fixed(x)
    -true
    source

    fix_discrete_variables

    JuMP.fix_discrete_variablesFunction
    fix_discrete_variables([var_value::Function = value,] model::GenericModel)

    Modifies model to convert all binary and integer variables to continuous variables with fixed bounds of var_value(x).

    Return

    Returns a function that can be called without any arguments to restore the original model. The behavior of this function is undefined if additional changes are made to the affected variables in the meantime.

    Notes

    • An error is thrown if semi-continuous or semi-integer constraints are present (support may be added for these in the future).
    • All other constraints are ignored (left in place). This includes discrete constraints like SOS and indicator constraints.

    Example

    julia> model = Model();
    +true
    source

    fix_discrete_variables

    JuMP.fix_discrete_variablesFunction
    fix_discrete_variables([var_value::Function = value,] model::GenericModel)

    Modifies model to convert all binary and integer variables to continuous variables with fixed bounds of var_value(x).

    Return

    Returns a function that can be called without any arguments to restore the original model. The behavior of this function is undefined if additional changes are made to the affected variables in the meantime.

    Notes

    • An error is thrown if semi-continuous or semi-integer constraints are present (support may be added for these in the future).
    • All other constraints are ignored (left in place). This includes discrete constraints like SOS and indicator constraints.

    Example

    julia> model = Model();
     
     julia> @variable(model, x, Bin, start = 1);
     
    @@ -960,12 +960,12 @@
      y ≥ 1
      y ≤ 10
      y integer
    - x binary
    source

    fix_value

    JuMP.fix_valueFunction
    fix_value(v::GenericVariableRef)

    Return the value to which a variable is fixed.

    Error if one does not exist.

    See also FixRef, is_fixed, fix, unfix.

    Example

    julia> model = Model();
    + x binary
    source

    fix_value

    JuMP.fix_valueFunction
    fix_value(v::GenericVariableRef)

    Return the value to which a variable is fixed.

    Error if one does not exist.

    See also FixRef, is_fixed, fix, unfix.

    Example

    julia> model = Model();
     
     julia> @variable(model, x == 1);
     
     julia> fix_value(x)
    -1.0
    source

    flatten!

    JuMP.flatten!Function
    flatten!(expr::GenericNonlinearExpr)

    Flatten a nonlinear expression in-place by lifting nested + and * nodes into a single n-ary operation.

    Motivation

    Nonlinear expressions created using operator overloading can be deeply nested and unbalanced. For example, prod(x for i in 1:4) creates *(x, *(x, *(x, x))) instead of the more preferable *(x, x, x, x).

    Example

    julia> model = Model();
    +1.0
    source

    flatten!

    JuMP.flatten!Function
    flatten!(expr::GenericNonlinearExpr)

    Flatten a nonlinear expression in-place by lifting nested + and * nodes into a single n-ary operation.

    Motivation

    Nonlinear expressions created using operator overloading can be deeply nested and unbalanced. For example, prod(x for i in 1:4) creates *(x, *(x, *(x, x))) instead of the more preferable *(x, x, x, x).

    Example

    julia> model = Model();
     
     julia> @variable(model, x)
     x
    @@ -977,7 +977,7 @@
     (x²) * x * x
     
     julia> flatten!(sin(prod(x for i in 1:4)))
    -sin((x²) * x * x)
    source

    function_string

    function_string

    JuMP.function_stringFunction
    function_string(
         mode::MIME,
         func::Union{JuMP.AbstractJuMPScalar,Vector{<:JuMP.AbstractJuMPScalar}},
     )

    Return a String representing the function func using print mode mode.

    Example

    julia> model = Model();
    @@ -985,7 +985,7 @@
     julia> @variable(model, x);
     
     julia> function_string(MIME("text/plain"), 2 * x + 1)
    -"2 x + 1"
    source

    get_attribute

    get_attribute

    JuMP.get_attributeFunction
    get_attribute(model::GenericModel, attr::MOI.AbstractModelAttribute)
     get_attribute(x::GenericVariableRef, attr::MOI.AbstractVariableAttribute)
     get_attribute(cr::ConstraintRef, attr::MOI.AbstractConstraintAttribute)

    Get the value of a solver-specifc attribute attr.

    This is equivalent to calling MOI.get with the associated MOI model and, for variables and constraints, with the associated MOI.VariableIndex or MOI.ConstraintIndex.

    Example

    julia> model = Model();
     
    @@ -1002,7 +1002,7 @@
     "x"
     
     julia> get_attribute(c, MOI.ConstraintName())
    -"c"
    source
    get_attribute(
    +"c"
    source
    get_attribute(
         model::Union{GenericModel,MOI.OptimizerWithAttributes},
         attr::Union{AbstractString,MOI.AbstractOptimizerAttribute},
     )

    Get the value of a solver-specifc attribute attr.

    This is equivalent to calling MOI.get with the associated MOI model.

    If attr is an AbstractString, it is converted to MOI.RawOptimizerAttribute.

    Example

    julia> import HiGHS
    @@ -1021,7 +1021,7 @@
     true
     
     julia> get_attribute(opt, MOI.RawOptimizerAttribute("output_flag"))
    -true
    source

    has_duals

    JuMP.has_dualsFunction
    has_duals(model::GenericModel; result::Int = 1)

    Return true if the solver has a dual solution in result index result available to query, otherwise return false.

    See also dual, shadow_price, and result_count.

    Example

    julia> import HiGHS
    +true
    source

    has_duals

    JuMP.has_dualsFunction
    has_duals(model::GenericModel; result::Int = 1)

    Return true if the solver has a dual solution in result index result available to query, otherwise return false.

    See also dual, shadow_price, and result_count.

    Example

    julia> import HiGHS
     
     julia> model = Model(HiGHS.Optimizer);
     
    @@ -1040,12 +1040,12 @@
     julia> optimize!(model)
     
     julia> has_duals(model)
    -true
    source

    has_lower_bound

    has_lower_bound

    has_start_value

    has_start_value

    JuMP.has_start_valueFunction
    has_start_value(variable::AbstractVariableRef)

    Return true if the variable has a start value set, otherwise return false.

    See also: start_value, set_start_value.

    Example

    julia> model = Model();
     
     julia> @variable(model, x, start = 1.5);
     
    @@ -1066,12 +1066,12 @@
     true
     
     julia> start_value(y)
    -2.0
    source

    has_upper_bound

    has_upper_bound

    has_values

    JuMP.has_valuesFunction
    has_values(model::GenericModel; result::Int = 1)

    Return true if the solver has a primal solution in result index result available to query, otherwise return false.

    See also value and result_count.

    Example

    julia> import HiGHS
    +true
    source

    has_values

    JuMP.has_valuesFunction
    has_values(model::GenericModel; result::Int = 1)

    Return true if the solver has a primal solution in result index result available to query, otherwise return false.

    See also value and result_count.

    Example

    julia> import HiGHS
     
     julia> model = Model(HiGHS.Optimizer);
     
    @@ -1090,25 +1090,25 @@
     julia> optimize!(model)
     
     julia> has_values(model)
    -true
    source

    in_set_string

    JuMP.in_set_stringFunction
    in_set_string(mode::MIME, set)

    Return a String representing the membership to the set set using print mode mode.

    Extensions

    JuMP extensions may extend this method for new set types to improve the legibility of their printing.

    Example

    julia> in_set_string(MIME("text/plain"), MOI.Interval(1.0, 2.0))
    -"∈ [1, 2]"
    source

    index

    JuMP.indexFunction
    index(cr::ConstraintRef)::MOI.ConstraintIndex

    Return the index of the constraint that corresponds to cr in the MOI backend.

    Example

    julia> model = Model();
    +true
    source

    in_set_string

    JuMP.in_set_stringFunction
    in_set_string(mode::MIME, set)

    Return a String representing the membership to the set set using print mode mode.

    Extensions

    JuMP extensions may extend this method for new set types to improve the legibility of their printing.

    Example

    julia> in_set_string(MIME("text/plain"), MOI.Interval(1.0, 2.0))
    +"∈ [1, 2]"
    source

    index

    JuMP.indexFunction
    index(cr::ConstraintRef)::MOI.ConstraintIndex

    Return the index of the constraint that corresponds to cr in the MOI backend.

    Example

    julia> model = Model();
     
     julia> @variable(model, x);
     
     julia> @constraint(model, c, x >= 0);
     
     julia> index(c)
    -MathOptInterface.ConstraintIndex{MathOptInterface.ScalarAffineFunction{Float64}, MathOptInterface.GreaterThan{Float64}}(1)
    source
    index(v::GenericVariableRef)::MOI.VariableIndex

    Return the index of the variable that corresponds to v in the MOI backend.

    Example

    julia> model = Model();
    +MathOptInterface.ConstraintIndex{MathOptInterface.ScalarAffineFunction{Float64}, MathOptInterface.GreaterThan{Float64}}(1)
    source
    index(v::GenericVariableRef)::MOI.VariableIndex

    Return the index of the variable that corresponds to v in the MOI backend.

    Example

    julia> model = Model();
     
     julia> @variable(model, x);
     
     julia> index(x)
    -MOI.VariableIndex(1)
    source

    is_binary

    is_binary

    is_fixed

    is_fixed

    JuMP.is_fixedFunction
    is_fixed(v::GenericVariableRef)

    Return true if v is a fixed variable. If true, the fixed value can be queried with fix_value.

    See also FixRef, fix_value, fix, unfix.

    Example

    julia> model = Model();
     
     julia> @variable(model, x);
     
    @@ -1118,7 +1118,7 @@
     julia> fix(x, 1.0)
     
     julia> is_fixed(x)
    -true
    source

    is_integer

    is_integer

    JuMP.is_integerFunction
    is_integer(v::GenericVariableRef)

    Return true if v is constrained to be integer.

    See also IntegerRef, set_integer, unset_integer.

    Example

    julia> model = Model();
     
     julia> @variable(model, x);
     
    @@ -1128,7 +1128,7 @@
     julia> set_integer(x)
     
     julia> is_integer(x)
    -true
    source

    is_parameter

    is_parameter

    is_solved_and_feasible

    is_solved_and_feasible

    JuMP.is_solved_and_feasibleFunction
    is_solved_and_feasible(
         model::GenericModel;
         allow_local::Bool = true,
         allow_almost::Bool = false,
    @@ -1151,7 +1151,7 @@
     julia> model = Model(Ipopt.Optimizer);
     
     julia> is_solved_and_feasible(model)
    -false
    source

    is_valid

    JuMP.is_validFunction
    is_valid(model::GenericModel, con_ref::ConstraintRef{<:AbstractModel})

    Return true if con_ref refers to a valid constraint in model.

    Example

    julia> model = Model();
    +false
    source

    is_valid

    JuMP.is_validFunction
    is_valid(model::GenericModel, con_ref::ConstraintRef{<:AbstractModel})

    Return true if con_ref refers to a valid constraint in model.

    Example

    julia> model = Model();
     
     julia> @variable(model, x);
     
    @@ -1163,7 +1163,7 @@
     julia> model_2 = Model();
     
     julia> is_valid(model_2, c)
    -false
    source
    is_valid(model::GenericModel, variable_ref::GenericVariableRef)

    Return true if variable refers to a valid variable in model.

    Example

    julia> model = Model();
    +false
    source
    is_valid(model::GenericModel, variable_ref::GenericVariableRef)

    Return true if variable refers to a valid variable in model.

    Example

    julia> model = Model();
     
     julia> @variable(model, x);
     
    @@ -1173,7 +1173,7 @@
     julia> model_2 = Model();
     
     julia> is_valid(model_2, x)
    -false
    source

    isequal_canonical

    isequal_canonical

    JuMP.isequal_canonicalFunction
    isequal_canonical(
         x::T,
         y::T
     ) where {T<:AbstractJuMPScalar,AbstractArray{<:AbstractJuMPScalar}}

    Return true if x is equal to y after dropping zeros and disregarding the order.

    This method is mainly useful for testing, because fallbacks like x == y do not account for valid mathematical comparisons like x[1] + 0 x[2] + 1 == x[1] + 1.

    Example

    julia> model = Model();
    @@ -1193,7 +1193,7 @@
     false
     
     julia> isequal_canonical(a, b)
    -true
    source

    jump_function

    JuMP.jump_functionFunction
    jump_function(model::AbstractModel, x::MOI.AbstractFunction)

    Given an MathOptInterface object x, return the JuMP equivalent.

    See also: moi_function.

    Example

    julia> model = Model();
    +true
    source

    jump_function

    JuMP.jump_functionFunction
    jump_function(model::AbstractModel, x::MOI.AbstractFunction)

    Given an MathOptInterface object x, return the JuMP equivalent.

    See also: moi_function.

    Example

    julia> model = Model();
     
     julia> @variable(model, x);
     
    @@ -1201,10 +1201,10 @@
     1.0 + 2.0 MOI.VariableIndex(1)
     
     julia> jump_function(model, f)
    -2 x + 1
    source

    jump_function_type

    JuMP.jump_function_typeFunction
    jump_function_type(model::AbstractModel, ::Type{T}) where {T}

    Given an MathOptInterface object type T, return the JuMP equivalent.

    See also: moi_function_type.

    Example

    julia> model = Model();
    +2 x + 1
    source

    jump_function_type

    JuMP.jump_function_typeFunction
    jump_function_type(model::AbstractModel, ::Type{T}) where {T}

    Given an MathOptInterface object type T, return the JuMP equivalent.

    See also: moi_function_type.

    Example

    julia> model = Model();
     
     julia> jump_function_type(model, MOI.ScalarAffineFunction{Float64})
    -AffExpr (alias for GenericAffExpr{Float64, GenericVariableRef{Float64}})
    source

    latex_formulation

    JuMP.latex_formulationFunction
    latex_formulation(model::AbstractModel)

    Wrap model in a type so that it can be pretty-printed as text/latex in a notebook like IJulia, or in Documenter.

    To render the model, end the cell with latex_formulation(model), or call display(latex_formulation(model)) in to force the display of the model from inside a function.

    source

    linear_terms

    JuMP.linear_termsFunction
    linear_terms(aff::GenericAffExpr{C,V})

    Provides an iterator over coefficient-variable tuples (a_i::C, x_i::V) in the linear part of the affine expression.

    source
    linear_terms(quad::GenericQuadExpr{C,V})

    Provides an iterator over tuples (coefficient::C, variable::V) in the linear part of the quadratic expression.

    source

    list_of_constraint_types

    JuMP.list_of_constraint_typesFunction
    list_of_constraint_types(model::GenericModel)::Vector{Tuple{Type,Type}}

    Return a list of tuples of the form (F, S) where F is a JuMP function type and S is an MOI set type such that all_constraints(model, F, S) returns a nonempty list.

    Example

    julia> model = Model();
    +AffExpr (alias for GenericAffExpr{Float64, GenericVariableRef{Float64}})
    source

    latex_formulation

    JuMP.latex_formulationFunction
    latex_formulation(model::AbstractModel)

    Wrap model in a type so that it can be pretty-printed as text/latex in a notebook like IJulia, or in Documenter.

    To render the model, end the cell with latex_formulation(model), or call display(latex_formulation(model)) in to force the display of the model from inside a function.

    source

    linear_terms

    JuMP.linear_termsFunction
    linear_terms(aff::GenericAffExpr{C,V})

    Provides an iterator over coefficient-variable tuples (a_i::C, x_i::V) in the linear part of the affine expression.

    source
    linear_terms(quad::GenericQuadExpr{C,V})

    Provides an iterator over tuples (coefficient::C, variable::V) in the linear part of the quadratic expression.

    source

    list_of_constraint_types

    JuMP.list_of_constraint_typesFunction
    list_of_constraint_types(model::GenericModel)::Vector{Tuple{Type,Type}}

    Return a list of tuples of the form (F, S) where F is a JuMP function type and S is an MOI set type such that all_constraints(model, F, S) returns a nonempty list.

    Example

    julia> model = Model();
     
     julia> @variable(model, x >= 0, Bin);
     
    @@ -1214,12 +1214,12 @@
     3-element Vector{Tuple{Type, Type}}:
      (AffExpr, MathOptInterface.LessThan{Float64})
      (VariableRef, MathOptInterface.GreaterThan{Float64})
    - (VariableRef, MathOptInterface.ZeroOne)

    Performance considerations

    Iterating over the list of function and set types is a type-unstable operation. Consider using a function barrier. See the Performance tips for extensions section of the documentation for more details.

    source

    lower_bound

    JuMP.lower_boundFunction
    lower_bound(v::GenericVariableRef)

    Return the lower bound of a variable. Error if one does not exist.

    See also LowerBoundRef, has_lower_bound, set_lower_bound, delete_lower_bound.

    Example

    julia> model = Model();
    + (VariableRef, MathOptInterface.ZeroOne)

    Performance considerations

    Iterating over the list of function and set types is a type-unstable operation. Consider using a function barrier. See the Performance tips for extensions section of the documentation for more details.

    source

    lower_bound

    lp_matrix_data

    JuMP.lp_matrix_dataFunction
    lp_matrix_data(model::GenericModel{T})

    Given a JuMP model of a linear program, return an LPMatrixData{T} struct storing data for an equivalent linear program in the form:

    \[\begin{aligned} +1.0

    source

    lp_matrix_data

    JuMP.lp_matrix_dataFunction
    lp_matrix_data(model::GenericModel{T})

    Given a JuMP model of a linear program, return an LPMatrixData{T} struct storing data for an equivalent linear program in the form:

    \[\begin{aligned} \min & c^\top x + c_0 \\ & b_l \le A x \le b_u \\ & x_l \le x \le x_u @@ -1264,7 +1264,7 @@ 0.0 julia> data.sense -MAX_SENSE::OptimizationSense = 1

    source

    lp_sensitivity_report

    JuMP.lp_sensitivity_reportFunction
    lp_sensitivity_report(model::GenericModel{T}; atol::T = Base.rtoldefault(T))::SensitivityReport{T} where {T}

    Given a linear program model with a current optimal basis, return a SensitivityReport object, which maps:

    • Every variable reference to a tuple (d_lo, d_hi)::Tuple{T,T}, explaining how much the objective coefficient of the corresponding variable can change by, such that the original basis remains optimal.
    • Every constraint reference to a tuple (d_lo, d_hi)::Tuple{T,T}, explaining how much the right-hand side of the corresponding constraint can change by, such that the basis remains optimal.

    Both tuples are relative, rather than absolute. So given a objective coefficient of 1.0 and a tuple (-0.5, 0.5), the objective coefficient can range between 1.0 - 0.5 an 1.0 + 0.5.

    atol is the primal/dual optimality tolerance, and should match the tolerance of the solver used to compute the basis.

    Note: interval constraints are NOT supported.

    Example

    julia> import HiGHS
    +MAX_SENSE::OptimizationSense = 1
    source

    lp_sensitivity_report

    JuMP.lp_sensitivity_reportFunction
    lp_sensitivity_report(model::GenericModel{T}; atol::T = Base.rtoldefault(T))::SensitivityReport{T} where {T}

    Given a linear program model with a current optimal basis, return a SensitivityReport object, which maps:

    • Every variable reference to a tuple (d_lo, d_hi)::Tuple{T,T}, explaining how much the objective coefficient of the corresponding variable can change by, such that the original basis remains optimal.
    • Every constraint reference to a tuple (d_lo, d_hi)::Tuple{T,T}, explaining how much the right-hand side of the corresponding constraint can change by, such that the basis remains optimal.

    Both tuples are relative, rather than absolute. So given a objective coefficient of 1.0 and a tuple (-0.5, 0.5), the objective coefficient can range between 1.0 - 0.5 an 1.0 + 0.5.

    atol is the primal/dual optimality tolerance, and should match the tolerance of the solver used to compute the basis.

    Note: interval constraints are NOT supported.

    Example

    julia> import HiGHS
     
     julia> model = Model(HiGHS.Optimizer);
     
    @@ -1296,7 +1296,7 @@
                "The lower bound of `x` can decrease by $dRHS_lo or increase " *
                "by $dRHS_hi."
            )
    -The lower bound of `x` can decrease by -Inf or increase by 3.0.
    source

    map_coefficients

    map_coefficients

    JuMP.map_coefficientsFunction
    map_coefficients(f::Function, a::GenericAffExpr)

    Apply f to the coefficients and constant term of an GenericAffExpr a and return a new expression.

    See also: map_coefficients_inplace!

    Example

    julia> model = Model();
     
     julia> @variable(model, x);
     
    @@ -1307,7 +1307,7 @@
     2 x + 2
     
     julia> a
    -x + 1
    source
    map_coefficients(f::Function, a::GenericQuadExpr)

    Apply f to the coefficients and constant term of an GenericQuadExpr a and return a new expression.

    See also: map_coefficients_inplace!

    Example

    julia> model = Model();
    +x + 1
    source
    map_coefficients(f::Function, a::GenericQuadExpr)

    Apply f to the coefficients and constant term of an GenericQuadExpr a and return a new expression.

    See also: map_coefficients_inplace!

    Example

    julia> model = Model();
     
     julia> @variable(model, x);
     
    @@ -1318,7 +1318,7 @@
     2 x² + 2 x + 2
     
     julia> a
    -x² + x + 1
    source

    map_coefficients_inplace!

    map_coefficients_inplace!

    JuMP.map_coefficients_inplace!Function
    map_coefficients_inplace!(f::Function, a::GenericAffExpr)

    Apply f to the coefficients and constant term of an GenericAffExpr a and update them in-place.

    See also: map_coefficients

    Example

    julia> model = Model();
     
     julia> @variable(model, x);
     
    @@ -1329,7 +1329,7 @@
     2 x + 2
     
     julia> a
    -2 x + 2
    source
    map_coefficients_inplace!(f::Function, a::GenericQuadExpr)

    Apply f to the coefficients and constant term of an GenericQuadExpr a and update them in-place.

    See also: map_coefficients

    Example

    julia> model = Model();
    +2 x + 2
    source
    map_coefficients_inplace!(f::Function, a::GenericQuadExpr)

    Apply f to the coefficients and constant term of an GenericQuadExpr a and update them in-place.

    See also: map_coefficients

    Example

    julia> model = Model();
     
     julia> @variable(model, x);
     
    @@ -1340,10 +1340,10 @@
     2 x² + 2 x + 2
     
     julia> a
    -2 x² + 2 x + 2
    source

    mode

    JuMP.modeFunction
    mode(model::GenericModel)

    Return the ModelMode of model.

    Example

    julia> model = Model();
    +2 x² + 2 x + 2
    source

    mode

    JuMP.modeFunction
    mode(model::GenericModel)

    Return the ModelMode of model.

    Example

    julia> model = Model();
     
     julia> mode(model)
    -AUTOMATIC::ModelMode = 0
    source

    model_convert

    model_convert

    JuMP.model_convertFunction
    model_convert(
         model::AbstractModel,
         rhs::Union{
             AbstractConstraint,
    @@ -1351,14 +1351,14 @@
             AbstractJuMPScalar,
             MOI.AbstractSet,
         },
    -)

    Convert the coefficients and constants of functions and sets in the rhs to the coefficient type value_type(typeof(model)).

    Purpose

    Creating and adding a constraint is a two-step process. The first step calls build_constraint, and the result of that is passed to add_constraint.

    However, because build_constraint does not take the model as an argument, the coefficients and constants of the function or set might be different than value_type(typeof(model)).

    Therefore, the result of build_constraint is converted in a call to model_convert before the result is passed to add_constraint.

    source

    model_string

    JuMP.model_stringFunction
    model_string(mode::MIME, model::AbstractModel)

    Return a String representation of model given the mode.

    Example

    julia> model = Model();
    +)

    Convert the coefficients and constants of functions and sets in the rhs to the coefficient type value_type(typeof(model)).

    Purpose

    Creating and adding a constraint is a two-step process. The first step calls build_constraint, and the result of that is passed to add_constraint.

    However, because build_constraint does not take the model as an argument, the coefficients and constants of the function or set might be different than value_type(typeof(model)).

    Therefore, the result of build_constraint is converted in a call to model_convert before the result is passed to add_constraint.

    source

    model_string

    JuMP.model_stringFunction
    model_string(mode::MIME, model::AbstractModel)

    Return a String representation of model given the mode.

    Example

    julia> model = Model();
     
     julia> @variable(model, x >= 0);
     
     julia> print(model_string(MIME("text/plain"), model))
     Feasibility
     Subject to
    - x ≥ 0
    source

    moi_function

    moi_function

    JuMP.moi_functionFunction
    moi_function(x::AbstractJuMPScalar)
     moi_function(x::AbstractArray{<:AbstractJuMPScalar})

    Given a JuMP object x, return the MathOptInterface equivalent.

    See also: jump_function.

    Example

    julia> model = Model();
     
     julia> @variable(model, x);
    @@ -1367,8 +1367,8 @@
     2 x + 1
     
     julia> moi_function(f)
    -1.0 + 2.0 MOI.VariableIndex(1)
    source

    moi_function_type

    JuMP.moi_function_typeFunction
    moi_function_type(::Type{T}) where {T}

    Given a JuMP object type T, return the MathOptInterface equivalent.

    See also: jump_function_type.

    Example

    julia> moi_function_type(AffExpr)
    -MathOptInterface.ScalarAffineFunction{Float64}
    source

    moi_set

    JuMP.moi_setFunction
    moi_set(constraint::AbstractConstraint)

    Return the set of the constraint constraint in the function-in-set form as a MathOptInterface.AbstractSet.

    moi_set(s::AbstractVectorSet, dim::Int)

    Returns the MOI set of dimension dim corresponding to the JuMP set s.

    moi_set(s::AbstractScalarSet)

    Returns the MOI set corresponding to the JuMP set s.

    source

    name

    JuMP.nameFunction
    name(con_ref::ConstraintRef)

    Get a constraint's name attribute.

    Example

    julia> model = Model();
    +1.0 + 2.0 MOI.VariableIndex(1)
    source

    moi_function_type

    JuMP.moi_function_typeFunction
    moi_function_type(::Type{T}) where {T}

    Given a JuMP object type T, return the MathOptInterface equivalent.

    See also: jump_function_type.

    Example

    julia> moi_function_type(AffExpr)
    +MathOptInterface.ScalarAffineFunction{Float64}
    source

    moi_set

    JuMP.moi_setFunction
    moi_set(constraint::AbstractConstraint)

    Return the set of the constraint constraint in the function-in-set form as a MathOptInterface.AbstractSet.

    moi_set(s::AbstractVectorSet, dim::Int)

    Returns the MOI set of dimension dim corresponding to the JuMP set s.

    moi_set(s::AbstractScalarSet)

    Returns the MOI set corresponding to the JuMP set s.

    source

    name

    JuMP.nameFunction
    name(con_ref::ConstraintRef)

    Get a constraint's name attribute.

    Example

    julia> model = Model();
     
     julia> @variable(model, x);
     
    @@ -1376,7 +1376,7 @@
     c : [2 x] ∈ Nonnegatives()
     
     julia> name(c)
    -"c"
    source
    name(v::GenericVariableRef)::String

    Get a variable's name attribute.

    Example

    julia> model = Model();
    +"c"
    source
    name(v::GenericVariableRef)::String

    Get a variable's name attribute.

    Example

    julia> model = Model();
     
     julia> @variable(model, x[1:2])
     2-element Vector{VariableRef}:
    @@ -1384,10 +1384,10 @@
      x[2]
     
     julia> name(x[1])
    -"x[1]"
    source
    name(model::AbstractModel)

    Return the MOI.Name attribute of model's backend, or a default if empty.

    Example

    julia> model = Model();
    +"x[1]"
    source
    name(model::AbstractModel)

    Return the MOI.Name attribute of model's backend, or a default if empty.

    Example

    julia> model = Model();
     
     julia> name(model)
    -"A JuMP Model"
    source

    node_count

    JuMP.node_countFunction
    node_count(model::GenericModel)

    If available, returns the total number of branch-and-bound nodes explored during the most recent optimization in a Mixed Integer Program (the MOI.NodeCount attribute).

    Throws a MOI.GetAttributeNotAllowed error if the attribute is not implemented by the solver.

    Example

    julia> import HiGHS
    +"A JuMP Model"
    source

    node_count

    JuMP.node_countFunction
    node_count(model::GenericModel)

    If available, returns the total number of branch-and-bound nodes explored during the most recent optimization in a Mixed Integer Program (the MOI.NodeCount attribute).

    Throws a MOI.GetAttributeNotAllowed error if the attribute is not implemented by the solver.

    Example

    julia> import HiGHS
     
     julia> model = Model(HiGHS.Optimizer);
     
    @@ -1396,7 +1396,7 @@
     julia> optimize!(model)
     
     julia> node_count(model)
    -0
    source

    normalized_coefficient

    normalized_coefficient

    JuMP.normalized_coefficientFunction
    normalized_coefficient(
         constraint::ConstraintRef,
         variable::GenericVariableRef,
     )

    Return the coefficient associated with variable in constraint after JuMP has normalized the constraint into its standard form.

    See also set_normalized_coefficient.

    Example

    julia> model = Model();
    @@ -1416,7 +1416,7 @@
     julia> normalized_coefficient(con_vec, x)
     2-element Vector{Tuple{Int64, Float64}}:
      (1, 1.0)
    - (2, 2.0)
    source
    normalized_coefficient(
    + (2, 2.0)
    source
    normalized_coefficient(
         constraint::ConstraintRef,
         variable_1::GenericVariableRef,
         variable_2::GenericVariableRef,
    @@ -1441,7 +1441,7 @@
      (1, 1.0)
     
     julia> normalized_coefficient(con_vec, x[1], x[2])
    -Tuple{Int64, Float64}[]
    source

    normalized_rhs

    JuMP.normalized_rhsFunction
    normalized_rhs(constraint::ConstraintRef)

    Return the right-hand side term of constraint after JuMP has converted the constraint into its normalized form.

    See also set_normalized_rhs.

    Example

    julia> model = Model();
    +Tuple{Int64, Float64}[]
    source

    normalized_rhs

    JuMP.normalized_rhsFunction
    normalized_rhs(constraint::ConstraintRef)

    Return the right-hand side term of constraint after JuMP has converted the constraint into its normalized form.

    See also set_normalized_rhs.

    Example

    julia> model = Model();
     
     julia> @variable(model, x);
     
    @@ -1449,7 +1449,7 @@
     con : 2 x ≤ 1
     
     julia> normalized_rhs(con)
    -1.0
    source

    num_constraints

    num_constraints

    JuMP.num_constraintsFunction
    num_constraints(model::GenericModel, function_type, set_type)::Int64

    Return the number of constraints currently in the model where the function has type function_type and the set has type set_type.

    See also list_of_constraint_types and all_constraints.

    Example

    julia> model = Model();
     
     julia> @variable(model, x >= 0, Bin);
     
    @@ -1468,7 +1468,7 @@
     1
     
     julia> num_constraints(model, AffExpr, MOI.LessThan{Float64})
    -2
    source
    num_constraints(model::GenericModel; count_variable_in_set_constraints::Bool)

    Return the number of constraints in model.

    If count_variable_in_set_constraints == true, then VariableRef constraints such as VariableRef-in-Integer are included. To count only the number of structural constraints (for example, the rows in the constraint matrix of a linear program), pass count_variable_in_set_constraints = false.

    Example

    julia> model = Model();
    +2
    source
    num_constraints(model::GenericModel; count_variable_in_set_constraints::Bool)

    Return the number of constraints in model.

    If count_variable_in_set_constraints == true, then VariableRef constraints such as VariableRef-in-Integer are included. To count only the number of structural constraints (for example, the rows in the constraint matrix of a linear program), pass count_variable_in_set_constraints = false.

    Example

    julia> model = Model();
     
     julia> @variable(model, x >= 0, Int);
     
    @@ -1478,18 +1478,18 @@
     3
     
     julia> num_constraints(model; count_variable_in_set_constraints = false)
    -1
    source

    num_variables

    JuMP.num_variablesFunction
    num_variables(model::GenericModel)::Int64

    Returns number of variables in model.

    Example

    julia> model = Model();
    +1
    source

    num_variables

    JuMP.num_variablesFunction
    num_variables(model::GenericModel)::Int64

    Returns number of variables in model.

    Example

    julia> model = Model();
     
     julia> @variable(model, x[1:2]);
     
     julia> num_variables(model)
    -2
    source

    object_dictionary

    JuMP.object_dictionaryFunction
    object_dictionary(model::GenericModel)

    Return the dictionary that maps the symbol name of a variable, constraint, or expression to the corresponding object.

    Objects are registered to a specific symbol in the macros. For example, @variable(model, x[1:2, 1:2]) registers the array of variables x to the symbol :x.

    This method should be defined for any subtype of AbstractModel.

    See also: unregister.

    Example

    julia> model = Model();
    +2
    source

    object_dictionary

    JuMP.object_dictionaryFunction
    object_dictionary(model::GenericModel)

    Return the dictionary that maps the symbol name of a variable, constraint, or expression to the corresponding object.

    Objects are registered to a specific symbol in the macros. For example, @variable(model, x[1:2, 1:2]) registers the array of variables x to the symbol :x.

    This method should be defined for any subtype of AbstractModel.

    See also: unregister.

    Example

    julia> model = Model();
     
     julia> @variable(model, x[1:2]);
     
     julia> object_dictionary(model)
     Dict{Symbol, Any} with 1 entry:
    -  :x => VariableRef[x[1], x[2]]
    source

    objective_bound

    JuMP.objective_boundFunction
    objective_bound(model::GenericModel)

    Return the best known bound on the optimal objective value after a call to optimize!(model).

    For scalar-valued objectives, this function returns a Float64. For vector-valued objectives, it returns a Vector{Float64}.

    In the case of a vector-valued objective, this returns the ideal point, that is, the point obtained if each objective was optimized independently.

    This function is equivalent to querying the MOI.ObjectiveBound attribute.

    Example

    julia> import HiGHS
    +  :x => VariableRef[x[1], x[2]]
    source

    objective_bound

    JuMP.objective_boundFunction
    objective_bound(model::GenericModel)

    Return the best known bound on the optimal objective value after a call to optimize!(model).

    For scalar-valued objectives, this function returns a Float64. For vector-valued objectives, it returns a Vector{Float64}.

    In the case of a vector-valued objective, this returns the ideal point, that is, the point obtained if each objective was optimized independently.

    This function is equivalent to querying the MOI.ObjectiveBound attribute.

    Example

    julia> import HiGHS
     
     julia> model = Model(HiGHS.Optimizer);
     
    @@ -1502,7 +1502,7 @@
     julia> optimize!(model)
     
     julia> objective_bound(model)
    -3.0
    source

    objective_function

    objective_function

    JuMP.objective_functionFunction
    objective_function(
         model::GenericModel,
         ::Type{F} = objective_function_type(model),
     ) where {F}

    Return an object of type F representing the objective function.

    Errors if the objective is not convertible to type F.

    This function is equivalent to querying the MOI.ObjectiveFunction{F} attribute.

    Example

    julia> model = Model();
    @@ -1522,21 +1522,21 @@
     julia> typeof(objective_function(model, QuadExpr))
     QuadExpr (alias for GenericQuadExpr{Float64, GenericVariableRef{Float64}})

    We see with the last two commands that even if the objective function is affine, as it is convertible to a quadratic function, it can be queried as a quadratic function and the result is quadratic.

    However, it is not convertible to a variable:

    julia> objective_function(model, VariableRef)
     ERROR: InexactError: convert(MathOptInterface.VariableIndex, 1.0 + 2.0 MOI.VariableIndex(1))
    -[...]
    source

    objective_function_string

    JuMP.objective_function_stringFunction
    objective_function_string(mode, model::AbstractModel)::String

    Return a String describing the objective function of the model.

    Example

    julia> model = Model();
    +[...]
    source

    objective_function_string

    JuMP.objective_function_stringFunction
    objective_function_string(mode, model::AbstractModel)::String

    Return a String describing the objective function of the model.

    Example

    julia> model = Model();
     
     julia> @variable(model, x);
     
     julia> @objective(model, Min, 2 * x);
     
     julia> objective_function_string(MIME("text/plain"), model)
    -"2 x"
    source

    objective_function_type

    objective_function_type

    JuMP.objective_function_typeFunction
    objective_function_type(model::GenericModel)::AbstractJuMPScalar

    Return the type of the objective function.

    This function is equivalent to querying the MOI.ObjectiveFunctionType attribute.

    Example

    julia> model = Model();
     
     julia> @variable(model, x);
     
     julia> @objective(model, Min, 2 * x + 1);
     
     julia> objective_function_type(model)
    -AffExpr (alias for GenericAffExpr{Float64, GenericVariableRef{Float64}})
    source

    objective_sense

    JuMP.objective_senseFunction
    objective_sense(model::GenericModel)::MOI.OptimizationSense

    Return the objective sense.

    This function is equivalent to querying the MOI.ObjectiveSense attribute.

    Example

    julia> model = Model();
    +AffExpr (alias for GenericAffExpr{Float64, GenericVariableRef{Float64}})
    source

    objective_sense

    JuMP.objective_senseFunction
    objective_sense(model::GenericModel)::MOI.OptimizationSense

    Return the objective sense.

    This function is equivalent to querying the MOI.ObjectiveSense attribute.

    Example

    julia> model = Model();
     
     julia> objective_sense(model)
     FEASIBILITY_SENSE::OptimizationSense = 2
    @@ -1547,7 +1547,7 @@
     x
     
     julia> objective_sense(model)
    -MAX_SENSE::OptimizationSense = 1
    source

    objective_value

    JuMP.objective_valueFunction
    objective_value(model::GenericModel; result::Int = 1)

    Return the objective value associated with result index result of the most-recent solution returned by the solver.

    For scalar-valued objectives, this function returns a Float64. For vector-valued objectives, it returns a Vector{Float64}.

    This function is equivalent to querying the MOI.ObjectiveValue attribute.

    See also: result_count.

    Example

    julia> import HiGHS
    +MAX_SENSE::OptimizationSense = 1
    source

    objective_value

    JuMP.objective_valueFunction
    objective_value(model::GenericModel; result::Int = 1)

    Return the objective value associated with result index result of the most-recent solution returned by the solver.

    For scalar-valued objectives, this function returns a Float64. For vector-valued objectives, it returns a Vector{Float64}.

    This function is equivalent to querying the MOI.ObjectiveValue attribute.

    See also: result_count.

    Example

    julia> import HiGHS
     
     julia> model = Model(HiGHS.Optimizer);
     
    @@ -1565,7 +1565,7 @@
     julia> objective_value(model; result = 2)
     ERROR: Result index of attribute MathOptInterface.ObjectiveValue(2) out of bounds. There are currently 1 solution(s) in the model.
     Stacktrace:
    -[...]
    source

    op_ifelse

    JuMP.op_ifelseFunction
    op_ifelse(a, x, y)

    A function that falls back to ifelse(a, x, y), but when called with a JuMP variables or expression in the first argument, returns a GenericNonlinearExpr.

    Example

    julia> model = Model();
    +[...]
    source

    op_ifelse

    JuMP.op_ifelseFunction
    op_ifelse(a, x, y)

    A function that falls back to ifelse(a, x, y), but when called with a JuMP variables or expression in the first argument, returns a GenericNonlinearExpr.

    Example

    julia> model = Model();
     
     julia> @variable(model, x);
     
    @@ -1576,14 +1576,14 @@
     ifelse(x, 1.0, 2.0)
     
     julia> op_ifelse(true, x, 2.0)
    -x
    source

    op_string

    JuMP.op_stringFunction
    op_string(mime::MIME, x::GenericNonlinearExpr, ::Val{op}) where {op}

    Return the string that should be printed for the operator op when function_string is called with mime and x.

    Example

    julia> model = Model();
    +x
    source

    op_string

    JuMP.op_stringFunction
    op_string(mime::MIME, x::GenericNonlinearExpr, ::Val{op}) where {op}

    Return the string that should be printed for the operator op when function_string is called with mime and x.

    Example

    julia> model = Model();
     
     julia> @variable(model, x[1:2], Bin);
     
     julia> f = @expression(model, x[1] || x[2]);
     
     julia> op_string(MIME("text/plain"), f, Val(:||))
    -"||"
    source

    operator_to_set

    JuMP.operator_to_setFunction
    operator_to_set(error_fn::Function, ::Val{sense_symbol})

    Converts a sense symbol to a set set such that @constraint(model, func sense_symbol 0) is equivalent to @constraint(model, func in set) for any func::AbstractJuMPScalar.

    Example

    Once a custom set is defined you can directly create a JuMP constraint with it:

    julia> struct CustomSet{T} <: MOI.AbstractScalarSet
    +"||"
    source

    operator_to_set

    JuMP.operator_to_setFunction
    operator_to_set(error_fn::Function, ::Val{sense_symbol})

    Converts a sense symbol to a set set such that @constraint(model, func sense_symbol 0) is equivalent to @constraint(model, func in set) for any func::AbstractJuMPScalar.

    Example

    Once a custom set is defined you can directly create a JuMP constraint with it:

    julia> struct CustomSet{T} <: MOI.AbstractScalarSet
                value::T
            end
     
    @@ -1602,8 +1602,8 @@
     julia> MOIU.shift_constant(set::CustomSet, value) = CustomSet(set.value + value)
     
     julia> cref = @constraint(model, x ⊰ 1)
    -x ∈ CustomSet{Float64}(1.0)

    Note that the whole function is first moved to the right-hand side, then the sign is transformed into a set with zero constant and finally the constant is moved to the set with MOIU.shift_constant.

    source

    operator_warn

    JuMP.operator_warnFunction
    operator_warn(model::AbstractModel)
    -operator_warn(model::GenericModel)

    This function is called on the model whenever two affine expressions are added together without using destructive_add!, and at least one of the two expressions has more than 50 terms.

    For the case of Model, if this function is called more than 20,000 times then a warning is generated once.

    This method should only be implemented by developers creating JuMP extensions. It should never be called by users of JuMP.

    source

    optimize!

    JuMP.optimize!Function
    optimize!(
    +x ∈ CustomSet{Float64}(1.0)

    Note that the whole function is first moved to the right-hand side, then the sign is transformed into a set with zero constant and finally the constant is moved to the set with MOIU.shift_constant.

    source

    operator_warn

    JuMP.operator_warnFunction
    operator_warn(model::AbstractModel)
    +operator_warn(model::GenericModel)

    This function is called on the model whenever two affine expressions are added together without using destructive_add!, and at least one of the two expressions has more than 50 terms.

    For the case of Model, if this function is called more than 20,000 times then a warning is generated once.

    This method should only be implemented by developers creating JuMP extensions. It should never be called by users of JuMP.

    source

    optimize!

    JuMP.optimize!Function
    optimize!(
         model::GenericModel;
         ignore_optimize_hook = (model.optimize_hook === nothing),
         kwargs...,
    @@ -1623,7 +1623,7 @@
     my_optimize_hook (generic function with 1 method)
     
     julia> optimize!(model; foo = 2)
    -Hook called with foo = 2
    source

    optimizer_index

    optimizer_index

    JuMP.optimizer_indexFunction
    optimizer_index(x::GenericVariableRef)::MOI.VariableIndex
     optimizer_index(x::ConstraintRef{<:GenericModel})::MOI.ConstraintIndex

    Return the variable or constraint index that corresponds to x in the associated model unsafe_backend(owner_model(x)).

    This function should be used with unsafe_backend.

    As a safer alternative, use backend and index. See the docstrings of backend and unsafe_backend for more details.

    Throws

    • Throws NoOptimizer if no optimizer is set.
    • Throws an ErrorException if the optimizer is set but is not attached.
    • Throws an ErrorException if the index is bridged.

    Example

    julia> import HiGHS
     
     julia> model = Model(HiGHS.Optimizer);
    @@ -1639,7 +1639,7 @@
     A HiGHS model with 1 columns and 0 rows.
     
     julia> optimizer_index(x)
    -MOI.VariableIndex(1)
    source

    optimizer_with_attributes

    JuMP.optimizer_with_attributesFunction
    optimizer_with_attributes(optimizer_constructor, attrs::Pair...)

    Groups an optimizer constructor with the list of attributes attrs. Note that it is equivalent to MOI.OptimizerWithAttributes.

    When provided to the Model constructor or to set_optimizer, it creates an optimizer by calling optimizer_constructor(), and then sets the attributes using set_attribute.

    See also: set_attribute, get_attribute.

    Note

    The string names of the attributes are specific to each solver. One should consult the solver's documentation to find the attributes of interest.

    Example

    julia> import HiGHS
    +MOI.VariableIndex(1)
    source

    optimizer_with_attributes

    JuMP.optimizer_with_attributesFunction
    optimizer_with_attributes(optimizer_constructor, attrs::Pair...)

    Groups an optimizer constructor with the list of attributes attrs. Note that it is equivalent to MOI.OptimizerWithAttributes.

    When provided to the Model constructor or to set_optimizer, it creates an optimizer by calling optimizer_constructor(), and then sets the attributes using set_attribute.

    See also: set_attribute, get_attribute.

    Note

    The string names of the attributes are specific to each solver. One should consult the solver's documentation to find the attributes of interest.

    Example

    julia> import HiGHS
     
     julia> optimizer = optimizer_with_attributes(
                HiGHS.Optimizer, "presolve" => "off", MOI.Silent() => true,
    @@ -1651,12 +1651,12 @@
     
     julia> set_attribute(model, "presolve", "off")
     
    -julia> set_attribute(model, MOI.Silent(), true)
    source

    owner_model

    JuMP.owner_modelFunction
    owner_model(s::AbstractJuMPScalar)

    Return the model owning the scalar s.

    Example

    julia> model = Model();
    +julia> set_attribute(model, MOI.Silent(), true)
    source

    owner_model

    JuMP.owner_modelFunction
    owner_model(s::AbstractJuMPScalar)

    Return the model owning the scalar s.

    Example

    julia> model = Model();
     
     julia> @variable(model, x);
     
     julia> owner_model(x) === model
    -true
    source

    parameter_value

    parameter_value

    JuMP.parameter_valueFunction
    parameter_value(x::GenericVariableRef)

    Return the value of the parameter x.

    Errors if x is not a parameter.

    See also ParameterRef, is_parameter, set_parameter_value.

    Example

    julia> model = Model();
     
     julia> @variable(model, p in Parameter(2))
     p
    @@ -1667,23 +1667,23 @@
     julia> set_parameter_value(p, 2.5)
     
     julia> parameter_value(p)
    -2.5
    source

    parse_constraint

    JuMP.parse_constraintFunction
    parse_constraint(error_fn::Function, expr::Expr)

    The entry-point for all constraint-related parsing.

    Arguments

    • The error_fn function is passed everywhere to provide better error messages
    • expr comes from the @constraint macro. There are two possibilities:
      • @constraint(model, expr)
      • @constraint(model, name[args], expr)
      In both cases, expr is the main component of the constraint.

    Supported syntax

    JuMP currently supports the following expr objects:

    • lhs <= rhs
    • lhs == rhs
    • lhs >= rhs
    • l <= body <= u
    • u >= body >= l
    • lhs ⟂ rhs
    • lhs in rhs
    • lhs ∈ rhs
    • z --> {constraint}
    • !z --> {constraint}
    • z <--> {constraint}
    • !z <--> {constraint}
    • z => {constraint}
    • !z => {constraint}

    as well as all broadcasted variants.

    Extensions

    The infrastructure behind parse_constraint is extendable. See parse_constraint_head and parse_constraint_call for details.

    source

    parse_constraint_call

    parse_constraint

    JuMP.parse_constraintFunction
    parse_constraint(error_fn::Function, expr::Expr)

    The entry-point for all constraint-related parsing.

    Arguments

    • The error_fn function is passed everywhere to provide better error messages
    • expr comes from the @constraint macro. There are two possibilities:
      • @constraint(model, expr)
      • @constraint(model, name[args], expr)
      In both cases, expr is the main component of the constraint.

    Supported syntax

    JuMP currently supports the following expr objects:

    • lhs <= rhs
    • lhs == rhs
    • lhs >= rhs
    • l <= body <= u
    • u >= body >= l
    • lhs ⟂ rhs
    • lhs in rhs
    • lhs ∈ rhs
    • z --> {constraint}
    • !z --> {constraint}
    • z <--> {constraint}
    • !z <--> {constraint}
    • z => {constraint}
    • !z => {constraint}

    as well as all broadcasted variants.

    Extensions

    The infrastructure behind parse_constraint is extendable. See parse_constraint_head and parse_constraint_call for details.

    source

    parse_constraint_call

    JuMP.parse_constraint_callFunction
    parse_constraint_call(
         error_fn::Function,
         is_vectorized::Bool,
         ::Val{op},
         args...,
    -)

    Implement this method to intercept the parsing of a :call expression with operator op.

    Warning

    Extending the constraint macro at parse time is an advanced operation and has the potential to interfere with existing JuMP syntax. Please discuss with the developer chatroom before publishing any code that implements these methods.

    Arguments

    • error_fn: a function that accepts a String and throws the string as an error, along with some descriptive information of the macro from which it was thrown.
    • is_vectorized: a boolean to indicate if op should be broadcast or not
    • op: the first element of the .args field of the Expr to intercept
    • args...: the .args field of the Expr.

    Returns

    This function must return:

    • parse_code::Expr: an expression containing any setup or rewriting code that needs to be called before build_constraint
    • build_code::Expr: an expression that calls build_constraint( or build_constraint.( depending on is_vectorized.

    See also: parse_constraint_head, build_constraint

    source
    parse_constraint_call(
    +)

    Implement this method to intercept the parsing of a :call expression with operator op.

    Warning

    Extending the constraint macro at parse time is an advanced operation and has the potential to interfere with existing JuMP syntax. Please discuss with the developer chatroom before publishing any code that implements these methods.

    Arguments

    • error_fn: a function that accepts a String and throws the string as an error, along with some descriptive information of the macro from which it was thrown.
    • is_vectorized: a boolean to indicate if op should be broadcast or not
    • op: the first element of the .args field of the Expr to intercept
    • args...: the .args field of the Expr.

    Returns

    This function must return:

    • parse_code::Expr: an expression containing any setup or rewriting code that needs to be called before build_constraint
    • build_code::Expr: an expression that calls build_constraint( or build_constraint.( depending on is_vectorized.

    See also: parse_constraint_head, build_constraint

    source
    parse_constraint_call(
         error_fn::Function,
         vectorized::Bool,
         ::Val{op},
         lhs,
         rhs,
    -) where {op}

    Fallback handler for binary operators. These might be infix operators like @constraint(model, lhs op rhs), or normal operators like @constraint(model, op(lhs, rhs)).

    In both cases, we rewrite as lhs - rhs in operator_to_set(error_fn, op).

    See operator_to_set for details.

    source

    parse_constraint_head

    JuMP.parse_constraint_headFunction
    parse_constraint_head(error_fn::Function, ::Val{head}, args...)

    Implement this method to intercept the parsing of an expression with head head.

    Warning

    Extending the constraint macro at parse time is an advanced operation and has the potential to interfere with existing JuMP syntax. Please discuss with the developer chatroom before publishing any code that implements these methods.

    Arguments

    • error_fn: a function that accepts a String and throws the string as an error, along with some descriptive information of the macro from which it was thrown.
    • head: the .head field of the Expr to intercept
    • args...: the .args field of the Expr.

    Returns

    This function must return:

    • is_vectorized::Bool: whether the expression represents a broadcasted expression like x .<= 1
    • parse_code::Expr: an expression containing any setup or rewriting code that needs to be called before build_constraint
    • build_code::Expr: an expression that calls build_constraint( or build_constraint.( depending on is_vectorized.

    Existing implementations

    JuMP currently implements:

    • ::Val{:call}, which forwards calls to parse_constraint_call
    • ::Val{:comparison}, which handles the special case of l <= body <= u.

    See also: parse_constraint_call, build_constraint

    source

    parse_one_operator_variable

    JuMP.parse_one_operator_variableFunction
    parse_one_operator_variable(
    +) where {op}

    Fallback handler for binary operators. These might be infix operators like @constraint(model, lhs op rhs), or normal operators like @constraint(model, op(lhs, rhs)).

    In both cases, we rewrite as lhs - rhs in operator_to_set(error_fn, op).

    See operator_to_set for details.

    source

    parse_constraint_head

    JuMP.parse_constraint_headFunction
    parse_constraint_head(error_fn::Function, ::Val{head}, args...)

    Implement this method to intercept the parsing of an expression with head head.

    Warning

    Extending the constraint macro at parse time is an advanced operation and has the potential to interfere with existing JuMP syntax. Please discuss with the developer chatroom before publishing any code that implements these methods.

    Arguments

    • error_fn: a function that accepts a String and throws the string as an error, along with some descriptive information of the macro from which it was thrown.
    • head: the .head field of the Expr to intercept
    • args...: the .args field of the Expr.

    Returns

    This function must return:

    • is_vectorized::Bool: whether the expression represents a broadcasted expression like x .<= 1
    • parse_code::Expr: an expression containing any setup or rewriting code that needs to be called before build_constraint
    • build_code::Expr: an expression that calls build_constraint( or build_constraint.( depending on is_vectorized.

    Existing implementations

    JuMP currently implements:

    • ::Val{:call}, which forwards calls to parse_constraint_call
    • ::Val{:comparison}, which handles the special case of l <= body <= u.

    See also: parse_constraint_call, build_constraint

    source

    parse_one_operator_variable

    JuMP.parse_one_operator_variableFunction
    parse_one_operator_variable(
         error_fn::Function,
         info_expr::_VariableInfoExpr,
         sense::Val{S},
         value,
    -) where {S}

    Update infoexr for a variable expression in the @variable macro of the form variable name S value.

    source

    parse_ternary_variable

    JuMP.parse_ternary_variableFunction
    parse_ternary_variable(error_fn, info_expr, lhs_sense, lhs, rhs_sense, rhs)

    A hook for JuMP extensions to intercept the parsing of a :comparison expression, which has the form lhs lhs_sense variable rhs_sense rhs.

    source

    parse_variable

    JuMP.parse_variableFunction
    parse_variable(error_fn::Function, ::_VariableInfoExpr, args...)

    A hook for extensions to intercept the parsing of inequality constraints in the @variable macro.

    source

    primal_feasibility_report

    JuMP.primal_feasibility_reportFunction
    primal_feasibility_report(
    +) where {S}

    Update infoexr for a variable expression in the @variable macro of the form variable name S value.

    source

    parse_ternary_variable

    JuMP.parse_ternary_variableFunction
    parse_ternary_variable(error_fn, info_expr, lhs_sense, lhs, rhs_sense, rhs)

    A hook for JuMP extensions to intercept the parsing of a :comparison expression, which has the form lhs lhs_sense variable rhs_sense rhs.

    source

    parse_variable

    JuMP.parse_variableFunction
    parse_variable(error_fn::Function, ::_VariableInfoExpr, args...)

    A hook for extensions to intercept the parsing of inequality constraints in the @variable macro.

    source

    primal_feasibility_report

    JuMP.primal_feasibility_reportFunction
    primal_feasibility_report(
         model::GenericModel{T},
         point::AbstractDict{GenericVariableRef{T},T} = _last_primal_solution(model),
         atol::T = zero(T),
    @@ -1694,7 +1694,7 @@
     
     julia> primal_feasibility_report(model, Dict(x => 0.2))
     Dict{Any, Float64} with 1 entry:
    -  x ≥ 0.5 => 0.3
    source
    primal_feasibility_report(
    +  x ≥ 0.5 => 0.3
    source
    primal_feasibility_report(
         point::Function,
         model::GenericModel{T};
         atol::T = zero(T),
    @@ -1707,30 +1707,30 @@
                return start_value(v)
            end
     Dict{Any, Float64} with 1 entry:
    -  x ≤ 1 => 0.3
    source

    primal_status

    primal_status

    JuMP.primal_statusFunction
    primal_status(model::GenericModel; result::Int = 1)

    Return a MOI.ResultStatusCode describing the status of the most recent primal solution of the solver (that is, the MOI.PrimalStatus attribute) associated with the result index result.

    See also: result_count.

    Example

    julia> import Ipopt
     
     julia> model = Model(Ipopt.Optimizer);
     
     julia> primal_status(model; result = 2)
    -NO_SOLUTION::ResultStatusCode = 0
    source
    JuMP.print_active_bridgesFunction
    print_active_bridges([io::IO = stdout,] model::GenericModel)

    Print a list of the variable, constraint, and objective bridges that are currently used in the model.

    source
    print_active_bridges([io::IO = stdout,] model::GenericModel, ::Type{F}) where {F}

    Print a list of bridges required for an objective function of type F.

    source
    print_active_bridges(
    +NO_SOLUTION::ResultStatusCode = 0
    source
    JuMP.print_active_bridgesFunction
    print_active_bridges([io::IO = stdout,] model::GenericModel)

    Print a list of the variable, constraint, and objective bridges that are currently used in the model.

    source
    print_active_bridges([io::IO = stdout,] model::GenericModel, ::Type{F}) where {F}

    Print a list of bridges required for an objective function of type F.

    source
    print_active_bridges(
         [io::IO = stdout,]
         model::GenericModel,
         F::Type,
         S::Type{<:MOI.AbstractSet},
    -)

    Print a list of bridges required for a constraint of type F-in-S.

    source
    print_active_bridges(
    +)

    Print a list of bridges required for a constraint of type F-in-S.

    source
    print_active_bridges(
         [io::IO = stdout,]
         model::GenericModel,
         S::Type{<:MOI.AbstractSet},
    -)

    Print a list of bridges required to add a variable constrained to the set S.

    source
    JuMP.print_bridge_graphFunction
     print_bridge_graph([io::IO,] model::GenericModel)

    Print the hyper-graph containing all variable, constraint, and objective types that could be obtained by bridging the variables, constraints, and objectives that are present in the model.

    Warning

    This function is intended for advanced users. If you want to see only the bridges that are currently used, use print_active_bridges instead.

    Explanation of output

    Each node in the hyper-graph corresponds to a variable, constraint, or objective type.

    • Variable nodes are indicated by [ ]
    • Constraint nodes are indicated by ( )
    • Objective nodes are indicated by | |

    The number inside each pair of brackets is an index of the node in the hyper-graph.

    Note that this hyper-graph is the full list of possible transformations. When the bridged model is created, we select the shortest hyper-path(s) from this graph, so many nodes may be un-used.

    For more information, see Legat, B., Dowson, O., Garcia, J., and Lubin, M. (2020). "MathOptInterface: a data structure for mathematical optimization problems." URL: https://arxiv.org/abs/2002.03447

    source

    quad_terms

    JuMP.quad_termsFunction
    quad_terms(quad::GenericQuadExpr{C,V})

    Provides an iterator over tuples (coefficient::C, var_1::V, var_2::V) in the quadratic part of the quadratic expression.

    source

    raw_status

    JuMP.raw_statusFunction
    raw_status(model::GenericModel)

    Return the reason why the solver stopped in its own words (that is, the MathOptInterface model attribute MOI.RawStatusString).

    Example

    julia> import Ipopt
    +)

    Print a list of bridges required to add a variable constrained to the set S.

    source
    JuMP.print_bridge_graphFunction
     print_bridge_graph([io::IO,] model::GenericModel)

    Print the hyper-graph containing all variable, constraint, and objective types that could be obtained by bridging the variables, constraints, and objectives that are present in the model.

    Warning

    This function is intended for advanced users. If you want to see only the bridges that are currently used, use print_active_bridges instead.

    Explanation of output

    Each node in the hyper-graph corresponds to a variable, constraint, or objective type.

    • Variable nodes are indicated by [ ]
    • Constraint nodes are indicated by ( )
    • Objective nodes are indicated by | |

    The number inside each pair of brackets is an index of the node in the hyper-graph.

    Note that this hyper-graph is the full list of possible transformations. When the bridged model is created, we select the shortest hyper-path(s) from this graph, so many nodes may be un-used.

    For more information, see Legat, B., Dowson, O., Garcia, J., and Lubin, M. (2020). "MathOptInterface: a data structure for mathematical optimization problems." URL: https://arxiv.org/abs/2002.03447

    source

    quad_terms

    JuMP.quad_termsFunction
    quad_terms(quad::GenericQuadExpr{C,V})

    Provides an iterator over tuples (coefficient::C, var_1::V, var_2::V) in the quadratic part of the quadratic expression.

    source

    raw_status

    JuMP.raw_statusFunction
    raw_status(model::GenericModel)

    Return the reason why the solver stopped in its own words (that is, the MathOptInterface model attribute MOI.RawStatusString).

    Example

    julia> import Ipopt
     
     julia> model = Model(Ipopt.Optimizer);
     
     julia> raw_status(model)
    -"optimize not called"
    source

    read_from_file

    read_from_file

    JuMP.read_from_fileFunction
    read_from_file(
         filename::String;
         format::MOI.FileFormats.FileFormat = MOI.FileFormats.FORMAT_AUTOMATIC,
         kwargs...,
    -)

    Return a JuMP model read from filename in the format format.

    If the filename ends in .gz, it will be uncompressed using GZip. If the filename ends in .bz2, it will be uncompressed using BZip2.

    Other kwargs are passed to the Model constructor of the chosen format.

    source

    reduced_cost

    JuMP.reduced_costFunction
    reduced_cost(x::GenericVariableRef{T})::T where {T}

    Return the reduced cost associated with variable x.

    One interpretation of the reduced cost is that it is the change in the objective from an infinitesimal relaxation of the variable bounds.

    This method is equivalent to querying the shadow price of the active variable bound (if one exists and is active).

    See also: shadow_price.

    Example

    julia> import HiGHS
    +)

    Return a JuMP model read from filename in the format format.

    If the filename ends in .gz, it will be uncompressed using GZip. If the filename ends in .bz2, it will be uncompressed using BZip2.

    Other kwargs are passed to the Model constructor of the chosen format.

    source

    reduced_cost

    JuMP.reduced_costFunction
    reduced_cost(x::GenericVariableRef{T})::T where {T}

    Return the reduced cost associated with variable x.

    One interpretation of the reduced cost is that it is the change in the objective from an infinitesimal relaxation of the variable bounds.

    This method is equivalent to querying the shadow price of the active variable bound (if one exists and is active).

    See also: shadow_price.

    Example

    julia> import HiGHS
     
     julia> model = Model(HiGHS.Optimizer);
     
    @@ -1746,7 +1746,7 @@
     true
     
     julia> reduced_cost(x)
    -2.0
    source

    relative_gap

    JuMP.relative_gapFunction
    relative_gap(model::GenericModel)

    Return the final relative optimality gap after a call to optimize!(model).

    Exact value depends upon implementation of MOI.RelativeGap by the particular solver used for optimization.

    This function is equivalent to querying the MOI.RelativeGap attribute.

    Example

    julia> import HiGHS
    +2.0
    source

    relative_gap

    JuMP.relative_gapFunction
    relative_gap(model::GenericModel)

    Return the final relative optimality gap after a call to optimize!(model).

    Exact value depends upon implementation of MOI.RelativeGap by the particular solver used for optimization.

    This function is equivalent to querying the MOI.RelativeGap attribute.

    Example

    julia> import HiGHS
     
     julia> model = Model(HiGHS.Optimizer);
     
    @@ -1759,7 +1759,7 @@
     julia> optimize!(model)
     
     julia> relative_gap(model)
    -0.0
    source

    relax_integrality

    JuMP.relax_integralityFunction
    relax_integrality(model::GenericModel)

    Modifies model to "relax" all binary and integrality constraints on variables. Specifically,

    • Binary constraints are deleted, and variable bounds are tightened if necessary to ensure the variable is constrained to the interval $[0, 1]$.
    • Integrality constraints are deleted without modifying variable bounds.
    • An error is thrown if semi-continuous or semi-integer constraints are present (support may be added for these in the future).
    • All other constraints are ignored (left in place). This includes discrete constraints like SOS and indicator constraints.

    Returns a function that can be called without any arguments to restore the original model. The behavior of this function is undefined if additional changes are made to the affected variables in the meantime.

    Example

    julia> model = Model();
    +0.0
    source

    relax_integrality

    JuMP.relax_integralityFunction
    relax_integrality(model::GenericModel)

    Modifies model to "relax" all binary and integrality constraints on variables. Specifically,

    • Binary constraints are deleted, and variable bounds are tightened if necessary to ensure the variable is constrained to the interval $[0, 1]$.
    • Integrality constraints are deleted without modifying variable bounds.
    • An error is thrown if semi-continuous or semi-integer constraints are present (support may be added for these in the future).
    • All other constraints are ignored (left in place). This includes discrete constraints like SOS and indicator constraints.

    Returns a function that can be called without any arguments to restore the original model. The behavior of this function is undefined if additional changes are made to the affected variables in the meantime.

    Example

    julia> model = Model();
     
     julia> @variable(model, x, Bin);
     
    @@ -1785,7 +1785,7 @@
      y ≥ 1
      y ≤ 10
      y integer
    - x binary
    source

    relax_with_penalty!

    relax_with_penalty!

    JuMP.relax_with_penalty!Function
    relax_with_penalty!(
         model::GenericModel{T},
         [penalties::Dict{ConstraintRef,T}];
         [default::Union{Nothing,Real} = nothing,]
    @@ -1828,7 +1828,7 @@
     Subject to
      c2 : 3 x + _[2] ≥ 0
      c1 : 2 x ≤ -1
    - _[2] ≥ 0
    source

    remove_bridge

    remove_bridge

    JuMP.remove_bridgeFunction
    remove_bridge(
         model::GenericModel{S},
         BT::Type{<:MOI.Bridges.AbstractBridge};
         coefficient_type::Type{T} = S,
    @@ -1848,17 +1848,17 @@
                model,
                MOI.Bridges.Constraint.NumberConversionBridge;
                coefficient_type = Complex{Float64},
    -       )
    source

    reshape_set

    JuMP.reshape_setFunction
    reshape_set(vectorized_set::MOI.AbstractSet, shape::AbstractShape)

    Return a set in its original shape shape given its vectorized form vectorized_form.

    Example

    Given a SymmetricMatrixShape of vectorized form [1, 2, 3] in MOI.PositiveSemidefinieConeTriangle(2), the following code returns the set of the original constraint Symmetric(Matrix[1 2; 2 3]) in PSDCone():

    julia> reshape_set(MOI.PositiveSemidefiniteConeTriangle(2), SymmetricMatrixShape(2))
    -PSDCone()
    source

    reshape_vector

    JuMP.reshape_vectorFunction
    reshape_vector(vectorized_form::Vector, shape::AbstractShape)

    Return an object in its original shape shape given its vectorized form vectorized_form.

    Example

    Given a SymmetricMatrixShape of vectorized form [1, 2, 3], the following code returns the matrix Symmetric(Matrix[1 2; 2 3]):

    julia> reshape_vector([1, 2, 3], SymmetricMatrixShape(2))
    +       )
    source

    reshape_set

    JuMP.reshape_setFunction
    reshape_set(vectorized_set::MOI.AbstractSet, shape::AbstractShape)

    Return a set in its original shape shape given its vectorized form vectorized_form.

    Example

    Given a SymmetricMatrixShape of vectorized form [1, 2, 3] in MOI.PositiveSemidefinieConeTriangle(2), the following code returns the set of the original constraint Symmetric(Matrix[1 2; 2 3]) in PSDCone():

    julia> reshape_set(MOI.PositiveSemidefiniteConeTriangle(2), SymmetricMatrixShape(2))
    +PSDCone()
    source

    reshape_vector

    JuMP.reshape_vectorFunction
    reshape_vector(vectorized_form::Vector, shape::AbstractShape)

    Return an object in its original shape shape given its vectorized form vectorized_form.

    Example

    Given a SymmetricMatrixShape of vectorized form [1, 2, 3], the following code returns the matrix Symmetric(Matrix[1 2; 2 3]):

    julia> reshape_vector([1, 2, 3], SymmetricMatrixShape(2))
     2×2 LinearAlgebra.Symmetric{Int64, Matrix{Int64}}:
      1  2
    - 2  3
    source

    result_count

    JuMP.result_countFunction
    result_count(model::GenericModel)

    Return the number of results available to query after a call to optimize!.

    Example

    julia> import Ipopt
    + 2  3
    source

    result_count

    JuMP.result_countFunction
    result_count(model::GenericModel)

    Return the number of results available to query after a call to optimize!.

    Example

    julia> import Ipopt
     
     julia> model = Model(Ipopt.Optimizer);
     
     julia> result_count(model)
    -0
    source

    reverse_sense

    JuMP.reverse_senseFunction
    reverse_sense(::Val{T}) where {T}

    Given an (in)equality symbol T, return a new Val object with the opposite (in)equality symbol.

    This function is intended for use in JuMP extensions.

    Example

    julia> reverse_sense(Val(:>=))
    -Val{:<=}()
    source

    set_attribute

    reverse_sense

    JuMP.reverse_senseFunction
    reverse_sense(::Val{T}) where {T}

    Given an (in)equality symbol T, return a new Val object with the opposite (in)equality symbol.

    This function is intended for use in JuMP extensions.

    Example

    julia> reverse_sense(Val(:>=))
    +Val{:<=}()
    source

    set_attribute

    JuMP.set_attributeFunction
    set_attribute(model::GenericModel, attr::MOI.AbstractModelAttribute, value)
     set_attribute(x::GenericVariableRef, attr::MOI.AbstractVariableAttribute, value)
     set_attribute(cr::ConstraintRef, attr::MOI.AbstractConstraintAttribute, value)

    Set the value of a solver-specifc attribute attr to value.

    This is equivalent to calling MOI.set with the associated MOI model and, for variables and constraints, with the associated MOI.VariableIndex or MOI.ConstraintIndex.

    Example

    julia> model = Model();
     
    @@ -1872,7 +1872,7 @@
     
     julia> set_attribute(x, MOI.VariableName(), "x_new")
     
    -julia> set_attribute(c, MOI.ConstraintName(), "c_new")
    source
    set_attribute(
    +julia> set_attribute(c, MOI.ConstraintName(), "c_new")
    source
    set_attribute(
         model::Union{GenericModel,MOI.OptimizerWithAttributes},
         attr::Union{AbstractString,MOI.AbstractOptimizerAttribute},
         value,
    @@ -1888,7 +1888,7 @@
     
     julia> set_attribute(opt, "output_flag", true)
     
    -julia> set_attribute(opt, MOI.RawOptimizerAttribute("output_flag"), false)
    source

    set_attributes

    JuMP.set_attributesFunction
    set_attributes(
    +julia> set_attribute(opt, MOI.RawOptimizerAttribute("output_flag"), false)
    source

    set_attributes

    JuMP.set_attributesFunction
    set_attributes(
         destination::Union{
             GenericModel,
             MOI.OptimizerWithAttributes,
    @@ -1906,7 +1906,7 @@
     
     julia> set_attribute(model, "tol", 1e-4)
     
    -julia> set_attribute(model, "max_iter", 100)
    source

    set_binary

    JuMP.set_binaryFunction
    set_binary(v::GenericVariableRef)

    Add a constraint on the variable v that it must take values in the set $\{0,1\}$.

    See also BinaryRef, is_binary, unset_binary.

    Example

    julia> model = Model();
    +julia> set_attribute(model, "max_iter", 100)
    source

    set_binary

    JuMP.set_binaryFunction
    set_binary(v::GenericVariableRef)

    Add a constraint on the variable v that it must take values in the set $\{0,1\}$.

    See also BinaryRef, is_binary, unset_binary.

    Example

    julia> model = Model();
     
     julia> @variable(model, x);
     
    @@ -1916,7 +1916,7 @@
     julia> set_binary(x)
     
     julia> is_binary(x)
    -true
    source

    set_dual_start_value

    JuMP.set_dual_start_valueFunction
    set_dual_start_value(con_ref::ConstraintRef, value)

    Set the dual start value (MOI attribute ConstraintDualStart) of the constraint con_ref to value.

    To remove a dual start value set it to nothing.

    See also dual_start_value.

    Example

    julia> model = Model();
    +true
    source

    set_dual_start_value

    JuMP.set_dual_start_valueFunction
    set_dual_start_value(con_ref::ConstraintRef, value)

    Set the dual start value (MOI attribute ConstraintDualStart) of the constraint con_ref to value.

    To remove a dual start value set it to nothing.

    See also dual_start_value.

    Example

    julia> model = Model();
     
     julia> @variable(model, x, start = 2.0);
     
    @@ -1931,7 +1931,7 @@
     
     julia> set_dual_start_value(c, nothing)
     
    -julia> dual_start_value(c)
    source

    set_integer

    set_integer

    JuMP.set_integerFunction
    set_integer(variable_ref::GenericVariableRef)

    Add an integrality constraint on the variable variable_ref.

    See also IntegerRef, is_integer, unset_integer.

    Example

    julia> model = Model();
     
     julia> @variable(model, x);
     
    @@ -1941,7 +1941,7 @@
     julia> set_integer(x)
     
     julia> is_integer(x)
    -true
    source

    set_lower_bound

    set_lower_bound

    set_name

    JuMP.set_nameFunction
    set_name(con_ref::ConstraintRef, s::AbstractString)

    Set a constraint's name attribute.

    Example

    julia> model = Model();
    +2.0
    source

    set_name

    JuMP.set_nameFunction
    set_name(con_ref::ConstraintRef, s::AbstractString)

    Set a constraint's name attribute.

    Example

    julia> model = Model();
     
     julia> @variable(model, x);
     
    @@ -1964,7 +1964,7 @@
     "my_constraint"
     
     julia> c
    -my_constraint : [2 x] ∈ Nonnegatives()
    source
    set_name(v::GenericVariableRef, s::AbstractString)

    Set a variable's name attribute.

    Example

    julia> model = Model();
    +my_constraint : [2 x] ∈ Nonnegatives()
    source
    set_name(v::GenericVariableRef, s::AbstractString)

    Set a variable's name attribute.

    Example

    julia> model = Model();
     
     julia> @variable(model, x)
     x
    @@ -1975,7 +1975,7 @@
     x_foo
     
     julia> name(x)
    -"x_foo"
    source

    set_normalized_coefficient

    set_normalized_coefficient

    JuMP.set_normalized_coefficientFunction
    set_normalized_coefficient(
         constraint::ConstraintRef,
         variable::GenericVariableRef,
         value::Number,
    @@ -1990,7 +1990,7 @@
     julia> set_normalized_coefficient(con, x, 4)
     
     julia> con
    -con : 4 x ≤ 2
    source
    set_normalized_coefficient(
    +con : 4 x ≤ 2
    source
    set_normalized_coefficient(
         constraints::AbstractVector{<:ConstraintRef},
         variables::AbstractVector{<:GenericVariableRef},
         values::AbstractVector{<:Number},
    @@ -2008,7 +2008,7 @@
     julia> set_normalized_coefficient([con, con], [x, y], [6, 7])
     
     julia> con
    -con : 6 x + 7 y ≤ 2
    source
    set_normalized_coefficient(
    +con : 6 x + 7 y ≤ 2
    source
    set_normalized_coefficient(
         con_ref::ConstraintRef,
         variable::AbstractVariableRef,
         new_coefficients::Vector{Tuple{Int64,T}},
    @@ -2023,7 +2023,7 @@
     julia> set_normalized_coefficient(con, x, [(1, 2.0), (2, 5.0)])
     
     julia> con
    -con : [2 x, 5 x] ∈ MathOptInterface.Nonnegatives(2)
    source
    set_normalized_coefficient(
    +con : [2 x, 5 x] ∈ MathOptInterface.Nonnegatives(2)
    source
    set_normalized_coefficient(
         constraint::ConstraintRef,
         variable_1:GenericVariableRef,
         variable_2:GenericVariableRef,
    @@ -2040,7 +2040,7 @@
     julia> set_normalized_coefficient(con, x[1], x[2], 5)
     
     julia> con
    -con : 4 x[1]² + 5 x[1]*x[2] + x[2] ≤ 2
    source
    set_normalized_coefficient(
    +con : 4 x[1]² + 5 x[1]*x[2] + x[2] ≤ 2
    source
    set_normalized_coefficient(
         constraints::AbstractVector{<:ConstraintRef},
         variables_1:AbstractVector{<:GenericVariableRef},
         variables_2:AbstractVector{<:GenericVariableRef},
    @@ -2055,7 +2055,7 @@
     julia> set_normalized_coefficient([con, con], [x[1], x[1]], [x[1], x[2]], [4, 5])
     
     julia> con
    -con : 4 x[1]² + 5 x[1]*x[2] + x[2] ≤ 2
    source

    set_normalized_rhs

    JuMP.set_normalized_rhsFunction
    set_normalized_rhs(constraint::ConstraintRef, value::Number)

    Set the right-hand side term of constraint to value.

    Note that prior to this step, JuMP will aggregate all constant terms onto the right-hand side of the constraint. For example, given a constraint 2x + 1 <= 2, set_normalized_rhs(con, 4) will create the constraint 2x <= 4, not 2x + 1 <= 4.

    Example

    julia> model = Model();
    +con : 4 x[1]² + 5 x[1]*x[2] + x[2] ≤ 2
    source

    set_normalized_rhs

    JuMP.set_normalized_rhsFunction
    set_normalized_rhs(constraint::ConstraintRef, value::Number)

    Set the right-hand side term of constraint to value.

    Note that prior to this step, JuMP will aggregate all constant terms onto the right-hand side of the constraint. For example, given a constraint 2x + 1 <= 2, set_normalized_rhs(con, 4) will create the constraint 2x <= 4, not 2x + 1 <= 4.

    Example

    julia> model = Model();
     
     julia> @variable(model, x);
     
    @@ -2065,7 +2065,7 @@
     julia> set_normalized_rhs(con, 4)
     
     julia> con
    -con : 2 x ≤ 4
    source
    set_normalized_rhs(
    +con : 2 x ≤ 4
    source
    set_normalized_rhs(
         constraints::AbstractVector{<:ConstraintRef},
         values::AbstractVector{<:Number}
     )

    Set the right-hand side terms of all constraints to values.

    Note that prior to this step, JuMP will aggregate all constant terms onto the right-hand side of the constraint. For example, given a constraint 2x + 1 <= 2, set_normalized_rhs([con], [4]) will create the constraint 2x <= 4, not 2x + 1 <= 4.

    Example

    julia> model = Model();
    @@ -2084,12 +2084,12 @@
     con1 : 2 x ≤ 4
     
     julia> con2
    -con2 : 3 x ≤ 5
    source

    set_objective

    set_objective

    JuMP.set_objectiveFunction
    set_objective(model::AbstractModel, sense::MOI.OptimizationSense, func)

    The functional equivalent of the @objective macro.

    Sets the objective sense and objective function simultaneously, and is equivalent to calling set_objective_sense and set_objective_function separately.

    Example

    julia> model = Model();
     
     julia> @variable(model, x)
     x
     
    -julia> set_objective(model, MIN_SENSE, x)
    source

    set_objective_coefficient

    set_objective_coefficient

    JuMP.set_objective_coefficientFunction
    set_objective_coefficient(
         model::GenericModel,
         variable::GenericVariableRef,
         coefficient::Real,
    @@ -2103,7 +2103,7 @@
     julia> set_objective_coefficient(model, x, 3)
     
     julia> objective_function(model)
    -3 x + 1
    source
    set_objective_coefficient(
    +3 x + 1
    source
    set_objective_coefficient(
         model::GenericModel,
         variables::Vector{<:GenericVariableRef},
         coefficients::Vector{<:Real},
    @@ -2119,7 +2119,7 @@
     julia> set_objective_coefficient(model, [x, y], [5, 4])
     
     julia> objective_function(model)
    -5 x + 4 y + 1
    source
    set_objective_coefficient(
    +5 x + 4 y + 1
    source
    set_objective_coefficient(
         model::GenericModel{T},
         variable_1::GenericVariableRef{T},
         variable_2::GenericVariableRef{T},
    @@ -2136,7 +2136,7 @@
     julia> set_objective_coefficient(model, x[1], x[2], 3)
     
     julia> objective_function(model)
    -2 x[1]² + 3 x[1]*x[2]
    source
    set_objective_coefficient(
    +2 x[1]² + 3 x[1]*x[2]
    source
    set_objective_coefficient(
         model::GenericModel{T},
         variables_1::AbstractVector{<:GenericVariableRef{T}},
         variables_2::AbstractVector{<:GenericVariableRef{T}},
    @@ -2151,7 +2151,7 @@
     julia> set_objective_coefficient(model, [x[1], x[1]], [x[1], x[2]], [2, 3])
     
     julia> objective_function(model)
    -2 x[1]² + 3 x[1]*x[2]
    source

    set_objective_function

    set_objective_function

    JuMP.set_objective_functionFunction
    set_objective_function(model::GenericModel, func::MOI.AbstractFunction)
     set_objective_function(model::GenericModel, func::AbstractJuMPScalar)
     set_objective_function(model::GenericModel, func::Real)
     set_objective_function(model::GenericModel, func::Vector{<:AbstractJuMPScalar})

    Sets the objective function of the model to the given function.

    See set_objective_sense to set the objective sense.

    These are low-level functions; the recommended way to set the objective is with the @objective macro.

    Example

    julia> model = Model();
    @@ -2166,7 +2166,7 @@
     julia> set_objective_function(model, 2 * x + 1)
     
     julia> objective_function(model)
    -2 x + 1
    source

    set_objective_sense

    JuMP.set_objective_senseFunction
    set_objective_sense(model::GenericModel, sense::MOI.OptimizationSense)

    Sets the objective sense of the model to the given sense.

    See set_objective_function to set the objective function.

    These are low-level functions; the recommended way to set the objective is with the @objective macro.

    Example

    julia> model = Model();
    +2 x + 1
    source

    set_objective_sense

    JuMP.set_objective_senseFunction
    set_objective_sense(model::GenericModel, sense::MOI.OptimizationSense)

    Sets the objective sense of the model to the given sense.

    See set_objective_function to set the objective function.

    These are low-level functions; the recommended way to set the objective is with the @objective macro.

    Example

    julia> model = Model();
     
     julia> objective_sense(model)
     FEASIBILITY_SENSE::OptimizationSense = 2
    @@ -2174,7 +2174,7 @@
     julia> set_objective_sense(model, MOI.MAX_SENSE)
     
     julia> objective_sense(model)
    -MAX_SENSE::OptimizationSense = 1
    source

    set_optimize_hook

    JuMP.set_optimize_hookFunction
    set_optimize_hook(model::GenericModel, f::Union{Function,Nothing})

    Set the function f as the optimize hook for model.

    f should have a signature f(model::GenericModel; kwargs...), where the kwargs are those passed to optimize!.

    Notes

    • The optimize hook should generally modify the model, or some external state in some way, and then call optimize!(model; ignore_optimize_hook = true) to optimize the problem, bypassing the hook.
    • Use set_optimize_hook(model, nothing) to unset an optimize hook.

    Example

    julia> model = Model();
    +MAX_SENSE::OptimizationSense = 1
    source

    set_optimize_hook

    JuMP.set_optimize_hookFunction
    set_optimize_hook(model::GenericModel, f::Union{Function,Nothing})

    Set the function f as the optimize hook for model.

    f should have a signature f(model::GenericModel; kwargs...), where the kwargs are those passed to optimize!.

    Notes

    • The optimize hook should generally modify the model, or some external state in some way, and then call optimize!(model; ignore_optimize_hook = true) to optimize the problem, bypassing the hook.
    • Use set_optimize_hook(model, nothing) to unset an optimize hook.

    Example

    julia> model = Model();
     
     julia> function my_hook(model::Model; kwargs...)
                println(kwargs)
    @@ -2191,7 +2191,7 @@
     Base.Pairs{Symbol, Bool, Tuple{Symbol}, @NamedTuple{test_arg::Bool}}(:test_arg => 1)
     Calling with `ignore_optimize_hook = true`
     ERROR: NoOptimizer()
    -[...]
    source

    set_optimizer

    set_optimizer

    JuMP.set_optimizerFunction
    set_optimizer(
         model::GenericModel,
         optimizer_factory;
         add_bridges::Bool = true,
    @@ -2201,7 +2201,7 @@
     
     julia> set_optimizer(model, () -> HiGHS.Optimizer())
     
    -julia> set_optimizer(model, HiGHS.Optimizer; add_bridges = false)
    source

    set_parameter_value

    set_parameter_value

    JuMP.set_parameter_valueFunction
    set_parameter_value(x::GenericVariableRef, value)

    Update the parameter constraint on the variable x to value.

    Errors if x is not a parameter.

    See also ParameterRef, is_parameter, parameter_value.

    Example

    julia> model = Model();
     
     julia> @variable(model, p in Parameter(2))
     p
    @@ -2212,7 +2212,7 @@
     julia> set_parameter_value(p, 2.5)
     
     julia> parameter_value(p)
    -2.5
    source

    set_silent

    JuMP.set_silentFunction
    set_silent(model::GenericModel)

    Takes precedence over any other attribute controlling verbosity and requires the solver to produce no output.

    See also: unset_silent.

    Example

    julia> import Ipopt
    +2.5
    source

    set_silent

    JuMP.set_silentFunction
    set_silent(model::GenericModel)

    Takes precedence over any other attribute controlling verbosity and requires the solver to produce no output.

    See also: unset_silent.

    Example

    julia> import Ipopt
     
     julia> model = Model(Ipopt.Optimizer);
     
    @@ -2224,7 +2224,7 @@
     julia> unset_silent(model)
     
     julia> get_attribute(model, MOI.Silent())
    -false
    source

    set_start_value

    set_start_value

    JuMP.set_start_valueFunction
    set_start_value(con_ref::ConstraintRef, value)

    Set the primal start value (MOI.ConstraintPrimalStart) of the constraint con_ref to value.

    To remove a primal start value set it to nothing.

    See also start_value.

    Example

    julia> model = Model();
     
     julia> @variable(model, x, start = 2.0);
     
    @@ -2239,7 +2239,7 @@
     
     julia> set_start_value(c, nothing)
     
    -julia> start_value(c)
    source
    set_start_value(variable::GenericVariableRef, value::Union{Real,Nothing})

    Set the start value (MOI.VariablePrimalStart) of the variable to value.

    Pass nothing to unset the start value.

    Note: VariablePrimalStarts are sometimes called "MIP-starts" or "warmstarts".

    See also: has_start_value, start_value.

    Example

    julia> model = Model();
    +julia> start_value(c)
    source
    set_start_value(variable::GenericVariableRef, value::Union{Real,Nothing})

    Set the start value (MOI.VariablePrimalStart) of the variable to value.

    Pass nothing to unset the start value.

    Note: VariablePrimalStarts are sometimes called "MIP-starts" or "warmstarts".

    See also: has_start_value, start_value.

    Example

    julia> model = Model();
     
     julia> @variable(model, x, start = 1.5);
     
    @@ -2265,13 +2265,13 @@
     true
     
     julia> start_value(y)
    -2.0
    source

    set_start_values

    set_start_values

    JuMP.set_start_valuesFunction
    set_start_values(
         model::GenericModel;
         variable_primal_start::Union{Nothing,Function} = value,
         constraint_primal_start::Union{Nothing,Function} = value,
         constraint_dual_start::Union{Nothing,Function} = dual,
         nonlinear_dual_start::Union{Nothing,Function} = nonlinear_dual_start_value,
    -)

    Set the primal and dual starting values in model using the functions provided.

    If any keyword argument is nothing, the corresponding start value is skipped.

    If the optimizer does not support setting the starting value, the value will be skipped.

    variable_primal_start

    This function controls the primal starting solution for the variables. It is equivalent to calling set_start_value for each variable, or setting the MOI.VariablePrimalStart attribute.

    If it is a function, it must have the form variable_primal_start(x::VariableRef) that maps each variable x to the starting primal value.

    The default is value.

    constraint_primal_start

    This function controls the primal starting solution for the constraints. It is equivalent to calling set_start_value for each constraint, or setting the MOI.ConstraintPrimalStart attribute.

    If it is a function, it must have the form constraint_primal_start(ci::ConstraintRef) that maps each constraint ci to the starting primal value.

    The default is value.

    constraint_dual_start

    This function controls the dual starting solution for the constraints. It is equivalent to calling set_dual_start_value for each constraint, or setting the MOI.ConstraintDualStart attribute.

    If it is a function, it must have the form constraint_dual_start(ci::ConstraintRef) that maps each constraint ci to the starting dual value.

    The default is dual.

    nonlinear_dual_start

    This function controls the dual starting solution for the nonlinear constraints It is equivalent to calling set_nonlinear_dual_start_value.

    If it is a function, it must have the form nonlinear_dual_start(model::GenericModel) that returns a vector corresponding to the dual start of the constraints.

    The default is nonlinear_dual_start_value.

    source

    set_string_names_on_creation

    JuMP.set_string_names_on_creationFunction
    set_string_names_on_creation(model::GenericModel, value::Bool)

    Set the default argument of the set_string_name keyword in the @variable and @constraint macros to value.

    The set_string_name keyword is used to determine whether to assign String names to all variables and constraints in model.

    By default, value is true. However, for larger models calling set_string_names_on_creation(model, false) can improve performance at the cost of reducing the readability of printing and solver log messages.

    Example

    julia> import HiGHS
    +)

    Set the primal and dual starting values in model using the functions provided.

    If any keyword argument is nothing, the corresponding start value is skipped.

    If the optimizer does not support setting the starting value, the value will be skipped.

    variable_primal_start

    This function controls the primal starting solution for the variables. It is equivalent to calling set_start_value for each variable, or setting the MOI.VariablePrimalStart attribute.

    If it is a function, it must have the form variable_primal_start(x::VariableRef) that maps each variable x to the starting primal value.

    The default is value.

    constraint_primal_start

    This function controls the primal starting solution for the constraints. It is equivalent to calling set_start_value for each constraint, or setting the MOI.ConstraintPrimalStart attribute.

    If it is a function, it must have the form constraint_primal_start(ci::ConstraintRef) that maps each constraint ci to the starting primal value.

    The default is value.

    constraint_dual_start

    This function controls the dual starting solution for the constraints. It is equivalent to calling set_dual_start_value for each constraint, or setting the MOI.ConstraintDualStart attribute.

    If it is a function, it must have the form constraint_dual_start(ci::ConstraintRef) that maps each constraint ci to the starting dual value.

    The default is dual.

    nonlinear_dual_start

    This function controls the dual starting solution for the nonlinear constraints It is equivalent to calling set_nonlinear_dual_start_value.

    If it is a function, it must have the form nonlinear_dual_start(model::GenericModel) that returns a vector corresponding to the dual start of the constraints.

    The default is nonlinear_dual_start_value.

    source

    set_string_names_on_creation

    JuMP.set_string_names_on_creationFunction
    set_string_names_on_creation(model::GenericModel, value::Bool)

    Set the default argument of the set_string_name keyword in the @variable and @constraint macros to value.

    The set_string_name keyword is used to determine whether to assign String names to all variables and constraints in model.

    By default, value is true. However, for larger models calling set_string_names_on_creation(model, false) can improve performance at the cost of reducing the readability of printing and solver log messages.

    Example

    julia> import HiGHS
     
     julia> model = Model(HiGHS.Optimizer);
     
    @@ -2281,7 +2281,7 @@
     julia> set_string_names_on_creation(model, false)
     
     julia> set_string_names_on_creation(model)
    -false
    source

    set_time_limit_sec

    set_time_limit_sec

    set_upper_bound

    set_upper_bound

    shadow_price

    JuMP.shadow_priceFunction
    shadow_price(con_ref::ConstraintRef)

    Return the change in the objective from an infinitesimal relaxation of the constraint.

    The shadow price is computed from dual and can be queried only when has_duals is true and the objective sense is MIN_SENSE or MAX_SENSE (not FEASIBILITY_SENSE).

    See also reduced_cost.

    Comparison to dual

    The shadow prices differ at most in sign from the dual value depending on the objective sense. The differences are summarized in the table:

    MinMax
    f(x) <= b+1-1
    f(x) >= b-1+1

    Notes

    • The function simply translates signs from dual and does not validate the conditions needed to guarantee the sensitivity interpretation of the shadow price. The caller is responsible, for example, for checking whether the solver converged to an optimal primal-dual pair or a proof of infeasibility.
    • The computation is based on the current objective sense of the model. If this has changed since the last solve, the results will be incorrect.
    • Relaxation of equality constraints (and hence the shadow price) is defined based on which sense of the equality constraint is active.

    Example

    julia> import HiGHS
    +2.0
    source

    shadow_price

    JuMP.shadow_priceFunction
    shadow_price(con_ref::ConstraintRef)

    Return the change in the objective from an infinitesimal relaxation of the constraint.

    The shadow price is computed from dual and can be queried only when has_duals is true and the objective sense is MIN_SENSE or MAX_SENSE (not FEASIBILITY_SENSE).

    See also reduced_cost.

    Comparison to dual

    The shadow prices differ at most in sign from the dual value depending on the objective sense. The differences are summarized in the table:

    MinMax
    f(x) <= b+1-1
    f(x) >= b-1+1

    Notes

    • The function simply translates signs from dual and does not validate the conditions needed to guarantee the sensitivity interpretation of the shadow price. The caller is responsible, for example, for checking whether the solver converged to an optimal primal-dual pair or a proof of infeasibility.
    • The computation is based on the current objective sense of the model. If this has changed since the last solve, the results will be incorrect.
    • Relaxation of equality constraints (and hence the shadow price) is defined based on which sense of the equality constraint is active.

    Example

    julia> import HiGHS
     
     julia> model = Model(HiGHS.Optimizer);
     
    @@ -2323,7 +2323,7 @@
     true
     
     julia> shadow_price(c)
    -2.0
    source

    shape

    JuMP.shapeFunction
    shape(c::AbstractConstraint)::AbstractShape

    Return the shape of the constraint c.

    Example

    julia> model = Model();
    +2.0
    source

    shape

    JuMP.shapeFunction
    shape(c::AbstractConstraint)::AbstractShape

    Return the shape of the constraint c.

    Example

    julia> model = Model();
     
     julia> @variable(model, x[1:2]);
     
    @@ -2335,20 +2335,20 @@
     julia> d = @constraint(model, x in SOS1());
     
     julia> shape(constraint_object(d))
    -VectorShape()
    source

    show_backend_summary

    JuMP.show_backend_summaryFunction
    show_backend_summary(io::IO, model::GenericModel)

    Print a summary of the optimizer backing model.

    Extensions

    AbstractModels should implement this method.

    Example

    julia> model = Model();
    +VectorShape()
    source

    show_backend_summary

    JuMP.show_backend_summaryFunction
    show_backend_summary(io::IO, model::GenericModel)

    Print a summary of the optimizer backing model.

    Extensions

    AbstractModels should implement this method.

    Example

    julia> model = Model();
     
     julia> show_backend_summary(stdout, model)
     Model mode: AUTOMATIC
     CachingOptimizer state: NO_OPTIMIZER
    -Solver name: No optimizer attached.
    source

    show_constraints_summary

    JuMP.show_constraints_summaryFunction
    show_constraints_summary(io::IO, model::AbstractModel)

    Write to io a summary of the number of constraints.

    Extensions

    AbstractModels should implement this method.

    Example

    julia> model = Model();
    +Solver name: No optimizer attached.
    source

    show_constraints_summary

    JuMP.show_constraints_summaryFunction
    show_constraints_summary(io::IO, model::AbstractModel)

    Write to io a summary of the number of constraints.

    Extensions

    AbstractModels should implement this method.

    Example

    julia> model = Model();
     
     julia> @variable(model, x >= 0);
     
     julia> show_constraints_summary(stdout, model)
    -`VariableRef`-in-`MathOptInterface.GreaterThan{Float64}`: 1 constraint
    source

    show_objective_function_summary

    JuMP.show_objective_function_summaryFunction
    show_objective_function_summary(io::IO, model::AbstractModel)

    Write to io a summary of the objective function type.

    Extensions

    AbstractModels should implement this method.

    Example

    julia> model = Model();
    +`VariableRef`-in-`MathOptInterface.GreaterThan{Float64}`: 1 constraint
    source

    show_objective_function_summary

    JuMP.show_objective_function_summaryFunction
    show_objective_function_summary(io::IO, model::AbstractModel)

    Write to io a summary of the objective function type.

    Extensions

    AbstractModels should implement this method.

    Example

    julia> model = Model();
     
     julia> show_objective_function_summary(stdout, model)
    -Objective function type: AffExpr
    source

    simplex_iterations

    JuMP.simplex_iterationsFunction
    simplex_iterations(model::GenericModel)

    If available, returns the cumulative number of simplex iterations during the most-recent optimization (the MOI.SimplexIterations attribute).

    Throws a MOI.GetAttributeNotAllowed error if the attribute is not implemented by the solver.

    Example

    julia> import HiGHS
    +Objective function type: AffExpr
    source

    simplex_iterations

    JuMP.simplex_iterationsFunction
    simplex_iterations(model::GenericModel)

    If available, returns the cumulative number of simplex iterations during the most-recent optimization (the MOI.SimplexIterations attribute).

    Throws a MOI.GetAttributeNotAllowed error if the attribute is not implemented by the solver.

    Example

    julia> import HiGHS
     
     julia> model = Model(HiGHS.Optimizer);
     
    @@ -2357,7 +2357,7 @@
     julia> optimize!(model)
     
     julia> simplex_iterations(model)
    -0
    source

    solution_summary

    JuMP.solution_summaryFunction
    solution_summary(model::GenericModel; result::Int = 1, verbose::Bool = false)

    Return a struct that can be used print a summary of the solution in result result.

    If verbose=true, write out the primal solution for every variable and the dual solution for every constraint, excluding those with empty names.

    Example

    When called at the REPL, the summary is automatically printed:

    julia> model = Model();
    +0
    source

    solution_summary

    JuMP.solution_summaryFunction
    solution_summary(model::GenericModel; result::Int = 1, verbose::Bool = false)

    Return a struct that can be used print a summary of the solution in result result.

    If verbose=true, write out the primal solution for every variable and the dual solution for every constraint, excluding those with empty names.

    Example

    When called at the REPL, the summary is automatically printed:

    julia> model = Model();
     
     julia> solution_summary(model)
     * Solver : No optimizer attached.
    @@ -2393,7 +2393,7 @@
       Primal status      : NO_SOLUTION
       Dual status        : NO_SOLUTION
     
    -* Work counters
    source

    solve_time

    JuMP.solve_timeFunction
    solve_time(model::GenericModel)

    If available, returns the solve time in wall-clock seconds reported by the solver (the MOI.SolveTimeSec attribute).

    Throws a MOI.GetAttributeNotAllowed error if the attribute is not implemented by the solver.

    Example

    julia> import HiGHS
    +* Work counters
    source

    solve_time

    JuMP.solve_timeFunction
    solve_time(model::GenericModel)

    If available, returns the solve time in wall-clock seconds reported by the solver (the MOI.SolveTimeSec attribute).

    Throws a MOI.GetAttributeNotAllowed error if the attribute is not implemented by the solver.

    Example

    julia> import HiGHS
     
     julia> model = Model(HiGHS.Optimizer);
     
    @@ -2402,7 +2402,7 @@
     julia> optimize!(model)
     
     julia> solve_time(model)
    -1.0488089174032211e-5
    source

    solver_name

    JuMP.solver_nameFunction
    solver_name(model::GenericModel)

    If available, returns the MOI.SolverName property of the underlying optimizer.

    Returns "No optimizer attached." in AUTOMATIC or MANUAL modes when no optimizer is attached.

    Returns "SolverName() attribute not implemented by the optimizer." if the attribute is not implemented.

    Example

    julia> import Ipopt
    +1.0488089174032211e-5
    source

    solver_name

    JuMP.solver_nameFunction
    solver_name(model::GenericModel)

    If available, returns the MOI.SolverName property of the underlying optimizer.

    Returns "No optimizer attached." in AUTOMATIC or MANUAL modes when no optimizer is attached.

    Returns "SolverName() attribute not implemented by the optimizer." if the attribute is not implemented.

    Example

    julia> import Ipopt
     
     julia> model = Model(Ipopt.Optimizer);
     
    @@ -2417,7 +2417,7 @@
     julia> model = Model(MOI.FileFormats.MPS.Model);
     
     julia> solver_name(model)
    -"SolverName() attribute not implemented by the optimizer."
    source

    start_value

    JuMP.start_valueFunction
    start_value(con_ref::ConstraintRef)

    Return the primal start value (MOI.ConstraintPrimalStart) of the constraint con_ref.

    If no primal start value has been set, start_value will return nothing.

    See also set_start_value.

    Example

    julia> model = Model();
    +"SolverName() attribute not implemented by the optimizer."
    source

    start_value

    JuMP.start_valueFunction
    start_value(con_ref::ConstraintRef)

    Return the primal start value (MOI.ConstraintPrimalStart) of the constraint con_ref.

    If no primal start value has been set, start_value will return nothing.

    See also set_start_value.

    Example

    julia> model = Model();
     
     julia> @variable(model, x, start = 2.0);
     
    @@ -2432,7 +2432,7 @@
     
     julia> set_start_value(c, nothing)
     
    -julia> start_value(c)
    source
    start_value(v::GenericVariableRef)

    Return the start value (MOI.VariablePrimalStart) of the variable v.

    Note: VariablePrimalStarts are sometimes called "MIP-starts" or "warmstarts".

    See also: has_start_value, set_start_value.

    Example

    julia> model = Model();
    +julia> start_value(c)
    source
    start_value(v::GenericVariableRef)

    Return the start value (MOI.VariablePrimalStart) of the variable v.

    Note: VariablePrimalStarts are sometimes called "MIP-starts" or "warmstarts".

    See also: has_start_value, set_start_value.

    Example

    julia> model = Model();
     
     julia> @variable(model, x, start = 1.5);
     
    @@ -2453,12 +2453,12 @@
     true
     
     julia> start_value(y)
    -2.0
    source

    termination_status

    termination_status

    time_limit_sec

    time_limit_sec

    JuMP.time_limit_secFunction
    time_limit_sec(model::GenericModel)

    Return the time limit (in seconds) of the model.

    Returns nothing if unset.

    See also: set_time_limit_sec, unset_time_limit_sec.

    Example

    julia> import Ipopt
     
     julia> model = Model(Ipopt.Optimizer);
     
    @@ -2471,7 +2471,7 @@
     
     julia> unset_time_limit_sec(model)
     
    -julia> time_limit_sec(model)
    source

    triangle_vec

    JuMP.triangle_vecFunction
    triangle_vec(matrix::Matrix)

    Return the upper triangle of a matrix concatenated into a vector in the order required by JuMP and MathOptInterface for Triangle sets.

    Example

    julia> model = Model();
    +julia> time_limit_sec(model)
    source

    triangle_vec

    JuMP.triangle_vecFunction
    triangle_vec(matrix::Matrix)

    Return the upper triangle of a matrix concatenated into a vector in the order required by JuMP and MathOptInterface for Triangle sets.

    Example

    julia> model = Model();
     
     julia> @variable(model, X[1:3, 1:3], Symmetric);
     
    @@ -2479,7 +2479,7 @@
     t
     
     julia> @constraint(model, [t; triangle_vec(X)] in MOI.RootDetConeTriangle(3))
    -[t, X[1,1], X[1,2], X[2,2], X[1,3], X[2,3], X[3,3]] ∈ MathOptInterface.RootDetConeTriangle(3)
    source

    unfix

    JuMP.unfixFunction
    unfix(v::GenericVariableRef)

    Delete the fixing constraint of a variable.

    Error if one does not exist.

    See also FixRef, is_fixed, fix_value, fix.

    Example

    julia> model = Model();
    +[t, X[1,1], X[1,2], X[2,2], X[1,3], X[2,3], X[3,3]] ∈ MathOptInterface.RootDetConeTriangle(3)
    source

    unfix

    JuMP.unfixFunction
    unfix(v::GenericVariableRef)

    Delete the fixing constraint of a variable.

    Error if one does not exist.

    See also FixRef, is_fixed, fix_value, fix.

    Example

    julia> model = Model();
     
     julia> @variable(model, x == 1);
     
    @@ -2489,7 +2489,7 @@
     julia> unfix(x)
     
     julia> is_fixed(x)
    -false
    source

    unregister

    JuMP.unregisterFunction
    unregister(model::GenericModel, key::Symbol)

    Unregister the name key from model so that a new variable, constraint, or expression can be created with the same key.

    Note that this will not delete the object model[key]; it will just remove the reference at model[key]. To delete the object, use delete as well.

    See also: delete, object_dictionary.

    Example

    julia> model = Model();
    +false
    source

    unregister

    JuMP.unregisterFunction
    unregister(model::GenericModel, key::Symbol)

    Unregister the name key from model so that a new variable, constraint, or expression can be created with the same key.

    Note that this will not delete the object model[key]; it will just remove the reference at model[key]. To delete the object, use delete as well.

    See also: delete, object_dictionary.

    Example

    julia> model = Model();
     
     julia> @variable(model, x)
     x
    @@ -2516,7 +2516,7 @@
     x
     
     julia> num_variables(model)
    -2
    source

    unsafe_backend

    JuMP.unsafe_backendFunction
    unsafe_backend(model::GenericModel)

    Return the innermost optimizer associated with the JuMP model model.

    This function should only be used by advanced users looking to access low-level solver-specific functionality. It has a high-risk of incorrect usage. We strongly suggest you use the alternative suggested below.

    See also: backend.

    To obtain the index of a variable or constraint in the unsafe backend, use optimizer_index.

    Unsafe behavior

    This function is unsafe for two main reasons.

    First, the formulation and order of variables and constraints in the unsafe backend may be different to the variables and constraints in model. This can happen because of bridges, or because the solver requires the variables or constraints in a specific order. In addition, the variable or constraint index returned by index at the JuMP level may be different to the index of the corresponding variable or constraint in the unsafe_backend. There is no solution to this. Use the alternative suggested below instead.

    Second, the unsafe_backend may be empty, or lack some modifications made to the JuMP model. Thus, before calling unsafe_backend you should first call MOI.Utilities.attach_optimizer to ensure that the backend is synchronized with the JuMP model.

    julia> import HiGHS
    +2
    source

    unsafe_backend

    JuMP.unsafe_backendFunction
    unsafe_backend(model::GenericModel)

    Return the innermost optimizer associated with the JuMP model model.

    This function should only be used by advanced users looking to access low-level solver-specific functionality. It has a high-risk of incorrect usage. We strongly suggest you use the alternative suggested below.

    See also: backend.

    To obtain the index of a variable or constraint in the unsafe backend, use optimizer_index.

    Unsafe behavior

    This function is unsafe for two main reasons.

    First, the formulation and order of variables and constraints in the unsafe backend may be different to the variables and constraints in model. This can happen because of bridges, or because the solver requires the variables or constraints in a specific order. In addition, the variable or constraint index returned by index at the JuMP level may be different to the index of the corresponding variable or constraint in the unsafe_backend. There is no solution to this. Use the alternative suggested below instead.

    Second, the unsafe_backend may be empty, or lack some modifications made to the JuMP model. Thus, before calling unsafe_backend you should first call MOI.Utilities.attach_optimizer to ensure that the backend is synchronized with the JuMP model.

    julia> import HiGHS
     
     julia> model = Model(HiGHS.Optimizer)
     A JuMP Model
    @@ -2557,7 +2557,7 @@
     A HiGHS model with 1 columns and 0 rows.
     
     julia> index(x)
    -MOI.VariableIndex(1)
    source

    unset_binary

    unset_binary

    JuMP.unset_binaryFunction
    unset_binary(variable_ref::GenericVariableRef)

    Remove the binary constraint on the variable variable_ref.

    See also BinaryRef, is_binary, set_binary.

    Example

    julia> model = Model();
     
     julia> @variable(model, x, Bin);
     
    @@ -2567,7 +2567,7 @@
     julia> unset_binary(x)
     
     julia> is_binary(x)
    -false
    source

    unset_integer

    unset_integer

    JuMP.unset_integerFunction
    unset_integer(variable_ref::GenericVariableRef)

    Remove the integrality constraint on the variable variable_ref.

    Errors if one does not exist.

    See also IntegerRef, is_integer, set_integer.

    Example

    julia> model = Model();
     
     julia> @variable(model, x, Int);
     
    @@ -2577,7 +2577,7 @@
     julia> unset_integer(x)
     
     julia> is_integer(x)
    -false
    source

    unset_silent

    JuMP.unset_silentFunction
    unset_silent(model::GenericModel)

    Neutralize the effect of the set_silent function and let the solver attributes control the verbosity.

    See also: set_silent.

    Example

    julia> import Ipopt
    +false
    source

    unset_silent

    JuMP.unset_silentFunction
    unset_silent(model::GenericModel)

    Neutralize the effect of the set_silent function and let the solver attributes control the verbosity.

    See also: set_silent.

    Example

    julia> import Ipopt
     
     julia> model = Model(Ipopt.Optimizer);
     
    @@ -2589,7 +2589,7 @@
     julia> unset_silent(model)
     
     julia> get_attribute(model, MOI.Silent())
    -false
    source

    unset_time_limit_sec

    unset_time_limit_sec

    JuMP.unset_time_limit_secFunction
    unset_time_limit_sec(model::GenericModel)

    Unset the time limit of the solver.

    See also: set_time_limit_sec, time_limit_sec.

    Example

    julia> import Ipopt
     
     julia> model = Model(Ipopt.Optimizer);
     
    @@ -2602,19 +2602,19 @@
     
     julia> unset_time_limit_sec(model)
     
    -julia> time_limit_sec(model)
    source

    upper_bound

    upper_bound

    value

    JuMP.valueFunction
    value(con_ref::ConstraintRef; result::Int = 1)

    Return the primal value of constraint con_ref associated with result index result of the most-recent solution returned by the solver.

    That is, if con_ref is the reference of a constraint func-in-set, it returns the value of func evaluated at the value of the variables (given by value(::GenericVariableRef)).

    Use has_values to check if a result exists before asking for values.

    See also: result_count.

    Note

    For scalar constraints, the constant is moved to the set so it is not taken into account in the primal value of the constraint. For instance, the constraint @constraint(model, 2x + 3y + 1 == 5) is transformed into 2x + 3y-in-MOI.EqualTo(4) so the value returned by this function is the evaluation of 2x + 3y.

    source
    value(var_value::Function, con_ref::ConstraintRef)

    Evaluate the primal value of the constraint con_ref using var_value(v) as the value for each variable v.

    source
    value(v::GenericVariableRef; result = 1)

    Return the value of variable v associated with result index result of the most-recent returned by the solver.

    Use has_values to check if a result exists before asking for values.

    See also: result_count.

    source
    value(var_value::Function, v::GenericVariableRef)

    Evaluate the value of the variable v as var_value(v).

    source
    value(var_value::Function, ex::GenericAffExpr)

    Evaluate ex using var_value(v) as the value for each variable v.

    source
    value(v::GenericAffExpr; result::Int = 1)

    Return the value of the GenericAffExpr v associated with result index result of the most-recent solution returned by the solver.

    See also: result_count.

    source
    value(var_value::Function, ex::GenericQuadExpr)

    Evaluate ex using var_value(v) as the value for each variable v.

    source
    value(v::GenericQuadExpr; result::Int = 1)

    Return the value of the GenericQuadExpr v associated with result index result of the most-recent solution returned by the solver.

    Replaces getvalue for most use cases.

    See also: result_count.

    source
    value(p::NonlinearParameter)

    Return the current value stored in the nonlinear parameter p.

    Example

    julia> model = Model();
    +1.0
    source

    value

    JuMP.valueFunction
    value(con_ref::ConstraintRef; result::Int = 1)

    Return the primal value of constraint con_ref associated with result index result of the most-recent solution returned by the solver.

    That is, if con_ref is the reference of a constraint func-in-set, it returns the value of func evaluated at the value of the variables (given by value(::GenericVariableRef)).

    Use has_values to check if a result exists before asking for values.

    See also: result_count.

    Note

    For scalar constraints, the constant is moved to the set so it is not taken into account in the primal value of the constraint. For instance, the constraint @constraint(model, 2x + 3y + 1 == 5) is transformed into 2x + 3y-in-MOI.EqualTo(4) so the value returned by this function is the evaluation of 2x + 3y.

    source
    value(var_value::Function, con_ref::ConstraintRef)

    Evaluate the primal value of the constraint con_ref using var_value(v) as the value for each variable v.

    source
    value(v::GenericVariableRef; result = 1)

    Return the value of variable v associated with result index result of the most-recent returned by the solver.

    Use has_values to check if a result exists before asking for values.

    See also: result_count.

    source
    value(var_value::Function, v::GenericVariableRef)

    Evaluate the value of the variable v as var_value(v).

    source
    value(var_value::Function, ex::GenericAffExpr)

    Evaluate ex using var_value(v) as the value for each variable v.

    source
    value(v::GenericAffExpr; result::Int = 1)

    Return the value of the GenericAffExpr v associated with result index result of the most-recent solution returned by the solver.

    See also: result_count.

    source
    value(var_value::Function, ex::GenericQuadExpr)

    Evaluate ex using var_value(v) as the value for each variable v.

    source
    value(v::GenericQuadExpr; result::Int = 1)

    Return the value of the GenericQuadExpr v associated with result index result of the most-recent solution returned by the solver.

    Replaces getvalue for most use cases.

    See also: result_count.

    source
    value(p::NonlinearParameter)

    Return the current value stored in the nonlinear parameter p.

    Example

    julia> model = Model();
     
     julia> @NLparameter(model, p == 10)
     p == 10.0
     
     julia> value(p)
    -10.0
    source
    value(ex::NonlinearExpression; result::Int = 1)

    Return the value of the NonlinearExpression ex associated with result index result of the most-recent solution returned by the solver.

    See also: result_count.

    source
    value(var_value::Function, ex::NonlinearExpression)

    Evaluate ex using var_value(v) as the value for each variable v.

    source
    value(c::NonlinearConstraintRef; result::Int = 1)

    Return the value of the NonlinearConstraintRef c associated with result index result of the most-recent solution returned by the solver.

    See also: result_count.

    source
    value(var_value::Function, c::NonlinearConstraintRef)

    Evaluate c using var_value(v) as the value for each variable v.

    source

    value_type

    JuMP.value_typeFunction
    value_type(::Type{<:Union{AbstractModel,AbstractVariableRef}})

    Return the return type of value for variables of that model. It defaults to Float64 if it is not implemented.

    Example

    julia> value_type(GenericModel{BigFloat})
    -BigFloat
    source

    variable_by_name

    JuMP.variable_by_nameFunction
    variable_by_name(
    +10.0
    source
    value(ex::NonlinearExpression; result::Int = 1)

    Return the value of the NonlinearExpression ex associated with result index result of the most-recent solution returned by the solver.

    See also: result_count.

    source
    value(var_value::Function, ex::NonlinearExpression)

    Evaluate ex using var_value(v) as the value for each variable v.

    source
    value(c::NonlinearConstraintRef; result::Int = 1)

    Return the value of the NonlinearConstraintRef c associated with result index result of the most-recent solution returned by the solver.

    See also: result_count.

    source
    value(var_value::Function, c::NonlinearConstraintRef)

    Evaluate c using var_value(v) as the value for each variable v.

    source

    value_type

    JuMP.value_typeFunction
    value_type(::Type{<:Union{AbstractModel,AbstractVariableRef}})

    Return the return type of value for variables of that model. It defaults to Float64 if it is not implemented.

    Example

    julia> value_type(GenericModel{BigFloat})
    +BigFloat
    source

    variable_by_name

    JuMP.variable_by_nameFunction
    variable_by_name(
         model::AbstractModel,
         name::String,
     )::Union{AbstractVariableRef,Nothing}

    Returns the reference of the variable with name attribute name or Nothing if no variable has this name attribute. Throws an error if several variables have name as their name attribute.

    Example

    julia> model = Model();
    @@ -2657,12 +2657,12 @@
      u[2]
     
     julia> variable_by_name(model, "u[2]")
    -u[2]
    source

    variable_ref_type

    JuMP.variable_ref_typeFunction
    variable_ref_type(::Union{F,Type{F}}) where {F}

    A helper function used internally by JuMP and some JuMP extensions. Returns the variable type associated with the model or expression type F.

    source

    vectorize

    JuMP.vectorizeFunction
    vectorize(matrix::AbstractMatrix, ::Shape)

    Convert the matrix into a vector according to Shape.

    source

    write_to_file

    variable_ref_type

    JuMP.variable_ref_typeFunction
    variable_ref_type(::Union{F,Type{F}}) where {F}

    A helper function used internally by JuMP and some JuMP extensions. Returns the variable type associated with the model or expression type F.

    source

    vectorize

    JuMP.vectorizeFunction
    vectorize(matrix::AbstractMatrix, ::Shape)

    Convert the matrix into a vector according to Shape.

    source

    write_to_file

    JuMP.write_to_fileFunction
    write_to_file(
         model::GenericModel,
         filename::String;
         format::MOI.FileFormats.FileFormat = MOI.FileFormats.FORMAT_AUTOMATIC,
         kwargs...,
    -)

    Write the JuMP model model to filename in the format format.

    If the filename ends in .gz, it will be compressed using GZip. If the filename ends in .bz2, it will be compressed using BZip2.

    Other kwargs are passed to the Model constructor of the chosen format.

    source

    AbstractConstraint

    JuMP.AbstractConstraintType
    abstract type AbstractConstraint

    An abstract base type for all constraint types. AbstractConstraints store the function and set directly, unlike ConstraintRefs that are merely references to constraints stored in a model. AbstractConstraints do not need to be attached to a model.

    source

    AbstractJuMPScalar

    JuMP.AbstractJuMPScalarType
    AbstractJuMPScalar <: MutableArithmetics.AbstractMutable

    Abstract base type for all scalar types

    The subtyping of AbstractMutable will allow calls of some Base functions to be redirected to a method in MA that handles type promotion more carefully (for example the promotion in sparse matrix products in SparseArrays usually does not work for JuMP types) and exploits the mutability of AffExpr and QuadExpr.

    source

    AbstractModel

    JuMP.AbstractModelType
    AbstractModel

    An abstract type that should be subtyped for users creating JuMP extensions.

    source

    AbstractScalarSet

    JuMP.AbstractScalarSetType
    AbstractScalarSet

    An abstract type for defining new scalar sets in JuMP.

    Implement moi_set(::AbstractScalarSet) to convert the type into an MOI set.

    See also: moi_set.

    source

    AbstractShape

    AbstractVariable

    AbstractVariableRef

    JuMP.AbstractVariableRefType
    AbstractVariableRef

    Variable returned by add_variable. Affine (resp. quadratic) operations with variables of type V<:AbstractVariableRef and coefficients of type T create a GenericAffExpr{T,V} (resp. GenericQuadExpr{T,V}).

    source

    AbstractVectorSet

    JuMP.AbstractVectorSetType
    AbstractVectorSet

    An abstract type for defining new sets in JuMP.

    Implement moi_set(::AbstractVectorSet, dim::Int) to convert the type into an MOI set.

    See also: moi_set.

    source

    AffExpr

    ArrayShape

    JuMP.ArrayShapeType
    ArrayShape{N}(dims::NTuple{N,Int}) where {N}

    An AbstractShape that represents array-valued constraints.

    Example

    julia> model = Model();
    +)

    Write the JuMP model model to filename in the format format.

    If the filename ends in .gz, it will be compressed using GZip. If the filename ends in .bz2, it will be compressed using BZip2.

    Other kwargs are passed to the Model constructor of the chosen format.

    source

    AbstractConstraint

    JuMP.AbstractConstraintType
    abstract type AbstractConstraint

    An abstract base type for all constraint types. AbstractConstraints store the function and set directly, unlike ConstraintRefs that are merely references to constraints stored in a model. AbstractConstraints do not need to be attached to a model.

    source

    AbstractJuMPScalar

    JuMP.AbstractJuMPScalarType
    AbstractJuMPScalar <: MutableArithmetics.AbstractMutable

    Abstract base type for all scalar types

    The subtyping of AbstractMutable will allow calls of some Base functions to be redirected to a method in MA that handles type promotion more carefully (for example the promotion in sparse matrix products in SparseArrays usually does not work for JuMP types) and exploits the mutability of AffExpr and QuadExpr.

    source

    AbstractModel

    JuMP.AbstractModelType
    AbstractModel

    An abstract type that should be subtyped for users creating JuMP extensions.

    source

    AbstractScalarSet

    JuMP.AbstractScalarSetType
    AbstractScalarSet

    An abstract type for defining new scalar sets in JuMP.

    Implement moi_set(::AbstractScalarSet) to convert the type into an MOI set.

    See also: moi_set.

    source

    AbstractShape

    AbstractVariable

    AbstractVariableRef

    JuMP.AbstractVariableRefType
    AbstractVariableRef

    Variable returned by add_variable. Affine (resp. quadratic) operations with variables of type V<:AbstractVariableRef and coefficients of type T create a GenericAffExpr{T,V} (resp. GenericQuadExpr{T,V}).

    source

    AbstractVectorSet

    JuMP.AbstractVectorSetType
    AbstractVectorSet

    An abstract type for defining new sets in JuMP.

    Implement moi_set(::AbstractVectorSet, dim::Int) to convert the type into an MOI set.

    See also: moi_set.

    source

    AffExpr

    ArrayShape

    JuMP.ArrayShapeType
    ArrayShape{N}(dims::NTuple{N,Int}) where {N}

    An AbstractShape that represents array-valued constraints.

    Example

    julia> model = Model();
     
     julia> @variable(model, x[1:2, 1:3]);
     
    @@ -2671,12 +2671,12 @@
      x[2,1]  x[2,2]  x[2,3]] ∈ Nonnegatives()
     
     julia> shape(constraint_object(c))
    -ArrayShape{2}((2, 3))
    source

    BinaryRef

    JuMP.BinaryRefFunction
    BinaryRef(v::GenericVariableRef)

    Return a constraint reference to the constraint constraining v to be binary. Errors if one does not exist.

    See also is_binary, set_binary, unset_binary.

    Example

    julia> model = Model();
    +ArrayShape{2}((2, 3))
    source

    BinaryRef

    JuMP.BinaryRefFunction
    BinaryRef(v::GenericVariableRef)

    Return a constraint reference to the constraint constraining v to be binary. Errors if one does not exist.

    See also is_binary, set_binary, unset_binary.

    Example

    julia> model = Model();
     
     julia> @variable(model, x, Bin);
     
     julia> BinaryRef(x)
    -x binary
    source

    BridgeableConstraint

    BridgeableConstraint

    JuMP.BridgeableConstraintType
    BridgeableConstraint(
         constraint::C,
         bridge_type::B;
         coefficient_type::Type{T} = Float64,
    @@ -2691,7 +2691,7 @@
     )
         constraint = ScalarConstraint(func, set)
         return BridgeableConstraint(constraint, CustomBridge)
    -end

    Note

    JuMP extensions should extend JuMP.build_constraint only if they also defined CustomSet, for three reasons:

    1. It is problematic if multiple extensions overload the same JuMP method.
    2. A missing method will not inform the users that they forgot to load the extension module defining the build_constraint method.
    3. Defining a method where neither the function nor any of the argument types are defined in the package is called type piracy and is discouraged in the Julia style guide.
    source

    ComplexPlane

    JuMP.ComplexPlaneType
    ComplexPlane

    Complex plane object that can be used to create a complex variable in the @variable macro.

    Example

    Consider the following example:

    julia> model = Model();
    +end

    Note

    JuMP extensions should extend JuMP.build_constraint only if they also defined CustomSet, for three reasons:

    1. It is problematic if multiple extensions overload the same JuMP method.
    2. A missing method will not inform the users that they forgot to load the extension module defining the build_constraint method.
    3. Defining a method where neither the function nor any of the argument types are defined in the package is called type piracy and is discouraged in the Julia style guide.
    source

    ComplexPlane

    JuMP.ComplexPlaneType
    ComplexPlane

    Complex plane object that can be used to create a complex variable in the @variable macro.

    Example

    Consider the following example:

    julia> model = Model();
     
     julia> @variable(model, x in ComplexPlane())
     real(x) + imag(x) im
    @@ -2699,7 +2699,7 @@
     julia> all_variables(model)
     2-element Vector{VariableRef}:
      real(x)
    - imag(x)

    We see in the output of the last command that two real variables were created. The Julia variable x binds to an affine expression in terms of these two variables that parametrize the complex plane.

    source

    ComplexVariable

    ConstraintNotOwned

    JuMP.ConstraintNotOwnedType
    struct ConstraintNotOwned{C<:ConstraintRef} <: Exception
    + imag(x)

    We see in the output of the last command that two real variables were created. The Julia variable x binds to an affine expression in terms of these two variables that parametrize the complex plane.

    source

    ComplexVariable

    ConstraintNotOwned

    JuMP.ConstraintNotOwnedType
    struct ConstraintNotOwned{C<:ConstraintRef} <: Exception
         constraint_ref::C
     end

    An error thrown when the constraint constraint_ref was used in a model different to owner_model(constraint_ref).

    Example

    julia> model = Model();
     
    @@ -2713,12 +2713,12 @@
     julia> MOI.get(model_new, MOI.ConstraintName(), c)
     ERROR: ConstraintNotOwned{ConstraintRef{Model, MathOptInterface.ConstraintIndex{MathOptInterface.ScalarAffineFunction{Float64}, MathOptInterface.GreaterThan{Float64}}, ScalarShape}}(c : x ≥ 0)
     Stacktrace:
    -[...]
    source

    ConstraintRef

    FixRef

    JuMP.FixRefFunction
    FixRef(v::GenericVariableRef)

    Return a constraint reference to the constraint fixing the value of v.

    Errors if one does not exist.

    See also is_fixed, fix_value, fix, unfix.

    Example

    julia> model = Model();
    +[...]
    source

    ConstraintRef

    FixRef

    JuMP.FixRefFunction
    FixRef(v::GenericVariableRef)

    Return a constraint reference to the constraint fixing the value of v.

    Errors if one does not exist.

    See also is_fixed, fix_value, fix, unfix.

    Example

    julia> model = Model();
     
     julia> @variable(model, x == 1);
     
     julia> FixRef(x)
    -x = 1
    source

    GenericAffExpr

    GenericAffExpr

    JuMP.GenericAffExprType
    mutable struct GenericAffExpr{CoefType,VarType} <: AbstractJuMPScalar
         constant::CoefType
         terms::OrderedDict{VarType,CoefType}
     end

    An expression type representing an affine expression of the form: $\sum a_i x_i + c$.

    Fields

    • .constant: the constant c in the expression.
    • .terms: an OrderedDict, with keys of VarType and values of CoefType describing the sparse vector a.

    Example

    julia> model = Model();
    @@ -2734,13 +2734,13 @@
     julia> expr.terms
     OrderedCollections.OrderedDict{VariableRef, Float64} with 2 entries:
       x[2] => 1.0
    -  x[1] => 3.0
    source

    GenericModel

    GenericModel

    JuMP.GenericModelType
    GenericModel{T}(
         [optimizer_factory;]
         add_bridges::Bool = true,
     ) where {T<:Real}

    Create a new instance of a JuMP model.

    If optimizer_factory is provided, the model is initialized with the optimizer returned by MOI.instantiate(optimizer_factory).

    If optimizer_factory is not provided, use set_optimizer to set the optimizer before calling optimize!.

    If add_bridges, JuMP adds a MOI.Bridges.LazyBridgeOptimizer to automatically reformulate the problem into a form supported by the optimizer.

    Value type T

    Passing a type other than Float64 as the value type T is an advanced operation. The value type must match that expected by the chosen optimizer. Consult the optimizers documentation for details.

    If not documented, assume that the optimizer supports only Float64.

    Choosing an unsupported value type will throw an MOI.UnsupportedConstraint or an MOI.UnsupportedAttribute error, the timing of which (during the model construction or during a call to optimize!) depends on how the solver is interfaced to JuMP.

    Example

    julia> model = GenericModel{BigFloat}();
     
     julia> typeof(model)
    -GenericModel{BigFloat}
    source

    GenericNonlinearExpr

    GenericNonlinearExpr

    JuMP.GenericNonlinearExprType
    GenericNonlinearExpr{V}(head::Symbol, args::Vector{Any})
     GenericNonlinearExpr{V}(head::Symbol, args::Any...)

    The scalar-valued nonlinear function head(args...), represented as a symbolic expression tree, with the call operator head and ordered arguments in args.

    V is the type of AbstractVariableRef present in the expression, and is used to help dispatch JuMP extensions.

    head

    The head::Symbol must be an operator supported by the model.

    The default list of supported univariate operators is given by:

    and the default list of supported multivariate operators is given by:

    Additional operators can be add using @operator.

    See the full list of operators supported by a MOI.ModelLike by querying the MOI.ListOfSupportedNonlinearOperators attribute.

    args

    The vector args contains the arguments to the nonlinear function. If the operator is univariate, it must contain one element. Otherwise, it may contain multiple elements.

    Given a subtype of AbstractVariableRef, V, for GenericNonlinearExpr{V}, each element must be one of the following:

    where T<:Real and T == value_type(V).

    Unsupported operators

    If the optimizer does not support head, an MOI.UnsupportedNonlinearOperator error will be thrown.

    There is no guarantee about when this error will be thrown; it may be thrown when the function is first added to the model, or it may be thrown when optimize! is called.

    Example

    To represent the function $f(x) = sin(x)^2$, do:

    julia> model = Model();
     
     julia> @variable(model, x)
    @@ -2754,7 +2754,7 @@
                GenericNonlinearExpr{VariableRef}(:sin, x),
                2.0,
            )
    -sin(x) ^ 2.0
    source

    GenericQuadExpr

    GenericQuadExpr

    JuMP.GenericQuadExprType
    mutable struct GenericQuadExpr{CoefType,VarType} <: AbstractJuMPScalar
         aff::GenericAffExpr{CoefType,VarType}
         terms::OrderedDict{UnorderedPair{VarType}, CoefType}
     end

    An expression type representing an quadratic expression of the form: $\sum q_{i,j} x_i x_j + \sum a_i x_i + c$.

    Fields

    • .aff: an GenericAffExpr representing the affine portion of the expression.
    • .terms: an OrderedDict, with keys of UnorderedPair{VarType} and values of CoefType, describing the sparse list of terms q.

    Example

    julia> model = Model();
    @@ -2770,16 +2770,16 @@
     julia> expr.terms
     OrderedCollections.OrderedDict{UnorderedPair{VariableRef}, Float64} with 2 entries:
       UnorderedPair{VariableRef}(x[1], x[1]) => 2.0
    -  UnorderedPair{VariableRef}(x[1], x[2]) => 1.0
    source

    GenericReferenceMap

    JuMP.GenericReferenceMapType
    GenericReferenceMap{T}

    Mapping between variable and constraint reference of a model and its copy. The reference of the copied model can be obtained by indexing the map with the reference of the corresponding reference of the original model.

    source

    GenericVariableRef

    JuMP.GenericVariableRefType
    GenericVariableRef{T} <: AbstractVariableRef

    Holds a reference to the model and the corresponding MOI.VariableIndex.

    source

    GreaterThanZero

    JuMP.GreaterThanZeroType
    GreaterThanZero()

    A struct used to intercept when >= or is used in a macro via operator_to_set.

    This struct is not the same as Nonnegatives so that we can disambiguate x >= y and x - y in Nonnegatives().

    This struct is not intended for general usage, but it may be useful to some JuMP extensions.

    Example

    julia> operator_to_set(error, Val(:>=))
    -GreaterThanZero()
    source

    HermitianMatrixAdjointShape

    HermitianMatrixShape

    GenericReferenceMap

    JuMP.GenericReferenceMapType
    GenericReferenceMap{T}

    Mapping between variable and constraint reference of a model and its copy. The reference of the copied model can be obtained by indexing the map with the reference of the corresponding reference of the original model.

    source

    GenericVariableRef

    JuMP.GenericVariableRefType
    GenericVariableRef{T} <: AbstractVariableRef

    Holds a reference to the model and the corresponding MOI.VariableIndex.

    source

    GreaterThanZero

    JuMP.GreaterThanZeroType
    GreaterThanZero()

    A struct used to intercept when >= or is used in a macro via operator_to_set.

    This struct is not the same as Nonnegatives so that we can disambiguate x >= y and x - y in Nonnegatives().

    This struct is not intended for general usage, but it may be useful to some JuMP extensions.

    Example

    julia> operator_to_set(error, Val(:>=))
    +GreaterThanZero()
    source

    HermitianMatrixAdjointShape

    HermitianMatrixShape

    JuMP.HermitianMatrixShapeType
    HermitianMatrixShape(
         side_dimension::Int;
         needs_adjoint_dual::Bool = false,
    -)

    The shape object for a Hermitian square matrix of side_dimension rows and columns.

    The vectorized form corresponds to MOI.HermitianPositiveSemidefiniteConeTriangle.

    needs_adjoint_dual

    By default, the dual_shape of HermitianMatrixShape is also HermitianMatrixShape. This is true for cases such as a LinearAlgebra.Hermitian matrix in HermitianPSDCone.

    However, JuMP also supports LinearAlgebra.Hermitian matrix in Zeros, which is interpreted as an element-wise equality constraint. By exploiting symmetry, we pass only the upper triangle of the equality constraints. This works for the primal, but it leads to a factor of 2 difference in the off-diagonal dual elements. (The dual value of the (i, j) element in the triangle formulation should be divided by 2 when spread across the (i, j) and (j, i) elements in the square matrix formulation.) If the constraint has this dual inconsistency, set needs_adjoint_dual = true.

    source

    HermitianMatrixSpace

    JuMP.HermitianMatrixSpaceType
    HermitianMatrixSpace()

    Use in the @variable macro to constrain a matrix of variables to be hermitian.

    Example

    julia> model = Model();
    +)

    The shape object for a Hermitian square matrix of side_dimension rows and columns.

    The vectorized form corresponds to MOI.HermitianPositiveSemidefiniteConeTriangle.

    needs_adjoint_dual

    By default, the dual_shape of HermitianMatrixShape is also HermitianMatrixShape. This is true for cases such as a LinearAlgebra.Hermitian matrix in HermitianPSDCone.

    However, JuMP also supports LinearAlgebra.Hermitian matrix in Zeros, which is interpreted as an element-wise equality constraint. By exploiting symmetry, we pass only the upper triangle of the equality constraints. This works for the primal, but it leads to a factor of 2 difference in the off-diagonal dual elements. (The dual value of the (i, j) element in the triangle formulation should be divided by 2 when spread across the (i, j) and (j, i) elements in the square matrix formulation.) If the constraint has this dual inconsistency, set needs_adjoint_dual = true.

    source

    HermitianMatrixSpace

    JuMP.HermitianMatrixSpaceType
    HermitianMatrixSpace()

    Use in the @variable macro to constrain a matrix of variables to be hermitian.

    Example

    julia> model = Model();
     
     julia> @variable(model, Q[1:2, 1:2] in HermitianMatrixSpace())
     2×2 LinearAlgebra.Hermitian{GenericAffExpr{ComplexF64, VariableRef}, Matrix{GenericAffExpr{ComplexF64, VariableRef}}}:
      real(Q[1,1])                    real(Q[1,2]) + imag(Q[1,2]) im
    - real(Q[1,2]) - imag(Q[1,2]) im  real(Q[2,2])
    source

    HermitianPSDCone

    JuMP.HermitianPSDConeType
    HermitianPSDCone

    Hermitian positive semidefinite cone object that can be used to create a Hermitian positive semidefinite square matrix in the @variable and @constraint macros.

    Example

    Consider the following example:

    julia> model = Model();
    + real(Q[1,2]) - imag(Q[1,2]) im  real(Q[2,2])
    source

    HermitianPSDCone

    JuMP.HermitianPSDConeType
    HermitianPSDCone

    Hermitian positive semidefinite cone object that can be used to create a Hermitian positive semidefinite square matrix in the @variable and @constraint macros.

    Example

    Consider the following example:

    julia> model = Model();
     
     julia> @variable(model, H[1:3, 1:3] in HermitianPSDCone())
     3×3 LinearAlgebra.Hermitian{GenericAffExpr{ComplexF64, VariableRef}, Matrix{GenericAffExpr{ComplexF64, VariableRef}}}:
    @@ -2801,18 +2801,18 @@
     
     julia> all_constraints(model, Vector{VariableRef}, MOI.HermitianPositiveSemidefiniteConeTriangle)
     1-element Vector{ConstraintRef{Model, MathOptInterface.ConstraintIndex{MathOptInterface.VectorOfVariables, MathOptInterface.HermitianPositiveSemidefiniteConeTriangle}}}:
    - [real(H[1,1]), real(H[1,2]), real(H[2,2]), real(H[1,3]), real(H[2,3]), real(H[3,3]), imag(H[1,2]), imag(H[1,3]), imag(H[2,3])] ∈ MathOptInterface.HermitianPositiveSemidefiniteConeTriangle(3)

    We see in the output of the last commands that 9 real variables were created. The matrix H constrains affine expressions in terms of these 9 variables that parametrize a Hermitian matrix.

    source

    IntegerRef

    JuMP.IntegerRefFunction
    IntegerRef(v::GenericVariableRef)

    Return a constraint reference to the constraint constraining v to be integer.

    Errors if one does not exist.

    See also is_integer, set_integer, unset_integer.

    Example

    julia> model = Model();
    + [real(H[1,1]), real(H[1,2]), real(H[2,2]), real(H[1,3]), real(H[2,3]), real(H[3,3]), imag(H[1,2]), imag(H[1,3]), imag(H[2,3])] ∈ MathOptInterface.HermitianPositiveSemidefiniteConeTriangle(3)

    We see in the output of the last commands that 9 real variables were created. The matrix H constrains affine expressions in terms of these 9 variables that parametrize a Hermitian matrix.

    source

    IntegerRef

    JuMP.IntegerRefFunction
    IntegerRef(v::GenericVariableRef)

    Return a constraint reference to the constraint constraining v to be integer.

    Errors if one does not exist.

    See also is_integer, set_integer, unset_integer.

    Example

    julia> model = Model();
     
     julia> @variable(model, x, Int);
     
     julia> IntegerRef(x)
    -x integer
    source

    LPMatrixData

    LessThanZero

    JuMP.LessThanZeroType
    GreaterThanZero()

    A struct used to intercept when <= or is used in a macro via operator_to_set.

    This struct is not the same as Nonpositives so that we can disambiguate x <= y and x - y in Nonpositives().

    This struct is not intended for general usage, but it may be useful to some JuMP extensions.

    Example

    julia> operator_to_set(error, Val(:<=))
    -LessThanZero()
    source

    LinearTermIterator

    JuMP.LinearTermIteratorType
    LinearTermIterator{GAE<:GenericAffExpr}

    A struct that implements the iterate protocol in order to iterate over tuples of (coefficient, variable) in the GenericAffExpr.

    source

    LowerBoundRef

    LPMatrixData

    LessThanZero

    JuMP.LessThanZeroType
    GreaterThanZero()

    A struct used to intercept when <= or is used in a macro via operator_to_set.

    This struct is not the same as Nonpositives so that we can disambiguate x <= y and x - y in Nonpositives().

    This struct is not intended for general usage, but it may be useful to some JuMP extensions.

    Example

    julia> operator_to_set(error, Val(:<=))
    +LessThanZero()
    source

    LinearTermIterator

    JuMP.LinearTermIteratorType
    LinearTermIterator{GAE<:GenericAffExpr}

    A struct that implements the iterate protocol in order to iterate over tuples of (coefficient, variable) in the GenericAffExpr.

    source

    LowerBoundRef

    Model

    JuMP.ModelType
    Model([optimizer_factory;] add_bridges::Bool = true)

    Create a new instance of a JuMP model.

    If optimizer_factory is provided, the model is initialized with thhe optimizer returned by MOI.instantiate(optimizer_factory).

    If optimizer_factory is not provided, use set_optimizer to set the optimizer before calling optimize!.

    If add_bridges, JuMP adds a MOI.Bridges.LazyBridgeOptimizer to automatically reformulate the problem into a form supported by the optimizer.

    Example

    julia> import Ipopt
    +x ≥ 1
    source

    Model

    JuMP.ModelType
    Model([optimizer_factory;] add_bridges::Bool = true)

    Create a new instance of a JuMP model.

    If optimizer_factory is provided, the model is initialized with thhe optimizer returned by MOI.instantiate(optimizer_factory).

    If optimizer_factory is not provided, use set_optimizer to set the optimizer before calling optimize!.

    If add_bridges, JuMP adds a MOI.Bridges.LazyBridgeOptimizer to automatically reformulate the problem into a form supported by the optimizer.

    Example

    julia> import Ipopt
     
     julia> model = Model(Ipopt.Optimizer);
     
    @@ -2823,16 +2823,16 @@
     
     julia> import MultiObjectiveAlgorithms as MOA
     
    -julia> model = Model(() -> MOA.Optimizer(HiGHS.Optimizer); add_bridges = false);
    source

    ModelMode

    JuMP.ModelModeType
    ModelMode

    An enum to describe the state of the CachingOptimizer inside a JuMP model.

    See also: mode.

    Values

    Possible values are:

    • [AUTOMATIC]: moi_backend field holds a CachingOptimizer in AUTOMATIC mode.
    • [MANUAL]: moi_backend field holds a CachingOptimizer in MANUAL mode.
    • [DIRECT]: moi_backend field holds an AbstractOptimizer. No extra copy of the model is stored. The moi_backend must support add_constraint etc.
    source

    NLPEvaluator

    JuMP.NLPEvaluatorFunction
    NLPEvaluator(
    +julia> model = Model(() -> MOA.Optimizer(HiGHS.Optimizer); add_bridges = false);
    source

    ModelMode

    JuMP.ModelModeType
    ModelMode

    An enum to describe the state of the CachingOptimizer inside a JuMP model.

    See also: mode.

    Values

    Possible values are:

    • [AUTOMATIC]: moi_backend field holds a CachingOptimizer in AUTOMATIC mode.
    • [MANUAL]: moi_backend field holds a CachingOptimizer in MANUAL mode.
    • [DIRECT]: moi_backend field holds an AbstractOptimizer. No extra copy of the model is stored. The moi_backend must support add_constraint etc.
    source

    NLPEvaluator

    JuMP.NLPEvaluatorFunction
    NLPEvaluator(
         model::Model,
         _differentiation_backend::MOI.Nonlinear.AbstractAutomaticDifferentiation =
             MOI.Nonlinear.SparseReverseMode(),
    -)

    Return an MOI.AbstractNLPEvaluator constructed from model

    Warning

    Before using, you must initialize the evaluator using MOI.initialize.

    Experimental

    These features may change or be removed in any future version of JuMP.

    Pass _differentiation_backend to specify the differentiation backend used to compute derivatives.

    source

    NoOptimizer

    JuMP.NoOptimizerType
    struct NoOptimizer <: Exception end

    An error thrown when no optimizer is set and one is required.

    The optimizer can be provided to the Model constructor or by calling set_optimizer.

    Example

    julia> model = Model();
    +)

    Return an MOI.AbstractNLPEvaluator constructed from model

    Warning

    Before using, you must initialize the evaluator using MOI.initialize.

    Experimental

    These features may change or be removed in any future version of JuMP.

    Pass _differentiation_backend to specify the differentiation backend used to compute derivatives.

    source

    NoOptimizer

    JuMP.NoOptimizerType
    struct NoOptimizer <: Exception end

    An error thrown when no optimizer is set and one is required.

    The optimizer can be provided to the Model constructor or by calling set_optimizer.

    Example

    julia> model = Model();
     
     julia> optimize!(model)
     ERROR: NoOptimizer()
     Stacktrace:
    -[...]
    source

    NonlinearExpr

    NonlinearOperator

    JuMP.NonlinearOperatorType
    NonlinearOperator(func::Function, head::Symbol)

    A callable struct (functor) representing a function named head.

    When called with AbstractJuMPScalars, the struct returns a GenericNonlinearExpr.

    When called with non-JuMP types, the struct returns the evaluation of func(args...).

    Unless head is special-cased by the optimizer, the operator must have already been added to the model using add_nonlinear_operator or @operator.

    Example

    julia> model = Model();
    +[...]
    source

    NonlinearExpr

    NonlinearOperator

    JuMP.NonlinearOperatorType
    NonlinearOperator(func::Function, head::Symbol)

    A callable struct (functor) representing a function named head.

    When called with AbstractJuMPScalars, the struct returns a GenericNonlinearExpr.

    When called with non-JuMP types, the struct returns the evaluation of func(args...).

    Unless head is special-cased by the optimizer, the operator must have already been added to the model using add_nonlinear_operator or @operator.

    Example

    julia> model = Model();
     
     julia> @variable(model, x)
     x
    @@ -2856,7 +2856,7 @@
     op_f(x)
     
     julia> bar(2.0)
    -4.0
    source

    Nonnegatives

    JuMP.NonnegativesType
    Nonnegatives()

    The JuMP equivalent of the MOI.Nonnegatives set, in which the dimension is inferred from the corresponding function.

    Example

    julia> model = Model();
    +4.0
    source

    Nonnegatives

    JuMP.NonnegativesType
    Nonnegatives()

    The JuMP equivalent of the MOI.Nonnegatives set, in which the dimension is inferred from the corresponding function.

    Example

    julia> model = Model();
     
     julia> @variable(model, x[1:2])
     2-element Vector{VariableRef}:
    @@ -2871,7 +2871,7 @@
     julia> b = [5, 6];
     
     julia> @constraint(model, A * x >= b)
    -[x[1] + 2 x[2] - 5, 3 x[1] + 4 x[2] - 6] ∈ Nonnegatives()
    source

    Nonpositives

    JuMP.NonpositivesType
    Nonpositives()

    The JuMP equivalent of the MOI.Nonpositives set, in which the dimension is inferred from the corresponding function.

    Example

    julia> model = Model();
    +[x[1] + 2 x[2] - 5, 3 x[1] + 4 x[2] - 6] ∈ Nonnegatives()
    source

    Nonpositives

    JuMP.NonpositivesType
    Nonpositives()

    The JuMP equivalent of the MOI.Nonpositives set, in which the dimension is inferred from the corresponding function.

    Example

    julia> model = Model();
     
     julia> @variable(model, x[1:2])
     2-element Vector{VariableRef}:
    @@ -2886,14 +2886,14 @@
     julia> b = [5, 6];
     
     julia> @constraint(model, A * x <= b)
    -[x[1] + 2 x[2] - 5, 3 x[1] + 4 x[2] - 6] ∈ Nonpositives()
    source

    OptimizationSense

    OptimizeNotCalled

    JuMP.OptimizeNotCalledType
    struct OptimizeNotCalled <: Exception end

    An error thrown when a result attribute cannot be queried before optimize! is called.

    Example

    julia> import Ipopt
    +[x[1] + 2 x[2] - 5, 3 x[1] + 4 x[2] - 6] ∈ Nonpositives()
    source

    OptimizationSense

    OptimizeNotCalled

    JuMP.OptimizeNotCalledType
    struct OptimizeNotCalled <: Exception end

    An error thrown when a result attribute cannot be queried before optimize! is called.

    Example

    julia> import Ipopt
     
     julia> model = Model(Ipopt.Optimizer);
     
     julia> objective_value(model)
     ERROR: OptimizeNotCalled()
     Stacktrace:
    -[...]
    source

    PSDCone

    JuMP.PSDConeType
    PSDCone

    Positive semidefinite cone object that can be used to constrain a square matrix to be positive semidefinite in the @constraint macro.

    If the matrix has type Symmetric then the columns vectorization (the vector obtained by concatenating the columns) of its upper triangular part is constrained to belong to the MOI.PositiveSemidefiniteConeTriangle set, otherwise its column vectorization is constrained to belong to the MOI.PositiveSemidefiniteConeSquare set.

    Example

    Non-symmetric case:

    julia> model = Model();
    +[...]
    source

    PSDCone

    JuMP.PSDConeType
    PSDCone

    Positive semidefinite cone object that can be used to constrain a square matrix to be positive semidefinite in the @constraint macro.

    If the matrix has type Symmetric then the columns vectorization (the vector obtained by concatenating the columns) of its upper triangular part is constrained to belong to the MOI.PositiveSemidefiniteConeTriangle set, otherwise its column vectorization is constrained to belong to the MOI.PositiveSemidefiniteConeSquare set.

    Example

    Non-symmetric case:

    julia> model = Model();
     
     julia> @variable(model, x);
     
    @@ -2934,7 +2934,7 @@
      x - 4
     
     julia> moi_set(constraint_object(cref))
    -MathOptInterface.PositiveSemidefiniteConeTriangle(2)
    source

    Parameter

    JuMP.ParameterType
    Parameter(value)

    A short-cut for the MOI.Parameter set.

    Example

    julia> model = Model();
    +MathOptInterface.PositiveSemidefiniteConeTriangle(2)
    source

    Parameter

    JuMP.ParameterType
    Parameter(value)

    A short-cut for the MOI.Parameter set.

    Example

    julia> model = Model();
     
     julia> @variable(model, x in Parameter(2))
     x
    @@ -2942,7 +2942,7 @@
     julia> print(model)
     Feasibility
     Subject to
    - x ∈ MathOptInterface.Parameter{Float64}(2.0)
    source

    ParameterRef

    ParameterRef

    JuMP.ParameterRefFunction
    ParameterRef(x::GenericVariableRef)

    Return a constraint reference to the constraint constraining x to be a parameter.

    Errors if one does not exist.

    See also is_parameter, set_parameter_value, parameter_value.

    Example

    julia> model = Model();
     
     julia> @variable(model, p in Parameter(2))
     p
    @@ -2955,7 +2955,7 @@
     julia> ParameterRef(x)
     ERROR: Variable x is not a parameter.
     Stacktrace:
    -[...]
    source

    QuadExpr

    QuadTermIterator

    JuMP.QuadTermIteratorType
    QuadTermIterator{GQE<:GenericQuadExpr}

    A struct that implements the iterate protocol in order to iterate over tuples of (coefficient, variable, variable) in the GenericQuadExpr.

    source

    ReferenceMap

    JuMP.ReferenceMapType
    GenericReferenceMap{T}

    Mapping between variable and constraint reference of a model and its copy. The reference of the copied model can be obtained by indexing the map with the reference of the corresponding reference of the original model.

    source

    ResultStatusCode

    JuMP.ResultStatusCodeType
    ResultStatusCode

    An Enum of possible values for the PrimalStatus and DualStatus attributes.

    The values indicate how to interpret the result vector.

    Values

    Possible values are:

    • NO_SOLUTION: the result vector is empty.
    • FEASIBLE_POINT: the result vector is a feasible point.
    • NEARLY_FEASIBLE_POINT: the result vector is feasible if some constraint tolerances are relaxed.
    • INFEASIBLE_POINT: the result vector is an infeasible point.
    • INFEASIBILITY_CERTIFICATE: the result vector is an infeasibility certificate. If the PrimalStatus is INFEASIBILITY_CERTIFICATE, then the primal result vector is a certificate of dual infeasibility. If the DualStatus is INFEASIBILITY_CERTIFICATE, then the dual result vector is a proof of primal infeasibility.
    • NEARLY_INFEASIBILITY_CERTIFICATE: the result satisfies a relaxed criterion for a certificate of infeasibility.
    • REDUCTION_CERTIFICATE: the result vector is an ill-posed certificate; see this article for details. If the PrimalStatus is REDUCTION_CERTIFICATE, then the primal result vector is a proof that the dual problem is ill-posed. If the DualStatus is REDUCTION_CERTIFICATE, then the dual result vector is a proof that the primal is ill-posed.
    • NEARLY_REDUCTION_CERTIFICATE: the result satisfies a relaxed criterion for an ill-posed certificate.
    • UNKNOWN_RESULT_STATUS: the result vector contains a solution with an unknown interpretation.
    • OTHER_RESULT_STATUS: the result vector contains a solution with an interpretation not covered by one of the statuses defined above
    source

    RotatedSecondOrderCone

    JuMP.RotatedSecondOrderConeType
    RotatedSecondOrderCone

    Rotated second order cone object that can be used to constrain the square of the euclidean norm of a vector x to be less than or equal to $2tu$ where t and u are nonnegative scalars. This is a shortcut for the MOI.RotatedSecondOrderCone.

    Example

    The following constrains $\|(x-1, x-2)\|^2_2 \le 2tx$ and $t, x \ge 0$:

    julia> model = Model();
    +[...]
    source

    QuadExpr

    QuadTermIterator

    JuMP.QuadTermIteratorType
    QuadTermIterator{GQE<:GenericQuadExpr}

    A struct that implements the iterate protocol in order to iterate over tuples of (coefficient, variable, variable) in the GenericQuadExpr.

    source

    ReferenceMap

    JuMP.ReferenceMapType
    GenericReferenceMap{T}

    Mapping between variable and constraint reference of a model and its copy. The reference of the copied model can be obtained by indexing the map with the reference of the corresponding reference of the original model.

    source

    ResultStatusCode

    JuMP.ResultStatusCodeType
    ResultStatusCode

    An Enum of possible values for the PrimalStatus and DualStatus attributes.

    The values indicate how to interpret the result vector.

    Values

    Possible values are:

    • NO_SOLUTION: the result vector is empty.
    • FEASIBLE_POINT: the result vector is a feasible point.
    • NEARLY_FEASIBLE_POINT: the result vector is feasible if some constraint tolerances are relaxed.
    • INFEASIBLE_POINT: the result vector is an infeasible point.
    • INFEASIBILITY_CERTIFICATE: the result vector is an infeasibility certificate. If the PrimalStatus is INFEASIBILITY_CERTIFICATE, then the primal result vector is a certificate of dual infeasibility. If the DualStatus is INFEASIBILITY_CERTIFICATE, then the dual result vector is a proof of primal infeasibility.
    • NEARLY_INFEASIBILITY_CERTIFICATE: the result satisfies a relaxed criterion for a certificate of infeasibility.
    • REDUCTION_CERTIFICATE: the result vector is an ill-posed certificate; see this article for details. If the PrimalStatus is REDUCTION_CERTIFICATE, then the primal result vector is a proof that the dual problem is ill-posed. If the DualStatus is REDUCTION_CERTIFICATE, then the dual result vector is a proof that the primal is ill-posed.
    • NEARLY_REDUCTION_CERTIFICATE: the result satisfies a relaxed criterion for an ill-posed certificate.
    • UNKNOWN_RESULT_STATUS: the result vector contains a solution with an unknown interpretation.
    • OTHER_RESULT_STATUS: the result vector contains a solution with an interpretation not covered by one of the statuses defined above
    source

    RotatedSecondOrderCone

    JuMP.RotatedSecondOrderConeType
    RotatedSecondOrderCone

    Rotated second order cone object that can be used to constrain the square of the euclidean norm of a vector x to be less than or equal to $2tu$ where t and u are nonnegative scalars. This is a shortcut for the MOI.RotatedSecondOrderCone.

    Example

    The following constrains $\|(x-1, x-2)\|^2_2 \le 2tx$ and $t, x \ge 0$:

    julia> model = Model();
     
     julia> @variable(model, x)
     x
    @@ -2964,7 +2964,7 @@
     t
     
     julia> @constraint(model, [t, x, x-1, x-2] in RotatedSecondOrderCone())
    -[t, x, x - 1, x - 2] ∈ MathOptInterface.RotatedSecondOrderCone(4)
    source

    SOS1

    JuMP.SOS1Type
    SOS1(weights = Real[])

    The SOS1 (Special Ordered Set of Type 1) set constrains a vector x to the set where at most one variable can take a non-zero value, and all other elements are zero.

    The weights vector, if specified, induces an ordering of the variables; as such, it should contain unique values. The weights vector must have the same number of elements as the vector x, and the element weights[i] corresponds to element x[i]. If not provided, the weights vector defaults to weights[i] = i.

    This is a shortcut for the MOI.SOS1 set.

    Example

    julia> model = Model();
    +[t, x, x - 1, x - 2] ∈ MathOptInterface.RotatedSecondOrderCone(4)
    source

    SOS1

    JuMP.SOS1Type
    SOS1(weights = Real[])

    The SOS1 (Special Ordered Set of Type 1) set constrains a vector x to the set where at most one variable can take a non-zero value, and all other elements are zero.

    The weights vector, if specified, induces an ordering of the variables; as such, it should contain unique values. The weights vector must have the same number of elements as the vector x, and the element weights[i] corresponds to element x[i]. If not provided, the weights vector defaults to weights[i] = i.

    This is a shortcut for the MOI.SOS1 set.

    Example

    julia> model = Model();
     
     julia> @variable(model, x[1:3] in SOS1([4.1, 3.2, 5.0]))
     3-element Vector{VariableRef}:
    @@ -2975,7 +2975,7 @@
     julia> print(model)
     Feasibility
     Subject to
    - [x[1], x[2], x[3]] ∈ MathOptInterface.SOS1{Float64}([4.1, 3.2, 5.0])
    source

    SOS2

    JuMP.SOS2Type
    SOS2(weights = Real[])

    The SOS2 (Special Ordered Set of Type 2) set constrains a vector x to the set where at most two variables can take a non-zero value, and all other elements are zero. In addition, the two non-zero values must be consecutive given the ordering of the x vector induced by weights.

    The weights vector, if specified, induces an ordering of the variables; as such, it must contain unique values. The weights vector must have the same number of elements as the vector x, and the element weights[i] corresponds to element x[i]. If not provided, the weights vector defaults to weights[i] = i.

    This is a shortcut for the MOI.SOS2 set.

    Example

    julia> model = Model();
    + [x[1], x[2], x[3]] ∈ MathOptInterface.SOS1{Float64}([4.1, 3.2, 5.0])
    source

    SOS2

    JuMP.SOS2Type
    SOS2(weights = Real[])

    The SOS2 (Special Ordered Set of Type 2) set constrains a vector x to the set where at most two variables can take a non-zero value, and all other elements are zero. In addition, the two non-zero values must be consecutive given the ordering of the x vector induced by weights.

    The weights vector, if specified, induces an ordering of the variables; as such, it must contain unique values. The weights vector must have the same number of elements as the vector x, and the element weights[i] corresponds to element x[i]. If not provided, the weights vector defaults to weights[i] = i.

    This is a shortcut for the MOI.SOS2 set.

    Example

    julia> model = Model();
     
     julia> @variable(model, x[1:3] in SOS2([4.1, 3.2, 5.0]))
     3-element Vector{VariableRef}:
    @@ -2986,7 +2986,7 @@
     julia> print(model)
     Feasibility
     Subject to
    - [x[1], x[2], x[3]] ∈ MathOptInterface.SOS2{Float64}([4.1, 3.2, 5.0])
    source

    ScalarConstraint

    JuMP.ScalarConstraintType
    struct ScalarConstraint

    The data for a scalar constraint.

    See also the documentation on JuMP's representation of constraints for more background.

    Fields

    • .func: field contains a JuMP object representing the function
    • .set: field contains the MOI set

    Example

    A scalar constraint:

    julia> model = Model();
    + [x[1], x[2], x[3]] ∈ MathOptInterface.SOS2{Float64}([4.1, 3.2, 5.0])
    source

    ScalarConstraint

    JuMP.ScalarConstraintType
    struct ScalarConstraint

    The data for a scalar constraint.

    See also the documentation on JuMP's representation of constraints for more background.

    Fields

    • .func: field contains a JuMP object representing the function
    • .set: field contains the MOI set

    Example

    A scalar constraint:

    julia> model = Model();
     
     julia> @variable(model, x);
     
    @@ -3003,14 +3003,14 @@
     2 x
     
     julia> object.set
    -MathOptInterface.LessThan{Float64}(1.0)
    source

    ScalarShape

    ScalarShape

    JuMP.ScalarShapeType
    ScalarShape()

    An AbstractShape that represents scalar constraints.

    Example

    julia> model = Model();
     
     julia> @variable(model, x[1:2]);
     
     julia> c = @constraint(model, x[2] <= 1);
     
     julia> shape(constraint_object(c))
    -ScalarShape()
    source

    ScalarVariable

    SecondOrderCone

    JuMP.SecondOrderConeType
    SecondOrderCone

    Second order cone object that can be used to constrain the euclidean norm of a vector x to be less than or equal to a nonnegative scalar t. This is a shortcut for the MOI.SecondOrderCone.

    Example

    The following constrains $\|(x-1, x-2)\|_2 \le t$ and $t \ge 0$:

    julia> model = Model();
    +ScalarShape()
    source

    ScalarVariable

    SecondOrderCone

    JuMP.SecondOrderConeType
    SecondOrderCone

    Second order cone object that can be used to constrain the euclidean norm of a vector x to be less than or equal to a nonnegative scalar t. This is a shortcut for the MOI.SecondOrderCone.

    Example

    The following constrains $\|(x-1, x-2)\|_2 \le t$ and $t \ge 0$:

    julia> model = Model();
     
     julia> @variable(model, x)
     x
    @@ -3019,7 +3019,7 @@
     t
     
     julia> @constraint(model, [t, x-1, x-2] in SecondOrderCone())
    -[t, x - 1, x - 2] ∈ MathOptInterface.SecondOrderCone(3)
    source

    Semicontinuous

    JuMP.SemicontinuousType
    Semicontinuous(lower, upper)

    A short-cut for the MOI.Semicontinuous set.

    This short-cut is useful because it automatically promotes lower and upper to the same type, and converts them into the element type supported by the JuMP model.

    Example

    julia> model = Model();
    +[t, x - 1, x - 2] ∈ MathOptInterface.SecondOrderCone(3)
    source

    Semicontinuous

    JuMP.SemicontinuousType
    Semicontinuous(lower, upper)

    A short-cut for the MOI.Semicontinuous set.

    This short-cut is useful because it automatically promotes lower and upper to the same type, and converts them into the element type supported by the JuMP model.

    Example

    julia> model = Model();
     
     julia> @variable(model, x in Semicontinuous(1, 2))
     x
    @@ -3027,7 +3027,7 @@
     julia> print(model)
     Feasibility
     Subject to
    - x ∈ MathOptInterface.Semicontinuous{Int64}(1, 2)
    source

    Semiinteger

    JuMP.SemiintegerType
    Semiinteger(lower, upper)

    A short-cut for the MOI.Semiinteger set.

    This short-cut is useful because it automatically promotes lower and upper to the same type, and converts them into the element type supported by the JuMP model.

    Example

    julia> model = Model();
    + x ∈ MathOptInterface.Semicontinuous{Int64}(1, 2)
    source

    Semiinteger

    JuMP.SemiintegerType
    Semiinteger(lower, upper)

    A short-cut for the MOI.Semiinteger set.

    This short-cut is useful because it automatically promotes lower and upper to the same type, and converts them into the element type supported by the JuMP model.

    Example

    julia> model = Model();
     
     julia> @variable(model, x in Semiinteger(3, 5))
     x
    @@ -3035,12 +3035,12 @@
     julia> print(model)
     Feasibility
     Subject to
    - x ∈ MathOptInterface.Semiinteger{Int64}(3, 5)
    source

    SensitivityReport

    SkewSymmetricMatrixShape

    JuMP.SkewSymmetricMatrixShapeType
    SkewSymmetricMatrixShape

    Shape object for a skew symmetric square matrix of side_dimension rows and columns. The vectorized form contains the entries of the upper-right triangular part of the matrix (without the diagonal) given column by column (or equivalently, the entries of the lower-left triangular part given row by row). The diagonal is zero.

    source

    SkewSymmetricMatrixSpace

    JuMP.SkewSymmetricMatrixSpaceType
    SkewSymmetricMatrixSpace()

    Use in the @variable macro to constrain a matrix of variables to be skew-symmetric.

    Example

    julia> model = Model();
    + x ∈ MathOptInterface.Semiinteger{Int64}(3, 5)
    source

    SensitivityReport

    SkewSymmetricMatrixShape

    JuMP.SkewSymmetricMatrixShapeType
    SkewSymmetricMatrixShape

    Shape object for a skew symmetric square matrix of side_dimension rows and columns. The vectorized form contains the entries of the upper-right triangular part of the matrix (without the diagonal) given column by column (or equivalently, the entries of the lower-left triangular part given row by row). The diagonal is zero.

    source

    SkewSymmetricMatrixSpace

    JuMP.SkewSymmetricMatrixSpaceType
    SkewSymmetricMatrixSpace()

    Use in the @variable macro to constrain a matrix of variables to be skew-symmetric.

    Example

    julia> model = Model();
     
     julia> @variable(model, Q[1:2, 1:2] in SkewSymmetricMatrixSpace())
     2×2 Matrix{AffExpr}:
      0        Q[1,2]
    - -Q[1,2]  0
    source

    SkipModelConvertScalarSetWrapper

    JuMP.SkipModelConvertScalarSetWrapperType
    SkipModelConvertScalarSetWrapper(set::MOI.AbstractScalarSet)

    JuMP uses model_convert to automatically promote MOI.AbstractScalarSet sets to the same value_type as the model.

    In cases there this is undesirable, wrap the set in SkipModelConvertScalarSetWrapper to pass the set un-changed to the solver.

    Warning

    This struct is intended for use internally by JuMP extensions. You should not need to use it in regular JuMP code.

    Example

    julia> model = Model();
    + -Q[1,2]  0
    source

    SkipModelConvertScalarSetWrapper

    JuMP.SkipModelConvertScalarSetWrapperType
    SkipModelConvertScalarSetWrapper(set::MOI.AbstractScalarSet)

    JuMP uses model_convert to automatically promote MOI.AbstractScalarSet sets to the same value_type as the model.

    In cases there this is undesirable, wrap the set in SkipModelConvertScalarSetWrapper to pass the set un-changed to the solver.

    Warning

    This struct is intended for use internally by JuMP extensions. You should not need to use it in regular JuMP code.

    Example

    julia> model = Model();
     
     julia> @variable(model, x);
     
    @@ -3048,15 +3048,15 @@
     x = 0.5
     
     julia> @constraint(model, x in SkipModelConvertScalarSetWrapper(MOI.EqualTo(1 // 2)))
    -x = 1//2
    source

    SquareMatrixShape

    JuMP.SquareMatrixShapeType
    SquareMatrixShape

    Shape object for a square matrix of side_dimension rows and columns. The vectorized form contains the entries of the matrix given column by column (or equivalently, the entries of the lower-left triangular part given row by row).

    source

    SymmetricMatrixAdjointShape

    SymmetricMatrixShape

    SquareMatrixShape

    JuMP.SquareMatrixShapeType
    SquareMatrixShape

    Shape object for a square matrix of side_dimension rows and columns. The vectorized form contains the entries of the matrix given column by column (or equivalently, the entries of the lower-left triangular part given row by row).

    source

    SymmetricMatrixAdjointShape

    SymmetricMatrixShape

    JuMP.SymmetricMatrixShapeType
    SymmetricMatrixShape(
         side_dimension::Int;
         needs_adjoint_dual::Bool = false,
    -)

    The shape object for a symmetric square matrix of side_dimension rows and columns.

    The vectorized form contains the entries of the upper-right triangular part of the matrix given column by column (or equivalently, the entries of the lower-left triangular part given row by row).

    needs_adjoint_dual

    By default, the dual_shape of SymmetricMatrixShape is also SymmetricMatrixShape. This is true for cases such as a LinearAlgebra.Symmetric matrix in PSDCone.

    However, JuMP also supports LinearAlgebra.Symmetric matrix in Zeros, which is interpreted as an element-wise equality constraint. By exploiting symmetry, we pass only the upper triangle of the equality constraints. This works for the primal, but it leads to a factor of 2 difference in the off-diagonal dual elements. (The dual value of the (i, j) element in the triangle formulation should be divided by 2 when spread across the (i, j) and (j, i) elements in the square matrix formulation.) If the constraint has this dual inconsistency, set needs_adjoint_dual = true.

    source

    SymmetricMatrixSpace

    JuMP.SymmetricMatrixSpaceType
    SymmetricMatrixSpace()

    Use in the @variable macro to constrain a matrix of variables to be symmetric.

    Example

    julia> model = Model();
    +)

    The shape object for a symmetric square matrix of side_dimension rows and columns.

    The vectorized form contains the entries of the upper-right triangular part of the matrix given column by column (or equivalently, the entries of the lower-left triangular part given row by row).

    needs_adjoint_dual

    By default, the dual_shape of SymmetricMatrixShape is also SymmetricMatrixShape. This is true for cases such as a LinearAlgebra.Symmetric matrix in PSDCone.

    However, JuMP also supports LinearAlgebra.Symmetric matrix in Zeros, which is interpreted as an element-wise equality constraint. By exploiting symmetry, we pass only the upper triangle of the equality constraints. This works for the primal, but it leads to a factor of 2 difference in the off-diagonal dual elements. (The dual value of the (i, j) element in the triangle formulation should be divided by 2 when spread across the (i, j) and (j, i) elements in the square matrix formulation.) If the constraint has this dual inconsistency, set needs_adjoint_dual = true.

    source

    SymmetricMatrixSpace

    JuMP.SymmetricMatrixSpaceType
    SymmetricMatrixSpace()

    Use in the @variable macro to constrain a matrix of variables to be symmetric.

    Example

    julia> model = Model();
     
     julia> @variable(model, Q[1:2, 1:2] in SymmetricMatrixSpace())
     2×2 LinearAlgebra.Symmetric{VariableRef, Matrix{VariableRef}}:
      Q[1,1]  Q[1,2]
    - Q[1,2]  Q[2,2]
    source

    TerminationStatusCode

    JuMP.TerminationStatusCodeType
    TerminationStatusCode

    An Enum of possible values for the TerminationStatus attribute. This attribute is meant to explain the reason why the optimizer stopped executing in the most recent call to optimize!.

    Values

    Possible values are:

    • OPTIMIZE_NOT_CALLED: The algorithm has not started.
    • OPTIMAL: The algorithm found a globally optimal solution.
    • INFEASIBLE: The algorithm concluded that no feasible solution exists.
    • DUAL_INFEASIBLE: The algorithm concluded that no dual bound exists for the problem. If, additionally, a feasible (primal) solution is known to exist, this status typically implies that the problem is unbounded, with some technical exceptions.
    • LOCALLY_SOLVED: The algorithm converged to a stationary point, local optimal solution, could not find directions for improvement, or otherwise completed its search without global guarantees.
    • LOCALLY_INFEASIBLE: The algorithm converged to an infeasible point or otherwise completed its search without finding a feasible solution, without guarantees that no feasible solution exists.
    • INFEASIBLE_OR_UNBOUNDED: The algorithm stopped because it decided that the problem is infeasible or unbounded; this occasionally happens during MIP presolve.
    • ALMOST_OPTIMAL: The algorithm found a globally optimal solution to relaxed tolerances.
    • ALMOST_INFEASIBLE: The algorithm concluded that no feasible solution exists within relaxed tolerances.
    • ALMOST_DUAL_INFEASIBLE: The algorithm concluded that no dual bound exists for the problem within relaxed tolerances.
    • ALMOST_LOCALLY_SOLVED: The algorithm converged to a stationary point, local optimal solution, or could not find directions for improvement within relaxed tolerances.
    • ITERATION_LIMIT: An iterative algorithm stopped after conducting the maximum number of iterations.
    • TIME_LIMIT: The algorithm stopped after a user-specified computation time.
    • NODE_LIMIT: A branch-and-bound algorithm stopped because it explored a maximum number of nodes in the branch-and-bound tree.
    • SOLUTION_LIMIT: The algorithm stopped because it found the required number of solutions. This is often used in MIPs to get the solver to return the first feasible solution it encounters.
    • MEMORY_LIMIT: The algorithm stopped because it ran out of memory.
    • OBJECTIVE_LIMIT: The algorithm stopped because it found a solution better than a minimum limit set by the user.
    • NORM_LIMIT: The algorithm stopped because the norm of an iterate became too large.
    • OTHER_LIMIT: The algorithm stopped due to a limit not covered by one of the _LIMIT_ statuses above.
    • SLOW_PROGRESS: The algorithm stopped because it was unable to continue making progress towards the solution.
    • NUMERICAL_ERROR: The algorithm stopped because it encountered unrecoverable numerical error.
    • INVALID_MODEL: The algorithm stopped because the model is invalid.
    • INVALID_OPTION: The algorithm stopped because it was provided an invalid option.
    • INTERRUPTED: The algorithm stopped because of an interrupt signal.
    • OTHER_ERROR: The algorithm stopped because of an error not covered by one of the statuses defined above.
    source

    UnorderedPair

    TerminationStatusCode

    JuMP.TerminationStatusCodeType
    TerminationStatusCode

    An Enum of possible values for the TerminationStatus attribute. This attribute is meant to explain the reason why the optimizer stopped executing in the most recent call to optimize!.

    Values

    Possible values are:

    • OPTIMIZE_NOT_CALLED: The algorithm has not started.
    • OPTIMAL: The algorithm found a globally optimal solution.
    • INFEASIBLE: The algorithm concluded that no feasible solution exists.
    • DUAL_INFEASIBLE: The algorithm concluded that no dual bound exists for the problem. If, additionally, a feasible (primal) solution is known to exist, this status typically implies that the problem is unbounded, with some technical exceptions.
    • LOCALLY_SOLVED: The algorithm converged to a stationary point, local optimal solution, could not find directions for improvement, or otherwise completed its search without global guarantees.
    • LOCALLY_INFEASIBLE: The algorithm converged to an infeasible point or otherwise completed its search without finding a feasible solution, without guarantees that no feasible solution exists.
    • INFEASIBLE_OR_UNBOUNDED: The algorithm stopped because it decided that the problem is infeasible or unbounded; this occasionally happens during MIP presolve.
    • ALMOST_OPTIMAL: The algorithm found a globally optimal solution to relaxed tolerances.
    • ALMOST_INFEASIBLE: The algorithm concluded that no feasible solution exists within relaxed tolerances.
    • ALMOST_DUAL_INFEASIBLE: The algorithm concluded that no dual bound exists for the problem within relaxed tolerances.
    • ALMOST_LOCALLY_SOLVED: The algorithm converged to a stationary point, local optimal solution, or could not find directions for improvement within relaxed tolerances.
    • ITERATION_LIMIT: An iterative algorithm stopped after conducting the maximum number of iterations.
    • TIME_LIMIT: The algorithm stopped after a user-specified computation time.
    • NODE_LIMIT: A branch-and-bound algorithm stopped because it explored a maximum number of nodes in the branch-and-bound tree.
    • SOLUTION_LIMIT: The algorithm stopped because it found the required number of solutions. This is often used in MIPs to get the solver to return the first feasible solution it encounters.
    • MEMORY_LIMIT: The algorithm stopped because it ran out of memory.
    • OBJECTIVE_LIMIT: The algorithm stopped because it found a solution better than a minimum limit set by the user.
    • NORM_LIMIT: The algorithm stopped because the norm of an iterate became too large.
    • OTHER_LIMIT: The algorithm stopped due to a limit not covered by one of the _LIMIT_ statuses above.
    • SLOW_PROGRESS: The algorithm stopped because it was unable to continue making progress towards the solution.
    • NUMERICAL_ERROR: The algorithm stopped because it encountered unrecoverable numerical error.
    • INVALID_MODEL: The algorithm stopped because the model is invalid.
    • INVALID_OPTION: The algorithm stopped because it was provided an invalid option.
    • INTERRUPTED: The algorithm stopped because of an interrupt signal.
    • OTHER_ERROR: The algorithm stopped because of an error not covered by one of the statuses defined above.
    source

    UnorderedPair

    JuMP.UnorderedPairType
    UnorderedPair(a::T, b::T)

    A wrapper type used by GenericQuadExpr with fields .a and .b.

    Example

    julia> model = Model();
     
     julia> @variable(model, x[1:2]);
     
    @@ -3065,12 +3065,12 @@
     
     julia> expr.terms
     OrderedCollections.OrderedDict{UnorderedPair{VariableRef}, Float64} with 1 entry:
    -  UnorderedPair{VariableRef}(x[1], x[2]) => 2.0
    source

    UpperBoundRef

    UpperBoundRef

    VariableConstrainedOnCreation

    JuMP.VariableConstrainedOnCreationType
    VariableConstrainedOnCreation <: AbstractVariable

    Variable scalar_variables constrained to belong to set.

    Adding this variable can be understood as doing:

    function JuMP.add_variable(
    +x ≤ 1
    source

    VariableConstrainedOnCreation

    JuMP.VariableConstrainedOnCreationType
    VariableConstrainedOnCreation <: AbstractVariable

    Variable scalar_variables constrained to belong to set.

    Adding this variable can be understood as doing:

    function JuMP.add_variable(
         model::GenericModel,
         variable::VariableConstrainedOnCreation,
         names,
    @@ -3078,9 +3078,9 @@
         var_ref = add_variable(model, variable.scalar_variable, name)
         add_constraint(model, VectorConstraint(var_ref, variable.set))
         return var_ref
    -end

    but adds the variables with MOI.add_constrained_variable(model, variable.set) instead.

    source

    VariableInfo

    JuMP.VariableInfoType
    VariableInfo{S,T,U,V}

    A struct by JuMP internally when creating variables. This may also be used by JuMP extensions to create new types of variables.

    See also: ScalarVariable.

    source

    VariableNotOwned

    JuMP.VariableNotOwnedType
    struct VariableNotOwned{V<:AbstractVariableRef} <: Exception
    +end

    but adds the variables with MOI.add_constrained_variable(model, variable.set) instead.

    source

    VariableInfo

    JuMP.VariableInfoType
    VariableInfo{S,T,U,V}

    A struct by JuMP internally when creating variables. This may also be used by JuMP extensions to create new types of variables.

    See also: ScalarVariable.

    source

    VariableNotOwned

    JuMP.VariableNotOwnedType
    struct VariableNotOwned{V<:AbstractVariableRef} <: Exception
         variable::V
    -end

    The variable variable was used in a model different to owner_model(variable).

    source

    VariableRef

    JuMP.VariableRefType
    GenericVariableRef{T} <: AbstractVariableRef

    Holds a reference to the model and the corresponding MOI.VariableIndex.

    source

    VariablesConstrainedOnCreation

    JuMP.VariablesConstrainedOnCreationType
    VariablesConstrainedOnCreation <: AbstractVariable

    Vector of variables scalar_variables constrained to belong to set. Adding this variable can be thought as doing:

    function JuMP.add_variable(
    +end

    The variable variable was used in a model different to owner_model(variable).

    source

    VariableRef

    JuMP.VariableRefType
    GenericVariableRef{T} <: AbstractVariableRef

    Holds a reference to the model and the corresponding MOI.VariableIndex.

    source

    VariablesConstrainedOnCreation

    JuMP.VariablesConstrainedOnCreationType
    VariablesConstrainedOnCreation <: AbstractVariable

    Vector of variables scalar_variables constrained to belong to set. Adding this variable can be thought as doing:

    function JuMP.add_variable(
         model::GenericModel,
         variable::VariablesConstrainedOnCreation,
         names,
    @@ -3089,7 +3089,7 @@
         var_refs = add_variable.(model, variable.scalar_variables, v_names)
         add_constraint(model, VectorConstraint(var_refs, variable.set))
         return reshape_vector(var_refs, variable.shape)
    -end

    but adds the variables with MOI.add_constrained_variables(model, variable.set) instead. See the MOI documentation for the difference between adding the variables with MOI.add_constrained_variables and adding them with MOI.add_variables and adding the constraint separately.

    source

    VectorConstraint

    JuMP.VectorConstraintType
    struct VectorConstraint

    The data for a vector constraint.

    See also the documentation on JuMP's representation of constraints.

    Fields

    • func: field contains a JuMP object representing the function
    • set: field contains the MOI set.
    • shape: field contains an AbstractShape matching the form in which the constraint was constructed (for example, by using matrices or flat vectors).

    Example

    julia> model = Model();
    +end

    but adds the variables with MOI.add_constrained_variables(model, variable.set) instead. See the MOI documentation for the difference between adding the variables with MOI.add_constrained_variables and adding them with MOI.add_variables and adding the constraint separately.

    source

    VectorConstraint

    JuMP.VectorConstraintType
    struct VectorConstraint

    The data for a vector constraint.

    See also the documentation on JuMP's representation of constraints.

    Fields

    • func: field contains a JuMP object representing the function
    • set: field contains the MOI set.
    • shape: field contains an AbstractShape matching the form in which the constraint was constructed (for example, by using matrices or flat vectors).

    Example

    julia> model = Model();
     
     julia> @variable(model, x[1:3]);
     
    @@ -3112,14 +3112,14 @@
     MathOptInterface.SecondOrderCone(3)
     
     julia> object.shape
    -VectorShape()
    source

    VectorShape

    VectorShape

    JuMP.VectorShapeType
    VectorShape()

    An AbstractShape that represents vector-valued constraints.

    Example

    julia> model = Model();
     
     julia> @variable(model, x[1:2]);
     
     julia> c = @constraint(model, x in SOS1());
     
     julia> shape(constraint_object(c))
    -VectorShape()
    source

    Zeros

    JuMP.ZerosType
    Zeros()

    The JuMP equivalent of the MOI.Zeros set, in which the dimension is inferred from the corresponding function.

    Example

    julia> model = Model();
    +VectorShape()
    source

    Zeros

    JuMP.ZerosType
    Zeros()

    The JuMP equivalent of the MOI.Zeros set, in which the dimension is inferred from the corresponding function.

    Example

    julia> model = Model();
     
     julia> @variable(model, x[1:2])
     2-element Vector{VariableRef}:
    @@ -3134,7 +3134,7 @@
     julia> b = [5, 6];
     
     julia> @constraint(model, A * x == b)
    -[x[1] + 2 x[2] - 5, 3 x[1] + 4 x[2] - 6] ∈ Zeros()
    source

    ALMOST_DUAL_INFEASIBLE

    ALMOST_INFEASIBLE

    ALMOST_LOCALLY_SOLVED

    JuMP.ALMOST_LOCALLY_SOLVEDConstant
    ALMOST_LOCALLY_SOLVED::TerminationStatusCode

    An instance of the TerminationStatusCode enum.

    ALMOST_LOCALLY_SOLVED: The algorithm converged to a stationary point, local optimal solution, or could not find directions for improvement within relaxed tolerances.

    source

    ALMOST_OPTIMAL

    AUTOMATIC

    DIRECT

    JuMP.DIRECTConstant

    moi_backend field holds an AbstractOptimizer. No extra copy of the model is stored. The moi_backend must support add_constraint etc.

    source

    DUAL_INFEASIBLE

    JuMP.DUAL_INFEASIBLEConstant
    DUAL_INFEASIBLE::TerminationStatusCode

    An instance of the TerminationStatusCode enum.

    DUAL_INFEASIBLE: The algorithm concluded that no dual bound exists for the problem. If, additionally, a feasible (primal) solution is known to exist, this status typically implies that the problem is unbounded, with some technical exceptions.

    source

    FEASIBILITY_SENSE

    FEASIBLE_POINT

    INFEASIBILITY_CERTIFICATE

    JuMP.INFEASIBILITY_CERTIFICATEConstant
    INFEASIBILITY_CERTIFICATE::ResultStatusCode

    An instance of the ResultStatusCode enum.

    INFEASIBILITY_CERTIFICATE: the result vector is an infeasibility certificate. If the PrimalStatus is INFEASIBILITY_CERTIFICATE, then the primal result vector is a certificate of dual infeasibility. If the DualStatus is INFEASIBILITY_CERTIFICATE, then the dual result vector is a proof of primal infeasibility.

    source

    INFEASIBLE

    INFEASIBLE_OR_UNBOUNDED

    JuMP.INFEASIBLE_OR_UNBOUNDEDConstant
    INFEASIBLE_OR_UNBOUNDED::TerminationStatusCode

    An instance of the TerminationStatusCode enum.

    INFEASIBLE_OR_UNBOUNDED: The algorithm stopped because it decided that the problem is infeasible or unbounded; this occasionally happens during MIP presolve.

    source

    INFEASIBLE_POINT

    INTERRUPTED

    INVALID_MODEL

    INVALID_OPTION

    ITERATION_LIMIT

    LOCALLY_INFEASIBLE

    JuMP.LOCALLY_INFEASIBLEConstant
    LOCALLY_INFEASIBLE::TerminationStatusCode

    An instance of the TerminationStatusCode enum.

    LOCALLY_INFEASIBLE: The algorithm converged to an infeasible point or otherwise completed its search without finding a feasible solution, without guarantees that no feasible solution exists.

    source

    LOCALLY_SOLVED

    JuMP.LOCALLY_SOLVEDConstant
    LOCALLY_SOLVED::TerminationStatusCode

    An instance of the TerminationStatusCode enum.

    LOCALLY_SOLVED: The algorithm converged to a stationary point, local optimal solution, could not find directions for improvement, or otherwise completed its search without global guarantees.

    source

    MANUAL

    JuMP.MANUALConstant

    moi_backend field holds a CachingOptimizer in MANUAL mode.

    source

    MAX_SENSE

    MEMORY_LIMIT

    MIN_SENSE

    NEARLY_FEASIBLE_POINT

    NEARLY_INFEASIBILITY_CERTIFICATE

    NEARLY_REDUCTION_CERTIFICATE

    NODE_LIMIT

    JuMP.NODE_LIMITConstant
    NODE_LIMIT::TerminationStatusCode

    An instance of the TerminationStatusCode enum.

    NODE_LIMIT: A branch-and-bound algorithm stopped because it explored a maximum number of nodes in the branch-and-bound tree.

    source

    NORM_LIMIT

    NO_SOLUTION

    NUMERICAL_ERROR

    OBJECTIVE_LIMIT

    OPTIMAL

    OPTIMIZE_NOT_CALLED

    OTHER_ERROR

    JuMP.OTHER_ERRORConstant
    OTHER_ERROR::TerminationStatusCode

    An instance of the TerminationStatusCode enum.

    OTHER_ERROR: The algorithm stopped because of an error not covered by one of the statuses defined above.

    source

    OTHER_LIMIT

    OTHER_RESULT_STATUS

    JuMP.OTHER_RESULT_STATUSConstant
    OTHER_RESULT_STATUS::ResultStatusCode

    An instance of the ResultStatusCode enum.

    OTHER_RESULT_STATUS: the result vector contains a solution with an interpretation not covered by one of the statuses defined above

    source

    REDUCTION_CERTIFICATE

    JuMP.REDUCTION_CERTIFICATEConstant
    REDUCTION_CERTIFICATE::ResultStatusCode

    An instance of the ResultStatusCode enum.

    REDUCTION_CERTIFICATE: the result vector is an ill-posed certificate; see this article for details. If the PrimalStatus is REDUCTION_CERTIFICATE, then the primal result vector is a proof that the dual problem is ill-posed. If the DualStatus is REDUCTION_CERTIFICATE, then the dual result vector is a proof that the primal is ill-posed.

    source

    SLOW_PROGRESS

    JuMP.SLOW_PROGRESSConstant
    SLOW_PROGRESS::TerminationStatusCode

    An instance of the TerminationStatusCode enum.

    SLOW_PROGRESS: The algorithm stopped because it was unable to continue making progress towards the solution.

    source

    SOLUTION_LIMIT

    JuMP.SOLUTION_LIMITConstant
    SOLUTION_LIMIT::TerminationStatusCode

    An instance of the TerminationStatusCode enum.

    SOLUTION_LIMIT: The algorithm stopped because it found the required number of solutions. This is often used in MIPs to get the solver to return the first feasible solution it encounters.

    source

    TIME_LIMIT

    UNKNOWN_RESULT_STATUS

    op_and

    JuMP.op_andConstant
    op_and(x, y)

    A function that falls back to x & y, but when called with JuMP variables or expressions, returns a GenericNonlinearExpr.

    Example

    julia> model = Model();
    +[x[1] + 2 x[2] - 5, 3 x[1] + 4 x[2] - 6] ∈ Zeros()
    source

    ALMOST_DUAL_INFEASIBLE

    ALMOST_INFEASIBLE

    ALMOST_LOCALLY_SOLVED

    JuMP.ALMOST_LOCALLY_SOLVEDConstant
    ALMOST_LOCALLY_SOLVED::TerminationStatusCode

    An instance of the TerminationStatusCode enum.

    ALMOST_LOCALLY_SOLVED: The algorithm converged to a stationary point, local optimal solution, or could not find directions for improvement within relaxed tolerances.

    source

    ALMOST_OPTIMAL

    AUTOMATIC

    DIRECT

    JuMP.DIRECTConstant

    moi_backend field holds an AbstractOptimizer. No extra copy of the model is stored. The moi_backend must support add_constraint etc.

    source

    DUAL_INFEASIBLE

    JuMP.DUAL_INFEASIBLEConstant
    DUAL_INFEASIBLE::TerminationStatusCode

    An instance of the TerminationStatusCode enum.

    DUAL_INFEASIBLE: The algorithm concluded that no dual bound exists for the problem. If, additionally, a feasible (primal) solution is known to exist, this status typically implies that the problem is unbounded, with some technical exceptions.

    source

    FEASIBILITY_SENSE

    FEASIBLE_POINT

    INFEASIBILITY_CERTIFICATE

    JuMP.INFEASIBILITY_CERTIFICATEConstant
    INFEASIBILITY_CERTIFICATE::ResultStatusCode

    An instance of the ResultStatusCode enum.

    INFEASIBILITY_CERTIFICATE: the result vector is an infeasibility certificate. If the PrimalStatus is INFEASIBILITY_CERTIFICATE, then the primal result vector is a certificate of dual infeasibility. If the DualStatus is INFEASIBILITY_CERTIFICATE, then the dual result vector is a proof of primal infeasibility.

    source

    INFEASIBLE

    INFEASIBLE_OR_UNBOUNDED

    JuMP.INFEASIBLE_OR_UNBOUNDEDConstant
    INFEASIBLE_OR_UNBOUNDED::TerminationStatusCode

    An instance of the TerminationStatusCode enum.

    INFEASIBLE_OR_UNBOUNDED: The algorithm stopped because it decided that the problem is infeasible or unbounded; this occasionally happens during MIP presolve.

    source

    INFEASIBLE_POINT

    INTERRUPTED

    INVALID_MODEL

    INVALID_OPTION

    ITERATION_LIMIT

    LOCALLY_INFEASIBLE

    JuMP.LOCALLY_INFEASIBLEConstant
    LOCALLY_INFEASIBLE::TerminationStatusCode

    An instance of the TerminationStatusCode enum.

    LOCALLY_INFEASIBLE: The algorithm converged to an infeasible point or otherwise completed its search without finding a feasible solution, without guarantees that no feasible solution exists.

    source

    LOCALLY_SOLVED

    JuMP.LOCALLY_SOLVEDConstant
    LOCALLY_SOLVED::TerminationStatusCode

    An instance of the TerminationStatusCode enum.

    LOCALLY_SOLVED: The algorithm converged to a stationary point, local optimal solution, could not find directions for improvement, or otherwise completed its search without global guarantees.

    source

    MANUAL

    JuMP.MANUALConstant

    moi_backend field holds a CachingOptimizer in MANUAL mode.

    source

    MAX_SENSE

    MEMORY_LIMIT

    MIN_SENSE

    NEARLY_FEASIBLE_POINT

    NEARLY_INFEASIBILITY_CERTIFICATE

    NEARLY_REDUCTION_CERTIFICATE

    NODE_LIMIT

    JuMP.NODE_LIMITConstant
    NODE_LIMIT::TerminationStatusCode

    An instance of the TerminationStatusCode enum.

    NODE_LIMIT: A branch-and-bound algorithm stopped because it explored a maximum number of nodes in the branch-and-bound tree.

    source

    NORM_LIMIT

    NO_SOLUTION

    NUMERICAL_ERROR

    OBJECTIVE_LIMIT

    OPTIMAL

    OPTIMIZE_NOT_CALLED

    OTHER_ERROR

    JuMP.OTHER_ERRORConstant
    OTHER_ERROR::TerminationStatusCode

    An instance of the TerminationStatusCode enum.

    OTHER_ERROR: The algorithm stopped because of an error not covered by one of the statuses defined above.

    source

    OTHER_LIMIT

    OTHER_RESULT_STATUS

    JuMP.OTHER_RESULT_STATUSConstant
    OTHER_RESULT_STATUS::ResultStatusCode

    An instance of the ResultStatusCode enum.

    OTHER_RESULT_STATUS: the result vector contains a solution with an interpretation not covered by one of the statuses defined above

    source

    REDUCTION_CERTIFICATE

    JuMP.REDUCTION_CERTIFICATEConstant
    REDUCTION_CERTIFICATE::ResultStatusCode

    An instance of the ResultStatusCode enum.

    REDUCTION_CERTIFICATE: the result vector is an ill-posed certificate; see this article for details. If the PrimalStatus is REDUCTION_CERTIFICATE, then the primal result vector is a proof that the dual problem is ill-posed. If the DualStatus is REDUCTION_CERTIFICATE, then the dual result vector is a proof that the primal is ill-posed.

    source

    SLOW_PROGRESS

    JuMP.SLOW_PROGRESSConstant
    SLOW_PROGRESS::TerminationStatusCode

    An instance of the TerminationStatusCode enum.

    SLOW_PROGRESS: The algorithm stopped because it was unable to continue making progress towards the solution.

    source

    SOLUTION_LIMIT

    JuMP.SOLUTION_LIMITConstant
    SOLUTION_LIMIT::TerminationStatusCode

    An instance of the TerminationStatusCode enum.

    SOLUTION_LIMIT: The algorithm stopped because it found the required number of solutions. This is often used in MIPs to get the solver to return the first feasible solution it encounters.

    source

    TIME_LIMIT

    UNKNOWN_RESULT_STATUS

    op_and

    JuMP.op_andConstant
    op_and(x, y)

    A function that falls back to x & y, but when called with JuMP variables or expressions, returns a GenericNonlinearExpr.

    Example

    julia> model = Model();
     
     julia> @variable(model, x);
     
    @@ -3142,7 +3142,7 @@
     false
     
     julia> op_and(true, x)
    -true && x
    source

    op_equal_to

    JuMP.op_equal_toConstant
    op_equal_to(x, y)

    A function that falls back to x == y, but when called with JuMP variables or expressions, returns a GenericNonlinearExpr.

    Example

    julia> model = Model();
    +true && x
    source

    op_equal_to

    JuMP.op_equal_toConstant
    op_equal_to(x, y)

    A function that falls back to x == y, but when called with JuMP variables or expressions, returns a GenericNonlinearExpr.

    Example

    julia> model = Model();
     
     julia> @variable(model, x);
     
    @@ -3150,7 +3150,7 @@
     true
     
     julia> op_equal_to(x, 2)
    -x == 2
    source

    op_greater_than_or_equal_to

    op_greater_than_or_equal_to

    JuMP.op_greater_than_or_equal_toConstant
    op_greater_than_or_equal_to(x, y)

    A function that falls back to x >= y, but when called with JuMP variables or expressions, returns a GenericNonlinearExpr.

    Example

    julia> model = Model();
     
     julia> @variable(model, x);
     
    @@ -3158,7 +3158,7 @@
     true
     
     julia> op_greater_than_or_equal_to(x, 2)
    -x >= 2
    source

    op_less_than_or_equal_to

    op_less_than_or_equal_to

    JuMP.op_less_than_or_equal_toConstant
    op_less_than_or_equal_to(x, y)

    A function that falls back to x <= y, but when called with JuMP variables or expressions, returns a GenericNonlinearExpr.

    Example

    julia> model = Model();
     
     julia> @variable(model, x);
     
    @@ -3166,7 +3166,7 @@
     true
     
     julia> op_less_than_or_equal_to(x, 2)
    -x <= 2
    source

    op_or

    JuMP.op_orConstant
    op_or(x, y)

    A function that falls back to x | y, but when called with JuMP variables or expressions, returns a GenericNonlinearExpr.

    Example

    julia> model = Model();
    +x <= 2
    source

    op_or

    JuMP.op_orConstant
    op_or(x, y)

    A function that falls back to x | y, but when called with JuMP variables or expressions, returns a GenericNonlinearExpr.

    Example

    julia> model = Model();
     
     julia> @variable(model, x);
     
    @@ -3174,7 +3174,7 @@
     true
     
     julia> op_or(true, x)
    -true || x
    source

    op_strictly_greater_than

    op_strictly_greater_than

    JuMP.op_strictly_greater_thanConstant
    op_strictly_greater_than(x, y)

    A function that falls back to x > y, but when called with JuMP variables or expressions, returns a GenericNonlinearExpr.

    Example

    julia> model = Model();
     
     julia> @variable(model, x);
     
    @@ -3182,7 +3182,7 @@
     false
     
     julia> op_strictly_greater_than(x, 2)
    -x > 2
    source

    op_strictly_less_than

    op_strictly_less_than

    JuMP.op_strictly_less_thanConstant
    op_strictly_less_than(x, y)

    A function that falls back to x < y, but when called with JuMP variables or expressions, returns a GenericNonlinearExpr.

    Example

    julia> model = Model();
     
     julia> @variable(model, x);
     
    @@ -3190,7 +3190,7 @@
     true
     
     julia> op_strictly_less_than(x, 2)
    -x < 2
    source

    Base.empty!(::GenericModel)

    Base.empty!Method
    empty!(model::GenericModel)::GenericModel

    Empty the model, that is, remove all variables, constraints and model attributes but not optimizer attributes. Always return the argument.

    Note: removes extensions data.

    Example

    julia> model = Model();
    +x < 2
    source

    Base.empty!(::GenericModel)

    Base.empty!Method
    empty!(model::GenericModel)::GenericModel

    Empty the model, that is, remove all variables, constraints and model attributes but not optimizer attributes. Always return the argument.

    Note: removes extensions data.

    Example

    julia> model = Model();
     
     julia> @variable(model, x[1:2]);
     
    @@ -3210,7 +3210,7 @@
     Subject to
     
     julia> isempty(model)
    -true
    source

    Base.isempty(::GenericModel)

    Base.isemptyMethod
    isempty(model::GenericModel)

    Verifies whether the model is empty, that is, whether the MOI backend is empty and whether the model is in the same state as at its creation, apart from optimizer attributes.

    Example

    julia> model = Model();
    +true
    source

    Base.isempty(::GenericModel)

    Base.isemptyMethod
    isempty(model::GenericModel)

    Verifies whether the model is empty, that is, whether the MOI backend is empty and whether the model is in the same state as at its creation, apart from optimizer attributes.

    Example

    julia> model = Model();
     
     julia> isempty(model)
     true
    @@ -3218,7 +3218,7 @@
     julia> @variable(model, x[1:2]);
     
     julia> isempty(model)
    -false
    source

    Base.copy(::AbstractModel)

    Base.copyMethod
    copy(model::AbstractModel)

    Return a copy of the model model. It is similar to copy_model except that it does not return the mapping between the references of model and its copy.

    Note

    Model copy is not supported in DIRECT mode, that is, when a model is constructed using the direct_model constructor instead of the Model constructor. Moreover, independently on whether an optimizer was provided at model construction, the new model will have no optimizer, that is, an optimizer will have to be provided to the new model in the optimize! call.

    Example

    In the following example, a model model is constructed with a variable x and a constraint cref. It is then copied into a model new_model with the new references assigned to x_new and cref_new.

    julia> model = Model();
    +false
    source

    Base.copy(::AbstractModel)

    Base.copyMethod
    copy(model::AbstractModel)

    Return a copy of the model model. It is similar to copy_model except that it does not return the mapping between the references of model and its copy.

    Note

    Model copy is not supported in DIRECT mode, that is, when a model is constructed using the direct_model constructor instead of the Model constructor. Moreover, independently on whether an optimizer was provided at model construction, the new model will have no optimizer, that is, an optimizer will have to be provided to the new model in the optimize! call.

    Example

    In the following example, a model model is constructed with a variable x and a constraint cref. It is then copied into a model new_model with the new references assigned to x_new and cref_new.

    julia> model = Model();
     
     julia> @variable(model, x)
     x
    @@ -3232,12 +3232,12 @@
     x
     
     julia> cref_new = model[:cref]
    -cref : x = 2
    source

    Base.write(::IO, ::GenericModel; ::MOI.FileFormats.FileFormat)

    Base.write(::IO, ::GenericModel; ::MOI.FileFormats.FileFormat)

    Base.writeMethod
    Base.write(
         io::IO,
         model::GenericModel;
         format::MOI.FileFormats.FileFormat = MOI.FileFormats.FORMAT_MOF,
         kwargs...,
    -)

    Write the JuMP model model to io in the format format.

    Other kwargs are passed to the Model constructor of the chosen format.

    source

    MOI.Utilities.reset_optimizer(::GenericModel)

    MOI.Utilities.drop_optimizer(::GenericModel)

    MOI.Utilities.attach_optimizer(::GenericModel)

    @NLconstraint

    JuMP.@NLconstraintMacro
    @NLconstraint(model::GenericModel, expr)

    Add a constraint described by the nonlinear expression expr. See also @constraint.

    Compat

    This macro is part of the legacy nonlinear interface. Consider using the new nonlinear interface documented in Nonlinear Modeling. In most cases, you can replace @NLconstraint with @constraint.

    Example

    julia> model = Model();
    +)

    Write the JuMP model model to io in the format format.

    Other kwargs are passed to the Model constructor of the chosen format.

    source

    MOI.Utilities.reset_optimizer(::GenericModel)

    MOI.Utilities.drop_optimizer(::GenericModel)

    MOI.Utilities.attach_optimizer(::GenericModel)

    @NLconstraint

    JuMP.@NLconstraintMacro
    @NLconstraint(model::GenericModel, expr)

    Add a constraint described by the nonlinear expression expr. See also @constraint.

    Compat

    This macro is part of the legacy nonlinear interface. Consider using the new nonlinear interface documented in Nonlinear Modeling. In most cases, you can replace @NLconstraint with @constraint.

    Example

    julia> model = Model();
     
     julia> @variable(model, x)
     x
    @@ -3249,7 +3249,7 @@
     3-element Vector{NonlinearConstraintRef{ScalarShape}}:
      (sin(1.0 * x) - 1.0 / 1.0) - 0.0 ≤ 0
      (sin(2.0 * x) - 1.0 / 2.0) - 0.0 ≤ 0
    - (sin(3.0 * x) - 1.0 / 3.0) - 0.0 ≤ 0
    source

    @NLconstraints

    JuMP.@NLconstraintsMacro
    @NLconstraints(model, args...)

    Adds multiple nonlinear constraints to model at once, in the same fashion as the @NLconstraint macro.

    The model must be the first argument, and multiple constraints can be added on multiple lines wrapped in a begin ... end block.

    The macro returns a tuple containing the constraints that were defined.

    Compat

    This macro is part of the legacy nonlinear interface. Consider using the new nonlinear interface documented in Nonlinear Modeling. In most cases, you can replace @NLconstraints with @constraints.

    Example

    julia> model = Model();
    + (sin(3.0 * x) - 1.0 / 3.0) - 0.0 ≤ 0
    source

    @NLconstraints

    JuMP.@NLconstraintsMacro
    @NLconstraints(model, args...)

    Adds multiple nonlinear constraints to model at once, in the same fashion as the @NLconstraint macro.

    The model must be the first argument, and multiple constraints can be added on multiple lines wrapped in a begin ... end block.

    The macro returns a tuple containing the constraints that were defined.

    Compat

    This macro is part of the legacy nonlinear interface. Consider using the new nonlinear interface documented in Nonlinear Modeling. In most cases, you can replace @NLconstraints with @constraints.

    Example

    julia> model = Model();
     
     julia> @variable(model, x);
     
    @@ -3265,7 +3265,7 @@
                t >= sqrt(x^2 + y^2)
                [i = 1:2], z[i] <= log(a[i])
            end)
    -((t - sqrt(x ^ 2.0 + y ^ 2.0)) - 0.0 ≥ 0, NonlinearConstraintRef{ScalarShape}[(z[1] - log(4.0)) - 0.0 ≤ 0, (z[2] - log(5.0)) - 0.0 ≤ 0])
    source

    @NLexpression

    JuMP.@NLexpressionMacro
    @NLexpression(args...)

    Efficiently build a nonlinear expression which can then be inserted in other nonlinear constraints and the objective. See also [@expression].

    Compat

    This macro is part of the legacy nonlinear interface. Consider using the new nonlinear interface documented in Nonlinear Modeling. In most cases, you can replace @NLexpression with @expression.

    Example

    julia> model = Model();
    +((t - sqrt(x ^ 2.0 + y ^ 2.0)) - 0.0 ≥ 0, NonlinearConstraintRef{ScalarShape}[(z[1] - log(4.0)) - 0.0 ≤ 0, (z[2] - log(5.0)) - 0.0 ≤ 0])
    source

    @NLexpression

    JuMP.@NLexpressionMacro
    @NLexpression(args...)

    Efficiently build a nonlinear expression which can then be inserted in other nonlinear constraints and the objective. See also [@expression].

    Compat

    This macro is part of the legacy nonlinear interface. Consider using the new nonlinear interface documented in Nonlinear Modeling. In most cases, you can replace @NLexpression with @expression.

    Example

    julia> model = Model();
     
     julia> @variable(model, x)
     x
    @@ -3286,7 +3286,7 @@
      subexpression[4]: sin(3.0 * x)
     
     julia> my_expr_2 = @NLexpression(model, log(1 + sum(exp(my_expr_1[i]) for i in 1:2)))
    -subexpression[5]: log(1.0 + (exp(subexpression[2]) + exp(subexpression[3])))
    source

    @NLexpressions

    JuMP.@NLexpressionsMacro
    @NLexpressions(model, args...)

    Adds multiple nonlinear expressions to model at once, in the same fashion as the @NLexpression macro.

    The model must be the first argument, and multiple expressions can be added on multiple lines wrapped in a begin ... end block.

    The macro returns a tuple containing the expressions that were defined.

    Compat

    This macro is part of the legacy nonlinear interface. Consider using the new nonlinear interface documented in Nonlinear Modeling. In most cases, you can replace @NLexpressions with @expressions.

    Example

    julia> model = Model();
    +subexpression[5]: log(1.0 + (exp(subexpression[2]) + exp(subexpression[3])))
    source

    @NLexpressions

    JuMP.@NLexpressionsMacro
    @NLexpressions(model, args...)

    Adds multiple nonlinear expressions to model at once, in the same fashion as the @NLexpression macro.

    The model must be the first argument, and multiple expressions can be added on multiple lines wrapped in a begin ... end block.

    The macro returns a tuple containing the expressions that were defined.

    Compat

    This macro is part of the legacy nonlinear interface. Consider using the new nonlinear interface documented in Nonlinear Modeling. In most cases, you can replace @NLexpressions with @expressions.

    Example

    julia> model = Model();
     
     julia> @variable(model, x);
     
    @@ -3300,7 +3300,7 @@
                my_expr, sqrt(x^2 + y^2)
                my_expr_1[i = 1:2], log(a[i]) - z[i]
            end)
    -(subexpression[1]: sqrt(x ^ 2.0 + y ^ 2.0), NonlinearExpression[subexpression[2]: log(4.0) - z[1], subexpression[3]: log(5.0) - z[2]])
    source

    @NLobjective

    JuMP.@NLobjectiveMacro
    @NLobjective(model, sense, expression)

    Add a nonlinear objective to model with optimization sense sense. sense must be Max or Min.

    Compat

    This macro is part of the legacy nonlinear interface. Consider using the new nonlinear interface documented in Nonlinear Modeling. In most cases, you can replace @NLobjective with @objective.

    Example

    julia> model = Model();
    +(subexpression[1]: sqrt(x ^ 2.0 + y ^ 2.0), NonlinearExpression[subexpression[2]: log(4.0) - z[1], subexpression[3]: log(5.0) - z[2]])
    source

    @NLobjective

    JuMP.@NLobjectiveMacro
    @NLobjective(model, sense, expression)

    Add a nonlinear objective to model with optimization sense sense. sense must be Max or Min.

    Compat

    This macro is part of the legacy nonlinear interface. Consider using the new nonlinear interface documented in Nonlinear Modeling. In most cases, you can replace @NLobjective with @objective.

    Example

    julia> model = Model();
     
     julia> @variable(model, x)
     x
    @@ -3309,7 +3309,7 @@
     
     julia> print(model)
     Max 2.0 * x + 1.0 + sin(x)
    -Subject to
    source

    @NLparameter

    JuMP.@NLparameterMacro
    @NLparameter(model, param == value)

    Create and return a nonlinear parameter param attached to the model model with initial value set to value. Nonlinear parameters may be used only in nonlinear expressions.

    Example

    julia> model = Model();
    +Subject to
    source

    @NLparameter

    JuMP.@NLparameterMacro
    @NLparameter(model, param == value)

    Create and return a nonlinear parameter param attached to the model model with initial value set to value. Nonlinear parameters may be used only in nonlinear expressions.

    Example

    julia> model = Model();
     
     julia> @NLparameter(model, x == 10)
     x == 10.0
    @@ -3339,7 +3339,7 @@
      parameter[3] == 6.0
     
     julia> value(y[2])
    -4.0
    source

    @NLparameters

    JuMP.@NLparametersMacro
     @NLparameters(model, args...)

    Create and return multiple nonlinear parameters attached to model model, in the same fashion as @NLparameter macro.

    The model must be the first argument, and multiple parameters can be added on multiple lines wrapped in a begin ... end block. Distinct parameters need to be placed on separate lines as in the following example.

    The macro returns a tuple containing the parameters that were defined.

    Compat

    This macro is part of the legacy nonlinear interface. Consider using the new nonlinear interface documented in Nonlinear Modeling. In most cases, you can replace a call like

    @NLparameters(model, begin
    +4.0
    source

    @NLparameters

    JuMP.@NLparametersMacro
     @NLparameters(model, args...)

    Create and return multiple nonlinear parameters attached to model model, in the same fashion as @NLparameter macro.

    The model must be the first argument, and multiple parameters can be added on multiple lines wrapped in a begin ... end block. Distinct parameters need to be placed on separate lines as in the following example.

    The macro returns a tuple containing the parameters that were defined.

    Compat

    This macro is part of the legacy nonlinear interface. Consider using the new nonlinear interface documented in Nonlinear Modeling. In most cases, you can replace a call like

    @NLparameters(model, begin
         p == value
     end)

    with

    @variables(model, begin
         p in Parameter(value)
    @@ -3351,17 +3351,17 @@
            end);
     
     julia> value(x)
    -10.0
    source

    add_nonlinear_constraint

    JuMP.add_nonlinear_constraintFunction
    add_nonlinear_constraint(model::Model, expr::Expr)

    Add a nonlinear constraint described by the Julia expression ex to model.

    This function is most useful if the expression ex is generated programmatically, and you cannot use @NLconstraint.

    Compat

    This function is part of the legacy nonlinear interface. Consider using the new nonlinear interface documented in Nonlinear Modeling.

    Notes

    • You must interpolate the variables directly into the expression expr.

    Example

    julia> model = Model();
    +10.0
    source

    add_nonlinear_constraint

    JuMP.add_nonlinear_constraintFunction
    add_nonlinear_constraint(model::Model, expr::Expr)

    Add a nonlinear constraint described by the Julia expression ex to model.

    This function is most useful if the expression ex is generated programmatically, and you cannot use @NLconstraint.

    Compat

    This function is part of the legacy nonlinear interface. Consider using the new nonlinear interface documented in Nonlinear Modeling.

    Notes

    • You must interpolate the variables directly into the expression expr.

    Example

    julia> model = Model();
     
     julia> @variable(model, x);
     
     julia> add_nonlinear_constraint(model, :($(x) + $(x)^2 <= 1))
    -(x + x ^ 2.0) - 1.0 ≤ 0
    source

    add_nonlinear_expression

    JuMP.add_nonlinear_expressionFunction
    add_nonlinear_expression(model::Model, expr::Expr)

    Add a nonlinear expression expr to model.

    This function is most useful if the expression expr is generated programmatically, and you cannot use @NLexpression.

    Compat

    This function is part of the legacy nonlinear interface. Consider using the new nonlinear interface documented in Nonlinear Modeling.

    Notes

    • You must interpolate the variables directly into the expression expr.

    Example

    julia> model = Model();
    +(x + x ^ 2.0) - 1.0 ≤ 0
    source

    add_nonlinear_expression

    JuMP.add_nonlinear_expressionFunction
    add_nonlinear_expression(model::Model, expr::Expr)

    Add a nonlinear expression expr to model.

    This function is most useful if the expression expr is generated programmatically, and you cannot use @NLexpression.

    Compat

    This function is part of the legacy nonlinear interface. Consider using the new nonlinear interface documented in Nonlinear Modeling.

    Notes

    • You must interpolate the variables directly into the expression expr.

    Example

    julia> model = Model();
     
     julia> @variable(model, x);
     
     julia> add_nonlinear_expression(model, :($(x) + $(x)^2))
    -subexpression[1]: x + x ^ 2.0
    source

    add_nonlinear_parameter

    JuMP.add_nonlinear_parameterFunction
    add_nonlinear_parameter(model::Model, value::Real)

    Add an anonymous parameter to the model.

    Compat

    This function is part of the legacy nonlinear interface. Consider using the new nonlinear interface documented in Nonlinear Modeling.

    source

    all_nonlinear_constraints

    get_optimizer_attribute

    add_nonlinear_parameter

    JuMP.add_nonlinear_parameterFunction
    add_nonlinear_parameter(model::Model, value::Real)

    Add an anonymous parameter to the model.

    Compat

    This function is part of the legacy nonlinear interface. Consider using the new nonlinear interface documented in Nonlinear Modeling.

    source

    all_nonlinear_constraints

    get_optimizer_attribute

    JuMP.get_optimizer_attributeFunction
    get_optimizer_attribute(
         model::Union{GenericModel,MOI.OptimizerWithAttributes},
         attr::Union{AbstractString,MOI.AbstractOptimizerAttribute},
     )

    Return the value associated with the solver-specific attribute attr.

    If attr is an AbstractString, this is equivalent to get_optimizer_attribute(model, MOI.RawOptimizerAttribute(name)).

    Compat

    This method will remain in all v1.X releases of JuMP, but it may be removed in a future v2.0 release. We recommend using get_attribute instead.

    See also: set_optimizer_attribute, set_optimizer_attributes.

    Example

    julia> import Ipopt
    @@ -3369,18 +3369,18 @@
     julia> model = Model(Ipopt.Optimizer);
     
     julia> get_optimizer_attribute(model, MOI.Silent())
    -false
    source

    nonlinear_constraint_string

    nonlinear_constraint_string

    JuMP.nonlinear_constraint_stringFunction
    nonlinear_constraint_string(
         model::GenericModel,
         mode::MIME,
         c::_NonlinearConstraint,
    -)

    Return a string representation of the nonlinear constraint c belonging to model, given the mode.

    Compat

    This function is part of the legacy nonlinear interface. Consider using the new nonlinear interface documented in Nonlinear Modeling.

    source

    nonlinear_dual_start_value

    nonlinear_expr_string

    JuMP.nonlinear_expr_stringFunction
    nonlinear_expr_string(
    +)

    Return a string representation of the nonlinear constraint c belonging to model, given the mode.

    Compat

    This function is part of the legacy nonlinear interface. Consider using the new nonlinear interface documented in Nonlinear Modeling.

    source

    nonlinear_dual_start_value

    nonlinear_expr_string

    JuMP.nonlinear_expr_stringFunction
    nonlinear_expr_string(
         model::GenericModel,
         mode::MIME,
         c::MOI.Nonlinear.Expression,
    -)

    Return a string representation of the nonlinear expression c belonging to model, given the mode.

    Compat

    This function is part of the legacy nonlinear interface. Consider using the new nonlinear interface documented in Nonlinear Modeling.

    source

    nonlinear_model

    JuMP.nonlinear_modelFunction
    nonlinear_model(
    +)

    Return a string representation of the nonlinear expression c belonging to model, given the mode.

    Compat

    This function is part of the legacy nonlinear interface. Consider using the new nonlinear interface documented in Nonlinear Modeling.

    source

    nonlinear_model

    JuMP.nonlinear_modelFunction
    nonlinear_model(
         model::GenericModel;
         force::Bool = false,
    -)::Union{MOI.Nonlinear.Model,Nothing}

    If model has nonlinear components, return a MOI.Nonlinear.Model, otherwise return nothing.

    If force, always return a MOI.Nonlinear.Model, and if one does not exist for the model, create an empty one.

    Compat

    This function is part of the legacy nonlinear interface. Consider using the new nonlinear interface documented in Nonlinear Modeling.

    source

    num_nonlinear_constraints

    register

    JuMP.registerFunction
    register(
    +)::Union{MOI.Nonlinear.Model,Nothing}

    If model has nonlinear components, return a MOI.Nonlinear.Model, otherwise return nothing.

    If force, always return a MOI.Nonlinear.Model, and if one does not exist for the model, create an empty one.

    Compat

    This function is part of the legacy nonlinear interface. Consider using the new nonlinear interface documented in Nonlinear Modeling.

    source

    num_nonlinear_constraints

    register

    JuMP.registerFunction
    register(
         model::Model,
         op::Symbol,
         dimension::Integer,
    @@ -3408,7 +3408,7 @@
     
     julia> register(model, :g, 2, g; autodiff = true)
     
    -julia> @NLobjective(model, Min, g(x[1], x[2]))
    source
    register(
    +julia> @NLobjective(model, Min, g(x[1], x[2]))
    source
    register(
         model::Model,
         s::Symbol,
         dimension::Integer,
    @@ -3447,7 +3447,7 @@
     
     julia> register(model, :g, 2, g, ∇g)
     
    -julia> @NLobjective(model, Min, g(x[1], x[2]))
    source
    register(
    +julia> @NLobjective(model, Min, g(x[1], x[2]))
    source
    register(
         model::Model,
         s::Symbol,
         dimension::Integer,
    @@ -3471,7 +3471,7 @@
     julia> register(model, :foo, 1, f, ∇f, ∇²f)
     
     julia> @NLobjective(model, Min, foo(x))
    -
    source

    set_nonlinear_dual_start_value

    set_nonlinear_dual_start_value

    JuMP.set_nonlinear_dual_start_valueFunction
    set_nonlinear_dual_start_value(
         model::Model,
         start::Union{Nothing,Vector{Float64}},
     )

    Set the value of the MOI attribute MOI.NLPBlockDualStart.

    Compat

    This function is part of the legacy nonlinear interface. Consider using the new nonlinear interface documented in Nonlinear Modeling.

    The start vector corresponds to the Lagrangian duals of the nonlinear constraints, in the order given by all_nonlinear_constraints. That is, you must pass a single start vector corresponding to all of the nonlinear constraints in a single function call; you cannot set the dual start value of nonlinear constraints one-by-one. The example below demonstrates how to use all_nonlinear_constraints to create a mapping between the nonlinear constraint references and the start vector.

    Pass nothing to unset a previous start.

    Example

    julia> model = Model();
    @@ -3494,7 +3494,7 @@
     julia> nonlinear_dual_start_value(model)
     2-element Vector{Float64}:
      -1.0
    -  1.0
    source

    set_nonlinear_objective

    set_nonlinear_objective

    JuMP.set_nonlinear_objectiveFunction
    set_nonlinear_objective(
         model::Model,
         sense::MOI.OptimizationSense,
         expr::Expr,
    @@ -3502,17 +3502,17 @@
     
     julia> @variable(model, x);
     
    -julia> set_nonlinear_objective(model, MIN_SENSE, :($(x) + $(x)^2))
    source

    set_normalized_coefficients

    set_normalized_coefficients

    JuMP.set_normalized_coefficientsFunction
    set_normalized_coefficients(
         constraint::ConstraintRef{<:AbstractModel,<:MOI.ConstraintIndex{F}},
         variable::AbstractVariableRef,
         new_coefficients::Vector{Tuple{Int64,T}},
    -) where {T,F<:Union{MOI.VectorAffineFunction{T},MOI.VectorQuadraticFunction{T}}}

    A deprecated method that now redirects to set_normalized_coefficient.

    source

    set_optimizer_attribute

    set_optimizer_attribute

    JuMP.set_optimizer_attributeFunction
    set_optimizer_attribute(
         model::Union{GenericModel,MOI.OptimizerWithAttributes},
         attr::Union{AbstractString,MOI.AbstractOptimizerAttribute},
         value,
     )

    Set the solver-specific attribute attr in model to value.

    If attr is an AbstractString, this is equivalent to set_optimizer_attribute(model, MOI.RawOptimizerAttribute(name), value).

    Compat

    This method will remain in all v1.X releases of JuMP, but it may be removed in a future v2.0 release. We recommend using set_attribute instead.

    See also: set_optimizer_attributes, get_optimizer_attribute.

    Example

    julia> model = Model();
     
    -julia> set_optimizer_attribute(model, MOI.Silent(), true)
    source

    set_optimizer_attributes

    set_optimizer_attributes

    JuMP.set_optimizer_attributesFunction
    set_optimizer_attributes(
         model::Union{GenericModel,MOI.OptimizerWithAttributes},
         pairs::Pair...,
     )

    Given a list of attribute => value pairs, calls set_optimizer_attribute(model, attribute, value) for each pair.

    Compat

    This method will remain in all v1.X releases of JuMP, but it may be removed in a future v2.0 release. We recommend using set_attributes instead.

    See also: set_optimizer_attribute, get_optimizer_attribute.

    Example

    julia> import Ipopt
    @@ -3525,7 +3525,7 @@
     
     julia> set_optimizer_attribute(model, "tol", 1e-4)
     
    -julia> set_optimizer_attribute(model, "max_iter", 100)
    source

    set_value

    JuMP.set_valueFunction
    set_value(p::NonlinearParameter, v::Number)

    Store the value v in the nonlinear parameter p.

    Compat

    This function is part of the legacy nonlinear interface. Consider using the new nonlinear interface documented in Nonlinear Modeling.

    Example

    julia> model = Model();
    +julia> set_optimizer_attribute(model, "max_iter", 100)
    source

    set_value

    JuMP.set_valueFunction
    set_value(p::NonlinearParameter, v::Number)

    Store the value v in the nonlinear parameter p.

    Compat

    This function is part of the legacy nonlinear interface. Consider using the new nonlinear interface documented in Nonlinear Modeling.

    Example

    julia> model = Model();
     
     julia> @NLparameter(model, p == 0)
     p == 0.0
    @@ -3534,4 +3534,4 @@
     5
     
     julia> value(p)
    -5.0
    source

    NonlinearConstraintIndex

    NonlinearConstraintRef

    NonlinearExpression

    NonlinearParameter

    JuMP.NonlinearParameterType
    NonlinearParameter <: AbstractJuMPScalar

    A struct to represent a nonlinear parameter.

    Create a parameter using @NLparameter.

    Compat

    This type is part of the legacy nonlinear interface. Consider using the new nonlinear interface documented in Nonlinear Modeling.

    source
    +5.0source

    NonlinearConstraintIndex

    NonlinearConstraintRef

    NonlinearExpression

    NonlinearParameter

    JuMP.NonlinearParameterType
    NonlinearParameter <: AbstractJuMPScalar

    A struct to represent a nonlinear parameter.

    Create a parameter using @NLparameter.

    Compat

    This type is part of the legacy nonlinear interface. Consider using the new nonlinear interface documented in Nonlinear Modeling.

    source
    diff --git a/dev/background/algebraic_modeling_languages/index.html b/dev/background/algebraic_modeling_languages/index.html index a4a3ae977c3..c249e681347 100644 --- a/dev/background/algebraic_modeling_languages/index.html +++ b/dev/background/algebraic_modeling_languages/index.html @@ -138,4 +138,4 @@ julia> highs_knapsack([1.0, 2.0], [0.5, 0.5], 1.25) 2-element Vector{Float64}: 0.0 - 2.0

    We've now gone from a algebraic model that looked identical to the mathematical model we started with, to a verbose function that uses HiGHS-specific functionality.

    The difference between algebraic_knapsack and highs_knapsack highlights the benefit that algebraic modeling languages provide to users. Moreover, if we used a different solver, the solver-specific function would be entirely different. A key benefit of an algebraic modeling language is that you can change the solver without needing to rewrite the model.

    + 2.0

    We've now gone from a algebraic model that looked identical to the mathematical model we started with, to a verbose function that uses HiGHS-specific functionality.

    The difference between algebraic_knapsack and highs_knapsack highlights the benefit that algebraic modeling languages provide to users. Moreover, if we used a different solver, the solver-specific function would be entirely different. A key benefit of an algebraic modeling language is that you can change the solver without needing to rewrite the model.

    diff --git a/dev/background/bibliography/index.html b/dev/background/bibliography/index.html index fc200f11a49..b780464d3a5 100644 --- a/dev/background/bibliography/index.html +++ b/dev/background/bibliography/index.html @@ -3,4 +3,4 @@ function gtag(){dataLayer.push(arguments);} gtag('js', new Date()); gtag('config', 'G-0RZ8X3D3D0', {'page_path': location.pathname + location.search + location.hash}); -

    Bibliography

    +

    Bibliography

    diff --git a/dev/changelog/index.html b/dev/changelog/index.html index 97c46923b52..69c7aa8885c 100644 --- a/dev/changelog/index.html +++ b/dev/changelog/index.html @@ -3,13 +3,13 @@ function gtag(){dataLayer.push(arguments);} gtag('js', new Date()); gtag('config', 'G-0RZ8X3D3D0', {'page_path': location.pathname + location.search + location.hash}); -

    Release notes

    The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

    Version 1.23.3 (October 21, 2024)

    Fixed

    • Fixed a printing bug with scientific numbers in MIME"text/latex" (#3838)
    • Fixed support for AbstractString in set_attribute (#3840)
    • Fixed a bug reporting vector-valued duals in solution_summary (#3846)
    • Fixed solution_summary when there are duplicate variable and constraint names (#3848)

    Other

    Version 1.23.2 (September 13, 2024)

    Fixed

    • Fixed an illegal simplification in MA.operate!! for NonlinearExpr (#3826)

    Other

    • Added Rolling horizon problems tutorial (#3815)
    • Added more tests for shapes and dual shapes (#3816)
    • Added more packages to extension-tests.yml (#3817) (#3818)
    • Removed an unnecessary test(#3819)
    • Documentation improvements (#3820) (#3822) (#3823)
    • Added PiecewiseLinearOpt.jl to the docs (#3824)

    Version 1.23.1 (August 30, 2024)

    Fixed

    • Fixed a bug with indicator constraints and the in set syntax (#3813)

    Other

    Version 1.23.0 (August 13, 2024)

    Added

    • Added set inequality syntax for matrices (#3766)
    • Improved matrix inequality support (#3778) (#3805)

    Fixed

    • Fixed a method for calling value on a ::Number (#3776)
    • Fixed querying dual of Symmetric and Hermitian equality constraints (#3797)
    • Fixed read_from_file for coefficient types other than Float64 (#3801)

    Other

    • Documentation improvements
      • Fixed missing character in installation instructions (#3777)
      • Added a section of querying the Jacobian (#3779)
      • Clarify that SCIP does not support lazy constraints (#3784)
      • Fixed typo in knapsack.jl (#3792)
      • Added a warning to docs about tolerances in Bin and Int variables (#3794)
      • Clarify where to type installation commands (#3795)
    • Improve error message for common incorrect syntax in constraint macro (#3781)
    • Changed show(::IO, ::GenericModel) to a more informative tree structure (#3803)

    Version 1.22.2 (June 17, 2024)

    Fixed

    • Fixed printing to omit terms when printing a large array of expressions (#3759)
    • Fixed bug in printing when show is called on an invalid variable or constraint (#3763)

    Other

    • Improved error message for unsupported kwargs in variable macro (#3751)
    • Improved error message for unsupported container syntax like x[A][B] (#3756)
    • Docstring improvements (#3758), (#3760), (#3761), (#3767)
    • Added warning to documentation about Y <= X, Set() syntax (#3769)
    • Work-around change on nightly (#3753), (#3754)
    • Improved printing of symmetric matrices when used in constraints (#3768)
    • Fixed a test for upcoming printing change in MOI (#3772)
    • Updated should_i_use.md (#3773)

    Version 1.22.1 (May 17, 2024)

    Fixed

    • Fixed bug including non-.jl files in src/macros.jl (#3747)

    Other

    • Added DSDP to the list of supported solvers (#3745)
    • Updated YALMIP migration guide (#3748)

    Version 1.22.0 (May 12, 2024)

    Added

    • Added Base.complex(r, i) where r and i may be real-valued variables or affine or quadratic expressions (#3734)
    • Added @force_nonlinear for controlling when affine and quadratic expressions are instead parsed as nonlinear expressions. This can be useful for advanced users in a limited set of circumstances. (#3732)
    • Added support for returning the variable coefficients of a vector-valued constraint via normalized_coefficient. In addition, set_normalized_coefficients has been softly deprecated (no warning is thrown and old code will still work for all future 1.X releases of JuMP) in favor of set_normalized_coefficient. This change was made to unify how we get and set variable coefficients. (#3743)

    Fixed

    • Fixed missing promote_operation method that resulted in slow code (#3730)
    • Improved performance of getindex for Containers.DenseAxisArray (#3731)
    • Fixed the error message when the legacy nonlinear API is mixed with the new nonlinear API. In particular, we now uniformly throw an error message when unexpected objects occur in nonlinear expressions. (#3741)

    Other

    • Updated documentation (#3727), (#3728), (#3739)
    • Updated versions in GitHub actions (#3735)

    Version 1.21.1 (April 11, 2024)

    Fixed

    • Fixed behavior of complex-value related functions like real, imag, conj and abs2 when called on GenericNonlinearExpr. This fixes a method error when calling x' where x is an array of nonlinear expressions. As a related consequence, we now always error when creating nonlinear expressions with complex components. Previously, only some constructors were checked for complex expressionns. (#3724)

    Other

    • Documentation improvements (#3719) (#3720) (#3721) (#3722)

    Version 1.21.0 (March 31, 2024)

    Added

    • Added support for matrix inequality constraints with the HermitianPSDCone (#3705)
    • Added batched modification methods for set_normalized_rhs, set_objective_coefficient and set_normalized_coefficient. Using these methods can be more efficient for some solvers (#3716)
    • Added the private constant _CONSTRAINT_LIMIT_FOR_PRINTING, which controls how many constraints are printed to the screen during print(model). The main purpose of this is to prevent large quantities of text being printed when print(model) is accidentally called on a large model. (#3686)

    Fixed

    • Changed Containers.SparseAxisArray to use an OrderedDict as the backing data structure. Iterating over the elements in a SparseAxisArray now iterates in the order that the elements were created. Previously, the order was undefined behavior. (#3681)
    • Fixed complex variables for non-Float64 coefficient types (#3691)
    • Fixed LinearAlgebra.hermitan(::AbstractJuMPScalar) (#3693)
    • Fixed multiplying real scalar by Hermitian matrix (#3695)

    Other

    Version 1.20.0 (February 15, 2024)

    Added

    Fixed

    • Fixed compat of DimensionalData (#3666)
    • Fixed convert(::Type{NonlinearExpr}, ::Number)(#3672)

    Other

    • Added Optim to list of solvers (#3624)
    • Improved linking within documentation (#3669)

    Version 1.19.0 (February 1, 2024)

    Added

    • Added support for modifying quadratic coefficients (#3658)

    Fixed

    • Fixed short circuiting of && and || in macros (#3655)

    Other

    • Added SDPLR to list of solvers (#3644)
    • Added new roadmap items (#3645)
    • Fixed vale.sh version (#3650)
    • Improve error messages in macros (#3653)
    • Refactoring of set_normalized_coefficient (#3660) (#3661)
    • Update docs/packages.toml (#3662)

    Version 1.18.1 (January 6, 2024)

    Fixed

    • Fixed escaping of the set keyword in @variable (#3647)

    Version 1.18.0 (January 2, 2024)

    Added

    • This release includes a large refactoring of the macro code that closes a roadmap item (#3629) Contributing pull requests include (#3600), (#3603), (#3606), (#3607), (#3610), (#3611), (#3612), (#3613), (#3614), (#3615), (#3617), (#3618), (#3619), (#3620), (#3621), (#3631), (#3632), (#3633)

    Fixed

    • Fixed error for unsupported objective sense (#3601)
    • Fixed text/latex printing of GenericNonlinearExpr (#3609)
    • Fixed compat bounds of stdlib packages (#3626)
    • Fixed a bug that can accidentally modify the user's expressions in a macro (#3639)
    • Fixed a bug converting AffExpr to GenericNonlinearExpr (#3642)

    Other

    • Added DisjunctiveProgrammingto extension-tests (#3597)
    • Added DisjunctiveProgrammingto docs (#3598)
    • Added DocumenterCitations to the docs (#3596), (#3630)
    • Migrate from SnoopPrecompile to PrecompileTools (#3608)
    • Minor documentation updates (#3623), (#3628), (#3635), (#3640), (#3643)

    Version 1.17.0 (December 4, 2023)

    Added

    Fixed

    • Fixed variable_ref_type for unsupported types (#3556)
    • Fixed convert type of constraint starting values (#3571)
    • Fixed various methods to support AbstractJuMPScalar with Distances.jl (#3583)
    • Fixed eachindex for multiple arguments of Containers.DenseAxisArray and Containers.SparseAxisArray (#3587)
    • Expressions with more than 60 terms now print in truncated form. This prevents large expressions from being accidentally printed to terminal or IJulia output (#3575)
    • Fixed a type instability in set_objective_coefficient (#3590)
    • Various fixes to the documentation (#3593) (#3595)

    Other

    • Improved error messages for:
      • Addition and subtraction between a matrix and a scalar (#3557) (#3558)
      • Variables with non-constant bounds (#3583)
      • Invalid indicator constraints (#3584)
    • Added new solvers to the documentation:
      • EAGO.jl (#3560) (#3561)
      • Manopt.jl (#3568)
      • Percival.jl (#3567)
    • Added new tutorials:
    • Improved documentation for:
    • Updated package compat bounds (#3578)

    Version 1.16.0 (October 24, 2023)

    Added

    • Added := operator for Boolean satisfiability problems (#3530)

    Fixed

    • Fixed text/latex printing of MOI.Interval sets (#3537)
    • Fixed tests with duplicate function names (#3539)

    Other

    • Updated documentation list of supported solvers (#3527) (#3529) (#3538) (#3542) (#3545) (#3546)
    • Updated to Documenter@1.1 (#3528)
    • Fixed various tutorials (#3534) (#3532)
    • Fixed Project.toml compat bounds for standard libraries (#3544)

    Version 1.15.1 (September 24, 2023)

    Fixed

    • Fixed support for single argument min and max operators (#3522)
    • Fixed error message for add_to_expression! when called with a GenericNonlinearExpr (#3506)
    • Fixed constraint tags with broadcasted constraints (#3515)
    • Fixed MethodError in MA.scaling (#3518)
    • Fixed support for arrays of Parameter variables (#3524)

    Other

    • Updated to Documenter@1 (#3501)
    • Fixed links to data in tutorials (#3512)
    • Fixed typo in TSP tutorial (#3516)
    • Improved error message for VariableNotOwned errors (#3520)
    • Fixed various JET errors (#3519)

    Version 1.15.0 (September 15, 2023)

    This is a large minor release because it adds an entirely new data structure and API path for working with nonlinear programs. The previous nonlinear interface remains unchanged and is documented at Nonlinear Modeling (Legacy). The new interface is a treated as a non-breaking feature addition and is documented at Nonlinear Modeling.

    Breaking

    Although the new nonlinear interface is a feature addition, there are two changes which might be breaking for a very small number of users.

    • The syntax inside JuMP macros is parsed using a different code path, even for linear and quadratic expressions. We made this change to unify how we parse linear, quadratic, and nonlinear expressions. In all cases, the new code returns equivalent expressions, but because of the different order of operations, there are three changes to be aware of when updating:
      • The printed form of the expression may change, for example from x * y to y * x. This can cause tests which test the String representation of a model to fail.
      • Some coefficients may change slightly due to floating point round-off error.
      • Particularly when working with a JuMP extension, you may encounter a MethodError due to a missing or ambiguous method. These errors are due to previously existing bugs that were not triggered by the previous parsing code. If you encounter such an error, please open a GitHub issue.
    • The methods for Base.:^(x::VariableRef, n::Integer) and Base.:^(x::AffExpr, n::Integer) have changed. Previously, these methods supported only n = 0, 1, 2 and they always returned a QuadExpr, even for the case when n = 0 or n = 1. Now:
      • x^0 returns one(T), where T is the value_type of the model (defaults to Float64)
      • x^1 returns x
      • x^2 returns a QuadExpr
      • x^n where !(0 <= n <= 2) returns a NonlinearExpr.
      We made this change to support nonlinear expressions and to align the mathematical definition of the operation with their return type. (Previously, users were surprised that x^1 returned a QuadExpr.) As a consequence of this change, the methods are now not type-stable. This means that the compiler cannot prove that x^2 returns a QuadExpr. If benchmarking shows that this is a performance problem, you can use the type-stable x * x instead of x^2.

    Added

    Fixed

    • Fixed uses of @nospecialize which cause precompilation failures in Julia v1.6.0 and v1.6.1. (#3464)
    • Fixed adding a container of Parameter (#3473)
    • Fixed return type of x^0 and x^1 to no longer return QuadExpr (see note in Breaking section above) (#3474)
    • Fixed error messages in LowerBoundRef, UpperBoundRef, FixRef, IntegerRef, BinaryRef, ParameterRef and related functions (#3494)
    • Fixed type inference of empty containers in JuMP macros (#3500)

    Other

    • Added GAMS to solver documentation (#3357)
    • Updated various tutorials (#3459) (#3460) (#3462) (#3463) (#3465) (#3490) (#3492) (#3503)
    • Added The network multi-commodity flow problem tutorial (#3491)
    • Added Two-stage stochastic programs tutorial (#3466)
    • Added better error messages for unsupported operations in LinearAlgebra (#3476)
    • Updated to the latest version of Documenter (#3484) (#3495) (#3497)
    • Updated GitHub action versions (#3507)

    Version 1.14.1 (September 2, 2023)

    Fixed

    • Fix links in Documentation (#3478)

    Version 1.14.0 (August 27, 2023)

    Added

    Fixed

    • Fixed model_convert for BridgeableConstraint (#3437)
    • Fixed printing models with integer coefficients larger than typemax(Int) (#3447)
    • Fixed support for constant left-hand side functions in a complementarity constraint (#3452)

    Other

    • Updated packages used in documentation (#3444) (#3455)
    • Fixed docstring tests (#3445)
    • Fixed printing change for MathOptInterface (#3446)
    • Fixed typos in documentation (#3448) (#3457)
    • Added SCIP to callback documentation (#3449)

    Version 1.13.0 (July 27, 2023)

    Added

    Fixed

    Other

    • Added Loraine.jl to the installation table (#3426)
    • Removed Penopt.jl from packages.toml (#3428)
    • Improved problem statement in cannery example of tutorial (#3430)
    • Minor cleanups in Containers.DenseAxisArray implementation (#3429)
    • Changed nested_problems.jl: outer/inner to upper/lower (#3433)
    • Removed second SDP relaxation in OPF tutorial (#3432)

    Version 1.12.0 (June 19, 2023)

    Added

    Fixed

    • Fixed error message for matrix in HermitianPSDCone (#3369)
    • Fixed EditURL for custom documentation pages (#3373)
    • Fixed return type annotations for MOI.ConstraintPrimal and MOI.ConstraintDual (#3381)
    • Fixed printing change in Julia nightly (#3391)
    • Fixed printing of Complex coefficients (#3397)
    • Fixed printing of constraints in text/latex mode (#3405)
    • Fixed performance issue in Containers.rowtable (#3410)
    • Fixed bug when variables added to set of wrong dimension (#3411)

    Other

    • Added more solver READMEs to the documentation (#3358) (#3360) (#3364) (#3365) (#3366) (#3368) (#3372) (#3374) (#3376) (#3379) (#3387) (#3389)
    • Added StatusSwitchingQP.jl to the installation table (#3354)
    • Updated checklist for adding a new solver (#3370)
    • Updated extension-tests.yml action (#3371) (#3375)
    • Color logs in GitHub actions (#3392)
    • Added new tutorials
    • Updated JuMP paper citation (#3400)
    • Changed GitHub action to upload LaTeX logs when building documentation (#3403)
    • Fixed printing of SCS log in documentation (#3406)
    • Updated solver versions (#3407)
    • Updated documentation to use Julia v1.9 (#3398)
    • Replaced _value_type with MOI.Utilities.value_type (#3414)
    • Fixed a typo in docstring (#3415)
    • Refactored API documentation (#3386)
    • Updated SCIP license (#3420)

    Version 1.11.1 (May 19, 2023)

    Fixed

    • Fixed a poor error message when sum(::DenseAxisArray; dims) was called (#3338)
    • Fixed support for dependent sets in the @variable macro (#3344)
    • Fixed a performance bug in constraints with sparse symmetric matrices (#3349)

    Other

    • Improved the printing of complex numbers (#3332)
    • When printing, sets which contain constants ending in .0 now print as integers. This follows the behavior of constants in functions (#3341)
    • Added InfiniteOpt to the extensions documentation (#3343)
    • Added more documentation for the exponential cone (#3345) (#3347)
    • Added checklists for developers (#3346) (#3355)
    • Fixed test support upcoming Julia nightly (#3351)
    • Fixed extension-tests.yml action (#3353)
    • Add more solvers to the documentation (#3359) (#3361) (#3362)

    Version 1.11.0 (May 3, 2023)

    Added

    • Added new methods to print_active_bridges for printing a particular objective, constraint, or variable (#3316)

    Fixed

    • Fixed tests for MOI v1.14.0 release (#3312)
    • Fixed indexing containers when an axis is Vector{Any} that contains a Vector{Any} element (#3280)
    • Fixed getindex(::AbstractJuMPScalar) which is called for an expression like x[] (#3314)
    • Fixed bug in set_string_names_on_creation with a vector of variables (#3322)
    • Fixed bug in memoize function in nonlinear documentation (#3337)

    Other

    • Fixed typos in the documentation (#3317) (#3318) (#3328)
    • Added a test for the order of setting start values (#3315)
    • Added READMEs of solvers and extensions to the docs (#3309) (#3320) (#3327) (#3329) (#3333)
    • Style improvements to src/variables.jl (#3324)
    • Clarify that column generation does not find global optimum (#3325)
    • Add a GitHub actions workflow for testing extensions prior to release (#3331)
    • Document the release process for JuMP (#3334)
    • Fix links to discourse and chatroom (#3335)

    Version 1.10.0 (April 3, 2023)

    Added

    • Added Nonnegatives, Nonpositives and Zeros, and support vector-valued inequality syntax in the JuMP macros (#3273)
    • Added special support for LinearAlgebra.Symmetric and LinearAlgebra.Hermitian matrices in Zeros constraints (#3281) (#3296)
    • Added HermitianMatrixSpace and the Hermitian tag for generating a matrix of variables that is Hermitian (#3292) (#3293)
    • Added Semicontinuous and Semiinteger (#3302)
    • Added support for keyword indexing of containers (#3237)

    Fixed

    • Fixed [compat] bound for MathOptInterface in Project.toml (#3272)

    Other

    • Split out the Nested optimization problems tutorial (#3274)
    • Updated doctests to ensure none have hidden state (#3275) (#3276)
    • Clarified how lazy constraints may revisit points (#3278)
    • Added P-Norm example (#3282)
    • Clarified docs that macros create new bindings (#3284)
    • Fixed threading example (#3283)
    • Added plot to The minimum distortion problem (#3288)
    • Added Google style rules for Vale and fixed warnings (#3285)
    • Added citation for the JuMP 1.0 paper (#3294)
    • Updated package versions in the documentation (#3298)
    • Added comment for the order in which start values must be set (#3303)
    • Improved error message for unrecognized constraint operators (#3311)

    Version 1.9.0 (March 7, 2023)

    Added

    Fixed

    • The matrix returned by a variable in HermitianPSDCone is now a LinearAlgebra.Hermitian matrix. This is potentially breaking if you have written code to assume the return is a Matrix. (#3245) (#3246)
    • Fixed missing support for Base.isreal of expressions (#3252)

    Other

    • Fixed a thread safety issue in the Parallelism tutorial (#3240) (#3243)
    • Improved the error message when unsupported operators are used in @NL macros (#3236)
    • Clarified the documentation to say that matrices in HermitianPSDCone must be LinearAlgebra.Hermitian (#3241)
    • Minor style fixes to internal macro code (#3247)
    • Add Example: quantum state discrimination tutorial (#3250)
    • Improve error message when begin...end not passed to plural macros (#3255)
    • Document how to register function with varying number of input arguments (#3258)
    • Tidy tests by removing unneeded JuMP. prefixes (#3260)
    • Clarified the introduction to the Complex number support tutorial (#3262)
    • Fixed typos in the Documentation (#3263) (#3266) (#3268) (#3269)

    Version 1.8.2 (February 27, 2023)

    Fixed

    • Fixed dot product between complex JuMP expression and number (#3244)

    Other

    • Polish simple SDP examples (#3232)

    Version 1.8.1 (February 23, 2023)

    Fixed

    • Fixed support for init in nonlinear generator expressions (#3226)

    Other

    • Use and document import MathOptInterface as MOI (#3222)
    • Removed references in documentation to multiobjective optimization being unsupported (#3223)
    • Added tutorial on multi-objective portfolio optimization (#3227)
    • Refactored some of the conic tutorials (#3229)
    • Fixed typos in the documentation (#3230)
    • Added tutorial on parallelism (#3231)

    Version 1.8.0 (February 16, 2023)

    Added

    • Added --> syntax support for indicator constraints. The old syntax of => remains supported (#3207)
    • Added <--> syntax for reified constraints. For now, few solvers support reified constraints (#3206)
    • Added fix_discrete_variables. This is most useful for computing the dual of a mixed-integer program (#3208)
    • Added support for vector-valued objectives. For details, see the Multi-objective knapsack tutorial (#3176)

    Fixed

    • Fixed a bug in lp_sensitivity_report by switching to an explicit LU factorization of the basis matrix (#3182)
    • Fixed a bug that prevented [; kwarg] arguments in macros (#3220)

    Other

    Version 1.7.0 (January 25, 2023)

    Added

    • Added support for view of a Containers.DenseAxisArray (#3152) (#3180)
    • Added support for containers of variables in ComplexPlane (#3184)
    • Added support for minimum and maximum generators in nonlinear expressions (#3189)
    • Added SnoopPrecompile statements that reduce the time-to-first-solve in Julia 1.9 (#3193) (#3195) (#3196) (#3197)

    Other

    • Large refactoring of the tests (#3166) (#3167) (#3168) (#3169) (#3170) (#3171)
    • Remove unreachable code due to VERSION checks (#3172)
    • Document how to test JuMP extensions (#3174)
    • Fix method ambiguities in Containers (#3173)
    • Improve error message that is thrown when = is used instead of == in the @constraint macro (#3178)
    • Improve the error message when Bool is used instead of Bin in the @variable macro (#3180)
    • Update versions of the documentation (#3185)
    • Tidy the import of packages and remove unnecessary prefixes (#3186) (#3187)
    • Refactor src/JuMP.jl by moving methods into more relevant files (#3188)
    • Fix docstring of Model not appearing in the documentation (#3198)

    Version 1.6.0 (January 1, 2023)

    Added

    Fixed

    • Fixed promotion of complex expressions (#3150) (#3164)

    Other

    • Added Benders tutorial with in-place resolves (#3145)
    • Added more Tips and tricks for linear programs (#3144) (#3163)
    • Clarified documentation that start can depend on the indices of a variable container (#3148)
    • Replace instances of length and size by the recommended eachindex and axes (#3149)
    • Added a warning explaining why the model is dirty when accessing solution results from a modified model (#3156)
    • Clarify documentation that PSD ensures a symmetric matrix (#3159)
    • Maintenance of the JuMP test suite (#3146) (#3158) (#3162)

    Version 1.5.0 (December 8, 2022)

    Added

    Fixed

    • Fixed error message for vectorized interval constraints (#3123)
    • Fixed passing AbstractString to set_optimizer_attribute (#3127)

    Other

    • Update package versions used in docs (#3119) (#3133) (#3139)
    • Fixed output of diet tutorial (#3120)
    • Explain how to use Dates.period in set_time_limit_sec (#3121)
    • Update to JuliaFormatter v1.0.15 (#3130)
    • Fixed HTTP server example in web_app.jl (#3131)
    • Update docs to build with Documenter#master (#3094)
    • Add tests for LinearAlgebra operations (#3132)
    • Tidy these release notes (#3135)
    • Added documentation for Complex number support (#3141)
    • Removed the "workforce scheduling" and "steelT3" tutorials (#3143)

    Version 1.4.0 (October 29, 2022)

    Added

    Fixed

    • Fixed a bug in copy_to(dest::Model, src::MOI.ModelLike) when src has nonlinear components (#3101)
    • Fixed the printing of (-1.0 + 0.0im) coefficients in complex expressions (#3112)
    • Fixed a parsing bug in nonlinear expressions with generator statements that contain multiple for statements (#3116)

    Other

    • Converted the multi-commodity flow tutorial to use an SQLite database (#3098)
    • Fixed a number of typos in the documentation (#3103) (#3107) (#3018)
    • Improved various style aspects of the PDF documentation (#3095) (#3098) (#3102)

    Version 1.3.1 (September 28, 2022)

    Fixed

    • Fixed a performance issue in relax_integrality (#3087)
    • Fixed the type stability of operators with Complex arguments (#3072)
    • Fixed a bug which added additional +() terms to some nonlinear expressions (#3091)
    • Fixed potential method ambiguities with AffExpr and QuadExpr objects (#3092)

    Other

    • Added vale as a linter for the documentation (#3080)
    • Added a tutorial on debugging JuMP models (#3043)
    • Fixed a number of typos in the documentation (#3079) (#3083)
    • Many other small tweaks to the documentation (#3068) (#3073) (#3074) (#3075) (#3076) (#3077) (#3078) (#3081) (#3082) (#3084) (#3085) (#3089)

    Version 1.3.0 (September 5, 2022)

    Added

    • Support slicing in SparseAxisArray (#3031)

    Fixed

    • Fixed a bug introduced in v1.2.0 that prevented DenseAxisArrays with Vector keys (#3064)

    Other

    • Released the JuMP logos under the CC BY 4.0 license (#3063)
    • Minor tweaks to the documentation (#3054) (#3056) (#3057) (#3060) (#3061) (#3065)
    • Improved code coverage of a number of files (#3048) (#3049) (#3050) (#3051) (#3052) (#3053) (#3058) (#3059)

    Version 1.2.1 (August 22, 2022)

    Fixed

    • Fixed a bug when parsing two-sided nonlinear constraints (#3045)

    Version 1.2.0 (August 16, 2022)

    Breaking

    This is a large minor release because it significantly refactors the internal code for handling nonlinear programs to use the MathOptInterface.Nonlinear submodule that was introduced in MathOptInterface v1.3.0. As a consequence, the internal datastructure in model.nlp_data has been removed, as has the JuMP._Derivatives submodule. Despite the changes, the public API for nonlinear programming has not changed, and any code that uses only the public API and that worked with v1.1.1 will continue to work with v1.2.0.

    Added

    • Added all_constraints(model; include_variable_in_set_constraints) which simplifies returning a list of all constraint indices in the model.
    • Added the ability to delete nonlinear constraints via delete(::Model, ::NonlinearConstraintRef).
    • Added the ability to provide an explicit Hessian for a multivariate user-defined function.
    • Added support for querying the primal value of a nonlinear constraint via value(::NonlinearConstraintRef)

    Fixed

    • Fixed a bug in Containers.DenseAxisArray so that it now supports indexing with keys that hash to the same value, even if they are different types, for example, Int32 and Int64.
    • Fixed a bug printing the model when the solver does not support MOI.Name.

    Other

    • Added a constraint programming formulation to the Sudoku tutorial.
    • Added newly supported solvers Pajarito, Clarabel, and COPT to the installation table.
    • Fixed a variety of other miscellaneous issues in the documentation.

    Version 1.1.1 (June 14, 2022)

    Other

    • Fixed problem displaying LaTeX in the documentation
    • Minor updates to the style guide
    • Updated to MOI v1.4.0 in the documentation

    Version 1.1.0 (May 25, 2022)

    Added

    • Added num_constraints(::Model; count_variable_in_set_constraints) to simplify the process of counting the number of constraints in a model
    • Added VariableRef(::ConstraintRef) for querying the variable associated with a bound or integrality constraint.
    • Added set_normalized_coefficients for modifying the variable coefficients of a vector-valued constraint.
    • Added set_string_names_on_creation to disable creating String names for variables and constraints. This can improve performance.

    Fixed

    • Fixed a bug passing nothing to the start keyword of @variable

    Other

    • New tutorials:
      • Sensitivity analysis of a linear program
      • Serving web apps
    • Minimal ellipse SDP tutorial refactored and improved
    • Docs updated to the latest version of each package
    • Lots of minor fixes and improvements to the documentation

    Version 1.0.0 (March 24, 2022)

    Read more about this release, along with an acknowledgement of all the contributors in our JuMP 1.0.0 is released blog post.

    Breaking

    • The previously deprecated functions (v0.23.0, v0.23.1) have been removed. Deprecation was to improve consistency of function names:
      • num_nl_constraints (see num_nonlinear_constraints)
      • all_nl_constraints (see all_nonlinear_constraints)
      • add_NL_expression (see add_nonlinear_expression)
      • set_NL_objective (see set_nonlinear_objective)
      • add_NL_constraint (see add_nonlinear_constraint)
      • nl_expr_string (see nonlinear_expr_string)
      • nl_constraint_string (see nonlinear_constraint_string)
      • SymMatrixSpace (see SymmetricMatrixSpace)
    • The unintentionally exported variable JuMP.op_hint has been renamed to the unexported JuMP._OP_HINT

    Fixed

    • Fixed a bug writing .nl files
    • Fixed a bug broadcasting SparseAxisArrays

    Version 0.23.2 (March 14, 2022)

    Added

    • Added relative_gap to solution_summary
    • register now throws an informative error if the function is not differentiable using ForwardDiff. In some cases, the check in register will encounter a false negative, and the informative error will be thrown at run-time. This usually happens when the function is non-differentiable in a subset of the domain.

    Fixed

    • Fixed a scoping issue when extending the container keyword of containers

    Other

    • Docs updated to the latest version of each package

    Version 0.23.1 (March 2, 2022)

    Deprecated

    • nl_expr_string and nl_constraint_string have been renamed to nonlinear_expr_string and nonlinear_constraint_string. The old methods still exist with deprecation warnings. This change should impact very few users because to call them you must rely on private internals of the nonlinear API. Users are encouraged to use sprint(show, x) instead, where x is the nonlinear expression or constraint of interest.

    Added

    • Added support for Base.abs2(x) where x is a variable or affine expression. This is mainly useful for complex-valued constraints.

    Fixed

    • Fixed addition of complex and real affine expressions
    • Fixed arithmetic for Complex-valued quadratic expressions
    • Fixed variable bounds passed as Rational{Int}(Inf)
    • Fixed printing of the coefficient (0 + 1im)
    • Fixed a bug when solution_summary is called prior to optimize!

    Version 0.23.0 (February 25, 2022)

    JuMP v0.23.0 is a breaking release. It is also a release-candidate for JuMP v1.0.0. That is, if no issues are found with the v0.23.0 release, then it will be re-tagged as v1.0.0.

    Breaking

    • Julia 1.6 is now the minimum supported version
    • MathOptInterface has been updated to v1.0.0
    • All previously deprecated functionality has been removed
    • PrintMode, REPLMode and IJuliaMode have been removed in favor of the MIME types MIME"text/plain" and MIME"text/latex". Replace instances of ::Type{REPLMode} with ::MIME"text/plain", REPLMode with MIME("text/plain"), ::Type{IJuliaMode} with ::MIME"text/latex", and IJuliaMode with MIME("text/latex").
    • Functions containing the nl_ acronym have been renamed to the more explicit nonlinear_. For example, num_nl_constraints is now num_nonlinear_constraints and set_NL_objective is now set_nonlinear_objective. Calls to the old functions throw an error explaining the new name.
    • SymMatrixSpace has been renamed to SymmetricMatrixSpace

    Added

    • Added nonlinear_dual_start_value and set_nonlinear_dual_start_value
    • Added preliminary support for Complex coefficient types

    Fixed

    • Fixed a bug in solution_summary

    Other

    • MILP examples have been migrated from GLPK to HiGHS
    • Fixed various typos
    • Improved section on setting constraint start values

    Troubleshooting problems when updating

    If you experience problems when updating, you are likely using previously deprecated functionality. (By default, Julia does not warn when you use deprecated features.)

    To find the deprecated features you are using, start Julia with --depwarn=yes:

    $ julia --depwarn=yes

    Then install JuMP v0.22.3:

    julia> using Pkg
    -julia> pkg"add JuMP@0.22.3"

    And then run your code. Apply any suggestions, or search the release notes below for advice on updating a specific deprecated feature.

    Version 0.22.3 (February 10, 2022)

    Fixed

    • Fixed a reproducibility issue in the TSP tutorial
    • Fixed a reproducibility issue in the max_cut_sdp tutorial
    • Fixed a bug broadcasting an empty SparseAxisArray

    Other

    • Added a warning and improved documentation for the modify-then-query case
    • Fixed a typo in the docstring of RotatedSecondOrderCone
    • Added Aqua.jl as a check for code health
    • Added introductions to each section of the tutorials
    • Improved the column generation and Benders decomposition tutorials
    • Updated documentation to MOI v0.10.8
    • Updated JuliaFormatter to v0.22.2

    Version 0.22.2 (January 10, 2022)

    Added

    • The function all_nl_constraints now returns all nonlinear constraints in a model
    • start_value and set_start_value can now be used to get and set the primal start for constraint references
    • Plural macros now return a tuple containing the elements that were defined instead of nothing
    • Anonymous variables are now printed as _[i] where i is the index of the variable instead of noname. Calling name(x) still returns "" so this is non-breaking.

    Fixed

    • Fixed handling of min and max in nonlinear expressions
    • CartesianIndex is no longer allowed as a key for DenseAxisArrays.

    Other

    • Improved the performance of GenericAffExpr
    • Added a tutorial on the Travelling Salesperson Problem
    • Added a tutorial on querying the Hessian of a nonlinear program
    • Added documentation on using custom solver binaries.

    Version 0.22.1 (November 29, 2021)

    Added

    • Export OptimizationSense enum, with instances: MIN_SENSE, MAX_SENSE, and FEASIBILITY_SENSE
    • Add Base.isempty(::Model) to match Base.empty(::Model)

    Fixed

    • Fix bug in container with tuples as indices
    • Fix bug in set_time_limit_sec

    Other

    • Add tutorial "Design patterns for larger models"
    • Remove release notes section from PDF
    • General edits of the documentation and error messages

    Version 0.22.0 (November 10, 2021)

    JuMP v0.22 is a breaking release

    Breaking

    JuMP 0.22 contains a number of breaking changes. However, these should be invisible for the majority of users. You will mostly encounter these breaking changes if you: wrote a JuMP extension, accessed backend(model), or called @SDconstraint.

    The breaking changes are as follows:

    • MathOptInterface has been updated to v0.10.4. For users who have interacted with the MOI backend, this contains a large number of breaking changes. Read the MathOptInterface release notes for more details.
    • The bridge_constraints keyword argument to Model and set_optimizer has been renamed add_bridges to reflect that more thing were bridged than just constraints.
    • The backend(model) field now contains a concrete instance of a MOI.Utilities.CachingOptimizer instead of one with an abstractly typed optimizer field. In most cases, this will lead to improved performance. However, calling set_optimizer after backend invalidates the old backend. For example:
      model = Model()
      +

      Release notes

      The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

      Version 1.23.4 (November 8, 2024)

      Fixed

      • Fixed UnsupportedNonlinearOperator error for the single argument LinearAlgebra.norm (#3864)
      • Fixed printing MOI.Interval with MIME"text/latex" (#3866)

      Other

      • Various minor improvements to the documentation (#3855) (#3860)
      • Added MathOptAI.jl and MathOptSymbolicAD.jl to the list of extensions in the documentation (#3858)
      • Clarified add_to_expression! can add two expressions (#3859)
      • Added SHOT to the installation table (#3853)
      • Improvements to test coverage (#3867) (#3868) (#3869) (#3870) (#3871) (#3872) (#3873) (#3874) (#3875)
      • JuMP now uses MOI.add_constrained_variable when adding a scalar variable with bounds for improving model creation performance with some solvers (#3863) (#3865)

      Version 1.23.3 (October 21, 2024)

      Fixed

      • Fixed a printing bug with scientific numbers in MIME"text/latex" (#3838)
      • Fixed support for AbstractString in set_attribute (#3840)
      • Fixed a bug reporting vector-valued duals in solution_summary (#3846)
      • Fixed solution_summary when there are duplicate variable and constraint names (#3848)

      Other

      Version 1.23.2 (September 13, 2024)

      Fixed

      • Fixed an illegal simplification in MA.operate!! for NonlinearExpr (#3826)

      Other

      • Added Rolling horizon problems tutorial (#3815)
      • Added more tests for shapes and dual shapes (#3816)
      • Added more packages to extension-tests.yml (#3817) (#3818)
      • Removed an unnecessary test(#3819)
      • Documentation improvements (#3820) (#3822) (#3823)
      • Added PiecewiseLinearOpt.jl to the docs (#3824)

      Version 1.23.1 (August 30, 2024)

      Fixed

      • Fixed a bug with indicator constraints and the in set syntax (#3813)

      Other

      Version 1.23.0 (August 13, 2024)

      Added

      • Added set inequality syntax for matrices (#3766)
      • Improved matrix inequality support (#3778) (#3805)

      Fixed

      • Fixed a method for calling value on a ::Number (#3776)
      • Fixed querying dual of Symmetric and Hermitian equality constraints (#3797)
      • Fixed read_from_file for coefficient types other than Float64 (#3801)

      Other

      • Documentation improvements
        • Fixed missing character in installation instructions (#3777)
        • Added a section of querying the Jacobian (#3779)
        • Clarify that SCIP does not support lazy constraints (#3784)
        • Fixed typo in knapsack.jl (#3792)
        • Added a warning to docs about tolerances in Bin and Int variables (#3794)
        • Clarify where to type installation commands (#3795)
      • Improve error message for common incorrect syntax in constraint macro (#3781)
      • Changed show(::IO, ::GenericModel) to a more informative tree structure (#3803)

      Version 1.22.2 (June 17, 2024)

      Fixed

      • Fixed printing to omit terms when printing a large array of expressions (#3759)
      • Fixed bug in printing when show is called on an invalid variable or constraint (#3763)

      Other

      • Improved error message for unsupported kwargs in variable macro (#3751)
      • Improved error message for unsupported container syntax like x[A][B] (#3756)
      • Docstring improvements (#3758), (#3760), (#3761), (#3767)
      • Added warning to documentation about Y <= X, Set() syntax (#3769)
      • Work-around change on nightly (#3753), (#3754)
      • Improved printing of symmetric matrices when used in constraints (#3768)
      • Fixed a test for upcoming printing change in MOI (#3772)
      • Updated should_i_use.md (#3773)

      Version 1.22.1 (May 17, 2024)

      Fixed

      • Fixed bug including non-.jl files in src/macros.jl (#3747)

      Other

      • Added DSDP to the list of supported solvers (#3745)
      • Updated YALMIP migration guide (#3748)

      Version 1.22.0 (May 12, 2024)

      Added

      • Added Base.complex(r, i) where r and i may be real-valued variables or affine or quadratic expressions (#3734)
      • Added @force_nonlinear for controlling when affine and quadratic expressions are instead parsed as nonlinear expressions. This can be useful for advanced users in a limited set of circumstances. (#3732)
      • Added support for returning the variable coefficients of a vector-valued constraint via normalized_coefficient. In addition, set_normalized_coefficients has been softly deprecated (no warning is thrown and old code will still work for all future 1.X releases of JuMP) in favor of set_normalized_coefficient. This change was made to unify how we get and set variable coefficients. (#3743)

      Fixed

      • Fixed missing promote_operation method that resulted in slow code (#3730)
      • Improved performance of getindex for Containers.DenseAxisArray (#3731)
      • Fixed the error message when the legacy nonlinear API is mixed with the new nonlinear API. In particular, we now uniformly throw an error message when unexpected objects occur in nonlinear expressions. (#3741)

      Other

      • Updated documentation (#3727), (#3728), (#3739)
      • Updated versions in GitHub actions (#3735)

      Version 1.21.1 (April 11, 2024)

      Fixed

      • Fixed behavior of complex-value related functions like real, imag, conj and abs2 when called on GenericNonlinearExpr. This fixes a method error when calling x' where x is an array of nonlinear expressions. As a related consequence, we now always error when creating nonlinear expressions with complex components. Previously, only some constructors were checked for complex expressionns. (#3724)

      Other

      • Documentation improvements (#3719) (#3720) (#3721) (#3722)

      Version 1.21.0 (March 31, 2024)

      Added

      • Added support for matrix inequality constraints with the HermitianPSDCone (#3705)
      • Added batched modification methods for set_normalized_rhs, set_objective_coefficient and set_normalized_coefficient. Using these methods can be more efficient for some solvers (#3716)
      • Added the private constant _CONSTRAINT_LIMIT_FOR_PRINTING, which controls how many constraints are printed to the screen during print(model). The main purpose of this is to prevent large quantities of text being printed when print(model) is accidentally called on a large model. (#3686)

      Fixed

      • Changed Containers.SparseAxisArray to use an OrderedDict as the backing data structure. Iterating over the elements in a SparseAxisArray now iterates in the order that the elements were created. Previously, the order was undefined behavior. (#3681)
      • Fixed complex variables for non-Float64 coefficient types (#3691)
      • Fixed LinearAlgebra.hermitan(::AbstractJuMPScalar) (#3693)
      • Fixed multiplying real scalar by Hermitian matrix (#3695)

      Other

      Version 1.20.0 (February 15, 2024)

      Added

      Fixed

      • Fixed compat of DimensionalData (#3666)
      • Fixed convert(::Type{NonlinearExpr}, ::Number)(#3672)

      Other

      • Added Optim to list of solvers (#3624)
      • Improved linking within documentation (#3669)

      Version 1.19.0 (February 1, 2024)

      Added

      • Added support for modifying quadratic coefficients (#3658)

      Fixed

      • Fixed short circuiting of && and || in macros (#3655)

      Other

      • Added SDPLR to list of solvers (#3644)
      • Added new roadmap items (#3645)
      • Fixed vale.sh version (#3650)
      • Improve error messages in macros (#3653)
      • Refactoring of set_normalized_coefficient (#3660) (#3661)
      • Update docs/packages.toml (#3662)

      Version 1.18.1 (January 6, 2024)

      Fixed

      • Fixed escaping of the set keyword in @variable (#3647)

      Version 1.18.0 (January 2, 2024)

      Added

      • This release includes a large refactoring of the macro code that closes a roadmap item (#3629) Contributing pull requests include (#3600), (#3603), (#3606), (#3607), (#3610), (#3611), (#3612), (#3613), (#3614), (#3615), (#3617), (#3618), (#3619), (#3620), (#3621), (#3631), (#3632), (#3633)

      Fixed

      • Fixed error for unsupported objective sense (#3601)
      • Fixed text/latex printing of GenericNonlinearExpr (#3609)
      • Fixed compat bounds of stdlib packages (#3626)
      • Fixed a bug that can accidentally modify the user's expressions in a macro (#3639)
      • Fixed a bug converting AffExpr to GenericNonlinearExpr (#3642)

      Other

      • Added DisjunctiveProgrammingto extension-tests (#3597)
      • Added DisjunctiveProgrammingto docs (#3598)
      • Added DocumenterCitations to the docs (#3596), (#3630)
      • Migrate from SnoopPrecompile to PrecompileTools (#3608)
      • Minor documentation updates (#3623), (#3628), (#3635), (#3640), (#3643)

      Version 1.17.0 (December 4, 2023)

      Added

      Fixed

      • Fixed variable_ref_type for unsupported types (#3556)
      • Fixed convert type of constraint starting values (#3571)
      • Fixed various methods to support AbstractJuMPScalar with Distances.jl (#3583)
      • Fixed eachindex for multiple arguments of Containers.DenseAxisArray and Containers.SparseAxisArray (#3587)
      • Expressions with more than 60 terms now print in truncated form. This prevents large expressions from being accidentally printed to terminal or IJulia output (#3575)
      • Fixed a type instability in set_objective_coefficient (#3590)
      • Various fixes to the documentation (#3593) (#3595)

      Other

      • Improved error messages for:
        • Addition and subtraction between a matrix and a scalar (#3557) (#3558)
        • Variables with non-constant bounds (#3583)
        • Invalid indicator constraints (#3584)
      • Added new solvers to the documentation:
        • EAGO.jl (#3560) (#3561)
        • Manopt.jl (#3568)
        • Percival.jl (#3567)
      • Added new tutorials:
      • Improved documentation for:
      • Updated package compat bounds (#3578)

      Version 1.16.0 (October 24, 2023)

      Added

      • Added := operator for Boolean satisfiability problems (#3530)

      Fixed

      • Fixed text/latex printing of MOI.Interval sets (#3537)
      • Fixed tests with duplicate function names (#3539)

      Other

      • Updated documentation list of supported solvers (#3527) (#3529) (#3538) (#3542) (#3545) (#3546)
      • Updated to Documenter@1.1 (#3528)
      • Fixed various tutorials (#3534) (#3532)
      • Fixed Project.toml compat bounds for standard libraries (#3544)

      Version 1.15.1 (September 24, 2023)

      Fixed

      • Fixed support for single argument min and max operators (#3522)
      • Fixed error message for add_to_expression! when called with a GenericNonlinearExpr (#3506)
      • Fixed constraint tags with broadcasted constraints (#3515)
      • Fixed MethodError in MA.scaling (#3518)
      • Fixed support for arrays of Parameter variables (#3524)

      Other

      • Updated to Documenter@1 (#3501)
      • Fixed links to data in tutorials (#3512)
      • Fixed typo in TSP tutorial (#3516)
      • Improved error message for VariableNotOwned errors (#3520)
      • Fixed various JET errors (#3519)

      Version 1.15.0 (September 15, 2023)

      This is a large minor release because it adds an entirely new data structure and API path for working with nonlinear programs. The previous nonlinear interface remains unchanged and is documented at Nonlinear Modeling (Legacy). The new interface is a treated as a non-breaking feature addition and is documented at Nonlinear Modeling.

      Breaking

      Although the new nonlinear interface is a feature addition, there are two changes which might be breaking for a very small number of users.

      • The syntax inside JuMP macros is parsed using a different code path, even for linear and quadratic expressions. We made this change to unify how we parse linear, quadratic, and nonlinear expressions. In all cases, the new code returns equivalent expressions, but because of the different order of operations, there are three changes to be aware of when updating:
        • The printed form of the expression may change, for example from x * y to y * x. This can cause tests which test the String representation of a model to fail.
        • Some coefficients may change slightly due to floating point round-off error.
        • Particularly when working with a JuMP extension, you may encounter a MethodError due to a missing or ambiguous method. These errors are due to previously existing bugs that were not triggered by the previous parsing code. If you encounter such an error, please open a GitHub issue.
      • The methods for Base.:^(x::VariableRef, n::Integer) and Base.:^(x::AffExpr, n::Integer) have changed. Previously, these methods supported only n = 0, 1, 2 and they always returned a QuadExpr, even for the case when n = 0 or n = 1. Now:
        • x^0 returns one(T), where T is the value_type of the model (defaults to Float64)
        • x^1 returns x
        • x^2 returns a QuadExpr
        • x^n where !(0 <= n <= 2) returns a NonlinearExpr.
        We made this change to support nonlinear expressions and to align the mathematical definition of the operation with their return type. (Previously, users were surprised that x^1 returned a QuadExpr.) As a consequence of this change, the methods are now not type-stable. This means that the compiler cannot prove that x^2 returns a QuadExpr. If benchmarking shows that this is a performance problem, you can use the type-stable x * x instead of x^2.

      Added

      Fixed

      • Fixed uses of @nospecialize which cause precompilation failures in Julia v1.6.0 and v1.6.1. (#3464)
      • Fixed adding a container of Parameter (#3473)
      • Fixed return type of x^0 and x^1 to no longer return QuadExpr (see note in Breaking section above) (#3474)
      • Fixed error messages in LowerBoundRef, UpperBoundRef, FixRef, IntegerRef, BinaryRef, ParameterRef and related functions (#3494)
      • Fixed type inference of empty containers in JuMP macros (#3500)

      Other

      • Added GAMS to solver documentation (#3357)
      • Updated various tutorials (#3459) (#3460) (#3462) (#3463) (#3465) (#3490) (#3492) (#3503)
      • Added The network multi-commodity flow problem tutorial (#3491)
      • Added Two-stage stochastic programs tutorial (#3466)
      • Added better error messages for unsupported operations in LinearAlgebra (#3476)
      • Updated to the latest version of Documenter (#3484) (#3495) (#3497)
      • Updated GitHub action versions (#3507)

      Version 1.14.1 (September 2, 2023)

      Fixed

      • Fix links in Documentation (#3478)

      Version 1.14.0 (August 27, 2023)

      Added

      Fixed

      • Fixed model_convert for BridgeableConstraint (#3437)
      • Fixed printing models with integer coefficients larger than typemax(Int) (#3447)
      • Fixed support for constant left-hand side functions in a complementarity constraint (#3452)

      Other

      • Updated packages used in documentation (#3444) (#3455)
      • Fixed docstring tests (#3445)
      • Fixed printing change for MathOptInterface (#3446)
      • Fixed typos in documentation (#3448) (#3457)
      • Added SCIP to callback documentation (#3449)

      Version 1.13.0 (July 27, 2023)

      Added

      Fixed

      Other

      • Added Loraine.jl to the installation table (#3426)
      • Removed Penopt.jl from packages.toml (#3428)
      • Improved problem statement in cannery example of tutorial (#3430)
      • Minor cleanups in Containers.DenseAxisArray implementation (#3429)
      • Changed nested_problems.jl: outer/inner to upper/lower (#3433)
      • Removed second SDP relaxation in OPF tutorial (#3432)

      Version 1.12.0 (June 19, 2023)

      Added

      Fixed

      • Fixed error message for matrix in HermitianPSDCone (#3369)
      • Fixed EditURL for custom documentation pages (#3373)
      • Fixed return type annotations for MOI.ConstraintPrimal and MOI.ConstraintDual (#3381)
      • Fixed printing change in Julia nightly (#3391)
      • Fixed printing of Complex coefficients (#3397)
      • Fixed printing of constraints in text/latex mode (#3405)
      • Fixed performance issue in Containers.rowtable (#3410)
      • Fixed bug when variables added to set of wrong dimension (#3411)

      Other

      • Added more solver READMEs to the documentation (#3358) (#3360) (#3364) (#3365) (#3366) (#3368) (#3372) (#3374) (#3376) (#3379) (#3387) (#3389)
      • Added StatusSwitchingQP.jl to the installation table (#3354)
      • Updated checklist for adding a new solver (#3370)
      • Updated extension-tests.yml action (#3371) (#3375)
      • Color logs in GitHub actions (#3392)
      • Added new tutorials
      • Updated JuMP paper citation (#3400)
      • Changed GitHub action to upload LaTeX logs when building documentation (#3403)
      • Fixed printing of SCS log in documentation (#3406)
      • Updated solver versions (#3407)
      • Updated documentation to use Julia v1.9 (#3398)
      • Replaced _value_type with MOI.Utilities.value_type (#3414)
      • Fixed a typo in docstring (#3415)
      • Refactored API documentation (#3386)
      • Updated SCIP license (#3420)

      Version 1.11.1 (May 19, 2023)

      Fixed

      • Fixed a poor error message when sum(::DenseAxisArray; dims) was called (#3338)
      • Fixed support for dependent sets in the @variable macro (#3344)
      • Fixed a performance bug in constraints with sparse symmetric matrices (#3349)

      Other

      • Improved the printing of complex numbers (#3332)
      • When printing, sets which contain constants ending in .0 now print as integers. This follows the behavior of constants in functions (#3341)
      • Added InfiniteOpt to the extensions documentation (#3343)
      • Added more documentation for the exponential cone (#3345) (#3347)
      • Added checklists for developers (#3346) (#3355)
      • Fixed test support upcoming Julia nightly (#3351)
      • Fixed extension-tests.yml action (#3353)
      • Add more solvers to the documentation (#3359) (#3361) (#3362)

      Version 1.11.0 (May 3, 2023)

      Added

      • Added new methods to print_active_bridges for printing a particular objective, constraint, or variable (#3316)

      Fixed

      • Fixed tests for MOI v1.14.0 release (#3312)
      • Fixed indexing containers when an axis is Vector{Any} that contains a Vector{Any} element (#3280)
      • Fixed getindex(::AbstractJuMPScalar) which is called for an expression like x[] (#3314)
      • Fixed bug in set_string_names_on_creation with a vector of variables (#3322)
      • Fixed bug in memoize function in nonlinear documentation (#3337)

      Other

      • Fixed typos in the documentation (#3317) (#3318) (#3328)
      • Added a test for the order of setting start values (#3315)
      • Added READMEs of solvers and extensions to the docs (#3309) (#3320) (#3327) (#3329) (#3333)
      • Style improvements to src/variables.jl (#3324)
      • Clarify that column generation does not find global optimum (#3325)
      • Add a GitHub actions workflow for testing extensions prior to release (#3331)
      • Document the release process for JuMP (#3334)
      • Fix links to discourse and chatroom (#3335)

      Version 1.10.0 (April 3, 2023)

      Added

      • Added Nonnegatives, Nonpositives and Zeros, and support vector-valued inequality syntax in the JuMP macros (#3273)
      • Added special support for LinearAlgebra.Symmetric and LinearAlgebra.Hermitian matrices in Zeros constraints (#3281) (#3296)
      • Added HermitianMatrixSpace and the Hermitian tag for generating a matrix of variables that is Hermitian (#3292) (#3293)
      • Added Semicontinuous and Semiinteger (#3302)
      • Added support for keyword indexing of containers (#3237)

      Fixed

      • Fixed [compat] bound for MathOptInterface in Project.toml (#3272)

      Other

      • Split out the Nested optimization problems tutorial (#3274)
      • Updated doctests to ensure none have hidden state (#3275) (#3276)
      • Clarified how lazy constraints may revisit points (#3278)
      • Added P-Norm example (#3282)
      • Clarified docs that macros create new bindings (#3284)
      • Fixed threading example (#3283)
      • Added plot to The minimum distortion problem (#3288)
      • Added Google style rules for Vale and fixed warnings (#3285)
      • Added citation for the JuMP 1.0 paper (#3294)
      • Updated package versions in the documentation (#3298)
      • Added comment for the order in which start values must be set (#3303)
      • Improved error message for unrecognized constraint operators (#3311)

      Version 1.9.0 (March 7, 2023)

      Added

      Fixed

      • The matrix returned by a variable in HermitianPSDCone is now a LinearAlgebra.Hermitian matrix. This is potentially breaking if you have written code to assume the return is a Matrix. (#3245) (#3246)
      • Fixed missing support for Base.isreal of expressions (#3252)

      Other

      • Fixed a thread safety issue in the Parallelism tutorial (#3240) (#3243)
      • Improved the error message when unsupported operators are used in @NL macros (#3236)
      • Clarified the documentation to say that matrices in HermitianPSDCone must be LinearAlgebra.Hermitian (#3241)
      • Minor style fixes to internal macro code (#3247)
      • Add Example: quantum state discrimination tutorial (#3250)
      • Improve error message when begin...end not passed to plural macros (#3255)
      • Document how to register function with varying number of input arguments (#3258)
      • Tidy tests by removing unneeded JuMP. prefixes (#3260)
      • Clarified the introduction to the Complex number support tutorial (#3262)
      • Fixed typos in the Documentation (#3263) (#3266) (#3268) (#3269)

      Version 1.8.2 (February 27, 2023)

      Fixed

      • Fixed dot product between complex JuMP expression and number (#3244)

      Other

      • Polish simple SDP examples (#3232)

      Version 1.8.1 (February 23, 2023)

      Fixed

      • Fixed support for init in nonlinear generator expressions (#3226)

      Other

      • Use and document import MathOptInterface as MOI (#3222)
      • Removed references in documentation to multiobjective optimization being unsupported (#3223)
      • Added tutorial on multi-objective portfolio optimization (#3227)
      • Refactored some of the conic tutorials (#3229)
      • Fixed typos in the documentation (#3230)
      • Added tutorial on parallelism (#3231)

      Version 1.8.0 (February 16, 2023)

      Added

      • Added --> syntax support for indicator constraints. The old syntax of => remains supported (#3207)
      • Added <--> syntax for reified constraints. For now, few solvers support reified constraints (#3206)
      • Added fix_discrete_variables. This is most useful for computing the dual of a mixed-integer program (#3208)
      • Added support for vector-valued objectives. For details, see the Multi-objective knapsack tutorial (#3176)

      Fixed

      • Fixed a bug in lp_sensitivity_report by switching to an explicit LU factorization of the basis matrix (#3182)
      • Fixed a bug that prevented [; kwarg] arguments in macros (#3220)

      Other

      Version 1.7.0 (January 25, 2023)

      Added

      • Added support for view of a Containers.DenseAxisArray (#3152) (#3180)
      • Added support for containers of variables in ComplexPlane (#3184)
      • Added support for minimum and maximum generators in nonlinear expressions (#3189)
      • Added SnoopPrecompile statements that reduce the time-to-first-solve in Julia 1.9 (#3193) (#3195) (#3196) (#3197)

      Other

      • Large refactoring of the tests (#3166) (#3167) (#3168) (#3169) (#3170) (#3171)
      • Remove unreachable code due to VERSION checks (#3172)
      • Document how to test JuMP extensions (#3174)
      • Fix method ambiguities in Containers (#3173)
      • Improve error message that is thrown when = is used instead of == in the @constraint macro (#3178)
      • Improve the error message when Bool is used instead of Bin in the @variable macro (#3180)
      • Update versions of the documentation (#3185)
      • Tidy the import of packages and remove unnecessary prefixes (#3186) (#3187)
      • Refactor src/JuMP.jl by moving methods into more relevant files (#3188)
      • Fix docstring of Model not appearing in the documentation (#3198)

      Version 1.6.0 (January 1, 2023)

      Added

      Fixed

      • Fixed promotion of complex expressions (#3150) (#3164)

      Other

      • Added Benders tutorial with in-place resolves (#3145)
      • Added more Tips and tricks for linear programs (#3144) (#3163)
      • Clarified documentation that start can depend on the indices of a variable container (#3148)
      • Replace instances of length and size by the recommended eachindex and axes (#3149)
      • Added a warning explaining why the model is dirty when accessing solution results from a modified model (#3156)
      • Clarify documentation that PSD ensures a symmetric matrix (#3159)
      • Maintenance of the JuMP test suite (#3146) (#3158) (#3162)

      Version 1.5.0 (December 8, 2022)

      Added

      Fixed

      • Fixed error message for vectorized interval constraints (#3123)
      • Fixed passing AbstractString to set_optimizer_attribute (#3127)

      Other

      • Update package versions used in docs (#3119) (#3133) (#3139)
      • Fixed output of diet tutorial (#3120)
      • Explain how to use Dates.period in set_time_limit_sec (#3121)
      • Update to JuliaFormatter v1.0.15 (#3130)
      • Fixed HTTP server example in web_app.jl (#3131)
      • Update docs to build with Documenter#master (#3094)
      • Add tests for LinearAlgebra operations (#3132)
      • Tidy these release notes (#3135)
      • Added documentation for Complex number support (#3141)
      • Removed the "workforce scheduling" and "steelT3" tutorials (#3143)

      Version 1.4.0 (October 29, 2022)

      Added

      Fixed

      • Fixed a bug in copy_to(dest::Model, src::MOI.ModelLike) when src has nonlinear components (#3101)
      • Fixed the printing of (-1.0 + 0.0im) coefficients in complex expressions (#3112)
      • Fixed a parsing bug in nonlinear expressions with generator statements that contain multiple for statements (#3116)

      Other

      • Converted the multi-commodity flow tutorial to use an SQLite database (#3098)
      • Fixed a number of typos in the documentation (#3103) (#3107) (#3018)
      • Improved various style aspects of the PDF documentation (#3095) (#3098) (#3102)

      Version 1.3.1 (September 28, 2022)

      Fixed

      • Fixed a performance issue in relax_integrality (#3087)
      • Fixed the type stability of operators with Complex arguments (#3072)
      • Fixed a bug which added additional +() terms to some nonlinear expressions (#3091)
      • Fixed potential method ambiguities with AffExpr and QuadExpr objects (#3092)

      Other

      • Added vale as a linter for the documentation (#3080)
      • Added a tutorial on debugging JuMP models (#3043)
      • Fixed a number of typos in the documentation (#3079) (#3083)
      • Many other small tweaks to the documentation (#3068) (#3073) (#3074) (#3075) (#3076) (#3077) (#3078) (#3081) (#3082) (#3084) (#3085) (#3089)

      Version 1.3.0 (September 5, 2022)

      Added

      • Support slicing in SparseAxisArray (#3031)

      Fixed

      • Fixed a bug introduced in v1.2.0 that prevented DenseAxisArrays with Vector keys (#3064)

      Other

      • Released the JuMP logos under the CC BY 4.0 license (#3063)
      • Minor tweaks to the documentation (#3054) (#3056) (#3057) (#3060) (#3061) (#3065)
      • Improved code coverage of a number of files (#3048) (#3049) (#3050) (#3051) (#3052) (#3053) (#3058) (#3059)

      Version 1.2.1 (August 22, 2022)

      Fixed

      • Fixed a bug when parsing two-sided nonlinear constraints (#3045)

      Version 1.2.0 (August 16, 2022)

      Breaking

      This is a large minor release because it significantly refactors the internal code for handling nonlinear programs to use the MathOptInterface.Nonlinear submodule that was introduced in MathOptInterface v1.3.0. As a consequence, the internal datastructure in model.nlp_data has been removed, as has the JuMP._Derivatives submodule. Despite the changes, the public API for nonlinear programming has not changed, and any code that uses only the public API and that worked with v1.1.1 will continue to work with v1.2.0.

      Added

      • Added all_constraints(model; include_variable_in_set_constraints) which simplifies returning a list of all constraint indices in the model.
      • Added the ability to delete nonlinear constraints via delete(::Model, ::NonlinearConstraintRef).
      • Added the ability to provide an explicit Hessian for a multivariate user-defined function.
      • Added support for querying the primal value of a nonlinear constraint via value(::NonlinearConstraintRef)

      Fixed

      • Fixed a bug in Containers.DenseAxisArray so that it now supports indexing with keys that hash to the same value, even if they are different types, for example, Int32 and Int64.
      • Fixed a bug printing the model when the solver does not support MOI.Name.

      Other

      • Added a constraint programming formulation to the Sudoku tutorial.
      • Added newly supported solvers Pajarito, Clarabel, and COPT to the installation table.
      • Fixed a variety of other miscellaneous issues in the documentation.

      Version 1.1.1 (June 14, 2022)

      Other

      • Fixed problem displaying LaTeX in the documentation
      • Minor updates to the style guide
      • Updated to MOI v1.4.0 in the documentation

      Version 1.1.0 (May 25, 2022)

      Added

      • Added num_constraints(::Model; count_variable_in_set_constraints) to simplify the process of counting the number of constraints in a model
      • Added VariableRef(::ConstraintRef) for querying the variable associated with a bound or integrality constraint.
      • Added set_normalized_coefficients for modifying the variable coefficients of a vector-valued constraint.
      • Added set_string_names_on_creation to disable creating String names for variables and constraints. This can improve performance.

      Fixed

      • Fixed a bug passing nothing to the start keyword of @variable

      Other

      • New tutorials:
        • Sensitivity analysis of a linear program
        • Serving web apps
      • Minimal ellipse SDP tutorial refactored and improved
      • Docs updated to the latest version of each package
      • Lots of minor fixes and improvements to the documentation

      Version 1.0.0 (March 24, 2022)

      Read more about this release, along with an acknowledgement of all the contributors in our JuMP 1.0.0 is released blog post.

      Breaking

      • The previously deprecated functions (v0.23.0, v0.23.1) have been removed. Deprecation was to improve consistency of function names:
        • num_nl_constraints (see num_nonlinear_constraints)
        • all_nl_constraints (see all_nonlinear_constraints)
        • add_NL_expression (see add_nonlinear_expression)
        • set_NL_objective (see set_nonlinear_objective)
        • add_NL_constraint (see add_nonlinear_constraint)
        • nl_expr_string (see nonlinear_expr_string)
        • nl_constraint_string (see nonlinear_constraint_string)
        • SymMatrixSpace (see SymmetricMatrixSpace)
      • The unintentionally exported variable JuMP.op_hint has been renamed to the unexported JuMP._OP_HINT

      Fixed

      • Fixed a bug writing .nl files
      • Fixed a bug broadcasting SparseAxisArrays

      Version 0.23.2 (March 14, 2022)

      Added

      • Added relative_gap to solution_summary
      • register now throws an informative error if the function is not differentiable using ForwardDiff. In some cases, the check in register will encounter a false negative, and the informative error will be thrown at run-time. This usually happens when the function is non-differentiable in a subset of the domain.

      Fixed

      • Fixed a scoping issue when extending the container keyword of containers

      Other

      • Docs updated to the latest version of each package

      Version 0.23.1 (March 2, 2022)

      Deprecated

      • nl_expr_string and nl_constraint_string have been renamed to nonlinear_expr_string and nonlinear_constraint_string. The old methods still exist with deprecation warnings. This change should impact very few users because to call them you must rely on private internals of the nonlinear API. Users are encouraged to use sprint(show, x) instead, where x is the nonlinear expression or constraint of interest.

      Added

      • Added support for Base.abs2(x) where x is a variable or affine expression. This is mainly useful for complex-valued constraints.

      Fixed

      • Fixed addition of complex and real affine expressions
      • Fixed arithmetic for Complex-valued quadratic expressions
      • Fixed variable bounds passed as Rational{Int}(Inf)
      • Fixed printing of the coefficient (0 + 1im)
      • Fixed a bug when solution_summary is called prior to optimize!

      Version 0.23.0 (February 25, 2022)

      JuMP v0.23.0 is a breaking release. It is also a release-candidate for JuMP v1.0.0. That is, if no issues are found with the v0.23.0 release, then it will be re-tagged as v1.0.0.

      Breaking

      • Julia 1.6 is now the minimum supported version
      • MathOptInterface has been updated to v1.0.0
      • All previously deprecated functionality has been removed
      • PrintMode, REPLMode and IJuliaMode have been removed in favor of the MIME types MIME"text/plain" and MIME"text/latex". Replace instances of ::Type{REPLMode} with ::MIME"text/plain", REPLMode with MIME("text/plain"), ::Type{IJuliaMode} with ::MIME"text/latex", and IJuliaMode with MIME("text/latex").
      • Functions containing the nl_ acronym have been renamed to the more explicit nonlinear_. For example, num_nl_constraints is now num_nonlinear_constraints and set_NL_objective is now set_nonlinear_objective. Calls to the old functions throw an error explaining the new name.
      • SymMatrixSpace has been renamed to SymmetricMatrixSpace

      Added

      • Added nonlinear_dual_start_value and set_nonlinear_dual_start_value
      • Added preliminary support for Complex coefficient types

      Fixed

      • Fixed a bug in solution_summary

      Other

      • MILP examples have been migrated from GLPK to HiGHS
      • Fixed various typos
      • Improved section on setting constraint start values

      Troubleshooting problems when updating

      If you experience problems when updating, you are likely using previously deprecated functionality. (By default, Julia does not warn when you use deprecated features.)

      To find the deprecated features you are using, start Julia with --depwarn=yes:

      $ julia --depwarn=yes

      Then install JuMP v0.22.3:

      julia> using Pkg
      +julia> pkg"add JuMP@0.22.3"

      And then run your code. Apply any suggestions, or search the release notes below for advice on updating a specific deprecated feature.

      Version 0.22.3 (February 10, 2022)

      Fixed

      • Fixed a reproducibility issue in the TSP tutorial
      • Fixed a reproducibility issue in the max_cut_sdp tutorial
      • Fixed a bug broadcasting an empty SparseAxisArray

      Other

      • Added a warning and improved documentation for the modify-then-query case
      • Fixed a typo in the docstring of RotatedSecondOrderCone
      • Added Aqua.jl as a check for code health
      • Added introductions to each section of the tutorials
      • Improved the column generation and Benders decomposition tutorials
      • Updated documentation to MOI v0.10.8
      • Updated JuliaFormatter to v0.22.2

      Version 0.22.2 (January 10, 2022)

      Added

      • The function all_nl_constraints now returns all nonlinear constraints in a model
      • start_value and set_start_value can now be used to get and set the primal start for constraint references
      • Plural macros now return a tuple containing the elements that were defined instead of nothing
      • Anonymous variables are now printed as _[i] where i is the index of the variable instead of noname. Calling name(x) still returns "" so this is non-breaking.

      Fixed

      • Fixed handling of min and max in nonlinear expressions
      • CartesianIndex is no longer allowed as a key for DenseAxisArrays.

      Other

      • Improved the performance of GenericAffExpr
      • Added a tutorial on the Travelling Salesperson Problem
      • Added a tutorial on querying the Hessian of a nonlinear program
      • Added documentation on using custom solver binaries.

      Version 0.22.1 (November 29, 2021)

      Added

      • Export OptimizationSense enum, with instances: MIN_SENSE, MAX_SENSE, and FEASIBILITY_SENSE
      • Add Base.isempty(::Model) to match Base.empty(::Model)

      Fixed

      • Fix bug in container with tuples as indices
      • Fix bug in set_time_limit_sec

      Other

      • Add tutorial "Design patterns for larger models"
      • Remove release notes section from PDF
      • General edits of the documentation and error messages

      Version 0.22.0 (November 10, 2021)

      JuMP v0.22 is a breaking release

      Breaking

      JuMP 0.22 contains a number of breaking changes. However, these should be invisible for the majority of users. You will mostly encounter these breaking changes if you: wrote a JuMP extension, accessed backend(model), or called @SDconstraint.

      The breaking changes are as follows:

      • MathOptInterface has been updated to v0.10.4. For users who have interacted with the MOI backend, this contains a large number of breaking changes. Read the MathOptInterface release notes for more details.
      • The bridge_constraints keyword argument to Model and set_optimizer has been renamed add_bridges to reflect that more thing were bridged than just constraints.
      • The backend(model) field now contains a concrete instance of a MOI.Utilities.CachingOptimizer instead of one with an abstractly typed optimizer field. In most cases, this will lead to improved performance. However, calling set_optimizer after backend invalidates the old backend. For example:
        model = Model()
         b = backend(model)
         set_optimizer(model, GLPK.Optimizer)
         @variable(model, x)
         # b is not updated with `x`! Get a new b by calling `backend` again.
        -new_b = backend(model)
      • All usages of @SDconstraint are deprecated. The new syntax is @constraint(model, X >= Y, PSDCone()).
      • Creating a DenseAxisArray with a Number as an axis will now display a warning. This catches a common error in which users write @variable(model, x[length(S)]) instead of @variable(model, x[1:length(S)]).
      • The caching_mode argument to Model, for example, Model(caching_mode = MOIU.MANUAL) mode has been removed. For more control over the optimizer, use direct_model instead.
      • The previously deprecated lp_objective_perturbation_range and lp_rhs_perturbation_range functions have been removed. Use lp_sensitivity_report instead.
      • The .m fields of NonlinearExpression and NonlinearParameter have been renamed to .model.
      • Infinite variable bounds are now ignored. Thus, @variable(model, x <= Inf) will show has_upper_bound(x) == false. Previously, these bounds were passed through to the solvers which caused numerical issues for solvers expecting finite bounds.
      • The variable_type and constraint_type functions were removed. This should only affect users who previously wrote JuMP extensions. The functions can be deleted without consequence.
      • The internal functions moi_mode, moi_bridge_constraints, moi_add_constraint, and moi_add_to_function_constant are no longer exported.
      • The un-used method Containers.generate_container has been deleted.
      • The Containers API has been refactored, and _build_ref_sets is now public as Containers.build_ref_sets.
      • The parse_constraint_ methods for extending @constraint at parse time have been refactored in a breaking way. Consult the Extensions documentation for more details and examples.

      Added

      • The TerminationStatusCode and ResultStatusCode enums are now exported by JuMP. Prefer termination_status(model) == OPTIMAL instead of == MOI.OPTIMAL, although the MOI. prefix way still works.
      • Copy a x::DenseAxisArray to an Array by calling Array(x).
      • NonlinearExpression is now a subtype of AbstractJuMPScalar
      • Constraints such as @constraint(model, x + 1 in MOI.Integer()) are now supported.
      • primal_feasibility_report now accepts a function as the first argument.
      • Scalar variables @variable(model, x[1:2] in MOI.Integer()) creates two variables, both of which are constrained to be in the set MOI.Integer.
      • Conic constraints can now be specified as inequalities under a different partial ordering. So @constraint(model, x - y in MOI.Nonnegatives()) can now be written as @constraint(model, x >= y, MOI.Nonnegatives()).
      • Names are now set for vectorized constraints.

      Fixed

      • Fixed a performance issue when show was called on a SparseAxisArray with a large number of elements.
      • Fixed a bug displaying barrier and simplex iterations in solution_summary.
      • Fixed a bug by implementing hash for DenseAxisArray and SparseAxisArray.
      • Names are now only set if the solver supports them. Previously, this prevented solvers such as Ipopt from being used with direct_model.
      • MutableArithmetics.Zero is converted into a 0.0 before being returned to the user. Previously, some calls to @expression would return the undocumented MutableArithmetics.Zero() object. One example is summing over an empty set @expression(model, sum(x[i] for i in 1:0)). You will now get 0.0 instead.
      • AffExpr and QuadExpr can now be used with == 0 instead of iszero. This fixes a number of issues relating to Julia standard libraries such as LinearAlgebra and SparseArrays.
      • Fixed a bug when registering a user-defined function with splatting.

      Other

      • The documentation is now available as a PDF.
      • The documentation now includes a full copy of the MathOptInterface documentation to make it easy to link concepts between the docs. (The MathOptInterface documentation has also been significantly improved.)
      • The documentation contains a large number of improvements and clarifications on a range of topics. Thanks to @sshin23, @DilumAluthge, and @jlwether.
      • The documentation is now built with Julia 1.6 instead of 1.0.
      • Various error messages have been improved to be more readable.

      Version 0.21.10 (September 4, 2021)

      Added

      • Added add_NL_expression
      • add_NL_xxx functions now support AffExpr and QuadExpr as terms

      Fixed

      • Fixed a bug in solution_summary
      • Fixed a bug in relax_integrality

      Other

      • Improved error message in lp_sensitivity_report

      Version 0.21.9 (August 1, 2021)

      Added

      • Containers now support arbitrary container types by passing the type to the container keyword and overloading Containers.container.
      • is_valid now supports nonlinear constraints
      • Added unsafe_backend for querying the inner-most optimizer of a JuMP model.
      • Nonlinear parameters now support the plural @NLparameters macro.
      • Containers (for example, DenseAxisArray) can now be used in vector-valued constraints.

      Other

      • Various improvements to the documentation.

      Version 0.21.8 (May 8, 2021)

      Added

      • The @constraint macro is now extendable in the same way as @variable.
      • AffExpr and QuadExpr can now be used in nonlinear macros.

      Fixed

      • Fixed a bug in lp_sensitivity_report.
      • Fixed an inference issue when creating empty SparseAxisArrays.

      Version 0.21.7 (April 12, 2021)

      Added

      • Added primal_feasibility_report, which can be used to check whether a primal point satisfies primal feasibility.
      • Added coefficient, which returns the coefficient associated with a variable in affine and quadratic expressions.
      • Added copy_conflict, which returns the IIS of an infeasible model.
      • Added solution_summary, which returns (and prints) a struct containing a summary of the solution.
      • Allow AbstractVector in vector constraints instead of just Vector.
      • Added latex_formulation(model) which returns an object representing the latex formulation of a model. Use print(latex_formulation(model)) to print the formulation as a string.
      • User-defined functions in nonlinear expressions are now automatically registered to aid quick model prototyping. However, a warning is printed to encourage the manual registration.
      • DenseAxisArray's now support broadcasting over multiple arrays.
      • Container indices can now be iterators of Base.SizeUnknown.

      Fixed

      • Fixed bug in rad2deg and deg2rad in nonlinear expressions.
      • Fixed a MethodError bug in Containers when forcing container type.
      • Allow partial slicing of a DenseAxisArray, resolving an issue from 2014.
      • Fixed a bug printing variable names in IJulia.
      • Ending an IJulia cell with model now prints a summary of the model (like in the REPL) not the latex formulation. Use print(model) to print the latex formulation.
      • Fixed a bug when copying models containing nested arrays.

      Other

      • Tutorials are now part of the documentation, and more refactoring has taken place.
      • Added JuliaFormatter added as a code formatter.
      • Added some precompilation statements to reduce initial latency.
      • Various improvements to error messages to make them more helpful.
      • Improved performance of value(::NonlinearExpression).
      • Improved performance of fix(::VariableRef).

      Version 0.21.6 (January 29, 2021)

      Added

      • Added support for skew symmetric variables via @variable(model, X[1:2, 1:2] in SkewSymmetricMatrixSpace()).
      • lp_sensitivity_report has been added which significantly improves the performance of querying the sensitivity summary of an LP. lp_objective_perturbation_range and lp_rhs_perturbation_range are deprecated.
      • Dual warm-starts are now supported with set_dual_start_value and dual_start_value.
      • (\in<tab>) can now be used in macros instead of = or in.
      • Use haskey(model::Model, key::Symbol) to check if a name key is registered in a model.
      • Added unregister(model::Model, key::Symbol) to unregister a name key from model.
      • Added callback_node_status for use in callbacks.
      • Added print_bridge_graph to visualize the bridging graph generated by MathOptInterface.
      • Improved error message for containers with duplicate indices.

      Fixed

      • Various fixes to pass tests on Julia 1.6.
      • Fixed a bug in the printing of nonlinear expressions in IJulia.
      • Fixed a bug when nonlinear expressions are passed to user-defined functions.
      • Some internal functions that were previously exported are now no longer exported.
      • Fixed a bug when relaxing a fixed binary variable.
      • Fixed a StackOverflowError that occurred when SparseAxisArrays had a large number of elements.
      • Removed an unnecessary type assertion in list_of_constraint_types.
      • Fixed a bug when copying models with registered expressions.

      Other

      • The documentation has been significantly overhauled. It now has distinct sections for the manual, API reference, and examples. The existing examples in /examples have now been moved to /docs/src/examples and rewritten using Literate.jl, and they are now included in the documentation.
      • JuliaFormatter has been applied to most of the codebase. This will continue to roll out over time, as we fix upstream issues in the formatter, and will eventually become compulsory.
      • The root cause of a large number of method invalidations has been resolved.
      • We switched continuous integration from Travis and Appveyor to GitHub Actions.

      Version 0.21.5 (September 18, 2020)

      Fixed

      • Fixed deprecation warnings
      • Throw DimensionMismatch for incompatibly sized functions and sets
      • Unify treatment of keys(x) on JuMP containers

      Version 0.21.4 (September 14, 2020)

      Added

      • Add debug info when adding unsupported constraints
      • Add relax_integrality for solving continuous relaxation
      • Allow querying constraint conflicts

      Fixed

      • Dispatch on Real for MOI.submit
      • Implement copy for CustomSet in tests
      • Don't export private macros
      • Fix invalid assertion in nonlinear
      • Error if constraint has NaN right-hand side
      • Improve speed of tests
      • Lots of work modularizing files in /test
      • Improve line numbers in macro error messages
      • Print nonlinear subexpressions
      • Various documentation updates
      • Dependency updates:
        • Datastructures 0.18
        • MathOptFormat v0.5
        • Prep for MathOptInterface 0.9.15

      Version 0.21.3 (June 18, 2020)

      • Added Special Order Sets (SOS1 and SOS2) to JuMP with default weights to ease the creation of such constraints (#2212).
      • Added functions simplex_iterations, barrier_iterations and node_count (#2201).
      • Added function reduced_cost (#2205).
      • Implemented callback_value for affine and quadratic expressions (#2231).
      • Support MutableArithmetics.Zero in objective and constraints (#2219).
      • Documentation improvements:
        • Mention tutorials in the docs (#2223).
        • Update COIN-OR links (#2242).
        • Explicit link to the documentation of MOI.FileFormats (#2253).
        • Typo fixes (#2261).
      • Containers improvements:
        • Fix Base.map for DenseAxisArray (#2235).
        • Throw BoundsError if number of indices is incorrect for DenseAxisArray and SparseAxisArray (#2240).
      • Extensibility improvements:
        • Implement a set_objective method fallback that redirects to set_objective_sense and set_objective_function (#2247).
        • Add parse_constraint method with arbitrary number of arguments (#2051).
        • Add parse_constraint_expr and parse_constraint_head (#2228).

      Version 0.21.2 (April 2, 2020)

      • Added relative_gap() to access MOI.RelativeGap() attribute (#2199).
      • Documentation fixes:
        • Added link to source for docstrings in the documentation (#2207).
        • Added docstring for @variables macro (#2216).
        • Typo fixes (#2177, #2184, #2182).
      • Implementation of methods for Base functions:
        • Implemented Base.empty! for JuMP.Model (#2198).
        • Implemented Base.conj for JuMP scalar types (#2209).

      Fixed

      • Fixed sum of expression with scalar product in macro (#2178).
      • Fixed writing of nonlinear models to MathOptFormat (#2181).
      • Fixed construction of empty SparseAxisArray (#2179).
      • Fixed constraint with zero function (#2188).

      Version 0.21.1 (Feb 18, 2020)

      • Improved the clarity of the with_optimizer deprecation warning.

      Version 0.21.0 (Feb 16, 2020)

      Breaking

      • Deprecated with_optimizer (#2090, #2084, #2141). You can replace with_optimizer by either nothing, optimizer_with_attributes or a closure:

        • replace with_optimizer(Ipopt.Optimizer) by Ipopt.Optimizer.
        • replace with_optimizer(Ipopt.Optimizer, max_cpu_time=60.0) by optimizer_with_attributes(Ipopt.Optimizer, "max_cpu_time" => 60.0).
        • replace with_optimizer(Gurobi.Optimizer, env) by () -> Gurobi.Optimizer(env).
        • replace with_optimizer(Gurobi.Optimizer, env, Presolve=0) by optimizer_with_attributes(() -> Gurobi.Optimizer(env), "Presolve" => 0).

        alternatively to optimizer_with_attributes, you can also set the attributes separately with set_optimizer_attribute.

      • Renamed set_parameter and set_parameters to set_optimizer_attribute and set_optimizer_attributes (#2150).

      • Broadcast should now be explicit inside macros. @SDconstraint(model, x >= 1) and @constraint(model, x + 1 in SecondOrderCone()) now throw an error instead of broadcasting 1 along the dimension of x (#2107).

      • @SDconstraint(model, x >= 0) is now equivalent to @constraint(model, x in PSDCone()) instead of @constraint(model, (x .- 0) in PSDCone()) (#2107).

      • The macros now create the containers with map instead of for loops, as a consequence, containers created by @expression can now have any element type and containers of constraint references now have concrete element types when possible. This fixes a long-standing issue where @expression could only be used to generate a collection of linear expressions. Now it works for quadratic expressions as well (#2070).

      • Calling deepcopy(::AbstractModel) now throws an error.

      • The constraint name is now printed in the model string (#2108).

      Added

      • Added support for solver-independent and solver-specific callbacks (#2101).
      • Added write_to_file and read_from_file, supported formats are CBF, LP, MathOptFormat, MPS and SDPA (#2114).
      • Added support for complementarity constraints (#2132).
      • Added support for indicator constraints (#2092).
      • Added support for querying multiple solutions with the result keyword (#2100).
      • Added support for constraining variables on creation (#2128).
      • Added method delete that deletes a vector of variables at once if it is supported by the underlying solver (#2135).
      • The arithmetic between JuMP expression has be refactored into the MutableArithmetics package (#2107).
      • Improved error on complex values in NLP (#1978).
      • Added an example of column generation (#2010).

      Fixed

      • Incorrect coefficients generated when using Symmetric variables (#2102)

      Version 0.20.1 (Oct 18, 2019)

      • Add sections on @variables and @constraints in the documentation (#2062).
      • Fixed product of sparse matrices for Julia v1.3 (#2063).
      • Added set_objective_coefficient to modify the coefficient of a linear term of the objective function (#2008).
      • Added set_time_limit_sec, unset_time_limit_sec and time_limit_sec to set and query the time limit for the solver in seconds (#2053).

      Version 0.20.0 (Aug 24, 2019)

      • Documentation updates.
      • Numerous bug fixes.
      • Better error messages (#1977, #1978, #1997, #2017).
      • Performance improvements (#1947, #2032).
      • Added LP sensitivity summary functions lp_objective_perturbation_range and lp_rhs_perturbation_range (#1917).
      • Added functions dual_objective_value, raw_status and set_parameter.
      • Added function set_objective_coefficient to modify the coefficient of a linear term of the objective (#2008).
      • Added functions set_normalized_rhs, normalized_rhs, and add_to_function_constant to modify and get the constant part of a constraint (#1935, #1960).
      • Added functions set_normalized_coefficient and normalized_coefficient to modify and get the coefficient of a linear term of a constraint (#1935, #1960).
      • Numerous other improvements in MOI 0.9, see the NEWS.md file of MOI for more details.

      Version 0.19.2 (June 8, 2019)

      • Fix a bug in derivatives that could arise in models with nested nonlinear subexpressions.

      Version 0.19.1 (May 12, 2019)

      • Usability and performance improvements.
      • Bug fixes.

      Version 0.19.0 (February 15, 2019)

      JuMP 0.19 contains significant breaking changes.

      Breaking

      • JuMP's abstraction layer for communicating with solvers changed from MathProgBase (MPB) to MathOptInterface (MOI). MOI addresses many longstanding design issues. (See @mlubin's slides from JuMP-dev 2018.) JuMP 0.19 is compatible only with solvers that have been updated for MOI. See the installation guide for a list of solvers that have and have not yet been updated.

      • Most solvers have been renamed to PackageName.Optimizer. For example, GurobiSolver() is now Gurobi.Optimizer.

      • Solvers are no longer added to a model via Model(solver = XXX(kwargs...)). Instead use Model(with_optimizer(XXX, kwargs...)). For example, Model(with_optimizer(Gurobi.Optimizer, OutputFlag=0)).

      • JuMP containers (for example, the objects returned by @variable) have been redesigned. Containers.SparseAxisArray replaces JuMPDict, JuMPArray was rewritten (inspired by AxisArrays) and renamed Containers.DenseAxisArray, and you can now request a container type with the container= keyword to the macros. See the corresponding documentation for more details.

      • The statuses returned by solvers have changed. See the possible status values here. The MOI statuses are much richer than the MPB statuses and can be used to distinguish between previously indistinguishable cases (for example, did the solver have a feasible solution when it stopped because of the time limit?).

      • Starting values are separate from result values. Use value to query the value of a variable in a solution. Use start_value and set_start_value to get and set an initial starting point provided to the solver. The solutions from previous solves are no longer automatically set as the starting points for the next solve.

      • The data structures for affine and quadratic expressions AffExpr and QuadExpr have changed. Internally, terms are stored in dictionaries instead of lists. Duplicate coefficients can no longer exist. Accessors and iteration methods have changed.

      • JuMPNLPEvaluator no longer includes the linear and quadratic parts of the model in the evaluation calls. These are now handled separately to allow NLP solvers that support various types of constraints.

      • JuMP solver-independent callbacks have been replaced by solver-specific callbacks. See your favorite solver for more details. (See the note below: No solver-specific callbacks are implemented yet.)

      • The norm() syntax is no longer recognized inside macros. Use the SecondOrderCone() set instead.

      • JuMP no longer performs automatic transformation between special quadratic forms and second-order cone constraints. Support for these constraint classes depends on the solver.

      • The symbols :Min and :Max are no longer used as optimization senses. Instead, JuMP uses the OptimizationSense enum from MathOptInterface. @objective(model, Max, ...), @objective(model, Min, ...), @NLobjective(model, Max, ...), and @objective(model, Min, ...) remain valid, but @objective(m, :Max, ...) is no longer accepted.

      • The sign conventions for duals has changed in some cases for consistency with conic duality (see the documentation). The shadow_price helper method returns duals with signs that match conventional LP interpretations of dual values as sensitivities of the objective value to relaxations of constraints.

      • @constraintref is no longer defined. Instead, create the appropriate container to hold constraint references manually. For example,

        constraints = Dict() # Optionally, specify types for improved performance.
        +new_b = backend(model)
      • All usages of @SDconstraint are deprecated. The new syntax is @constraint(model, X >= Y, PSDCone()).
      • Creating a DenseAxisArray with a Number as an axis will now display a warning. This catches a common error in which users write @variable(model, x[length(S)]) instead of @variable(model, x[1:length(S)]).
      • The caching_mode argument to Model, for example, Model(caching_mode = MOIU.MANUAL) mode has been removed. For more control over the optimizer, use direct_model instead.
      • The previously deprecated lp_objective_perturbation_range and lp_rhs_perturbation_range functions have been removed. Use lp_sensitivity_report instead.
      • The .m fields of NonlinearExpression and NonlinearParameter have been renamed to .model.
      • Infinite variable bounds are now ignored. Thus, @variable(model, x <= Inf) will show has_upper_bound(x) == false. Previously, these bounds were passed through to the solvers which caused numerical issues for solvers expecting finite bounds.
      • The variable_type and constraint_type functions were removed. This should only affect users who previously wrote JuMP extensions. The functions can be deleted without consequence.
      • The internal functions moi_mode, moi_bridge_constraints, moi_add_constraint, and moi_add_to_function_constant are no longer exported.
      • The un-used method Containers.generate_container has been deleted.
      • The Containers API has been refactored, and _build_ref_sets is now public as Containers.build_ref_sets.
      • The parse_constraint_ methods for extending @constraint at parse time have been refactored in a breaking way. Consult the Extensions documentation for more details and examples.

      Added

      • The TerminationStatusCode and ResultStatusCode enums are now exported by JuMP. Prefer termination_status(model) == OPTIMAL instead of == MOI.OPTIMAL, although the MOI. prefix way still works.
      • Copy a x::DenseAxisArray to an Array by calling Array(x).
      • NonlinearExpression is now a subtype of AbstractJuMPScalar
      • Constraints such as @constraint(model, x + 1 in MOI.Integer()) are now supported.
      • primal_feasibility_report now accepts a function as the first argument.
      • Scalar variables @variable(model, x[1:2] in MOI.Integer()) creates two variables, both of which are constrained to be in the set MOI.Integer.
      • Conic constraints can now be specified as inequalities under a different partial ordering. So @constraint(model, x - y in MOI.Nonnegatives()) can now be written as @constraint(model, x >= y, MOI.Nonnegatives()).
      • Names are now set for vectorized constraints.

      Fixed

      • Fixed a performance issue when show was called on a SparseAxisArray with a large number of elements.
      • Fixed a bug displaying barrier and simplex iterations in solution_summary.
      • Fixed a bug by implementing hash for DenseAxisArray and SparseAxisArray.
      • Names are now only set if the solver supports them. Previously, this prevented solvers such as Ipopt from being used with direct_model.
      • MutableArithmetics.Zero is converted into a 0.0 before being returned to the user. Previously, some calls to @expression would return the undocumented MutableArithmetics.Zero() object. One example is summing over an empty set @expression(model, sum(x[i] for i in 1:0)). You will now get 0.0 instead.
      • AffExpr and QuadExpr can now be used with == 0 instead of iszero. This fixes a number of issues relating to Julia standard libraries such as LinearAlgebra and SparseArrays.
      • Fixed a bug when registering a user-defined function with splatting.

      Other

      • The documentation is now available as a PDF.
      • The documentation now includes a full copy of the MathOptInterface documentation to make it easy to link concepts between the docs. (The MathOptInterface documentation has also been significantly improved.)
      • The documentation contains a large number of improvements and clarifications on a range of topics. Thanks to @sshin23, @DilumAluthge, and @jlwether.
      • The documentation is now built with Julia 1.6 instead of 1.0.
      • Various error messages have been improved to be more readable.

      Version 0.21.10 (September 4, 2021)

      Added

      • Added add_NL_expression
      • add_NL_xxx functions now support AffExpr and QuadExpr as terms

      Fixed

      • Fixed a bug in solution_summary
      • Fixed a bug in relax_integrality

      Other

      • Improved error message in lp_sensitivity_report

      Version 0.21.9 (August 1, 2021)

      Added

      • Containers now support arbitrary container types by passing the type to the container keyword and overloading Containers.container.
      • is_valid now supports nonlinear constraints
      • Added unsafe_backend for querying the inner-most optimizer of a JuMP model.
      • Nonlinear parameters now support the plural @NLparameters macro.
      • Containers (for example, DenseAxisArray) can now be used in vector-valued constraints.

      Other

      • Various improvements to the documentation.

      Version 0.21.8 (May 8, 2021)

      Added

      • The @constraint macro is now extendable in the same way as @variable.
      • AffExpr and QuadExpr can now be used in nonlinear macros.

      Fixed

      • Fixed a bug in lp_sensitivity_report.
      • Fixed an inference issue when creating empty SparseAxisArrays.

      Version 0.21.7 (April 12, 2021)

      Added

      • Added primal_feasibility_report, which can be used to check whether a primal point satisfies primal feasibility.
      • Added coefficient, which returns the coefficient associated with a variable in affine and quadratic expressions.
      • Added copy_conflict, which returns the IIS of an infeasible model.
      • Added solution_summary, which returns (and prints) a struct containing a summary of the solution.
      • Allow AbstractVector in vector constraints instead of just Vector.
      • Added latex_formulation(model) which returns an object representing the latex formulation of a model. Use print(latex_formulation(model)) to print the formulation as a string.
      • User-defined functions in nonlinear expressions are now automatically registered to aid quick model prototyping. However, a warning is printed to encourage the manual registration.
      • DenseAxisArray's now support broadcasting over multiple arrays.
      • Container indices can now be iterators of Base.SizeUnknown.

      Fixed

      • Fixed bug in rad2deg and deg2rad in nonlinear expressions.
      • Fixed a MethodError bug in Containers when forcing container type.
      • Allow partial slicing of a DenseAxisArray, resolving an issue from 2014.
      • Fixed a bug printing variable names in IJulia.
      • Ending an IJulia cell with model now prints a summary of the model (like in the REPL) not the latex formulation. Use print(model) to print the latex formulation.
      • Fixed a bug when copying models containing nested arrays.

      Other

      • Tutorials are now part of the documentation, and more refactoring has taken place.
      • Added JuliaFormatter added as a code formatter.
      • Added some precompilation statements to reduce initial latency.
      • Various improvements to error messages to make them more helpful.
      • Improved performance of value(::NonlinearExpression).
      • Improved performance of fix(::VariableRef).

      Version 0.21.6 (January 29, 2021)

      Added

      • Added support for skew symmetric variables via @variable(model, X[1:2, 1:2] in SkewSymmetricMatrixSpace()).
      • lp_sensitivity_report has been added which significantly improves the performance of querying the sensitivity summary of an LP. lp_objective_perturbation_range and lp_rhs_perturbation_range are deprecated.
      • Dual warm-starts are now supported with set_dual_start_value and dual_start_value.
      • (\in<tab>) can now be used in macros instead of = or in.
      • Use haskey(model::Model, key::Symbol) to check if a name key is registered in a model.
      • Added unregister(model::Model, key::Symbol) to unregister a name key from model.
      • Added callback_node_status for use in callbacks.
      • Added print_bridge_graph to visualize the bridging graph generated by MathOptInterface.
      • Improved error message for containers with duplicate indices.

      Fixed

      • Various fixes to pass tests on Julia 1.6.
      • Fixed a bug in the printing of nonlinear expressions in IJulia.
      • Fixed a bug when nonlinear expressions are passed to user-defined functions.
      • Some internal functions that were previously exported are now no longer exported.
      • Fixed a bug when relaxing a fixed binary variable.
      • Fixed a StackOverflowError that occurred when SparseAxisArrays had a large number of elements.
      • Removed an unnecessary type assertion in list_of_constraint_types.
      • Fixed a bug when copying models with registered expressions.

      Other

      • The documentation has been significantly overhauled. It now has distinct sections for the manual, API reference, and examples. The existing examples in /examples have now been moved to /docs/src/examples and rewritten using Literate.jl, and they are now included in the documentation.
      • JuliaFormatter has been applied to most of the codebase. This will continue to roll out over time, as we fix upstream issues in the formatter, and will eventually become compulsory.
      • The root cause of a large number of method invalidations has been resolved.
      • We switched continuous integration from Travis and Appveyor to GitHub Actions.

      Version 0.21.5 (September 18, 2020)

      Fixed

      • Fixed deprecation warnings
      • Throw DimensionMismatch for incompatibly sized functions and sets
      • Unify treatment of keys(x) on JuMP containers

      Version 0.21.4 (September 14, 2020)

      Added

      • Add debug info when adding unsupported constraints
      • Add relax_integrality for solving continuous relaxation
      • Allow querying constraint conflicts

      Fixed

      • Dispatch on Real for MOI.submit
      • Implement copy for CustomSet in tests
      • Don't export private macros
      • Fix invalid assertion in nonlinear
      • Error if constraint has NaN right-hand side
      • Improve speed of tests
      • Lots of work modularizing files in /test
      • Improve line numbers in macro error messages
      • Print nonlinear subexpressions
      • Various documentation updates
      • Dependency updates:
        • Datastructures 0.18
        • MathOptFormat v0.5
        • Prep for MathOptInterface 0.9.15

      Version 0.21.3 (June 18, 2020)

      • Added Special Order Sets (SOS1 and SOS2) to JuMP with default weights to ease the creation of such constraints (#2212).
      • Added functions simplex_iterations, barrier_iterations and node_count (#2201).
      • Added function reduced_cost (#2205).
      • Implemented callback_value for affine and quadratic expressions (#2231).
      • Support MutableArithmetics.Zero in objective and constraints (#2219).
      • Documentation improvements:
        • Mention tutorials in the docs (#2223).
        • Update COIN-OR links (#2242).
        • Explicit link to the documentation of MOI.FileFormats (#2253).
        • Typo fixes (#2261).
      • Containers improvements:
        • Fix Base.map for DenseAxisArray (#2235).
        • Throw BoundsError if number of indices is incorrect for DenseAxisArray and SparseAxisArray (#2240).
      • Extensibility improvements:
        • Implement a set_objective method fallback that redirects to set_objective_sense and set_objective_function (#2247).
        • Add parse_constraint method with arbitrary number of arguments (#2051).
        • Add parse_constraint_expr and parse_constraint_head (#2228).

      Version 0.21.2 (April 2, 2020)

      • Added relative_gap() to access MOI.RelativeGap() attribute (#2199).
      • Documentation fixes:
        • Added link to source for docstrings in the documentation (#2207).
        • Added docstring for @variables macro (#2216).
        • Typo fixes (#2177, #2184, #2182).
      • Implementation of methods for Base functions:
        • Implemented Base.empty! for JuMP.Model (#2198).
        • Implemented Base.conj for JuMP scalar types (#2209).

      Fixed

      • Fixed sum of expression with scalar product in macro (#2178).
      • Fixed writing of nonlinear models to MathOptFormat (#2181).
      • Fixed construction of empty SparseAxisArray (#2179).
      • Fixed constraint with zero function (#2188).

      Version 0.21.1 (Feb 18, 2020)

      • Improved the clarity of the with_optimizer deprecation warning.

      Version 0.21.0 (Feb 16, 2020)

      Breaking

      • Deprecated with_optimizer (#2090, #2084, #2141). You can replace with_optimizer by either nothing, optimizer_with_attributes or a closure:

        • replace with_optimizer(Ipopt.Optimizer) by Ipopt.Optimizer.
        • replace with_optimizer(Ipopt.Optimizer, max_cpu_time=60.0) by optimizer_with_attributes(Ipopt.Optimizer, "max_cpu_time" => 60.0).
        • replace with_optimizer(Gurobi.Optimizer, env) by () -> Gurobi.Optimizer(env).
        • replace with_optimizer(Gurobi.Optimizer, env, Presolve=0) by optimizer_with_attributes(() -> Gurobi.Optimizer(env), "Presolve" => 0).

        alternatively to optimizer_with_attributes, you can also set the attributes separately with set_optimizer_attribute.

      • Renamed set_parameter and set_parameters to set_optimizer_attribute and set_optimizer_attributes (#2150).

      • Broadcast should now be explicit inside macros. @SDconstraint(model, x >= 1) and @constraint(model, x + 1 in SecondOrderCone()) now throw an error instead of broadcasting 1 along the dimension of x (#2107).

      • @SDconstraint(model, x >= 0) is now equivalent to @constraint(model, x in PSDCone()) instead of @constraint(model, (x .- 0) in PSDCone()) (#2107).

      • The macros now create the containers with map instead of for loops, as a consequence, containers created by @expression can now have any element type and containers of constraint references now have concrete element types when possible. This fixes a long-standing issue where @expression could only be used to generate a collection of linear expressions. Now it works for quadratic expressions as well (#2070).

      • Calling deepcopy(::AbstractModel) now throws an error.

      • The constraint name is now printed in the model string (#2108).

      Added

      • Added support for solver-independent and solver-specific callbacks (#2101).
      • Added write_to_file and read_from_file, supported formats are CBF, LP, MathOptFormat, MPS and SDPA (#2114).
      • Added support for complementarity constraints (#2132).
      • Added support for indicator constraints (#2092).
      • Added support for querying multiple solutions with the result keyword (#2100).
      • Added support for constraining variables on creation (#2128).
      • Added method delete that deletes a vector of variables at once if it is supported by the underlying solver (#2135).
      • The arithmetic between JuMP expression has be refactored into the MutableArithmetics package (#2107).
      • Improved error on complex values in NLP (#1978).
      • Added an example of column generation (#2010).

      Fixed

      • Incorrect coefficients generated when using Symmetric variables (#2102)

      Version 0.20.1 (Oct 18, 2019)

      • Add sections on @variables and @constraints in the documentation (#2062).
      • Fixed product of sparse matrices for Julia v1.3 (#2063).
      • Added set_objective_coefficient to modify the coefficient of a linear term of the objective function (#2008).
      • Added set_time_limit_sec, unset_time_limit_sec and time_limit_sec to set and query the time limit for the solver in seconds (#2053).

      Version 0.20.0 (Aug 24, 2019)

      • Documentation updates.
      • Numerous bug fixes.
      • Better error messages (#1977, #1978, #1997, #2017).
      • Performance improvements (#1947, #2032).
      • Added LP sensitivity summary functions lp_objective_perturbation_range and lp_rhs_perturbation_range (#1917).
      • Added functions dual_objective_value, raw_status and set_parameter.
      • Added function set_objective_coefficient to modify the coefficient of a linear term of the objective (#2008).
      • Added functions set_normalized_rhs, normalized_rhs, and add_to_function_constant to modify and get the constant part of a constraint (#1935, #1960).
      • Added functions set_normalized_coefficient and normalized_coefficient to modify and get the coefficient of a linear term of a constraint (#1935, #1960).
      • Numerous other improvements in MOI 0.9, see the NEWS.md file of MOI for more details.

      Version 0.19.2 (June 8, 2019)

      • Fix a bug in derivatives that could arise in models with nested nonlinear subexpressions.

      Version 0.19.1 (May 12, 2019)

      • Usability and performance improvements.
      • Bug fixes.

      Version 0.19.0 (February 15, 2019)

      JuMP 0.19 contains significant breaking changes.

      Breaking

      • JuMP's abstraction layer for communicating with solvers changed from MathProgBase (MPB) to MathOptInterface (MOI). MOI addresses many longstanding design issues. (See @mlubin's slides from JuMP-dev 2018.) JuMP 0.19 is compatible only with solvers that have been updated for MOI. See the installation guide for a list of solvers that have and have not yet been updated.

      • Most solvers have been renamed to PackageName.Optimizer. For example, GurobiSolver() is now Gurobi.Optimizer.

      • Solvers are no longer added to a model via Model(solver = XXX(kwargs...)). Instead use Model(with_optimizer(XXX, kwargs...)). For example, Model(with_optimizer(Gurobi.Optimizer, OutputFlag=0)).

      • JuMP containers (for example, the objects returned by @variable) have been redesigned. Containers.SparseAxisArray replaces JuMPDict, JuMPArray was rewritten (inspired by AxisArrays) and renamed Containers.DenseAxisArray, and you can now request a container type with the container= keyword to the macros. See the corresponding documentation for more details.

      • The statuses returned by solvers have changed. See the possible status values here. The MOI statuses are much richer than the MPB statuses and can be used to distinguish between previously indistinguishable cases (for example, did the solver have a feasible solution when it stopped because of the time limit?).

      • Starting values are separate from result values. Use value to query the value of a variable in a solution. Use start_value and set_start_value to get and set an initial starting point provided to the solver. The solutions from previous solves are no longer automatically set as the starting points for the next solve.

      • The data structures for affine and quadratic expressions AffExpr and QuadExpr have changed. Internally, terms are stored in dictionaries instead of lists. Duplicate coefficients can no longer exist. Accessors and iteration methods have changed.

      • JuMPNLPEvaluator no longer includes the linear and quadratic parts of the model in the evaluation calls. These are now handled separately to allow NLP solvers that support various types of constraints.

      • JuMP solver-independent callbacks have been replaced by solver-specific callbacks. See your favorite solver for more details. (See the note below: No solver-specific callbacks are implemented yet.)

      • The norm() syntax is no longer recognized inside macros. Use the SecondOrderCone() set instead.

      • JuMP no longer performs automatic transformation between special quadratic forms and second-order cone constraints. Support for these constraint classes depends on the solver.

      • The symbols :Min and :Max are no longer used as optimization senses. Instead, JuMP uses the OptimizationSense enum from MathOptInterface. @objective(model, Max, ...), @objective(model, Min, ...), @NLobjective(model, Max, ...), and @objective(model, Min, ...) remain valid, but @objective(m, :Max, ...) is no longer accepted.

      • The sign conventions for duals has changed in some cases for consistency with conic duality (see the documentation). The shadow_price helper method returns duals with signs that match conventional LP interpretations of dual values as sensitivities of the objective value to relaxations of constraints.

      • @constraintref is no longer defined. Instead, create the appropriate container to hold constraint references manually. For example,

        constraints = Dict() # Optionally, specify types for improved performance.
         for i in 1:N
           constraints[i] = @constraint(model, ...)
        -end
      • The lowerbound, upperbound, and basename keyword arguments to the @variable macro have been renamed to lower_bound, upper_bound, and base_name, for consistency with JuMP's new style recommendations.

      • We rely on broadcasting syntax to apply accessors to collections of variables, for example, value.(x) instead of getvalue(x) for collections. (Use value(x) when x is a scalar object.)

      Added

      • Splatting (like f(x...)) is recognized in restricted settings in nonlinear expressions.

      • Support for deleting constraints and variables.

      • The documentation has been completely rewritten using docstrings and Documenter.

      • Support for modeling mixed conic and quadratic models (for example, conic models with quadratic objectives and bi-linear matrix inequalities).

      • Significantly improved support for modeling new types of constraints and for extending JuMP's macros.

      • Support for providing dual warm starts.

      • Improved support for accessing solver-specific attributes (for example, the irreducible inconsistent subsystem).

      • Explicit control of whether symmetry-enforcing constraints are added to PSD constraints.

      • Support for modeling exponential cones.

      • Significant improvements in internal code quality and testing.

      • Style and naming guidelines.

      • Direct mode and manual mode provide explicit control over when copies of a model are stored or regenerated. See the corresponding documentation.

      Regressions

      There are known regressions from JuMP 0.18 that will be addressed in a future release (0.19.x or later):

      • Performance regressions in model generation (issue). Please file an issue anyway if you notice a significant performance regression. We have plans to address a number of performance issues, but we might not be aware of all of them.

      • Fast incremental NLP solves are not yet reimplemented (issue).

      • We do not yet have an implementation of solver-specific callbacks.

      • The column generation syntax in @variable has been removed (that is, the objective, coefficients, and inconstraints keyword arguments). Support for column generation will be re-introduced in a future release.

      • The ability to solve the continuous relaxation (that is, via solve(model; relaxation = true)) is not yet reimplemented (issue).

      Version 0.18.5 (December 1, 2018)

      • Support views in some derivative evaluation functions.
      • Improved compatibility with PackageCompiler.

      Version 0.18.4 (October 8, 2018)

      • Fix a bug in model printing on Julia 0.7 and 1.0.

      Version 0.18.3 (October 1, 2018)

      • Add support for Julia v1.0 (Thanks @ExpandingMan)
      • Fix matrix expressions with quadratic functions (#1508)

      Version 0.18.2 (June 10, 2018)

      • Fix a bug in second-order derivatives when expressions are present (#1319)
      • Fix a bug in @constraintref (#1330)

      Version 0.18.1 (April 9, 2018)

      • Fix for nested tuple destructuring (#1193)
      • Preserve internal model when relaxation=true (#1209)
      • Minor bug fixes and updates for example

      Version 0.18.0 (July 27, 2017)

      • Drop support for Julia 0.5.
      • Update for ForwardDiff 0.5.
      • Minor bug fixes.

      Version 0.17.1 (June 9, 2017)

      • Use of constructconstraint! in @SDconstraint.
      • Minor bug fixes.

      Version 0.17.0 (May 27, 2017)

      • Breaking change: Mixing quadratic and conic constraints is no longer supported.
      • Breaking change: The getvariable and getconstraint functions are replaced by indexing on the corresponding symbol. For instance, to access the variable with name x, one should now write m[:x] instead of getvariable(m, :x). As a consequence, creating a variable and constraint with the same name now triggers a warning, and accessing one of them afterwards throws an error. This change is breaking only in the latter case.
      • Addition of the getobjectivebound function that mirrors the functionality of the MathProgBase getobjbound function except that it takes into account transformations performed by JuMP.
      • Minor bug fixes.

      The following changes are primarily of interest to developers of JuMP extensions:

      • The new syntax @constraint(model, expr in Cone) creates the constraint ensuring that expr is inside Cone. The Cone argument is passed to constructconstraint! which enables the call to the dispatched to an extension.
      • The @variable macro now calls constructvariable! instead of directly calling the Variable constructor. Extra arguments and keyword arguments passed to @variable are passed to constructvariable! which enables the call to be dispatched to an extension.
      • Refactor the internal function conicdata (used build the MathProgBase conic model) into smaller sub-functions to make these parts reusable by extensions.

      Version 0.16.2 (March 28, 2017)

      • Minor bug fixes and printing tweaks
      • Address deprecation warnings for Julia 0.6

      Version 0.16.1 (March 7, 2017)

      • Better support for AbstractArray in JuMP (Thanks @tkoolen)
      • Minor bug fixes

      Version 0.16.0 (February 23, 2017)

      • Breaking change: JuMP no longer has a mechanism for selecting solvers by default (the previous mechanism was flawed and incompatible with Julia 0.6). Not specifying a solver before calling solve() will result in an error.
      • Breaking change: User-defined functions are no longer global. The first argument to JuMP.register is now a JuMP Model object within whose scope the function will be registered. Calling JuMP.register without a Model now produces an error.
      • Breaking change: Use the new JuMP.fix method to fix a variable to a value or to update the value to which a variable is fixed. Calling setvalue on a fixed variable now results in an error in order to avoid silent behavior changes. (Thanks @joaquimg)
      • Nonlinear expressions now print out similarly to linear/quadratic expressions (useful for debugging!)
      • New category keyword to @variable. Used for specifying categories of anonymous variables.
      • Compatibility with Julia 0.6-dev.
      • Minor fixes and improvements (Thanks @cossio, @ccoffrin, @blegat)

      Version 0.15.1 (January 31, 2017)

      • Bugfix for @LinearConstraints and friends

      Version 0.15.0 (December 22, 2016)

      • Julia 0.5.0 is the minimum required version for this release.
      • Document support for BARON solver
      • Enable info callbacks in more states than before, for example, for recording solutions. New when argument to addinfocallback (#814, thanks @yeesian)
      • Improved support for anonymous variables. This includes new warnings for potentially confusing use of the traditional non-anonymous syntax:
        • When multiple variables in a model are given the same name
        • When non-symbols are used as names, for example, @variable(m, x[1][1:N])
      • Improvements in iterating over JuMP containers (#836, thanks @IssamT)
      • Support for writing variable names in .lp file output (Thanks @leethargo)
      • Support for querying duals to SDP problems (Thanks @blegat)
      • The comprehension syntax with curly braces sum{}, prod{}, and norm2{} has been deprecated in favor of Julia's native comprehension syntax sum(), prod() and norm() as previously announced. (For early adopters of the new syntax, norm2() was renamed to norm() without deprecation.)
      • Unit tests rewritten to use Base.Test instead of FactCheck
      • Improved support for operations with matrices of JuMP types (Thanks @ExpandingMan)
      • The syntax to halt a solver from inside a callback has changed from throw(CallbackAbort()) to return JuMP.StopTheSolver
      • Minor bug fixes

      Version 0.14.2 (December 12, 2016)

      • Allow singleton anonymous variables (includes bugfix)

      Version 0.14.1 (September 12, 2016)

      • More consistent handling of states in informational callbacks, includes a new when parameter to addinfocallback for specifying in which state an informational callback should be called.

      Version 0.14.0 (August 7, 2016)

      • Compatibility with Julia 0.5 and ForwardDiff 0.2
      • Support for "anonymous" variables, constraints, expressions, and parameters, for example, x = @variable(m, [1:N]) instead of @variable(m, x[1:N])
      • Support for retrieving constraints from a model by name via getconstraint
      • @NLconstraint now returns constraint references (as expected).
      • Support for vectorized expressions within lazy constraints
      • On Julia 0.5, parse new comprehension syntax sum(x[i] for i in 1:N if isodd(i)) instead of sum{ x[i], i in 1:N; isodd(i) }. The old syntax with curly braces will be deprecated in JuMP 0.15.
      • Now possible to provide nonlinear expressions as "raw" Julia Expr objects instead of using JuMP's nonlinear macros. This input format is useful for programmatically generated expressions.
      • s/Mathematical Programming/Mathematical Optimization/
      • Support for local cuts (Thanks to @madanim, Mehdi Madani)
      • Document Xpress interface developed by @joaquimg, Joaquim Dias Garcia
      • Minor bug and deprecation fixes (Thanks @odow, @jrevels)

      Version 0.13.2 (May 16, 2016)

      • Compatibility update for MathProgBase

      Version 0.13.1 (May 3, 2016)

      • Fix broken deprecation for registerNLfunction.

      Version 0.13.0 (April 29, 2016)

      • Most exported methods and macros have been renamed to avoid camelCase. See the list of changes here. There is a 1-1 mapping from the old names to the new, and it is safe to simply replace the names to update existing models.
      • Specify variable lower/upper bounds in @variable using the lowerbound and upperbound keyword arguments.
      • Change name printed for variable using the basename keyword argument to @variable.
      • New @variables macro allows multi-line declaration of groups of variables.
      • A number of solver methods previously available only through MathProgBase are now exposed directly in JuMP. The fix was recorded live.
      • Compatibility fixes with Julia 0.5.
      • The "end" indexing syntax is no longer supported within JuMPArrays which do not use 1-based indexing until upstream issues are resolved, see here.

      Version 0.12.2 (March 9, 2016)

      • Small fixes for nonlinear optimization

      Version 0.12.1 (March 1, 2016)

      • Fix a regression in slicing for JuMPArrays (when not using 1-based indexing)

      Version 0.12.0 (February 27, 2016)

      • The automatic differentiation functionality has been completely rewritten with a number of user-facing changes:
        • @defExpr and @defNLExpr now take the model as the first argument. The previous one-argument version of @defExpr is deprecated; all expressions should be named. For example, replace @defExpr(2x+y) with @defExpr(jump_model, my_expr, 2x+y).
        • JuMP no longer uses Julia's variable binding rules for efficiently re-solving a sequence of nonlinear models. Instead, we have introduced nonlinear parameters. This is a breaking change, so we have added a warning message when we detect models that may depend on the old behavior.
        • Support for user-defined functions integrated within nonlinear JuMP expressions.
      • Replaced iteration over AffExpr with Number-like scalar iteration; previous iteration behavior is now available via linearterms(::AffExpr).
      • Stopping the solver via throw(CallbackAbort()) from a callback no longer triggers an exception. Instead, solve() returns UserLimit status.
      • getDual() now works for conic problems (Thanks @emreyamangil.)

      Version 0.11.3 (February 4, 2016)

      • Bug-fix for problems with quadratic objectives and semidefinite constraints

      Version 0.11.2 (January 14, 2016)

      • Compatibility update for Mosek

      Version 0.11.1 (December 1, 2015)

      • Remove usage of @compat in tests.
      • Fix updating quadratic objectives for nonlinear models.

      Version 0.11.0 (November 30, 2015)

      • Julia 0.4.0 is the minimum required version for this release.
      • Fix for scoping semantics of index variables in sum{}. Index variables no longer leak into the surrounding scope.
      • Addition of the solve(m::Model, relaxation=true) keyword argument to solve the standard continuous relaxation of model m
      • The getConstraintBounds() method allows access to the lower and upper bounds of all constraints in a (nonlinear) model.
      • Update for breaking changes in MathProgBase

      Version 0.10.3 (November 20, 2015)

      • Fix a rare error when parsing quadratic expressions
      • Fix Variable() constructor with default arguments
      • Detect unrecognized keywords in solve()

      Version 0.10.2 (September 28, 2015)

      • Fix for deprecation warnings

      Version 0.10.1 (September 3, 2015)

      • Fixes for ambiguity warnings.
      • Fix for breaking change in precompilation syntax in Julia 0.4-pre

      Version 0.10.0 (August 31, 2015)

      • Support (on Julia 0.4 and later) for conditions in indexing @defVar and @addConstraint constructs, for example, @defVar(m, x[i=1:5,j=1:5; i+j >= 3])
      • Support for vectorized operations on Variables and expressions. See the documentation for details.
      • New getVar() method to access variables in a model by name
      • Support for semidefinite programming.
      • Dual solutions are now available for general nonlinear problems. You may call getDual on a reference object for a nonlinear constraint, and getDual on a variable object for Lagrange multipliers from active bounds.
      • Introduce warnings for two common performance traps: too many calls to getValue() on a collection of variables and use of the + operator in a loop to sum expressions.
      • Second-order cone constraints can be written directly with the norm() and norm2{} syntax.
      • Implement MathProgBase interface for querying Hessian-vector products.
      • Iteration over JuMPContainers is deprecated; instead, use the keys and values functions, and zip(keys(d),values(d)) for the old behavior.
      • @defVar returns Array{Variable,N} when each of N index sets are of the form 1:nᵢ.
      • Module precompilation: on Julia 0.4 and later, using JuMP is now much faster.

      Version 0.9.3 (August 11, 2015)

      • Fixes for FactCheck testing on julia v0.4.

      Version 0.9.2 (June 27, 2015)

      • Fix bug in @addConstraints.

      Version 0.9.1 (April 25, 2015)

      • Fix for Julia 0.4-dev.
      • Small infrastructure improvements for extensions.

      Version 0.9.0 (April 18, 2015)

      • Comparison operators for constructing constraints (for example, 2x >= 1) have been deprecated. Instead, construct the constraints explicitly in the @addConstraint macro to add them to the model, or in the @LinearConstraint macro to create a stand-alone linear constraint instance.
      • getValue() method implemented to compute the value of a nonlinear subexpression
      • JuMP is now released under the Mozilla Public License version 2.0 (was previously LGPL). MPL is a copyleft license which is less restrictive than LGPL, especially for embedding JuMP within other applications.
      • A number of performance improvements in ReverseDiffSparse for computing derivatives.
      • MathProgBase.getsolvetime(m) now returns the solution time reported by the solver, if available. (Thanks @odow, Oscar Dowson)
      • Formatting fix for LP format output. (Thanks @sbebo, Leonardo Taccari).

      Version 0.8.0 (February 17, 2015)

      • Nonlinear subexpressions now supported with the @defNLExpr macro.
      • SCS supported for solving second-order conic problems.
      • setXXXCallback family deprecated in favor of addXXXCallback.
      • Multiple callbacks of the same type can be registered.
      • Added support for informational callbacks via addInfoCallback.
      • A CallbackAbort exception can be thrown from callback to safely exit optimization.

      Version 0.7.4 (February 4, 2015)

      • Reduced costs and linear constraint duals are now accessible when quadratic constraints are present.
      • Two-sided nonlinear constraints are supported.
      • Methods for accessing the number of variables and constraints in a model are renamed.
      • New default procedure for setting initial values in nonlinear optimization: project zero onto the variable bounds.
      • Small bug fixes.

      Version 0.7.3 (January 14, 2015)

      • Fix a method ambiguity conflict with Compose.jl (cosmetic fix)

      Version 0.7.2 (January 9, 2015)

      • Fix a bug in sum(::JuMPDict)
      • Added the setCategory function to change a variables category (for example, continuous or binary)

      after construction, and getCategory to retrieve the variable category.

      Version 0.7.1 (January 2, 2015)

      • Fix a bug in parsing linear expressions in macros. Affects only Julia 0.4 and later.

      Version 0.7.0 (December 29, 2014)

      Linear/quadratic/conic programming

      • Breaking change: The syntax for column-wise model generation has been changed to use keyword arguments in @defVar.
      • On Julia 0.4 and later, variables and coefficients may be multiplied in any order within macros. That is, variable*coefficient is now valid syntax.
      • ECOS supported for solving second-order conic problems.

      Nonlinear programming

      • Support for skipping model generation when solving a sequence of nonlinear models with changing data.
      • Fix a memory leak when solving a sequence of nonlinear models.
      • The @addNLConstraint macro now supports the three-argument version to define sets of nonlinear constraints.
      • KNITRO supported as a nonlinear solver.
      • Speed improvements for model generation.
      • The @addNLConstraints macro supports adding multiple (groups of) constraints at once. Syntax is similar to @addConstraints.
      • Discrete variables allowed in nonlinear problems for solvers which support them (currently only KNITRO).

      General

      • Starting values for variables may now be specified with @defVar(m, x, start=value).
      • The setSolver function allows users to change the solver subsequent to model creation.
      • Support for "fixed" variables via the @defVar(m, x == 1) syntax.
      • Unit tests rewritten to use FactCheck.jl, improved testing across solvers.

      Version 0.6.3 (October 19, 2014)

      • Fix a bug in multiplying two AffExpr objects.

      Version 0.6.2 (October 11, 2014)

      • Further improvements and bug fixes for printing.
      • Fixed a bug in @defExpr.
      • Support for accessing expression graphs through the MathProgBase NLP interface.

      Version 0.6.1 (September 19, 2014)

      • Improvements and bug fixes for printing.

      Version 0.6.0 (September 9, 2014)

      • Julia 0.3.0 is the minimum required version for this release.
      • buildInternalModel(m::Model) added to build solver-level model in memory without optimizing.
      • Deprecate load_model_only keyword argument to solve.
      • Add groups of constraints with @addConstraints macro.
      • Unicode operators now supported, including for sum, for prod, and /
      • Quadratic constraints supported in @addConstraint macro.
      • Quadratic objectives supported in @setObjective macro.
      • MathProgBase solver-independent interface replaces Ipopt-specific interface for nonlinear problems
        • Breaking change: IpoptOptions no longer supported to specify solver options, use m = Model(solver=IpoptSolver(options...)) instead.
      • New solver interfaces: ECOS, NLopt, and nonlinear support for MOSEK
      • New option to control whether the lazy constraint callback is executed at each node in the B&B tree or just when feasible solutions are found
      • Add support for semicontinuous and semi-integer variables for those solvers that support them.
      • Add support for index dependencies (for example, triangular indexing) in @defVar, @addConstraint, and @defExpr (for example, @defVar(m, x[i=1:10,j=i:10])).
        • This required some changes to the internal structure of JuMP containers, which may break code that explicitly stored JuMPDict objects.

      Version 0.5.8 (September 24, 2014)

      • Fix a bug with specifying solvers (affects Julia 0.2 only)

      Version 0.5.7 (September 5, 2014)

      • Fix a bug in printing models

      Version 0.5.6 (September 2, 2014)

      • Add support for semicontinuous and semi-integer variables for those solvers that support them.
        • Breaking change: Syntax for Variable() constructor has changed (use of this interface remains discouraged)
      • Update for breaking changes in MathProgBase

      Version 0.5.5 (July 6, 2014)

      • Fix bug with problem modification: adding variables that did not appear in existing constraints or objective.

      Version 0.5.4 (June 19, 2014)

      • Update for breaking change in MathProgBase which reduces loading times for using JuMP
      • Fix error when MIPs not solved to optimality

      Version 0.5.3 (May 21, 2014)

      • Update for breaking change in ReverseDiffSparse

      Version 0.5.2 (May 9, 2014)

      • Fix compatibility with Julia 0.3 prerelease

      Version 0.5.1 (May 5, 2014)

      • Fix a bug in coefficient handling inside lazy constraints and user cuts

      Version 0.5.0 (May 2, 2014)

      • Support for nonlinear optimization with exact, sparse second-order derivatives automatically computed. Ipopt is currently the only solver supported.
      • getValue for AffExpr and QuadExpr
      • Breaking change: getSolverModel replaced by getInternalModel, which returns the internal MathProgBase-level model
      • Groups of constraints can be specified with @addConstraint (see documentation for details). This is not a breaking change.
      • dot(::JuMPDict{Variable},::JuMPDict{Variable}) now returns the corresponding quadratic expression.

      Version 0.4.1 (March 24, 2014)

      • Fix bug where change in objective sense was ignored when re-solving a model.
      • Fix issue with handling zero coefficients in AffExpr.

      Version 0.4.0 (March 10, 2014)

      • Support for SOS1 and SOS2 constraints.
      • Solver-independent callback for user heuristics.
      • dot and sum implemented for JuMPDict objects. Now you can say @addConstraint(m, dot(a,x) <= b).
      • Developers: support for extensions to JuMP. See definition of Model in src/JuMP.jl for more details.
      • Option to construct the low-level model before optimizing.

      Version 0.3.2 (February 17, 2014)

      • Improved model printing
        • Preliminary support for IJulia output

      Version 0.3.1 (January 30, 2014)

      • Documentation updates
      • Support for MOSEK
      • CPLEXLink renamed to CPLEX

      Version 0.3.0 (January 21, 2014)

      • Unbounded/infeasibility rays: getValue() will return the corresponding components of an unbounded ray when a model is unbounded, if supported by the selected solver. getDual() will return an infeasibility ray (Farkas proof) if a model is infeasible and the selected solver supports this feature.
      • Solver-independent callbacks for user generated cuts.
      • Use new interface for solver-independent QCQP.
      • setlazycallback renamed to setLazyCallback for consistency.

      Version 0.2.0 (December 15, 2013)

      Breaking

      • Objective sense is specified in setObjective instead of in the Model constructor.
      • lpsolver and mipsolver merged into single solver option.

      Added

      • Problem modification with efficient LP restarts and MIP warm-starts.
      • Relatedly, column-wise modeling now supported.
      • Solver-independent callbacks supported. Currently we support only a "lazy constraint" callback, which works with Gurobi, CPLEX, and GLPK. More callbacks coming soon.

      Version 0.1.2 (November 16, 2013)

      • Bug fixes for printing, improved error messages.
      • Allow AffExpr to be used in macros; for example, ex = y + z; @addConstraint(m, x + 2*ex <= 3)

      Version 0.1.1 (October 23, 2013)

      • Update for solver specification API changes in MathProgBase.

      Version 0.1.0 (October 3, 2013)

      • Initial public release.
      +end
    • The lowerbound, upperbound, and basename keyword arguments to the @variable macro have been renamed to lower_bound, upper_bound, and base_name, for consistency with JuMP's new style recommendations.

    • We rely on broadcasting syntax to apply accessors to collections of variables, for example, value.(x) instead of getvalue(x) for collections. (Use value(x) when x is a scalar object.)

    Added

    • Splatting (like f(x...)) is recognized in restricted settings in nonlinear expressions.

    • Support for deleting constraints and variables.

    • The documentation has been completely rewritten using docstrings and Documenter.

    • Support for modeling mixed conic and quadratic models (for example, conic models with quadratic objectives and bi-linear matrix inequalities).

    • Significantly improved support for modeling new types of constraints and for extending JuMP's macros.

    • Support for providing dual warm starts.

    • Improved support for accessing solver-specific attributes (for example, the irreducible inconsistent subsystem).

    • Explicit control of whether symmetry-enforcing constraints are added to PSD constraints.

    • Support for modeling exponential cones.

    • Significant improvements in internal code quality and testing.

    • Style and naming guidelines.

    • Direct mode and manual mode provide explicit control over when copies of a model are stored or regenerated. See the corresponding documentation.

    Regressions

    There are known regressions from JuMP 0.18 that will be addressed in a future release (0.19.x or later):

    • Performance regressions in model generation (issue). Please file an issue anyway if you notice a significant performance regression. We have plans to address a number of performance issues, but we might not be aware of all of them.

    • Fast incremental NLP solves are not yet reimplemented (issue).

    • We do not yet have an implementation of solver-specific callbacks.

    • The column generation syntax in @variable has been removed (that is, the objective, coefficients, and inconstraints keyword arguments). Support for column generation will be re-introduced in a future release.

    • The ability to solve the continuous relaxation (that is, via solve(model; relaxation = true)) is not yet reimplemented (issue).

    Version 0.18.5 (December 1, 2018)

    • Support views in some derivative evaluation functions.
    • Improved compatibility with PackageCompiler.

    Version 0.18.4 (October 8, 2018)

    • Fix a bug in model printing on Julia 0.7 and 1.0.

    Version 0.18.3 (October 1, 2018)

    • Add support for Julia v1.0 (Thanks @ExpandingMan)
    • Fix matrix expressions with quadratic functions (#1508)

    Version 0.18.2 (June 10, 2018)

    • Fix a bug in second-order derivatives when expressions are present (#1319)
    • Fix a bug in @constraintref (#1330)

    Version 0.18.1 (April 9, 2018)

    • Fix for nested tuple destructuring (#1193)
    • Preserve internal model when relaxation=true (#1209)
    • Minor bug fixes and updates for example

    Version 0.18.0 (July 27, 2017)

    • Drop support for Julia 0.5.
    • Update for ForwardDiff 0.5.
    • Minor bug fixes.

    Version 0.17.1 (June 9, 2017)

    • Use of constructconstraint! in @SDconstraint.
    • Minor bug fixes.

    Version 0.17.0 (May 27, 2017)

    • Breaking change: Mixing quadratic and conic constraints is no longer supported.
    • Breaking change: The getvariable and getconstraint functions are replaced by indexing on the corresponding symbol. For instance, to access the variable with name x, one should now write m[:x] instead of getvariable(m, :x). As a consequence, creating a variable and constraint with the same name now triggers a warning, and accessing one of them afterwards throws an error. This change is breaking only in the latter case.
    • Addition of the getobjectivebound function that mirrors the functionality of the MathProgBase getobjbound function except that it takes into account transformations performed by JuMP.
    • Minor bug fixes.

    The following changes are primarily of interest to developers of JuMP extensions:

    • The new syntax @constraint(model, expr in Cone) creates the constraint ensuring that expr is inside Cone. The Cone argument is passed to constructconstraint! which enables the call to the dispatched to an extension.
    • The @variable macro now calls constructvariable! instead of directly calling the Variable constructor. Extra arguments and keyword arguments passed to @variable are passed to constructvariable! which enables the call to be dispatched to an extension.
    • Refactor the internal function conicdata (used build the MathProgBase conic model) into smaller sub-functions to make these parts reusable by extensions.

    Version 0.16.2 (March 28, 2017)

    • Minor bug fixes and printing tweaks
    • Address deprecation warnings for Julia 0.6

    Version 0.16.1 (March 7, 2017)

    • Better support for AbstractArray in JuMP (Thanks @tkoolen)
    • Minor bug fixes

    Version 0.16.0 (February 23, 2017)

    • Breaking change: JuMP no longer has a mechanism for selecting solvers by default (the previous mechanism was flawed and incompatible with Julia 0.6). Not specifying a solver before calling solve() will result in an error.
    • Breaking change: User-defined functions are no longer global. The first argument to JuMP.register is now a JuMP Model object within whose scope the function will be registered. Calling JuMP.register without a Model now produces an error.
    • Breaking change: Use the new JuMP.fix method to fix a variable to a value or to update the value to which a variable is fixed. Calling setvalue on a fixed variable now results in an error in order to avoid silent behavior changes. (Thanks @joaquimg)
    • Nonlinear expressions now print out similarly to linear/quadratic expressions (useful for debugging!)
    • New category keyword to @variable. Used for specifying categories of anonymous variables.
    • Compatibility with Julia 0.6-dev.
    • Minor fixes and improvements (Thanks @cossio, @ccoffrin, @blegat)

    Version 0.15.1 (January 31, 2017)

    • Bugfix for @LinearConstraints and friends

    Version 0.15.0 (December 22, 2016)

    • Julia 0.5.0 is the minimum required version for this release.
    • Document support for BARON solver
    • Enable info callbacks in more states than before, for example, for recording solutions. New when argument to addinfocallback (#814, thanks @yeesian)
    • Improved support for anonymous variables. This includes new warnings for potentially confusing use of the traditional non-anonymous syntax:
      • When multiple variables in a model are given the same name
      • When non-symbols are used as names, for example, @variable(m, x[1][1:N])
    • Improvements in iterating over JuMP containers (#836, thanks @IssamT)
    • Support for writing variable names in .lp file output (Thanks @leethargo)
    • Support for querying duals to SDP problems (Thanks @blegat)
    • The comprehension syntax with curly braces sum{}, prod{}, and norm2{} has been deprecated in favor of Julia's native comprehension syntax sum(), prod() and norm() as previously announced. (For early adopters of the new syntax, norm2() was renamed to norm() without deprecation.)
    • Unit tests rewritten to use Base.Test instead of FactCheck
    • Improved support for operations with matrices of JuMP types (Thanks @ExpandingMan)
    • The syntax to halt a solver from inside a callback has changed from throw(CallbackAbort()) to return JuMP.StopTheSolver
    • Minor bug fixes

    Version 0.14.2 (December 12, 2016)

    • Allow singleton anonymous variables (includes bugfix)

    Version 0.14.1 (September 12, 2016)

    • More consistent handling of states in informational callbacks, includes a new when parameter to addinfocallback for specifying in which state an informational callback should be called.

    Version 0.14.0 (August 7, 2016)

    • Compatibility with Julia 0.5 and ForwardDiff 0.2
    • Support for "anonymous" variables, constraints, expressions, and parameters, for example, x = @variable(m, [1:N]) instead of @variable(m, x[1:N])
    • Support for retrieving constraints from a model by name via getconstraint
    • @NLconstraint now returns constraint references (as expected).
    • Support for vectorized expressions within lazy constraints
    • On Julia 0.5, parse new comprehension syntax sum(x[i] for i in 1:N if isodd(i)) instead of sum{ x[i], i in 1:N; isodd(i) }. The old syntax with curly braces will be deprecated in JuMP 0.15.
    • Now possible to provide nonlinear expressions as "raw" Julia Expr objects instead of using JuMP's nonlinear macros. This input format is useful for programmatically generated expressions.
    • s/Mathematical Programming/Mathematical Optimization/
    • Support for local cuts (Thanks to @madanim, Mehdi Madani)
    • Document Xpress interface developed by @joaquimg, Joaquim Dias Garcia
    • Minor bug and deprecation fixes (Thanks @odow, @jrevels)

    Version 0.13.2 (May 16, 2016)

    • Compatibility update for MathProgBase

    Version 0.13.1 (May 3, 2016)

    • Fix broken deprecation for registerNLfunction.

    Version 0.13.0 (April 29, 2016)

    • Most exported methods and macros have been renamed to avoid camelCase. See the list of changes here. There is a 1-1 mapping from the old names to the new, and it is safe to simply replace the names to update existing models.
    • Specify variable lower/upper bounds in @variable using the lowerbound and upperbound keyword arguments.
    • Change name printed for variable using the basename keyword argument to @variable.
    • New @variables macro allows multi-line declaration of groups of variables.
    • A number of solver methods previously available only through MathProgBase are now exposed directly in JuMP. The fix was recorded live.
    • Compatibility fixes with Julia 0.5.
    • The "end" indexing syntax is no longer supported within JuMPArrays which do not use 1-based indexing until upstream issues are resolved, see here.

    Version 0.12.2 (March 9, 2016)

    • Small fixes for nonlinear optimization

    Version 0.12.1 (March 1, 2016)

    • Fix a regression in slicing for JuMPArrays (when not using 1-based indexing)

    Version 0.12.0 (February 27, 2016)

    • The automatic differentiation functionality has been completely rewritten with a number of user-facing changes:
      • @defExpr and @defNLExpr now take the model as the first argument. The previous one-argument version of @defExpr is deprecated; all expressions should be named. For example, replace @defExpr(2x+y) with @defExpr(jump_model, my_expr, 2x+y).
      • JuMP no longer uses Julia's variable binding rules for efficiently re-solving a sequence of nonlinear models. Instead, we have introduced nonlinear parameters. This is a breaking change, so we have added a warning message when we detect models that may depend on the old behavior.
      • Support for user-defined functions integrated within nonlinear JuMP expressions.
    • Replaced iteration over AffExpr with Number-like scalar iteration; previous iteration behavior is now available via linearterms(::AffExpr).
    • Stopping the solver via throw(CallbackAbort()) from a callback no longer triggers an exception. Instead, solve() returns UserLimit status.
    • getDual() now works for conic problems (Thanks @emreyamangil.)

    Version 0.11.3 (February 4, 2016)

    • Bug-fix for problems with quadratic objectives and semidefinite constraints

    Version 0.11.2 (January 14, 2016)

    • Compatibility update for Mosek

    Version 0.11.1 (December 1, 2015)

    • Remove usage of @compat in tests.
    • Fix updating quadratic objectives for nonlinear models.

    Version 0.11.0 (November 30, 2015)

    • Julia 0.4.0 is the minimum required version for this release.
    • Fix for scoping semantics of index variables in sum{}. Index variables no longer leak into the surrounding scope.
    • Addition of the solve(m::Model, relaxation=true) keyword argument to solve the standard continuous relaxation of model m
    • The getConstraintBounds() method allows access to the lower and upper bounds of all constraints in a (nonlinear) model.
    • Update for breaking changes in MathProgBase

    Version 0.10.3 (November 20, 2015)

    • Fix a rare error when parsing quadratic expressions
    • Fix Variable() constructor with default arguments
    • Detect unrecognized keywords in solve()

    Version 0.10.2 (September 28, 2015)

    • Fix for deprecation warnings

    Version 0.10.1 (September 3, 2015)

    • Fixes for ambiguity warnings.
    • Fix for breaking change in precompilation syntax in Julia 0.4-pre

    Version 0.10.0 (August 31, 2015)

    • Support (on Julia 0.4 and later) for conditions in indexing @defVar and @addConstraint constructs, for example, @defVar(m, x[i=1:5,j=1:5; i+j >= 3])
    • Support for vectorized operations on Variables and expressions. See the documentation for details.
    • New getVar() method to access variables in a model by name
    • Support for semidefinite programming.
    • Dual solutions are now available for general nonlinear problems. You may call getDual on a reference object for a nonlinear constraint, and getDual on a variable object for Lagrange multipliers from active bounds.
    • Introduce warnings for two common performance traps: too many calls to getValue() on a collection of variables and use of the + operator in a loop to sum expressions.
    • Second-order cone constraints can be written directly with the norm() and norm2{} syntax.
    • Implement MathProgBase interface for querying Hessian-vector products.
    • Iteration over JuMPContainers is deprecated; instead, use the keys and values functions, and zip(keys(d),values(d)) for the old behavior.
    • @defVar returns Array{Variable,N} when each of N index sets are of the form 1:nᵢ.
    • Module precompilation: on Julia 0.4 and later, using JuMP is now much faster.

    Version 0.9.3 (August 11, 2015)

    • Fixes for FactCheck testing on julia v0.4.

    Version 0.9.2 (June 27, 2015)

    • Fix bug in @addConstraints.

    Version 0.9.1 (April 25, 2015)

    • Fix for Julia 0.4-dev.
    • Small infrastructure improvements for extensions.

    Version 0.9.0 (April 18, 2015)

    • Comparison operators for constructing constraints (for example, 2x >= 1) have been deprecated. Instead, construct the constraints explicitly in the @addConstraint macro to add them to the model, or in the @LinearConstraint macro to create a stand-alone linear constraint instance.
    • getValue() method implemented to compute the value of a nonlinear subexpression
    • JuMP is now released under the Mozilla Public License version 2.0 (was previously LGPL). MPL is a copyleft license which is less restrictive than LGPL, especially for embedding JuMP within other applications.
    • A number of performance improvements in ReverseDiffSparse for computing derivatives.
    • MathProgBase.getsolvetime(m) now returns the solution time reported by the solver, if available. (Thanks @odow, Oscar Dowson)
    • Formatting fix for LP format output. (Thanks @sbebo, Leonardo Taccari).

    Version 0.8.0 (February 17, 2015)

    • Nonlinear subexpressions now supported with the @defNLExpr macro.
    • SCS supported for solving second-order conic problems.
    • setXXXCallback family deprecated in favor of addXXXCallback.
    • Multiple callbacks of the same type can be registered.
    • Added support for informational callbacks via addInfoCallback.
    • A CallbackAbort exception can be thrown from callback to safely exit optimization.

    Version 0.7.4 (February 4, 2015)

    • Reduced costs and linear constraint duals are now accessible when quadratic constraints are present.
    • Two-sided nonlinear constraints are supported.
    • Methods for accessing the number of variables and constraints in a model are renamed.
    • New default procedure for setting initial values in nonlinear optimization: project zero onto the variable bounds.
    • Small bug fixes.

    Version 0.7.3 (January 14, 2015)

    • Fix a method ambiguity conflict with Compose.jl (cosmetic fix)

    Version 0.7.2 (January 9, 2015)

    • Fix a bug in sum(::JuMPDict)
    • Added the setCategory function to change a variables category (for example, continuous or binary)

    after construction, and getCategory to retrieve the variable category.

    Version 0.7.1 (January 2, 2015)

    • Fix a bug in parsing linear expressions in macros. Affects only Julia 0.4 and later.

    Version 0.7.0 (December 29, 2014)

    Linear/quadratic/conic programming

    • Breaking change: The syntax for column-wise model generation has been changed to use keyword arguments in @defVar.
    • On Julia 0.4 and later, variables and coefficients may be multiplied in any order within macros. That is, variable*coefficient is now valid syntax.
    • ECOS supported for solving second-order conic problems.

    Nonlinear programming

    • Support for skipping model generation when solving a sequence of nonlinear models with changing data.
    • Fix a memory leak when solving a sequence of nonlinear models.
    • The @addNLConstraint macro now supports the three-argument version to define sets of nonlinear constraints.
    • KNITRO supported as a nonlinear solver.
    • Speed improvements for model generation.
    • The @addNLConstraints macro supports adding multiple (groups of) constraints at once. Syntax is similar to @addConstraints.
    • Discrete variables allowed in nonlinear problems for solvers which support them (currently only KNITRO).

    General

    • Starting values for variables may now be specified with @defVar(m, x, start=value).
    • The setSolver function allows users to change the solver subsequent to model creation.
    • Support for "fixed" variables via the @defVar(m, x == 1) syntax.
    • Unit tests rewritten to use FactCheck.jl, improved testing across solvers.

    Version 0.6.3 (October 19, 2014)

    • Fix a bug in multiplying two AffExpr objects.

    Version 0.6.2 (October 11, 2014)

    • Further improvements and bug fixes for printing.
    • Fixed a bug in @defExpr.
    • Support for accessing expression graphs through the MathProgBase NLP interface.

    Version 0.6.1 (September 19, 2014)

    • Improvements and bug fixes for printing.

    Version 0.6.0 (September 9, 2014)

    • Julia 0.3.0 is the minimum required version for this release.
    • buildInternalModel(m::Model) added to build solver-level model in memory without optimizing.
    • Deprecate load_model_only keyword argument to solve.
    • Add groups of constraints with @addConstraints macro.
    • Unicode operators now supported, including for sum, for prod, and /
    • Quadratic constraints supported in @addConstraint macro.
    • Quadratic objectives supported in @setObjective macro.
    • MathProgBase solver-independent interface replaces Ipopt-specific interface for nonlinear problems
      • Breaking change: IpoptOptions no longer supported to specify solver options, use m = Model(solver=IpoptSolver(options...)) instead.
    • New solver interfaces: ECOS, NLopt, and nonlinear support for MOSEK
    • New option to control whether the lazy constraint callback is executed at each node in the B&B tree or just when feasible solutions are found
    • Add support for semicontinuous and semi-integer variables for those solvers that support them.
    • Add support for index dependencies (for example, triangular indexing) in @defVar, @addConstraint, and @defExpr (for example, @defVar(m, x[i=1:10,j=i:10])).
      • This required some changes to the internal structure of JuMP containers, which may break code that explicitly stored JuMPDict objects.

    Version 0.5.8 (September 24, 2014)

    • Fix a bug with specifying solvers (affects Julia 0.2 only)

    Version 0.5.7 (September 5, 2014)

    • Fix a bug in printing models

    Version 0.5.6 (September 2, 2014)

    • Add support for semicontinuous and semi-integer variables for those solvers that support them.
      • Breaking change: Syntax for Variable() constructor has changed (use of this interface remains discouraged)
    • Update for breaking changes in MathProgBase

    Version 0.5.5 (July 6, 2014)

    • Fix bug with problem modification: adding variables that did not appear in existing constraints or objective.

    Version 0.5.4 (June 19, 2014)

    • Update for breaking change in MathProgBase which reduces loading times for using JuMP
    • Fix error when MIPs not solved to optimality

    Version 0.5.3 (May 21, 2014)

    • Update for breaking change in ReverseDiffSparse

    Version 0.5.2 (May 9, 2014)

    • Fix compatibility with Julia 0.3 prerelease

    Version 0.5.1 (May 5, 2014)

    • Fix a bug in coefficient handling inside lazy constraints and user cuts

    Version 0.5.0 (May 2, 2014)

    • Support for nonlinear optimization with exact, sparse second-order derivatives automatically computed. Ipopt is currently the only solver supported.
    • getValue for AffExpr and QuadExpr
    • Breaking change: getSolverModel replaced by getInternalModel, which returns the internal MathProgBase-level model
    • Groups of constraints can be specified with @addConstraint (see documentation for details). This is not a breaking change.
    • dot(::JuMPDict{Variable},::JuMPDict{Variable}) now returns the corresponding quadratic expression.

    Version 0.4.1 (March 24, 2014)

    • Fix bug where change in objective sense was ignored when re-solving a model.
    • Fix issue with handling zero coefficients in AffExpr.

    Version 0.4.0 (March 10, 2014)

    • Support for SOS1 and SOS2 constraints.
    • Solver-independent callback for user heuristics.
    • dot and sum implemented for JuMPDict objects. Now you can say @addConstraint(m, dot(a,x) <= b).
    • Developers: support for extensions to JuMP. See definition of Model in src/JuMP.jl for more details.
    • Option to construct the low-level model before optimizing.

    Version 0.3.2 (February 17, 2014)

    • Improved model printing
      • Preliminary support for IJulia output

    Version 0.3.1 (January 30, 2014)

    • Documentation updates
    • Support for MOSEK
    • CPLEXLink renamed to CPLEX

    Version 0.3.0 (January 21, 2014)

    • Unbounded/infeasibility rays: getValue() will return the corresponding components of an unbounded ray when a model is unbounded, if supported by the selected solver. getDual() will return an infeasibility ray (Farkas proof) if a model is infeasible and the selected solver supports this feature.
    • Solver-independent callbacks for user generated cuts.
    • Use new interface for solver-independent QCQP.
    • setlazycallback renamed to setLazyCallback for consistency.

    Version 0.2.0 (December 15, 2013)

    Breaking

    • Objective sense is specified in setObjective instead of in the Model constructor.
    • lpsolver and mipsolver merged into single solver option.

    Added

    • Problem modification with efficient LP restarts and MIP warm-starts.
    • Relatedly, column-wise modeling now supported.
    • Solver-independent callbacks supported. Currently we support only a "lazy constraint" callback, which works with Gurobi, CPLEX, and GLPK. More callbacks coming soon.

    Version 0.1.2 (November 16, 2013)

    • Bug fixes for printing, improved error messages.
    • Allow AffExpr to be used in macros; for example, ex = y + z; @addConstraint(m, x + 2*ex <= 3)

    Version 0.1.1 (October 23, 2013)

    • Update for solver specification API changes in MathProgBase.

    Version 0.1.0 (October 3, 2013)

    • Initial public release.
    diff --git a/dev/developers/checklists/index.html b/dev/developers/checklists/index.html index 5e53b1103c0..c23e387fbda 100644 --- a/dev/developers/checklists/index.html +++ b/dev/developers/checklists/index.html @@ -69,4 +69,4 @@ - [ ] Implement `vectorize(data, ::NewShape)::Vector` - [ ] Implement `reshape_vector(vector, ::NewShape)` - [ ] Implement `dual_shape`, or verify that the shape is self-dual - - [ ] Add the tests from https://github.com/jump-dev/JuMP.jl/pull/3816 + - [ ] Add the tests from https://github.com/jump-dev/JuMP.jl/pull/3816 diff --git a/dev/developers/contributing/index.html b/dev/developers/contributing/index.html index 69bed178a63..5cc912ca570 100644 --- a/dev/developers/contributing/index.html +++ b/dev/developers/contributing/index.html @@ -25,4 +25,4 @@ $ git checkout master -$ git pull
    Note

    If you have suggestions to improve this guide, please make a pull request. It's particularly helpful if you do this after your first pull request because you'll know all the parts that could be explained better.

    +$ git pull
    Note

    If you have suggestions to improve this guide, please make a pull request. It's particularly helpful if you do this after your first pull request because you'll know all the parts that could be explained better.

    diff --git a/dev/developers/custom_solver_binaries/index.html b/dev/developers/custom_solver_binaries/index.html index 6b8386e700f..22056decc87 100644 --- a/dev/developers/custom_solver_binaries/index.html +++ b/dev/developers/custom_solver_binaries/index.html @@ -90,4 +90,4 @@ libCbc_path = "/usr/local/Cellar/cbc/2.10.5/lib/libCbc.3.10.5" libOsiCbc_path = "/usr/local/Cellar/cbc/2.10.5/lib/libOsiCbc.3.10.5" libcbcsolver_path = "/usr/local/Cellar/cbc/2.10.5/lib/libCbcSolver.3.10.5"
    Info

    Note that capitalization matters, so libcbcsolver_path corresponds to libCbcSolver.3.10.5.

    Override entire artifact

    To use the homebrew install as our custom binary we add the following to ~/.julia/artifacts/Overrides.toml:

    # Override for Cbc_jll
    -e481bc81db5e229ba1f52b2b4bd57484204b1b06 = "/usr/local/Cellar/cbc/2.10.5"
    +e481bc81db5e229ba1f52b2b4bd57484204b1b06 = "/usr/local/Cellar/cbc/2.10.5" diff --git a/dev/developers/extensions/index.html b/dev/developers/extensions/index.html index 121c6314db5..5c2a2f19d38 100644 --- a/dev/developers/extensions/index.html +++ b/dev/developers/extensions/index.html @@ -310,4 +310,4 @@ _function_barrier(names, model, F, S) end return names -end
    Note

    It is important to explicitly type the F and S arguments. If you leave them untyped, for example, function _function_barrier(names, model, F, S), Julia will not specialize the function calls and performance will not be improved.

    +end
    Note

    It is important to explicitly type the F and S arguments. If you leave them untyped, for example, function _function_barrier(names, model, F, S), Julia will not specialize the function calls and performance will not be improved.

    diff --git a/dev/developers/roadmap/index.html b/dev/developers/roadmap/index.html index 9df6751abb1..f7ea697217b 100644 --- a/dev/developers/roadmap/index.html +++ b/dev/developers/roadmap/index.html @@ -3,4 +3,4 @@ function gtag(){dataLayer.push(arguments);} gtag('js', new Date()); gtag('config', 'G-0RZ8X3D3D0', {'page_path': location.pathname + location.search + location.hash}); -

    Development roadmap

    The JuMP developers have compiled this roadmap document to share their plans and goals with the JuMP community. Contributions to roadmap issues are especially invited.

    Most of these issues will require changes to both JuMP and MathOptInterface, and are non-trivial in their implementation. They are in no particular order, but represent broad themes that we see as areas in which JuMP could be improved.

    • Support nonlinear expressions with vector-valued inputs and outputs. There are a few related components:
      • Representing terms like log(det(X)) as necessary for Convex.jl
      • Automatic differentiation of terms with vector inputs and outputs
      • User-defined functions with vector–as opposed to scalar–inputs, which is particularly useful for optimal control problems
      • User-defined functions with vector outputs, avoiding the need for User-defined operators with vector outputs
    • Add support for modeling with SI units. The UnitJuMP.jl extension is a good proof of concept for what this would look like. We want to make units a first-class concept in JuMP. See #1350 for more details.

    Completed

    +

    Development roadmap

    The JuMP developers have compiled this roadmap document to share their plans and goals with the JuMP community. Contributions to roadmap issues are especially invited.

    Most of these issues will require changes to both JuMP and MathOptInterface, and are non-trivial in their implementation. They are in no particular order, but represent broad themes that we see as areas in which JuMP could be improved.

    • Support nonlinear expressions with vector-valued inputs and outputs. There are a few related components:
      • Representing terms like log(det(X)) as necessary for Convex.jl
      • Automatic differentiation of terms with vector inputs and outputs
      • User-defined functions with vector–as opposed to scalar–inputs, which is particularly useful for optimal control problems
      • User-defined functions with vector outputs, avoiding the need for User-defined operators with vector outputs
    • Add support for modeling with SI units. The UnitJuMP.jl extension is a good proof of concept for what this would look like. We want to make units a first-class concept in JuMP. See #1350 for more details.

    Completed

    diff --git a/dev/developers/style/index.html b/dev/developers/style/index.html index 2a3b54bbbc5..fd99d8f2189 100644 --- a/dev/developers/style/index.html +++ b/dev/developers/style/index.html @@ -182,4 +182,4 @@ end # module TestPkg -TestPkg.runtests()

    Break the tests into multiple files, with one module per file, so that subsets of the codebase can be tested by calling include with the relevant file.

    +TestPkg.runtests()

    Break the tests into multiple files, with one module per file, so that subsets of the codebase can be tested by calling include with the relevant file.

    diff --git a/dev/extensions/DimensionalData/index.html b/dev/extensions/DimensionalData/index.html index dcdda2b419c..2974df6ff52 100644 --- a/dev/extensions/DimensionalData/index.html +++ b/dev/extensions/DimensionalData/index.html @@ -48,4 +48,4 @@ ↓ j Categorical{String} ["a", "b"] ForwardOrdered └──────────────────────────────────────────────────────────────────────────────┘ "a" x[2,a] + x[3,a] + x[4,a] ≤ 1 - "b" x[2,b] + x[3,b] + x[4,b] ≤ 1

    Documentation

    See the DimensionalData.jl documentation for more details on the syntax and features of DimensionalData.DimArray.

    + "b" x[2,b] + x[3,b] + x[4,b] ≤ 1

    Documentation

    See the DimensionalData.jl documentation for more details on the syntax and features of DimensionalData.DimArray.

    diff --git a/dev/extensions/introduction/index.html b/dev/extensions/introduction/index.html index 711557b16f6..e85e179994c 100644 --- a/dev/extensions/introduction/index.html +++ b/dev/extensions/introduction/index.html @@ -3,4 +3,4 @@ function gtag(){dataLayer.push(arguments);} gtag('js', new Date()); gtag('config', 'G-0RZ8X3D3D0', {'page_path': location.pathname + location.search + location.hash}); -

    Introduction

    This section of the documentation contains brief documentation for some popular JuMP extensions. The list of extensions is not exhaustive, but instead is intended to help you discover popular JuMP extensions, and to give you an overview of the types of extensions that are possible to write with JuMP.

    Affiliation

    Packages beginning with jump-dev/ are developed and maintained by the JuMP developers.

    Packages that do not begin with jump-dev/ are developed independently. The developers of these packages requested or consented to the inclusion of their README contents in the JuMP documentation for the benefit of users.

    Adding new extensions

    Written an extension? Add it to this section of the JuMP documentation by making a pull request to the docs/packages.toml file.

    Weak dependencies

    Some extensions listed in this section are implemented using the weak dependency feature added to Julia in v1.9. These extensions are activated if and only if you have JuMP and the other package loaded into your current scope with using or import.

    Compat

    Using a weak dependency requires Julia v1.9 or later.

    +

    Introduction

    This section of the documentation contains brief documentation for some popular JuMP extensions. The list of extensions is not exhaustive, but instead is intended to help you discover popular JuMP extensions, and to give you an overview of the types of extensions that are possible to write with JuMP.

    Affiliation

    Packages beginning with jump-dev/ are developed and maintained by the JuMP developers.

    Packages that do not begin with jump-dev/ are developed independently. The developers of these packages requested or consented to the inclusion of their README contents in the JuMP documentation for the benefit of users.

    Adding new extensions

    Written an extension? Add it to this section of the JuMP documentation by making a pull request to the docs/packages.toml file.

    Weak dependencies

    Some extensions listed in this section are implemented using the weak dependency feature added to Julia in v1.9. These extensions are activated if and only if you have JuMP and the other package loaded into your current scope with using or import.

    Compat

    Using a weak dependency requires Julia v1.9 or later.

    diff --git a/dev/index.html b/dev/index.html index 09df9ee7667..aee6d5c8865 100644 --- a/dev/index.html +++ b/dev/index.html @@ -32,4 +32,4 @@ journal = {Mathematical Programming Computation}, year = {2023}, doi = {10.1007/s12532-023-00239-3} -}

    NumFOCUS

    NumFOCUS logo

    JuMP is a Sponsored Project of NumFOCUS, a 501(c)(3) nonprofit charity in the United States. NumFOCUS provides JuMP with fiscal, legal, and administrative support to help ensure the health and sustainability of the project. Visit numfocus.org for more information.

    You can support JuMP by donating.

    Donations to JuMP are managed by NumFOCUS. For donors in the United States, your gift is tax-deductible to the extent provided by law. As with any donation, you should consult with your tax adviser about your particular tax situation.

    JuMP's largest expense is the annual JuMP-dev workshop. Donations will help us provide travel support for JuMP-dev attendees and take advantage of other opportunities that arise to support JuMP development.

    License

    JuMP is licensed under the MPL-2.0 software license. Consult the license and the Mozilla FAQ for more information. In addition, JuMP is typically used in conjunction with solver packages and extensions which have their own licences. Consult their package repositories for the specific licenses that apply.

    +}

    NumFOCUS

    NumFOCUS logo

    JuMP is a Sponsored Project of NumFOCUS, a 501(c)(3) nonprofit charity in the United States. NumFOCUS provides JuMP with fiscal, legal, and administrative support to help ensure the health and sustainability of the project. Visit numfocus.org for more information.

    You can support JuMP by donating.

    Donations to JuMP are managed by NumFOCUS. For donors in the United States, your gift is tax-deductible to the extent provided by law. As with any donation, you should consult with your tax adviser about your particular tax situation.

    JuMP's largest expense is the annual JuMP-dev workshop. Donations will help us provide travel support for JuMP-dev attendees and take advantage of other opportunities that arise to support JuMP development.

    License

    JuMP is licensed under the MPL-2.0 software license. Consult the license and the Mozilla FAQ for more information. In addition, JuMP is typically used in conjunction with solver packages and extensions which have their own licences. Consult their package repositories for the specific licenses that apply.

    diff --git a/dev/installation/index.html b/dev/installation/index.html index a6807435f0b..5a4568a962d 100644 --- a/dev/installation/index.html +++ b/dev/installation/index.html @@ -28,4 +28,4 @@ [4076af6c] ↓ JuMP v0.21.5 ⇒ v0.18.6 [707a9f91] + JuMPeR v0.6.0 Updating `~/jump_example/Manifest.toml` - ... lines omitted ...

    JuMPeR gets added at version 0.6.0 (+ JuMPeR v0.6.0), but JuMP gets downgraded from 0.21.5 to 0.18.6 (↓ JuMP v0.21.5 ⇒ v0.18.6)! The reason for this is that JuMPeR doesn't support a version of JuMP newer than 0.18.6.

    Tip

    Pay careful attention to the output of the package manager when adding new packages, especially when you see a package being downgraded.

    + ... lines omitted ...

    JuMPeR gets added at version 0.6.0 (+ JuMPeR v0.6.0), but JuMP gets downgraded from 0.21.5 to 0.18.6 (↓ JuMP v0.21.5 ⇒ v0.18.6)! The reason for this is that JuMPeR doesn't support a version of JuMP newer than 0.18.6.

    Tip

    Pay careful attention to the output of the package manager when adding new packages, especially when you see a package being downgraded.

    diff --git a/dev/manual/callbacks/index.html b/dev/manual/callbacks/index.html index 4c494b2139a..6eece4a53aa 100644 --- a/dev/manual/callbacks/index.html +++ b/dev/manual/callbacks/index.html @@ -84,4 +84,4 @@ end my_callback_function (generic function with 1 method) -julia> set_attribute(model, MOI.HeuristicCallback(), my_callback_function)

    The third argument to submit is a vector of JuMP variables, and the fourth argument is a vector of values corresponding to each variable.

    MOI.submit returns an enum that depends on whether the solver accepted the solution. The possible return codes are:

    • MOI.HEURISTIC_SOLUTION_ACCEPTED
    • MOI.HEURISTIC_SOLUTION_REJECTED
    • MOI.HEURISTIC_SOLUTION_UNKNOWN
    Warning

    Some solvers may accept partial solutions. Others require a feasible integer solution for every variable. If in doubt, provide a complete solution.

    Info

    The heuristic solution callback may be called at fractional nodes in the branch-and-bound tree. There is no guarantee that the callback is called at every fractional primal solution.

    +julia> set_attribute(model, MOI.HeuristicCallback(), my_callback_function)

    The third argument to submit is a vector of JuMP variables, and the fourth argument is a vector of values corresponding to each variable.

    MOI.submit returns an enum that depends on whether the solver accepted the solution. The possible return codes are:

    • MOI.HEURISTIC_SOLUTION_ACCEPTED
    • MOI.HEURISTIC_SOLUTION_REJECTED
    • MOI.HEURISTIC_SOLUTION_UNKNOWN
    Warning

    Some solvers may accept partial solutions. Others require a feasible integer solution for every variable. If in doubt, provide a complete solution.

    Info

    The heuristic solution callback may be called at fractional nodes in the branch-and-bound tree. There is no guarantee that the callback is called at every fractional primal solution.

    diff --git a/dev/manual/complex/index.html b/dev/manual/complex/index.html index 31859ec21c5..7596b45f441 100644 --- a/dev/manual/complex/index.html +++ b/dev/manual/complex/index.html @@ -197,4 +197,4 @@ julia> @constraint(model, H in HermitianPSDCone()) [x[1] im - -im -x[2]] ∈ HermitianPSDCone()
    Note

    The matrix H in H in HermitianPSDCone() must be a LinearAlgebra.Hermitian matrix type. A build_constraint error will be thrown if the matrix is a different matrix type.

    + -im -x[2]] ∈ HermitianPSDCone()
    Note

    The matrix H in H in HermitianPSDCone() must be a LinearAlgebra.Hermitian matrix type. A build_constraint error will be thrown if the matrix is a different matrix type.

    diff --git a/dev/manual/constraints/index.html b/dev/manual/constraints/index.html index 2803f2a927d..9fa6caf9d94 100644 --- a/dev/manual/constraints/index.html +++ b/dev/manual/constraints/index.html @@ -801,4 +801,4 @@ (x[1] == x[2]) - 0.0 = 0 julia> @constraint(model, x[1] == x[2] := rhs) -x[1] == x[2] = false +x[1] == x[2] = false diff --git a/dev/manual/containers/index.html b/dev/manual/containers/index.html index d4a316dbd4a..d93fecb7f95 100644 --- a/dev/manual/containers/index.html +++ b/dev/manual/containers/index.html @@ -232,4 +232,4 @@ julia> Containers.@container([i = 1:2, j = 1:4; condition(i, j)], i + j) JuMP.Containers.SparseAxisArray{Int64, 2, Tuple{Int64, Int64}} with 2 entries: [1, 2] = 3 - [1, 4] = 5 + [1, 4] = 5 diff --git a/dev/manual/expressions/index.html b/dev/manual/expressions/index.html index fb77a5cc1f5..bf80965882c 100644 --- a/dev/manual/expressions/index.html +++ b/dev/manual/expressions/index.html @@ -247,4 +247,4 @@ julia> x 2-element Vector{AffExpr}: 1.1 - 0

    Note that for large expressions this will be slower due to the allocation of additional temporary objects.

    + 0

    Note that for large expressions this will be slower due to the allocation of additional temporary objects.

    diff --git a/dev/manual/models/index.html b/dev/manual/models/index.html index a2c4ddc05dc..cd090944d0a 100644 --- a/dev/manual/models/index.html +++ b/dev/manual/models/index.html @@ -313,4 +313,4 @@ If you expected the solver to support your problem, you may have an error in your formulation. Otherwise, consider using a different solver. The list of available solvers, along with the problem types they support, is available at https://jump.dev/JuMP.jl/stable/installation/#Supported-solvers. -Stacktrace:
    Warning

    Another downside of direct mode is that the behavior of querying solution information after modifying the problem is solver-specific. This can lead to errors, or the solver silently returning an incorrect value. See OptimizeNotCalled errors for more information.

    +Stacktrace:
    Warning

    Another downside of direct mode is that the behavior of querying solution information after modifying the problem is solver-specific. This can lead to errors, or the solver silently returning an incorrect value. See OptimizeNotCalled errors for more information.

    diff --git a/dev/manual/nlp/index.html b/dev/manual/nlp/index.html index 3d91350cb28..9b7e7d414dd 100644 --- a/dev/manual/nlp/index.html +++ b/dev/manual/nlp/index.html @@ -344,4 +344,4 @@ f1(x[1]) - 1.0 ≤ 0 f2(x[1], x[2]) - 1.0 ≤ 0 f3(x[2], x[3], x[4]) - 1.0 ≤ 0 - f4(x[1], x[3], x[4], x[5]) - 1.0 ≤ 0

    Known performance issues

    The macro-based input to JuMP's nonlinear interface can cause a performance issue if you:

    1. write a macro with a large number (hundreds) of terms
    2. call that macro from within a function instead of from the top-level in global scope.

    The first issue does not depend on the number of resulting terms in the mathematical expression, but rather the number of terms in the Julia Expr representation of that expression. For example, the expression sum(x[i] for i in 1:1_000_000) contains one million mathematical terms, but the Expr representation is just a single sum.

    The most common cause, other than a lot of tedious typing, is if you write a program that automatically writes a JuMP model as a text file, which you later execute. One example is MINLPlib.jl which automatically transpiled models in the GAMS scalar format into JuMP examples.

    As a rule of thumb, if you are writing programs to automatically generate expressions for the JuMP macros, you should target the Raw expression input instead. For more information, read MathOptInterface Issue#1997.

    + f4(x[1], x[3], x[4], x[5]) - 1.0 ≤ 0

    Known performance issues

    The macro-based input to JuMP's nonlinear interface can cause a performance issue if you:

    1. write a macro with a large number (hundreds) of terms
    2. call that macro from within a function instead of from the top-level in global scope.

    The first issue does not depend on the number of resulting terms in the mathematical expression, but rather the number of terms in the Julia Expr representation of that expression. For example, the expression sum(x[i] for i in 1:1_000_000) contains one million mathematical terms, but the Expr representation is just a single sum.

    The most common cause, other than a lot of tedious typing, is if you write a program that automatically writes a JuMP model as a text file, which you later execute. One example is MINLPlib.jl which automatically transpiled models in the GAMS scalar format into JuMP examples.

    As a rule of thumb, if you are writing programs to automatically generate expressions for the JuMP macros, you should target the Raw expression input instead. For more information, read MathOptInterface Issue#1997.

    diff --git a/dev/manual/nonlinear/index.html b/dev/manual/nonlinear/index.html index 67e1d29c672..5dded0db49b 100644 --- a/dev/manual/nonlinear/index.html +++ b/dev/manual/nonlinear/index.html @@ -301,4 +301,4 @@ julia> ForwardDiff.gradient(x -> my_operator_good(x...), [1.0, 2.0]) 2-element Vector{Float64}: 2.0 - 4.0 + 4.0 diff --git a/dev/manual/objective/index.html b/dev/manual/objective/index.html index eaff34b3333..0fcf4d1d52f 100644 --- a/dev/manual/objective/index.html +++ b/dev/manual/objective/index.html @@ -179,4 +179,4 @@ 2 x[1] julia> @constraint(model, obj3 <= 2.0) -x[1] + x[2] ≤ 2 +x[1] + x[2] ≤ 2 diff --git a/dev/manual/solutions/index.html b/dev/manual/solutions/index.html index aeadefec5c0..110c3560283 100644 --- a/dev/manual/solutions/index.html +++ b/dev/manual/solutions/index.html @@ -384,14 +384,9 @@ Dual status : NO_SOLUTION Objective value : [0.00000e+00,0.00000e+00] Objective bound : [0.00000e+00,-9.00000e+00] - Relative gap : 0.00000e+00 - Dual objective value : -3.33067e-16 * Work counters Solve time (sec) : 5.34880e-01 - Simplex iterations : 0 - Barrier iterations : 0 - Node count : -1 julia> for i in 1:result_count(model) println("Solution $i") @@ -434,4 +429,4 @@ x integer => 0.1

    You can also use the functional form, where the first argument is a function that maps variables to their primal values:

    julia> optimize!(model)
     
     julia> primal_feasibility_report(v -> value(v), model)
    -Dict{Any, Float64}()
    +Dict{Any, Float64}() diff --git a/dev/manual/variables/index.html b/dev/manual/variables/index.html index d44ef4b126e..b97c088f154 100644 --- a/dev/manual/variables/index.html +++ b/dev/manual/variables/index.html @@ -639,4 +639,4 @@ p*x julia> typeof(px) -QuadExpr (alias for GenericQuadExpr{Float64, GenericVariableRef{Float64}})

    When to use a parameter

    Parameters are most useful when solving nonlinear models in a sequence:

    julia> using JuMP, Ipopt
    julia> model = Model(Ipopt.Optimizer);
    julia> set_silent(model)
    julia> @variable(model, x)x
    julia> @variable(model, p in Parameter(1.0))p
    julia> @objective(model, Min, (x - p)^2)x² - 2 p*x + p²
    julia> optimize!(model)
    julia> value(x)1.0
    julia> set_parameter_value(p, 5.0)
    julia> optimize!(model)
    julia> value(x)5.0

    Using parameters can be faster than creating a new model from scratch with updated data because JuMP is able to avoid repeating a number of steps in processing the model before handing it off to the solver.

    +QuadExpr (alias for GenericQuadExpr{Float64, GenericVariableRef{Float64}})

    When to use a parameter

    Parameters are most useful when solving nonlinear models in a sequence:

    julia> using JuMP, Ipopt
    julia> model = Model(Ipopt.Optimizer);
    julia> set_silent(model)
    julia> @variable(model, x)x
    julia> @variable(model, p in Parameter(1.0))p
    julia> @objective(model, Min, (x - p)^2)x² - 2 p*x + p²
    julia> optimize!(model)
    julia> value(x)1.0
    julia> set_parameter_value(p, 5.0)
    julia> optimize!(model)
    julia> value(x)5.0

    Using parameters can be faster than creating a new model from scratch with updated data because JuMP is able to avoid repeating a number of steps in processing the model before handing it off to the solver.

    diff --git a/dev/moi/background/duality/index.html b/dev/moi/background/duality/index.html index 7bd7e7c4816..4f0e7bc7f07 100644 --- a/dev/moi/background/duality/index.html +++ b/dev/moi/background/duality/index.html @@ -81,4 +81,4 @@ \max & \sum b_k y_k \\ \text{s.t.} \;\; & C+C^\top - \sum (A_k+A_k^\top) y_k \in \mathcal{S}_+ \\ & C-C^\top - \sum(A_k-A_k^\top) y_k = 0 -\end{align}\]

    and we recover $Z = X + X^\top$.

    +\end{align}\]

    and we recover $Z = X + X^\top$.

    diff --git a/dev/moi/background/infeasibility_certificates/index.html b/dev/moi/background/infeasibility_certificates/index.html index af8d8134df8..51245b8afb6 100644 --- a/dev/moi/background/infeasibility_certificates/index.html +++ b/dev/moi/background/infeasibility_certificates/index.html @@ -29,4 +29,4 @@ \end{align}\]

    and:

    \[-\sum_{i=1}^m b_i^\top (y_i + \eta d_i) > -\sum_{i=1}^m b_i^\top y_i,\]

    for any feasible dual solution $y$. The latter simplifies to $-\sum_{i=1}^m b_i^\top d_i > 0$. For a maximization problem, the inequality is $\sum_{i=1}^m b_i^\top d_i < 0$. (Note that these are the same inequality, modulo a - sign.)

    If the solver has found a certificate of primal infeasibility:

    Note

    The choice of whether to scale the ray $d$ to have magnitude 1 is left to the solver.

    Infeasibility certificates of variable bounds

    Many linear solvers (for example, Gurobi) do not provide explicit access to the primal infeasibility certificate of a variable bound. However, given a set of linear constraints:

    \[\begin{align} l_A \le A x \le u_A \\ l_x \le x \le u_x, -\end{align}\]

    the primal certificate of the variable bounds can be computed using the primal certificate associated with the affine constraints, $d$. (Note that $d$ will have one element for each row of the $A$ matrix, and that some or all of the elements in the vectors $l_A$ and $u_A$ may be $\pm \infty$. If both $l_A$ and $u_A$ are finite for some row, the corresponding element in `d must be 0.)

    Given $d$, compute $\bar{d} = d^\top A$. If the bound is finite, a certificate for the lower variable bound of $x_i$ is $\max\{\bar{d}_i, 0\}$, and a certificate for the upper variable bound is $\min\{\bar{d}_i, 0\}$.

    +\end{align}\]

    the primal certificate of the variable bounds can be computed using the primal certificate associated with the affine constraints, $d$. (Note that $d$ will have one element for each row of the $A$ matrix, and that some or all of the elements in the vectors $l_A$ and $u_A$ may be $\pm \infty$. If both $l_A$ and $u_A$ are finite for some row, the corresponding element in `d must be 0.)

    Given $d$, compute $\bar{d} = d^\top A$. If the bound is finite, a certificate for the lower variable bound of $x_i$ is $\max\{\bar{d}_i, 0\}$, and a certificate for the upper variable bound is $\min\{\bar{d}_i, 0\}$.

    diff --git a/dev/moi/background/motivation/index.html b/dev/moi/background/motivation/index.html index 7edb2b6ff93..dfd8c0489c5 100644 --- a/dev/moi/background/motivation/index.html +++ b/dev/moi/background/motivation/index.html @@ -3,4 +3,4 @@ function gtag(){dataLayer.push(arguments);} gtag('js', new Date()); gtag('config', 'G-0RZ8X3D3D0', {'page_path': location.pathname + location.search + location.hash}); -

    Motivation

    MathOptInterface (MOI) is a replacement for MathProgBase, the first-generation abstraction layer for mathematical optimization previously used by JuMP and Convex.jl.

    To address a number of limitations of MathProgBase, MOI is designed to:

    • Be simple and extensible
      • unifying linear, quadratic, and conic optimization,
      • seamlessly facilitating extensions to essentially arbitrary constraints and functions (for example, indicator constraints, complementarity constraints, and piecewise-linear functions)
    • Be fast
      • by allowing access to a solver's in-memory representation of a problem without writing intermediate files (when possible)
      • by using multiple dispatch and avoiding requiring containers of non-concrete types
    • Allow a solver to return multiple results (for example, a pool of solutions)
    • Allow a solver to return extra arbitrary information via attributes (for example, variable- and constraint-wise membership in an irreducible inconsistent subset for infeasibility analysis)
    • Provide a greatly expanded set of status codes explaining what happened during the optimization procedure
    • Enable a solver to more precisely specify which problem classes it supports
    • Enable both primal and dual warm starts
    • Enable adding and removing both variables and constraints by indices that are not required to be consecutive
    • Enable any modification that the solver supports to an existing model
    • Avoid requiring the solver wrapper to store an additional copy of the problem data
    +

    Motivation

    MathOptInterface (MOI) is a replacement for MathProgBase, the first-generation abstraction layer for mathematical optimization previously used by JuMP and Convex.jl.

    To address a number of limitations of MathProgBase, MOI is designed to:

    • Be simple and extensible
      • unifying linear, quadratic, and conic optimization,
      • seamlessly facilitating extensions to essentially arbitrary constraints and functions (for example, indicator constraints, complementarity constraints, and piecewise-linear functions)
    • Be fast
      • by allowing access to a solver's in-memory representation of a problem without writing intermediate files (when possible)
      • by using multiple dispatch and avoiding requiring containers of non-concrete types
    • Allow a solver to return multiple results (for example, a pool of solutions)
    • Allow a solver to return extra arbitrary information via attributes (for example, variable- and constraint-wise membership in an irreducible inconsistent subset for infeasibility analysis)
    • Provide a greatly expanded set of status codes explaining what happened during the optimization procedure
    • Enable a solver to more precisely specify which problem classes it supports
    • Enable both primal and dual warm starts
    • Enable adding and removing both variables and constraints by indices that are not required to be consecutive
    • Enable any modification that the solver supports to an existing model
    • Avoid requiring the solver wrapper to store an additional copy of the problem data
    diff --git a/dev/moi/background/naming_conventions/index.html b/dev/moi/background/naming_conventions/index.html index b29cd0e5881..c444532d4ec 100644 --- a/dev/moi/background/naming_conventions/index.html +++ b/dev/moi/background/naming_conventions/index.html @@ -3,4 +3,4 @@ function gtag(){dataLayer.push(arguments);} gtag('js', new Date()); gtag('config', 'G-0RZ8X3D3D0', {'page_path': location.pathname + location.search + location.hash}); -

    Naming conventions

    MOI follows several conventions for naming functions and structures. These should also be followed by packages extending MOI.

    Sets

    Sets encode the structure of constraints. Their names should follow the following conventions:

    • Abstract types in the set hierarchy should begin with Abstract and end in Set, for example, AbstractScalarSet, AbstractVectorSet.
    • Vector-valued conic sets should end with Cone, for example, NormInfinityCone, SecondOrderCone.
    • Vector-valued Cartesian products should be plural and not end in Cone, for example, Nonnegatives, not NonnegativeCone.
    • Matrix-valued conic sets should provide two representations: ConeSquare and ConeTriangle, for example, RootDetConeTriangle and RootDetConeSquare. See Matrix cones for more details.
    • Scalar sets should be singular, not plural, for example, Integer, not Integers.
    • As much as possible, the names should follow established conventions in the domain where this set is used: for instance, convex sets should have names close to those of CVX, and constraint-programming sets should follow MiniZinc's constraints.
    +

    Naming conventions

    MOI follows several conventions for naming functions and structures. These should also be followed by packages extending MOI.

    Sets

    Sets encode the structure of constraints. Their names should follow the following conventions:

    • Abstract types in the set hierarchy should begin with Abstract and end in Set, for example, AbstractScalarSet, AbstractVectorSet.
    • Vector-valued conic sets should end with Cone, for example, NormInfinityCone, SecondOrderCone.
    • Vector-valued Cartesian products should be plural and not end in Cone, for example, Nonnegatives, not NonnegativeCone.
    • Matrix-valued conic sets should provide two representations: ConeSquare and ConeTriangle, for example, RootDetConeTriangle and RootDetConeSquare. See Matrix cones for more details.
    • Scalar sets should be singular, not plural, for example, Integer, not Integers.
    • As much as possible, the names should follow established conventions in the domain where this set is used: for instance, convex sets should have names close to those of CVX, and constraint-programming sets should follow MiniZinc's constraints.
    diff --git a/dev/moi/changelog/index.html b/dev/moi/changelog/index.html index 2a239f26c15..ca73daba96d 100644 --- a/dev/moi/changelog/index.html +++ b/dev/moi/changelog/index.html @@ -31,4 +31,4 @@ end write(path, s) end -end

    v0.9.22 (May 22, 2021)

    This release contains backports from the ongoing development of the v0.10 release.

    • Improved type inference in Utilities, Bridges and FileFormats submodules to reduce latency.
    • Improved performance of Utilities.is_canonical.
    • Fixed Utilities.pass_nonvariable_constraints with bridged variables.
    • Fixed performance regression of Utilities.Model.
    • Fixed ordering of objective setting in parser.

    v0.9.21 (April 23, 2021)

    • Added supports_shift_constant.
    • Improve performance of bridging quadratic constraints.
    • Add precompilation statements.
    • Large improvements to the documentation.
    • Fix a variety of inference issues, benefiting precompilation and reducing initial latency.
    • RawParameters are now ignored when resetting a CachingOptimizer. Previously, changing the underlying optimizer after RawParameters were set would throw an error.
    • Utilities.AbstractModel is being refactored. This may break users interacting with private fields of a model generated using @model.

    v0.9.20 (February 20, 2021)

    • Improved performance of Utilities.ScalarFunctionIterator
    • Added support for compute_conflict to MOI layers
    • Added test with zero off-diagonal quadratic term in objective
    • Fixed double deletion of nested bridged SingleVariable/VectorOfVariables constraints
    • Fixed modification of un-set objective
    • Fixed function modification with duplicate terms
    • Made unit tests abort without failing if the problem class is not supported
    • Formatted code with JuliaFormatter
    • Clarified BasisStatusCode's docstring

    v0.9.19 (December 1, 2020)

    • Added CallbackNodeStatus attribute
    • Added bridge from GreaterThan or LessThan to Interval
    • Added tests for infeasibility certificates and double optimize
    • Fixed support for Julia v1.6
    • Re-organized MOI docs and added documentation for adding a test

    v0.9.18 (November 3, 2020)

    • Various improvements for working with complex numbers
    • Added GeoMeantoRelEntrBridge to bridge a GeometricMeanCone constraint to a relative entropy constraint

    v0.9.17 (September 21, 2020)

    • Fixed CleverDict with variable of negative index value
    • Implement supports_add_constrained_variable for MockOptimizer

    v0.9.16 (September 17, 2020)

    • Various fixes:
      • 32-bit support
      • CleverDict with abstract value type
      • Checks in test suite

    v0.9.15 (September 14, 2020)

    • Bridges improvements:
      • (R)SOCtoNonConvexQuad bridge
      • ZeroOne bridge
      • Use supports_add_constrained_variable in LazyBridgeOptimizer
      • Exposed VariableBridgeCost and ConstraintBridgeCost attributes
      • Prioritize constraining variables on creation according to these costs
      • Refactor bridge debugging
    • Large performance improvements across all submodules
    • Lots of documentation improvements
    • FileFormats improvements:
      • Update MathOptFormat to v0.5
      • Fix supported objectives in FileFormats
    • Testing improvements:
      • Add name option for basic_constraint_test
    • Bug fixes and missing methods
      • Add length for iterators
      • Fix bug with duplicate terms
      • Fix order of LinearOfConstraintIndices

    v0.9.14 (May 30, 2020)

    • Add a solver-independent interface for accessing the set of conflicting constraints an Irreducible Inconsistent Subsystem (#1056).
    • Bump JSONSchema dependency from v0.2 to v0.3 (#1090).
    • Documentation improvements:
      • Fix typos (#1054, #1060, #1061, #1064, #1069, #1070).
      • Remove the outdated recommendation for a package implementing MOI for a solver XXX to be called MathOptInterfaceXXX (#1087).
    • Utilities improvements:
      • Fix is_canonical for quadratic functions (#1081, #1089).
      • Implement add_constrained_variable[s] for CachingOptimizer so that it is added as constrained variables to the underlying optimizer (#1084).
      • Add support for custom objective functions for UniversalFallback (#1086).
      • Deterministic ordering of constraints in UniversalFallback (#1088).
    • Testing improvements:
      • Add NormOneCone/NormInfinityCone tests (#1045).
    • Bridges improvements:
      • Add bridges from Semiinteger and Semicontinuous (#1059).
      • Implement getting ConstraintSet for Variable.FlipSignBridge (#1066).
      • Fix setting ConstraintFunction for Constraint.ScalarizeBridge (#1093).
      • Fix NormOne/NormInf bridges with nonzero constants (#1045).
      • Fix StackOverflow in debug (#1063).
    • FileFormats improvements:
      • [SDPA] Implement the extension for integer variables (#1079).
      • [SDPA] Ignore comments after m and nblocks and detect dat-s extension (#1077).
      • [SDPA] No scaling of off-diagonal coefficient (#1076).
      • [SDPA] Add missing negation of constant (#1075).

    v0.9.13 (March 24, 2020)

    • Added tests for Semicontinuous and Semiinteger variables (#1033).
    • Added tests for using ExprGraphs from NLP evaluators (#1043).
    • Update version compatibilities of dependencies (#1034, #1051, #1052).
    • Fixed typos in documentation (#1044).

    v0.9.12 (February 28, 2020)

    • Fixed writing NLPBlock in MathOptFormat (#1037).
    • Fixed MockOptimizer for result attributes with non-one result index (#1039).
    • Updated test template with instantiate (#1032).

    v0.9.11 (February 21, 2020)

    • Add an option for the model created by Utilities.@model to be a subtype of AbstractOptimizer (#1031).
    • Described dual cone in docstrings of GeoMeanCone and RelativeEntropyCone (#1018, #1028).
    • Fixed typos in documentation (#1022, #1024).
    • Fixed warning of unsupported attribute (#1027).
    • Added more rootdet/logdet conic tests (#1026).
    • Implemented ConstraintDual for Constraint.GeoMeanBridge, Constraint.RootDetBridge and Constraint.LogDetBridge and test duals in tests with GeoMeanCone and RootDetConeTriangle and LogDetConeTriangle cones (#1025, #1026).

    v0.9.10 (January 31, 2020)

    • Added OptimizerWithAttributes grouping an optimizer constructor and a list of optimizer attributes (#1008).
    • Added RelativeEntropyCone with corresponding bridge into exponential cone constraints (#993).
    • Added NormSpectralCone and NormNuclearCone with corresponding bridges into positive semidefinite constraints (#976).
    • Added supports_constrained_variable(s) (#1004).
    • Added dual_set_type (#1002).
    • Added tests for vector specialized version of delete (#989, #1011).
    • Added PSD3 test (#1007).
    • Clarified dual solution of Tests.pow1v and Tests.pow1f (#1013).
    • Added support for EqualTo and Zero in Bridges.Constraint.SplitIntervalBridge (#1005).
    • Fixed Utilities.vectorize for empty vector (#1003).
    • Fixed free variables in LP writer (#1006).

    v0.9.9 (December 29, 2019)

    • Incorporated MathOptFormat.jl as the FileFormats submodule. FileFormats provides readers and writers for a number of standard file formats and MOF, a file format specialized for MOI (#969).
    • Improved performance of deletion of vector of variables in MOI.Utilities.Model (#983).
    • Updated to MutableArithmetics v0.2 (#981).
    • Added MutableArithmetics.promote_operation allocation tests (#975).
    • Fixed inference issue on Julia v1.1 (#982).

    v0.9.8 (December 19, 2019)

    • Implemented MutableArithmetics API (#924).
    • Fixed callbacks with CachingOptimizer (#959).
    • Fixed MOI.dimension for MOI.Complements (#948).
    • Added fallback for add_variables (#972).
    • Added is_diagonal_vectorized_index utility (#965).
    • Improved linear constraints display in manual (#963, #964).
    • Bridges improvements:
      • Added IndicatorSet to SOS1 bridge (#877).
      • Added support for starting values for Variable.VectorizeBridge (#944).
      • Fixed MOI.add_constraints with non-bridged variable constraint on bridged variable (#951).
      • Fixed corner cases and docstring of GeoMeanBridge (#961, #962, #966).
      • Fixed choice between variable or constraint bridges for constrained variables (#973).
      • Improve performance of bridge shortest path (#945, #946, #956).
      • Added docstring for test_delete_bridge (#954).
      • Added Variable bridge tests (#952).

    v0.9.7 (October 30, 2019)

    • Implemented _result_index_field for NLPBlockDual (#934).
    • Fixed copy of model with starting values for vector constraints (#941).
    • Bridges improvements:
      • Improved performance of add_bridge and added has_bridge (#935).
      • Added AbstractSetMapBridge for bridges between sets S1, S2 such that there is a linear map A such that A*S1 = S2 (#933).
      • Added support for starting values for FlipSignBridge, VectorizeBridge, ScalarizeBridge, SlackBridge, SplitIntervalBridge, RSOCBridge, SOCRBridge NormInfinityBridge, SOCtoPSDBridge and RSOCtoPSDBridge (#933, #936, #937, #938, #939).

    v0.9.6 (October 25, 2019)

    • Added complementarity constraints (#913).
    • Allowed ModelLike objects as value of attributes (#928).
    • Testing improvements:
      • Added dual_objective_value option to MOI.Test.TestConfig (#922).
      • Added InvalidIndex tests in basic_constraint_tests (#921).
      • Added tests for the constant term in indicator constraint (#929).
    • Bridges improvements:
      • Added support for starting values for Functionize bridges (#923).
      • Added variable indices context to variable bridges (#920).
      • Fixed a typo in printing o debug_supports (#927).

    v0.9.5 (October 9, 2019)

    • Clarified PrimalStatus/DualStatus to be NO_SOLUTION if result_index is out of bounds (#912).
    • Added tolerance for checks and use ResultCount + 1 for the result_index in MOI.Test.solve_result_status (#910, #917).
    • Use 0.5 instead of 2.0 for power in PowerCone in basic_constraint_test (#916).
    • Bridges improvements:
      • Added debug utilities for unsupported variable/constraint/objective (#861).
      • Fixed deletion of variables in bridged VectorOfVariables constraints (#909).
      • Fixed result_index with objective bridges (#911).

    v0.9.4 (October 2, 2019)

    • Added solver-independent MIP callbacks (#782).
    • Implements submit for Utilities.CachingOptimizer and Bridges.AbstractBridgeOptimizer (#906).
    • Added tests for result count of solution attributes (#901, #904).
    • Added NumberOfThreads attribute (#892).
    • Added Utilities.get_bounds to get the bounds on a variable (#890).
    • Added a note on duplicate coefficients in documentation (#581).
    • Added result index in ConstraintBasisStatus (#898).
    • Added extension dictionary to Utilities.Model (#884, #895).
    • Fixed deletion of constrained variables for CachingOptimizer (#905).
    • Implemented Utilities.shift_constraint for Test.UnknownScalarSet (#896).
    • Bridges improvements:
      • Added Variable.RSOCtoSOCBridge (#907).
      • Implemented MOI.get for ConstraintFunction/ConstraintSet for Bridges.Constraint.SquareBridge (#899).

    v0.9.3 (September 20, 2019)

    • Fixed ambiguity detected in Julia v1.3 (#891, #893).
    • Fixed missing sets from ListOfSupportedConstraints (#880).
    • Fixed copy of VectorOfVariables constraints with duplicate indices (#886).
    • Added extension dictionary to MOIU.Model (#884).
    • Implemented MOI.get for function and set for GeoMeanBridge (#888).
    • Updated documentation for SingleVariable indices and bridges (#885).
    • Testing improvements:
      • Added more comprehensive tests for names (#882).
      • Added tests for SingleVariable duals (#883).
      • Added tests for DualExponentialCone and DualPowerCone (#873).
    • Improvements for arbitrary coefficient type:
      • Fixed == for sets with mutable fields (#887).
      • Removed some Float64 assumptions in bridges (#878).
      • Automatic selection of Constraint.[Scalar|Vector]FunctionizeBridge (#889).

    v0.9.2 (September 5, 2019)

    • Implemented model printing for MOI.ModelLike and specialized it for models defined in MOI (864).
    • Generalized contlinear tests for arbitrary coefficient type (#855).
    • Fixed supports_constraint for Semiinteger and Semicontinuous and supports for ObjectiveFunction (#859).
    • Fixed Allocate-Load copy for single variable constraints (#856).
    • Bridges improvements:
      • Add objective bridges (#789).
      • Fixed Variable.RSOCtoPSDBridge for dimension 2 (#869).
      • Added Variable.SOCtoRSOCBridge (#865).
      • Added Constraint.SOCRBridge and disable MOI.Bridges.Constraint.SOCtoPSDBridge (#751).
      • Fixed added_constraint_types for Contraint.LogDetBridge and Constraint.RootDetBridge (#870).

    v0.9.1 (August 22, 2019)

    • Fix support for Julia v1.2 (#834).
    • L1 and L∞ norm epigraph cones and corresponding bridges to LP were added (#818).
    • Added tests to MOI.Test.nametest (#833).
    • Fix MOI.Test.soc3test for solvers not supporting infeasibility certificates (#839).
    • Implements operate for operators * and / between vector function and constant (#837).
    • Implements show for MOI.Utilities.IndexMap (#847).
    • Fix corner cases for mapping of variables in MOI.Utilities.CachingOptimizer and substitution of variables in MOI.Bridges.AbstractBridgeOptimizer (#848).
    • Fix transformation of constant terms for MOI.Bridges.Constraint.SOCtoPSDBridge and MOI.Bridges.Constraint.RSOCtoPSDBridge (#840).

    v0.9.0 (August 13, 2019)

    • Support for Julia v0.6 and v0.7 was dropped (#714, #717).
    • A MOI.Utilities.Model implementation of ModelLike, this should replace most use cases of MOI.Utilities.@model (#781).
    • add_constrained_variable and add_constrained_variables were added (#759).
    • Support for indicator constraints was added (#709, #712).
    • DualObjectiveValue attribute was added (#473).
    • RawParameter attribute was added (#733).
    • A dual_set function was added (#804).
    • A Benchmarks submodule was added to facilitate solver benchmarking (#769).
    • A submit function was added, this may for instance allow the user to submit solutions or cuts to the solver from a callback (#775).
    • The field of ObjectiveValue was renamed to result_index (#729).
    • The _constant and Utilities.getconstant function were renamed to constant
    • REDUCTION_CERTIFICATE result status was added (#734).
    • Abstract matrix sets were added (#731).
    • Testing improvements:
      • The testing guideline was updated (#728).
      • Quadratic tests were added (#697).
      • Unit tests for RawStatusString, SolveTime, Silent and SolverName were added (#726, #741).
      • A rotated second-order cone test was added (#759).
      • A power cone test was added (#768).
      • Tests for ZeroOne variables with variable bounds were added (#772).
      • An unbounded test was added (#773).
      • Existing tests had a few updates (#702, #703, #763).
    • Documentation improvements:
      • Added a section on CachingOptimizer (#777).
      • Added a section on UniversalFallback, Model and @model (#762).
      • Transition the knapsack example to a doctest with MockOptimizer (#786).
    • Utilities improvements:
      • A CleverDict utility was added for a vector that automatically transform into a dictionary once a first index is removed (#767).
      • The Utilities.constant function was renamed to Utilities.constant_vector (#740).
      • Implement optimizer attributes for CachingOptimizer (#745).
      • Rename Utilities.add_scalar_constraint to Utilities.normalize_and_add_constraint (#801).
      • operate with vcat, SingleVariable and VectorOfVariables now returns a VectorOfVariables (#616).
      • Fix a type piracy of operate (#784).
      • The load_constraint fallback signature was fixed (#760).
      • The set_dot function was extended to work with sparse arrays (#805).
    • Bridges improvements:
      • The bridges no longer store the constraint function and set before it is bridged, the bridges now have to implement ConstraintFunction and ConstraintSet if the user wants to recover them. As a consequence, the @bridge macro was removed (#722).
      • Bridge are now instantiated with a bridge_constraint function instead of using a constructor (#730).
      • Fix constraint attributes for bridges (#699).
      • Constraint bridges were moved to the Bridges/Constraint submodule so they should now inherit from MOI.Bridges.Constraint.Abstract and should implement MOI.Bridges.Constraint.concrete_bridge_type instead of MOI.Bridges.concrete_bridge_type (#756).
      • Variable bridges were added in (#759).
      • Various improvements (#746, #747).

    v0.8.4 (March 13, 2019)

    • Performance improvement in default_copy_to and bridge optimizer (#696).
    • Add Silent and implement setting optimizer attributes in caching and mock optimizers (#695).
    • Add Functionize bridges (SingleVariable and VectorOfVariables) (#659).
    • Minor typo fixes (#694).

    v0.8.3 (March 6, 2019)

    • Use zero constant in scalar constraint function of MOI.Test.copytest (#691).
    • Fix variable deletion with SingleVariable objective function (#690).
    • Fix LazyBridgeOptimizer with bridges that add no constraints (#689).
    • Error message improvements (#673, #685, #686, #688).
    • Documentation improvements (#682, #683, #687).
    • Basis status:
      • Remove VariableBasisStatus (#679).
      • Test ConstraintBasisStatus and implement it in bridges (#678).
    • Fix inference of NumberOfVariables and NumberOfConstraints (#677).
    • Implement division between a quadratic function and a number (#675).

    v0.8.2 (February 7, 2019)

    • Add RawStatusString attribute (#629).
    • Do not set names to the optimizer but only to the cache in CachingOptimizer (#638).
    • Make scalar MOI functions act as scalars in broadcast (#646).
    • Add function utilities:
      • Implement Base.zero (#634), Base.iszero (#643), add missing arithmetic operations (#644, #645) and fix division (#648).
      • Add a vectorize function that turns a vector of ScalarAffineFunction into a VectorAffineFunction (#642).
    • Improve support for starting values:
      • Show a warning in copy when starting values are not supported instead of throwing an error (#630).
      • Fix UniversalFallback for getting an variable or constraint attribute set to no indices (#623).
      • Add a test in contlineartest with partially set VariablePrimalStart.
    • Bridges improvements:
      • Fix StackOverFlow in LazyBridgeOptimizer when there is a cycle in the graph of bridges.
      • Add Slack bridges (#610, #650).
      • Add FlipSign bridges (#658).
    • Add tests with duplicate coefficients in ScalarAffineFunction and VectorAffineFunction (#639).
    • Use tolerance to compare VariablePrimal in rotatedsoc1 test (#632).
    • Use a zero constant in ScalarAffineFunction of constraints in psdt2 (#622).

    v0.8.1 (January 7, 2019)

    • Adding an NLP objective now overrides any objective set using the ObjectiveFunction attribute (#619).
    • Rename fullbridgeoptimizer into full_bridge_optimizer (#621).
    • Allow custom constraint types with full_bridge_optimizer (#617).
    • Add Vectorize bridge which transforms scalar linear constraints into vector linear constraints (#615).

    v0.8.0 (December 18, 2018)

    • Rename all enum values to follow the JuMP naming guidelines for constants, for example, Optimal becomes OPTIMAL, and DualInfeasible becomes DUAL_INFEASIBLE.
    • Rename CachingOptimizer methods for style compliance.
    • Add an MOI.TerminationStatusCode called ALMOST_DUAL_INFEASIBLE.

    v0.7.0 (December 13, 2018)

    • Test that MOI.TerminationStatus is MOI.OptimizeNotCalled before MOI.optimize! is called.
    • Check supports_default_copy_to in tests (#594).
    • Key pieces of information like optimality, infeasibility, etc., are now reported through TerminationStatusCode. It is typically no longer necessary to check the result statuses in addition to the termination status.
    • Add perspective dimension to log-det cone (#593).

    v0.6.4 (November 27, 2018)

    • Add OptimizeNotCalled termination status (#577) and improve documentation of other statuses (#575).
    • Add a solver naming guideline (#578).
    • Make FeasibilitySense the default ObjectiveSense (#579).
    • Fix Utilities.@model and Bridges.@bridge macros for functions and sets defined outside MOI (#582).
    • Document solver-specific attributes (#580) and implement them in Utilities.CachingOptimizer (#565).

    v0.6.3 (November 16, 2018)

    • Variables and constraints are now allowed to have duplicate names. An error is thrown only on lookup. This change breaks some existing tests. (#549)
    • Attributes may now be partially set (some values could be nothing). (#563)
    • Performance improvements in Utilities.Model (#549, #567, #568)
    • Fix bug in QuadtoSOC (#558).
    • New supports_default_copy_to method that optimizers should implement to control caching behavior.
    • Documentation improvements.

    v0.6.2 (October 26, 2018)

    • Improve hygiene of @model macro (#544).
    • Fix bug in copy tests (#543).
    • Fix bug in UniversalFallback attribute getter (#540).
    • Allow all correct solutions for solve_blank_obj unit test (#537).
    • Add errors for Allocate-Load and bad constraints (#534).
    • [performance] Add specialized implementation of hash for VariableIndex (#533).
    • [performance] Construct the name to object dictionaries lazily in model (#535).
    • Add the QuadtoSOC bridge which transforms ScalarQuadraticFunction constraints into RotatedSecondOrderCone (#483).

    v0.6.1 (September 22, 2018)

    • Enable PositiveSemidefiniteConeSquare set and quadratic functions in MOIB.fullbridgeoptimizer (#524).
    • Add warning in the bridge between PositiveSemidefiniteConeSquare and PositiveSemidefiniteConeTriangle when the matrix is almost symmetric (#522).
    • Modify MOIT.copytest to not add multiples constraints on the same variable (#521).
    • Add missing keyword argument in one of MOIU.add_scalar_constraint methods (#520).

    v0.6.0 (August 30, 2018)

    • The MOIU.@model and MOIB.@bridge macros now support functions and sets defined in external modules. As a consequence, function and set names in the macro arguments need to be prefixed by module name.
    • Rename functions according to the JuMP style guide:
      • copy! with keyword arguments copynames and warnattributes -> copy_to with keyword arguments copy_names and warn_attributes;
      • set! -> set;
      • addvariable[s]! -> add_variable[s];
      • supportsconstraint -> supports_constraint;
      • addconstraint[s]! -> add_constraint[s];
      • isvalid -> is_valid;
      • isempty -> is_empty;
      • Base.delete! -> delete;
      • modify! -> modify;
      • transform! -> transform;
      • initialize! -> initialize;
      • write -> write_to_file; and
      • read! -> read_from_file.
    • Remove free! (use Base.finalize instead).
    • Add the SquarePSD bridge which transforms PositiveSemidefiniteConeTriangle constraints into PositiveSemidefiniteConeTriangle.
    • Add result fallback for ConstraintDual of variable-wise constraint, ConstraintPrimal and ObjectiveValue.
    • Add tests for ObjectiveBound.
    • Add test for empty rows in vector linear constraint.
    • Rework errors: CannotError has been renamed NotAllowedError and the distinction between UnsupportedError and NotAllowedError is now about whether the element is not supported (for example, it cannot be copied a model containing this element) or the operation is not allowed (either because it is not implemented, because it cannot be performed in the current state of the model, or because it cannot be performed for a specific index)
    • canget is removed. NoSolution is added as a result status to indicate that the solver does not have either a primal or dual solution available (See #479).

    v0.5.0 (August 5, 2018)

    • Fix names with CachingOptimizer.
    • Cleanup thanks to @mohamed82008.
    • Added a universal fallback for constraints.
    • Fast utilities for function canonicalization thanks to @rdeits.
    • Renamed dimension field to side_dimension in the context of matrix-like sets.
    • New and improved tests for cases like duplicate terms and ObjectiveBound.
    • Removed cantransform, canaddconstraint, canaddvariable, canset, canmodify, and candelete functions from the API. They are replaced by a new set of errors that are thrown: Subtypes of UnsupportedError indicate unsupported operations, while subtypes of CannotError indicate operations that cannot be performed in the current state.
    • The API for copy! is updated to remove the CopyResult type.
    • Updates for the new JuMP style guide.

    v0.4.1 (June 28, 2018)

    • Fixes vector function modification on 32 bits.
    • Fixes Bellman-Ford algorithm for bridges.
    • Added an NLP test with FeasibilitySense.
    • Update modification documentation.

    v0.4.0 (June 23, 2018)

    • Helper constructors for VectorAffineTerm and VectorQuadraticTerm.
    • Added modify_lhs to TestConfig.
    • Additional unit tests for optimizers.
    • Added a type parameter to CachingOptimizer for the optimizer field.
    • New API for problem modification (#388)
    • Tests pass without deprecation warnings on Julia 0.7.
    • Small fixes and documentation updates.

    v0.3.0 (May 25, 2018)

    • Functions have been redefined to use arrays-of-structs instead of structs-of-arrays.
    • Improvements to MockOptimizer.
    • Significant changes to Bridges.
    • New and improved unit tests.
    • Fixes for Julia 0.7.

    v0.2.0 (April 24, 2018)

    • Improvements to and better coverage of Tests.
    • Documentation fixes.
    • SolverName attribute.
    • Changes to the NLP interface (new definition of variable order and arrays of structs for bound pairs and sparsity patterns).
    • Addition of NLP tests.
    • Introduction of UniversalFallback.
    • copynames keyword argument to MOI.copy!.
    • Add Bridges submodule.

    v0.1.0 (February 28, 2018)

    • Initial public release.
    • The framework for MOI was developed at the JuMP-dev workshop at MIT in June 2017 as a sorely needed replacement for MathProgBase.
    +end

    v0.9.22 (May 22, 2021)

    This release contains backports from the ongoing development of the v0.10 release.

    • Improved type inference in Utilities, Bridges and FileFormats submodules to reduce latency.
    • Improved performance of Utilities.is_canonical.
    • Fixed Utilities.pass_nonvariable_constraints with bridged variables.
    • Fixed performance regression of Utilities.Model.
    • Fixed ordering of objective setting in parser.

    v0.9.21 (April 23, 2021)

    • Added supports_shift_constant.
    • Improve performance of bridging quadratic constraints.
    • Add precompilation statements.
    • Large improvements to the documentation.
    • Fix a variety of inference issues, benefiting precompilation and reducing initial latency.
    • RawParameters are now ignored when resetting a CachingOptimizer. Previously, changing the underlying optimizer after RawParameters were set would throw an error.
    • Utilities.AbstractModel is being refactored. This may break users interacting with private fields of a model generated using @model.

    v0.9.20 (February 20, 2021)

    • Improved performance of Utilities.ScalarFunctionIterator
    • Added support for compute_conflict to MOI layers
    • Added test with zero off-diagonal quadratic term in objective
    • Fixed double deletion of nested bridged SingleVariable/VectorOfVariables constraints
    • Fixed modification of un-set objective
    • Fixed function modification with duplicate terms
    • Made unit tests abort without failing if the problem class is not supported
    • Formatted code with JuliaFormatter
    • Clarified BasisStatusCode's docstring

    v0.9.19 (December 1, 2020)

    • Added CallbackNodeStatus attribute
    • Added bridge from GreaterThan or LessThan to Interval
    • Added tests for infeasibility certificates and double optimize
    • Fixed support for Julia v1.6
    • Re-organized MOI docs and added documentation for adding a test

    v0.9.18 (November 3, 2020)

    • Various improvements for working with complex numbers
    • Added GeoMeantoRelEntrBridge to bridge a GeometricMeanCone constraint to a relative entropy constraint

    v0.9.17 (September 21, 2020)

    • Fixed CleverDict with variable of negative index value
    • Implement supports_add_constrained_variable for MockOptimizer

    v0.9.16 (September 17, 2020)

    • Various fixes:
      • 32-bit support
      • CleverDict with abstract value type
      • Checks in test suite

    v0.9.15 (September 14, 2020)

    • Bridges improvements:
      • (R)SOCtoNonConvexQuad bridge
      • ZeroOne bridge
      • Use supports_add_constrained_variable in LazyBridgeOptimizer
      • Exposed VariableBridgeCost and ConstraintBridgeCost attributes
      • Prioritize constraining variables on creation according to these costs
      • Refactor bridge debugging
    • Large performance improvements across all submodules
    • Lots of documentation improvements
    • FileFormats improvements:
      • Update MathOptFormat to v0.5
      • Fix supported objectives in FileFormats
    • Testing improvements:
      • Add name option for basic_constraint_test
    • Bug fixes and missing methods
      • Add length for iterators
      • Fix bug with duplicate terms
      • Fix order of LinearOfConstraintIndices

    v0.9.14 (May 30, 2020)

    • Add a solver-independent interface for accessing the set of conflicting constraints an Irreducible Inconsistent Subsystem (#1056).
    • Bump JSONSchema dependency from v0.2 to v0.3 (#1090).
    • Documentation improvements:
      • Fix typos (#1054, #1060, #1061, #1064, #1069, #1070).
      • Remove the outdated recommendation for a package implementing MOI for a solver XXX to be called MathOptInterfaceXXX (#1087).
    • Utilities improvements:
      • Fix is_canonical for quadratic functions (#1081, #1089).
      • Implement add_constrained_variable[s] for CachingOptimizer so that it is added as constrained variables to the underlying optimizer (#1084).
      • Add support for custom objective functions for UniversalFallback (#1086).
      • Deterministic ordering of constraints in UniversalFallback (#1088).
    • Testing improvements:
      • Add NormOneCone/NormInfinityCone tests (#1045).
    • Bridges improvements:
      • Add bridges from Semiinteger and Semicontinuous (#1059).
      • Implement getting ConstraintSet for Variable.FlipSignBridge (#1066).
      • Fix setting ConstraintFunction for Constraint.ScalarizeBridge (#1093).
      • Fix NormOne/NormInf bridges with nonzero constants (#1045).
      • Fix StackOverflow in debug (#1063).
    • FileFormats improvements:
      • [SDPA] Implement the extension for integer variables (#1079).
      • [SDPA] Ignore comments after m and nblocks and detect dat-s extension (#1077).
      • [SDPA] No scaling of off-diagonal coefficient (#1076).
      • [SDPA] Add missing negation of constant (#1075).

    v0.9.13 (March 24, 2020)

    • Added tests for Semicontinuous and Semiinteger variables (#1033).
    • Added tests for using ExprGraphs from NLP evaluators (#1043).
    • Update version compatibilities of dependencies (#1034, #1051, #1052).
    • Fixed typos in documentation (#1044).

    v0.9.12 (February 28, 2020)

    • Fixed writing NLPBlock in MathOptFormat (#1037).
    • Fixed MockOptimizer for result attributes with non-one result index (#1039).
    • Updated test template with instantiate (#1032).

    v0.9.11 (February 21, 2020)

    • Add an option for the model created by Utilities.@model to be a subtype of AbstractOptimizer (#1031).
    • Described dual cone in docstrings of GeoMeanCone and RelativeEntropyCone (#1018, #1028).
    • Fixed typos in documentation (#1022, #1024).
    • Fixed warning of unsupported attribute (#1027).
    • Added more rootdet/logdet conic tests (#1026).
    • Implemented ConstraintDual for Constraint.GeoMeanBridge, Constraint.RootDetBridge and Constraint.LogDetBridge and test duals in tests with GeoMeanCone and RootDetConeTriangle and LogDetConeTriangle cones (#1025, #1026).

    v0.9.10 (January 31, 2020)

    • Added OptimizerWithAttributes grouping an optimizer constructor and a list of optimizer attributes (#1008).
    • Added RelativeEntropyCone with corresponding bridge into exponential cone constraints (#993).
    • Added NormSpectralCone and NormNuclearCone with corresponding bridges into positive semidefinite constraints (#976).
    • Added supports_constrained_variable(s) (#1004).
    • Added dual_set_type (#1002).
    • Added tests for vector specialized version of delete (#989, #1011).
    • Added PSD3 test (#1007).
    • Clarified dual solution of Tests.pow1v and Tests.pow1f (#1013).
    • Added support for EqualTo and Zero in Bridges.Constraint.SplitIntervalBridge (#1005).
    • Fixed Utilities.vectorize for empty vector (#1003).
    • Fixed free variables in LP writer (#1006).

    v0.9.9 (December 29, 2019)

    • Incorporated MathOptFormat.jl as the FileFormats submodule. FileFormats provides readers and writers for a number of standard file formats and MOF, a file format specialized for MOI (#969).
    • Improved performance of deletion of vector of variables in MOI.Utilities.Model (#983).
    • Updated to MutableArithmetics v0.2 (#981).
    • Added MutableArithmetics.promote_operation allocation tests (#975).
    • Fixed inference issue on Julia v1.1 (#982).

    v0.9.8 (December 19, 2019)

    • Implemented MutableArithmetics API (#924).
    • Fixed callbacks with CachingOptimizer (#959).
    • Fixed MOI.dimension for MOI.Complements (#948).
    • Added fallback for add_variables (#972).
    • Added is_diagonal_vectorized_index utility (#965).
    • Improved linear constraints display in manual (#963, #964).
    • Bridges improvements:
      • Added IndicatorSet to SOS1 bridge (#877).
      • Added support for starting values for Variable.VectorizeBridge (#944).
      • Fixed MOI.add_constraints with non-bridged variable constraint on bridged variable (#951).
      • Fixed corner cases and docstring of GeoMeanBridge (#961, #962, #966).
      • Fixed choice between variable or constraint bridges for constrained variables (#973).
      • Improve performance of bridge shortest path (#945, #946, #956).
      • Added docstring for test_delete_bridge (#954).
      • Added Variable bridge tests (#952).

    v0.9.7 (October 30, 2019)

    • Implemented _result_index_field for NLPBlockDual (#934).
    • Fixed copy of model with starting values for vector constraints (#941).
    • Bridges improvements:
      • Improved performance of add_bridge and added has_bridge (#935).
      • Added AbstractSetMapBridge for bridges between sets S1, S2 such that there is a linear map A such that A*S1 = S2 (#933).
      • Added support for starting values for FlipSignBridge, VectorizeBridge, ScalarizeBridge, SlackBridge, SplitIntervalBridge, RSOCBridge, SOCRBridge NormInfinityBridge, SOCtoPSDBridge and RSOCtoPSDBridge (#933, #936, #937, #938, #939).

    v0.9.6 (October 25, 2019)

    • Added complementarity constraints (#913).
    • Allowed ModelLike objects as value of attributes (#928).
    • Testing improvements:
      • Added dual_objective_value option to MOI.Test.TestConfig (#922).
      • Added InvalidIndex tests in basic_constraint_tests (#921).
      • Added tests for the constant term in indicator constraint (#929).
    • Bridges improvements:
      • Added support for starting values for Functionize bridges (#923).
      • Added variable indices context to variable bridges (#920).
      • Fixed a typo in printing o debug_supports (#927).

    v0.9.5 (October 9, 2019)

    • Clarified PrimalStatus/DualStatus to be NO_SOLUTION if result_index is out of bounds (#912).
    • Added tolerance for checks and use ResultCount + 1 for the result_index in MOI.Test.solve_result_status (#910, #917).
    • Use 0.5 instead of 2.0 for power in PowerCone in basic_constraint_test (#916).
    • Bridges improvements:
      • Added debug utilities for unsupported variable/constraint/objective (#861).
      • Fixed deletion of variables in bridged VectorOfVariables constraints (#909).
      • Fixed result_index with objective bridges (#911).

    v0.9.4 (October 2, 2019)

    • Added solver-independent MIP callbacks (#782).
    • Implements submit for Utilities.CachingOptimizer and Bridges.AbstractBridgeOptimizer (#906).
    • Added tests for result count of solution attributes (#901, #904).
    • Added NumberOfThreads attribute (#892).
    • Added Utilities.get_bounds to get the bounds on a variable (#890).
    • Added a note on duplicate coefficients in documentation (#581).
    • Added result index in ConstraintBasisStatus (#898).
    • Added extension dictionary to Utilities.Model (#884, #895).
    • Fixed deletion of constrained variables for CachingOptimizer (#905).
    • Implemented Utilities.shift_constraint for Test.UnknownScalarSet (#896).
    • Bridges improvements:
      • Added Variable.RSOCtoSOCBridge (#907).
      • Implemented MOI.get for ConstraintFunction/ConstraintSet for Bridges.Constraint.SquareBridge (#899).

    v0.9.3 (September 20, 2019)

    • Fixed ambiguity detected in Julia v1.3 (#891, #893).
    • Fixed missing sets from ListOfSupportedConstraints (#880).
    • Fixed copy of VectorOfVariables constraints with duplicate indices (#886).
    • Added extension dictionary to MOIU.Model (#884).
    • Implemented MOI.get for function and set for GeoMeanBridge (#888).
    • Updated documentation for SingleVariable indices and bridges (#885).
    • Testing improvements:
      • Added more comprehensive tests for names (#882).
      • Added tests for SingleVariable duals (#883).
      • Added tests for DualExponentialCone and DualPowerCone (#873).
    • Improvements for arbitrary coefficient type:
      • Fixed == for sets with mutable fields (#887).
      • Removed some Float64 assumptions in bridges (#878).
      • Automatic selection of Constraint.[Scalar|Vector]FunctionizeBridge (#889).

    v0.9.2 (September 5, 2019)

    • Implemented model printing for MOI.ModelLike and specialized it for models defined in MOI (864).
    • Generalized contlinear tests for arbitrary coefficient type (#855).
    • Fixed supports_constraint for Semiinteger and Semicontinuous and supports for ObjectiveFunction (#859).
    • Fixed Allocate-Load copy for single variable constraints (#856).
    • Bridges improvements:
      • Add objective bridges (#789).
      • Fixed Variable.RSOCtoPSDBridge for dimension 2 (#869).
      • Added Variable.SOCtoRSOCBridge (#865).
      • Added Constraint.SOCRBridge and disable MOI.Bridges.Constraint.SOCtoPSDBridge (#751).
      • Fixed added_constraint_types for Contraint.LogDetBridge and Constraint.RootDetBridge (#870).

    v0.9.1 (August 22, 2019)

    • Fix support for Julia v1.2 (#834).
    • L1 and L∞ norm epigraph cones and corresponding bridges to LP were added (#818).
    • Added tests to MOI.Test.nametest (#833).
    • Fix MOI.Test.soc3test for solvers not supporting infeasibility certificates (#839).
    • Implements operate for operators * and / between vector function and constant (#837).
    • Implements show for MOI.Utilities.IndexMap (#847).
    • Fix corner cases for mapping of variables in MOI.Utilities.CachingOptimizer and substitution of variables in MOI.Bridges.AbstractBridgeOptimizer (#848).
    • Fix transformation of constant terms for MOI.Bridges.Constraint.SOCtoPSDBridge and MOI.Bridges.Constraint.RSOCtoPSDBridge (#840).

    v0.9.0 (August 13, 2019)

    • Support for Julia v0.6 and v0.7 was dropped (#714, #717).
    • A MOI.Utilities.Model implementation of ModelLike, this should replace most use cases of MOI.Utilities.@model (#781).
    • add_constrained_variable and add_constrained_variables were added (#759).
    • Support for indicator constraints was added (#709, #712).
    • DualObjectiveValue attribute was added (#473).
    • RawParameter attribute was added (#733).
    • A dual_set function was added (#804).
    • A Benchmarks submodule was added to facilitate solver benchmarking (#769).
    • A submit function was added, this may for instance allow the user to submit solutions or cuts to the solver from a callback (#775).
    • The field of ObjectiveValue was renamed to result_index (#729).
    • The _constant and Utilities.getconstant function were renamed to constant
    • REDUCTION_CERTIFICATE result status was added (#734).
    • Abstract matrix sets were added (#731).
    • Testing improvements:
      • The testing guideline was updated (#728).
      • Quadratic tests were added (#697).
      • Unit tests for RawStatusString, SolveTime, Silent and SolverName were added (#726, #741).
      • A rotated second-order cone test was added (#759).
      • A power cone test was added (#768).
      • Tests for ZeroOne variables with variable bounds were added (#772).
      • An unbounded test was added (#773).
      • Existing tests had a few updates (#702, #703, #763).
    • Documentation improvements:
      • Added a section on CachingOptimizer (#777).
      • Added a section on UniversalFallback, Model and @model (#762).
      • Transition the knapsack example to a doctest with MockOptimizer (#786).
    • Utilities improvements:
      • A CleverDict utility was added for a vector that automatically transform into a dictionary once a first index is removed (#767).
      • The Utilities.constant function was renamed to Utilities.constant_vector (#740).
      • Implement optimizer attributes for CachingOptimizer (#745).
      • Rename Utilities.add_scalar_constraint to Utilities.normalize_and_add_constraint (#801).
      • operate with vcat, SingleVariable and VectorOfVariables now returns a VectorOfVariables (#616).
      • Fix a type piracy of operate (#784).
      • The load_constraint fallback signature was fixed (#760).
      • The set_dot function was extended to work with sparse arrays (#805).
    • Bridges improvements:
      • The bridges no longer store the constraint function and set before it is bridged, the bridges now have to implement ConstraintFunction and ConstraintSet if the user wants to recover them. As a consequence, the @bridge macro was removed (#722).
      • Bridge are now instantiated with a bridge_constraint function instead of using a constructor (#730).
      • Fix constraint attributes for bridges (#699).
      • Constraint bridges were moved to the Bridges/Constraint submodule so they should now inherit from MOI.Bridges.Constraint.Abstract and should implement MOI.Bridges.Constraint.concrete_bridge_type instead of MOI.Bridges.concrete_bridge_type (#756).
      • Variable bridges were added in (#759).
      • Various improvements (#746, #747).

    v0.8.4 (March 13, 2019)

    • Performance improvement in default_copy_to and bridge optimizer (#696).
    • Add Silent and implement setting optimizer attributes in caching and mock optimizers (#695).
    • Add Functionize bridges (SingleVariable and VectorOfVariables) (#659).
    • Minor typo fixes (#694).

    v0.8.3 (March 6, 2019)

    • Use zero constant in scalar constraint function of MOI.Test.copytest (#691).
    • Fix variable deletion with SingleVariable objective function (#690).
    • Fix LazyBridgeOptimizer with bridges that add no constraints (#689).
    • Error message improvements (#673, #685, #686, #688).
    • Documentation improvements (#682, #683, #687).
    • Basis status:
      • Remove VariableBasisStatus (#679).
      • Test ConstraintBasisStatus and implement it in bridges (#678).
    • Fix inference of NumberOfVariables and NumberOfConstraints (#677).
    • Implement division between a quadratic function and a number (#675).

    v0.8.2 (February 7, 2019)

    • Add RawStatusString attribute (#629).
    • Do not set names to the optimizer but only to the cache in CachingOptimizer (#638).
    • Make scalar MOI functions act as scalars in broadcast (#646).
    • Add function utilities:
      • Implement Base.zero (#634), Base.iszero (#643), add missing arithmetic operations (#644, #645) and fix division (#648).
      • Add a vectorize function that turns a vector of ScalarAffineFunction into a VectorAffineFunction (#642).
    • Improve support for starting values:
      • Show a warning in copy when starting values are not supported instead of throwing an error (#630).
      • Fix UniversalFallback for getting an variable or constraint attribute set to no indices (#623).
      • Add a test in contlineartest with partially set VariablePrimalStart.
    • Bridges improvements:
      • Fix StackOverFlow in LazyBridgeOptimizer when there is a cycle in the graph of bridges.
      • Add Slack bridges (#610, #650).
      • Add FlipSign bridges (#658).
    • Add tests with duplicate coefficients in ScalarAffineFunction and VectorAffineFunction (#639).
    • Use tolerance to compare VariablePrimal in rotatedsoc1 test (#632).
    • Use a zero constant in ScalarAffineFunction of constraints in psdt2 (#622).

    v0.8.1 (January 7, 2019)

    • Adding an NLP objective now overrides any objective set using the ObjectiveFunction attribute (#619).
    • Rename fullbridgeoptimizer into full_bridge_optimizer (#621).
    • Allow custom constraint types with full_bridge_optimizer (#617).
    • Add Vectorize bridge which transforms scalar linear constraints into vector linear constraints (#615).

    v0.8.0 (December 18, 2018)

    • Rename all enum values to follow the JuMP naming guidelines for constants, for example, Optimal becomes OPTIMAL, and DualInfeasible becomes DUAL_INFEASIBLE.
    • Rename CachingOptimizer methods for style compliance.
    • Add an MOI.TerminationStatusCode called ALMOST_DUAL_INFEASIBLE.

    v0.7.0 (December 13, 2018)

    • Test that MOI.TerminationStatus is MOI.OptimizeNotCalled before MOI.optimize! is called.
    • Check supports_default_copy_to in tests (#594).
    • Key pieces of information like optimality, infeasibility, etc., are now reported through TerminationStatusCode. It is typically no longer necessary to check the result statuses in addition to the termination status.
    • Add perspective dimension to log-det cone (#593).

    v0.6.4 (November 27, 2018)

    • Add OptimizeNotCalled termination status (#577) and improve documentation of other statuses (#575).
    • Add a solver naming guideline (#578).
    • Make FeasibilitySense the default ObjectiveSense (#579).
    • Fix Utilities.@model and Bridges.@bridge macros for functions and sets defined outside MOI (#582).
    • Document solver-specific attributes (#580) and implement them in Utilities.CachingOptimizer (#565).

    v0.6.3 (November 16, 2018)

    • Variables and constraints are now allowed to have duplicate names. An error is thrown only on lookup. This change breaks some existing tests. (#549)
    • Attributes may now be partially set (some values could be nothing). (#563)
    • Performance improvements in Utilities.Model (#549, #567, #568)
    • Fix bug in QuadtoSOC (#558).
    • New supports_default_copy_to method that optimizers should implement to control caching behavior.
    • Documentation improvements.

    v0.6.2 (October 26, 2018)

    • Improve hygiene of @model macro (#544).
    • Fix bug in copy tests (#543).
    • Fix bug in UniversalFallback attribute getter (#540).
    • Allow all correct solutions for solve_blank_obj unit test (#537).
    • Add errors for Allocate-Load and bad constraints (#534).
    • [performance] Add specialized implementation of hash for VariableIndex (#533).
    • [performance] Construct the name to object dictionaries lazily in model (#535).
    • Add the QuadtoSOC bridge which transforms ScalarQuadraticFunction constraints into RotatedSecondOrderCone (#483).

    v0.6.1 (September 22, 2018)

    • Enable PositiveSemidefiniteConeSquare set and quadratic functions in MOIB.fullbridgeoptimizer (#524).
    • Add warning in the bridge between PositiveSemidefiniteConeSquare and PositiveSemidefiniteConeTriangle when the matrix is almost symmetric (#522).
    • Modify MOIT.copytest to not add multiples constraints on the same variable (#521).
    • Add missing keyword argument in one of MOIU.add_scalar_constraint methods (#520).

    v0.6.0 (August 30, 2018)

    • The MOIU.@model and MOIB.@bridge macros now support functions and sets defined in external modules. As a consequence, function and set names in the macro arguments need to be prefixed by module name.
    • Rename functions according to the JuMP style guide:
      • copy! with keyword arguments copynames and warnattributes -> copy_to with keyword arguments copy_names and warn_attributes;
      • set! -> set;
      • addvariable[s]! -> add_variable[s];
      • supportsconstraint -> supports_constraint;
      • addconstraint[s]! -> add_constraint[s];
      • isvalid -> is_valid;
      • isempty -> is_empty;
      • Base.delete! -> delete;
      • modify! -> modify;
      • transform! -> transform;
      • initialize! -> initialize;
      • write -> write_to_file; and
      • read! -> read_from_file.
    • Remove free! (use Base.finalize instead).
    • Add the SquarePSD bridge which transforms PositiveSemidefiniteConeTriangle constraints into PositiveSemidefiniteConeTriangle.
    • Add result fallback for ConstraintDual of variable-wise constraint, ConstraintPrimal and ObjectiveValue.
    • Add tests for ObjectiveBound.
    • Add test for empty rows in vector linear constraint.
    • Rework errors: CannotError has been renamed NotAllowedError and the distinction between UnsupportedError and NotAllowedError is now about whether the element is not supported (for example, it cannot be copied a model containing this element) or the operation is not allowed (either because it is not implemented, because it cannot be performed in the current state of the model, or because it cannot be performed for a specific index)
    • canget is removed. NoSolution is added as a result status to indicate that the solver does not have either a primal or dual solution available (See #479).

    v0.5.0 (August 5, 2018)

    • Fix names with CachingOptimizer.
    • Cleanup thanks to @mohamed82008.
    • Added a universal fallback for constraints.
    • Fast utilities for function canonicalization thanks to @rdeits.
    • Renamed dimension field to side_dimension in the context of matrix-like sets.
    • New and improved tests for cases like duplicate terms and ObjectiveBound.
    • Removed cantransform, canaddconstraint, canaddvariable, canset, canmodify, and candelete functions from the API. They are replaced by a new set of errors that are thrown: Subtypes of UnsupportedError indicate unsupported operations, while subtypes of CannotError indicate operations that cannot be performed in the current state.
    • The API for copy! is updated to remove the CopyResult type.
    • Updates for the new JuMP style guide.

    v0.4.1 (June 28, 2018)

    • Fixes vector function modification on 32 bits.
    • Fixes Bellman-Ford algorithm for bridges.
    • Added an NLP test with FeasibilitySense.
    • Update modification documentation.

    v0.4.0 (June 23, 2018)

    • Helper constructors for VectorAffineTerm and VectorQuadraticTerm.
    • Added modify_lhs to TestConfig.
    • Additional unit tests for optimizers.
    • Added a type parameter to CachingOptimizer for the optimizer field.
    • New API for problem modification (#388)
    • Tests pass without deprecation warnings on Julia 0.7.
    • Small fixes and documentation updates.

    v0.3.0 (May 25, 2018)

    • Functions have been redefined to use arrays-of-structs instead of structs-of-arrays.
    • Improvements to MockOptimizer.
    • Significant changes to Bridges.
    • New and improved unit tests.
    • Fixes for Julia 0.7.

    v0.2.0 (April 24, 2018)

    • Improvements to and better coverage of Tests.
    • Documentation fixes.
    • SolverName attribute.
    • Changes to the NLP interface (new definition of variable order and arrays of structs for bound pairs and sparsity patterns).
    • Addition of NLP tests.
    • Introduction of UniversalFallback.
    • copynames keyword argument to MOI.copy!.
    • Add Bridges submodule.

    v0.1.0 (February 28, 2018)

    • Initial public release.
    • The framework for MOI was developed at the JuMP-dev workshop at MIT in June 2017 as a sorely needed replacement for MathProgBase.
    diff --git a/dev/moi/developer/checklists/index.html b/dev/moi/developer/checklists/index.html index 9d8cb46c747..399babfedc6 100644 --- a/dev/moi/developer/checklists/index.html +++ b/dev/moi/developer/checklists/index.html @@ -112,4 +112,4 @@ ## Documentation - - [ ] The version fields are updated in `docs/src/submodules/FileFormats/overview.md` + - [ ] The version fields are updated in `docs/src/submodules/FileFormats/overview.md` diff --git a/dev/moi/index.html b/dev/moi/index.html index 1e74d8eb9aa..78273a5d895 100644 --- a/dev/moi/index.html +++ b/dev/moi/index.html @@ -10,4 +10,4 @@ year={2021}, doi={10.1287/ijoc.2021.1067}, publisher={INFORMS} -}

    A preprint of this paper is freely available.

    +}

    A preprint of this paper is freely available.

    diff --git a/dev/moi/manual/constraints/index.html b/dev/moi/manual/constraints/index.html index 987df2566b0..4dbb6b3140a 100644 --- a/dev/moi/manual/constraints/index.html +++ b/dev/moi/manual/constraints/index.html @@ -23,4 +23,4 @@ false

    Constraint attributes

    The following attributes are available for constraints:

    Get and set these attributes using get and set.

    julia> MOI.set(model, MOI.ConstraintName(), c, "con_c")
     
     julia> MOI.get(model, MOI.ConstraintName(), c)
    -"con_c"

    Constraints by function-set pairs

    Below is a list of common constraint types and how they are represented as function-set pairs in MOI. In the notation below, $x$ is a vector of decision variables, $x_i$ is a scalar decision variable, $\alpha, \beta$ are scalar constants, $a, b$ are constant vectors, A is a constant matrix and $\mathbb{R}_+$ (resp. $\mathbb{R}_-$) is the set of non-negative (resp. non-positive) real numbers.

    Linear constraints

    Mathematical ConstraintMOI FunctionMOI Set
    $a^Tx \le \beta$ScalarAffineFunctionLessThan
    $a^Tx \ge \alpha$ScalarAffineFunctionGreaterThan
    $a^Tx = \beta$ScalarAffineFunctionEqualTo
    $\alpha \le a^Tx \le \beta$ScalarAffineFunctionInterval
    $x_i \le \beta$VariableIndexLessThan
    $x_i \ge \alpha$VariableIndexGreaterThan
    $x_i = \beta$VariableIndexEqualTo
    $\alpha \le x_i \le \beta$VariableIndexInterval
    $Ax + b \in \mathbb{R}_+^n$VectorAffineFunctionNonnegatives
    $Ax + b \in \mathbb{R}_-^n$VectorAffineFunctionNonpositives
    $Ax + b = 0$VectorAffineFunctionZeros

    By convention, solvers are not expected to support nonzero constant terms in the ScalarAffineFunctions the first four rows of the preceding table because they are redundant with the parameters of the sets. For example, encode $2x + 1 \le 2$ as $2x \le 1$.

    Constraints with VariableIndex in LessThan, GreaterThan, EqualTo, or Interval sets have a natural interpretation as variable bounds. As such, it is typically not natural to impose multiple lower- or upper-bounds on the same variable, and the solver interfaces will throw respectively LowerBoundAlreadySet or UpperBoundAlreadySet.

    Moreover, adding two VariableIndex constraints on the same variable with the same set is impossible because they share the same index as it is the index of the variable, see ConstraintIndex.

    It is natural, however, to impose upper- and lower-bounds separately as two different constraints on a single variable. The difference between imposing bounds by using a single Interval constraint and by using separate LessThan and GreaterThan constraints is that the latter will allow the solver to return separate dual multipliers for the two bounds, while the former will allow the solver to return only a single dual for the interval constraint.

    Conic constraints

    Mathematical ConstraintMOI FunctionMOI Set
    $\lVert Ax + b\rVert_2 \le c^Tx + d$VectorAffineFunctionSecondOrderCone
    $y \ge \lVert x \rVert_2$VectorOfVariablesSecondOrderCone
    $2yz \ge \lVert x \rVert_2^2, y,z \ge 0$VectorOfVariablesRotatedSecondOrderCone
    $(a_1^Tx + b_1,a_2^Tx + b_2,a_3^Tx + b_3) \in \mathcal{E}$VectorAffineFunctionExponentialCone
    $A(x) \in \mathcal{S}_+$VectorAffineFunctionPositiveSemidefiniteConeTriangle
    $B(x) \in \mathcal{S}_+$VectorAffineFunctionPositiveSemidefiniteConeSquare
    $x \in \mathcal{S}_+$VectorOfVariablesPositiveSemidefiniteConeTriangle
    $x \in \mathcal{S}_+$VectorOfVariablesPositiveSemidefiniteConeSquare

    where $\mathcal{E}$ is the exponential cone (see ExponentialCone), $\mathcal{S}_+$ is the set of positive semidefinite symmetric matrices, $A$ is an affine map that outputs symmetric matrices and $B$ is an affine map that outputs square matrices.

    Quadratic constraints

    Mathematical ConstraintMOI FunctionMOI Set
    $\frac{1}{2}x^TQx + a^Tx + b \ge 0$ScalarQuadraticFunctionGreaterThan
    $\frac{1}{2}x^TQx + a^Tx + b \le 0$ScalarQuadraticFunctionLessThan
    $\frac{1}{2}x^TQx + a^Tx + b = 0$ScalarQuadraticFunctionEqualTo
    Bilinear matrix inequalityVectorQuadraticFunctionPositiveSemidefiniteCone...
    Note

    For more details on the internal format of the quadratic functions see ScalarQuadraticFunction or VectorQuadraticFunction.

    Discrete and logical constraints

    Mathematical ConstraintMOI FunctionMOI Set
    $x_i \in \mathbb{Z}$VariableIndexInteger
    $x_i \in \{0,1\}$VariableIndexZeroOne
    $x_i \in \{0\} \cup [l,u]$VariableIndexSemicontinuous
    $x_i \in \{0\} \cup \{l,l+1,\ldots,u-1,u\}$VariableIndexSemiinteger
    At most one component of $x$ can be nonzeroVectorOfVariablesSOS1
    At most two components of $x$ can be nonzero, and if so they must be adjacent componentsVectorOfVariablesSOS2
    $y = 1 \implies a^T x \in S$VectorAffineFunctionIndicator

    JuMP mapping

    The following bullet points show examples of how JuMP constraints are translated into MOI function-set pairs:

    • @constraint(m, 2x + y <= 10) becomes ScalarAffineFunction-in-LessThan
    • @constraint(m, 2x + y >= 10) becomes ScalarAffineFunction-in-GreaterThan
    • @constraint(m, 2x + y == 10) becomes ScalarAffineFunction-in-EqualTo
    • @constraint(m, 0 <= 2x + y <= 10) becomes ScalarAffineFunction-in-Interval
    • @constraint(m, 2x + y in ArbitrarySet()) becomes ScalarAffineFunction-in-ArbitrarySet.

    Variable bounds are handled in a similar fashion:

    • @variable(m, x <= 1) becomes VariableIndex-in-LessThan
    • @variable(m, x >= 1) becomes VariableIndex-in-GreaterThan

    One notable difference is that a variable with an upper and lower bound is translated into two constraints, rather than an interval, that is:

    • @variable(m, 0 <= x <= 1) becomes VariableIndex-in-LessThan and VariableIndex-in-GreaterThan.
    +"con_c"

    Constraints by function-set pairs

    Below is a list of common constraint types and how they are represented as function-set pairs in MOI. In the notation below, $x$ is a vector of decision variables, $x_i$ is a scalar decision variable, $\alpha, \beta$ are scalar constants, $a, b$ are constant vectors, A is a constant matrix and $\mathbb{R}_+$ (resp. $\mathbb{R}_-$) is the set of non-negative (resp. non-positive) real numbers.

    Linear constraints

    Mathematical ConstraintMOI FunctionMOI Set
    $a^Tx \le \beta$ScalarAffineFunctionLessThan
    $a^Tx \ge \alpha$ScalarAffineFunctionGreaterThan
    $a^Tx = \beta$ScalarAffineFunctionEqualTo
    $\alpha \le a^Tx \le \beta$ScalarAffineFunctionInterval
    $x_i \le \beta$VariableIndexLessThan
    $x_i \ge \alpha$VariableIndexGreaterThan
    $x_i = \beta$VariableIndexEqualTo
    $\alpha \le x_i \le \beta$VariableIndexInterval
    $Ax + b \in \mathbb{R}_+^n$VectorAffineFunctionNonnegatives
    $Ax + b \in \mathbb{R}_-^n$VectorAffineFunctionNonpositives
    $Ax + b = 0$VectorAffineFunctionZeros

    By convention, solvers are not expected to support nonzero constant terms in the ScalarAffineFunctions the first four rows of the preceding table because they are redundant with the parameters of the sets. For example, encode $2x + 1 \le 2$ as $2x \le 1$.

    Constraints with VariableIndex in LessThan, GreaterThan, EqualTo, or Interval sets have a natural interpretation as variable bounds. As such, it is typically not natural to impose multiple lower- or upper-bounds on the same variable, and the solver interfaces will throw respectively LowerBoundAlreadySet or UpperBoundAlreadySet.

    Moreover, adding two VariableIndex constraints on the same variable with the same set is impossible because they share the same index as it is the index of the variable, see ConstraintIndex.

    It is natural, however, to impose upper- and lower-bounds separately as two different constraints on a single variable. The difference between imposing bounds by using a single Interval constraint and by using separate LessThan and GreaterThan constraints is that the latter will allow the solver to return separate dual multipliers for the two bounds, while the former will allow the solver to return only a single dual for the interval constraint.

    Conic constraints

    Mathematical ConstraintMOI FunctionMOI Set
    $\lVert Ax + b\rVert_2 \le c^Tx + d$VectorAffineFunctionSecondOrderCone
    $y \ge \lVert x \rVert_2$VectorOfVariablesSecondOrderCone
    $2yz \ge \lVert x \rVert_2^2, y,z \ge 0$VectorOfVariablesRotatedSecondOrderCone
    $(a_1^Tx + b_1,a_2^Tx + b_2,a_3^Tx + b_3) \in \mathcal{E}$VectorAffineFunctionExponentialCone
    $A(x) \in \mathcal{S}_+$VectorAffineFunctionPositiveSemidefiniteConeTriangle
    $B(x) \in \mathcal{S}_+$VectorAffineFunctionPositiveSemidefiniteConeSquare
    $x \in \mathcal{S}_+$VectorOfVariablesPositiveSemidefiniteConeTriangle
    $x \in \mathcal{S}_+$VectorOfVariablesPositiveSemidefiniteConeSquare

    where $\mathcal{E}$ is the exponential cone (see ExponentialCone), $\mathcal{S}_+$ is the set of positive semidefinite symmetric matrices, $A$ is an affine map that outputs symmetric matrices and $B$ is an affine map that outputs square matrices.

    Quadratic constraints

    Mathematical ConstraintMOI FunctionMOI Set
    $\frac{1}{2}x^TQx + a^Tx + b \ge 0$ScalarQuadraticFunctionGreaterThan
    $\frac{1}{2}x^TQx + a^Tx + b \le 0$ScalarQuadraticFunctionLessThan
    $\frac{1}{2}x^TQx + a^Tx + b = 0$ScalarQuadraticFunctionEqualTo
    Bilinear matrix inequalityVectorQuadraticFunctionPositiveSemidefiniteCone...
    Note

    For more details on the internal format of the quadratic functions see ScalarQuadraticFunction or VectorQuadraticFunction.

    Discrete and logical constraints

    Mathematical ConstraintMOI FunctionMOI Set
    $x_i \in \mathbb{Z}$VariableIndexInteger
    $x_i \in \{0,1\}$VariableIndexZeroOne
    $x_i \in \{0\} \cup [l,u]$VariableIndexSemicontinuous
    $x_i \in \{0\} \cup \{l,l+1,\ldots,u-1,u\}$VariableIndexSemiinteger
    At most one component of $x$ can be nonzeroVectorOfVariablesSOS1
    At most two components of $x$ can be nonzero, and if so they must be adjacent componentsVectorOfVariablesSOS2
    $y = 1 \implies a^T x \in S$VectorAffineFunctionIndicator

    JuMP mapping

    The following bullet points show examples of how JuMP constraints are translated into MOI function-set pairs:

    • @constraint(m, 2x + y <= 10) becomes ScalarAffineFunction-in-LessThan
    • @constraint(m, 2x + y >= 10) becomes ScalarAffineFunction-in-GreaterThan
    • @constraint(m, 2x + y == 10) becomes ScalarAffineFunction-in-EqualTo
    • @constraint(m, 0 <= 2x + y <= 10) becomes ScalarAffineFunction-in-Interval
    • @constraint(m, 2x + y in ArbitrarySet()) becomes ScalarAffineFunction-in-ArbitrarySet.

    Variable bounds are handled in a similar fashion:

    • @variable(m, x <= 1) becomes VariableIndex-in-LessThan
    • @variable(m, x >= 1) becomes VariableIndex-in-GreaterThan

    One notable difference is that a variable with an upper and lower bound is translated into two constraints, rather than an interval, that is:

    • @variable(m, 0 <= x <= 1) becomes VariableIndex-in-LessThan and VariableIndex-in-GreaterThan.
    diff --git a/dev/moi/manual/models/index.html b/dev/moi/manual/models/index.html index 29e6dd82662..9497870a8cc 100644 --- a/dev/moi/manual/models/index.html +++ b/dev/moi/manual/models/index.html @@ -3,4 +3,4 @@ function gtag(){dataLayer.push(arguments);} gtag('js', new Date()); gtag('config', 'G-0RZ8X3D3D0', {'page_path': location.pathname + location.search + location.hash}); -

    Models

    The most significant part of MOI is the definition of the model API that is used to specify an instance of an optimization problem (for example, by adding variables and constraints). Objects that implement the model API must inherit from the ModelLike abstract type.

    Notably missing from the model API is the method to solve an optimization problem. ModelLike objects may store an instance (for example, in memory or backed by a file format) without being linked to a particular solver. In addition to the model API, MOI defines AbstractOptimizer and provides methods to solve the model and interact with solutions. See the Solutions section for more details.

    Info

    Throughout the rest of the manual, model is used as a generic ModelLike, and optimizer is used as a generic AbstractOptimizer.

    Tip

    MOI does not export functions, but for brevity we often omit qualifying names with the MOI module. Best practice is to have

    import MathOptInterface as MOI

    and prefix all MOI methods with MOI. in user code. If a name is also available in base Julia, we always explicitly use the module prefix, for example, with MOI.get.

    Attributes

    Attributes are properties of the model that can be queried and modified. These include constants such as the number of variables in a model NumberOfVariables), and properties of variables and constraints such as the name of a variable (VariableName).

    There are four types of attributes:

    Some attributes are values that can be queried by the user but not modified, while other attributes can be modified by the user.

    All interactions with attributes occur through the get and set functions.

    Consult the docstrings of each attribute for information on what it represents.

    ModelLike API

    The following attributes are available:

    AbstractOptimizer API

    The following attributes are available:

    +

    Models

    The most significant part of MOI is the definition of the model API that is used to specify an instance of an optimization problem (for example, by adding variables and constraints). Objects that implement the model API must inherit from the ModelLike abstract type.

    Notably missing from the model API is the method to solve an optimization problem. ModelLike objects may store an instance (for example, in memory or backed by a file format) without being linked to a particular solver. In addition to the model API, MOI defines AbstractOptimizer and provides methods to solve the model and interact with solutions. See the Solutions section for more details.

    Info

    Throughout the rest of the manual, model is used as a generic ModelLike, and optimizer is used as a generic AbstractOptimizer.

    Tip

    MOI does not export functions, but for brevity we often omit qualifying names with the MOI module. Best practice is to have

    import MathOptInterface as MOI

    and prefix all MOI methods with MOI. in user code. If a name is also available in base Julia, we always explicitly use the module prefix, for example, with MOI.get.

    Attributes

    Attributes are properties of the model that can be queried and modified. These include constants such as the number of variables in a model NumberOfVariables), and properties of variables and constraints such as the name of a variable (VariableName).

    There are four types of attributes:

    Some attributes are values that can be queried by the user but not modified, while other attributes can be modified by the user.

    All interactions with attributes occur through the get and set functions.

    Consult the docstrings of each attribute for information on what it represents.

    ModelLike API

    The following attributes are available:

    AbstractOptimizer API

    The following attributes are available:

    diff --git a/dev/moi/manual/modification/index.html b/dev/moi/manual/modification/index.html index 05503605c2b..3a1e248643a 100644 --- a/dev/moi/manual/modification/index.html +++ b/dev/moi/manual/modification/index.html @@ -152,4 +152,4 @@ ); julia> MOI.get(model, MOI.ConstraintFunction(), c) ≈ new_f -true +true diff --git a/dev/moi/manual/solutions/index.html b/dev/moi/manual/solutions/index.html index 718fc544558..02375be51bd 100644 --- a/dev/moi/manual/solutions/index.html +++ b/dev/moi/manual/solutions/index.html @@ -36,4 +36,4 @@ end rethrow(err) # Something else went wrong. Rethrow the error end -end +end diff --git a/dev/moi/manual/standard_form/index.html b/dev/moi/manual/standard_form/index.html index ed2567d8030..394d6d76e88 100644 --- a/dev/moi/manual/standard_form/index.html +++ b/dev/moi/manual/standard_form/index.html @@ -7,4 +7,4 @@ & \min_{x \in \mathbb{R}^n} & f_0(x) \\ & \;\;\text{s.t.} & f_i(x) & \in \mathcal{S}_i & i = 1 \ldots m -\end{align}\]

    where:

    • the functions $f_0, f_1, \ldots, f_m$ are specified by AbstractFunction objects
    • the sets $\mathcal{S}_1, \ldots, \mathcal{S}_m$ are specified by AbstractSet objects
    Tip

    For more information on this standard form, read our paper.

    MOI defines some commonly used functions and sets, but the interface is extensible to other sets recognized by the solver.

    Functions

    The function types implemented in MathOptInterface.jl are:

    FunctionDescription
    VariableIndex$x_j$, the projection onto a single coordinate defined by a variable index $j$.
    VectorOfVariablesThe projection onto multiple coordinates (that is, extracting a sub-vector).
    ScalarAffineFunction$a^T x + b$, where $a$ is a vector and $b$ scalar.
    ScalarNonlinearFunction$f(x)$, where $f$ is a nonlinear function.
    VectorAffineFunction$A x + b$, where $A$ is a matrix and $b$ is a vector.
    ScalarQuadraticFunction$\frac{1}{2} x^T Q x + a^T x + b$, where $Q$ is a symmetric matrix, $a$ is a vector, and $b$ is a constant.
    VectorQuadraticFunctionA vector of scalar-valued quadratic functions.
    VectorNonlinearFunction$f(x)$, where $f$ is a vector-valued nonlinear function.

    Extensions for nonlinear programming are present but not yet well documented.

    One-dimensional sets

    The one-dimensional set types implemented in MathOptInterface.jl are:

    SetDescription
    LessThan(u)$(-\infty, u]$
    GreaterThan(l)$[l, \infty)$
    EqualTo(v)$\{v\}$
    Interval(l, u)$[l, u]$
    Integer()$\mathbb{Z}$
    ZeroOne()$\{ 0, 1 \}$
    Semicontinuous(l, u)$\{ 0\} \cup [l, u]$
    Semiinteger(l, u)$\{ 0\} \cup \{l,l+1,\ldots,u-1,u\}$

    Vector cones

    The vector-valued set types implemented in MathOptInterface.jl are:

    SetDescription
    Reals(d)$\mathbb{R}^{d}$
    Zeros(d)$0^{d}$
    Nonnegatives(d)$\{ x \in \mathbb{R}^{d} : x \ge 0 \}$
    Nonpositives(d)$\{ x \in \mathbb{R}^{d} : x \le 0 \}$
    SecondOrderCone(d)$\{ (t,x) \in \mathbb{R}^{d} : t \ge \lVert x \rVert_2 \}$
    RotatedSecondOrderCone(d)$\{ (t,u,x) \in \mathbb{R}^{d} : 2tu \ge \lVert x \rVert_2^2, t \ge 0,u \ge 0 \}$
    ExponentialCone()$\{ (x,y,z) \in \mathbb{R}^3 : y \exp (x/y) \le z, y > 0 \}$
    DualExponentialCone()$\{ (u,v,w) \in \mathbb{R}^3 : -u \exp (v/u) \le \exp(1) w, u < 0 \}$
    GeometricMeanCone(d)$\{ (t,x) \in \mathbb{R}^{1+n} : x \ge 0, t \le \sqrt[n]{x_1 x_2 \cdots x_n} \}$ where $n$ is $d - 1$
    PowerCone(α)$\{ (x,y,z) \in \mathbb{R}^3 : x^{\alpha} y^{1-\alpha} \ge |z|, x \ge 0,y \ge 0 \}$
    DualPowerCone(α)$\{ (u,v,w) \in \mathbb{R}^3 : \left(\frac{u}{\alpha}\right)^{\alpha}\left(\frac{v}{1-\alpha}\right)^{1-\alpha} \ge |w|, u,v \ge 0 \}$
    NormOneCone(d)$\{ (t,x) \in \mathbb{R}^{d} : t \ge \sum_i \lvert x_i \rvert \}$
    NormInfinityCone(d)$\{ (t,x) \in \mathbb{R}^{d} : t \ge \max_i \lvert x_i \rvert \}$
    RelativeEntropyCone(d)$\{ (u, v, w) \in \mathbb{R}^{d} : u \ge \sum_i w_i \log (\frac{w_i}{v_i}), v_i \ge 0, w_i \ge 0 \}$
    HyperRectangle(l, u)$\{x \in \bar{\mathbb{R}}^d: x_i \in [l_i, u_i] \forall i=1,\ldots,d\}$
    NormCone(p, d)$\{ (t,x) \in \mathbb{R}^{d} : t \ge \left(\sum\limits_i \lvert x_i \rvert^p\right)^{\frac{1}{p}} \}$

    Matrix cones

    The matrix-valued set types implemented in MathOptInterface.jl are:

    SetDescription
    RootDetConeTriangle(d)$\{ (t,X) \in \mathbb{R}^{1+d(1+d)/2} : t \le \det(X)^{1/d}, X \mbox{ is the upper triangle of a PSD matrix} \}$
    RootDetConeSquare(d)$\{ (t,X) \in \mathbb{R}^{1+d^2} : t \le \det(X)^{1/d}, X \mbox{ is a PSD matrix} \}$
    PositiveSemidefiniteConeTriangle(d)$\{ X \in \mathbb{R}^{d(d+1)/2} : X \mbox{ is the upper triangle of a PSD matrix} \}$
    PositiveSemidefiniteConeSquare(d)$\{ X \in \mathbb{R}^{d^2} : X \mbox{ is a PSD matrix} \}$
    LogDetConeTriangle(d)$\{ (t,u,X) \in \mathbb{R}^{2+d(1+d)/2} : t \le u\log(\det(X/u)), X \mbox{ is the upper triangle of a PSD matrix}, u > 0 \}$
    LogDetConeSquare(d)$\{ (t,u,X) \in \mathbb{R}^{2+d^2} : t \le u \log(\det(X/u)), X \mbox{ is a PSD matrix}, u > 0 \}$
    NormSpectralCone(r, c)$\{ (t, X) \in \mathbb{R}^{1 + r \times c} : t \ge \sigma_1(X), X \mbox{ is a } r\times c\mbox{ matrix} \}$
    NormNuclearCone(r, c)$\{ (t, X) \in \mathbb{R}^{1 + r \times c} : t \ge \sum_i \sigma_i(X), X \mbox{ is a } r\times c\mbox{ matrix} \}$
    HermitianPositiveSemidefiniteConeTriangle(d)The cone of Hermitian positive semidefinite matrices, with
    side_dimension rows and columns.
    Scaled(S)The set S scaled so that Utilities.set_dot corresponds to LinearAlgebra.dot

    Some of these cones can take two forms: XXXConeTriangle and XXXConeSquare.

    In XXXConeTriangle sets, the matrix is assumed to be symmetric, and the elements are provided by a vector, in which the entries of the upper-right triangular part of the matrix are given column by column (or equivalently, the entries of the lower-left triangular part are given row by row).

    In XXXConeSquare sets, the entries of the matrix are given column by column (or equivalently, row by row), and the matrix is constrained to be symmetric. As an example, given a 2-by-2 matrix of variables X and a one-dimensional variable t, we can specify a root-det constraint as [t, X11, X12, X22] ∈ RootDetConeTriangle or [t, X11, X12, X21, X22] ∈ RootDetConeSquare.

    We provide both forms to enable flexibility for solvers who may natively support one or the other. Transformations between XXXConeTriangle and XXXConeSquare are handled by bridges, which removes the chance of conversion mistakes by users or solver developers.

    Multi-dimensional sets with combinatorial structure

    Other sets are vector-valued, with a particular combinatorial structure. Read their docstrings for more information on how to interpret them.

    SetDescription
    SOS1A Special Ordered Set (SOS) of Type I
    SOS2A Special Ordered Set (SOS) of Type II
    IndicatorA set to specify an indicator constraint
    ComplementsA set to specify a mixed complementarity constraint
    AllDifferentThe all_different global constraint
    BinPackingThe bin_packing global constraint
    CircuitThe circuit global constraint
    CountAtLeastThe at_least global constraint
    CountBelongsThe nvalue global constraint
    CountDistinctThe distinct global constraint
    CountGreaterThanThe count_gt global constraint
    CumulativeThe cumulative global constraint
    PathThe path global constraint
    TableThe table global constraint
    +\end{align}\]

    where:

    • the functions $f_0, f_1, \ldots, f_m$ are specified by AbstractFunction objects
    • the sets $\mathcal{S}_1, \ldots, \mathcal{S}_m$ are specified by AbstractSet objects
    Tip

    For more information on this standard form, read our paper.

    MOI defines some commonly used functions and sets, but the interface is extensible to other sets recognized by the solver.

    Functions

    The function types implemented in MathOptInterface.jl are:

    FunctionDescription
    VariableIndex$x_j$, the projection onto a single coordinate defined by a variable index $j$.
    VectorOfVariablesThe projection onto multiple coordinates (that is, extracting a sub-vector).
    ScalarAffineFunction$a^T x + b$, where $a$ is a vector and $b$ scalar.
    ScalarNonlinearFunction$f(x)$, where $f$ is a nonlinear function.
    VectorAffineFunction$A x + b$, where $A$ is a matrix and $b$ is a vector.
    ScalarQuadraticFunction$\frac{1}{2} x^T Q x + a^T x + b$, where $Q$ is a symmetric matrix, $a$ is a vector, and $b$ is a constant.
    VectorQuadraticFunctionA vector of scalar-valued quadratic functions.
    VectorNonlinearFunction$f(x)$, where $f$ is a vector-valued nonlinear function.

    Extensions for nonlinear programming are present but not yet well documented.

    One-dimensional sets

    The one-dimensional set types implemented in MathOptInterface.jl are:

    SetDescription
    LessThan(u)$(-\infty, u]$
    GreaterThan(l)$[l, \infty)$
    EqualTo(v)$\{v\}$
    Interval(l, u)$[l, u]$
    Integer()$\mathbb{Z}$
    ZeroOne()$\{ 0, 1 \}$
    Semicontinuous(l, u)$\{ 0\} \cup [l, u]$
    Semiinteger(l, u)$\{ 0\} \cup \{l,l+1,\ldots,u-1,u\}$

    Vector cones

    The vector-valued set types implemented in MathOptInterface.jl are:

    SetDescription
    Reals(d)$\mathbb{R}^{d}$
    Zeros(d)$0^{d}$
    Nonnegatives(d)$\{ x \in \mathbb{R}^{d} : x \ge 0 \}$
    Nonpositives(d)$\{ x \in \mathbb{R}^{d} : x \le 0 \}$
    SecondOrderCone(d)$\{ (t,x) \in \mathbb{R}^{d} : t \ge \lVert x \rVert_2 \}$
    RotatedSecondOrderCone(d)$\{ (t,u,x) \in \mathbb{R}^{d} : 2tu \ge \lVert x \rVert_2^2, t \ge 0,u \ge 0 \}$
    ExponentialCone()$\{ (x,y,z) \in \mathbb{R}^3 : y \exp (x/y) \le z, y > 0 \}$
    DualExponentialCone()$\{ (u,v,w) \in \mathbb{R}^3 : -u \exp (v/u) \le \exp(1) w, u < 0 \}$
    GeometricMeanCone(d)$\{ (t,x) \in \mathbb{R}^{1+n} : x \ge 0, t \le \sqrt[n]{x_1 x_2 \cdots x_n} \}$ where $n$ is $d - 1$
    PowerCone(α)$\{ (x,y,z) \in \mathbb{R}^3 : x^{\alpha} y^{1-\alpha} \ge |z|, x \ge 0,y \ge 0 \}$
    DualPowerCone(α)$\{ (u,v,w) \in \mathbb{R}^3 : \left(\frac{u}{\alpha}\right)^{\alpha}\left(\frac{v}{1-\alpha}\right)^{1-\alpha} \ge |w|, u,v \ge 0 \}$
    NormOneCone(d)$\{ (t,x) \in \mathbb{R}^{d} : t \ge \sum_i \lvert x_i \rvert \}$
    NormInfinityCone(d)$\{ (t,x) \in \mathbb{R}^{d} : t \ge \max_i \lvert x_i \rvert \}$
    RelativeEntropyCone(d)$\{ (u, v, w) \in \mathbb{R}^{d} : u \ge \sum_i w_i \log (\frac{w_i}{v_i}), v_i \ge 0, w_i \ge 0 \}$
    HyperRectangle(l, u)$\{x \in \bar{\mathbb{R}}^d: x_i \in [l_i, u_i] \forall i=1,\ldots,d\}$
    NormCone(p, d)$\{ (t,x) \in \mathbb{R}^{d} : t \ge \left(\sum\limits_i \lvert x_i \rvert^p\right)^{\frac{1}{p}} \}$

    Matrix cones

    The matrix-valued set types implemented in MathOptInterface.jl are:

    SetDescription
    RootDetConeTriangle(d)$\{ (t,X) \in \mathbb{R}^{1+d(1+d)/2} : t \le \det(X)^{1/d}, X \mbox{ is the upper triangle of a PSD matrix} \}$
    RootDetConeSquare(d)$\{ (t,X) \in \mathbb{R}^{1+d^2} : t \le \det(X)^{1/d}, X \mbox{ is a PSD matrix} \}$
    PositiveSemidefiniteConeTriangle(d)$\{ X \in \mathbb{R}^{d(d+1)/2} : X \mbox{ is the upper triangle of a PSD matrix} \}$
    PositiveSemidefiniteConeSquare(d)$\{ X \in \mathbb{R}^{d^2} : X \mbox{ is a PSD matrix} \}$
    LogDetConeTriangle(d)$\{ (t,u,X) \in \mathbb{R}^{2+d(1+d)/2} : t \le u\log(\det(X/u)), X \mbox{ is the upper triangle of a PSD matrix}, u > 0 \}$
    LogDetConeSquare(d)$\{ (t,u,X) \in \mathbb{R}^{2+d^2} : t \le u \log(\det(X/u)), X \mbox{ is a PSD matrix}, u > 0 \}$
    NormSpectralCone(r, c)$\{ (t, X) \in \mathbb{R}^{1 + r \times c} : t \ge \sigma_1(X), X \mbox{ is a } r\times c\mbox{ matrix} \}$
    NormNuclearCone(r, c)$\{ (t, X) \in \mathbb{R}^{1 + r \times c} : t \ge \sum_i \sigma_i(X), X \mbox{ is a } r\times c\mbox{ matrix} \}$
    HermitianPositiveSemidefiniteConeTriangle(d)The cone of Hermitian positive semidefinite matrices, with
    side_dimension rows and columns.
    Scaled(S)The set S scaled so that Utilities.set_dot corresponds to LinearAlgebra.dot

    Some of these cones can take two forms: XXXConeTriangle and XXXConeSquare.

    In XXXConeTriangle sets, the matrix is assumed to be symmetric, and the elements are provided by a vector, in which the entries of the upper-right triangular part of the matrix are given column by column (or equivalently, the entries of the lower-left triangular part are given row by row).

    In XXXConeSquare sets, the entries of the matrix are given column by column (or equivalently, row by row), and the matrix is constrained to be symmetric. As an example, given a 2-by-2 matrix of variables X and a one-dimensional variable t, we can specify a root-det constraint as [t, X11, X12, X22] ∈ RootDetConeTriangle or [t, X11, X12, X21, X22] ∈ RootDetConeSquare.

    We provide both forms to enable flexibility for solvers who may natively support one or the other. Transformations between XXXConeTriangle and XXXConeSquare are handled by bridges, which removes the chance of conversion mistakes by users or solver developers.

    Multi-dimensional sets with combinatorial structure

    Other sets are vector-valued, with a particular combinatorial structure. Read their docstrings for more information on how to interpret them.

    SetDescription
    SOS1A Special Ordered Set (SOS) of Type I
    SOS2A Special Ordered Set (SOS) of Type II
    IndicatorA set to specify an indicator constraint
    ComplementsA set to specify a mixed complementarity constraint
    AllDifferentThe all_different global constraint
    BinPackingThe bin_packing global constraint
    CircuitThe circuit global constraint
    CountAtLeastThe at_least global constraint
    CountBelongsThe nvalue global constraint
    CountDistinctThe distinct global constraint
    CountGreaterThanThe count_gt global constraint
    CumulativeThe cumulative global constraint
    PathThe path global constraint
    TableThe table global constraint
    diff --git a/dev/moi/manual/variables/index.html b/dev/moi/manual/variables/index.html index 23b3ea7a8b3..f4d25faf20f 100644 --- a/dev/moi/manual/variables/index.html +++ b/dev/moi/manual/variables/index.html @@ -14,4 +14,4 @@ false
    Warning

    Not all ModelLike models support deleting variables. A DeleteNotAllowed error is thrown if this is not supported.

    Variable attributes

    The following attributes are available for variables:

    Get and set these attributes using get and set.

    julia> MOI.set(model, MOI.VariableName(), x, "var_x")
     
     julia> MOI.get(model, MOI.VariableName(), x)
    -"var_x"
    +"var_x" diff --git a/dev/moi/reference/callbacks/index.html b/dev/moi/reference/callbacks/index.html index 62b076894df..4eb05857d49 100644 --- a/dev/moi/reference/callbacks/index.html +++ b/dev/moi/reference/callbacks/index.html @@ -33,4 +33,4 @@ MOI.submit(optimizer, MOI.HeuristicSolution(callback_data), x, values) end -endsource
    MathOptInterface.HeuristicSolutionType
    HeuristicSolution(callback_data)

    Heuristically obtained feasible solution. The solution is submitted as variables, values where values[i] gives the value of variables[i], similarly to set. The submit call returns a HeuristicSolutionStatus indicating whether the provided solution was accepted or rejected.

    This can be submitted only from the HeuristicCallback. The field callback_data is a solver-specific callback type that is passed as the argument to the heuristic callback.

    Some solvers require a complete solution, others only partial solutions.

    source
    +endsource
    MathOptInterface.HeuristicSolutionType
    HeuristicSolution(callback_data)

    Heuristically obtained feasible solution. The solution is submitted as variables, values where values[i] gives the value of variables[i], similarly to set. The submit call returns a HeuristicSolutionStatus indicating whether the provided solution was accepted or rejected.

    This can be submitted only from the HeuristicCallback. The field callback_data is a solver-specific callback type that is passed as the argument to the heuristic callback.

    Some solvers require a complete solution, others only partial solutions.

    source
    diff --git a/dev/moi/reference/constraints/index.html b/dev/moi/reference/constraints/index.html index ba7dcaa346e..38adab45098 100644 --- a/dev/moi/reference/constraints/index.html +++ b/dev/moi/reference/constraints/index.html @@ -44,4 +44,4 @@ model::ModelLike, ::Type{F}, ::Type{S}, -)::Bool where {F<:AbstractFunction,S<:AbstractSet}

    Return a Bool indicating whether model supports F-in-S constraints, that is, copy_to(model, src) does not throw UnsupportedConstraint when src contains F-in-S constraints. If F-in-S constraints are only not supported in specific circumstances, for example, F-in-S constraints cannot be combined with another type of constraint, it should still return true.

    source

    Attributes

    MathOptInterface.ConstraintNameType
    ConstraintName()

    A constraint attribute for a string identifying the constraint.

    It is valid for constraints variables to have the same name; however, constraints with duplicate names cannot be looked up using get, regardless of whether they have the same F-in-S type.

    ConstraintName has a default value of "" if not set.

    Notes

    You should not implement ConstraintName for VariableIndex constraints.

    source
    MathOptInterface.ConstraintPrimalType
    ConstraintPrimal(result_index::Int = 1)

    A constraint attribute for the assignment to some constraint's primal value in result result_index.

    If the constraint is f(x) in S, then in most cases the ConstraintPrimal is the value of f, evaluated at the corresponding VariablePrimal solution.

    However, some conic solvers reformulate b - Ax in S to s = b - Ax, s in S. These solvers may return the value of s for ConstraintPrimal, rather than b - Ax. (Although these are constrained by an equality constraint, due to numerical tolerances they may not be identical.)

    If the solver does not have a primal value for the constraint because the result_index is beyond the available solutions (whose number is indicated by the ResultCount attribute), getting this attribute must throw a ResultIndexBoundsError. Otherwise, if the result is unavailable for another reason (for instance, only a dual solution is available), the result is undefined. Users should first check PrimalStatus before accessing the ConstraintPrimal attribute.

    If result_index is omitted, it is 1 by default. See ResultCount for information on how the results are ordered.

    source
    MathOptInterface.ConstraintDualType
    ConstraintDual(result_index::Int = 1)

    A constraint attribute for the assignment to some constraint's dual value in result result_index. If result_index is omitted, it is 1 by default.

    If the solver does not have a dual value for the variable because the result_index is beyond the available solutions (whose number is indicated by the ResultCount attribute), getting this attribute must throw a ResultIndexBoundsError. Otherwise, if the result is unavailable for another reason (for instance, only a primal solution is available), the result is undefined. Users should first check DualStatus before accessing the ConstraintDual attribute.

    See ResultCount for information on how the results are ordered.

    source
    MathOptInterface.ConstraintBasisStatusType
    ConstraintBasisStatus(result_index::Int = 1)

    A constraint attribute for the BasisStatusCode of some constraint in result result_index, with respect to an available optimal solution basis. If result_index is omitted, it is 1 by default.

    If the solver does not have a basis status for the constraint because the result_index is beyond the available solutions (whose number is indicated by the ResultCount attribute), getting this attribute must throw a ResultIndexBoundsError. Otherwise, if the result is unavailable for another reason (for instance, only a dual solution is available), the result is undefined. Users should first check PrimalStatus before accessing the ConstraintBasisStatus attribute.

    See ResultCount for information on how the results are ordered.

    Notes

    For the basis status of a variable, query VariableBasisStatus.

    ConstraintBasisStatus does not apply to VariableIndex constraints. You can infer the basis status of a VariableIndex constraint by looking at the result of VariableBasisStatus.

    source
    MathOptInterface.ConstraintFunctionType
    ConstraintFunction()

    A constraint attribute for the AbstractFunction object used to define the constraint.

    It is guaranteed to be equivalent but not necessarily identical to the function provided by the user.

    source
    MathOptInterface.CanonicalConstraintFunctionType
    CanonicalConstraintFunction()

    A constraint attribute for a canonical representation of the AbstractFunction object used to define the constraint.

    Getting this attribute is guaranteed to return a function that is equivalent but not necessarily identical to the function provided by the user.

    By default, MOI.get(model, MOI.CanonicalConstraintFunction(), ci) fallbacks to MOI.Utilities.canonical(MOI.get(model, MOI.ConstraintFunction(), ci)). However, if model knows that the constraint function is canonical then it can implement a specialized method that directly return the function without calling Utilities.canonical. Therefore, the value returned cannot be assumed to be a copy of the function stored in model. Moreover, Utilities.Model checks with Utilities.is_canonical whether the function stored internally is already canonical and if it's the case, then it returns the function stored internally instead of a copy.

    source
    MathOptInterface.BasisStatusCodeType
    BasisStatusCode

    An Enum of possible values for the ConstraintBasisStatus and VariableBasisStatus attributes, explaining the status of a given element with respect to an optimal solution basis.

    Notes

    • NONBASIC_AT_LOWER and NONBASIC_AT_UPPER should be used only for constraints with the Interval set. In this case, they are necessary to distinguish which side of the constraint is active. One-sided constraints (for example, LessThan and GreaterThan) should use NONBASIC instead of the NONBASIC_AT_* values. This restriction does not apply to VariableBasisStatus, which should return NONBASIC_AT_* regardless of whether the alternative bound exists.

    • In linear programs, SUPER_BASIC occurs when a variable with no bounds is not in the basis.

    Values

    Possible values are:

    source
    +)::Bool where {F<:AbstractFunction,S<:AbstractSet}

    Return a Bool indicating whether model supports F-in-S constraints, that is, copy_to(model, src) does not throw UnsupportedConstraint when src contains F-in-S constraints. If F-in-S constraints are only not supported in specific circumstances, for example, F-in-S constraints cannot be combined with another type of constraint, it should still return true.

    source

    Attributes

    MathOptInterface.ConstraintNameType
    ConstraintName()

    A constraint attribute for a string identifying the constraint.

    It is valid for constraints variables to have the same name; however, constraints with duplicate names cannot be looked up using get, regardless of whether they have the same F-in-S type.

    ConstraintName has a default value of "" if not set.

    Notes

    You should not implement ConstraintName for VariableIndex constraints.

    source
    MathOptInterface.ConstraintPrimalType
    ConstraintPrimal(result_index::Int = 1)

    A constraint attribute for the assignment to some constraint's primal value in result result_index.

    If the constraint is f(x) in S, then in most cases the ConstraintPrimal is the value of f, evaluated at the corresponding VariablePrimal solution.

    However, some conic solvers reformulate b - Ax in S to s = b - Ax, s in S. These solvers may return the value of s for ConstraintPrimal, rather than b - Ax. (Although these are constrained by an equality constraint, due to numerical tolerances they may not be identical.)

    If the solver does not have a primal value for the constraint because the result_index is beyond the available solutions (whose number is indicated by the ResultCount attribute), getting this attribute must throw a ResultIndexBoundsError. Otherwise, if the result is unavailable for another reason (for instance, only a dual solution is available), the result is undefined. Users should first check PrimalStatus before accessing the ConstraintPrimal attribute.

    If result_index is omitted, it is 1 by default. See ResultCount for information on how the results are ordered.

    source
    MathOptInterface.ConstraintDualType
    ConstraintDual(result_index::Int = 1)

    A constraint attribute for the assignment to some constraint's dual value in result result_index. If result_index is omitted, it is 1 by default.

    If the solver does not have a dual value for the variable because the result_index is beyond the available solutions (whose number is indicated by the ResultCount attribute), getting this attribute must throw a ResultIndexBoundsError. Otherwise, if the result is unavailable for another reason (for instance, only a primal solution is available), the result is undefined. Users should first check DualStatus before accessing the ConstraintDual attribute.

    See ResultCount for information on how the results are ordered.

    source
    MathOptInterface.ConstraintBasisStatusType
    ConstraintBasisStatus(result_index::Int = 1)

    A constraint attribute for the BasisStatusCode of some constraint in result result_index, with respect to an available optimal solution basis. If result_index is omitted, it is 1 by default.

    If the solver does not have a basis status for the constraint because the result_index is beyond the available solutions (whose number is indicated by the ResultCount attribute), getting this attribute must throw a ResultIndexBoundsError. Otherwise, if the result is unavailable for another reason (for instance, only a dual solution is available), the result is undefined. Users should first check PrimalStatus before accessing the ConstraintBasisStatus attribute.

    See ResultCount for information on how the results are ordered.

    Notes

    For the basis status of a variable, query VariableBasisStatus.

    ConstraintBasisStatus does not apply to VariableIndex constraints. You can infer the basis status of a VariableIndex constraint by looking at the result of VariableBasisStatus.

    source
    MathOptInterface.ConstraintFunctionType
    ConstraintFunction()

    A constraint attribute for the AbstractFunction object used to define the constraint.

    It is guaranteed to be equivalent but not necessarily identical to the function provided by the user.

    source
    MathOptInterface.CanonicalConstraintFunctionType
    CanonicalConstraintFunction()

    A constraint attribute for a canonical representation of the AbstractFunction object used to define the constraint.

    Getting this attribute is guaranteed to return a function that is equivalent but not necessarily identical to the function provided by the user.

    By default, MOI.get(model, MOI.CanonicalConstraintFunction(), ci) fallbacks to MOI.Utilities.canonical(MOI.get(model, MOI.ConstraintFunction(), ci)). However, if model knows that the constraint function is canonical then it can implement a specialized method that directly return the function without calling Utilities.canonical. Therefore, the value returned cannot be assumed to be a copy of the function stored in model. Moreover, Utilities.Model checks with Utilities.is_canonical whether the function stored internally is already canonical and if it's the case, then it returns the function stored internally instead of a copy.

    source
    MathOptInterface.BasisStatusCodeType
    BasisStatusCode

    An Enum of possible values for the ConstraintBasisStatus and VariableBasisStatus attributes, explaining the status of a given element with respect to an optimal solution basis.

    Notes

    • NONBASIC_AT_LOWER and NONBASIC_AT_UPPER should be used only for constraints with the Interval set. In this case, they are necessary to distinguish which side of the constraint is active. One-sided constraints (for example, LessThan and GreaterThan) should use NONBASIC instead of the NONBASIC_AT_* values. This restriction does not apply to VariableBasisStatus, which should return NONBASIC_AT_* regardless of whether the alternative bound exists.

    • In linear programs, SUPER_BASIC occurs when a variable with no bounds is not in the basis.

    Values

    Possible values are:

    source
    diff --git a/dev/moi/reference/errors/index.html b/dev/moi/reference/errors/index.html index d700c9390dd..a594d50c7a7 100644 --- a/dev/moi/reference/errors/index.html +++ b/dev/moi/reference/errors/index.html @@ -57,4 +57,4 @@ julia> throw(MOI.UnsupportedNonlinearOperator(:black_box)) ERROR: MathOptInterface.UnsupportedNonlinearOperator: The nonlinear operator `:black_box` is not supported by the model. Stacktrace: -[...]source

    Note that setting the ConstraintFunction of a VariableIndex constraint is not allowed:

    +[...]source

    Note that setting the ConstraintFunction of a VariableIndex constraint is not allowed:

    diff --git a/dev/moi/reference/models/index.html b/dev/moi/reference/models/index.html index 43147ce374f..61c38d5e580 100644 --- a/dev/moi/reference/models/index.html +++ b/dev/moi/reference/models/index.html @@ -7,7 +7,7 @@ model::MOI.ModelLike, attr::MOI.AbstractConstraintAttribute, bridge::AbstractBridge, -)

    Return the value of the attribute attr of the model model for the constraint bridged by bridge.

    source
    get(model::GenericModel, attr::MathOptInterface.AbstractOptimizerAttribute)

    Return the value of the attribute attr from the model's MOI backend.

    source
    get(model::GenericModel, attr::MathOptInterface.AbstractModelAttribute)

    Return the value of the attribute attr from the model's MOI backend.

    source
    get(optimizer::AbstractOptimizer, attr::AbstractOptimizerAttribute)

    Return an attribute attr of the optimizer optimizer.

    get(model::ModelLike, attr::AbstractModelAttribute)

    Return an attribute attr of the model model.

    get(model::ModelLike, attr::AbstractVariableAttribute, v::VariableIndex)

    If the attribute attr is set for the variable v in the model model, return its value, return nothing otherwise. If the attribute attr is not supported by model then an error should be thrown instead of returning nothing.

    get(model::ModelLike, attr::AbstractVariableAttribute, v::Vector{VariableIndex})

    Return a vector of attributes corresponding to each variable in the collection v in the model model.

    get(model::ModelLike, attr::AbstractConstraintAttribute, c::ConstraintIndex)

    If the attribute attr is set for the constraint c in the model model, return its value, return nothing otherwise. If the attribute attr is not supported by model then an error should be thrown instead of returning nothing.

    get(
    +)

    Return the value of the attribute attr of the model model for the constraint bridged by bridge.

    source
    get(model::GenericModel, attr::MathOptInterface.AbstractOptimizerAttribute)

    Return the value of the attribute attr from the model's MOI backend.

    source
    get(model::GenericModel, attr::MathOptInterface.AbstractModelAttribute)

    Return the value of the attribute attr from the model's MOI backend.

    source
    get(optimizer::AbstractOptimizer, attr::AbstractOptimizerAttribute)

    Return an attribute attr of the optimizer optimizer.

    get(model::ModelLike, attr::AbstractModelAttribute)

    Return an attribute attr of the model model.

    get(model::ModelLike, attr::AbstractVariableAttribute, v::VariableIndex)

    If the attribute attr is set for the variable v in the model model, return its value, return nothing otherwise. If the attribute attr is not supported by model then an error should be thrown instead of returning nothing.

    get(model::ModelLike, attr::AbstractVariableAttribute, v::Vector{VariableIndex})

    Return a vector of attributes corresponding to each variable in the collection v in the model model.

    get(model::ModelLike, attr::AbstractConstraintAttribute, c::ConstraintIndex)

    If the attribute attr is set for the constraint c in the model model, return its value, return nothing otherwise. If the attribute attr is not supported by model then an error should be thrown instead of returning nothing.

    get(
         model::ModelLike,
         attr::AbstractConstraintAttribute,
         c::Vector{ConstraintIndex{F,S}},
    @@ -139,4 +139,4 @@
     MOI.get(model, MOI.RelativeGapTolerance())  # returns 1e-3
     # ... and the relative gap of the obtained solution is smaller or equal to the
     # tolerance
    -MOI.get(model, MOI.RelativeGap())  # should return something ≤ 1e-3
    Warning

    The mathematical definition of "relative gap", and its allowed range, are solver-dependent. Typically, solvers expect a value between 0.0 and 1.0.

    source

    List of attributes useful for optimizers

    MathOptInterface.TerminationStatusCodeType
    TerminationStatusCode

    An Enum of possible values for the TerminationStatus attribute. This attribute is meant to explain the reason why the optimizer stopped executing in the most recent call to optimize!.

    Values

    Possible values are:

    • OPTIMIZE_NOT_CALLED: The algorithm has not started.
    • OPTIMAL: The algorithm found a globally optimal solution.
    • INFEASIBLE: The algorithm concluded that no feasible solution exists.
    • DUAL_INFEASIBLE: The algorithm concluded that no dual bound exists for the problem. If, additionally, a feasible (primal) solution is known to exist, this status typically implies that the problem is unbounded, with some technical exceptions.
    • LOCALLY_SOLVED: The algorithm converged to a stationary point, local optimal solution, could not find directions for improvement, or otherwise completed its search without global guarantees.
    • LOCALLY_INFEASIBLE: The algorithm converged to an infeasible point or otherwise completed its search without finding a feasible solution, without guarantees that no feasible solution exists.
    • INFEASIBLE_OR_UNBOUNDED: The algorithm stopped because it decided that the problem is infeasible or unbounded; this occasionally happens during MIP presolve.
    • ALMOST_OPTIMAL: The algorithm found a globally optimal solution to relaxed tolerances.
    • ALMOST_INFEASIBLE: The algorithm concluded that no feasible solution exists within relaxed tolerances.
    • ALMOST_DUAL_INFEASIBLE: The algorithm concluded that no dual bound exists for the problem within relaxed tolerances.
    • ALMOST_LOCALLY_SOLVED: The algorithm converged to a stationary point, local optimal solution, or could not find directions for improvement within relaxed tolerances.
    • ITERATION_LIMIT: An iterative algorithm stopped after conducting the maximum number of iterations.
    • TIME_LIMIT: The algorithm stopped after a user-specified computation time.
    • NODE_LIMIT: A branch-and-bound algorithm stopped because it explored a maximum number of nodes in the branch-and-bound tree.
    • SOLUTION_LIMIT: The algorithm stopped because it found the required number of solutions. This is often used in MIPs to get the solver to return the first feasible solution it encounters.
    • MEMORY_LIMIT: The algorithm stopped because it ran out of memory.
    • OBJECTIVE_LIMIT: The algorithm stopped because it found a solution better than a minimum limit set by the user.
    • NORM_LIMIT: The algorithm stopped because the norm of an iterate became too large.
    • OTHER_LIMIT: The algorithm stopped due to a limit not covered by one of the _LIMIT_ statuses above.
    • SLOW_PROGRESS: The algorithm stopped because it was unable to continue making progress towards the solution.
    • NUMERICAL_ERROR: The algorithm stopped because it encountered unrecoverable numerical error.
    • INVALID_MODEL: The algorithm stopped because the model is invalid.
    • INVALID_OPTION: The algorithm stopped because it was provided an invalid option.
    • INTERRUPTED: The algorithm stopped because of an interrupt signal.
    • OTHER_ERROR: The algorithm stopped because of an error not covered by one of the statuses defined above.
    source
    MathOptInterface.DUAL_INFEASIBLEConstant
    DUAL_INFEASIBLE::TerminationStatusCode

    An instance of the TerminationStatusCode enum.

    DUAL_INFEASIBLE: The algorithm concluded that no dual bound exists for the problem. If, additionally, a feasible (primal) solution is known to exist, this status typically implies that the problem is unbounded, with some technical exceptions.

    source
    MathOptInterface.LOCALLY_SOLVEDConstant
    LOCALLY_SOLVED::TerminationStatusCode

    An instance of the TerminationStatusCode enum.

    LOCALLY_SOLVED: The algorithm converged to a stationary point, local optimal solution, could not find directions for improvement, or otherwise completed its search without global guarantees.

    source
    MathOptInterface.LOCALLY_INFEASIBLEConstant
    LOCALLY_INFEASIBLE::TerminationStatusCode

    An instance of the TerminationStatusCode enum.

    LOCALLY_INFEASIBLE: The algorithm converged to an infeasible point or otherwise completed its search without finding a feasible solution, without guarantees that no feasible solution exists.

    source
    MathOptInterface.SOLUTION_LIMITConstant
    SOLUTION_LIMIT::TerminationStatusCode

    An instance of the TerminationStatusCode enum.

    SOLUTION_LIMIT: The algorithm stopped because it found the required number of solutions. This is often used in MIPs to get the solver to return the first feasible solution it encounters.

    source
    MathOptInterface.DualStatusType
    DualStatus(result_index::Int = 1)

    A model attribute for the ResultStatusCode of the dual result result_index. If result_index is omitted, it defaults to 1.

    See ResultCount for information on how the results are ordered.

    If result_index is larger than the value of ResultCount then NO_SOLUTION is returned.

    source
    MathOptInterface.ResultCountType
    ResultCount()

    A model attribute for the number of results available.

    Order of solutions

    A number of attributes contain an index, result_index, which is used to refer to one of the available results. Thus, result_index must be an integer between 1 and the number of available results.

    As a general rule, the first result (result_index=1) is the most important result (for example, an optimal solution or an infeasibility certificate). Other results will typically be alternate solutions that the solver found during the search for the first result.

    If a (local) optimal solution is available, that is, TerminationStatus is OPTIMAL or LOCALLY_SOLVED, the first result must correspond to the (locally) optimal solution. Other results may be alternative optimal solutions, or they may be other suboptimal solutions; use ObjectiveValue to distinguish between them.

    If a primal or dual infeasibility certificate is available, that is, TerminationStatus is INFEASIBLE or DUAL_INFEASIBLE and the corresponding PrimalStatus or DualStatus is INFEASIBILITY_CERTIFICATE, then the first result must be a certificate. Other results may be alternate certificates, or infeasible points.

    source
    MathOptInterface.ObjectiveValueType
    ObjectiveValue(result_index::Int = 1)

    A model attribute for the objective value of the primal solution result_index.

    If the solver does not have a primal value for the objective because the result_index is beyond the available solutions (whose number is indicated by the ResultCount attribute), getting this attribute must throw a ResultIndexBoundsError. Otherwise, if the result is unavailable for another reason (for instance, only a dual solution is available), the result is undefined. Users should first check PrimalStatus before accessing the ObjectiveValue attribute.

    See ResultCount for information on how the results are ordered.

    source
    MathOptInterface.DualObjectiveValueType
    DualObjectiveValue(result_index::Int = 1)

    A model attribute for the value of the objective function of the dual problem for the result_indexth dual result.

    If the solver does not have a dual value for the objective because the result_index is beyond the available solutions (whose number is indicated by the ResultCount attribute), getting this attribute must throw a ResultIndexBoundsError. Otherwise, if the result is unavailable for another reason (for instance, only a primal solution is available), the result is undefined. Users should first check DualStatus before accessing the DualObjectiveValue attribute.

    See ResultCount for information on how the results are ordered.

    source
    MathOptInterface.RelativeGapType
    RelativeGap()

    A model attribute for the final relative optimality gap.

    Warning

    The definition of this gap is solver-dependent. However, most solvers implementing this attribute define the relative gap as some variation of $\frac{|b-f|}{|f|}$, where $b$ is the best bound and $f$ is the best feasible objective value.

    source
    MathOptInterface.SimplexIterationsType
    SimplexIterations()

    A model attribute for the cumulative number of simplex iterations during the optimization process.

    For a mixed-integer program (MIP), the return value is the total simplex iterations for all nodes.

    source
    MathOptInterface.NodeCountType
    NodeCount()

    A model attribute for the total number of branch-and-bound nodes explored while solving a mixed-integer program (MIP).

    source

    ResultStatusCode

    MathOptInterface.ResultStatusCodeType
    ResultStatusCode

    An Enum of possible values for the PrimalStatus and DualStatus attributes.

    The values indicate how to interpret the result vector.

    Values

    Possible values are:

    • NO_SOLUTION: the result vector is empty.
    • FEASIBLE_POINT: the result vector is a feasible point.
    • NEARLY_FEASIBLE_POINT: the result vector is feasible if some constraint tolerances are relaxed.
    • INFEASIBLE_POINT: the result vector is an infeasible point.
    • INFEASIBILITY_CERTIFICATE: the result vector is an infeasibility certificate. If the PrimalStatus is INFEASIBILITY_CERTIFICATE, then the primal result vector is a certificate of dual infeasibility. If the DualStatus is INFEASIBILITY_CERTIFICATE, then the dual result vector is a proof of primal infeasibility.
    • NEARLY_INFEASIBILITY_CERTIFICATE: the result satisfies a relaxed criterion for a certificate of infeasibility.
    • REDUCTION_CERTIFICATE: the result vector is an ill-posed certificate; see this article for details. If the PrimalStatus is REDUCTION_CERTIFICATE, then the primal result vector is a proof that the dual problem is ill-posed. If the DualStatus is REDUCTION_CERTIFICATE, then the dual result vector is a proof that the primal is ill-posed.
    • NEARLY_REDUCTION_CERTIFICATE: the result satisfies a relaxed criterion for an ill-posed certificate.
    • UNKNOWN_RESULT_STATUS: the result vector contains a solution with an unknown interpretation.
    • OTHER_RESULT_STATUS: the result vector contains a solution with an interpretation not covered by one of the statuses defined above
    source
    MathOptInterface.INFEASIBILITY_CERTIFICATEConstant
    INFEASIBILITY_CERTIFICATE::ResultStatusCode

    An instance of the ResultStatusCode enum.

    INFEASIBILITY_CERTIFICATE: the result vector is an infeasibility certificate. If the PrimalStatus is INFEASIBILITY_CERTIFICATE, then the primal result vector is a certificate of dual infeasibility. If the DualStatus is INFEASIBILITY_CERTIFICATE, then the dual result vector is a proof of primal infeasibility.

    source
    MathOptInterface.REDUCTION_CERTIFICATEConstant
    REDUCTION_CERTIFICATE::ResultStatusCode

    An instance of the ResultStatusCode enum.

    REDUCTION_CERTIFICATE: the result vector is an ill-posed certificate; see this article for details. If the PrimalStatus is REDUCTION_CERTIFICATE, then the primal result vector is a proof that the dual problem is ill-posed. If the DualStatus is REDUCTION_CERTIFICATE, then the dual result vector is a proof that the primal is ill-posed.

    source

    Conflict Status

    MathOptInterface.compute_conflict!Function
    compute_conflict!(optimizer::AbstractOptimizer)

    Computes a minimal subset of constraints such that the model with the other constraint removed is still infeasible.

    Some solvers call a set of conflicting constraints an Irreducible Inconsistent Subsystem (IIS).

    See also ConflictStatus and ConstraintConflictStatus.

    Note

    If the model is modified after a call to compute_conflict!, the implementor is not obliged to purge the conflict. Any calls to the above attributes may return values for the original conflict without a warning. Similarly, when modifying the model, the conflict can be discarded.

    source
    MathOptInterface.ConflictStatusCodeType
    ConflictStatusCode

    An Enum of possible values for the ConflictStatus attribute. This attribute is meant to explain the reason why the conflict finder stopped executing in the most recent call to compute_conflict!.

    Possible values are:

    • COMPUTE_CONFLICT_NOT_CALLED: the function compute_conflict! has not yet been called
    • NO_CONFLICT_EXISTS: there is no conflict because the problem is feasible
    • NO_CONFLICT_FOUND: the solver could not find a conflict
    • CONFLICT_FOUND: at least one conflict could be found
    source
    MathOptInterface.ConflictParticipationStatusCodeType
    ConflictParticipationStatusCode

    An Enum of possible values for the ConstraintConflictStatus attribute. This attribute is meant to indicate whether a given constraint participates or not in the last computed conflict.

    Values

    Possible values are:

    • NOT_IN_CONFLICT: the constraint does not participate in the conflict
    • IN_CONFLICT: the constraint participates in the conflict
    • MAYBE_IN_CONFLICT: the constraint may participate in the conflict, the solver was not able to prove that the constraint can be excluded from the conflict
    source
    +MOI.get(model, MOI.RelativeGap()) # should return something ≤ 1e-3
    Warning

    The mathematical definition of "relative gap", and its allowed range, are solver-dependent. Typically, solvers expect a value between 0.0 and 1.0.

    source

    List of attributes useful for optimizers

    MathOptInterface.TerminationStatusCodeType
    TerminationStatusCode

    An Enum of possible values for the TerminationStatus attribute. This attribute is meant to explain the reason why the optimizer stopped executing in the most recent call to optimize!.

    Values

    Possible values are:

    • OPTIMIZE_NOT_CALLED: The algorithm has not started.
    • OPTIMAL: The algorithm found a globally optimal solution.
    • INFEASIBLE: The algorithm concluded that no feasible solution exists.
    • DUAL_INFEASIBLE: The algorithm concluded that no dual bound exists for the problem. If, additionally, a feasible (primal) solution is known to exist, this status typically implies that the problem is unbounded, with some technical exceptions.
    • LOCALLY_SOLVED: The algorithm converged to a stationary point, local optimal solution, could not find directions for improvement, or otherwise completed its search without global guarantees.
    • LOCALLY_INFEASIBLE: The algorithm converged to an infeasible point or otherwise completed its search without finding a feasible solution, without guarantees that no feasible solution exists.
    • INFEASIBLE_OR_UNBOUNDED: The algorithm stopped because it decided that the problem is infeasible or unbounded; this occasionally happens during MIP presolve.
    • ALMOST_OPTIMAL: The algorithm found a globally optimal solution to relaxed tolerances.
    • ALMOST_INFEASIBLE: The algorithm concluded that no feasible solution exists within relaxed tolerances.
    • ALMOST_DUAL_INFEASIBLE: The algorithm concluded that no dual bound exists for the problem within relaxed tolerances.
    • ALMOST_LOCALLY_SOLVED: The algorithm converged to a stationary point, local optimal solution, or could not find directions for improvement within relaxed tolerances.
    • ITERATION_LIMIT: An iterative algorithm stopped after conducting the maximum number of iterations.
    • TIME_LIMIT: The algorithm stopped after a user-specified computation time.
    • NODE_LIMIT: A branch-and-bound algorithm stopped because it explored a maximum number of nodes in the branch-and-bound tree.
    • SOLUTION_LIMIT: The algorithm stopped because it found the required number of solutions. This is often used in MIPs to get the solver to return the first feasible solution it encounters.
    • MEMORY_LIMIT: The algorithm stopped because it ran out of memory.
    • OBJECTIVE_LIMIT: The algorithm stopped because it found a solution better than a minimum limit set by the user.
    • NORM_LIMIT: The algorithm stopped because the norm of an iterate became too large.
    • OTHER_LIMIT: The algorithm stopped due to a limit not covered by one of the _LIMIT_ statuses above.
    • SLOW_PROGRESS: The algorithm stopped because it was unable to continue making progress towards the solution.
    • NUMERICAL_ERROR: The algorithm stopped because it encountered unrecoverable numerical error.
    • INVALID_MODEL: The algorithm stopped because the model is invalid.
    • INVALID_OPTION: The algorithm stopped because it was provided an invalid option.
    • INTERRUPTED: The algorithm stopped because of an interrupt signal.
    • OTHER_ERROR: The algorithm stopped because of an error not covered by one of the statuses defined above.
    source
    MathOptInterface.DUAL_INFEASIBLEConstant
    DUAL_INFEASIBLE::TerminationStatusCode

    An instance of the TerminationStatusCode enum.

    DUAL_INFEASIBLE: The algorithm concluded that no dual bound exists for the problem. If, additionally, a feasible (primal) solution is known to exist, this status typically implies that the problem is unbounded, with some technical exceptions.

    source
    MathOptInterface.LOCALLY_SOLVEDConstant
    LOCALLY_SOLVED::TerminationStatusCode

    An instance of the TerminationStatusCode enum.

    LOCALLY_SOLVED: The algorithm converged to a stationary point, local optimal solution, could not find directions for improvement, or otherwise completed its search without global guarantees.

    source
    MathOptInterface.LOCALLY_INFEASIBLEConstant
    LOCALLY_INFEASIBLE::TerminationStatusCode

    An instance of the TerminationStatusCode enum.

    LOCALLY_INFEASIBLE: The algorithm converged to an infeasible point or otherwise completed its search without finding a feasible solution, without guarantees that no feasible solution exists.

    source
    MathOptInterface.SOLUTION_LIMITConstant
    SOLUTION_LIMIT::TerminationStatusCode

    An instance of the TerminationStatusCode enum.

    SOLUTION_LIMIT: The algorithm stopped because it found the required number of solutions. This is often used in MIPs to get the solver to return the first feasible solution it encounters.

    source
    MathOptInterface.DualStatusType
    DualStatus(result_index::Int = 1)

    A model attribute for the ResultStatusCode of the dual result result_index. If result_index is omitted, it defaults to 1.

    See ResultCount for information on how the results are ordered.

    If result_index is larger than the value of ResultCount then NO_SOLUTION is returned.

    source
    MathOptInterface.ResultCountType
    ResultCount()

    A model attribute for the number of results available.

    Order of solutions

    A number of attributes contain an index, result_index, which is used to refer to one of the available results. Thus, result_index must be an integer between 1 and the number of available results.

    As a general rule, the first result (result_index=1) is the most important result (for example, an optimal solution or an infeasibility certificate). Other results will typically be alternate solutions that the solver found during the search for the first result.

    If a (local) optimal solution is available, that is, TerminationStatus is OPTIMAL or LOCALLY_SOLVED, the first result must correspond to the (locally) optimal solution. Other results may be alternative optimal solutions, or they may be other suboptimal solutions; use ObjectiveValue to distinguish between them.

    If a primal or dual infeasibility certificate is available, that is, TerminationStatus is INFEASIBLE or DUAL_INFEASIBLE and the corresponding PrimalStatus or DualStatus is INFEASIBILITY_CERTIFICATE, then the first result must be a certificate. Other results may be alternate certificates, or infeasible points.

    source
    MathOptInterface.ObjectiveValueType
    ObjectiveValue(result_index::Int = 1)

    A model attribute for the objective value of the primal solution result_index.

    If the solver does not have a primal value for the objective because the result_index is beyond the available solutions (whose number is indicated by the ResultCount attribute), getting this attribute must throw a ResultIndexBoundsError. Otherwise, if the result is unavailable for another reason (for instance, only a dual solution is available), the result is undefined. Users should first check PrimalStatus before accessing the ObjectiveValue attribute.

    See ResultCount for information on how the results are ordered.

    source
    MathOptInterface.DualObjectiveValueType
    DualObjectiveValue(result_index::Int = 1)

    A model attribute for the value of the objective function of the dual problem for the result_indexth dual result.

    If the solver does not have a dual value for the objective because the result_index is beyond the available solutions (whose number is indicated by the ResultCount attribute), getting this attribute must throw a ResultIndexBoundsError. Otherwise, if the result is unavailable for another reason (for instance, only a primal solution is available), the result is undefined. Users should first check DualStatus before accessing the DualObjectiveValue attribute.

    See ResultCount for information on how the results are ordered.

    source
    MathOptInterface.RelativeGapType
    RelativeGap()

    A model attribute for the final relative optimality gap.

    Warning

    The definition of this gap is solver-dependent. However, most solvers implementing this attribute define the relative gap as some variation of $\frac{|b-f|}{|f|}$, where $b$ is the best bound and $f$ is the best feasible objective value.

    source
    MathOptInterface.SimplexIterationsType
    SimplexIterations()

    A model attribute for the cumulative number of simplex iterations during the optimization process.

    For a mixed-integer program (MIP), the return value is the total simplex iterations for all nodes.

    source
    MathOptInterface.NodeCountType
    NodeCount()

    A model attribute for the total number of branch-and-bound nodes explored while solving a mixed-integer program (MIP).

    source

    ResultStatusCode

    MathOptInterface.ResultStatusCodeType
    ResultStatusCode

    An Enum of possible values for the PrimalStatus and DualStatus attributes.

    The values indicate how to interpret the result vector.

    Values

    Possible values are:

    • NO_SOLUTION: the result vector is empty.
    • FEASIBLE_POINT: the result vector is a feasible point.
    • NEARLY_FEASIBLE_POINT: the result vector is feasible if some constraint tolerances are relaxed.
    • INFEASIBLE_POINT: the result vector is an infeasible point.
    • INFEASIBILITY_CERTIFICATE: the result vector is an infeasibility certificate. If the PrimalStatus is INFEASIBILITY_CERTIFICATE, then the primal result vector is a certificate of dual infeasibility. If the DualStatus is INFEASIBILITY_CERTIFICATE, then the dual result vector is a proof of primal infeasibility.
    • NEARLY_INFEASIBILITY_CERTIFICATE: the result satisfies a relaxed criterion for a certificate of infeasibility.
    • REDUCTION_CERTIFICATE: the result vector is an ill-posed certificate; see this article for details. If the PrimalStatus is REDUCTION_CERTIFICATE, then the primal result vector is a proof that the dual problem is ill-posed. If the DualStatus is REDUCTION_CERTIFICATE, then the dual result vector is a proof that the primal is ill-posed.
    • NEARLY_REDUCTION_CERTIFICATE: the result satisfies a relaxed criterion for an ill-posed certificate.
    • UNKNOWN_RESULT_STATUS: the result vector contains a solution with an unknown interpretation.
    • OTHER_RESULT_STATUS: the result vector contains a solution with an interpretation not covered by one of the statuses defined above
    source
    MathOptInterface.INFEASIBILITY_CERTIFICATEConstant
    INFEASIBILITY_CERTIFICATE::ResultStatusCode

    An instance of the ResultStatusCode enum.

    INFEASIBILITY_CERTIFICATE: the result vector is an infeasibility certificate. If the PrimalStatus is INFEASIBILITY_CERTIFICATE, then the primal result vector is a certificate of dual infeasibility. If the DualStatus is INFEASIBILITY_CERTIFICATE, then the dual result vector is a proof of primal infeasibility.

    source
    MathOptInterface.REDUCTION_CERTIFICATEConstant
    REDUCTION_CERTIFICATE::ResultStatusCode

    An instance of the ResultStatusCode enum.

    REDUCTION_CERTIFICATE: the result vector is an ill-posed certificate; see this article for details. If the PrimalStatus is REDUCTION_CERTIFICATE, then the primal result vector is a proof that the dual problem is ill-posed. If the DualStatus is REDUCTION_CERTIFICATE, then the dual result vector is a proof that the primal is ill-posed.

    source

    Conflict Status

    MathOptInterface.compute_conflict!Function
    compute_conflict!(optimizer::AbstractOptimizer)

    Computes a minimal subset of constraints such that the model with the other constraint removed is still infeasible.

    Some solvers call a set of conflicting constraints an Irreducible Inconsistent Subsystem (IIS).

    See also ConflictStatus and ConstraintConflictStatus.

    Note

    If the model is modified after a call to compute_conflict!, the implementor is not obliged to purge the conflict. Any calls to the above attributes may return values for the original conflict without a warning. Similarly, when modifying the model, the conflict can be discarded.

    source
    MathOptInterface.ConflictStatusCodeType
    ConflictStatusCode

    An Enum of possible values for the ConflictStatus attribute. This attribute is meant to explain the reason why the conflict finder stopped executing in the most recent call to compute_conflict!.

    Possible values are:

    • COMPUTE_CONFLICT_NOT_CALLED: the function compute_conflict! has not yet been called
    • NO_CONFLICT_EXISTS: there is no conflict because the problem is feasible
    • NO_CONFLICT_FOUND: the solver could not find a conflict
    • CONFLICT_FOUND: at least one conflict could be found
    source
    MathOptInterface.ConflictParticipationStatusCodeType
    ConflictParticipationStatusCode

    An Enum of possible values for the ConstraintConflictStatus attribute. This attribute is meant to indicate whether a given constraint participates or not in the last computed conflict.

    Values

    Possible values are:

    • NOT_IN_CONFLICT: the constraint does not participate in the conflict
    • IN_CONFLICT: the constraint participates in the conflict
    • MAYBE_IN_CONFLICT: the constraint may participate in the conflict, the solver was not able to prove that the constraint can be excluded from the conflict
    source
    diff --git a/dev/moi/reference/modification/index.html b/dev/moi/reference/modification/index.html index 6783832249e..9c7c48b9931 100644 --- a/dev/moi/reference/modification/index.html +++ b/dev/moi/reference/modification/index.html @@ -97,4 +97,4 @@ )

    A struct used to request a change in the quadratic coefficient of a ScalarQuadraticFunction.

    Scaling factors

    A ScalarQuadraticFunction has an implicit 0.5 scaling factor in front of the Q matrix. This modification applies to terms in the Q matrix.

    If variable_1 == variable_2, this modification sets the corresponding diagonal element of the Q matrix to new_coefficient.

    If variable_1 != variable_2, this modification is equivalent to setting both the corresponding upper- and lower-triangular elements of the Q matrix to new_coefficient.

    As a consequence:

    • to modify the term x^2 to become 2x^2, new_coefficient must be 4
    • to modify the term xy to become 2xy, new_coefficient must be 2
    source +) where {T}

    A struct used to request a change in the linear coefficients of a single variable in a vector-valued function.

    New coefficients are specified by (output_index, coefficient) tuples.

    Applicable to VectorAffineFunction and VectorQuadraticFunction.

    source diff --git a/dev/moi/reference/nonlinear/index.html b/dev/moi/reference/nonlinear/index.html index a0f69cc6e1c..bf2a733a6f4 100644 --- a/dev/moi/reference/nonlinear/index.html +++ b/dev/moi/reference/nonlinear/index.html @@ -425,4 +425,4 @@ :(x[MOI.VariableIndex(1)] * x[MOI.VariableIndex(2)] * x[MOI.VariableIndex(3)] * x[MOI.VariableIndex(4)] >= 25.0) julia> MOI.constraint_expr(evaluator, 2) -:(x[MOI.VariableIndex(1)] ^ 2 + x[MOI.VariableIndex(2)] ^ 2 + x[MOI.VariableIndex(3)] ^ 2 + x[MOI.VariableIndex(4)] ^ 2 == 40.0)source +:(x[MOI.VariableIndex(1)] ^ 2 + x[MOI.VariableIndex(2)] ^ 2 + x[MOI.VariableIndex(3)] ^ 2 + x[MOI.VariableIndex(4)] ^ 2 == 40.0)source diff --git a/dev/moi/reference/standard_form/index.html b/dev/moi/reference/standard_form/index.html index 3adcd6c47c8..59807ccda26 100644 --- a/dev/moi/reference/standard_form/index.html +++ b/dev/moi/reference/standard_form/index.html @@ -944,4 +944,4 @@ MOI.VectorOfVariables([t; vec(X)]), MOI.RootDetConeSquare(2), ) -MathOptInterface.ConstraintIndex{MathOptInterface.VectorOfVariables, MathOptInterface.RootDetConeSquare}(1)source +MathOptInterface.ConstraintIndex{MathOptInterface.VectorOfVariables, MathOptInterface.RootDetConeSquare}(1)source diff --git a/dev/moi/reference/variables/index.html b/dev/moi/reference/variables/index.html index 6c95dc0925f..602568398f5 100644 --- a/dev/moi/reference/variables/index.html +++ b/dev/moi/reference/variables/index.html @@ -63,4 +63,4 @@ )::Bool

    Return a Bool indicating whether model supports constraining a variable to belong to a set of type S either on creation of the variable with add_constrained_variable or after the variable is created with add_constraint.

    By default, this function falls back to supports_add_constrained_variables(model, Reals) && supports_constraint(model, MOI.VariableIndex, S) which is the correct definition for most models.

    Example

    Suppose that a solver supports only two kind of variables: binary variables and continuous variables with a lower bound. If the solver decides not to support VariableIndex-in-Binary and VariableIndex-in-GreaterThan constraints, it only has to implement add_constrained_variable for these two sets which prevents the user to add both a binary constraint and a lower bound on the same variable. Moreover, if the user adds a VariableIndex-in-GreaterThan constraint, implementing this interface (that is, supports_add_constrained_variables) enables the constraint to be transparently bridged into a supported constraint.

    source
    MathOptInterface.supports_add_constrained_variablesFunction
    supports_add_constrained_variables(
         model::ModelLike,
         S::Type{<:AbstractVectorSet}
    -)::Bool

    Return a Bool indicating whether model supports constraining a vector of variables to belong to a set of type S either on creation of the vector of variables with add_constrained_variables or after the variable is created with add_constraint.

    By default, if S is Reals then this function returns true and otherwise, it falls back to supports_add_constrained_variables(model, Reals) && supports_constraint(model, MOI.VectorOfVariables, S) which is the correct definition for most models.

    Example

    In the standard conic form (see Duality), the variables are grouped into several cones and the constraints are affine equality constraints. If Reals is not one of the cones supported by the solvers then it needs to implement supports_add_constrained_variables(::Optimizer, ::Type{Reals}) = false as free variables are not supported. The solvers should then implement supports_add_constrained_variables(::Optimizer, ::Type{<:SupportedCones}) = true where SupportedCones is the union of all cone types that are supported; it does not have to implement the method supports_constraint(::Type{VectorOfVariables}, Type{<:SupportedCones}) as it should return false and it's the default. This prevents the user to constrain the same variable in two different cones. When a VectorOfVariables-in-S is added, the variables of the vector have already been created so they already belong to given cones. If bridges are enabled, the constraint will therefore be bridged by adding slack variables in S and equality constraints ensuring that the slack variables are equal to the corresponding variables of the given constraint function.

    Note that there may also be sets for which !supports_add_constrained_variables(model, S) and supports_constraint(model, MOI.VectorOfVariables, S). For instance, suppose a solver supports positive semidefinite variable constraints and two types of variables: binary variables and nonnegative variables. Then the solver should support adding VectorOfVariables-in-PositiveSemidefiniteConeTriangle constraints, but it should not support creating variables constrained to belong to the PositiveSemidefiniteConeTriangle because the variables in PositiveSemidefiniteConeTriangle should first be created as either binary or non-negative.

    source
    MathOptInterface.is_validMethod
    is_valid(model::ModelLike, index::Index)::Bool

    Return a Bool indicating whether this index refers to a valid object in the model model.

    source
    MathOptInterface.deleteMethod
    delete(model::ModelLike, index::Index)

    Delete the referenced object from the model. Throw DeleteNotAllowed if if index cannot be deleted.

    The following modifications also take effect if Index is VariableIndex:

    • If index used in the objective function, it is removed from the function, that is, it is substituted for zero.
    • For each func-in-set constraint of the model:
      • If func isa VariableIndex and func == index then the constraint is deleted.
      • If func isa VectorOfVariables and index in func.variables then
        • if length(func.variables) == 1 is one, the constraint is deleted;
        • if length(func.variables) > 1 and supports_dimension_update(set) then then the variable is removed from func and set is replaced by update_dimension(set, MOI.dimension(set) - 1).
        • Otherwise, a DeleteNotAllowed error is thrown.
      • Otherwise, the variable is removed from func, that is, it is substituted for zero.
    source
    MathOptInterface.deleteMethod
    delete(model::ModelLike, indices::Vector{R<:Index}) where {R}

    Delete the referenced objects in the vector indices from the model. It may be assumed that R is a concrete type. The default fallback sequentially deletes the individual items in indices, although specialized implementations may be more efficient.

    source

    Attributes

    MathOptInterface.VariableNameType
    VariableName()

    A variable attribute for a string identifying the variable. It is valid for two variables to have the same name; however, variables with duplicate names cannot be looked up using get. It has a default value of "" if not set`.

    source
    MathOptInterface.VariablePrimalStartType
    VariablePrimalStart()

    A variable attribute for the initial assignment to some primal variable's value that the optimizer may use to warm-start the solve. May be a number or nothing (unset).

    source
    MathOptInterface.VariablePrimalType
    VariablePrimal(result_index::Int = 1)

    A variable attribute for the assignment to some primal variable's value in result result_index. If result_index is omitted, it is 1 by default.

    If the solver does not have a primal value for the variable because the result_index is beyond the available solutions (whose number is indicated by the ResultCount attribute), getting this attribute must throw a ResultIndexBoundsError. Otherwise, if the result is unavailable for another reason (for instance, only a dual solution is available), the result is undefined. Users should first check PrimalStatus before accessing the VariablePrimal attribute.

    See ResultCount for information on how the results are ordered.

    source
    MathOptInterface.VariableBasisStatusType
    VariableBasisStatus(result_index::Int = 1)

    A variable attribute for the BasisStatusCode of a variable in result result_index, with respect to an available optimal solution basis.

    If the solver does not have a basis status for the variable because the result_index is beyond the available solutions (whose number is indicated by the ResultCount attribute), getting this attribute must throw a ResultIndexBoundsError. Otherwise, if the result is unavailable for another reason (for instance, only a dual solution is available), the result is undefined. Users should first check PrimalStatus before accessing the VariableBasisStatus attribute.

    See ResultCount for information on how the results are ordered.

    source
    +)::Bool

    Return a Bool indicating whether model supports constraining a vector of variables to belong to a set of type S either on creation of the vector of variables with add_constrained_variables or after the variable is created with add_constraint.

    By default, if S is Reals then this function returns true and otherwise, it falls back to supports_add_constrained_variables(model, Reals) && supports_constraint(model, MOI.VectorOfVariables, S) which is the correct definition for most models.

    Example

    In the standard conic form (see Duality), the variables are grouped into several cones and the constraints are affine equality constraints. If Reals is not one of the cones supported by the solvers then it needs to implement supports_add_constrained_variables(::Optimizer, ::Type{Reals}) = false as free variables are not supported. The solvers should then implement supports_add_constrained_variables(::Optimizer, ::Type{<:SupportedCones}) = true where SupportedCones is the union of all cone types that are supported; it does not have to implement the method supports_constraint(::Type{VectorOfVariables}, Type{<:SupportedCones}) as it should return false and it's the default. This prevents the user to constrain the same variable in two different cones. When a VectorOfVariables-in-S is added, the variables of the vector have already been created so they already belong to given cones. If bridges are enabled, the constraint will therefore be bridged by adding slack variables in S and equality constraints ensuring that the slack variables are equal to the corresponding variables of the given constraint function.

    Note that there may also be sets for which !supports_add_constrained_variables(model, S) and supports_constraint(model, MOI.VectorOfVariables, S). For instance, suppose a solver supports positive semidefinite variable constraints and two types of variables: binary variables and nonnegative variables. Then the solver should support adding VectorOfVariables-in-PositiveSemidefiniteConeTriangle constraints, but it should not support creating variables constrained to belong to the PositiveSemidefiniteConeTriangle because the variables in PositiveSemidefiniteConeTriangle should first be created as either binary or non-negative.

    source
    MathOptInterface.is_validMethod
    is_valid(model::ModelLike, index::Index)::Bool

    Return a Bool indicating whether this index refers to a valid object in the model model.

    source
    MathOptInterface.deleteMethod
    delete(model::ModelLike, index::Index)

    Delete the referenced object from the model. Throw DeleteNotAllowed if if index cannot be deleted.

    The following modifications also take effect if Index is VariableIndex:

    • If index used in the objective function, it is removed from the function, that is, it is substituted for zero.
    • For each func-in-set constraint of the model:
      • If func isa VariableIndex and func == index then the constraint is deleted.
      • If func isa VectorOfVariables and index in func.variables then
        • if length(func.variables) == 1 is one, the constraint is deleted;
        • if length(func.variables) > 1 and supports_dimension_update(set) then then the variable is removed from func and set is replaced by update_dimension(set, MOI.dimension(set) - 1).
        • Otherwise, a DeleteNotAllowed error is thrown.
      • Otherwise, the variable is removed from func, that is, it is substituted for zero.
    source
    MathOptInterface.deleteMethod
    delete(model::ModelLike, indices::Vector{R<:Index}) where {R}

    Delete the referenced objects in the vector indices from the model. It may be assumed that R is a concrete type. The default fallback sequentially deletes the individual items in indices, although specialized implementations may be more efficient.

    source

    Attributes

    MathOptInterface.VariableNameType
    VariableName()

    A variable attribute for a string identifying the variable. It is valid for two variables to have the same name; however, variables with duplicate names cannot be looked up using get. It has a default value of "" if not set`.

    source
    MathOptInterface.VariablePrimalStartType
    VariablePrimalStart()

    A variable attribute for the initial assignment to some primal variable's value that the optimizer may use to warm-start the solve. May be a number or nothing (unset).

    source
    MathOptInterface.VariablePrimalType
    VariablePrimal(result_index::Int = 1)

    A variable attribute for the assignment to some primal variable's value in result result_index. If result_index is omitted, it is 1 by default.

    If the solver does not have a primal value for the variable because the result_index is beyond the available solutions (whose number is indicated by the ResultCount attribute), getting this attribute must throw a ResultIndexBoundsError. Otherwise, if the result is unavailable for another reason (for instance, only a dual solution is available), the result is undefined. Users should first check PrimalStatus before accessing the VariablePrimal attribute.

    See ResultCount for information on how the results are ordered.

    source
    MathOptInterface.VariableBasisStatusType
    VariableBasisStatus(result_index::Int = 1)

    A variable attribute for the BasisStatusCode of a variable in result result_index, with respect to an available optimal solution basis.

    If the solver does not have a basis status for the variable because the result_index is beyond the available solutions (whose number is indicated by the ResultCount attribute), getting this attribute must throw a ResultIndexBoundsError. Otherwise, if the result is unavailable for another reason (for instance, only a dual solution is available), the result is undefined. Users should first check PrimalStatus before accessing the VariableBasisStatus attribute.

    See ResultCount for information on how the results are ordered.

    source
    diff --git a/dev/moi/release_notes/index.html b/dev/moi/release_notes/index.html index 3b37f2fe7c5..7559ff08d75 100644 --- a/dev/moi/release_notes/index.html +++ b/dev/moi/release_notes/index.html @@ -31,4 +31,4 @@ end write(path, s) end -end

    v0.9.22 (May 22, 2021)

    This release contains backports from the ongoing development of the v0.10 release.

    • Improved type inference in Utilities, Bridges and FileFormats submodules to reduce latency.
    • Improved performance of Utilities.is_canonical.
    • Fixed Utilities.pass_nonvariable_constraints with bridged variables.
    • Fixed performance regression of Utilities.Model.
    • Fixed ordering of objective setting in parser.

    v0.9.21 (April 23, 2021)

    • Added supports_shift_constant.
    • Improve performance of bridging quadratic constraints.
    • Add precompilation statements.
    • Large improvements to the documentation.
    • Fix a variety of inference issues, benefiting precompilation and reducing initial latency.
    • RawParameters are now ignored when resetting a CachingOptimizer. Previously, changing the underlying optimizer after RawParameters were set would throw an error.
    • Utilities.AbstractModel is being refactored. This may break users interacting with private fields of a model generated using @model.

    v0.9.20 (February 20, 2021)

    • Improved performance of Utilities.ScalarFunctionIterator
    • Added support for compute_conflict to MOI layers
    • Added test with zero off-diagonal quadratic term in objective
    • Fixed double deletion of nested bridged SingleVariable/VectorOfVariables constraints
    • Fixed modification of un-set objective
    • Fixed function modification with duplicate terms
    • Made unit tests abort without failing if the problem class is not supported
    • Formatted code with JuliaFormatter
    • Clarified BasisStatusCode's docstring

    v0.9.19 (December 1, 2020)

    • Added CallbackNodeStatus attribute
    • Added bridge from GreaterThan or LessThan to Interval
    • Added tests for infeasibility certificates and double optimize
    • Fixed support for Julia v1.6
    • Re-organized MOI docs and added documentation for adding a test

    v0.9.18 (November 3, 2020)

    • Various improvements for working with complex numbers
    • Added GeoMeantoRelEntrBridge to bridge a GeometricMeanCone constraint to a relative entropy constraint

    v0.9.17 (September 21, 2020)

    • Fixed CleverDict with variable of negative index value
    • Implement supports_add_constrained_variable for MockOptimizer

    v0.9.16 (September 17, 2020)

    • Various fixes:
      • 32-bit support
      • CleverDict with abstract value type
      • Checks in test suite

    v0.9.15 (September 14, 2020)

    • Bridges improvements:
      • (R)SOCtoNonConvexQuad bridge
      • ZeroOne bridge
      • Use supports_add_constrained_variable in LazyBridgeOptimizer
      • Exposed VariableBridgeCost and ConstraintBridgeCost attributes
      • Prioritize constraining variables on creation according to these costs
      • Refactor bridge debugging
    • Large performance improvements across all submodules
    • Lots of documentation improvements
    • FileFormats improvements:
      • Update MathOptFormat to v0.5
      • Fix supported objectives in FileFormats
    • Testing improvements:
      • Add name option for basic_constraint_test
    • Bug fixes and missing methods
      • Add length for iterators
      • Fix bug with duplicate terms
      • Fix order of LinearOfConstraintIndices

    v0.9.14 (May 30, 2020)

    • Add a solver-independent interface for accessing the set of conflicting constraints an Irreducible Inconsistent Subsystem (#1056).
    • Bump JSONSchema dependency from v0.2 to v0.3 (#1090).
    • Documentation improvements:
      • Fix typos (#1054, #1060, #1061, #1064, #1069, #1070).
      • Remove the outdated recommendation for a package implementing MOI for a solver XXX to be called MathOptInterfaceXXX (#1087).
    • Utilities improvements:
      • Fix is_canonical for quadratic functions (#1081, #1089).
      • Implement add_constrained_variable[s] for CachingOptimizer so that it is added as constrained variables to the underlying optimizer (#1084).
      • Add support for custom objective functions for UniversalFallback (#1086).
      • Deterministic ordering of constraints in UniversalFallback (#1088).
    • Testing improvements:
      • Add NormOneCone/NormInfinityCone tests (#1045).
    • Bridges improvements:
      • Add bridges from Semiinteger and Semicontinuous (#1059).
      • Implement getting ConstraintSet for Variable.FlipSignBridge (#1066).
      • Fix setting ConstraintFunction for Constraint.ScalarizeBridge (#1093).
      • Fix NormOne/NormInf bridges with nonzero constants (#1045).
      • Fix StackOverflow in debug (#1063).
    • FileFormats improvements:
      • [SDPA] Implement the extension for integer variables (#1079).
      • [SDPA] Ignore comments after m and nblocks and detect dat-s extension (#1077).
      • [SDPA] No scaling of off-diagonal coefficient (#1076).
      • [SDPA] Add missing negation of constant (#1075).

    v0.9.13 (March 24, 2020)

    • Added tests for Semicontinuous and Semiinteger variables (#1033).
    • Added tests for using ExprGraphs from NLP evaluators (#1043).
    • Update version compatibilities of dependencies (#1034, #1051, #1052).
    • Fixed typos in documentation (#1044).

    v0.9.12 (February 28, 2020)

    • Fixed writing NLPBlock in MathOptFormat (#1037).
    • Fixed MockOptimizer for result attributes with non-one result index (#1039).
    • Updated test template with instantiate (#1032).

    v0.9.11 (February 21, 2020)

    • Add an option for the model created by Utilities.@model to be a subtype of AbstractOptimizer (#1031).
    • Described dual cone in docstrings of GeoMeanCone and RelativeEntropyCone (#1018, #1028).
    • Fixed typos in documentation (#1022, #1024).
    • Fixed warning of unsupported attribute (#1027).
    • Added more rootdet/logdet conic tests (#1026).
    • Implemented ConstraintDual for Constraint.GeoMeanBridge, Constraint.RootDetBridge and Constraint.LogDetBridge and test duals in tests with GeoMeanCone and RootDetConeTriangle and LogDetConeTriangle cones (#1025, #1026).

    v0.9.10 (January 31, 2020)

    • Added OptimizerWithAttributes grouping an optimizer constructor and a list of optimizer attributes (#1008).
    • Added RelativeEntropyCone with corresponding bridge into exponential cone constraints (#993).
    • Added NormSpectralCone and NormNuclearCone with corresponding bridges into positive semidefinite constraints (#976).
    • Added supports_constrained_variable(s) (#1004).
    • Added dual_set_type (#1002).
    • Added tests for vector specialized version of delete (#989, #1011).
    • Added PSD3 test (#1007).
    • Clarified dual solution of Tests.pow1v and Tests.pow1f (#1013).
    • Added support for EqualTo and Zero in Bridges.Constraint.SplitIntervalBridge (#1005).
    • Fixed Utilities.vectorize for empty vector (#1003).
    • Fixed free variables in LP writer (#1006).

    v0.9.9 (December 29, 2019)

    • Incorporated MathOptFormat.jl as the FileFormats submodule. FileFormats provides readers and writers for a number of standard file formats and MOF, a file format specialized for MOI (#969).
    • Improved performance of deletion of vector of variables in MOI.Utilities.Model (#983).
    • Updated to MutableArithmetics v0.2 (#981).
    • Added MutableArithmetics.promote_operation allocation tests (#975).
    • Fixed inference issue on Julia v1.1 (#982).

    v0.9.8 (December 19, 2019)

    • Implemented MutableArithmetics API (#924).
    • Fixed callbacks with CachingOptimizer (#959).
    • Fixed MOI.dimension for MOI.Complements (#948).
    • Added fallback for add_variables (#972).
    • Added is_diagonal_vectorized_index utility (#965).
    • Improved linear constraints display in manual (#963, #964).
    • Bridges improvements:
      • Added IndicatorSet to SOS1 bridge (#877).
      • Added support for starting values for Variable.VectorizeBridge (#944).
      • Fixed MOI.add_constraints with non-bridged variable constraint on bridged variable (#951).
      • Fixed corner cases and docstring of GeoMeanBridge (#961, #962, #966).
      • Fixed choice between variable or constraint bridges for constrained variables (#973).
      • Improve performance of bridge shortest path (#945, #946, #956).
      • Added docstring for test_delete_bridge (#954).
      • Added Variable bridge tests (#952).

    v0.9.7 (October 30, 2019)

    • Implemented _result_index_field for NLPBlockDual (#934).
    • Fixed copy of model with starting values for vector constraints (#941).
    • Bridges improvements:
      • Improved performance of add_bridge and added has_bridge (#935).
      • Added AbstractSetMapBridge for bridges between sets S1, S2 such that there is a linear map A such that A*S1 = S2 (#933).
      • Added support for starting values for FlipSignBridge, VectorizeBridge, ScalarizeBridge, SlackBridge, SplitIntervalBridge, RSOCBridge, SOCRBridge NormInfinityBridge, SOCtoPSDBridge and RSOCtoPSDBridge (#933, #936, #937, #938, #939).

    v0.9.6 (October 25, 2019)

    • Added complementarity constraints (#913).
    • Allowed ModelLike objects as value of attributes (#928).
    • Testing improvements:
      • Added dual_objective_value option to MOI.Test.TestConfig (#922).
      • Added InvalidIndex tests in basic_constraint_tests (#921).
      • Added tests for the constant term in indicator constraint (#929).
    • Bridges improvements:
      • Added support for starting values for Functionize bridges (#923).
      • Added variable indices context to variable bridges (#920).
      • Fixed a typo in printing o debug_supports (#927).

    v0.9.5 (October 9, 2019)

    • Clarified PrimalStatus/DualStatus to be NO_SOLUTION if result_index is out of bounds (#912).
    • Added tolerance for checks and use ResultCount + 1 for the result_index in MOI.Test.solve_result_status (#910, #917).
    • Use 0.5 instead of 2.0 for power in PowerCone in basic_constraint_test (#916).
    • Bridges improvements:
      • Added debug utilities for unsupported variable/constraint/objective (#861).
      • Fixed deletion of variables in bridged VectorOfVariables constraints (#909).
      • Fixed result_index with objective bridges (#911).

    v0.9.4 (October 2, 2019)

    • Added solver-independent MIP callbacks (#782).
    • Implements submit for Utilities.CachingOptimizer and Bridges.AbstractBridgeOptimizer (#906).
    • Added tests for result count of solution attributes (#901, #904).
    • Added NumberOfThreads attribute (#892).
    • Added Utilities.get_bounds to get the bounds on a variable (#890).
    • Added a note on duplicate coefficients in documentation (#581).
    • Added result index in ConstraintBasisStatus (#898).
    • Added extension dictionary to Utilities.Model (#884, #895).
    • Fixed deletion of constrained variables for CachingOptimizer (#905).
    • Implemented Utilities.shift_constraint for Test.UnknownScalarSet (#896).
    • Bridges improvements:
      • Added Variable.RSOCtoSOCBridge (#907).
      • Implemented MOI.get for ConstraintFunction/ConstraintSet for Bridges.Constraint.SquareBridge (#899).

    v0.9.3 (September 20, 2019)

    • Fixed ambiguity detected in Julia v1.3 (#891, #893).
    • Fixed missing sets from ListOfSupportedConstraints (#880).
    • Fixed copy of VectorOfVariables constraints with duplicate indices (#886).
    • Added extension dictionary to MOIU.Model (#884).
    • Implemented MOI.get for function and set for GeoMeanBridge (#888).
    • Updated documentation for SingleVariable indices and bridges (#885).
    • Testing improvements:
      • Added more comprehensive tests for names (#882).
      • Added tests for SingleVariable duals (#883).
      • Added tests for DualExponentialCone and DualPowerCone (#873).
    • Improvements for arbitrary coefficient type:
      • Fixed == for sets with mutable fields (#887).
      • Removed some Float64 assumptions in bridges (#878).
      • Automatic selection of Constraint.[Scalar|Vector]FunctionizeBridge (#889).

    v0.9.2 (September 5, 2019)

    • Implemented model printing for MOI.ModelLike and specialized it for models defined in MOI (864).
    • Generalized contlinear tests for arbitrary coefficient type (#855).
    • Fixed supports_constraint for Semiinteger and Semicontinuous and supports for ObjectiveFunction (#859).
    • Fixed Allocate-Load copy for single variable constraints (#856).
    • Bridges improvements:
      • Add objective bridges (#789).
      • Fixed Variable.RSOCtoPSDBridge for dimension 2 (#869).
      • Added Variable.SOCtoRSOCBridge (#865).
      • Added Constraint.SOCRBridge and disable MOI.Bridges.Constraint.SOCtoPSDBridge (#751).
      • Fixed added_constraint_types for Contraint.LogDetBridge and Constraint.RootDetBridge (#870).

    v0.9.1 (August 22, 2019)

    • Fix support for Julia v1.2 (#834).
    • L1 and L∞ norm epigraph cones and corresponding bridges to LP were added (#818).
    • Added tests to MOI.Test.nametest (#833).
    • Fix MOI.Test.soc3test for solvers not supporting infeasibility certificates (#839).
    • Implements operate for operators * and / between vector function and constant (#837).
    • Implements show for MOI.Utilities.IndexMap (#847).
    • Fix corner cases for mapping of variables in MOI.Utilities.CachingOptimizer and substitution of variables in MOI.Bridges.AbstractBridgeOptimizer (#848).
    • Fix transformation of constant terms for MOI.Bridges.Constraint.SOCtoPSDBridge and MOI.Bridges.Constraint.RSOCtoPSDBridge (#840).

    v0.9.0 (August 13, 2019)

    • Support for Julia v0.6 and v0.7 was dropped (#714, #717).
    • A MOI.Utilities.Model implementation of ModelLike, this should replace most use cases of MOI.Utilities.@model (#781).
    • add_constrained_variable and add_constrained_variables were added (#759).
    • Support for indicator constraints was added (#709, #712).
    • DualObjectiveValue attribute was added (#473).
    • RawParameter attribute was added (#733).
    • A dual_set function was added (#804).
    • A Benchmarks submodule was added to facilitate solver benchmarking (#769).
    • A submit function was added, this may for instance allow the user to submit solutions or cuts to the solver from a callback (#775).
    • The field of ObjectiveValue was renamed to result_index (#729).
    • The _constant and Utilities.getconstant function were renamed to constant
    • REDUCTION_CERTIFICATE result status was added (#734).
    • Abstract matrix sets were added (#731).
    • Testing improvements:
      • The testing guideline was updated (#728).
      • Quadratic tests were added (#697).
      • Unit tests for RawStatusString, SolveTime, Silent and SolverName were added (#726, #741).
      • A rotated second-order cone test was added (#759).
      • A power cone test was added (#768).
      • Tests for ZeroOne variables with variable bounds were added (#772).
      • An unbounded test was added (#773).
      • Existing tests had a few updates (#702, #703, #763).
    • Documentation improvements:
      • Added a section on CachingOptimizer (#777).
      • Added a section on UniversalFallback, Model and @model (#762).
      • Transition the knapsack example to a doctest with MockOptimizer (#786).
    • Utilities improvements:
      • A CleverDict utility was added for a vector that automatically transform into a dictionary once a first index is removed (#767).
      • The Utilities.constant function was renamed to Utilities.constant_vector (#740).
      • Implement optimizer attributes for CachingOptimizer (#745).
      • Rename Utilities.add_scalar_constraint to Utilities.normalize_and_add_constraint (#801).
      • operate with vcat, SingleVariable and VectorOfVariables now returns a VectorOfVariables (#616).
      • Fix a type piracy of operate (#784).
      • The load_constraint fallback signature was fixed (#760).
      • The set_dot function was extended to work with sparse arrays (#805).
    • Bridges improvements:
      • The bridges no longer store the constraint function and set before it is bridged, the bridges now have to implement ConstraintFunction and ConstraintSet if the user wants to recover them. As a consequence, the @bridge macro was removed (#722).
      • Bridge are now instantiated with a bridge_constraint function instead of using a constructor (#730).
      • Fix constraint attributes for bridges (#699).
      • Constraint bridges were moved to the Bridges/Constraint submodule so they should now inherit from MOI.Bridges.Constraint.Abstract and should implement MOI.Bridges.Constraint.concrete_bridge_type instead of MOI.Bridges.concrete_bridge_type (#756).
      • Variable bridges were added in (#759).
      • Various improvements (#746, #747).

    v0.8.4 (March 13, 2019)

    • Performance improvement in default_copy_to and bridge optimizer (#696).
    • Add Silent and implement setting optimizer attributes in caching and mock optimizers (#695).
    • Add Functionize bridges (SingleVariable and VectorOfVariables) (#659).
    • Minor typo fixes (#694).

    v0.8.3 (March 6, 2019)

    • Use zero constant in scalar constraint function of MOI.Test.copytest (#691).
    • Fix variable deletion with SingleVariable objective function (#690).
    • Fix LazyBridgeOptimizer with bridges that add no constraints (#689).
    • Error message improvements (#673, #685, #686, #688).
    • Documentation improvements (#682, #683, #687).
    • Basis status:
      • Remove VariableBasisStatus (#679).
      • Test ConstraintBasisStatus and implement it in bridges (#678).
    • Fix inference of NumberOfVariables and NumberOfConstraints (#677).
    • Implement division between a quadratic function and a number (#675).

    v0.8.2 (February 7, 2019)

    • Add RawStatusString attribute (#629).
    • Do not set names to the optimizer but only to the cache in CachingOptimizer (#638).
    • Make scalar MOI functions act as scalars in broadcast (#646).
    • Add function utilities:
      • Implement Base.zero (#634), Base.iszero (#643), add missing arithmetic operations (#644, #645) and fix division (#648).
      • Add a vectorize function that turns a vector of ScalarAffineFunction into a VectorAffineFunction (#642).
    • Improve support for starting values:
      • Show a warning in copy when starting values are not supported instead of throwing an error (#630).
      • Fix UniversalFallback for getting an variable or constraint attribute set to no indices (#623).
      • Add a test in contlineartest with partially set VariablePrimalStart.
    • Bridges improvements:
      • Fix StackOverFlow in LazyBridgeOptimizer when there is a cycle in the graph of bridges.
      • Add Slack bridges (#610, #650).
      • Add FlipSign bridges (#658).
    • Add tests with duplicate coefficients in ScalarAffineFunction and VectorAffineFunction (#639).
    • Use tolerance to compare VariablePrimal in rotatedsoc1 test (#632).
    • Use a zero constant in ScalarAffineFunction of constraints in psdt2 (#622).

    v0.8.1 (January 7, 2019)

    • Adding an NLP objective now overrides any objective set using the ObjectiveFunction attribute (#619).
    • Rename fullbridgeoptimizer into full_bridge_optimizer (#621).
    • Allow custom constraint types with full_bridge_optimizer (#617).
    • Add Vectorize bridge which transforms scalar linear constraints into vector linear constraints (#615).

    v0.8.0 (December 18, 2018)

    • Rename all enum values to follow the JuMP naming guidelines for constants, for example, Optimal becomes OPTIMAL, and DualInfeasible becomes DUAL_INFEASIBLE.
    • Rename CachingOptimizer methods for style compliance.
    • Add an MOI.TerminationStatusCode called ALMOST_DUAL_INFEASIBLE.

    v0.7.0 (December 13, 2018)

    • Test that MOI.TerminationStatus is MOI.OptimizeNotCalled before MOI.optimize! is called.
    • Check supports_default_copy_to in tests (#594).
    • Key pieces of information like optimality, infeasibility, etc., are now reported through TerminationStatusCode. It is typically no longer necessary to check the result statuses in addition to the termination status.
    • Add perspective dimension to log-det cone (#593).

    v0.6.4 (November 27, 2018)

    • Add OptimizeNotCalled termination status (#577) and improve documentation of other statuses (#575).
    • Add a solver naming guideline (#578).
    • Make FeasibilitySense the default ObjectiveSense (#579).
    • Fix Utilities.@model and Bridges.@bridge macros for functions and sets defined outside MOI (#582).
    • Document solver-specific attributes (#580) and implement them in Utilities.CachingOptimizer (#565).

    v0.6.3 (November 16, 2018)

    • Variables and constraints are now allowed to have duplicate names. An error is thrown only on lookup. This change breaks some existing tests. (#549)
    • Attributes may now be partially set (some values could be nothing). (#563)
    • Performance improvements in Utilities.Model (#549, #567, #568)
    • Fix bug in QuadtoSOC (#558).
    • New supports_default_copy_to method that optimizers should implement to control caching behavior.
    • Documentation improvements.

    v0.6.2 (October 26, 2018)

    • Improve hygiene of @model macro (#544).
    • Fix bug in copy tests (#543).
    • Fix bug in UniversalFallback attribute getter (#540).
    • Allow all correct solutions for solve_blank_obj unit test (#537).
    • Add errors for Allocate-Load and bad constraints (#534).
    • [performance] Add specialized implementation of hash for VariableIndex (#533).
    • [performance] Construct the name to object dictionaries lazily in model (#535).
    • Add the QuadtoSOC bridge which transforms ScalarQuadraticFunction constraints into RotatedSecondOrderCone (#483).

    v0.6.1 (September 22, 2018)

    • Enable PositiveSemidefiniteConeSquare set and quadratic functions in MOIB.fullbridgeoptimizer (#524).
    • Add warning in the bridge between PositiveSemidefiniteConeSquare and PositiveSemidefiniteConeTriangle when the matrix is almost symmetric (#522).
    • Modify MOIT.copytest to not add multiples constraints on the same variable (#521).
    • Add missing keyword argument in one of MOIU.add_scalar_constraint methods (#520).

    v0.6.0 (August 30, 2018)

    • The MOIU.@model and MOIB.@bridge macros now support functions and sets defined in external modules. As a consequence, function and set names in the macro arguments need to be prefixed by module name.
    • Rename functions according to the JuMP style guide:
      • copy! with keyword arguments copynames and warnattributes -> copy_to with keyword arguments copy_names and warn_attributes;
      • set! -> set;
      • addvariable[s]! -> add_variable[s];
      • supportsconstraint -> supports_constraint;
      • addconstraint[s]! -> add_constraint[s];
      • isvalid -> is_valid;
      • isempty -> is_empty;
      • Base.delete! -> delete;
      • modify! -> modify;
      • transform! -> transform;
      • initialize! -> initialize;
      • write -> write_to_file; and
      • read! -> read_from_file.
    • Remove free! (use Base.finalize instead).
    • Add the SquarePSD bridge which transforms PositiveSemidefiniteConeTriangle constraints into PositiveSemidefiniteConeTriangle.
    • Add result fallback for ConstraintDual of variable-wise constraint, ConstraintPrimal and ObjectiveValue.
    • Add tests for ObjectiveBound.
    • Add test for empty rows in vector linear constraint.
    • Rework errors: CannotError has been renamed NotAllowedError and the distinction between UnsupportedError and NotAllowedError is now about whether the element is not supported (for example, it cannot be copied a model containing this element) or the operation is not allowed (either because it is not implemented, because it cannot be performed in the current state of the model, or because it cannot be performed for a specific index)
    • canget is removed. NoSolution is added as a result status to indicate that the solver does not have either a primal or dual solution available (See #479).

    v0.5.0 (August 5, 2018)

    • Fix names with CachingOptimizer.
    • Cleanup thanks to @mohamed82008.
    • Added a universal fallback for constraints.
    • Fast utilities for function canonicalization thanks to @rdeits.
    • Renamed dimension field to side_dimension in the context of matrix-like sets.
    • New and improved tests for cases like duplicate terms and ObjectiveBound.
    • Removed cantransform, canaddconstraint, canaddvariable, canset, canmodify, and candelete functions from the API. They are replaced by a new set of errors that are thrown: Subtypes of UnsupportedError indicate unsupported operations, while subtypes of CannotError indicate operations that cannot be performed in the current state.
    • The API for copy! is updated to remove the CopyResult type.
    • Updates for the new JuMP style guide.

    v0.4.1 (June 28, 2018)

    • Fixes vector function modification on 32 bits.
    • Fixes Bellman-Ford algorithm for bridges.
    • Added an NLP test with FeasibilitySense.
    • Update modification documentation.

    v0.4.0 (June 23, 2018)

    • Helper constructors for VectorAffineTerm and VectorQuadraticTerm.
    • Added modify_lhs to TestConfig.
    • Additional unit tests for optimizers.
    • Added a type parameter to CachingOptimizer for the optimizer field.
    • New API for problem modification (#388)
    • Tests pass without deprecation warnings on Julia 0.7.
    • Small fixes and documentation updates.

    v0.3.0 (May 25, 2018)

    • Functions have been redefined to use arrays-of-structs instead of structs-of-arrays.
    • Improvements to MockOptimizer.
    • Significant changes to Bridges.
    • New and improved unit tests.
    • Fixes for Julia 0.7.

    v0.2.0 (April 24, 2018)

    • Improvements to and better coverage of Tests.
    • Documentation fixes.
    • SolverName attribute.
    • Changes to the NLP interface (new definition of variable order and arrays of structs for bound pairs and sparsity patterns).
    • Addition of NLP tests.
    • Introduction of UniversalFallback.
    • copynames keyword argument to MOI.copy!.
    • Add Bridges submodule.

    v0.1.0 (February 28, 2018)

    • Initial public release.
    • The framework for MOI was developed at the JuMP-dev workshop at MIT in June 2017 as a sorely needed replacement for MathProgBase.
    +end

    v0.9.22 (May 22, 2021)

    This release contains backports from the ongoing development of the v0.10 release.

    • Improved type inference in Utilities, Bridges and FileFormats submodules to reduce latency.
    • Improved performance of Utilities.is_canonical.
    • Fixed Utilities.pass_nonvariable_constraints with bridged variables.
    • Fixed performance regression of Utilities.Model.
    • Fixed ordering of objective setting in parser.

    v0.9.21 (April 23, 2021)

    • Added supports_shift_constant.
    • Improve performance of bridging quadratic constraints.
    • Add precompilation statements.
    • Large improvements to the documentation.
    • Fix a variety of inference issues, benefiting precompilation and reducing initial latency.
    • RawParameters are now ignored when resetting a CachingOptimizer. Previously, changing the underlying optimizer after RawParameters were set would throw an error.
    • Utilities.AbstractModel is being refactored. This may break users interacting with private fields of a model generated using @model.

    v0.9.20 (February 20, 2021)

    • Improved performance of Utilities.ScalarFunctionIterator
    • Added support for compute_conflict to MOI layers
    • Added test with zero off-diagonal quadratic term in objective
    • Fixed double deletion of nested bridged SingleVariable/VectorOfVariables constraints
    • Fixed modification of un-set objective
    • Fixed function modification with duplicate terms
    • Made unit tests abort without failing if the problem class is not supported
    • Formatted code with JuliaFormatter
    • Clarified BasisStatusCode's docstring

    v0.9.19 (December 1, 2020)

    • Added CallbackNodeStatus attribute
    • Added bridge from GreaterThan or LessThan to Interval
    • Added tests for infeasibility certificates and double optimize
    • Fixed support for Julia v1.6
    • Re-organized MOI docs and added documentation for adding a test

    v0.9.18 (November 3, 2020)

    • Various improvements for working with complex numbers
    • Added GeoMeantoRelEntrBridge to bridge a GeometricMeanCone constraint to a relative entropy constraint

    v0.9.17 (September 21, 2020)

    • Fixed CleverDict with variable of negative index value
    • Implement supports_add_constrained_variable for MockOptimizer

    v0.9.16 (September 17, 2020)

    • Various fixes:
      • 32-bit support
      • CleverDict with abstract value type
      • Checks in test suite

    v0.9.15 (September 14, 2020)

    • Bridges improvements:
      • (R)SOCtoNonConvexQuad bridge
      • ZeroOne bridge
      • Use supports_add_constrained_variable in LazyBridgeOptimizer
      • Exposed VariableBridgeCost and ConstraintBridgeCost attributes
      • Prioritize constraining variables on creation according to these costs
      • Refactor bridge debugging
    • Large performance improvements across all submodules
    • Lots of documentation improvements
    • FileFormats improvements:
      • Update MathOptFormat to v0.5
      • Fix supported objectives in FileFormats
    • Testing improvements:
      • Add name option for basic_constraint_test
    • Bug fixes and missing methods
      • Add length for iterators
      • Fix bug with duplicate terms
      • Fix order of LinearOfConstraintIndices

    v0.9.14 (May 30, 2020)

    • Add a solver-independent interface for accessing the set of conflicting constraints an Irreducible Inconsistent Subsystem (#1056).
    • Bump JSONSchema dependency from v0.2 to v0.3 (#1090).
    • Documentation improvements:
      • Fix typos (#1054, #1060, #1061, #1064, #1069, #1070).
      • Remove the outdated recommendation for a package implementing MOI for a solver XXX to be called MathOptInterfaceXXX (#1087).
    • Utilities improvements:
      • Fix is_canonical for quadratic functions (#1081, #1089).
      • Implement add_constrained_variable[s] for CachingOptimizer so that it is added as constrained variables to the underlying optimizer (#1084).
      • Add support for custom objective functions for UniversalFallback (#1086).
      • Deterministic ordering of constraints in UniversalFallback (#1088).
    • Testing improvements:
      • Add NormOneCone/NormInfinityCone tests (#1045).
    • Bridges improvements:
      • Add bridges from Semiinteger and Semicontinuous (#1059).
      • Implement getting ConstraintSet for Variable.FlipSignBridge (#1066).
      • Fix setting ConstraintFunction for Constraint.ScalarizeBridge (#1093).
      • Fix NormOne/NormInf bridges with nonzero constants (#1045).
      • Fix StackOverflow in debug (#1063).
    • FileFormats improvements:
      • [SDPA] Implement the extension for integer variables (#1079).
      • [SDPA] Ignore comments after m and nblocks and detect dat-s extension (#1077).
      • [SDPA] No scaling of off-diagonal coefficient (#1076).
      • [SDPA] Add missing negation of constant (#1075).

    v0.9.13 (March 24, 2020)

    • Added tests for Semicontinuous and Semiinteger variables (#1033).
    • Added tests for using ExprGraphs from NLP evaluators (#1043).
    • Update version compatibilities of dependencies (#1034, #1051, #1052).
    • Fixed typos in documentation (#1044).

    v0.9.12 (February 28, 2020)

    • Fixed writing NLPBlock in MathOptFormat (#1037).
    • Fixed MockOptimizer for result attributes with non-one result index (#1039).
    • Updated test template with instantiate (#1032).

    v0.9.11 (February 21, 2020)

    • Add an option for the model created by Utilities.@model to be a subtype of AbstractOptimizer (#1031).
    • Described dual cone in docstrings of GeoMeanCone and RelativeEntropyCone (#1018, #1028).
    • Fixed typos in documentation (#1022, #1024).
    • Fixed warning of unsupported attribute (#1027).
    • Added more rootdet/logdet conic tests (#1026).
    • Implemented ConstraintDual for Constraint.GeoMeanBridge, Constraint.RootDetBridge and Constraint.LogDetBridge and test duals in tests with GeoMeanCone and RootDetConeTriangle and LogDetConeTriangle cones (#1025, #1026).

    v0.9.10 (January 31, 2020)

    • Added OptimizerWithAttributes grouping an optimizer constructor and a list of optimizer attributes (#1008).
    • Added RelativeEntropyCone with corresponding bridge into exponential cone constraints (#993).
    • Added NormSpectralCone and NormNuclearCone with corresponding bridges into positive semidefinite constraints (#976).
    • Added supports_constrained_variable(s) (#1004).
    • Added dual_set_type (#1002).
    • Added tests for vector specialized version of delete (#989, #1011).
    • Added PSD3 test (#1007).
    • Clarified dual solution of Tests.pow1v and Tests.pow1f (#1013).
    • Added support for EqualTo and Zero in Bridges.Constraint.SplitIntervalBridge (#1005).
    • Fixed Utilities.vectorize for empty vector (#1003).
    • Fixed free variables in LP writer (#1006).

    v0.9.9 (December 29, 2019)

    • Incorporated MathOptFormat.jl as the FileFormats submodule. FileFormats provides readers and writers for a number of standard file formats and MOF, a file format specialized for MOI (#969).
    • Improved performance of deletion of vector of variables in MOI.Utilities.Model (#983).
    • Updated to MutableArithmetics v0.2 (#981).
    • Added MutableArithmetics.promote_operation allocation tests (#975).
    • Fixed inference issue on Julia v1.1 (#982).

    v0.9.8 (December 19, 2019)

    • Implemented MutableArithmetics API (#924).
    • Fixed callbacks with CachingOptimizer (#959).
    • Fixed MOI.dimension for MOI.Complements (#948).
    • Added fallback for add_variables (#972).
    • Added is_diagonal_vectorized_index utility (#965).
    • Improved linear constraints display in manual (#963, #964).
    • Bridges improvements:
      • Added IndicatorSet to SOS1 bridge (#877).
      • Added support for starting values for Variable.VectorizeBridge (#944).
      • Fixed MOI.add_constraints with non-bridged variable constraint on bridged variable (#951).
      • Fixed corner cases and docstring of GeoMeanBridge (#961, #962, #966).
      • Fixed choice between variable or constraint bridges for constrained variables (#973).
      • Improve performance of bridge shortest path (#945, #946, #956).
      • Added docstring for test_delete_bridge (#954).
      • Added Variable bridge tests (#952).

    v0.9.7 (October 30, 2019)

    • Implemented _result_index_field for NLPBlockDual (#934).
    • Fixed copy of model with starting values for vector constraints (#941).
    • Bridges improvements:
      • Improved performance of add_bridge and added has_bridge (#935).
      • Added AbstractSetMapBridge for bridges between sets S1, S2 such that there is a linear map A such that A*S1 = S2 (#933).
      • Added support for starting values for FlipSignBridge, VectorizeBridge, ScalarizeBridge, SlackBridge, SplitIntervalBridge, RSOCBridge, SOCRBridge NormInfinityBridge, SOCtoPSDBridge and RSOCtoPSDBridge (#933, #936, #937, #938, #939).

    v0.9.6 (October 25, 2019)

    • Added complementarity constraints (#913).
    • Allowed ModelLike objects as value of attributes (#928).
    • Testing improvements:
      • Added dual_objective_value option to MOI.Test.TestConfig (#922).
      • Added InvalidIndex tests in basic_constraint_tests (#921).
      • Added tests for the constant term in indicator constraint (#929).
    • Bridges improvements:
      • Added support for starting values for Functionize bridges (#923).
      • Added variable indices context to variable bridges (#920).
      • Fixed a typo in printing o debug_supports (#927).

    v0.9.5 (October 9, 2019)

    • Clarified PrimalStatus/DualStatus to be NO_SOLUTION if result_index is out of bounds (#912).
    • Added tolerance for checks and use ResultCount + 1 for the result_index in MOI.Test.solve_result_status (#910, #917).
    • Use 0.5 instead of 2.0 for power in PowerCone in basic_constraint_test (#916).
    • Bridges improvements:
      • Added debug utilities for unsupported variable/constraint/objective (#861).
      • Fixed deletion of variables in bridged VectorOfVariables constraints (#909).
      • Fixed result_index with objective bridges (#911).

    v0.9.4 (October 2, 2019)

    • Added solver-independent MIP callbacks (#782).
    • Implements submit for Utilities.CachingOptimizer and Bridges.AbstractBridgeOptimizer (#906).
    • Added tests for result count of solution attributes (#901, #904).
    • Added NumberOfThreads attribute (#892).
    • Added Utilities.get_bounds to get the bounds on a variable (#890).
    • Added a note on duplicate coefficients in documentation (#581).
    • Added result index in ConstraintBasisStatus (#898).
    • Added extension dictionary to Utilities.Model (#884, #895).
    • Fixed deletion of constrained variables for CachingOptimizer (#905).
    • Implemented Utilities.shift_constraint for Test.UnknownScalarSet (#896).
    • Bridges improvements:
      • Added Variable.RSOCtoSOCBridge (#907).
      • Implemented MOI.get for ConstraintFunction/ConstraintSet for Bridges.Constraint.SquareBridge (#899).

    v0.9.3 (September 20, 2019)

    • Fixed ambiguity detected in Julia v1.3 (#891, #893).
    • Fixed missing sets from ListOfSupportedConstraints (#880).
    • Fixed copy of VectorOfVariables constraints with duplicate indices (#886).
    • Added extension dictionary to MOIU.Model (#884).
    • Implemented MOI.get for function and set for GeoMeanBridge (#888).
    • Updated documentation for SingleVariable indices and bridges (#885).
    • Testing improvements:
      • Added more comprehensive tests for names (#882).
      • Added tests for SingleVariable duals (#883).
      • Added tests for DualExponentialCone and DualPowerCone (#873).
    • Improvements for arbitrary coefficient type:
      • Fixed == for sets with mutable fields (#887).
      • Removed some Float64 assumptions in bridges (#878).
      • Automatic selection of Constraint.[Scalar|Vector]FunctionizeBridge (#889).

    v0.9.2 (September 5, 2019)

    • Implemented model printing for MOI.ModelLike and specialized it for models defined in MOI (864).
    • Generalized contlinear tests for arbitrary coefficient type (#855).
    • Fixed supports_constraint for Semiinteger and Semicontinuous and supports for ObjectiveFunction (#859).
    • Fixed Allocate-Load copy for single variable constraints (#856).
    • Bridges improvements:
      • Add objective bridges (#789).
      • Fixed Variable.RSOCtoPSDBridge for dimension 2 (#869).
      • Added Variable.SOCtoRSOCBridge (#865).
      • Added Constraint.SOCRBridge and disable MOI.Bridges.Constraint.SOCtoPSDBridge (#751).
      • Fixed added_constraint_types for Contraint.LogDetBridge and Constraint.RootDetBridge (#870).

    v0.9.1 (August 22, 2019)

    • Fix support for Julia v1.2 (#834).
    • L1 and L∞ norm epigraph cones and corresponding bridges to LP were added (#818).
    • Added tests to MOI.Test.nametest (#833).
    • Fix MOI.Test.soc3test for solvers not supporting infeasibility certificates (#839).
    • Implements operate for operators * and / between vector function and constant (#837).
    • Implements show for MOI.Utilities.IndexMap (#847).
    • Fix corner cases for mapping of variables in MOI.Utilities.CachingOptimizer and substitution of variables in MOI.Bridges.AbstractBridgeOptimizer (#848).
    • Fix transformation of constant terms for MOI.Bridges.Constraint.SOCtoPSDBridge and MOI.Bridges.Constraint.RSOCtoPSDBridge (#840).

    v0.9.0 (August 13, 2019)

    • Support for Julia v0.6 and v0.7 was dropped (#714, #717).
    • A MOI.Utilities.Model implementation of ModelLike, this should replace most use cases of MOI.Utilities.@model (#781).
    • add_constrained_variable and add_constrained_variables were added (#759).
    • Support for indicator constraints was added (#709, #712).
    • DualObjectiveValue attribute was added (#473).
    • RawParameter attribute was added (#733).
    • A dual_set function was added (#804).
    • A Benchmarks submodule was added to facilitate solver benchmarking (#769).
    • A submit function was added, this may for instance allow the user to submit solutions or cuts to the solver from a callback (#775).
    • The field of ObjectiveValue was renamed to result_index (#729).
    • The _constant and Utilities.getconstant function were renamed to constant
    • REDUCTION_CERTIFICATE result status was added (#734).
    • Abstract matrix sets were added (#731).
    • Testing improvements:
      • The testing guideline was updated (#728).
      • Quadratic tests were added (#697).
      • Unit tests for RawStatusString, SolveTime, Silent and SolverName were added (#726, #741).
      • A rotated second-order cone test was added (#759).
      • A power cone test was added (#768).
      • Tests for ZeroOne variables with variable bounds were added (#772).
      • An unbounded test was added (#773).
      • Existing tests had a few updates (#702, #703, #763).
    • Documentation improvements:
      • Added a section on CachingOptimizer (#777).
      • Added a section on UniversalFallback, Model and @model (#762).
      • Transition the knapsack example to a doctest with MockOptimizer (#786).
    • Utilities improvements:
      • A CleverDict utility was added for a vector that automatically transform into a dictionary once a first index is removed (#767).
      • The Utilities.constant function was renamed to Utilities.constant_vector (#740).
      • Implement optimizer attributes for CachingOptimizer (#745).
      • Rename Utilities.add_scalar_constraint to Utilities.normalize_and_add_constraint (#801).
      • operate with vcat, SingleVariable and VectorOfVariables now returns a VectorOfVariables (#616).
      • Fix a type piracy of operate (#784).
      • The load_constraint fallback signature was fixed (#760).
      • The set_dot function was extended to work with sparse arrays (#805).
    • Bridges improvements:
      • The bridges no longer store the constraint function and set before it is bridged, the bridges now have to implement ConstraintFunction and ConstraintSet if the user wants to recover them. As a consequence, the @bridge macro was removed (#722).
      • Bridge are now instantiated with a bridge_constraint function instead of using a constructor (#730).
      • Fix constraint attributes for bridges (#699).
      • Constraint bridges were moved to the Bridges/Constraint submodule so they should now inherit from MOI.Bridges.Constraint.Abstract and should implement MOI.Bridges.Constraint.concrete_bridge_type instead of MOI.Bridges.concrete_bridge_type (#756).
      • Variable bridges were added in (#759).
      • Various improvements (#746, #747).

    v0.8.4 (March 13, 2019)

    • Performance improvement in default_copy_to and bridge optimizer (#696).
    • Add Silent and implement setting optimizer attributes in caching and mock optimizers (#695).
    • Add Functionize bridges (SingleVariable and VectorOfVariables) (#659).
    • Minor typo fixes (#694).

    v0.8.3 (March 6, 2019)

    • Use zero constant in scalar constraint function of MOI.Test.copytest (#691).
    • Fix variable deletion with SingleVariable objective function (#690).
    • Fix LazyBridgeOptimizer with bridges that add no constraints (#689).
    • Error message improvements (#673, #685, #686, #688).
    • Documentation improvements (#682, #683, #687).
    • Basis status:
      • Remove VariableBasisStatus (#679).
      • Test ConstraintBasisStatus and implement it in bridges (#678).
    • Fix inference of NumberOfVariables and NumberOfConstraints (#677).
    • Implement division between a quadratic function and a number (#675).

    v0.8.2 (February 7, 2019)

    • Add RawStatusString attribute (#629).
    • Do not set names to the optimizer but only to the cache in CachingOptimizer (#638).
    • Make scalar MOI functions act as scalars in broadcast (#646).
    • Add function utilities:
      • Implement Base.zero (#634), Base.iszero (#643), add missing arithmetic operations (#644, #645) and fix division (#648).
      • Add a vectorize function that turns a vector of ScalarAffineFunction into a VectorAffineFunction (#642).
    • Improve support for starting values:
      • Show a warning in copy when starting values are not supported instead of throwing an error (#630).
      • Fix UniversalFallback for getting an variable or constraint attribute set to no indices (#623).
      • Add a test in contlineartest with partially set VariablePrimalStart.
    • Bridges improvements:
      • Fix StackOverFlow in LazyBridgeOptimizer when there is a cycle in the graph of bridges.
      • Add Slack bridges (#610, #650).
      • Add FlipSign bridges (#658).
    • Add tests with duplicate coefficients in ScalarAffineFunction and VectorAffineFunction (#639).
    • Use tolerance to compare VariablePrimal in rotatedsoc1 test (#632).
    • Use a zero constant in ScalarAffineFunction of constraints in psdt2 (#622).

    v0.8.1 (January 7, 2019)

    • Adding an NLP objective now overrides any objective set using the ObjectiveFunction attribute (#619).
    • Rename fullbridgeoptimizer into full_bridge_optimizer (#621).
    • Allow custom constraint types with full_bridge_optimizer (#617).
    • Add Vectorize bridge which transforms scalar linear constraints into vector linear constraints (#615).

    v0.8.0 (December 18, 2018)

    • Rename all enum values to follow the JuMP naming guidelines for constants, for example, Optimal becomes OPTIMAL, and DualInfeasible becomes DUAL_INFEASIBLE.
    • Rename CachingOptimizer methods for style compliance.
    • Add an MOI.TerminationStatusCode called ALMOST_DUAL_INFEASIBLE.

    v0.7.0 (December 13, 2018)

    • Test that MOI.TerminationStatus is MOI.OptimizeNotCalled before MOI.optimize! is called.
    • Check supports_default_copy_to in tests (#594).
    • Key pieces of information like optimality, infeasibility, etc., are now reported through TerminationStatusCode. It is typically no longer necessary to check the result statuses in addition to the termination status.
    • Add perspective dimension to log-det cone (#593).

    v0.6.4 (November 27, 2018)

    • Add OptimizeNotCalled termination status (#577) and improve documentation of other statuses (#575).
    • Add a solver naming guideline (#578).
    • Make FeasibilitySense the default ObjectiveSense (#579).
    • Fix Utilities.@model and Bridges.@bridge macros for functions and sets defined outside MOI (#582).
    • Document solver-specific attributes (#580) and implement them in Utilities.CachingOptimizer (#565).

    v0.6.3 (November 16, 2018)

    • Variables and constraints are now allowed to have duplicate names. An error is thrown only on lookup. This change breaks some existing tests. (#549)
    • Attributes may now be partially set (some values could be nothing). (#563)
    • Performance improvements in Utilities.Model (#549, #567, #568)
    • Fix bug in QuadtoSOC (#558).
    • New supports_default_copy_to method that optimizers should implement to control caching behavior.
    • Documentation improvements.

    v0.6.2 (October 26, 2018)

    • Improve hygiene of @model macro (#544).
    • Fix bug in copy tests (#543).
    • Fix bug in UniversalFallback attribute getter (#540).
    • Allow all correct solutions for solve_blank_obj unit test (#537).
    • Add errors for Allocate-Load and bad constraints (#534).
    • [performance] Add specialized implementation of hash for VariableIndex (#533).
    • [performance] Construct the name to object dictionaries lazily in model (#535).
    • Add the QuadtoSOC bridge which transforms ScalarQuadraticFunction constraints into RotatedSecondOrderCone (#483).

    v0.6.1 (September 22, 2018)

    • Enable PositiveSemidefiniteConeSquare set and quadratic functions in MOIB.fullbridgeoptimizer (#524).
    • Add warning in the bridge between PositiveSemidefiniteConeSquare and PositiveSemidefiniteConeTriangle when the matrix is almost symmetric (#522).
    • Modify MOIT.copytest to not add multiples constraints on the same variable (#521).
    • Add missing keyword argument in one of MOIU.add_scalar_constraint methods (#520).

    v0.6.0 (August 30, 2018)

    • The MOIU.@model and MOIB.@bridge macros now support functions and sets defined in external modules. As a consequence, function and set names in the macro arguments need to be prefixed by module name.
    • Rename functions according to the JuMP style guide:
      • copy! with keyword arguments copynames and warnattributes -> copy_to with keyword arguments copy_names and warn_attributes;
      • set! -> set;
      • addvariable[s]! -> add_variable[s];
      • supportsconstraint -> supports_constraint;
      • addconstraint[s]! -> add_constraint[s];
      • isvalid -> is_valid;
      • isempty -> is_empty;
      • Base.delete! -> delete;
      • modify! -> modify;
      • transform! -> transform;
      • initialize! -> initialize;
      • write -> write_to_file; and
      • read! -> read_from_file.
    • Remove free! (use Base.finalize instead).
    • Add the SquarePSD bridge which transforms PositiveSemidefiniteConeTriangle constraints into PositiveSemidefiniteConeTriangle.
    • Add result fallback for ConstraintDual of variable-wise constraint, ConstraintPrimal and ObjectiveValue.
    • Add tests for ObjectiveBound.
    • Add test for empty rows in vector linear constraint.
    • Rework errors: CannotError has been renamed NotAllowedError and the distinction between UnsupportedError and NotAllowedError is now about whether the element is not supported (for example, it cannot be copied a model containing this element) or the operation is not allowed (either because it is not implemented, because it cannot be performed in the current state of the model, or because it cannot be performed for a specific index)
    • canget is removed. NoSolution is added as a result status to indicate that the solver does not have either a primal or dual solution available (See #479).

    v0.5.0 (August 5, 2018)

    • Fix names with CachingOptimizer.
    • Cleanup thanks to @mohamed82008.
    • Added a universal fallback for constraints.
    • Fast utilities for function canonicalization thanks to @rdeits.
    • Renamed dimension field to side_dimension in the context of matrix-like sets.
    • New and improved tests for cases like duplicate terms and ObjectiveBound.
    • Removed cantransform, canaddconstraint, canaddvariable, canset, canmodify, and candelete functions from the API. They are replaced by a new set of errors that are thrown: Subtypes of UnsupportedError indicate unsupported operations, while subtypes of CannotError indicate operations that cannot be performed in the current state.
    • The API for copy! is updated to remove the CopyResult type.
    • Updates for the new JuMP style guide.

    v0.4.1 (June 28, 2018)

    • Fixes vector function modification on 32 bits.
    • Fixes Bellman-Ford algorithm for bridges.
    • Added an NLP test with FeasibilitySense.
    • Update modification documentation.

    v0.4.0 (June 23, 2018)

    • Helper constructors for VectorAffineTerm and VectorQuadraticTerm.
    • Added modify_lhs to TestConfig.
    • Additional unit tests for optimizers.
    • Added a type parameter to CachingOptimizer for the optimizer field.
    • New API for problem modification (#388)
    • Tests pass without deprecation warnings on Julia 0.7.
    • Small fixes and documentation updates.

    v0.3.0 (May 25, 2018)

    • Functions have been redefined to use arrays-of-structs instead of structs-of-arrays.
    • Improvements to MockOptimizer.
    • Significant changes to Bridges.
    • New and improved unit tests.
    • Fixes for Julia 0.7.

    v0.2.0 (April 24, 2018)

    • Improvements to and better coverage of Tests.
    • Documentation fixes.
    • SolverName attribute.
    • Changes to the NLP interface (new definition of variable order and arrays of structs for bound pairs and sparsity patterns).
    • Addition of NLP tests.
    • Introduction of UniversalFallback.
    • copynames keyword argument to MOI.copy!.
    • Add Bridges submodule.

    v0.1.0 (February 28, 2018)

    • Initial public release.
    • The framework for MOI was developed at the JuMP-dev workshop at MIT in June 2017 as a sorely needed replacement for MathProgBase.
    diff --git a/dev/moi/submodules/Benchmarks/overview/index.html b/dev/moi/submodules/Benchmarks/overview/index.html index 45bae7c45aa..207faa2b55c 100644 --- a/dev/moi/submodules/Benchmarks/overview/index.html +++ b/dev/moi/submodules/Benchmarks/overview/index.html @@ -21,4 +21,4 @@ MOI.Benchmarks.compare_against_baseline( suite, "current"; directory = "/tmp", verbose = true -)

    This comparison will create a report detailing improvements and regressions.

    +)

    This comparison will create a report detailing improvements and regressions.

    diff --git a/dev/moi/submodules/Benchmarks/reference/index.html b/dev/moi/submodules/Benchmarks/reference/index.html index 799cfd8ec22..5817363f81d 100644 --- a/dev/moi/submodules/Benchmarks/reference/index.html +++ b/dev/moi/submodules/Benchmarks/reference/index.html @@ -37,4 +37,4 @@ "glpk_master"; directory = "/tmp", verbose = true, - )source + )source diff --git a/dev/moi/submodules/Bridges/implementation/index.html b/dev/moi/submodules/Bridges/implementation/index.html index 45d01aa2198..c4055c0cf5e 100644 --- a/dev/moi/submodules/Bridges/implementation/index.html +++ b/dev/moi/submodules/Bridges/implementation/index.html @@ -33,4 +33,4 @@ Subject to: ScalarAffineFunction{Int64}-in-LessThan{Int64} - (0) - (1) x <= (-1) + (0) - (1) x <= (-1) diff --git a/dev/moi/submodules/Bridges/list_of_bridges/index.html b/dev/moi/submodules/Bridges/list_of_bridges/index.html index 6700708b4f0..08721a779aa 100644 --- a/dev/moi/submodules/Bridges/list_of_bridges/index.html +++ b/dev/moi/submodules/Bridges/list_of_bridges/index.html @@ -129,4 +129,4 @@ & & & x_{11} & x_{12} & x_{13} \\ & & & & x_{22} & x_{23} \\ & & & & & x_{33} -\end{bmatrix}\]

    is positive semidefinite.

    The bridge achieves this reformulation by adding a new set of variables in MOI.PositiveSemidefiniteConeTriangle(6), and then adding three groups of equality constraints to:

    • constrain the two x blocks to be equal
    • force the diagonal of the y blocks to be 0
    • force the lower triangular of the y block to be the negative of the upper triangle.
    source
    MathOptInterface.Bridges.Variable.RSOCtoPSDBridgeType
    RSOCtoPSDBridge{T} <: Bridges.Variable.AbstractBridge

    RSOCtoPSDBridge implements the following reformulation:

    • $||x||_2^2 \le 2tu$ where $t, u \ge 0$ into $Y \succeq 0$, with the substitution rule: $Y = \left[\begin{array}{c c}t & x^\top \\ x & 2u \mathbf{I}\end{array}\right].$

    Additional bounds are added to ensure the off-diagonals of the $2uI$ submatrix are 0, and linear constraints are added to ensure the diagonal of $2uI$ takes the same values.

    As a special case, if $|x|| = 0$, then RSOCtoPSDBridge reformulates into $(t, u) \in \mathbb{R}_+$.

    Source node

    RSOCtoPSDBridge supports:

    Target nodes

    RSOCtoPSDBridge creates:

    source
    MathOptInterface.Bridges.Variable.RSOCtoSOCBridgeType
    RSOCtoSOCBridge{T} <: Bridges.Variable.AbstractBridge

    RSOCtoSOCBridge implements the following reformulation:

    • $||x||_2^2 \le 2tu$ into $||v||_2 \le w$, with the substitution rules $t = \frac{w}{\sqrt 2} + \frac{v_1}{\sqrt 2}$, $u = \frac{w}{\sqrt 2} - \frac{v_1}{\sqrt 2}$, and $x = (v_2,\ldots,v_N)$.

    Source node

    RSOCtoSOCBridge supports:

    Target node

    RSOCtoSOCBridge creates:

    source
    MathOptInterface.Bridges.Variable.SOCtoRSOCBridgeType
    SOCtoRSOCBridge{T} <: Bridges.Variable.AbstractBridge

    SOCtoRSOCBridge implements the following reformulation:

    • $||x||_2 \le t$ into $2uv \ge ||w||_2^2$, with the substitution rules $t = \frac{u}{\sqrt 2} + \frac{v}{\sqrt 2}$, $x = (\frac{u}{\sqrt 2} - \frac{v}{\sqrt 2}, w)$.

    Assumptions

    • SOCtoRSOCBridge assumes that $|x| \ge 1$.

    Source node

    SOCtoRSOCBridge supports:

    Target node

    SOCtoRSOCBridge creates:

    source
    MathOptInterface.Bridges.Variable.SetMapBridgeType
    abstract type SetMapBridge{T,S1,S2} <: AbstractBridge end

    Consider two type of sets, S1 and S2, and a linear mapping A such that the image of a set of type S1 under A is a set of type S2.

    A SetMapBridge{T,S1,S2} is a bridge that substitutes constrained variables in S2 into the image through A of constrained variables in S1.

    The linear map A is described by:

    Implementing a method for these two functions is sufficient to bridge constrained variables. However, in order for the getters and setters of attributes such as dual solutions and starting values to work as well, a method for the following functions must be implemented:

    See the docstrings of each function to see which feature would be missing if it was not implemented for a given bridge.

    source
    MathOptInterface.Bridges.Variable.VectorizeBridgeType
    VectorizeBridge{T,S} <: Bridges.Variable.AbstractBridge

    VectorizeBridge implements the following reformulations:

    • $x \ge a$ into $[y] \in \mathbb{R}_+$ with the substitution rule $x = a + y$
    • $x \le a$ into $[y] \in \mathbb{R}_-$ with the substitution rule $x = a + y$
    • $x == a$ into $[y] \in \{0\}$ with the substitution rule $x = a + y$

    where T is the coefficient type of a + y.

    Source node

    VectorizeBridge supports:

    Target nodes

    VectorizeBridge creates:

    source
    MathOptInterface.Bridges.Variable.ZerosBridgeType
    ZerosBridge{T} <: Bridges.Variable.AbstractBridge

    ZerosBridge implements the following reformulation:

    • $x \in \{0\}$ into the substitution rule $x = 0$,

    where T is the coefficient type of 0.

    Source node

    ZerosBridge supports:

    Target nodes

    ZerosBridge does not create target nodes. It replaces all instances of x with 0 via substitution. This means that no variables are created in the underlying model.

    Caveats

    The bridged variables are similar to parameters with zero values. Parameters with non-zero values can be created with constrained variables in MOI.EqualTo by combining a VectorizeBridge and this bridge.

    However, functions modified by ZerosBridge cannot be unbridged. That is, for a given function, we cannot determine if the bridged variables were used.

    A related implication is that this bridge does not support MOI.ConstraintDual. However, if a MOI.Utilities.CachingOptimizer is used, the dual can be determined by the bridged optimizer using MOI.Utilities.get_fallback because the caching optimizer records the unbridged function.

    source
    +\end{bmatrix}\]

    is positive semidefinite.

    The bridge achieves this reformulation by adding a new set of variables in MOI.PositiveSemidefiniteConeTriangle(6), and then adding three groups of equality constraints to:

    • constrain the two x blocks to be equal
    • force the diagonal of the y blocks to be 0
    • force the lower triangular of the y block to be the negative of the upper triangle.
    source
    MathOptInterface.Bridges.Variable.RSOCtoPSDBridgeType
    RSOCtoPSDBridge{T} <: Bridges.Variable.AbstractBridge

    RSOCtoPSDBridge implements the following reformulation:

    • $||x||_2^2 \le 2tu$ where $t, u \ge 0$ into $Y \succeq 0$, with the substitution rule: $Y = \left[\begin{array}{c c}t & x^\top \\ x & 2u \mathbf{I}\end{array}\right].$

    Additional bounds are added to ensure the off-diagonals of the $2uI$ submatrix are 0, and linear constraints are added to ensure the diagonal of $2uI$ takes the same values.

    As a special case, if $|x|| = 0$, then RSOCtoPSDBridge reformulates into $(t, u) \in \mathbb{R}_+$.

    Source node

    RSOCtoPSDBridge supports:

    Target nodes

    RSOCtoPSDBridge creates:

    source
    MathOptInterface.Bridges.Variable.RSOCtoSOCBridgeType
    RSOCtoSOCBridge{T} <: Bridges.Variable.AbstractBridge

    RSOCtoSOCBridge implements the following reformulation:

    • $||x||_2^2 \le 2tu$ into $||v||_2 \le w$, with the substitution rules $t = \frac{w}{\sqrt 2} + \frac{v_1}{\sqrt 2}$, $u = \frac{w}{\sqrt 2} - \frac{v_1}{\sqrt 2}$, and $x = (v_2,\ldots,v_N)$.

    Source node

    RSOCtoSOCBridge supports:

    Target node

    RSOCtoSOCBridge creates:

    source
    MathOptInterface.Bridges.Variable.SOCtoRSOCBridgeType
    SOCtoRSOCBridge{T} <: Bridges.Variable.AbstractBridge

    SOCtoRSOCBridge implements the following reformulation:

    • $||x||_2 \le t$ into $2uv \ge ||w||_2^2$, with the substitution rules $t = \frac{u}{\sqrt 2} + \frac{v}{\sqrt 2}$, $x = (\frac{u}{\sqrt 2} - \frac{v}{\sqrt 2}, w)$.

    Assumptions

    • SOCtoRSOCBridge assumes that $|x| \ge 1$.

    Source node

    SOCtoRSOCBridge supports:

    Target node

    SOCtoRSOCBridge creates:

    source
    MathOptInterface.Bridges.Variable.SetMapBridgeType
    abstract type SetMapBridge{T,S1,S2} <: AbstractBridge end

    Consider two type of sets, S1 and S2, and a linear mapping A such that the image of a set of type S1 under A is a set of type S2.

    A SetMapBridge{T,S1,S2} is a bridge that substitutes constrained variables in S2 into the image through A of constrained variables in S1.

    The linear map A is described by:

    Implementing a method for these two functions is sufficient to bridge constrained variables. However, in order for the getters and setters of attributes such as dual solutions and starting values to work as well, a method for the following functions must be implemented:

    See the docstrings of each function to see which feature would be missing if it was not implemented for a given bridge.

    source
    MathOptInterface.Bridges.Variable.VectorizeBridgeType
    VectorizeBridge{T,S} <: Bridges.Variable.AbstractBridge

    VectorizeBridge implements the following reformulations:

    • $x \ge a$ into $[y] \in \mathbb{R}_+$ with the substitution rule $x = a + y$
    • $x \le a$ into $[y] \in \mathbb{R}_-$ with the substitution rule $x = a + y$
    • $x == a$ into $[y] \in \{0\}$ with the substitution rule $x = a + y$

    where T is the coefficient type of a + y.

    Source node

    VectorizeBridge supports:

    Target nodes

    VectorizeBridge creates:

    source
    MathOptInterface.Bridges.Variable.ZerosBridgeType
    ZerosBridge{T} <: Bridges.Variable.AbstractBridge

    ZerosBridge implements the following reformulation:

    • $x \in \{0\}$ into the substitution rule $x = 0$,

    where T is the coefficient type of 0.

    Source node

    ZerosBridge supports:

    Target nodes

    ZerosBridge does not create target nodes. It replaces all instances of x with 0 via substitution. This means that no variables are created in the underlying model.

    Caveats

    The bridged variables are similar to parameters with zero values. Parameters with non-zero values can be created with constrained variables in MOI.EqualTo by combining a VectorizeBridge and this bridge.

    However, functions modified by ZerosBridge cannot be unbridged. That is, for a given function, we cannot determine if the bridged variables were used.

    A related implication is that this bridge does not support MOI.ConstraintDual. However, if a MOI.Utilities.CachingOptimizer is used, the dual can be determined by the bridged optimizer using MOI.Utilities.get_fallback because the caching optimizer records the unbridged function.

    source
    diff --git a/dev/moi/submodules/Bridges/overview/index.html b/dev/moi/submodules/Bridges/overview/index.html index dd9f72670a1..fd5294be6cf 100644 --- a/dev/moi/submodules/Bridges/overview/index.html +++ b/dev/moi/submodules/Bridges/overview/index.html @@ -66,4 +66,4 @@ julia> MOI.get(inner_optimizer, MOI.ListOfConstraintTypesPresent()) 1-element Vector{Tuple{Type, Type}}: - (MathOptInterface.VariableIndex, MathOptInterface.Interval{Float64}) + (MathOptInterface.VariableIndex, MathOptInterface.Interval{Float64}) diff --git a/dev/moi/submodules/Bridges/reference/index.html b/dev/moi/submodules/Bridges/reference/index.html index f829cad8a75..ca63e560918 100644 --- a/dev/moi/submodules/Bridges/reference/index.html +++ b/dev/moi/submodules/Bridges/reference/index.html @@ -221,4 +221,4 @@ cost::Int, )

    As an alternative to variable_node, add a virtual edge to graph that represents adding a free variable, followed by a constraint of type constraint_node, with bridging cost cost.

    Why is this needed?

    Variables can either be added as a variable constrained on creation, or as a free variable which then has a constraint added to it.

    source
    MathOptInterface.Bridges.bridge_indexFunction
    bridge_index(graph::Graph, node::VariableNode)::Int
     bridge_index(graph::Graph, node::ConstraintNode)::Int
    -bridge_index(graph::Graph, node::ObjectiveNode)::Int

    Return the optimal index of the bridge to chose from node.

    source
    MathOptInterface.Bridges.is_variable_edge_bestFunction
    is_variable_edge_best(graph::Graph, node::VariableNode)::Bool

    Return a Bool indicating whether node should be added as a variable constrained on creation, or as a free variable followed by a constraint.

    source
    +bridge_index(graph::Graph, node::ObjectiveNode)::Int

    Return the optimal index of the bridge to chose from node.

    source
    MathOptInterface.Bridges.is_variable_edge_bestFunction
    is_variable_edge_best(graph::Graph, node::VariableNode)::Bool

    Return a Bool indicating whether node should be added as a variable constrained on creation, or as a free variable followed by a constraint.

    source
    diff --git a/dev/moi/submodules/FileFormats/overview/index.html b/dev/moi/submodules/FileFormats/overview/index.html index df28e830de8..c99b283878b 100644 --- a/dev/moi/submodules/FileFormats/overview/index.html +++ b/dev/moi/submodules/FileFormats/overview/index.html @@ -158,4 +158,4 @@ path: [variables][1] instance: Dict{String, Any}("NaMe" => "x") schema key: required -schema value: Any["name"] +schema value: Any["name"] diff --git a/dev/moi/submodules/FileFormats/reference/index.html b/dev/moi/submodules/FileFormats/reference/index.html index 5fa5c540992..ed934df10c6 100644 --- a/dev/moi/submodules/FileFormats/reference/index.html +++ b/dev/moi/submodules/FileFormats/reference/index.html @@ -26,4 +26,4 @@ )

    Parse the .sol file filename created by solving model and return a SolFileResults struct.

    The returned struct supports the MOI.get API for querying result attributes such as MOI.TerminationStatus, MOI.VariablePrimal, and MOI.ConstraintDual.

    source
    SolFileResults(
         raw_status::String,
         termination_status::MOI.TerminationStatusCode,
    -)

    Return a SolFileResults struct with MOI.RawStatusString set to raw_status, MOI.TerminationStatus set to termination_status, and MOI.PrimalStatus and MOI.DualStatus set to NO_SOLUTION.

    All other attributes are un-set.

    source
    +)

    Return a SolFileResults struct with MOI.RawStatusString set to raw_status, MOI.TerminationStatus set to termination_status, and MOI.PrimalStatus and MOI.DualStatus set to NO_SOLUTION.

    All other attributes are un-set.

    source diff --git a/dev/moi/submodules/Nonlinear/overview/index.html b/dev/moi/submodules/Nonlinear/overview/index.html index a67ae8f53f7..a1c2762946c 100644 --- a/dev/moi/submodules/Nonlinear/overview/index.html +++ b/dev/moi/submodules/Nonlinear/overview/index.html @@ -184,4 +184,4 @@ Node(NODE_VARIABLE, 1, 1), ], [2.0], - );

    The ordering of the nodes in the tape must satisfy two rules:

    • The children of a node must appear after the parent. This means that the tape is ordered topologically, so that a reverse pass of the nodes evaluates all children nodes before their parent
    • The arguments for a CALL node are ordered in the tape based on the order in which they appear in the function call.

    Design goals

    This is less readable than the other options, but does this data structure meet our design goals?

    Instead of a heap-allocated object for each node, we only have two Vectors for each expression, nodes and values, as well as two constant vectors for the OPERATORS. In addition, all fields are concretely typed, and there are no Union or Any types.

    For our third goal, it is not easy to identify the children of a node, but it is easy to identify the parent of any node. Therefore, we can use Nonlinear.adjacency_matrix to compute a sparse matrix that maps parents to their children.

    The design in practice

    In practice, Node and Expression are exactly Nonlinear.Node and Nonlinear.Expression. However, Nonlinear.NodeType has more fields to account for comparison operators such as :>= and :<=, logic operators such as :&& and :||, nonlinear parameters, and nested subexpressions.

    Moreover, instead of storing the operators as global constants, they are stored in Nonlinear.OperatorRegistry, and it also stores a vector of logic operators and a vector of comparison operators. In addition to Nonlinear.DEFAULT_UNIVARIATE_OPERATORS and Nonlinear.DEFAULT_MULTIVARIATE_OPERATORS, you can register user-defined functions using Nonlinear.register_operator.

    Nonlinear.Model is a struct that stores the Nonlinear.OperatorRegistry, as well as a list of parameters and subexpressions in the model.

    ReverseAD

    Nonlinear.ReverseAD is a submodule for computing derivatives of a nonlinear optimization problem using sparse reverse-mode automatic differentiation (AD).

    This section does not attempt to explain how sparse reverse-mode AD works, but instead explains why MOI contains its own implementation, and highlights notable differences from similar packages.

    Warning

    Don't use the API in ReverseAD to compute derivatives. Instead, create a Nonlinear.Evaluator object with Nonlinear.SparseReverseMode as the backend, and then query the MOI API methods.

    Design goals

    The JuliaDiff organization maintains a list of packages for doing AD in Julia. At last count, there were at least ten packages——not including ReverseAD——for reverse-mode AD in Julia. ReverseAD exists because it has a different set of design goals.

    • Goal: handle scale and sparsity. The types of nonlinear optimization problems that MOI represents can be large scale (10^5 or more functions across 10^5 or more variables) with very sparse derivatives. The ability to compute a sparse Hessian matrix is essential. To the best of our knowledge, ReverseAD is the only reverse-mode AD system in Julia that handles sparsity by default.
    • Goal: limit the scope to improve robustness. Most other AD packages accept arbitrary Julia functions as input and then trace an expression graph using operator overloading. This means they must deal (or detect and ignore) with control flow, I/O, and other vagaries of Julia. In contrast, ReverseAD only accepts functions in the form of Nonlinear.Expression, which greatly limits the range of syntax that it must deal with. By reducing the scope of what we accept as input to functions relevant for mathematical optimization, we can provide a simpler implementation with various performance optimizations.
    • Goal: provide outputs which match what solvers expect. Other AD packages focus on differentiating individual Julia functions. In contrast, ReverseAD has a very specific use-case: to generate outputs needed by the MOI nonlinear API. This means it needs to efficiently compute sparse Hessians, and it needs subexpression handling to avoid recomputing subexpressions that are shared between functions.

    History

    ReverseAD started life as ReverseDiffSparse.jl, development of which began in early 2014(!). This was well before the other AD packages started development. Because we had a well-tested, working AD in JuMP, there was less motivation to contribute to and explore other AD packages. The lack of historical interaction also meant that other packages were not optimized for the types of problems that JuMP is built for (that is, large-scale sparse problems). When we first created MathOptInterface, we kept the AD in JuMP to simplify the transition, and post-poned the development of a first-class nonlinear interface in MathOptInterface.

    Prior to the introduction of Nonlinear, JuMP's nonlinear implementation was a confusing mix of functions and types spread across the code base and in the private _Derivatives submodule. This made it hard to swap the AD system for another. The main motivation for refactoring JuMP to create the Nonlinear submodule in MathOptInterface was to abstract the interface between JuMP and the AD system, allowing us to swap-in and test new AD systems in the future.

    + );

    The ordering of the nodes in the tape must satisfy two rules:

    • The children of a node must appear after the parent. This means that the tape is ordered topologically, so that a reverse pass of the nodes evaluates all children nodes before their parent
    • The arguments for a CALL node are ordered in the tape based on the order in which they appear in the function call.

    Design goals

    This is less readable than the other options, but does this data structure meet our design goals?

    Instead of a heap-allocated object for each node, we only have two Vectors for each expression, nodes and values, as well as two constant vectors for the OPERATORS. In addition, all fields are concretely typed, and there are no Union or Any types.

    For our third goal, it is not easy to identify the children of a node, but it is easy to identify the parent of any node. Therefore, we can use Nonlinear.adjacency_matrix to compute a sparse matrix that maps parents to their children.

    The design in practice

    In practice, Node and Expression are exactly Nonlinear.Node and Nonlinear.Expression. However, Nonlinear.NodeType has more fields to account for comparison operators such as :>= and :<=, logic operators such as :&& and :||, nonlinear parameters, and nested subexpressions.

    Moreover, instead of storing the operators as global constants, they are stored in Nonlinear.OperatorRegistry, and it also stores a vector of logic operators and a vector of comparison operators. In addition to Nonlinear.DEFAULT_UNIVARIATE_OPERATORS and Nonlinear.DEFAULT_MULTIVARIATE_OPERATORS, you can register user-defined functions using Nonlinear.register_operator.

    Nonlinear.Model is a struct that stores the Nonlinear.OperatorRegistry, as well as a list of parameters and subexpressions in the model.

    ReverseAD

    Nonlinear.ReverseAD is a submodule for computing derivatives of a nonlinear optimization problem using sparse reverse-mode automatic differentiation (AD).

    This section does not attempt to explain how sparse reverse-mode AD works, but instead explains why MOI contains its own implementation, and highlights notable differences from similar packages.

    Warning

    Don't use the API in ReverseAD to compute derivatives. Instead, create a Nonlinear.Evaluator object with Nonlinear.SparseReverseMode as the backend, and then query the MOI API methods.

    Design goals

    The JuliaDiff organization maintains a list of packages for doing AD in Julia. At last count, there were at least ten packages——not including ReverseAD——for reverse-mode AD in Julia. ReverseAD exists because it has a different set of design goals.

    • Goal: handle scale and sparsity. The types of nonlinear optimization problems that MOI represents can be large scale (10^5 or more functions across 10^5 or more variables) with very sparse derivatives. The ability to compute a sparse Hessian matrix is essential. To the best of our knowledge, ReverseAD is the only reverse-mode AD system in Julia that handles sparsity by default.
    • Goal: limit the scope to improve robustness. Most other AD packages accept arbitrary Julia functions as input and then trace an expression graph using operator overloading. This means they must deal (or detect and ignore) with control flow, I/O, and other vagaries of Julia. In contrast, ReverseAD only accepts functions in the form of Nonlinear.Expression, which greatly limits the range of syntax that it must deal with. By reducing the scope of what we accept as input to functions relevant for mathematical optimization, we can provide a simpler implementation with various performance optimizations.
    • Goal: provide outputs which match what solvers expect. Other AD packages focus on differentiating individual Julia functions. In contrast, ReverseAD has a very specific use-case: to generate outputs needed by the MOI nonlinear API. This means it needs to efficiently compute sparse Hessians, and it needs subexpression handling to avoid recomputing subexpressions that are shared between functions.

    History

    ReverseAD started life as ReverseDiffSparse.jl, development of which began in early 2014(!). This was well before the other AD packages started development. Because we had a well-tested, working AD in JuMP, there was less motivation to contribute to and explore other AD packages. The lack of historical interaction also meant that other packages were not optimized for the types of problems that JuMP is built for (that is, large-scale sparse problems). When we first created MathOptInterface, we kept the AD in JuMP to simplify the transition, and post-poned the development of a first-class nonlinear interface in MathOptInterface.

    Prior to the introduction of Nonlinear, JuMP's nonlinear implementation was a confusing mix of functions and types spread across the code base and in the private _Derivatives submodule. This made it hard to swap the AD system for another. The main motivation for refactoring JuMP to create the Nonlinear submodule in MathOptInterface was to abstract the interface between JuMP and the AD system, allowing us to swap-in and test new AD systems in the future.

    diff --git a/dev/moi/submodules/Nonlinear/reference/index.html b/dev/moi/submodules/Nonlinear/reference/index.html index 4a36e08c6f5..1a089129625 100644 --- a/dev/moi/submodules/Nonlinear/reference/index.html +++ b/dev/moi/submodules/Nonlinear/reference/index.html @@ -236,4 +236,4 @@ julia> MOI.initialize(evaluator, Symbol[]) julia> MOI.Nonlinear.ordinal_index(evaluator, c2) # Returns 1 -1source +1source diff --git a/dev/moi/submodules/Test/overview/index.html b/dev/moi/submodules/Test/overview/index.html index 17db51fea4b..9d8ba9eaa8c 100644 --- a/dev/moi/submodules/Test/overview/index.html +++ b/dev/moi/submodules/Test/overview/index.html @@ -167,4 +167,4 @@ ), ) return -end

    Finally, you also need to implement Test.version_added. If we added this test when the latest released version of MOI was v0.10.5, define:

    version_added(::typeof(test_unit_optimize!_twice)) = v"0.10.6"

    Step 6

    Commit the changes to git from ~/.julia/dev/MathOptInterface and submit the PR for review.

    Tip

    If you need help writing a test, open an issue on GitHub, or ask the Developer Chatroom.

    +end

    Finally, you also need to implement Test.version_added. If we added this test when the latest released version of MOI was v0.10.5, define:

    version_added(::typeof(test_unit_optimize!_twice)) = v"0.10.6"

    Step 6

    Commit the changes to git from ~/.julia/dev/MathOptInterface and submit the PR for review.

    Tip

    If you need help writing a test, open an issue on GitHub, or ask the Developer Chatroom.

    diff --git a/dev/moi/submodules/Test/reference/index.html b/dev/moi/submodules/Test/reference/index.html index d937cab1294..35e4e9d9476 100644 --- a/dev/moi/submodules/Test/reference/index.html +++ b/dev/moi/submodules/Test/reference/index.html @@ -63,4 +63,4 @@ \text{subject to}\ & x_1 * x_2 * x_3 * x_4 \ge 25 \\ & x_1^2 + x_2^2 + x_3^2 + x_4^2 = 40 \\ & 1 \le x_1, x_2, x_3, x_4 \le 5 -\end{aligned}\]

    The optimal solution is [1.000, 4.743, 3.821, 1.379].

    source +\end{aligned}\]

    The optimal solution is [1.000, 4.743, 3.821, 1.379].

    source diff --git a/dev/moi/submodules/Utilities/overview/index.html b/dev/moi/submodules/Utilities/overview/index.html index 26a3a9a8249..3eba7ce7483 100644 --- a/dev/moi/submodules/Utilities/overview/index.html +++ b/dev/moi/submodules/Utilities/overview/index.html @@ -378,4 +378,4 @@ index_map = MOI.copy_to(dest, src) for (F, S) in MOI.get(src, MOI.ListOfConstraintTypesPresent()) function_barrier(dest, src, index_map[F, S]) -end +end diff --git a/dev/moi/submodules/Utilities/reference/index.html b/dev/moi/submodules/Utilities/reference/index.html index 05b08e704ba..865237f839b 100644 --- a/dev/moi/submodules/Utilities/reference/index.html +++ b/dev/moi/submodules/Utilities/reference/index.html @@ -91,7 +91,7 @@ typeof(CleverDicts.key_to_index), typeof(CleverDicts.index_to_key), } -end

    A struct storing F-in-S constraints as a mapping between the constraint indices to the corresponding tuple of function and set.

    source
    MathOptInterface.Utilities.@struct_of_constraints_by_function_typesMacro
    Utilities.@struct_of_constraints_by_function_types(name, func_types...)

    Given a vector of n function types (F1, F2,..., Fn) in func_types, defines a subtype of StructOfConstraints of name name and which type parameters {T, C1, C2, ..., Cn}. It contains n field where the ith field has type Ci and stores the constraints of function type Fi.

    The expression Fi can also be a union in which case any constraint for which the function type is in the union is stored in the field with type Ci.

    source
    MathOptInterface.Utilities.@struct_of_constraints_by_set_typesMacro
    Utilities.@struct_of_constraints_by_set_types(name, func_types...)

    Given a vector of n set types (S1, S2,..., Sn) in func_types, defines a subtype of StructOfConstraints of name name and which type parameters {T, C1, C2, ..., Cn}. It contains n field where the ith field has type Ci and stores the constraints of set type Si. The expression Si can also be a union in which case any constraint for which the set type is in the union is stored in the field with type Ci. This can be useful if Ci is a MatrixOfConstraints in order to concatenate the coefficients of constraints of several different set types in the same matrix.

    source
    MathOptInterface.Utilities.struct_of_constraint_codeFunction
    struct_of_constraint_code(struct_name, types, field_types = nothing)

    Given a vector of n Union{SymbolFun,_UnionSymbolFS{SymbolFun}} or Union{SymbolSet,_UnionSymbolFS{SymbolSet}} in types, defines a subtype of StructOfConstraints of name name and which type parameters {T, F1, F2, ..., Fn} if field_types is nothing and a {T} otherwise. It contains n field where the ith field has type Ci if field_types is nothing and type field_types[i] otherwise. If types is vector of Union{SymbolFun,_UnionSymbolFS{SymbolFun}} (resp. Union{SymbolSet,_UnionSymbolFS{SymbolSet}}) then the constraints of that function (resp. set) type are stored in the corresponding field.

    This function is used by the macros @model, @struct_of_constraints_by_function_types and @struct_of_constraints_by_set_types.

    source

    Caching optimizer

    MathOptInterface.Utilities.CachingOptimizerType
    CachingOptimizer

    CachingOptimizer is an intermediate layer that stores a cache of the model and links it with an optimizer. It supports incremental model construction and modification even when the optimizer doesn't.

    Constructors

        CachingOptimizer(cache::MOI.ModelLike, optimizer::AbstractOptimizer)

    Creates a CachingOptimizer in AUTOMATIC mode, with the optimizer optimizer.

    The type of the optimizer returned is CachingOptimizer{typeof(optimizer), typeof(cache)} so it does not support the function reset_optimizer(::CachingOptimizer, new_optimizer) if the type of new_optimizer is different from the type of optimizer.

        CachingOptimizer(cache::MOI.ModelLike, mode::CachingOptimizerMode)

    Creates a CachingOptimizer in the NO_OPTIMIZER state and mode mode.

    The type of the optimizer returned is CachingOptimizer{MOI.AbstractOptimizer,typeof(cache)} so it does support the function reset_optimizer(::CachingOptimizer, new_optimizer) if the type of new_optimizer is different from the type of optimizer.

    About the type

    States

    A CachingOptimizer may be in one of three possible states (CachingOptimizerState):

    • NO_OPTIMIZER: The CachingOptimizer does not have any optimizer.
    • EMPTY_OPTIMIZER: The CachingOptimizer has an empty optimizer. The optimizer is not synchronized with the cached model.
    • ATTACHED_OPTIMIZER: The CachingOptimizer has an optimizer, and it is synchronized with the cached model.

    Modes

    A CachingOptimizer has two modes of operation (CachingOptimizerMode):

    • MANUAL: The only methods that change the state of the CachingOptimizer are Utilities.reset_optimizer, Utilities.drop_optimizer, and Utilities.attach_optimizer. Attempting to perform an operation in the incorrect state results in an error.
    • AUTOMATIC: The CachingOptimizer changes its state when necessary. For example, optimize! will automatically call attach_optimizer (an optimizer must have been previously set). Attempting to add a constraint or perform a modification not supported by the optimizer results in a drop to EMPTY_OPTIMIZER mode.
    source
    MathOptInterface.Utilities.attach_optimizerFunction
    attach_optimizer(model::CachingOptimizer)

    Attaches the optimizer to model, copying all model data into it. Can be called only from the EMPTY_OPTIMIZER state. If the copy succeeds, the CachingOptimizer will be in state ATTACHED_OPTIMIZER after the call, otherwise an error is thrown; see MOI.copy_to for more details on which errors can be thrown.

    source
    MOIU.attach_optimizer(model::GenericModel)

    Call MOIU.attach_optimizer on the backend of model.

    Cannot be called in direct mode.

    source
    MathOptInterface.Utilities.reset_optimizerFunction
    reset_optimizer(m::CachingOptimizer, optimizer::MOI.AbstractOptimizer)

    Sets or resets m to have the given empty optimizer optimizer.

    Can be called from any state. An assertion error will be thrown if optimizer is not empty.

    The CachingOptimizer m will be in state EMPTY_OPTIMIZER after the call.

    source
    reset_optimizer(m::CachingOptimizer)

    Detaches and empties the current optimizer. Can be called from ATTACHED_OPTIMIZER or EMPTY_OPTIMIZER state. The CachingOptimizer will be in state EMPTY_OPTIMIZER after the call.

    source
    MOIU.reset_optimizer(model::GenericModel, optimizer::MOI.AbstractOptimizer)

    Call MOIU.reset_optimizer on the backend of model.

    Cannot be called in direct mode.

    source
    MOIU.reset_optimizer(model::GenericModel)

    Call MOIU.reset_optimizer on the backend of model.

    Cannot be called in direct mode.

    source
    MathOptInterface.Utilities.drop_optimizerFunction
    drop_optimizer(m::CachingOptimizer)

    Drops the optimizer, if one is present. Can be called from any state. The CachingOptimizer will be in state NO_OPTIMIZER after the call.

    source
    MOIU.drop_optimizer(model::GenericModel)

    Call MOIU.drop_optimizer on the backend of model.

    Cannot be called in direct mode.

    source

    Mock optimizer

    Printing

    MathOptInterface.Utilities.latex_formulationFunction
    latex_formulation(model::MOI.ModelLike; kwargs...)

    Wrap model in a type so that it can be pretty-printed as text/latex in a notebook like IJulia, or in Documenter.

    To render the model, end the cell with latex_formulation(model), or call display(latex_formulation(model)) in to force the display of the model from inside a function.

    Possible keyword arguments are:

    • simplify_coefficients : Simplify coefficients if possible by omitting them or removing trailing zeros.
    • default_name : The name given to variables with an empty name.
    • print_types : Print the MOI type of each function and set for clarity.
    source

    Copy utilities

    MathOptInterface.Utilities.ModelFilterType
    ModelFilter(filter::Function, model::MOI.ModelLike)

    A layer to filter out various components of model.

    The filter function takes a single argument, which is each element from the list returned by the attributes below. It returns true if the element should be visible in the filtered model and false otherwise.

    The components that are filtered are:

    • Entire constraint types via:
      • MOI.ListOfConstraintTypesPresent
    • Individual constraints via:
      • MOI.ListOfConstraintIndices{F,S}
    • Specific attributes via:
      • MOI.ListOfModelAttributesSet
      • MOI.ListOfConstraintAttributesSet
      • MOI.ListOfVariableAttributesSet
    Warning

    The list of attributes filtered may change in a future release. You should write functions that are generic and not limited to the five types listed above. Thus, you should probably define a fallback filter(::Any) = true.

    See below for examples of how this works.

    Note

    This layer has a limited scope. It is intended by be used in conjunction with MOI.copy_to.

    Example: copy model excluding integer constraints

    Use the do syntax to provide a single function.

    filtered_src = MOI.Utilities.ModelFilter(src) do item
    +end

    A struct storing F-in-S constraints as a mapping between the constraint indices to the corresponding tuple of function and set.

    source
    MathOptInterface.Utilities.@struct_of_constraints_by_function_typesMacro
    Utilities.@struct_of_constraints_by_function_types(name, func_types...)

    Given a vector of n function types (F1, F2,..., Fn) in func_types, defines a subtype of StructOfConstraints of name name and which type parameters {T, C1, C2, ..., Cn}. It contains n field where the ith field has type Ci and stores the constraints of function type Fi.

    The expression Fi can also be a union in which case any constraint for which the function type is in the union is stored in the field with type Ci.

    source
    MathOptInterface.Utilities.@struct_of_constraints_by_set_typesMacro
    Utilities.@struct_of_constraints_by_set_types(name, func_types...)

    Given a vector of n set types (S1, S2,..., Sn) in func_types, defines a subtype of StructOfConstraints of name name and which type parameters {T, C1, C2, ..., Cn}. It contains n field where the ith field has type Ci and stores the constraints of set type Si. The expression Si can also be a union in which case any constraint for which the set type is in the union is stored in the field with type Ci. This can be useful if Ci is a MatrixOfConstraints in order to concatenate the coefficients of constraints of several different set types in the same matrix.

    source
    MathOptInterface.Utilities.struct_of_constraint_codeFunction
    struct_of_constraint_code(struct_name, types, field_types = nothing)

    Given a vector of n Union{SymbolFun,_UnionSymbolFS{SymbolFun}} or Union{SymbolSet,_UnionSymbolFS{SymbolSet}} in types, defines a subtype of StructOfConstraints of name name and which type parameters {T, F1, F2, ..., Fn} if field_types is nothing and a {T} otherwise. It contains n field where the ith field has type Ci if field_types is nothing and type field_types[i] otherwise. If types is vector of Union{SymbolFun,_UnionSymbolFS{SymbolFun}} (resp. Union{SymbolSet,_UnionSymbolFS{SymbolSet}}) then the constraints of that function (resp. set) type are stored in the corresponding field.

    This function is used by the macros @model, @struct_of_constraints_by_function_types and @struct_of_constraints_by_set_types.

    source

    Caching optimizer

    MathOptInterface.Utilities.CachingOptimizerType
    CachingOptimizer

    CachingOptimizer is an intermediate layer that stores a cache of the model and links it with an optimizer. It supports incremental model construction and modification even when the optimizer doesn't.

    Constructors

        CachingOptimizer(cache::MOI.ModelLike, optimizer::AbstractOptimizer)

    Creates a CachingOptimizer in AUTOMATIC mode, with the optimizer optimizer.

    The type of the optimizer returned is CachingOptimizer{typeof(optimizer), typeof(cache)} so it does not support the function reset_optimizer(::CachingOptimizer, new_optimizer) if the type of new_optimizer is different from the type of optimizer.

        CachingOptimizer(cache::MOI.ModelLike, mode::CachingOptimizerMode)

    Creates a CachingOptimizer in the NO_OPTIMIZER state and mode mode.

    The type of the optimizer returned is CachingOptimizer{MOI.AbstractOptimizer,typeof(cache)} so it does support the function reset_optimizer(::CachingOptimizer, new_optimizer) if the type of new_optimizer is different from the type of optimizer.

    About the type

    States

    A CachingOptimizer may be in one of three possible states (CachingOptimizerState):

    • NO_OPTIMIZER: The CachingOptimizer does not have any optimizer.
    • EMPTY_OPTIMIZER: The CachingOptimizer has an empty optimizer. The optimizer is not synchronized with the cached model.
    • ATTACHED_OPTIMIZER: The CachingOptimizer has an optimizer, and it is synchronized with the cached model.

    Modes

    A CachingOptimizer has two modes of operation (CachingOptimizerMode):

    • MANUAL: The only methods that change the state of the CachingOptimizer are Utilities.reset_optimizer, Utilities.drop_optimizer, and Utilities.attach_optimizer. Attempting to perform an operation in the incorrect state results in an error.
    • AUTOMATIC: The CachingOptimizer changes its state when necessary. For example, optimize! will automatically call attach_optimizer (an optimizer must have been previously set). Attempting to add a constraint or perform a modification not supported by the optimizer results in a drop to EMPTY_OPTIMIZER mode.
    source
    MathOptInterface.Utilities.attach_optimizerFunction
    attach_optimizer(model::CachingOptimizer)

    Attaches the optimizer to model, copying all model data into it. Can be called only from the EMPTY_OPTIMIZER state. If the copy succeeds, the CachingOptimizer will be in state ATTACHED_OPTIMIZER after the call, otherwise an error is thrown; see MOI.copy_to for more details on which errors can be thrown.

    source
    MOIU.attach_optimizer(model::GenericModel)

    Call MOIU.attach_optimizer on the backend of model.

    Cannot be called in direct mode.

    source
    MathOptInterface.Utilities.reset_optimizerFunction
    reset_optimizer(m::CachingOptimizer, optimizer::MOI.AbstractOptimizer)

    Sets or resets m to have the given empty optimizer optimizer.

    Can be called from any state. An assertion error will be thrown if optimizer is not empty.

    The CachingOptimizer m will be in state EMPTY_OPTIMIZER after the call.

    source
    reset_optimizer(m::CachingOptimizer)

    Detaches and empties the current optimizer. Can be called from ATTACHED_OPTIMIZER or EMPTY_OPTIMIZER state. The CachingOptimizer will be in state EMPTY_OPTIMIZER after the call.

    source
    MOIU.reset_optimizer(model::GenericModel, optimizer::MOI.AbstractOptimizer)

    Call MOIU.reset_optimizer on the backend of model.

    Cannot be called in direct mode.

    source
    MOIU.reset_optimizer(model::GenericModel)

    Call MOIU.reset_optimizer on the backend of model.

    Cannot be called in direct mode.

    source
    MathOptInterface.Utilities.drop_optimizerFunction
    drop_optimizer(m::CachingOptimizer)

    Drops the optimizer, if one is present. Can be called from any state. The CachingOptimizer will be in state NO_OPTIMIZER after the call.

    source
    MOIU.drop_optimizer(model::GenericModel)

    Call MOIU.drop_optimizer on the backend of model.

    Cannot be called in direct mode.

    source

    Mock optimizer

    Printing

    MathOptInterface.Utilities.latex_formulationFunction
    latex_formulation(model::MOI.ModelLike; kwargs...)

    Wrap model in a type so that it can be pretty-printed as text/latex in a notebook like IJulia, or in Documenter.

    To render the model, end the cell with latex_formulation(model), or call display(latex_formulation(model)) in to force the display of the model from inside a function.

    Possible keyword arguments are:

    • simplify_coefficients : Simplify coefficients if possible by omitting them or removing trailing zeros.
    • default_name : The name given to variables with an empty name.
    • print_types : Print the MOI type of each function and set for clarity.
    source

    Copy utilities

    MathOptInterface.Utilities.ModelFilterType
    ModelFilter(filter::Function, model::MOI.ModelLike)

    A layer to filter out various components of model.

    The filter function takes a single argument, which is each element from the list returned by the attributes below. It returns true if the element should be visible in the filtered model and false otherwise.

    The components that are filtered are:

    • Entire constraint types via:
      • MOI.ListOfConstraintTypesPresent
    • Individual constraints via:
      • MOI.ListOfConstraintIndices{F,S}
    • Specific attributes via:
      • MOI.ListOfModelAttributesSet
      • MOI.ListOfConstraintAttributesSet
      • MOI.ListOfVariableAttributesSet
    Warning

    The list of attributes filtered may change in a future release. You should write functions that are generic and not limited to the five types listed above. Thus, you should probably define a fallback filter(::Any) = true.

    See below for examples of how this works.

    Note

    This layer has a limited scope. It is intended by be used in conjunction with MOI.copy_to.

    Example: copy model excluding integer constraints

    Use the do syntax to provide a single function.

    filtered_src = MOI.Utilities.ModelFilter(src) do item
         return item != (MOI.VariableIndex, MOI.Integer)
     end
     MOI.copy_to(dest, filtered_src)

    Example: copy model excluding names

    Use type dispatch to simplify the implementation:

    my_filter(::Any) = true  # Note the generic fallback
    @@ -343,4 +343,4 @@
     For performance, it is recommended that the inner loop lies in a separate
     function to guarantee type-stability.
     
    -If you want an iterator of all current outer keys, use [`outer_keys`](@ref).
    source
    +If you want an iterator of all current outer keys, use [`outer_keys`](@ref).source diff --git a/dev/moi/tutorials/bridging_constraint/index.html b/dev/moi/tutorials/bridging_constraint/index.html index 8b149a640af..cd0c0e4a28f 100644 --- a/dev/moi/tutorials/bridging_constraint/index.html +++ b/dev/moi/tutorials/bridging_constraint/index.html @@ -103,4 +103,4 @@ end

    Bridge deletion

    When a bridge is deleted, the constraints it added must be deleted too.

    function delete(model::ModelLike, bridge::SignBridge)
         delete(model, bridge.constraint)
         return
    -end
    +end diff --git a/dev/moi/tutorials/example/index.html b/dev/moi/tutorials/example/index.html index 26d95514034..dda72de520d 100644 --- a/dev/moi/tutorials/example/index.html +++ b/dev/moi/tutorials/example/index.html @@ -46,4 +46,4 @@ 3-element Vector{Float64}: 1.0 1.0 - 1.0 + 1.0 diff --git a/dev/moi/tutorials/implementing/index.html b/dev/moi/tutorials/implementing/index.html index 4de156e5082..dd3a1cd81bb 100644 --- a/dev/moi/tutorials/implementing/index.html +++ b/dev/moi/tutorials/implementing/index.html @@ -115,4 +115,4 @@ n = # Code to get NumberOfObjectives return n end

    Then, the user can write:

    model = Gurobi.Optimizer()
    -MOI.set(model, Gurobi.NumberofObjectives(), 3)
    +MOI.set(model, Gurobi.NumberofObjectives(), 3) diff --git a/dev/moi/tutorials/latency/index.html b/dev/moi/tutorials/latency/index.html index bdd4a93ac78..367c37fe6a3 100644 --- a/dev/moi/tutorials/latency/index.html +++ b/dev/moi/tutorials/latency/index.html @@ -130,4 +130,4 @@ end

    You can create a flame-graph via

    using SnoopCompile
     tinf = @snoopi_deep example_diet(GLPK.Optimizer, true)
     using ProfileView
    -ProfileView.view(flamegraph(tinf))

    Here's how things looked in mid-August 2021: flamegraph

    There are a few opportunities for improvement (non-red flames, particularly on the right). But the main problem is a large red (non-precompilable due to method ownership) flame.

    +ProfileView.view(flamegraph(tinf))

    Here's how things looked in mid-August 2021: flamegraph

    There are a few opportunities for improvement (non-red flames, particularly on the right). But the main problem is a large red (non-precompilable due to method ownership) flame.

    diff --git a/dev/moi/tutorials/manipulating_expressions/index.html b/dev/moi/tutorials/manipulating_expressions/index.html index e53c83d7c66..2d8e635c9ca 100644 --- a/dev/moi/tutorials/manipulating_expressions/index.html +++ b/dev/moi/tutorials/manipulating_expressions/index.html @@ -23,4 +23,4 @@ 2-element Vector{MathOptInterface.ScalarAffineFunction{Int64}}: (2) + (1) MOI.VariableIndex(1) (4) + (2) MOI.VariableIndex(1)
    Note

    Utilities.eachscalar returns an iterator on the dimensions, which serves the same purpose as Utilities.scalarize.

    output_dimension returns the number of dimensions of the output of a function:

    julia> MOI.output_dimension(g)
    -2
    +2 diff --git a/dev/moi/tutorials/mathprogbase/index.html b/dev/moi/tutorials/mathprogbase/index.html index b71e2a9cd23..811046dcff6 100644 --- a/dev/moi/tutorials/mathprogbase/index.html +++ b/dev/moi/tutorials/mathprogbase/index.html @@ -55,4 +55,4 @@ objval = objective_value(model), sol = value.(x) ) -end +end diff --git a/dev/objects.inv b/dev/objects.inv index 6a88d730c981f9a56d4c6da92fd50963627332c9..472643f48eed3141c700e616783f69dfc691c77f 100644 GIT binary patch delta 46519 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�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 delta 46409 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

    xo6N-UP&Cd+?t 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

    +} diff --git a/dev/packages/AmplNLWriter/index.html b/dev/packages/AmplNLWriter/index.html index 8ace20f5fea..42daf7707a8 100644 --- a/dev/packages/AmplNLWriter/index.html +++ b/dev/packages/AmplNLWriter/index.html @@ -12,4 +12,4 @@ import Bonmin_jll model = Model(() -> AmplNLWriter.Optimizer(Bonmin_jll.amplexe)) set_attribute(model, "bonmin.nlp_log_level", 0)

    opt files

    Some options need to be specified via an .opt file.

    This file must be located in the current working directory whenever the model is solved.

    The .opt file must be named after the name of the solver, for example, bonmin.opt, and each line must contain an option name and the desired value, separated by a space.

    For example, to set the absolute and relative tolerances in Couenne to 1 and 0.05 respectively, the couenne.opt file should contain:

    allowable_gap 1
    -allowable_fraction_gap 0.05
    +allowable_fraction_gap 0.05 diff --git a/dev/packages/BARON/index.html b/dev/packages/BARON/index.html index 5b66691c911..18024d47570 100644 --- a/dev/packages/BARON/index.html +++ b/dev/packages/BARON/index.html @@ -6,4 +6,4 @@

    BARON.jl

    Build Status codecov

    BARON.jl is a wrapper for BARON by The Optimization Firm.

    Affiliation

    This wrapper is maintained by the JuMP community and is not officially supported by The Optimization Firm.

    Getting help

    If you need help, please ask a question on the JuMP community forum.

    If you have a reproducible example of a bug, please open a GitHub issue.

    License

    BARON.jl is licensed under the MIT License.

    The underlying solver is a closed-source commercial product for which you must obtain a license from The Optimization Firm, although a small trial version is available for free.

    Installation

    First, download a copy of the BARON solver and unpack the executable in a location of your choosing.

    Once installed, set the BARON_EXEC environment variable pointing to the BARON executable (full path, including file name as it differs across platforms), and run Pkg.add("BARON"). For example:

    ENV["BARON_EXEC"] = "/path/to/baron.exe"
     using Pkg
     Pkg.add("BARON")

    The baronlice.txt license file should be placed in the same directory as the BARON executable, or in your current working directory.

    Use with JuMP

    using JuMP, BARON
    -model = Model(BARON.Optimizer)

    MathOptInterface API

    The BARON optimizer supports the following constraints and attributes.

    List of supported objective functions:

    List of supported variable types:

    List of supported constraint types:

    List of supported model attributes:

    +model = Model(BARON.Optimizer)

    MathOptInterface API

    The BARON optimizer supports the following constraints and attributes.

    List of supported objective functions:

    List of supported variable types:

    List of supported constraint types:

    List of supported model attributes:

    diff --git a/dev/packages/BilevelJuMP/index.html b/dev/packages/BilevelJuMP/index.html index e585176f8f6..df1ac99e3b4 100644 --- a/dev/packages/BilevelJuMP/index.html +++ b/dev/packages/BilevelJuMP/index.html @@ -34,4 +34,4 @@ objective_value(model) # = 3 * (3.5 * 8/15) + 8/15 # = 6.13... value(x) # = 3.5 * 8/15 # = 1.86... -value(y) # = 8/15 # = 0.53... +value(y) # = 8/15 # = 0.53... diff --git a/dev/packages/CDCS/index.html b/dev/packages/CDCS/index.html index 3303546a8b1..258b4aa70ad 100644 --- a/dev/packages/CDCS/index.html +++ b/dev/packages/CDCS/index.html @@ -27,4 +27,4 @@ mat"cdcsInstall" end -julia> mat"savepath" +julia> mat"savepath" diff --git a/dev/packages/CDDLib/index.html b/dev/packages/CDDLib/index.html index 5b9846fee5e..46445278c4c 100644 --- a/dev/packages/CDDLib/index.html +++ b/dev/packages/CDDLib/index.html @@ -6,4 +6,4 @@

    CDDLib

    CDDLib.jl is a wrapper for cddlib.

    CDDLib.jl can be used with C API of cddlib, the higher level interface of Polyhedra.jl, or as a linear programming solver with JuMP or MathOptInterface.

    Problem description

    As written in the README of cddlib:

    The C-library cddlib is a C implementation of the Double Description Method of Motzkin et al. for generating all vertices (that is, extreme points) and extreme rays of a general convex polyhedron in R^d given by a system of linear inequalities:

    P = { x=(x1, ..., xd)^T :  b - A  x  >= 0 }

    where A is a given m x d real matrix, b is a given m-vector and 0 is the m-vector of all zeros.

    The program can be used for the reverse operation (that is, convex hull computation). This means that one can move back and forth between an inequality representation and a generator (that is, vertex and ray) representation of a polyhedron with cdd. Also, cdd can solve a linear programming problem, that is, a problem of maximizing and minimizing a linear function over P.

    License

    CDDLib.jl is licensed under the GPL v2 license.

    The underlying solver, cddlib/cddlib is also licensed under the GPL v2 license.

    Installation

    Install CDDLib.jl using the Julia package manager:

    import Pkg
     Pkg.add("CDDLib")

    Building the package will download binaries of cddlib that are provided by cddlib_jll.jl.

    Use with JuMP

    Use CDDLib.Optimizer{Float64} to use CDDLib.jl with JuMP:

    using JuMP, CDDLib
     model = Model(CDDLib.Optimizer{Float64})

    When using CDDLib.jl with MathOptInterface, you can pass a different number type:

    using MathOptInterface, CDDLib
    -model = CDDLib.Optimizer{Rational{BigInt}}()

    Debugging

    CDDLib.jl uses two global Boolean variables to enable debugging outputs: debug and log.

    You can query the value of debug and log with get_debug and get_log, and set their values with set_debug and set_log.

    +model = CDDLib.Optimizer{Rational{BigInt}}()

    Debugging

    CDDLib.jl uses two global Boolean variables to enable debugging outputs: debug and log.

    You can query the value of debug and log with get_debug and get_log, and set their values with set_debug and set_log.

    diff --git a/dev/packages/COPT/index.html b/dev/packages/COPT/index.html index 39de1c1834b..ec17c58a035 100644 --- a/dev/packages/COPT/index.html +++ b/dev/packages/COPT/index.html @@ -39,4 +39,4 @@ @show value.(X) @show value.(z) @show shadow_price(c1) -@show shadow_price(c2) +@show shadow_price(c2) diff --git a/dev/packages/COSMO/index.html b/dev/packages/COSMO/index.html index d8976664580..d4de4f30555 100644 --- a/dev/packages/COSMO/index.html +++ b/dev/packages/COSMO/index.html @@ -34,4 +34,4 @@ publisher = {Springer}, doi = {10.1007/s10957-021-01896-x}, url = {https://doi.org/10.1007/s10957-021-01896-x} -}

    The article is available under Open Access here.

    Contributing

    • Contributions are always welcome. Our style guide can be found here.
    • Current issues, tasks and future ideas are listed in Issues. Please report any issues or bugs that you encounter.
    • As an open source project we are also interested in any projects and applications that use COSMO. Please let us know by opening a GitHub issue.

    Python - Interface

    COSMO can also be called from Python. Take a look at: cosmo-python

    Licence 🔍

    This project is licensed under the Apache License - see the LICENSE.md file for details.

    +}

    The article is available under Open Access here.

    Contributing

    • Contributions are always welcome. Our style guide can be found here.
    • Current issues, tasks and future ideas are listed in Issues. Please report any issues or bugs that you encounter.
    • As an open source project we are also interested in any projects and applications that use COSMO. Please let us know by opening a GitHub issue.

    Python - Interface

    COSMO can also be called from Python. Take a look at: cosmo-python

    Licence 🔍

    This project is licensed under the Apache License - see the LICENSE.md file for details.

    diff --git a/dev/packages/CPLEX/index.html b/dev/packages/CPLEX/index.html index 92c6dd6563a..90eebfc5341 100644 --- a/dev/packages/CPLEX/index.html +++ b/dev/packages/CPLEX/index.html @@ -163,4 +163,4 @@ x_optimal = value.(x) y_optimal = value.(y) println("x: $(x_optimal), y: $(y_optimal)") -end +end diff --git a/dev/packages/CSDP/index.html b/dev/packages/CSDP/index.html index b142cace52d..bced57d308d 100644 --- a/dev/packages/CSDP/index.html +++ b/dev/packages/CSDP/index.html @@ -10,4 +10,4 @@ A(X) = a X ⪰ 0

    where A(X) = [⟨A_1, X⟩, ..., ⟨A_m, X⟩]. The corresponding dual is:

    min ⟨a, y⟩
          A'(y) - C = Z
    -             Z ⪰ 0

    where A'(y) = y_1A_1 + ... + y_mA_m

    Termination criteria

    CSDP will terminate successfully (or partially) in the following cases:

    • If CSDP finds X, Z ⪰ 0 such that the following 3 tolerances are satisfied:
      • primal feasibility tolerance: ||A(x) - a||_2 / (1 + ||a||_2) < axtol
      • dual feasibility tolerance: ||A'(y) - C - Z||_F / (1 + ||C||_F) < atytol
      • relative duality gap tolerance: gap / (1 + |⟨a, y⟩| + |⟨C, X⟩|) < objtol
        • objective duality gap: if usexygap is 0, gap = ⟨a, y⟩ - ⟨C, X⟩
        • XY duality gap: if usexygap is 1, gap = ⟨Z, X⟩
      then it returns 0.
    • If CSDP finds y and Z ⪰ 0 such that -⟨a, y⟩ / ||A'(y) - Z||_F > pinftol, it returns 1 with y such that ⟨a, y⟩ = -1.
    • If CSDP finds X ⪰ 0 such that ⟨C, X⟩ / ||A(X)||_2 > dinftol, it returns 2 with X such that ⟨C, X⟩ = 1.
    • If CSDP finds X, Z ⪰ 0 such that the following 3 tolerances are satisfied with 1000*axtol, 1000*atytol and 1000*objtol but at least one of them is not satisfied with axtol, atytol and objtol and cannot make progress, then it returns 3.

    In addition, if the printlevel option is at least 1, the following will be printed:

    • If the return code is 1, CSDP will print ⟨a, y⟩ and ||A'(y) - Z||_F
    • If the return code is 2, CSDP will print ⟨C, X⟩ and ||A(X)||_F
    • Otherwise, CSDP will print
      • the primal/dual objective value,
      • the relative primal/dual infeasibility,
      • the objective duality gap ⟨a, y⟩ - ⟨C, X⟩ and objective relative duality gap (⟨a, y⟩ - ⟨C, X⟩) / (1 + |⟨a, y⟩| + |⟨C, X⟩|),
      • the XY duality gap ⟨Z, X⟩ and XY relative duality gap ⟨Z, X⟩ / (1 + |⟨a, y⟩| + |⟨C, X⟩|)
      • and the DIMACS error measures.

    In theory, for feasible primal and dual solutions, ⟨a, y⟩ - ⟨C, X⟩ = ⟨Z, X⟩, so the objective and XY duality gap should be equivalent. However, in practice, there are sometimes solution which satisfy primal and dual feasibility tolerances but have objective duality gap which are not close to XY duality gap. In some cases, the objective duality gap may even become negative (hence the tweakgap option). This is the reason usexygap is 1 by default.

    CSDP considers that X ⪰ 0 (resp. Z ⪰ 0) is satisfied when the Cholesky factorizations can be computed. In practice, this is somewhat more conservative than simply requiring all eigenvalues to be nonnegative.

    Status

    The table below shows how the different CSDP statuses are converted to the MathOptInterface statuses.

    CSDP codeStateDescriptionMOI status
    0SuccessSDP solvedMOI.OPTIMAL
    1SuccessThe problem is primal infeasible, and we have a certificateMOI.INFEASIBLE
    2SuccessThe problem is dual infeasible, and we have a certificateMOI.DUAL_INFEASIBLE
    3Partial SuccessA solution has been found, but full accuracy was not achievedMOI.ALMOST_OPTIMAL
    4FailureMaximum iterations reachedMOI.ITERATION_LIMIT
    5FailureStuck at edge of primal feasibilityMOI.SLOW_PROGRESS
    6FailureStuck at edge of dual infeasibilityMOI.SLOW_PROGRESS
    7FailureLack of progressMOI.SLOW_PROGRESS
    8FailureX, Z, or O was singularMOI.NUMERICAL_ERROR
    9FailureDetected NaN or Inf valuesMOI.NUMERICAL_ERROR
    + Z ⪰ 0

    where A'(y) = y_1A_1 + ... + y_mA_m

    Termination criteria

    CSDP will terminate successfully (or partially) in the following cases:

    • If CSDP finds X, Z ⪰ 0 such that the following 3 tolerances are satisfied:
      • primal feasibility tolerance: ||A(x) - a||_2 / (1 + ||a||_2) < axtol
      • dual feasibility tolerance: ||A'(y) - C - Z||_F / (1 + ||C||_F) < atytol
      • relative duality gap tolerance: gap / (1 + |⟨a, y⟩| + |⟨C, X⟩|) < objtol
        • objective duality gap: if usexygap is 0, gap = ⟨a, y⟩ - ⟨C, X⟩
        • XY duality gap: if usexygap is 1, gap = ⟨Z, X⟩
      then it returns 0.
    • If CSDP finds y and Z ⪰ 0 such that -⟨a, y⟩ / ||A'(y) - Z||_F > pinftol, it returns 1 with y such that ⟨a, y⟩ = -1.
    • If CSDP finds X ⪰ 0 such that ⟨C, X⟩ / ||A(X)||_2 > dinftol, it returns 2 with X such that ⟨C, X⟩ = 1.
    • If CSDP finds X, Z ⪰ 0 such that the following 3 tolerances are satisfied with 1000*axtol, 1000*atytol and 1000*objtol but at least one of them is not satisfied with axtol, atytol and objtol and cannot make progress, then it returns 3.

    In addition, if the printlevel option is at least 1, the following will be printed:

    • If the return code is 1, CSDP will print ⟨a, y⟩ and ||A'(y) - Z||_F
    • If the return code is 2, CSDP will print ⟨C, X⟩ and ||A(X)||_F
    • Otherwise, CSDP will print
      • the primal/dual objective value,
      • the relative primal/dual infeasibility,
      • the objective duality gap ⟨a, y⟩ - ⟨C, X⟩ and objective relative duality gap (⟨a, y⟩ - ⟨C, X⟩) / (1 + |⟨a, y⟩| + |⟨C, X⟩|),
      • the XY duality gap ⟨Z, X⟩ and XY relative duality gap ⟨Z, X⟩ / (1 + |⟨a, y⟩| + |⟨C, X⟩|)
      • and the DIMACS error measures.

    In theory, for feasible primal and dual solutions, ⟨a, y⟩ - ⟨C, X⟩ = ⟨Z, X⟩, so the objective and XY duality gap should be equivalent. However, in practice, there are sometimes solution which satisfy primal and dual feasibility tolerances but have objective duality gap which are not close to XY duality gap. In some cases, the objective duality gap may even become negative (hence the tweakgap option). This is the reason usexygap is 1 by default.

    CSDP considers that X ⪰ 0 (resp. Z ⪰ 0) is satisfied when the Cholesky factorizations can be computed. In practice, this is somewhat more conservative than simply requiring all eigenvalues to be nonnegative.

    Status

    The table below shows how the different CSDP statuses are converted to the MathOptInterface statuses.

    CSDP codeStateDescriptionMOI status
    0SuccessSDP solvedMOI.OPTIMAL
    1SuccessThe problem is primal infeasible, and we have a certificateMOI.INFEASIBLE
    2SuccessThe problem is dual infeasible, and we have a certificateMOI.DUAL_INFEASIBLE
    3Partial SuccessA solution has been found, but full accuracy was not achievedMOI.ALMOST_OPTIMAL
    4FailureMaximum iterations reachedMOI.ITERATION_LIMIT
    5FailureStuck at edge of primal feasibilityMOI.SLOW_PROGRESS
    6FailureStuck at edge of dual infeasibilityMOI.SLOW_PROGRESS
    7FailureLack of progressMOI.SLOW_PROGRESS
    8FailureX, Z, or O was singularMOI.NUMERICAL_ERROR
    9FailureDetected NaN or Inf valuesMOI.NUMERICAL_ERROR
    diff --git a/dev/packages/Cbc/index.html b/dev/packages/Cbc/index.html index 95a6a314c99..3df7323e051 100644 --- a/dev/packages/Cbc/index.html +++ b/dev/packages/Cbc/index.html @@ -9,4 +9,4 @@ set_attribute(model, "logLevel", 1)

    MathOptInterface API

    The COIN Branch-and-Cut (Cbc) optimizer supports the following constraints and attributes.

    List of supported objective functions:

    List of supported variable types:

    List of supported constraint types:

    List of supported model attributes:

    List of supported optimizer attributes:

    List of supported variable attributes:

    List of supported constraint attributes:

    Options

    Options are, unfortunately, not well documented.

    The following options are likely to be the most useful:

    ParameterExampleExplanation
    seconds60.0Solution timeout limit
    logLevel2Set to 0 to disable solution output
    maxSolutions1Terminate after this many feasible solutions have been found
    maxNodes1Terminate after this many branch-and-bound nodes have been evaluated
    allowableGap0.05Terminate after optimality gap is less than this value (on an absolute scale)
    ratioGap0.05Terminate after optimality gap is smaller than this relative fraction
    threads1Set the number of threads to use for parallel branch & bound

    The complete list of parameters can be found by running the cbc executable and typing ? at the prompt.

    Start the cbc executable from Julia as follows:

    using Cbc_jll
     Cbc_jll.cbc() do exe
         run(`$(exe)`)
    -end
    +end diff --git a/dev/packages/Clarabel/index.html b/dev/packages/Clarabel/index.html index 83555aa0dfb..9d055aac670 100644 --- a/dev/packages/Clarabel/index.html +++ b/dev/packages/Clarabel/index.html @@ -33,4 +33,4 @@

    eprint={2405.12762}, archivePrefix={arXiv}, primaryClass={math.OC} -}

    License 🔍

    This project is licensed under the Apache License 2.0 - see the LICENSE.md file for details.

    +}

    License 🔍

    This project is licensed under the Apache License 2.0 - see the LICENSE.md file for details.

    diff --git a/dev/packages/Clp/index.html b/dev/packages/Clp/index.html index 5a6066704bf..8c598f02c87 100644 --- a/dev/packages/Clp/index.html +++ b/dev/packages/Clp/index.html @@ -7,4 +7,4 @@ Pkg.add("Clp")

    In addition to installing the Clp.jl package, this will also download and install the Clp binaries. You do not need to install Clp separately.

    To use a custom binary, read the Custom solver binaries section of the JuMP documentation.

    Use with JuMP

    To use Clp with JuMP, use Clp.Optimizer:

    using JuMP, Clp
     model = Model(Clp.Optimizer)
     set_attribute(model, "LogLevel", 1)
    -set_attribute(model, "Algorithm", 4)

    MathOptInterface API

    The Clp optimizer supports the following constraints and attributes.

    List of supported objective functions:

    List of supported variable types:

    List of supported constraint types:

    List of supported model attributes:

    Options

    Options are, unfortunately, not well documented.

    The following options are likely to be the most useful:

    ParameterExampleExplanation
    PrimalTolerance1e-7Primal feasibility tolerance
    DualTolerance1e-7Dual feasibility tolerance
    DualObjectiveLimit1e308When using dual simplex (where the objective is monotonically changing), terminate when the objective exceeds this limit
    MaximumIterations2147483647Terminate after performing this number of simplex iterations
    MaximumSeconds-1.0Terminate after this many seconds have passed. A negative value means no time limit
    LogLevel1Set to 1, 2, 3, or 4 for increasing output. Set to 0 to disable output
    PresolveType0Set to 1 to disable presolve
    SolveType5Solution method: dual simplex (0), primal simplex (1), sprint (2), barrier with crossover (3), barrier without crossover (4), automatic (5)
    InfeasibleReturn0Set to 1 to return as soon as the problem is found to be infeasible (by default, an infeasibility proof is computed as well)
    Scaling30 -off, 1 equilibrium, 2 geometric, 3 auto, 4 dynamic(later)
    Perturbation100switch on perturbation (50), automatic (100), don't try perturbing (102)

    C API

    The C API can be accessed via Clp.Clp_XXX functions, where the names and arguments are identical to the C API.

    +set_attribute(model, "Algorithm", 4)

    MathOptInterface API

    The Clp optimizer supports the following constraints and attributes.

    List of supported objective functions:

    List of supported variable types:

    List of supported constraint types:

    List of supported model attributes:

    Options

    Options are, unfortunately, not well documented.

    The following options are likely to be the most useful:

    ParameterExampleExplanation
    PrimalTolerance1e-7Primal feasibility tolerance
    DualTolerance1e-7Dual feasibility tolerance
    DualObjectiveLimit1e308When using dual simplex (where the objective is monotonically changing), terminate when the objective exceeds this limit
    MaximumIterations2147483647Terminate after performing this number of simplex iterations
    MaximumSeconds-1.0Terminate after this many seconds have passed. A negative value means no time limit
    LogLevel1Set to 1, 2, 3, or 4 for increasing output. Set to 0 to disable output
    PresolveType0Set to 1 to disable presolve
    SolveType5Solution method: dual simplex (0), primal simplex (1), sprint (2), barrier with crossover (3), barrier without crossover (4), automatic (5)
    InfeasibleReturn0Set to 1 to return as soon as the problem is found to be infeasible (by default, an infeasibility proof is computed as well)
    Scaling30 -off, 1 equilibrium, 2 geometric, 3 auto, 4 dynamic(later)
    Perturbation100switch on perturbation (50), automatic (100), don't try perturbing (102)

    C API

    The C API can be accessed via Clp.Clp_XXX functions, where the names and arguments are identical to the C API.

    diff --git a/dev/packages/DAQP/index.html b/dev/packages/DAQP/index.html index ced6fba67af..74b5ea344ee 100644 --- a/dev/packages/DAQP/index.html +++ b/dev/packages/DAQP/index.html @@ -5,4 +5,4 @@ gtag('config', 'G-0RZ8X3D3D0', {'page_path': location.pathname + location.search + location.hash});

    DAQP.jl

    DAQP.jl is a Julia wrapper for the Quadratic Programming solver DAQP.

    License

    DAQP.jl is licensed under the MIT license.

    The underlying solver, darnstrom/daqp is licensed under the MIT license.

    Installation

    Install DAQP.jl using the Julia package manager:

    import Pkg
     Pkg.add("DAQP")

    Use with JuMP

    To use DAQP with JuMP, do:

    using JuMP, DAQP
    -model = Model(DAQP.Optimizer)

    Documentation

    General information about the solver is available at https://darnstrom.github.io/daqp/, and specifics for the Julia interface are available at https://darnstrom.github.io/daqp/start/julia.

    +model = Model(DAQP.Optimizer)

    Documentation

    General information about the solver is available at https://darnstrom.github.io/daqp/, and specifics for the Julia interface are available at https://darnstrom.github.io/daqp/start/julia.

    diff --git a/dev/packages/DSDP/index.html b/dev/packages/DSDP/index.html index 1713e75b779..9218f712828 100644 --- a/dev/packages/DSDP/index.html +++ b/dev/packages/DSDP/index.html @@ -8,4 +8,4 @@ model = Model(DSDP.Optimizer)

    MathOptInterface API

    The DSDP optimizer supports the following constraints and attributes.

    List of supported objective functions:

    List of supported variable types:

    List of supported constraint types:

    List of supported model attributes:

    Compile your own binaries

    In order to compile your own libdsdp.so to be used of DSDP.jl, use the following

    OB_DIR=$(julia --project=. -e 'import OpenBLAS32_jll; println(OpenBLAS32_jll.OpenBLAS32_jll.artifact_dir)')
     OB="-L${LIBOB_DIR}/lib -lopenblas"
     make DSDPCFLAGS="-g -Wall -fPIC -DPIC" LAPACKBLAS="$OB" dsdplibrary
    -make DSDPCFLAGS="-g -Wall -fPIC -DPIC" LAPACKBLAS="$OB" SH_LD="${CC} ${CFLAGS} -Wall -fPIC -DPIC -shared $OB" oshared
    +make DSDPCFLAGS="-g -Wall -fPIC -DPIC" LAPACKBLAS="$OB" SH_LD="${CC} ${CFLAGS} -Wall -fPIC -DPIC -shared $OB" oshared diff --git a/dev/packages/DiffOpt/index.html b/dev/packages/DiffOpt/index.html index fda4c93f632..4be92d3530d 100644 --- a/dev/packages/DiffOpt/index.html +++ b/dev/packages/DiffOpt/index.html @@ -20,4 +20,4 @@ # fetch the gradients grad_exp = MOI.get(model, DiffOpt.ReverseConstraintFunction(), cons) # -3 x - 1 constant(grad_exp) # -1 -coefficient(grad_exp, x) # -3

    GSOC2020

    DiffOpt began as a NumFOCUS sponsored Google Summer of Code (2020) project

    +coefficient(grad_exp, x) # -3

    GSOC2020

    DiffOpt began as a NumFOCUS sponsored Google Summer of Code (2020) project

    diff --git a/dev/packages/DisjunctiveProgramming/index.html b/dev/packages/DisjunctiveProgramming/index.html index 947d429866f..7c52ccecd73 100644 --- a/dev/packages/DisjunctiveProgramming/index.html +++ b/dev/packages/DisjunctiveProgramming/index.html @@ -8,4 +8,4 @@ author={Perez, Hector D and Joshi, Shivank and Grossmann, Ignacio E}, journal={arXiv preprint arXiv:2304.10492}, year={2023} -} +} diff --git a/dev/packages/Dualization/index.html b/dev/packages/Dualization/index.html index 0e35af272de..2a81c3956b4 100644 --- a/dev/packages/Dualization/index.html +++ b/dev/packages/Dualization/index.html @@ -10,4 +10,4 @@ dual_model = dualize(model)

    To solve the dual formulation of a JuMP model, create a dual_optimizer:

    using JuMP, Dualization, SCS
     model = Model(dual_optimizer(SCS.Optimizer))
     # ... build model ...
    -optimize!(model)  # Solves the dual instead of the primal

    Documentation

    The documentation for Dualization.jl includes a detailed description of the dual reformulation, along with examples and an API reference.

    +optimize!(model) # Solves the dual instead of the primal

    Documentation

    The documentation for Dualization.jl includes a detailed description of the dual reformulation, along with examples and an API reference.

    diff --git a/dev/packages/EAGO/index.html b/dev/packages/EAGO/index.html index 52cd04a124b..01dd4f281ce 100644 --- a/dev/packages/EAGO/index.html +++ b/dev/packages/EAGO/index.html @@ -3,7 +3,7 @@ function gtag(){dataLayer.push(arguments);} gtag('js', new Date()); gtag('config', 'G-0RZ8X3D3D0', {'page_path': location.pathname + location.search + location.hash}); -

    EAGO - Easy Advanced Global Optimization

    EAGO is an open-source development environment for robust and global optimization in Julia. See the full README for more information.

    PSOR LabCurrent VersionBuild StatusDocumentation
    Build Status codecov

    EAGO is a deterministic global optimizer designed to address a wide variety of optimization problems, emphasizing nonlinear programs (NLPs), by propagating McCormick relaxations along the factorable structure of each expression in the NLP. Most operators supported by modern automatic differentiation (AD) packages are supported by EAGO and a number utilities for sanitizing native Julia code and generating relaxations on a wide variety of user-defined functions have been included. Currently, EAGO supports problems that have a priori variable bounds defined and have differentiable constraints. That is, problems should be specified in the generic form below:

    \[\begin{aligned} +

    EAGO - Easy Advanced Global Optimization

    EAGO is an open-source development environment for robust and global optimization in Julia. See the full README for more information.

    PSOR LabCurrent VersionBuild StatusDocumentation
    Build Status codecov

    EAGO is a deterministic global optimizer designed to address a wide variety of optimization problems, emphasizing nonlinear programs (NLPs), by propagating McCormick relaxations along the factorable structure of each expression in the NLP. Most operators supported by modern automatic differentiation (AD) packages are supported by EAGO and a number utilities for sanitizing native Julia code and generating relaxations on a wide variety of user-defined functions have been included. Currently, EAGO supports problems that have a priori variable bounds defined and have differentiable constraints. That is, problems should be specified in the generic form below:

    \[\begin{aligned} f^{*} = & \min_{\mathbf y \in Y \subset \mathbb R^{n_{y}}} f(\mathbf y) \\ {\rm s.t.} \; \; & \mathbf h(\mathbf y) = \mathbf 0 \\ & \mathbf g(\mathbf y) \leq \mathbf 0 \\ @@ -71,4 +71,4 @@ doi = {10.1080/10556788.2020.1786566}, URL = {https://doi.org/10.1080/10556788.2020.1786566}, eprint = {https://doi.org/10.1080/10556788.2020.1786566} -}

    References

    1. Mitsos, A., Chachuat, B., and Barton, P.I. McCormick-based relaxations of algorithms. SIAM Journal on Optimization. 20(2): 573—601 (2009).
    2. Khan, K.A., Watson, H.A.J., and Barton, P.I. Differentiable McCormick relaxations. Journal of Global Optimization. 67(4): 687—729 (2017).
    3. Stuber, M.D., Scott, J.K., and Barton, P.I.: Convex and concave relaxations of implicit functions. Optimization Methods and Software 30(3): 424—460 (2015).
    4. Wechsung, A., Scott, J.K., Watson, H.A.J., and Barton, P.I. Reverse propagation of McCormick relaxations. Journal of Global Optimization 63(1): 1—36 (2015).
    5. Bracken, J., and McCormick, G.P. Selected Applications of Nonlinear Programming. John Wiley and Sons, New York (1968).
    +}

    References

    1. Mitsos, A., Chachuat, B., and Barton, P.I. McCormick-based relaxations of algorithms. SIAM Journal on Optimization. 20(2): 573—601 (2009).
    2. Khan, K.A., Watson, H.A.J., and Barton, P.I. Differentiable McCormick relaxations. Journal of Global Optimization. 67(4): 687—729 (2017).
    3. Stuber, M.D., Scott, J.K., and Barton, P.I.: Convex and concave relaxations of implicit functions. Optimization Methods and Software 30(3): 424—460 (2015).
    4. Wechsung, A., Scott, J.K., Watson, H.A.J., and Barton, P.I. Reverse propagation of McCormick relaxations. Journal of Global Optimization 63(1): 1—36 (2015).
    5. Bracken, J., and McCormick, G.P. Selected Applications of Nonlinear Programming. John Wiley and Sons, New York (1968).
    diff --git a/dev/packages/ECOS/index.html b/dev/packages/ECOS/index.html index ae60ab63f9b..2052e5927e8 100644 --- a/dev/packages/ECOS/index.html +++ b/dev/packages/ECOS/index.html @@ -6,4 +6,4 @@

    ECOS.jl

    Build Status codecov

    ECOS.jl is a wrapper for the ECOS solver.

    The wrapper has two components:

    Affiliation

    This wrapper is maintained by the JuMP community and is not a product of Embotech AG.

    License

    ECOS.jl is licensed under the MIT License.

    The underlying solver, embotech/ecos, is licensed under the GPL v3 license.

    Installation

    Install ECOS.jl using Pkg.add:

    import Pkg
     Pkg.add("ECOS")

    In addition to installing the ECOS.jl package, this will also download and install the ECOS binaries. You do not need to install ECOS separately.

    To use a custom binary, read the Custom solver binaries section of the JuMP documentation.

    Use with JuMP

    To use ECOS with JuMP, use ECOS.Optimizer:

    using JuMP, ECOS
     model = Model(ECOS.Optimizer)
    -set_attribute(model, "maxit", 100)

    MathOptInterface API

    The ECOS optimizer supports the following constraints and attributes.

    List of supported objective functions:

    List of supported variable types:

    List of supported constraint types:

    List of supported model attributes:

    Options

    The following options are supported:

    ParameterExplanation
    gammascaling the final step length
    deltaregularization parameter
    epsregularization threshold
    feastolprimal/dual infeasibility tolerance
    abstolabsolute tolerance on duality gap
    reltolrelative tolerance on duality gap
    feastol_inaccprimal/dual infeasibility relaxed tolerance
    abstol_inaccabsolute relaxed tolerance on duality gap
    reltol_inaccrelative relaxed tolerance on duality gap
    nitrefnumber of iterative refinement steps
    maxitmaximum number of iterations
    verboseverbosity bool for PRINTLEVEL < 3
    +set_attribute(model, "maxit", 100)

    MathOptInterface API

    The ECOS optimizer supports the following constraints and attributes.

    List of supported objective functions:

    List of supported variable types:

    List of supported constraint types:

    List of supported model attributes:

    Options

    The following options are supported:

    ParameterExplanation
    gammascaling the final step length
    deltaregularization parameter
    epsregularization threshold
    feastolprimal/dual infeasibility tolerance
    abstolabsolute tolerance on duality gap
    reltolrelative tolerance on duality gap
    feastol_inaccprimal/dual infeasibility relaxed tolerance
    abstol_inaccabsolute relaxed tolerance on duality gap
    reltol_inaccrelative relaxed tolerance on duality gap
    nitrefnumber of iterative refinement steps
    maxitmaximum number of iterations
    verboseverbosity bool for PRINTLEVEL < 3
    diff --git a/dev/packages/GAMS/index.html b/dev/packages/GAMS/index.html index eb4b179e266..6e58da38ff8 100644 --- a/dev/packages/GAMS/index.html +++ b/dev/packages/GAMS/index.html @@ -22,4 +22,4 @@ MOI.get(model, GAMS.GeneratedConstraintName(), c[2]) # returns eq2 MOI.get(model, GAMS.OriginalConstraintName("eq1")) # returns c[1] -MOI.get(model, GAMS.OriginalConstraintName("eq10")) # returns nothing

    Note that JuMP direct-mode is used.

    +MOI.get(model, GAMS.OriginalConstraintName("eq10")) # returns nothing

    Note that JuMP direct-mode is used.

    diff --git a/dev/packages/GLPK/index.html b/dev/packages/GLPK/index.html index bae5f6720bc..062960e7e4a 100644 --- a/dev/packages/GLPK/index.html +++ b/dev/packages/GLPK/index.html @@ -36,4 +36,4 @@ @test primal_status(model) == MOI.FEASIBLE_POINT @test value(x) == 1 @test value(y) == 2 -@show reasons

    C API

    The C API can be accessed via GLPK.glp_XXX functions, where the names and arguments are identical to the C API. See the /tests folder for inspiration.

    Thread safety

    GLPK is not thread-safe and should not be used with multithreading.

    +@show reasons

    C API

    The C API can be accessed via GLPK.glp_XXX functions, where the names and arguments are identical to the C API. See the /tests folder for inspiration.

    Thread safety

    GLPK is not thread-safe and should not be used with multithreading.

    diff --git a/dev/packages/Gurobi/index.html b/dev/packages/Gurobi/index.html index 6755003bbe8..274f0007e8b 100644 --- a/dev/packages/Gurobi/index.html +++ b/dev/packages/Gurobi/index.html @@ -169,4 +169,4 @@ println(lower_bound(x[i])) end

    Common errors

    Using Gurobi v9.0 and you got an error like Q not PSD?

    You need to set the NonConvex parameter:

    model = Model(Gurobi.Optimizer)
     set_optimizer_attribute(model, "NonConvex", 2)

    Gurobi Error 1009: Version number is XX.X, license is for version XX.X

    Make sure that your license is correct for your Gurobi version. See the Gurobi documentation for details.

    Once you are sure that the license and Gurobi versions match, re-install Gurobi.jl by running:

    import Pkg
    -Pkg.build("Gurobi")
    +Pkg.build("Gurobi") diff --git a/dev/packages/HiGHS/index.html b/dev/packages/HiGHS/index.html index 50b8850d0a1..9d0e4230efd 100644 --- a/dev/packages/HiGHS/index.html +++ b/dev/packages/HiGHS/index.html @@ -3,11 +3,12 @@ function gtag(){dataLayer.push(arguments);} gtag('js', new Date()); gtag('config', 'G-0RZ8X3D3D0', {'page_path': location.pathname + location.search + location.hash}); -

    HiGHS.jl

    Build Status codecov

    HiGHS.jl is a wrapper for the HiGHS solver.

    It has two components:

    Affiliation

    This wrapper is maintained by the JuMP community and is not an official project of the HiGHS developers.

    Getting help

    If you need help, please ask a question on the JuMP community forum.

    If you have a reproducible example of a bug, please open a GitHub issue.

    License

    HiGHS.jl is licensed under the MIT License.

    The underlying solver, ERGO-Code/HiGHS, is licensed under the MIT license.

    Installation

    Install HiGHS as follows:

    import Pkg
    +

    HiGHS.jl

    Build Status codecov

    HiGHS.jl is a wrapper for the HiGHS solver.

    It has two components:

    Affiliation

    This wrapper is maintained by the JuMP community and is not an official project of the HiGHS developers.

    Getting help

    If you need help, please ask a question on the JuMP community forum.

    If you have a reproducible example of a bug, please open a GitHub issue.

    License

    HiGHS.jl is licensed under the MIT License.

    The underlying solver, ERGO-Code/HiGHS, is licensed under the MIT license.

    Installation

    Install HiGHS as follows:

    import Pkg
     Pkg.add("HiGHS")

    In addition to installing the HiGHS.jl package, this will also download and install the HiGHS binaries. You do not need to install HiGHS separately.

    To use a custom binary, read the Custom solver binaries section of the JuMP documentation.

    Use with JuMP

    To use HiGHS with JuMP, use HiGHS.Optimizer:

    using JuMP, HiGHS
     model = Model(HiGHS.Optimizer)
    +# Set options as needed, for example:
     set_attribute(model, "presolve", "on")
     set_attribute(model, "time_limit", 60.0)

    MathOptInterface API

    The HiGHS optimizer supports the following constraints and attributes.

    List of supported objective functions:

    List of supported variable types:

    List of supported constraint types:

    List of supported model attributes:

    Options

    See the HiGHS documentation for a full list of the available options.

    C API

    The C API can be accessed via HiGHS.Highs_xxx functions, where the names and arguments are identical to the C API.

    Threads

    HiGHS uses a global scheduler that is shared between threads.

    Before changing the number of threads using MOI.Threads(), you must call Highs_resetGlobalScheduler(1):

    using JuMP, HiGHS
     model = Model(HiGHS.Optimizer)
     Highs_resetGlobalScheduler(1)
    -set_attribute(model, MOI.NumberOfThreads(), 1)

    If modifying the number of HiGHS threads across different Julia threads, be sure to read the docstring of Highs_resetGlobalScheduler. In particular, resetting the scheduler is not thread-safe.

    +set_attribute(model, MOI.NumberOfThreads(), 1)

    If modifying the number of HiGHS threads across different Julia threads, be sure to read the docstring of Highs_resetGlobalScheduler. In particular, resetting the scheduler is not thread-safe.

    diff --git a/dev/packages/Hypatia/index.html b/dev/packages/Hypatia/index.html index 3ff9ff69e11..aa240d89ad6 100644 --- a/dev/packages/Hypatia/index.html +++ b/dev/packages/Hypatia/index.html @@ -42,4 +42,4 @@ volume={15}, pages={53--101}, doi={https://doi.org/10.1007/s12532-022-00226-0} -} +} diff --git a/dev/packages/InfiniteOpt/index.html b/dev/packages/InfiniteOpt/index.html index d54035d8ddf..d0111ba3499 100644 --- a/dev/packages/InfiniteOpt/index.html +++ b/dev/packages/InfiniteOpt/index.html @@ -12,4 +12,4 @@ doi = {https://doi.org/10.1016/j.compchemeng.2021.107567}, url = {https://www.sciencedirect.com/science/article/pii/S0098135421003458}, author = {Joshua L. Pulsipher and Weiqi Zhang and Tyler J. Hongisto and Victor M. Zavala}, -}

    A pre-print version is freely available though arXiv.

    +}

    A pre-print version is freely available though arXiv.

    diff --git a/dev/packages/Ipopt/index.html b/dev/packages/Ipopt/index.html index 7ce52778926..d23c243e1e4 100644 --- a/dev/packages/Ipopt/index.html +++ b/dev/packages/Ipopt/index.html @@ -3,7 +3,7 @@ function gtag(){dataLayer.push(arguments);} gtag('js', new Date()); gtag('config', 'G-0RZ8X3D3D0', {'page_path': location.pathname + location.search + location.hash}); -

    Ipopt.jl

    Build Status codecov

    Ipopt.jl is a wrapper for the Ipopt solver.

    Affiliation

    This wrapper is maintained by the JuMP community and is not a COIN-OR project.

    Getting help

    If you need help, please ask a question on the JuMP community forum.

    If you have a reproducible example of a bug, please open a GitHub issue.

    License

    Ipopt.jl is licensed under the MIT License.

    The underlying solver, coin-or/Ipopt, is licensed under the Eclipse public license.

    Installation

    Install Ipopt.jl using the Julia package manager:

    import Pkg
    +

    Ipopt.jl

    Build Status codecov

    Ipopt.jl is a wrapper for the Ipopt solver.

    Affiliation

    This wrapper is maintained by the JuMP community and is not a COIN-OR project.

    Getting help

    If you need help, please ask a question on the JuMP community forum.

    If you have a reproducible example of a bug, please open a GitHub issue.

    License

    Ipopt.jl is licensed under the MIT License.

    The underlying solver, coin-or/Ipopt, is licensed under the Eclipse public license.

    Installation

    Install Ipopt.jl using the Julia package manager:

    import Pkg
     Pkg.add("Ipopt")

    In addition to installing the Ipopt.jl package, this will also download and install the Ipopt binaries. You do not need to install Ipopt separately.

    To use a custom binary, read the Custom solver binaries section of the JuMP documentation.

    For details on using a different linear solver, see the Linear Solvers section below. You do not need a custom binary to change the linear solver.

    Use with JuMP

    You can use Ipopt with JuMP as follows:

    using JuMP, Ipopt
     model = Model(Ipopt.Optimizer)
     set_attribute(model, "max_cpu_time", 60.0)
    @@ -124,4 +124,4 @@
     LinearAlgebra.BLAS.lbt_forward(liblapack32)
     using Ipopt

    AppleAccelerate

    If you are using macOS ≥ v13.4 and you have AppleAccelerate.jl installed, add using AppleAccelerate to your code:

    using AppleAccelerate
     using Ipopt

    Display backends

    Check what backends are loaded using:

    import LinearAlgebra
    -LinearAlgebra.BLAS.lbt_get_config()
    +LinearAlgebra.BLAS.lbt_get_config()
    diff --git a/dev/packages/Juniper/index.html b/dev/packages/Juniper/index.html index f20092032ea..5876c81fe62 100644 --- a/dev/packages/Juniper/index.html +++ b/dev/packages/Juniper/index.html @@ -33,4 +33,4 @@ year="2018", publisher="Springer International Publishing", isbn="978-3-319-93031-2" -} +} diff --git a/dev/packages/KNITRO/index.html b/dev/packages/KNITRO/index.html index fdea76606c9..0d3144d4668 100644 --- a/dev/packages/KNITRO/index.html +++ b/dev/packages/KNITRO/index.html @@ -10,4 +10,4 @@ set_attribute(model, "algorithm", 4)

    Use with AMPL

    To use KNITRO with AmplNLWriter.jl, use KNITRO.amplexe:

    using JuMP
     import AmplNLWriter
     import KNITRO
    -model = Model(() -> AmplNLWriter.Optimizer(KNITRO.amplexe, ["outlev=3"]))

    Use with other packages

    A variety of packages extend KNITRO.jl to support other optimization modeling systems. These include:

    MathOptInterface API

    The Knitro optimizer supports the following constraints and attributes.

    List of supported objective functions:

    List of supported variable types:

    List of supported constraint types:

    List of supported model attributes:

    Options

    A list of available options is provided in the KNITRO reference manual.

    Low-level wrapper

    The complete C API can be accessed via KNITRO.KN_xx functions, where the names and arguments are identical to the C API.

    See the KNITRO documentation for details.

    As general rules when converting from Julia to C:

    • When KNITRO requires a Ptr{T} that holds one element, like double *, use a Ref{T}().
    • When KNITRO requires a Ptr{T} that holds multiple elements, use a Vector{T}.
    • When KNITRO requires a double, use Cdouble
    • When KNITRO requires an int, use Cint
    • When KNITRO requires a NULL, use C_NULL

    Extensive examples using the C wrapper can be found in examples/.

    Breaking changes

    KNITRO.jl v0.14.0 introduced a number of breaking changes to the low-level C API. The main changes were:

    1. removing Julia-specific functions like KN_set_param. Use the C API functions like KN_set_int_param and KN_set_double_param_by_name.
    2. removing intermediate methods that tried to make the C API more Julia-like. For example, we have removed the KN_add_var method that returned the index of the variable. There is now only the method from the C API.

    If you have trouble updating, please open a GitHub issue.

    Multi-threading

    Due to limitations in the interaction between Julia and C, KNITRO.jl disables multi-threading if the problem is nonlinear. This will override any options such as par_numthreads that you may have set.

    If you are using the low-level API, opt-in to enable multi-threading by calling KN_solve(model.env) instead of KN_solve(model), where model is the value returned by model = KN_new(). Note that calling KN_solve(model.env) is an advanced operation because it requires all callbacks you provide to be threadsafe.

    Read GitHub issue #93 for more details.

    +model = Model(() -> AmplNLWriter.Optimizer(KNITRO.amplexe, ["outlev=3"]))

    Use with other packages

    A variety of packages extend KNITRO.jl to support other optimization modeling systems. These include:

    MathOptInterface API

    The Knitro optimizer supports the following constraints and attributes.

    List of supported objective functions:

    List of supported variable types:

    List of supported constraint types:

    List of supported model attributes:

    Options

    A list of available options is provided in the KNITRO reference manual.

    Low-level wrapper

    The complete C API can be accessed via KNITRO.KN_xx functions, where the names and arguments are identical to the C API.

    See the KNITRO documentation for details.

    As general rules when converting from Julia to C:

    • When KNITRO requires a Ptr{T} that holds one element, like double *, use a Ref{T}().
    • When KNITRO requires a Ptr{T} that holds multiple elements, use a Vector{T}.
    • When KNITRO requires a double, use Cdouble
    • When KNITRO requires an int, use Cint
    • When KNITRO requires a NULL, use C_NULL

    Extensive examples using the C wrapper can be found in examples/.

    Breaking changes

    KNITRO.jl v0.14.0 introduced a number of breaking changes to the low-level C API. The main changes were:

    1. removing Julia-specific functions like KN_set_param. Use the C API functions like KN_set_int_param and KN_set_double_param_by_name.
    2. removing intermediate methods that tried to make the C API more Julia-like. For example, we have removed the KN_add_var method that returned the index of the variable. There is now only the method from the C API.

    If you have trouble updating, please open a GitHub issue.

    Multi-threading

    Due to limitations in the interaction between Julia and C, KNITRO.jl disables multi-threading if the problem is nonlinear. This will override any options such as par_numthreads that you may have set.

    If you are using the low-level API, opt-in to enable multi-threading by calling KN_solve(model.env) instead of KN_solve(model), where model is the value returned by model = KN_new(). Note that calling KN_solve(model.env) is an advanced operation because it requires all callbacks you provide to be threadsafe.

    Read GitHub issue #93 for more details.

    diff --git a/dev/packages/Loraine/index.html b/dev/packages/Loraine/index.html index cff119e85c9..702e8ecbdd9 100644 --- a/dev/packages/Loraine/index.html +++ b/dev/packages/Loraine/index.html @@ -37,4 +37,4 @@ www={https://hal.science/hal-04076509/} note={Preprint hal-04076509} year={2023} -}
    • 1https://www.youtube.com/watch?v=0D2wNf1lVrI
    +}
    • 1https://www.youtube.com/watch?v=0D2wNf1lVrI
    diff --git a/dev/packages/MAiNGO/index.html b/dev/packages/MAiNGO/index.html index ac0d038a4a6..a03810df0e8 100644 --- a/dev/packages/MAiNGO/index.html +++ b/dev/packages/MAiNGO/index.html @@ -94,4 +94,4 @@ findMAiNGO(preferred=MAiNGO.C_API) # switch back to MAiNGO_jll findMAiNGO(preferred=MAiNGO.MAINGO_JLL)

    The findMAiNGO() function takes several optional arguments, which can be passed as keyword-arguments:

    • verbose: boolean, whether or not progress on finding MAiNGO is reported. (Default value: false)
    • preferred: either MAiNGO.MAINGOJLL or MAiNGO.CAPI, determines whether jll binaries or custom installation of MAiNGO is preferred. Note that the C-API is always preferred to the standalone version. If a custom standalone version should be used, set this value to C-API and pass an empty string as the capi argument (see next). (Default value: MAINGOJLL)
    • capi: string, path to C-API file. If set, this overrides the environment variable MAINGOLIB.
    • standalone: string, path to standalone executable file. If set, this overrides the environment variable MAINGO_EXEC.

    For example, to use the C-API at a new location, one could call:

    using MAiNGO
    -findMAiNGO(preferred=MAiNGO.C_API, c_api="path\\to\\c\\api\\shared_parser.dll")

    Currently working:

    • Integer and binary variables.
    • Affine, Quadratic and nonlinear constraints and objectives.
    • Operations: min,max,*,/,+,-,-(unary), exp,log,abs,sqrt,^
      • Other operations are easy to add if supported by MathOptInterface,ALE and MAiNGO.
    • Writing problem defined in JuMP syntax to an ALE problem.txt and calling MAiNGO.exe on a specified path.
    • Alternatively using a C-API to call MAiNGO.

    Restrictions compared to using the Python or C++ interface

    It is assumed that all variables are bounded. This interface assumes that integer variables are bounded between -1e6 and 1e6. For real variables these bounds are -1e8 and 1e8.

    Other functionality such as special support for growing datasets or MPI parallelization is not currently supported via this wrapper. Additionally, constraint formulations are simply passed from their representation in JuMP/MathOptInterface to MAiNGO. As such, there is no way to make use of advanced techniques such as defining constraints that are only used for the relaxations, using special relaxations for functions used in thermodynamics and process engineering or formulating reduced space formulations.

    Tests

    A subset of test cases for MathOptInterface solvers can be run by running the script ./test/runtests.jl. The current release was tested in the following combinations:

    • Julia 1.8.5 and MathOptInterface v1.18.0
    • Julia 1.9.4 and MathOptInterface v1.23.0.
    +findMAiNGO(preferred=MAiNGO.C_API, c_api="path\\to\\c\\api\\shared_parser.dll")

    Currently working:

    • Integer and binary variables.
    • Affine, Quadratic and nonlinear constraints and objectives.
    • Operations: min,max,*,/,+,-,-(unary), exp,log,abs,sqrt,^
      • Other operations are easy to add if supported by MathOptInterface,ALE and MAiNGO.
    • Writing problem defined in JuMP syntax to an ALE problem.txt and calling MAiNGO.exe on a specified path.
    • Alternatively using a C-API to call MAiNGO.

    Restrictions compared to using the Python or C++ interface

    It is assumed that all variables are bounded. This interface assumes that integer variables are bounded between -1e6 and 1e6. For real variables these bounds are -1e8 and 1e8.

    Other functionality such as special support for growing datasets or MPI parallelization is not currently supported via this wrapper. Additionally, constraint formulations are simply passed from their representation in JuMP/MathOptInterface to MAiNGO. As such, there is no way to make use of advanced techniques such as defining constraints that are only used for the relaxations, using special relaxations for functions used in thermodynamics and process engineering or formulating reduced space formulations.

    Tests

    A subset of test cases for MathOptInterface solvers can be run by running the script ./test/runtests.jl. The current release was tested in the following combinations:

    • Julia 1.8.5 and MathOptInterface v1.18.0
    • Julia 1.9.4 and MathOptInterface v1.23.0.
    diff --git a/dev/packages/MadNLP/index.html b/dev/packages/MadNLP/index.html index 93b6b85753d..3dc4881380f 100644 --- a/dev/packages/MadNLP/index.html +++ b/dev/packages/MadNLP/index.html @@ -43,4 +43,4 @@ author={Shin, Sungho and Coffrin, Carleton and Sundar, Kaarthik and Zavala, Victor M}, journal={arXiv preprint arXiv:2010.02404}, year={2020} -}

    Supporting MadNLP.jl

    +}

    Supporting MadNLP.jl

    diff --git a/dev/packages/Manopt/index.html b/dev/packages/Manopt/index.html index 7715a340cac..8b94e1f6a86 100644 --- a/dev/packages/Manopt/index.html +++ b/dev/packages/Manopt/index.html @@ -30,4 +30,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.

    +}

    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.

    diff --git a/dev/packages/MathOptAI/index.html b/dev/packages/MathOptAI/index.html index 7f8e9532558..d44de781e83 100644 --- a/dev/packages/MathOptAI/index.html +++ b/dev/packages/MathOptAI/index.html @@ -3,7 +3,7 @@ function gtag(){dataLayer.push(arguments);} gtag('js', new Date()); gtag('config', 'G-0RZ8X3D3D0', {'page_path': location.pathname + location.search + location.hash}); -

    MathOptAI.jl

    Build Status codecov

    MathOptAI.jl is a JuMP extension for embedding trained AI, machine learning, and statistical learning models into a JuMP optimization model.

    License

    MathOptAI.jl is provided under a BSD-3 license as part of the Optimization and Machine Learning Toolbox project, O4806.

    See LICENSE.md for details.

    Despite the name similarity, this project is not affiliated with OMLT, the Optimization and Machine Learning Toolkit.

    Installation

    Install MathOptAI.jl using the Julia package manager:

    import Pkg
    +

    MathOptAI.jl

    Build Status Code coverage

    MathOptAI.jl is a JuMP extension for embedding trained AI, machine learning, and statistical learning models into a JuMP optimization model.

    License

    MathOptAI.jl is provided under a BSD-3 license as part of the Optimization and Machine Learning Toolbox project, O4806.

    See LICENSE.md for details.

    Despite the name similarity, this project is not affiliated with OMLT, the Optimization and Machine Learning Toolkit.

    Installation

    Install MathOptAI.jl using the Julia package manager:

    import Pkg
     Pkg.add("MathOptAI")

    Getting started

    Here's an example of using MathOptAI to embed a trained neural network from Flux into a JuMP model. The vector of JuMP variables x is fed as input to the neural network. The output y is a vector of JuMP variables that represents the output layer of the neural network. The formulation object stores the additional variables and constraints that were added to model.

    julia> using JuMP, MathOptAI, Flux
     
     julia> predictor = Flux.Chain(
    @@ -31,4 +31,4 @@
      moai_SoftMax[7]
      moai_SoftMax[8]
      moai_SoftMax[9]
    - moai_SoftMax[10]

    Documentation

    Documentation is available at https://lanl-ansi.github.io/MathOptAI.jl/dev.

    Getting help

    For help, questions, comments, and suggestions, please open a GitHub issue.

    Inspiration

    This project is mainly inspired by two existing projects:

    Other works, from which we took less inspiration, include:

    The 2024 paper of López-Flores et al. is an excellent summary of the state of the field at the time that we started development of MathOptAI.

    López-Flores, F.J., Ramírez-Márquez, C., Ponce-Ortega J.M. (2024). Process Systems Engineering Tools for Optimization of Trained Machine Learning Models: Comparative and Perspective. Industrial & Engineering Chemistry Research, 63(32), 13966-13979. DOI: 10.1021/acs.iecr.4c00632

    + moai_SoftMax[10]

    Documentation

    Documentation is available at https://lanl-ansi.github.io/MathOptAI.jl.

    Getting help

    For help, questions, comments, and suggestions, please open a GitHub issue.

    Inspiration

    This project is mainly inspired by two existing projects:

    Other works, from which we took less inspiration, include:

    The 2024 paper of López-Flores et al. is an excellent summary of the state of the field at the time that we started development of MathOptAI.

    López-Flores, F.J., Ramírez-Márquez, C., Ponce-Ortega J.M. (2024). Process Systems Engineering Tools for Optimization of Trained Machine Learning Models: Comparative and Perspective. Industrial & Engineering Chemistry Research, 63(32), 13966-13979. DOI: 10.1021/acs.iecr.4c00632

    diff --git a/dev/packages/MathOptSymbolicAD/index.html b/dev/packages/MathOptSymbolicAD/index.html index ca44449a11b..a727cb36255 100644 --- a/dev/packages/MathOptSymbolicAD/index.html +++ b/dev/packages/MathOptSymbolicAD/index.html @@ -18,4 +18,4 @@ optimize!(model)

    Background

    MathOptSymbolicAD is inspired by Hassan Hijazi's work on coin-or/gravity, a high-performance algebraic modeling language in C++.

    Hassan made the following observations:

    • For large scale models, symbolic differentiation is slower than other automatic differentiation techniques.
    • However, most large-scale nonlinear programs have a lot of structure.
    • Gravity asks the user to provide structure in the form of template constraints, where the user gives the symbolic form of the constraint as well as a set of data to convert from a symbolic form to the numerical form.
    • Instead of differentiating each constraint in its numerical form, we can compute one symbolic derivative of the constraint in symbolic form, and then plug in the data in to get the numerical derivative of each function.
    • As a final step, if users don't provide the structure, we can still infer it –perhaps with less accuracy–by comparing the expression tree of each constraint.

    The symbolic differentiation approach of Gravity works well when the problem is large with few unique constraints. For example, a model like:

    model = Model()
     @variable(model, 0 <= x[1:10_000] <= 1)
     @constraint(model, [i=1:10_000], sin(x[i]) <= 1)
    -@objective(model, Max, sum(x))

    is ideal, because although the Jacobian matrix has 10,000 rows, we can compute the derivative of sin(x[i]) as cos(x[i]), and then fill in the Jacobian by evaluating the derivative function instead of having to differentiation 10,000 expressions.

    The symbolic differentiation approach of Gravity works poorly if there are a large number of unique constraints in the model (which would require a lot of expressions to be symbolically differentiated), or if the nonlinear functions contain a large number of nonlinear terms (which would make the symbolic derivative expensive to compute).

    For more details, see Oscar's JuMP-dev 2022 talk, although note that the syntax has changed since the original recording.

    +@objective(model, Max, sum(x))

    is ideal, because although the Jacobian matrix has 10,000 rows, we can compute the derivative of sin(x[i]) as cos(x[i]), and then fill in the Jacobian by evaluating the derivative function instead of having to differentiation 10,000 expressions.

    The symbolic differentiation approach of Gravity works poorly if there are a large number of unique constraints in the model (which would require a lot of expressions to be symbolically differentiated), or if the nonlinear functions contain a large number of nonlinear terms (which would make the symbolic derivative expensive to compute).

    For more details, see Oscar's JuMP-dev 2022 talk, although note that the syntax has changed since the original recording.

    diff --git a/dev/packages/MiniZinc/index.html b/dev/packages/MiniZinc/index.html index e52f746a94f..f9e3351fe30 100644 --- a/dev/packages/MiniZinc/index.html +++ b/dev/packages/MiniZinc/index.html @@ -53,4 +53,4 @@ @constraint(model, x in MOI.AllDifferent(3)) @objective(model, Max, sum(i * x[i] for i in 1:3)) optimize!(model) -@show value.(x)

    MathOptInterface API

    The MiniZinc Optimizer{T} supports the following constraints and attributes.

    List of supported objective functions:

    List of supported variable types:

    List of supported constraint types:

    List of supported model attributes:

    Options

    Set options using MOI.RawOptimizerAttribute in MOI or set_attribute in JuMP.

    MiniZinc.jl supports the following options:

    • model_filename::String = "": the location at which to write out the .mzn file during optimization. This option can be helpful during debugging. If left empty, a temporary file will be used instead.

    • MOI.SolutionLimit: set this option to a positive integer to return up to the limit number of solutions.

    +@show value.(x)

    MathOptInterface API

    The MiniZinc Optimizer{T} supports the following constraints and attributes.

    List of supported objective functions:

    List of supported variable types:

    List of supported constraint types:

    List of supported model attributes:

    Options

    Set options using MOI.RawOptimizerAttribute in MOI or set_attribute in JuMP.

    MiniZinc.jl supports the following options:

    • model_filename::String = "": the location at which to write out the .mzn file during optimization. This option can be helpful during debugging. If left empty, a temporary file will be used instead.

    • MOI.SolutionLimit: set this option to a positive integer to return up to the limit number of solutions.

    diff --git a/dev/packages/MosekTools/index.html b/dev/packages/MosekTools/index.html index c300ab2e3bc..723321fbcfa 100644 --- a/dev/packages/MosekTools/index.html +++ b/dev/packages/MosekTools/index.html @@ -7,4 +7,4 @@ using MosekTools model = Model(Mosek.Optimizer) set_attribute(model, "QUIET", true) -set_attribute(model, "INTPNT_CO_TOL_DFEAS", 1e-7)

    Options

    The parameter QUIET is a special parameter that when set to true disables all Mosek printing output.

    All other parameters can be found in the Mosek documentation.

    Note that the prefix MSK_IPAR_ (for integer parameters), MSK_DPAR_ (for floating point parameters) or MSK_SPAR_ (for string parameters) are optional. If they are not given, they are inferred from the type of the value. For example, in the example above, as 1e-7 is a floating point number, the parameters name used is MSK_DPAR_INTPNT_CO_TOL_DFEAS.

    +set_attribute(model, "INTPNT_CO_TOL_DFEAS", 1e-7)

    Options

    The parameter QUIET is a special parameter that when set to true disables all Mosek printing output.

    All other parameters can be found in the Mosek documentation.

    Note that the prefix MSK_IPAR_ (for integer parameters), MSK_DPAR_ (for floating point parameters) or MSK_SPAR_ (for string parameters) are optional. If they are not given, they are inferred from the type of the value. For example, in the example above, as 1e-7 is a floating point number, the parameters name used is MSK_DPAR_INTPNT_CO_TOL_DFEAS.

    diff --git a/dev/packages/MultiObjectiveAlgorithms/index.html b/dev/packages/MultiObjectiveAlgorithms/index.html index f6706eb861e..8b695fe9a4f 100644 --- a/dev/packages/MultiObjectiveAlgorithms/index.html +++ b/dev/packages/MultiObjectiveAlgorithms/index.html @@ -9,4 +9,4 @@ import MultiObjectiveAlgorithms as MOA model = JuMP.Model(() -> MOA.Optimizer(HiGHS.Optimizer)) set_attribute(model, MOA.Algorithm(), MOA.Dichotomy()) -set_attribute(model, MOA.SolutionLimit(), 4)

    Replace HiGHS.Optimizer with an optimizer capable of solving a single-objective instance of your optimization problem.

    You may set additional optimizer attributes, the supported attributes depend on the choice of solution algorithm.

    Algorithm

    Set the algorithm using the MOA.Algorithm() attribute.

    The value must be one of the algorithms supported by MOA:

    • MOA.Chalmet()
    • MOA.Dichotomy()
    • MOA.DominguezRios()
    • MOA.EpsilonConstraint()
    • MOA.Hierarchical()
    • MOA.KirlikSayin()
    • MOA.Lexicographic() [default]
    • MOA.TambyVanderpooten()

    Consult their docstrings for details.

    Other optimizer attributes

    There are a number of optimizer attributes supported by the algorithms in MOA.

    Each algorithm supports only a subset of the attributes. Consult the algorithm's docstring for details on which attributes it supports, and how it uses them in the solution process.

    • MOA.EpsilonConstraintStep()
    • MOA.LexicographicAllPermutations()
    • MOA.ObjectiveAbsoluteTolerance(index::Int)
    • MOA.ObjectivePriority(index::Int)
    • MOA.ObjectiveRelativeTolerance(index::Int)
    • MOA.ObjectiveWeight(index::Int)
    • MOA.SolutionLimit()
    • MOI.TimeLimitSec()
    +set_attribute(model, MOA.SolutionLimit(), 4)

    Replace HiGHS.Optimizer with an optimizer capable of solving a single-objective instance of your optimization problem.

    You may set additional optimizer attributes, the supported attributes depend on the choice of solution algorithm.

    Algorithm

    Set the algorithm using the MOA.Algorithm() attribute.

    The value must be one of the algorithms supported by MOA:

    • MOA.Chalmet()
    • MOA.Dichotomy()
    • MOA.DominguezRios()
    • MOA.EpsilonConstraint()
    • MOA.Hierarchical()
    • MOA.KirlikSayin()
    • MOA.Lexicographic() [default]
    • MOA.TambyVanderpooten()

    Consult their docstrings for details.

    Other optimizer attributes

    There are a number of optimizer attributes supported by the algorithms in MOA.

    Each algorithm supports only a subset of the attributes. Consult the algorithm's docstring for details on which attributes it supports, and how it uses them in the solution process.

    • MOA.EpsilonConstraintStep()
    • MOA.LexicographicAllPermutations()
    • MOA.ObjectiveAbsoluteTolerance(index::Int)
    • MOA.ObjectivePriority(index::Int)
    • MOA.ObjectiveRelativeTolerance(index::Int)
    • MOA.ObjectiveWeight(index::Int)
    • MOA.SolutionLimit()
    • MOI.TimeLimitSec()
    diff --git a/dev/packages/NEOSServer/index.html b/dev/packages/NEOSServer/index.html index 5b694416c42..4a9e0497db4 100644 --- a/dev/packages/NEOSServer/index.html +++ b/dev/packages/NEOSServer/index.html @@ -27,4 +27,4 @@ results = neos_getFinalResults(server, job)

    Use with JuMP

    Use NEOSServer.jl with JuMP as follows:

    using JuMP, NEOSServer
     model = Model() do
         return NEOSServer.Optimizer(; email = "me@mydomain.com", solver = "Ipopt")
    -end

    Note: NEOSServer.Optimizer is limited to the following solvers:

    • "CPLEX"
    • "FICO-Xpress"
    • "Ipopt"
    • "Knitro"
    • "MOSEK"
    • "OCTERACT"
    • "SNOPT"

    NEOS Limits

    NEOS currently limits jobs to an 8 hour time limit, 3 GB of memory, and a 16 MB submission file. If your model exceeds these limits, NEOSServer.jl may be unable to return useful information to the user.

    +end

    Note: NEOSServer.Optimizer is limited to the following solvers:

    • "CPLEX"
    • "FICO-Xpress"
    • "Ipopt"
    • "Knitro"
    • "MOSEK"
    • "OCTERACT"
    • "SNOPT"

    NEOS Limits

    NEOS currently limits jobs to an 8 hour time limit, 3 GB of memory, and a 16 MB submission file. If your model exceeds these limits, NEOSServer.jl may be unable to return useful information to the user.

    diff --git a/dev/packages/NLopt/index.html b/dev/packages/NLopt/index.html index 1f8a9b6ebd0..21ec7044d79 100644 --- a/dev/packages/NLopt/index.html +++ b/dev/packages/NLopt/index.html @@ -120,4 +120,4 @@ opt = Opt(:LD_MMA, 2) # Define problem solutions[i] = optimize(opt, rand(2)) -end

    Author

    This module was initially written by Steven G. Johnson, with subsequent contributions by several other authors (see the git history).

    +end

    Author

    This module was initially written by Steven G. Johnson, with subsequent contributions by several other authors (see the git history).

    diff --git a/dev/packages/OSQP/index.html b/dev/packages/OSQP/index.html index 8f86cd58b84..6edd39976d2 100644 --- a/dev/packages/OSQP/index.html +++ b/dev/packages/OSQP/index.html @@ -6,4 +6,4 @@

    OSQP.jl

    Build Status codecov.io

    OSQP.jl is a Julia wrapper for OSQP: the Operator Splitting QP Solver.

    License

    OSQP.jl is licensed under the Apache-2.0 license.

    The upstream solver, osqp/osqp is also licensed under the Apache-2.0 license.

    Installation

    Install OSQP.jl using the Julia package manager

    import Pkg
     Pkg.add("OSQP")

    Problem class

    The OSQP (Operator Splitting Quadratic Program) solver is a numerical optimization package for solving problems in the form

    minimize        0.5 x' P x + q' x
     
    -subject to      l <= A x <= u

    where x in R^n is the optimization variable. The objective function is defined by a positive semidefinite matrix P in S^n_+ and vector q in R^n. The linear constraints are defined by matrix A in R^{m x n} and vectors l in R^m U {-inf}^m, u in R^m U {+inf}^m.

    Documentation

    Detailed documentation is available at https://osqp.org/.

    +subject to l <= A x <= u

    where x in R^n is the optimization variable. The objective function is defined by a positive semidefinite matrix P in S^n_+ and vector q in R^n. The linear constraints are defined by matrix A in R^{m x n} and vectors l in R^m U {-inf}^m, u in R^m U {+inf}^m.

    Documentation

    Detailed documentation is available at https://osqp.org/.

    diff --git a/dev/packages/Optim/index.html b/dev/packages/Optim/index.html index 5f63901dccf..708594da0b7 100644 --- a/dev/packages/Optim/index.html +++ b/dev/packages/Optim/index.html @@ -105,4 +105,4 @@ number = {24}, pages = {615}, doi = {10.21105/joss.00615} -} +} diff --git a/dev/packages/PATHSolver/index.html b/dev/packages/PATHSolver/index.html index 070353b6dd1..e846e746881 100644 --- a/dev/packages/PATHSolver/index.html +++ b/dev/packages/PATHSolver/index.html @@ -165,4 +165,4 @@ 0.8 1.2

    Thread safety

    PATH is not thread-safe and there are no known work-arounds. Do not run it in parallel using Threads.@threads. See issue #62 for more details.

    Factorization methods

    By default, PATHSolver.jl will download the LUSOL shared library. To use LUSOL, set the following options:

    model = Model(PATHSolver.Optimizer)
     set_optimizer_attribute(model, "factorization_method", "blu_lusol")
    -set_optimizer_attribute(model, "factorization_library_name", PATHSolver.LUSOL_LIBRARY_PATH)

    To use factorization_method umfpack you will need the umfpack shared library that is available directly from the developers of that code for academic use.

    Manual installation

    By default PATHSolver.jl will download a copy of the libpath library. If you already have one installed and want to use that, set the PATH_JL_LOCATION environment variable to point to the libpath50.xx library.

    +set_optimizer_attribute(model, "factorization_library_name", PATHSolver.LUSOL_LIBRARY_PATH)

    To use factorization_method umfpack you will need the umfpack shared library that is available directly from the developers of that code for academic use.

    Manual installation

    By default PATHSolver.jl will download a copy of the libpath library. If you already have one installed and want to use that, set the PATH_JL_LOCATION environment variable to point to the libpath50.xx library.

    diff --git a/dev/packages/Pajarito/index.html b/dev/packages/Pajarito/index.html index 7bccab9881c..eb45d9e6138 100644 --- a/dev/packages/Pajarito/index.html +++ b/dev/packages/Pajarito/index.html @@ -27,4 +27,4 @@ pages={249--293}, year={2020}, publisher={Springer} -}

    Note this paper describes a legacy MathProgBase version of Pajarito, which is available on the mathprogbase branch of this repository. Starting with version v0.8.0, Pajarito supports MathOptInterface instead of MathProgBase.

    +}

    Note this paper describes a legacy MathProgBase version of Pajarito, which is available on the mathprogbase branch of this repository. Starting with version v0.8.0, Pajarito supports MathOptInterface instead of MathProgBase.

    diff --git a/dev/packages/ParametricOptInterface/index.html b/dev/packages/ParametricOptInterface/index.html index b7bf60aa3b5..a794908a881 100644 --- a/dev/packages/ParametricOptInterface/index.html +++ b/dev/packages/ParametricOptInterface/index.html @@ -13,4 +13,4 @@ @objective(model, Min, 2x) optimize!(model) MOI.set(model, POI.ParameterValue(), p, 2.0) -optimize!(model)

    GSOC2020

    ParametricOptInterface began as a NumFOCUS sponsored Google Summer of Code (2020) project.

    +optimize!(model)

    GSOC2020

    ParametricOptInterface began as a NumFOCUS sponsored Google Summer of Code (2020) project.

    diff --git a/dev/packages/Pavito/index.html b/dev/packages/Pavito/index.html index 99067e6001c..365c7dd3805 100644 --- a/dev/packages/Pavito/index.html +++ b/dev/packages/Pavito/index.html @@ -13,4 +13,4 @@ "cont_solver" => optimizer_with_attributes(Ipopt.Optimizer, "print_level" => 0), ), -)

    The algorithm implemented by Pavito itself is relatively simple; most of the hard work is performed by the MILP solver passed as mip_solver and the NLP solver passed as cont_solver.

    The performance of Pavito depends on these two types of solvers.

    For better performance, you should use a commercial MILP solver such as CPLEX or Gurobi.

    Options

    The following optimizer attributes can set to a Pavito.Optimizer to modify its behavior:

    • log_level::Int Verbosity flag: 0 for quiet, higher for basic solve info
    • timeout::Float64 Time limit for algorithm (in seconds)
    • rel_gap::Float64 Relative optimality gap termination condition
    • mip_solver_drives::Bool Let MILP solver manage convergence ("branch and cut")
    • mip_solver::MOI.OptimizerWithAttributes MILP solver
    • cont_solver::MOI.OptimizerWithAttributes Continuous NLP solver

    Pavito is not yet numerically robust and may require tuning of parameters to improve convergence.

    If the default parameters don't work for you, please let us know by opening an issue.

    For improved Pavito performance, MILP solver integrality tolerance and feasibility tolerances should typically be tightened, for example to 1e-8.

    Bug reports and support

    Please report any issues via the GitHub issue tracker. All types of issues are welcome and encouraged; this includes bug reports, documentation typos, feature requests, etc. The Optimization (Mathematical) category on Discourse is appropriate for general discussion.

    +)

    The algorithm implemented by Pavito itself is relatively simple; most of the hard work is performed by the MILP solver passed as mip_solver and the NLP solver passed as cont_solver.

    The performance of Pavito depends on these two types of solvers.

    For better performance, you should use a commercial MILP solver such as CPLEX or Gurobi.

    Options

    The following optimizer attributes can set to a Pavito.Optimizer to modify its behavior:

    • log_level::Int Verbosity flag: 0 for quiet, higher for basic solve info
    • timeout::Float64 Time limit for algorithm (in seconds)
    • rel_gap::Float64 Relative optimality gap termination condition
    • mip_solver_drives::Bool Let MILP solver manage convergence ("branch and cut")
    • mip_solver::MOI.OptimizerWithAttributes MILP solver
    • cont_solver::MOI.OptimizerWithAttributes Continuous NLP solver

    Pavito is not yet numerically robust and may require tuning of parameters to improve convergence.

    If the default parameters don't work for you, please let us know by opening an issue.

    For improved Pavito performance, MILP solver integrality tolerance and feasibility tolerances should typically be tightened, for example to 1e-8.

    Bug reports and support

    Please report any issues via the GitHub issue tracker. All types of issues are welcome and encouraged; this includes bug reports, documentation typos, feature requests, etc. The Optimization (Mathematical) category on Discourse is appropriate for general discussion.

    diff --git a/dev/packages/Percival/index.html b/dev/packages/Percival/index.html index 7eebb7d91d1..fd317e4110e 100644 --- a/dev/packages/Percival/index.html +++ b/dev/packages/Percival/index.html @@ -22,4 +22,4 @@ [1.0], [1.0], ) -output = percival(nlp, verbose = 1)

    Bug reports and discussions

    If you think you found a bug, feel free to open an issue. Focused suggestions and requests can also be opened as issues. Before opening a pull request, start an issue or a discussion on the topic, please.

    If you want to ask a question not suited for a bug report, feel free to start a discussion here. This forum is for general discussion about this repository and the JuliaSmoothOptimizers, so questions about any of our packages are welcome.

    +output = percival(nlp, verbose = 1)

    Bug reports and discussions

    If you think you found a bug, feel free to open an issue. Focused suggestions and requests can also be opened as issues. Before opening a pull request, start an issue or a discussion on the topic, please.

    If you want to ask a question not suited for a bug report, feel free to start a discussion here. This forum is for general discussion about this repository and the JuliaSmoothOptimizers, so questions about any of our packages are welcome.

    diff --git a/dev/packages/PiecewiseLinearOpt/index.html b/dev/packages/PiecewiseLinearOpt/index.html index 72a417066e5..59341332ead 100644 --- a/dev/packages/PiecewiseLinearOpt/index.html +++ b/dev/packages/PiecewiseLinearOpt/index.html @@ -41,4 +41,4 @@ (u, v) -> exp(u + v); method = :DisaggLogarithmic, ) -@objective(model, Min, z)

    Methods

    Supported univariate formulations:

    • Convex combination (:CC)
    • Multiple choice (:MC)
    • Native SOS2 branching (:SOS2)
    • Incremental (:Incremental)
    • Logarithmic (:Logarithmic; default)
    • Disaggregated Logarithmic (:DisaggLogarithmic)
    • Binary zig-zag (:ZigZag)
    • General integer zig-zag (:ZigZagInteger)

    Supported bivariate formulations for entire constraint:

    • Convex combination (:CC)
    • Multiple choice (:MC)
    • Disaggregated Logarithmic (:DisaggLogarithmic)

    Also, you can use any univariate formulation for bivariate functions as well. They will be used to impose two axis-aligned SOS2 constraints, along with the "6-stencil" formulation for the triangle selection portion of the constraint. See the associated paper for more details. In particular, the following are also acceptable bivariate formulation choices:

    • Native SOS2 branching (:SOS2)
    • Incremental (:Incremental)
    • Logarithmic (:Logarithmic)
    • Binary zig-zag (:ZigZag)
    • General integer zig-zag (:ZigZagInteger)
    +@objective(model, Min, z)

    Methods

    Supported univariate formulations:

    • Convex combination (:CC)
    • Multiple choice (:MC)
    • Native SOS2 branching (:SOS2)
    • Incremental (:Incremental)
    • Logarithmic (:Logarithmic; default)
    • Disaggregated Logarithmic (:DisaggLogarithmic)
    • Binary zig-zag (:ZigZag)
    • General integer zig-zag (:ZigZagInteger)

    Supported bivariate formulations for entire constraint:

    • Convex combination (:CC)
    • Multiple choice (:MC)
    • Disaggregated Logarithmic (:DisaggLogarithmic)

    Also, you can use any univariate formulation for bivariate functions as well. They will be used to impose two axis-aligned SOS2 constraints, along with the "6-stencil" formulation for the triangle selection portion of the constraint. See the associated paper for more details. In particular, the following are also acceptable bivariate formulation choices:

    • Native SOS2 branching (:SOS2)
    • Incremental (:Incremental)
    • Logarithmic (:Logarithmic)
    • Binary zig-zag (:ZigZag)
    • General integer zig-zag (:ZigZagInteger)
    diff --git a/dev/packages/Plasmo/index.html b/dev/packages/Plasmo/index.html index ce6b5f54091..f25c9e5ed0b 100644 --- a/dev/packages/Plasmo/index.html +++ b/dev/packages/Plasmo/index.html @@ -3,7 +3,7 @@ function gtag(){dataLayer.push(arguments);} gtag('js', new Date()); gtag('config', 'G-0RZ8X3D3D0', {'page_path': location.pathname + location.search + location.hash}); -

    CI codecov DOI

    Plasmo.jl

    (Platform for Scalable Modeling and Optimization)

    [!NOTE] Plasmo.jl has undergone significant refactorization with the release of version 0.6. While most syntax should still work, we advise checking out the documentation for the latest updates and filing an issue if a v0.5 model produces errors.

    Plasmo.jl is a graph-based algebraic modeling framework for building, managing, and solving optimization problems that utilizes graph-theoretic concepts and modular data structures. The package extends JuMP.jl to offer concise syntax, interfaces with MathOptInterface.jl to access standard optimization solvers, and utilizes Graphs.jl to provide graph analysis and processing methods. Plasmo.jl facilitates developing optimization models for networked systems such as supply chains, power systems, industrial processes, or any coupled system that involves multiple components and connections. The package also acts as a high-level platform to develop customized optimization-based decomposition techniques and meta-algorithms to optimize problems over large systems.

    Overview

    The core object in Plasmo.jl is the OptiGraph, a graph data structure that represents optimization problems as a set of optinodes and optiedges. Optinodes encapsulate variables, expressions, and constraints (and objective functions) as modular models and edges encapsulate linking constraints that couple variables across optinodes. Optigraphs can be embedded within other optigraphs to induce nested hierarchical structures, or they can be partitioned using different graph projections and partitioning algorithms to create new decomposition structures.

    The core data structure in Plasmo.jl is the OptiGraph. The optigraph contains a set of optinodes which represent self-contained optimization problems and optiedges that represent coupling between optinodes (which produces an underlying hypergraph structure of optinodes and optiedges). Optigraphs can further be embedded within other optigraphs to create nested hierarchical graph structures. The graph structures obtained using Plasmo.jl can be used for simple model and data management, but they can also be used to perform graph partitioning or develop interfaces to structured optimization solvers.

    License

    Plasmo.jl is licensed under the MPL 2.0 license.

    Installation

    Install Plasmo using Pkg.add:

    import Pkg
    +

    CI codecov DOI Code Style: Blue

    Plasmo.jl

    (Platform for Scalable Modeling and Optimization)

    [!NOTE] Plasmo.jl has undergone significant refactorization with the release of version 0.6. While most syntax should still work, we advise checking out the documentation for the latest updates and filing an issue if a v0.5 model produces errors.

    Plasmo.jl is a graph-based algebraic modeling framework for building, managing, and solving optimization problems that utilizes graph-theoretic concepts and modular data structures. The package extends JuMP.jl to offer concise syntax, interfaces with MathOptInterface.jl to access standard optimization solvers, and utilizes Graphs.jl to provide graph analysis and processing methods. Plasmo.jl facilitates developing optimization models for networked systems such as supply chains, power systems, industrial processes, or any coupled system that involves multiple components and connections. The package also acts as a high-level platform to develop customized optimization-based decomposition techniques and meta-algorithms to optimize problems over large systems.

    Overview

    The core object in Plasmo.jl is the OptiGraph, a graph data structure that represents optimization problems as a set of optinodes and optiedges. Optinodes encapsulate variables, expressions, and constraints (and objective functions) as modular models and edges encapsulate linking constraints that couple variables across optinodes. Optigraphs can be embedded within other optigraphs to induce nested hierarchical structures, or they can be partitioned using different graph projections and partitioning algorithms to create new decomposition structures.

    The core data structure in Plasmo.jl is the OptiGraph. The optigraph contains a set of optinodes which represent self-contained optimization problems and optiedges that represent coupling between optinodes (which produces an underlying hypergraph structure of optinodes and optiedges). Optigraphs can further be embedded within other optigraphs to create nested hierarchical graph structures. The graph structures obtained using Plasmo.jl can be used for simple model and data management, but they can also be used to perform graph partitioning or develop interfaces to structured optimization solvers.

    License

    Plasmo.jl is licensed under the MPL 2.0 license.

    Installation

    Install Plasmo using Pkg.add:

    import Pkg
     Pkg.add("Plasmo")

    Documentation

    The current documentation is available through GitHub Pages. Additional examples can be found in the examples folder.

    Simple Example

    using Plasmo
     using Ipopt
     
    @@ -50,4 +50,4 @@
     volume = {125},
     year = {2019},
     doi = {10.1016/j.compchemeng.2019.03.009}
    -}

    A pre-print of this paper can be found here

    +}

    A pre-print of this paper can be found here

    diff --git a/dev/packages/PolyJuMP/index.html b/dev/packages/PolyJuMP/index.html index 22e00d5064b..388e417ab22 100644 --- a/dev/packages/PolyJuMP/index.html +++ b/dev/packages/PolyJuMP/index.html @@ -17,4 +17,4 @@ model = Model(optimizer_with_attributes( PolyJuMP.KKT.Optimizer, "solver" => HomotopyContinuation.SemialgebraicSetsHCSolver(), -))

    Documentation

    Documentation for PolyJuMP.jl is included in the documentation for SumOfSquares.jl.

    +))

    Documentation

    Documentation for PolyJuMP.jl is included in the documentation for SumOfSquares.jl.

    diff --git a/dev/packages/ProxSDP/index.html b/dev/packages/ProxSDP/index.html index a4f7cf3b2ea..a4f7f91d8db 100644 --- a/dev/packages/ProxSDP/index.html +++ b/dev/packages/ProxSDP/index.html @@ -56,4 +56,4 @@ publisher = {Taylor & Francis}, doi = {10.1080/02331934.2020.1823387}, URL = {https://doi.org/10.1080/02331934.2020.1823387} -}

    The preprint version of the paper can be found here.

    Disclaimer

    • ProxSDP is a research software, therefore it should not be used in production.
    • Please open an issue if you find any problems, developers will try to fix and find alternatives.
    • There is no continuous development for 32-bit systems, the package should work, but might reach some issues.
    • ProxSDP assumes primal and dual feasibility.

    ROAD MAP

    • Support for exponential and power cones
    • Warm start
    +}

    The preprint version of the paper can be found here.

    Disclaimer

    • ProxSDP is a research software, therefore it should not be used in production.
    • Please open an issue if you find any problems, developers will try to fix and find alternatives.
    • There is no continuous development for 32-bit systems, the package should work, but might reach some issues.
    • ProxSDP assumes primal and dual feasibility.

    ROAD MAP

    • Support for exponential and power cones
    • Warm start
    diff --git a/dev/packages/SCIP/index.html b/dev/packages/SCIP/index.html index 2dc45faf7a6..ac823ee82b5 100644 --- a/dev/packages/SCIP/index.html +++ b/dev/packages/SCIP/index.html @@ -3,11 +3,15 @@ function gtag(){dataLayer.push(arguments);} gtag('js', new Date()); gtag('config', 'G-0RZ8X3D3D0', {'page_path': location.pathname + location.search + location.hash}); -

    SCIP.jl

    Build Status codecov Genie Downloads

    SCIP.jl is a Julia interface to the SCIP solver.

    Affiliation

    This wrapper is maintained by the SCIP project with the help of the JuMP community.

    License

    SCIP.jl is licensed under the MIT License.

    The underlying solver, scipopt/scip, is licensed under the Apache 2.0 license.

    Installation

    Install SCIP.jl using Pkg.add:

    import Pkg
    -Pkg.add("SCIP")

    On MacOS and Linux, installing the SCIP Julia package will work out of the box and install the SCIP_jll.jl and SCIP_PaPILO_jll.jl dependencies.

    On Windows, a separate installation of SCIP is still mandatory, as detailed in the "Custom installation" section below.

    Custom installations

    If you use an older Julia version, Windows, or you want a custom SCIP installation, you must manually install the SCIP binaries.

    Once installed, set the SCIPOPTDIR environment variable to point to the installation path, that is, depending on your operating system, $SCIPOPTDIR/lib/libscip.so, $SCIPOPTDIR/lib/libscip.dylib, or $SCIPOPTDIR/bin/scip.dll must exist.

    Then, install SCIP.jl using Pkg.add and Pkg.build:

    ENV["SCIPOPTDIR"] = "/Users/Oscar/code/SCIP"
    -import Pkg
    -Pkg.add("SCIP")
    -Pkg.build("SCIP")

    Use with JuMP

    Use SCIP with JuMP as follows:

    using JuMP, SCIP
    +

    SCIP.jl

    Build Status codecov

    SCIP.jl is a Julia interface to the SCIP solver.

    Affiliation

    This wrapper is maintained by the SCIP project with the help of the JuMP community.

    License

    SCIP.jl is licensed under the MIT License.

    The underlying solver, scipopt/scip, is licensed under the Apache 2.0 license.

    Installation

    SCIP cannot be installed automatically on Windows. See the "Custom installation" instructions below.

    Install SCIP using Pkg.add:

    julia> import Pkg
    +
    +julia> Pkg.add("SCIP")

    On platforms other than Windows, in addition to installing the SCIP.jl package, this will also download and install the SCIP binaries. You do not need to install SCIP separately.

    Windows and custom installations

    If you use Windows, or you want a custom SCIP installation, you must manually install the SCIP binaries.

    Binaries are available for download at https://www.scipopt.org/#download.

    Once the binaries are installed, set the SCIPOPTDIR environment variable to temporarily point to the installation path (that is, depending on your operating system, $SCIPOPTDIR/lib/libscip.so, $SCIPOPTDIR/lib/libscip.dylib, or $SCIPOPTDIR/bin/libscip.dll must exist). Then, install SCIP.jl using Pkg.add and Pkg.build from the Julia command line:

    julia> ENV["SCIPOPTDIR"] = raw"C:\Program Files\SCIPOptSuite 9.1.1" # for Windows
    +
    +julia> import Pkg
    +
    +julia> Pkg.add("SCIP")
    +
    +julia> Pkg.build("SCIP")

    Use with JuMP

    Use SCIP with JuMP as follows:

    using JuMP, SCIP
     model = Model(SCIP.Optimizer)
     set_attribute(model, "display/verblevel", 0)
    -set_attribute(model, "limits/gap", 0.05)

    Options

    See the SCIP documentation for a list of supported options.

    MathOptInterface API

    The SCIP optimizer supports the following constraints and attributes.

    List of supported objective functions:

    List of supported variable types:

    List of supported constraint types:

    List of supported model attributes:

    Design considerations

    Wrapping the public API

    All of the public API methods are wrapped and available within the SCIP package. This includes the scip_*.h and pub_*.h headers that are collected in scip.h, as well as all default constraint handlers (cons_*.h.)

    The wrapped functions do not transform any data structures and work on the raw pointers (for example, SCIP* in C, Ptr{SCIP_} in Julia). Convenience wrapper functions based on Julia types are added as needed.

    Memory management

    Programming with SCIP requires dealing with variable and constraint objects that use reference counting for memory management.

    The SCIP.Optimizer wrapper type collects lists of SCIP_VAR* and SCIP_CONS* under the hood, and it releases all references when it is garbage collected itself (via finalize).

    When adding a variable (add_variable) or a constraint (add_linear_constraint), an integer index is returned. This index can be used to retrieve the SCIP_VAR* or SCIP_CONS* pointer via get_var and get_cons respectively.

    Supported nonlinear operators

    Supported operators in nonlinear expressions are as follows:

    • +
    • -
    • *
    • /
    • ^
    • sqrt
    • exp
    • log
    • abs
    • cos
    • sin
    +set_attribute(model, "limits/gap", 0.05)

    Options

    See the SCIP documentation for a list of supported options.

    MathOptInterface API

    The SCIP optimizer supports the following constraints and attributes.

    List of supported objective functions:

    List of supported variable types:

    List of supported constraint types:

    List of supported model attributes:

    Design considerations

    Wrapping the public API

    All of the public API methods are wrapped and available within the SCIP package. This includes the scip_*.h and pub_*.h headers that are collected in scip.h, as well as all default constraint handlers (cons_*.h.)

    The wrapped functions do not transform any data structures and work on the raw pointers (for example, SCIP* in C, Ptr{SCIP_} in Julia). Convenience wrapper functions based on Julia types are added as needed.

    Memory management

    Programming with SCIP requires dealing with variable and constraint objects that use reference counting for memory management.

    The SCIP.Optimizer wrapper type collects lists of SCIP_VAR* and SCIP_CONS* under the hood, and it releases all references when it is garbage collected itself (via finalize).

    When adding a variable (add_variable) or a constraint (add_linear_constraint), an integer index is returned. This index can be used to retrieve the SCIP_VAR* or SCIP_CONS* pointer via get_var and get_cons respectively.

    Supported nonlinear operators

    Supported operators in nonlinear expressions are as follows:

    • +
    • -
    • *
    • /
    • ^
    • sqrt
    • exp
    • log
    • abs
    • cos
    • sin
    diff --git a/dev/packages/SCS/index.html b/dev/packages/SCS/index.html index 3ee5078b709..5ffa1222541 100644 --- a/dev/packages/SCS/index.html +++ b/dev/packages/SCS/index.html @@ -53,4 +53,4 @@ julia> SCS.is_available(SCS.GpuIndirectSolver) true

    The GpuIndirectSolver is available on Linux x86_64 platform only.

    Low-level wrapper

    SCS.jl provides a low-level interface to solve a problem directly, without interfacing through MathOptInterface.

    This is an advanced interface with a risk of incorrect usage. For new users, we recommend that you use the JuMP or Convex interfaces instead.

    SCS solves a problem of the form:

    minimize        1/2 * x' * P * x + c' * x
     subject to      A * x + s = b
    -                s in K

    where K is a product cone of:

    • zero cone
    • positive orthant { x | x ≥ 0 }
    • box cone { (t,x) | t*l ≤ x ≤ t*u}
    • second-order cone (SOC) { (t,x) | ||x||_2 ≤ t }
    • semi-definite cone (SDC) { X | X is psd }
    • exponential cone { (x,y,z) | y e^(x/y) ≤ z, y>0 }
    • power cone { (x,y,z) | x^a * y^(1-a) ≥ |z|, x ≥ 0, y ≥ 0 }
    • dual power cone { (u,v,w) | (u/a)^a * (v/(1-a))^(1-a) ≥ |w|, u ≥ 0, v ≥ 0 }.

    To solve this problem with SCS, call SCS.scs_solve; see the docstring for details.

    + s in K

    where K is a product cone of:

    • zero cone
    • positive orthant { x | x ≥ 0 }
    • box cone { (t,x) | t*l ≤ x ≤ t*u}
    • second-order cone (SOC) { (t,x) | ||x||_2 ≤ t }
    • semi-definite cone (SDC) { X | X is psd }
    • exponential cone { (x,y,z) | y e^(x/y) ≤ z, y>0 }
    • power cone { (x,y,z) | x^a * y^(1-a) ≥ |z|, x ≥ 0, y ≥ 0 }
    • dual power cone { (u,v,w) | (u/a)^a * (v/(1-a))^(1-a) ≥ |w|, u ≥ 0, v ≥ 0 }.

    To solve this problem with SCS, call SCS.scs_solve; see the docstring for details.

    diff --git a/dev/packages/SDDP/index.html b/dev/packages/SDDP/index.html index 7591acbdec5..3b88012057b 100644 --- a/dev/packages/SDDP/index.html +++ b/dev/packages/SDDP/index.html @@ -3,4 +3,4 @@ function gtag(){dataLayer.push(arguments);} gtag('js', new Date()); gtag('config', 'G-0RZ8X3D3D0', {'page_path': location.pathname + location.search + location.hash}); -
    +
    diff --git a/dev/packages/SDPA/index.html b/dev/packages/SDPA/index.html index e3a4147aa37..0bd917d3502 100644 --- a/dev/packages/SDPA/index.html +++ b/dev/packages/SDPA/index.html @@ -3,13 +3,14 @@ function gtag(){dataLayer.push(arguments);} gtag('js', new Date()); gtag('config', 'G-0RZ8X3D3D0', {'page_path': location.pathname + location.search + location.hash}); -

    SDPA.jl

    Build Status codecov

    SDPA.jl is a wrapper for the SDPA semidefinite programming solver in double precision floating point arithmetic.

    Affiliation

    This wrapper is maintained by the JuMP community and is not a product of the SDPA developers.

    License

    SDPA.jl is licensed under the MIT License.

    The underlying solver, SDPA is licensed under the GPL v2 license.

    Installation

    Install SDPA using Pkg.add:

    import Pkg
    +

    SDPA.jl

    Build Status codecov

    SDPA.jl is a wrapper for the SDPA semidefinite programming solver in double precision floating point arithmetic.

    Affiliation

    This wrapper is maintained by the JuMP community and is not a product of the SDPA developers.

    License

    SDPA.jl is licensed under the MIT License.

    The underlying solver, SDPA is licensed under the GPL v2 license.

    Installation

    Install SDPA using Pkg.add:

    import Pkg
     Pkg.add("SDPA")

    In addition to installing the SDPA.jl package, this will also download and install the SDPA binaries. (You do not need to install SDPA separately.)

    If you see an error similar to:

    INFO: Precompiling module GZip.
     ERROR: LoadError: LoadError: error compiling anonymous: could not load library "libz"

    please see GZip.jl#54 or Flux.jl#343. In particular, in Ubuntu this issue may be resolved by running

    sudo apt-get install zlib1g-dev

    See SDPAFamily for the other solvers, SDPA-GMP, SDPA-DD, and SDPA-QD of the family.

    Use with JuMP

    using JuMP, SDPA
     model = Model(SDPA.Optimizer)
    +# Optionally set parameters, for example:
     set_attribute(model, "Mode", SDPA.PARAMETER_DEFAULT)

    MathOptInterface API

    The SDPA optimizer supports the following constraints and attributes.

    List of supported objective functions:

    List of supported variable types:

    List of supported constraint types:

    List of supported model attributes:

    Options

    SDPA has three modes that give default value to all ten parameters.

    The following table gives the default values for each parameter and mode.

    ParameterPARAMETER_DEFAULTPARAMETER_UNSTABLE_BUT_FASTPARAMETER_STABLE_BUT_SLOW
    MaxIteration1001001000
    EpsilonStar1.0e-71.0e-71.0e-7
    LambdaStar1.0e+21.0e+21.0e+4
    OmegaStar2.02.02.0
    LowerBound1.0e+51.0e+51.0e+5
    UpperBound1.0e+51.0e+51.0e+5
    BetaStar0.10.010.1
    BetaBar0.20.020.3
    GammaStar0.90.950.8
    EpsilonDash1.0e-71.0e-71.0e-7

    By default, we put SDPA in the SDPA.PARAMETER_DEFAULT mode.

    Change the mode using the "Mode" option:

    using JuMP, SDPA
     model = Model(SDPA.Optimizer)
     set_attribute(model, "Mode", SDPA.PARAMETER_STABLE_BUT_SLOW)

    Note that the parameters are set in the order they are given, so you can set a mode and then modify parameters from this mode.

    using JuMP, SDPA
     model = Model(SDPA.Optimizer)
     set_attribute(model, "Mode", SDPA.PARAMETER_STABLE_BUT_SLOW)
    -set_attribute(model, "MaxIteration", 100)

    The choice of parameter mode has a large impact on the performance and stability of SDPA, and not necessarily in the way implied by the names of the modes; for example, PARAMETER_UNSTABLE_BUT_FAST can be more stable than the other modes for some problems. You should try each mode to see how it performs on your specific problem. See SDPA.jl#17 for more details.

    +set_attribute(model, "MaxIteration", 100)

    The choice of parameter mode has a large impact on the performance and stability of SDPA, and not necessarily in the way implied by the names of the modes; for example, PARAMETER_UNSTABLE_BUT_FAST can be more stable than the other modes for some problems. You should try each mode to see how it performs on your specific problem. See SDPA.jl#17 for more details.

    diff --git a/dev/packages/SDPLR/index.html b/dev/packages/SDPLR/index.html index 2fd253dd2c5..1642efb020b 100644 --- a/dev/packages/SDPLR/index.html +++ b/dev/packages/SDPLR/index.html @@ -50,4 +50,4 @@ sigma *= 2 end lambdaupdate = 0 -end +end diff --git a/dev/packages/SDPNAL/index.html b/dev/packages/SDPNAL/index.html index 0f855b7a5c6..c0b9a7f5cd2 100644 --- a/dev/packages/SDPNAL/index.html +++ b/dev/packages/SDPNAL/index.html @@ -18,4 +18,4 @@ '/path/to/SDPNALv1.0/solver:', ... '/path/to/SDPNALv1.0/solver_main_default:', ... '/path/to/SDPNALv1.0/util:', ... -% (...)

    If you have SDPT3 in addition to SDPNAL in the MATLAB path (that is, the toolbox/local/pathdef.m file) then you might have issues because both solvers define a validate function, and this might make SDPNAL call SDPT3's validate function instead of SDPT3's validate function.

    +% (...)

    If you have SDPT3 in addition to SDPNAL in the MATLAB path (that is, the toolbox/local/pathdef.m file) then you might have issues because both solvers define a validate function, and this might make SDPNAL call SDPT3's validate function instead of SDPT3's validate function.

    diff --git a/dev/packages/SDPT3/index.html b/dev/packages/SDPT3/index.html index a8598170278..9a3a7faadd7 100644 --- a/dev/packages/SDPT3/index.html +++ b/dev/packages/SDPT3/index.html @@ -29,4 +29,4 @@ julia> MATLAB.restoredefaultpath() -julia> MATLAB.mat"savepath" +julia> MATLAB.mat"savepath" diff --git a/dev/packages/SeDuMi/index.html b/dev/packages/SeDuMi/index.html index a7be1b96271..7590081b4a0 100644 --- a/dev/packages/SeDuMi/index.html +++ b/dev/packages/SeDuMi/index.html @@ -17,4 +17,4 @@ MATLAB.mat"install_sedumi" end -julia> MATLAB.mat"savepath" +julia> MATLAB.mat"savepath" diff --git a/dev/packages/SumOfSquares/index.html b/dev/packages/SumOfSquares/index.html index 134236acc8e..9e19a75f041 100644 --- a/dev/packages/SumOfSquares/index.html +++ b/dev/packages/SumOfSquares/index.html @@ -4,4 +4,4 @@ gtag('js', new Date()); gtag('config', 'G-0RZ8X3D3D0', {'page_path': location.pathname + location.search + location.hash});

    SumOfSquares.jl

    Build Status codecov

    SumOfSquares.jl is a JuMP extension that, when used in conjunction with MultivariatePolynomial and PolyJuMP, implements a sum of squares reformulation for polynomial optimization.

    License

    SumOfSquares.jl is licensed under the MIT license.

    Installation

    Install SumOfSquares using Pkg.add:

    import Pkg
    -Pkg.add("SumOfSquares")

    Documentation

    See https://jump.dev/SumOfSquares.jl/stable for the most recently tagged version of the documentation.

    See https://jump.dev/SumOfSquares.jl/dev for the in-development version of the documentation.

    Presentations

    Some presentations on, or using, SumOfSquares (see blegat/SumOfSquaresSlides for the source code of the presentations):

    Citing

    See CITATION.bib.

    +Pkg.add("SumOfSquares")

    Documentation

    See https://jump.dev/SumOfSquares.jl/stable for the most recently tagged version of the documentation.

    See https://jump.dev/SumOfSquares.jl/dev for the in-development version of the documentation.

    Presentations

    Some presentations on, or using, SumOfSquares (see blegat/SumOfSquaresSlides for the source code of the presentations):

    Citing

    See CITATION.bib.

    diff --git a/dev/packages/Tulip/index.html b/dev/packages/Tulip/index.html index cc9455d4220..7a131540b4f 100644 --- a/dev/packages/Tulip/index.html +++ b/dev/packages/Tulip/index.html @@ -28,4 +28,4 @@ language = {en}, url = {https://doi.org/10.1007/s12532-020-00200-8}, urldate = {2021-03-07}, -} +} diff --git a/dev/packages/Xpress/index.html b/dev/packages/Xpress/index.html index a15e2ce245e..ccc8428e9a2 100644 --- a/dev/packages/Xpress/index.html +++ b/dev/packages/Xpress/index.html @@ -58,4 +58,4 @@ @test termination_status(model) == MOI.OPTIMAL @test primal_status(model) == MOI.FEASIBLE_POINT @test value(x) == 1 -@test value(y) == 2

    Environment variables

    • XPRESS_JL_SKIP_LIB_CHECK: Used to skip build lib check as previously described.
    • XPRESS_JL_NO_INFO: Disable license info log.
    • XPRESS_JL_NO_DEPS_ERROR: Disable error when do deps.jl file is found.
    • XPRESS_JL_NO_AUTO_INIT: Disable automatic run of Xpress.initialize(). Specially useful for explicitly loading the dynamic library.
    • XPRESS_JL_LIBRARY: Provide a custom path to libxprs
    • XPAUTH_PATH: Provide a custom path to the license file

    C API

    The C API can be accessed via Xpress.Lib.XPRSxx functions, where the names and arguments are identical to the C API.

    See the Xpress documentation for details.

    Documentation

    For more information, consult the FICO optimizer manual.

    +@test value(y) == 2

    Environment variables

    • XPRESS_JL_SKIP_LIB_CHECK: Used to skip build lib check as previously described.
    • XPRESS_JL_NO_INFO: Disable license info log.
    • XPRESS_JL_NO_DEPS_ERROR: Disable error when do deps.jl file is found.
    • XPRESS_JL_NO_AUTO_INIT: Disable automatic run of Xpress.initialize(). Specially useful for explicitly loading the dynamic library.
    • XPRESS_JL_LIBRARY: Provide a custom path to libxprs
    • XPAUTH_PATH: Provide a custom path to the license file

    C API

    The C API can be accessed via Xpress.Lib.XPRSxx functions, where the names and arguments are identical to the C API.

    See the Xpress documentation for details.

    Documentation

    For more information, consult the FICO optimizer manual.

    diff --git a/dev/packages/solvers/index.html b/dev/packages/solvers/index.html index ab7ee34ff07..c7eacb771af 100644 --- a/dev/packages/solvers/index.html +++ b/dev/packages/solvers/index.html @@ -3,4 +3,4 @@ function gtag(){dataLayer.push(arguments);} gtag('js', new Date()); gtag('config', 'G-0RZ8X3D3D0', {'page_path': location.pathname + location.search + location.hash}); -

    Introduction

    This section of the documentation contains brief documentation for some of the solvers that JuMP supports. The list of solvers is not exhaustive, but instead is intended to help you discover commonly used solvers.

    Affiliation

    Packages beginning with jump-dev/ are developed and maintained by the JuMP developers. In many cases, these packages wrap external solvers that are not developed by the JuMP developers and, while the Julia packages are all open-source, in some cases the solvers themselves are closed source commercial products.

    Packages that do not begin with jump-dev/ are developed independently. The developers of these packages requested or consented to the inclusion of their README contents in the JuMP documentation for the benefit of users.

    Adding new solvers

    Written a solver? Add it to this section of the JuMP documentation by making a pull request to the docs/packages.toml file.

    +

    Introduction

    This section of the documentation contains brief documentation for some of the solvers that JuMP supports. The list of solvers is not exhaustive, but instead is intended to help you discover commonly used solvers.

    Affiliation

    Packages beginning with jump-dev/ are developed and maintained by the JuMP developers. In many cases, these packages wrap external solvers that are not developed by the JuMP developers and, while the Julia packages are all open-source, in some cases the solvers themselves are closed source commercial products.

    Packages that do not begin with jump-dev/ are developed independently. The developers of these packages requested or consented to the inclusion of their README contents in the JuMP documentation for the benefit of users.

    Adding new solvers

    Written a solver? Add it to this section of the JuMP documentation by making a pull request to the docs/packages.toml file.

    diff --git a/dev/release_notes/index.html b/dev/release_notes/index.html index 9685c634bd2..0670275d613 100644 --- a/dev/release_notes/index.html +++ b/dev/release_notes/index.html @@ -3,13 +3,13 @@ function gtag(){dataLayer.push(arguments);} gtag('js', new Date()); gtag('config', 'G-0RZ8X3D3D0', {'page_path': location.pathname + location.search + location.hash}); -

    Release notes

    The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

    Version 1.23.3 (October 21, 2024)

    Fixed

    Other

    Version 1.23.2 (September 13, 2024)

    Fixed

    • Fixed an illegal simplification in MA.operate!! for NonlinearExpr (#3826)

    Other

    Version 1.23.1 (August 30, 2024)

    Fixed

    • Fixed a bug with indicator constraints and the in set syntax (#3813)

    Other

    Version 1.23.0 (August 13, 2024)

    Added

    • Added set inequality syntax for matrices (#3766)
    • Improved matrix inequality support (#3778) (#3805)

    Fixed

    • Fixed a method for calling value on a ::Number (#3776)
    • Fixed querying dual of Symmetric and Hermitian equality constraints (#3797)
    • Fixed read_from_file for coefficient types other than Float64 (#3801)

    Other

    • Documentation improvements
      • Fixed missing character in installation instructions (#3777)
      • Added a section of querying the Jacobian (#3779)
      • Clarify that SCIP does not support lazy constraints (#3784)
      • Fixed typo in knapsack.jl (#3792)
      • Added a warning to docs about tolerances in Bin and Int variables (#3794)
      • Clarify where to type installation commands (#3795)
    • Improve error message for common incorrect syntax in constraint macro (#3781)
    • Changed show(::IO, ::GenericModel) to a more informative tree structure (#3803)

    Version 1.22.2 (June 17, 2024)

    Fixed

    • Fixed printing to omit terms when printing a large array of expressions (#3759)
    • Fixed bug in printing when show is called on an invalid variable or constraint (#3763)

    Other

    • Improved error message for unsupported kwargs in variable macro (#3751)
    • Improved error message for unsupported container syntax like x[A][B] (#3756)
    • Docstring improvements (#3758), (#3760), (#3761), (#3767)
    • Added warning to documentation about Y <= X, Set() syntax (#3769)
    • Work-around change on nightly (#3753), (#3754)
    • Improved printing of symmetric matrices when used in constraints (#3768)
    • Fixed a test for upcoming printing change in MOI (#3772)
    • Updated should_i_use.md (#3773)

    Version 1.22.1 (May 17, 2024)

    Fixed

    • Fixed bug including non-.jl files in src/macros.jl (#3747)

    Other

    • Added DSDP to the list of supported solvers (#3745)
    • Updated YALMIP migration guide (#3748)

    Version 1.22.0 (May 12, 2024)

    Added

    • Added Base.complex(r, i) where r and i may be real-valued variables or affine or quadratic expressions (#3734)
    • Added @force_nonlinear for controlling when affine and quadratic expressions are instead parsed as nonlinear expressions. This can be useful for advanced users in a limited set of circumstances. (#3732)
    • Added support for returning the variable coefficients of a vector-valued constraint via normalized_coefficient. In addition, set_normalized_coefficients has been softly deprecated (no warning is thrown and old code will still work for all future 1.X releases of JuMP) in favor of set_normalized_coefficient. This change was made to unify how we get and set variable coefficients. (#3743)

    Fixed

    • Fixed missing promote_operation method that resulted in slow code (#3730)
    • Improved performance of getindex for Containers.DenseAxisArray (#3731)
    • Fixed the error message when the legacy nonlinear API is mixed with the new nonlinear API. In particular, we now uniformly throw an error message when unexpected objects occur in nonlinear expressions. (#3741)

    Other

    Version 1.21.1 (April 11, 2024)

    Fixed

    • Fixed behavior of complex-value related functions like real, imag, conj and abs2 when called on GenericNonlinearExpr. This fixes a method error when calling x' where x is an array of nonlinear expressions. As a related consequence, we now always error when creating nonlinear expressions with complex components. Previously, only some constructors were checked for complex expressionns. (#3724)

    Other

    Version 1.21.0 (March 31, 2024)

    Added

    • Added support for matrix inequality constraints with the HermitianPSDCone (#3705)
    • Added batched modification methods for set_normalized_rhs, set_objective_coefficient and set_normalized_coefficient. Using these methods can be more efficient for some solvers (#3716)
    • Added the private constant _CONSTRAINT_LIMIT_FOR_PRINTING, which controls how many constraints are printed to the screen during print(model). The main purpose of this is to prevent large quantities of text being printed when print(model) is accidentally called on a large model. (#3686)

    Fixed

    • Changed Containers.SparseAxisArray to use an OrderedDict as the backing data structure. Iterating over the elements in a SparseAxisArray now iterates in the order that the elements were created. Previously, the order was undefined behavior. (#3681)
    • Fixed complex variables for non-Float64 coefficient types (#3691)
    • Fixed LinearAlgebra.hermitan(::AbstractJuMPScalar) (#3693)
    • Fixed multiplying real scalar by Hermitian matrix (#3695)

    Other

    Version 1.20.0 (February 15, 2024)

    Added

    Fixed

    • Fixed compat of DimensionalData (#3666)
    • Fixed convert(::Type{NonlinearExpr}, ::Number)(#3672)

    Other

    • Added Optim to list of solvers (#3624)
    • Improved linking within documentation (#3669)

    Version 1.19.0 (February 1, 2024)

    Added

    • Added support for modifying quadratic coefficients (#3658)

    Fixed

    • Fixed short circuiting of && and || in macros (#3655)

    Other

    • Added SDPLR to list of solvers (#3644)
    • Added new roadmap items (#3645)
    • Fixed vale.sh version (#3650)
    • Improve error messages in macros (#3653)
    • Refactoring of set_normalized_coefficient (#3660) (#3661)
    • Update docs/packages.toml (#3662)

    Version 1.18.1 (January 6, 2024)

    Fixed

    Version 1.18.0 (January 2, 2024)

    Added

    Fixed

    Other

    • Added DisjunctiveProgrammingto extension-tests (#3597)
    • Added DisjunctiveProgrammingto docs (#3598)
    • Added DocumenterCitations to the docs (#3596), (#3630)
    • Migrate from SnoopPrecompile to PrecompileTools (#3608)
    • Minor documentation updates (#3623), (#3628), (#3635), (#3640), (#3643)

    Version 1.17.0 (December 4, 2023)

    Added

    Fixed

    Other

    Version 1.16.0 (October 24, 2023)

    Added

    • Added := operator for Boolean satisfiability problems (#3530)

    Fixed

    Other

    Version 1.15.1 (September 24, 2023)

    Fixed

    Other

    Version 1.15.0 (September 15, 2023)

    This is a large minor release because it adds an entirely new data structure and API path for working with nonlinear programs. The previous nonlinear interface remains unchanged and is documented at Nonlinear Modeling (Legacy). The new interface is a treated as a non-breaking feature addition and is documented at Nonlinear Modeling.

    Breaking

    Although the new nonlinear interface is a feature addition, there are two changes which might be breaking for a very small number of users.

    • The syntax inside JuMP macros is parsed using a different code path, even for linear and quadratic expressions. We made this change to unify how we parse linear, quadratic, and nonlinear expressions. In all cases, the new code returns equivalent expressions, but because of the different order of operations, there are three changes to be aware of when updating:
      • The printed form of the expression may change, for example from x * y to y * x. This can cause tests which test the String representation of a model to fail.
      • Some coefficients may change slightly due to floating point round-off error.
      • Particularly when working with a JuMP extension, you may encounter a MethodError due to a missing or ambiguous method. These errors are due to previously existing bugs that were not triggered by the previous parsing code. If you encounter such an error, please open a GitHub issue.
    • The methods for Base.:^(x::VariableRef, n::Integer) and Base.:^(x::AffExpr, n::Integer) have changed. Previously, these methods supported only n = 0, 1, 2 and they always returned a QuadExpr, even for the case when n = 0 or n = 1. Now:
      • x^0 returns one(T), where T is the value_type of the model (defaults to Float64)
      • x^1 returns x
      • x^2 returns a QuadExpr
      • x^n where !(0 <= n <= 2) returns a NonlinearExpr.
      We made this change to support nonlinear expressions and to align the mathematical definition of the operation with their return type. (Previously, users were surprised that x^1 returned a QuadExpr.) As a consequence of this change, the methods are now not type-stable. This means that the compiler cannot prove that x^2 returns a QuadExpr. If benchmarking shows that this is a performance problem, you can use the type-stable x * x instead of x^2.

    Added

    Fixed

    Other

    Version 1.14.1 (September 2, 2023)

    Fixed

    • Fix links in Documentation (#3478)

    Version 1.14.0 (August 27, 2023)

    Added

    Fixed

    • Fixed model_convert for BridgeableConstraint (#3437)
    • Fixed printing models with integer coefficients larger than typemax(Int) (#3447)
    • Fixed support for constant left-hand side functions in a complementarity constraint (#3452)

    Other

    • Updated packages used in documentation (#3444) (#3455)
    • Fixed docstring tests (#3445)
    • Fixed printing change for MathOptInterface (#3446)
    • Fixed typos in documentation (#3448) (#3457)
    • Added SCIP to callback documentation (#3449)

    Version 1.13.0 (July 27, 2023)

    Added

    Fixed

    Other

    • Added Loraine.jl to the installation table (#3426)
    • Removed Penopt.jl from packages.toml (#3428)
    • Improved problem statement in cannery example of tutorial (#3430)
    • Minor cleanups in Containers.DenseAxisArray implementation (#3429)
    • Changed nested_problems.jl: outer/inner to upper/lower (#3433)
    • Removed second SDP relaxation in OPF tutorial (#3432)

    Version 1.12.0 (June 19, 2023)

    Added

    Fixed

    Other

    Version 1.11.1 (May 19, 2023)

    Fixed

    • Fixed a poor error message when sum(::DenseAxisArray; dims) was called (#3338)
    • Fixed support for dependent sets in the @variable macro (#3344)
    • Fixed a performance bug in constraints with sparse symmetric matrices (#3349)

    Other

    • Improved the printing of complex numbers (#3332)
    • When printing, sets which contain constants ending in .0 now print as integers. This follows the behavior of constants in functions (#3341)
    • Added InfiniteOpt to the extensions documentation (#3343)
    • Added more documentation for the exponential cone (#3345) (#3347)
    • Added checklists for developers (#3346) (#3355)
    • Fixed test support upcoming Julia nightly (#3351)
    • Fixed extension-tests.yml action (#3353)
    • Add more solvers to the documentation (#3359) (#3361) (#3362)

    Version 1.11.0 (May 3, 2023)

    Added

    Fixed

    • Fixed tests for MOI v1.14.0 release (#3312)
    • Fixed indexing containers when an axis is Vector{Any} that contains a Vector{Any} element (#3280)
    • Fixed getindex(::AbstractJuMPScalar) which is called for an expression like x[] (#3314)
    • Fixed bug in set_string_names_on_creation with a vector of variables (#3322)
    • Fixed bug in memoize function in nonlinear documentation (#3337)

    Other

    • Fixed typos in the documentation (#3317) (#3318) (#3328)
    • Added a test for the order of setting start values (#3315)
    • Added READMEs of solvers and extensions to the docs (#3309) (#3320) (#3327) (#3329) (#3333)
    • Style improvements to src/variables.jl (#3324)
    • Clarify that column generation does not find global optimum (#3325)
    • Add a GitHub actions workflow for testing extensions prior to release (#3331)
    • Document the release process for JuMP (#3334)
    • Fix links to discourse and chatroom (#3335)

    Version 1.10.0 (April 3, 2023)

    Added

    Fixed

    • Fixed [compat] bound for MathOptInterface in Project.toml (#3272)

    Other

    Version 1.9.0 (March 7, 2023)

    Added

    Fixed

    • The matrix returned by a variable in HermitianPSDCone is now a LinearAlgebra.Hermitian matrix. This is potentially breaking if you have written code to assume the return is a Matrix. (#3245) (#3246)
    • Fixed missing support for Base.isreal of expressions (#3252)

    Other

    Version 1.8.2 (February 27, 2023)

    Fixed

    • Fixed dot product between complex JuMP expression and number (#3244)

    Other

    • Polish simple SDP examples (#3232)

    Version 1.8.1 (February 23, 2023)

    Fixed

    • Fixed support for init in nonlinear generator expressions (#3226)

    Other

    • Use and document import MathOptInterface as MOI (#3222)
    • Removed references in documentation to multiobjective optimization being unsupported (#3223)
    • Added tutorial on multi-objective portfolio optimization (#3227)
    • Refactored some of the conic tutorials (#3229)
    • Fixed typos in the documentation (#3230)
    • Added tutorial on parallelism (#3231)

    Version 1.8.0 (February 16, 2023)

    Added

    • Added --> syntax support for indicator constraints. The old syntax of => remains supported (#3207)
    • Added <--> syntax for reified constraints. For now, few solvers support reified constraints (#3206)
    • Added fix_discrete_variables. This is most useful for computing the dual of a mixed-integer program (#3208)
    • Added support for vector-valued objectives. For details, see the Multi-objective knapsack tutorial (#3176)

    Fixed

    • Fixed a bug in lp_sensitivity_report by switching to an explicit LU factorization of the basis matrix (#3182)
    • Fixed a bug that prevented [; kwarg] arguments in macros (#3220)

    Other

    Version 1.7.0 (January 25, 2023)

    Added

    Other

    • Large refactoring of the tests (#3166) (#3167) (#3168) (#3169) (#3170) (#3171)
    • Remove unreachable code due to VERSION checks (#3172)
    • Document how to test JuMP extensions (#3174)
    • Fix method ambiguities in Containers (#3173)
    • Improve error message that is thrown when = is used instead of == in the @constraint macro (#3178)
    • Improve the error message when Bool is used instead of Bin in the @variable macro (#3180)
    • Update versions of the documentation (#3185)
    • Tidy the import of packages and remove unnecessary prefixes (#3186) (#3187)
    • Refactor src/JuMP.jl by moving methods into more relevant files (#3188)
    • Fix docstring of Model not appearing in the documentation (#3198)

    Version 1.6.0 (January 1, 2023)

    Added

    Fixed

    • Fixed promotion of complex expressions (#3150) (#3164)

    Other

    • Added Benders tutorial with in-place resolves (#3145)
    • Added more Tips and tricks for linear programs (#3144) (#3163)
    • Clarified documentation that start can depend on the indices of a variable container (#3148)
    • Replace instances of length and size by the recommended eachindex and axes (#3149)
    • Added a warning explaining why the model is dirty when accessing solution results from a modified model (#3156)
    • Clarify documentation that PSD ensures a symmetric matrix (#3159)
    • Maintenance of the JuMP test suite (#3146) (#3158) (#3162)

    Version 1.5.0 (December 8, 2022)

    Added

    Fixed

    Other

    Version 1.4.0 (October 29, 2022)

    Added

    Fixed

    • Fixed a bug in copy_to(dest::Model, src::MOI.ModelLike) when src has nonlinear components (#3101)
    • Fixed the printing of (-1.0 + 0.0im) coefficients in complex expressions (#3112)
    • Fixed a parsing bug in nonlinear expressions with generator statements that contain multiple for statements (#3116)

    Other

    • Converted the multi-commodity flow tutorial to use an SQLite database (#3098)
    • Fixed a number of typos in the documentation (#3103) (#3107) (#3018)
    • Improved various style aspects of the PDF documentation (#3095) (#3098) (#3102)

    Version 1.3.1 (September 28, 2022)

    Fixed

    • Fixed a performance issue in relax_integrality (#3087)
    • Fixed the type stability of operators with Complex arguments (#3072)
    • Fixed a bug which added additional +() terms to some nonlinear expressions (#3091)
    • Fixed potential method ambiguities with AffExpr and QuadExpr objects (#3092)

    Other

    Version 1.3.0 (September 5, 2022)

    Added

    • Support slicing in SparseAxisArray (#3031)

    Fixed

    • Fixed a bug introduced in v1.2.0 that prevented DenseAxisArrays with Vector keys (#3064)

    Other

    Version 1.2.1 (August 22, 2022)

    Fixed

    • Fixed a bug when parsing two-sided nonlinear constraints (#3045)

    Version 1.2.0 (August 16, 2022)

    Breaking

    This is a large minor release because it significantly refactors the internal code for handling nonlinear programs to use the MathOptInterface.Nonlinear submodule that was introduced in MathOptInterface v1.3.0. As a consequence, the internal datastructure in model.nlp_data has been removed, as has the JuMP._Derivatives submodule. Despite the changes, the public API for nonlinear programming has not changed, and any code that uses only the public API and that worked with v1.1.1 will continue to work with v1.2.0.

    Added

    • Added all_constraints(model; include_variable_in_set_constraints) which simplifies returning a list of all constraint indices in the model.
    • Added the ability to delete nonlinear constraints via delete(::Model, ::NonlinearConstraintRef).
    • Added the ability to provide an explicit Hessian for a multivariate user-defined function.
    • Added support for querying the primal value of a nonlinear constraint via value(::NonlinearConstraintRef)

    Fixed

    • Fixed a bug in Containers.DenseAxisArray so that it now supports indexing with keys that hash to the same value, even if they are different types, for example, Int32 and Int64.
    • Fixed a bug printing the model when the solver does not support MOI.Name.

    Other

    • Added a constraint programming formulation to the Sudoku tutorial.
    • Added newly supported solvers Pajarito, Clarabel, and COPT to the installation table.
    • Fixed a variety of other miscellaneous issues in the documentation.

    Version 1.1.1 (June 14, 2022)

    Other

    • Fixed problem displaying LaTeX in the documentation
    • Minor updates to the style guide
    • Updated to MOI v1.4.0 in the documentation

    Version 1.1.0 (May 25, 2022)

    Added

    • Added num_constraints(::Model; count_variable_in_set_constraints) to simplify the process of counting the number of constraints in a model
    • Added VariableRef(::ConstraintRef) for querying the variable associated with a bound or integrality constraint.
    • Added set_normalized_coefficients for modifying the variable coefficients of a vector-valued constraint.
    • Added set_string_names_on_creation to disable creating String names for variables and constraints. This can improve performance.

    Fixed

    • Fixed a bug passing nothing to the start keyword of @variable

    Other

    • New tutorials:
      • Sensitivity analysis of a linear program
      • Serving web apps
    • Minimal ellipse SDP tutorial refactored and improved
    • Docs updated to the latest version of each package
    • Lots of minor fixes and improvements to the documentation

    Version 1.0.0 (March 24, 2022)

    Read more about this release, along with an acknowledgement of all the contributors in our JuMP 1.0.0 is released blog post.

    Breaking

    • The previously deprecated functions (v0.23.0, v0.23.1) have been removed. Deprecation was to improve consistency of function names:
      • num_nl_constraints (see num_nonlinear_constraints)
      • all_nl_constraints (see all_nonlinear_constraints)
      • add_NL_expression (see add_nonlinear_expression)
      • set_NL_objective (see set_nonlinear_objective)
      • add_NL_constraint (see add_nonlinear_constraint)
      • nl_expr_string (see nonlinear_expr_string)
      • nl_constraint_string (see nonlinear_constraint_string)
      • SymMatrixSpace (see SymmetricMatrixSpace)
    • The unintentionally exported variable JuMP.op_hint has been renamed to the unexported JuMP._OP_HINT

    Fixed

    • Fixed a bug writing .nl files
    • Fixed a bug broadcasting SparseAxisArrays

    Version 0.23.2 (March 14, 2022)

    Added

    • Added relative_gap to solution_summary
    • register now throws an informative error if the function is not differentiable using ForwardDiff. In some cases, the check in register will encounter a false negative, and the informative error will be thrown at run-time. This usually happens when the function is non-differentiable in a subset of the domain.

    Fixed

    • Fixed a scoping issue when extending the container keyword of containers

    Other

    • Docs updated to the latest version of each package

    Version 0.23.1 (March 2, 2022)

    Deprecated

    • nl_expr_string and nl_constraint_string have been renamed to nonlinear_expr_string and nonlinear_constraint_string. The old methods still exist with deprecation warnings. This change should impact very few users because to call them you must rely on private internals of the nonlinear API. Users are encouraged to use sprint(show, x) instead, where x is the nonlinear expression or constraint of interest.

    Added

    • Added support for Base.abs2(x) where x is a variable or affine expression. This is mainly useful for complex-valued constraints.

    Fixed

    • Fixed addition of complex and real affine expressions
    • Fixed arithmetic for Complex-valued quadratic expressions
    • Fixed variable bounds passed as Rational{Int}(Inf)
    • Fixed printing of the coefficient (0 + 1im)
    • Fixed a bug when solution_summary is called prior to optimize!

    Version 0.23.0 (February 25, 2022)

    JuMP v0.23.0 is a breaking release. It is also a release-candidate for JuMP v1.0.0. That is, if no issues are found with the v0.23.0 release, then it will be re-tagged as v1.0.0.

    Breaking

    • Julia 1.6 is now the minimum supported version
    • MathOptInterface has been updated to v1.0.0
    • All previously deprecated functionality has been removed
    • PrintMode, REPLMode and IJuliaMode have been removed in favor of the MIME types MIME"text/plain" and MIME"text/latex". Replace instances of ::Type{REPLMode} with ::MIME"text/plain", REPLMode with MIME("text/plain"), ::Type{IJuliaMode} with ::MIME"text/latex", and IJuliaMode with MIME("text/latex").
    • Functions containing the nl_ acronym have been renamed to the more explicit nonlinear_. For example, num_nl_constraints is now num_nonlinear_constraints and set_NL_objective is now set_nonlinear_objective. Calls to the old functions throw an error explaining the new name.
    • SymMatrixSpace has been renamed to SymmetricMatrixSpace

    Added

    • Added nonlinear_dual_start_value and set_nonlinear_dual_start_value
    • Added preliminary support for Complex coefficient types

    Fixed

    • Fixed a bug in solution_summary

    Other

    • MILP examples have been migrated from GLPK to HiGHS
    • Fixed various typos
    • Improved section on setting constraint start values

    Troubleshooting problems when updating

    If you experience problems when updating, you are likely using previously deprecated functionality. (By default, Julia does not warn when you use deprecated features.)

    To find the deprecated features you are using, start Julia with --depwarn=yes:

    $ julia --depwarn=yes

    Then install JuMP v0.22.3:

    julia> using Pkg
    -julia> pkg"add JuMP@0.22.3"

    And then run your code. Apply any suggestions, or search the release notes below for advice on updating a specific deprecated feature.

    Version 0.22.3 (February 10, 2022)

    Fixed

    • Fixed a reproducibility issue in the TSP tutorial
    • Fixed a reproducibility issue in the max_cut_sdp tutorial
    • Fixed a bug broadcasting an empty SparseAxisArray

    Other

    • Added a warning and improved documentation for the modify-then-query case
    • Fixed a typo in the docstring of RotatedSecondOrderCone
    • Added Aqua.jl as a check for code health
    • Added introductions to each section of the tutorials
    • Improved the column generation and Benders decomposition tutorials
    • Updated documentation to MOI v0.10.8
    • Updated JuliaFormatter to v0.22.2

    Version 0.22.2 (January 10, 2022)

    Added

    • The function all_nl_constraints now returns all nonlinear constraints in a model
    • start_value and set_start_value can now be used to get and set the primal start for constraint references
    • Plural macros now return a tuple containing the elements that were defined instead of nothing
    • Anonymous variables are now printed as _[i] where i is the index of the variable instead of noname. Calling name(x) still returns "" so this is non-breaking.

    Fixed

    • Fixed handling of min and max in nonlinear expressions
    • CartesianIndex is no longer allowed as a key for DenseAxisArrays.

    Other

    • Improved the performance of GenericAffExpr
    • Added a tutorial on the Travelling Salesperson Problem
    • Added a tutorial on querying the Hessian of a nonlinear program
    • Added documentation on using custom solver binaries.

    Version 0.22.1 (November 29, 2021)

    Added

    • Export OptimizationSense enum, with instances: MIN_SENSE, MAX_SENSE, and FEASIBILITY_SENSE
    • Add Base.isempty(::Model) to match Base.empty(::Model)

    Fixed

    • Fix bug in container with tuples as indices
    • Fix bug in set_time_limit_sec

    Other

    • Add tutorial "Design patterns for larger models"
    • Remove release notes section from PDF
    • General edits of the documentation and error messages

    Version 0.22.0 (November 10, 2021)

    JuMP v0.22 is a breaking release

    Breaking

    JuMP 0.22 contains a number of breaking changes. However, these should be invisible for the majority of users. You will mostly encounter these breaking changes if you: wrote a JuMP extension, accessed backend(model), or called @SDconstraint.

    The breaking changes are as follows:

    • MathOptInterface has been updated to v0.10.4. For users who have interacted with the MOI backend, this contains a large number of breaking changes. Read the MathOptInterface release notes for more details.
    • The bridge_constraints keyword argument to Model and set_optimizer has been renamed add_bridges to reflect that more thing were bridged than just constraints.
    • The backend(model) field now contains a concrete instance of a MOI.Utilities.CachingOptimizer instead of one with an abstractly typed optimizer field. In most cases, this will lead to improved performance. However, calling set_optimizer after backend invalidates the old backend. For example:
      model = Model()
      +

      Release notes

      The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

      Version 1.23.4 (November 8, 2024)

      Fixed

      • Fixed UnsupportedNonlinearOperator error for the single argument LinearAlgebra.norm (#3864)
      • Fixed printing MOI.Interval with MIME"text/latex" (#3866)

      Other

      Version 1.23.3 (October 21, 2024)

      Fixed

      Other

      Version 1.23.2 (September 13, 2024)

      Fixed

      • Fixed an illegal simplification in MA.operate!! for NonlinearExpr (#3826)

      Other

      Version 1.23.1 (August 30, 2024)

      Fixed

      • Fixed a bug with indicator constraints and the in set syntax (#3813)

      Other

      Version 1.23.0 (August 13, 2024)

      Added

      • Added set inequality syntax for matrices (#3766)
      • Improved matrix inequality support (#3778) (#3805)

      Fixed

      • Fixed a method for calling value on a ::Number (#3776)
      • Fixed querying dual of Symmetric and Hermitian equality constraints (#3797)
      • Fixed read_from_file for coefficient types other than Float64 (#3801)

      Other

      • Documentation improvements
        • Fixed missing character in installation instructions (#3777)
        • Added a section of querying the Jacobian (#3779)
        • Clarify that SCIP does not support lazy constraints (#3784)
        • Fixed typo in knapsack.jl (#3792)
        • Added a warning to docs about tolerances in Bin and Int variables (#3794)
        • Clarify where to type installation commands (#3795)
      • Improve error message for common incorrect syntax in constraint macro (#3781)
      • Changed show(::IO, ::GenericModel) to a more informative tree structure (#3803)

      Version 1.22.2 (June 17, 2024)

      Fixed

      • Fixed printing to omit terms when printing a large array of expressions (#3759)
      • Fixed bug in printing when show is called on an invalid variable or constraint (#3763)

      Other

      • Improved error message for unsupported kwargs in variable macro (#3751)
      • Improved error message for unsupported container syntax like x[A][B] (#3756)
      • Docstring improvements (#3758), (#3760), (#3761), (#3767)
      • Added warning to documentation about Y <= X, Set() syntax (#3769)
      • Work-around change on nightly (#3753), (#3754)
      • Improved printing of symmetric matrices when used in constraints (#3768)
      • Fixed a test for upcoming printing change in MOI (#3772)
      • Updated should_i_use.md (#3773)

      Version 1.22.1 (May 17, 2024)

      Fixed

      • Fixed bug including non-.jl files in src/macros.jl (#3747)

      Other

      • Added DSDP to the list of supported solvers (#3745)
      • Updated YALMIP migration guide (#3748)

      Version 1.22.0 (May 12, 2024)

      Added

      • Added Base.complex(r, i) where r and i may be real-valued variables or affine or quadratic expressions (#3734)
      • Added @force_nonlinear for controlling when affine and quadratic expressions are instead parsed as nonlinear expressions. This can be useful for advanced users in a limited set of circumstances. (#3732)
      • Added support for returning the variable coefficients of a vector-valued constraint via normalized_coefficient. In addition, set_normalized_coefficients has been softly deprecated (no warning is thrown and old code will still work for all future 1.X releases of JuMP) in favor of set_normalized_coefficient. This change was made to unify how we get and set variable coefficients. (#3743)

      Fixed

      • Fixed missing promote_operation method that resulted in slow code (#3730)
      • Improved performance of getindex for Containers.DenseAxisArray (#3731)
      • Fixed the error message when the legacy nonlinear API is mixed with the new nonlinear API. In particular, we now uniformly throw an error message when unexpected objects occur in nonlinear expressions. (#3741)

      Other

      Version 1.21.1 (April 11, 2024)

      Fixed

      • Fixed behavior of complex-value related functions like real, imag, conj and abs2 when called on GenericNonlinearExpr. This fixes a method error when calling x' where x is an array of nonlinear expressions. As a related consequence, we now always error when creating nonlinear expressions with complex components. Previously, only some constructors were checked for complex expressionns. (#3724)

      Other

      Version 1.21.0 (March 31, 2024)

      Added

      • Added support for matrix inequality constraints with the HermitianPSDCone (#3705)
      • Added batched modification methods for set_normalized_rhs, set_objective_coefficient and set_normalized_coefficient. Using these methods can be more efficient for some solvers (#3716)
      • Added the private constant _CONSTRAINT_LIMIT_FOR_PRINTING, which controls how many constraints are printed to the screen during print(model). The main purpose of this is to prevent large quantities of text being printed when print(model) is accidentally called on a large model. (#3686)

      Fixed

      • Changed Containers.SparseAxisArray to use an OrderedDict as the backing data structure. Iterating over the elements in a SparseAxisArray now iterates in the order that the elements were created. Previously, the order was undefined behavior. (#3681)
      • Fixed complex variables for non-Float64 coefficient types (#3691)
      • Fixed LinearAlgebra.hermitan(::AbstractJuMPScalar) (#3693)
      • Fixed multiplying real scalar by Hermitian matrix (#3695)

      Other

      Version 1.20.0 (February 15, 2024)

      Added

      Fixed

      • Fixed compat of DimensionalData (#3666)
      • Fixed convert(::Type{NonlinearExpr}, ::Number)(#3672)

      Other

      • Added Optim to list of solvers (#3624)
      • Improved linking within documentation (#3669)

      Version 1.19.0 (February 1, 2024)

      Added

      • Added support for modifying quadratic coefficients (#3658)

      Fixed

      • Fixed short circuiting of && and || in macros (#3655)

      Other

      • Added SDPLR to list of solvers (#3644)
      • Added new roadmap items (#3645)
      • Fixed vale.sh version (#3650)
      • Improve error messages in macros (#3653)
      • Refactoring of set_normalized_coefficient (#3660) (#3661)
      • Update docs/packages.toml (#3662)

      Version 1.18.1 (January 6, 2024)

      Fixed

      Version 1.18.0 (January 2, 2024)

      Added

      Fixed

      Other

      • Added DisjunctiveProgrammingto extension-tests (#3597)
      • Added DisjunctiveProgrammingto docs (#3598)
      • Added DocumenterCitations to the docs (#3596), (#3630)
      • Migrate from SnoopPrecompile to PrecompileTools (#3608)
      • Minor documentation updates (#3623), (#3628), (#3635), (#3640), (#3643)

      Version 1.17.0 (December 4, 2023)

      Added

      Fixed

      Other

      Version 1.16.0 (October 24, 2023)

      Added

      • Added := operator for Boolean satisfiability problems (#3530)

      Fixed

      Other

      Version 1.15.1 (September 24, 2023)

      Fixed

      Other

      Version 1.15.0 (September 15, 2023)

      This is a large minor release because it adds an entirely new data structure and API path for working with nonlinear programs. The previous nonlinear interface remains unchanged and is documented at Nonlinear Modeling (Legacy). The new interface is a treated as a non-breaking feature addition and is documented at Nonlinear Modeling.

      Breaking

      Although the new nonlinear interface is a feature addition, there are two changes which might be breaking for a very small number of users.

      • The syntax inside JuMP macros is parsed using a different code path, even for linear and quadratic expressions. We made this change to unify how we parse linear, quadratic, and nonlinear expressions. In all cases, the new code returns equivalent expressions, but because of the different order of operations, there are three changes to be aware of when updating:
        • The printed form of the expression may change, for example from x * y to y * x. This can cause tests which test the String representation of a model to fail.
        • Some coefficients may change slightly due to floating point round-off error.
        • Particularly when working with a JuMP extension, you may encounter a MethodError due to a missing or ambiguous method. These errors are due to previously existing bugs that were not triggered by the previous parsing code. If you encounter such an error, please open a GitHub issue.
      • The methods for Base.:^(x::VariableRef, n::Integer) and Base.:^(x::AffExpr, n::Integer) have changed. Previously, these methods supported only n = 0, 1, 2 and they always returned a QuadExpr, even for the case when n = 0 or n = 1. Now:
        • x^0 returns one(T), where T is the value_type of the model (defaults to Float64)
        • x^1 returns x
        • x^2 returns a QuadExpr
        • x^n where !(0 <= n <= 2) returns a NonlinearExpr.
        We made this change to support nonlinear expressions and to align the mathematical definition of the operation with their return type. (Previously, users were surprised that x^1 returned a QuadExpr.) As a consequence of this change, the methods are now not type-stable. This means that the compiler cannot prove that x^2 returns a QuadExpr. If benchmarking shows that this is a performance problem, you can use the type-stable x * x instead of x^2.

      Added

      Fixed

      Other

      Version 1.14.1 (September 2, 2023)

      Fixed

      • Fix links in Documentation (#3478)

      Version 1.14.0 (August 27, 2023)

      Added

      Fixed

      • Fixed model_convert for BridgeableConstraint (#3437)
      • Fixed printing models with integer coefficients larger than typemax(Int) (#3447)
      • Fixed support for constant left-hand side functions in a complementarity constraint (#3452)

      Other

      • Updated packages used in documentation (#3444) (#3455)
      • Fixed docstring tests (#3445)
      • Fixed printing change for MathOptInterface (#3446)
      • Fixed typos in documentation (#3448) (#3457)
      • Added SCIP to callback documentation (#3449)

      Version 1.13.0 (July 27, 2023)

      Added

      Fixed

      Other

      • Added Loraine.jl to the installation table (#3426)
      • Removed Penopt.jl from packages.toml (#3428)
      • Improved problem statement in cannery example of tutorial (#3430)
      • Minor cleanups in Containers.DenseAxisArray implementation (#3429)
      • Changed nested_problems.jl: outer/inner to upper/lower (#3433)
      • Removed second SDP relaxation in OPF tutorial (#3432)

      Version 1.12.0 (June 19, 2023)

      Added

      Fixed

      Other

      Version 1.11.1 (May 19, 2023)

      Fixed

      • Fixed a poor error message when sum(::DenseAxisArray; dims) was called (#3338)
      • Fixed support for dependent sets in the @variable macro (#3344)
      • Fixed a performance bug in constraints with sparse symmetric matrices (#3349)

      Other

      • Improved the printing of complex numbers (#3332)
      • When printing, sets which contain constants ending in .0 now print as integers. This follows the behavior of constants in functions (#3341)
      • Added InfiniteOpt to the extensions documentation (#3343)
      • Added more documentation for the exponential cone (#3345) (#3347)
      • Added checklists for developers (#3346) (#3355)
      • Fixed test support upcoming Julia nightly (#3351)
      • Fixed extension-tests.yml action (#3353)
      • Add more solvers to the documentation (#3359) (#3361) (#3362)

      Version 1.11.0 (May 3, 2023)

      Added

      Fixed

      • Fixed tests for MOI v1.14.0 release (#3312)
      • Fixed indexing containers when an axis is Vector{Any} that contains a Vector{Any} element (#3280)
      • Fixed getindex(::AbstractJuMPScalar) which is called for an expression like x[] (#3314)
      • Fixed bug in set_string_names_on_creation with a vector of variables (#3322)
      • Fixed bug in memoize function in nonlinear documentation (#3337)

      Other

      • Fixed typos in the documentation (#3317) (#3318) (#3328)
      • Added a test for the order of setting start values (#3315)
      • Added READMEs of solvers and extensions to the docs (#3309) (#3320) (#3327) (#3329) (#3333)
      • Style improvements to src/variables.jl (#3324)
      • Clarify that column generation does not find global optimum (#3325)
      • Add a GitHub actions workflow for testing extensions prior to release (#3331)
      • Document the release process for JuMP (#3334)
      • Fix links to discourse and chatroom (#3335)

      Version 1.10.0 (April 3, 2023)

      Added

      Fixed

      • Fixed [compat] bound for MathOptInterface in Project.toml (#3272)

      Other

      Version 1.9.0 (March 7, 2023)

      Added

      Fixed

      • The matrix returned by a variable in HermitianPSDCone is now a LinearAlgebra.Hermitian matrix. This is potentially breaking if you have written code to assume the return is a Matrix. (#3245) (#3246)
      • Fixed missing support for Base.isreal of expressions (#3252)

      Other

      Version 1.8.2 (February 27, 2023)

      Fixed

      • Fixed dot product between complex JuMP expression and number (#3244)

      Other

      • Polish simple SDP examples (#3232)

      Version 1.8.1 (February 23, 2023)

      Fixed

      • Fixed support for init in nonlinear generator expressions (#3226)

      Other

      • Use and document import MathOptInterface as MOI (#3222)
      • Removed references in documentation to multiobjective optimization being unsupported (#3223)
      • Added tutorial on multi-objective portfolio optimization (#3227)
      • Refactored some of the conic tutorials (#3229)
      • Fixed typos in the documentation (#3230)
      • Added tutorial on parallelism (#3231)

      Version 1.8.0 (February 16, 2023)

      Added

      • Added --> syntax support for indicator constraints. The old syntax of => remains supported (#3207)
      • Added <--> syntax for reified constraints. For now, few solvers support reified constraints (#3206)
      • Added fix_discrete_variables. This is most useful for computing the dual of a mixed-integer program (#3208)
      • Added support for vector-valued objectives. For details, see the Multi-objective knapsack tutorial (#3176)

      Fixed

      • Fixed a bug in lp_sensitivity_report by switching to an explicit LU factorization of the basis matrix (#3182)
      • Fixed a bug that prevented [; kwarg] arguments in macros (#3220)

      Other

      Version 1.7.0 (January 25, 2023)

      Added

      Other

      • Large refactoring of the tests (#3166) (#3167) (#3168) (#3169) (#3170) (#3171)
      • Remove unreachable code due to VERSION checks (#3172)
      • Document how to test JuMP extensions (#3174)
      • Fix method ambiguities in Containers (#3173)
      • Improve error message that is thrown when = is used instead of == in the @constraint macro (#3178)
      • Improve the error message when Bool is used instead of Bin in the @variable macro (#3180)
      • Update versions of the documentation (#3185)
      • Tidy the import of packages and remove unnecessary prefixes (#3186) (#3187)
      • Refactor src/JuMP.jl by moving methods into more relevant files (#3188)
      • Fix docstring of Model not appearing in the documentation (#3198)

      Version 1.6.0 (January 1, 2023)

      Added

      Fixed

      • Fixed promotion of complex expressions (#3150) (#3164)

      Other

      • Added Benders tutorial with in-place resolves (#3145)
      • Added more Tips and tricks for linear programs (#3144) (#3163)
      • Clarified documentation that start can depend on the indices of a variable container (#3148)
      • Replace instances of length and size by the recommended eachindex and axes (#3149)
      • Added a warning explaining why the model is dirty when accessing solution results from a modified model (#3156)
      • Clarify documentation that PSD ensures a symmetric matrix (#3159)
      • Maintenance of the JuMP test suite (#3146) (#3158) (#3162)

      Version 1.5.0 (December 8, 2022)

      Added

      Fixed

      Other

      Version 1.4.0 (October 29, 2022)

      Added

      Fixed

      • Fixed a bug in copy_to(dest::Model, src::MOI.ModelLike) when src has nonlinear components (#3101)
      • Fixed the printing of (-1.0 + 0.0im) coefficients in complex expressions (#3112)
      • Fixed a parsing bug in nonlinear expressions with generator statements that contain multiple for statements (#3116)

      Other

      • Converted the multi-commodity flow tutorial to use an SQLite database (#3098)
      • Fixed a number of typos in the documentation (#3103) (#3107) (#3018)
      • Improved various style aspects of the PDF documentation (#3095) (#3098) (#3102)

      Version 1.3.1 (September 28, 2022)

      Fixed

      • Fixed a performance issue in relax_integrality (#3087)
      • Fixed the type stability of operators with Complex arguments (#3072)
      • Fixed a bug which added additional +() terms to some nonlinear expressions (#3091)
      • Fixed potential method ambiguities with AffExpr and QuadExpr objects (#3092)

      Other

      Version 1.3.0 (September 5, 2022)

      Added

      • Support slicing in SparseAxisArray (#3031)

      Fixed

      • Fixed a bug introduced in v1.2.0 that prevented DenseAxisArrays with Vector keys (#3064)

      Other

      Version 1.2.1 (August 22, 2022)

      Fixed

      • Fixed a bug when parsing two-sided nonlinear constraints (#3045)

      Version 1.2.0 (August 16, 2022)

      Breaking

      This is a large minor release because it significantly refactors the internal code for handling nonlinear programs to use the MathOptInterface.Nonlinear submodule that was introduced in MathOptInterface v1.3.0. As a consequence, the internal datastructure in model.nlp_data has been removed, as has the JuMP._Derivatives submodule. Despite the changes, the public API for nonlinear programming has not changed, and any code that uses only the public API and that worked with v1.1.1 will continue to work with v1.2.0.

      Added

      • Added all_constraints(model; include_variable_in_set_constraints) which simplifies returning a list of all constraint indices in the model.
      • Added the ability to delete nonlinear constraints via delete(::Model, ::NonlinearConstraintRef).
      • Added the ability to provide an explicit Hessian for a multivariate user-defined function.
      • Added support for querying the primal value of a nonlinear constraint via value(::NonlinearConstraintRef)

      Fixed

      • Fixed a bug in Containers.DenseAxisArray so that it now supports indexing with keys that hash to the same value, even if they are different types, for example, Int32 and Int64.
      • Fixed a bug printing the model when the solver does not support MOI.Name.

      Other

      • Added a constraint programming formulation to the Sudoku tutorial.
      • Added newly supported solvers Pajarito, Clarabel, and COPT to the installation table.
      • Fixed a variety of other miscellaneous issues in the documentation.

      Version 1.1.1 (June 14, 2022)

      Other

      • Fixed problem displaying LaTeX in the documentation
      • Minor updates to the style guide
      • Updated to MOI v1.4.0 in the documentation

      Version 1.1.0 (May 25, 2022)

      Added

      • Added num_constraints(::Model; count_variable_in_set_constraints) to simplify the process of counting the number of constraints in a model
      • Added VariableRef(::ConstraintRef) for querying the variable associated with a bound or integrality constraint.
      • Added set_normalized_coefficients for modifying the variable coefficients of a vector-valued constraint.
      • Added set_string_names_on_creation to disable creating String names for variables and constraints. This can improve performance.

      Fixed

      • Fixed a bug passing nothing to the start keyword of @variable

      Other

      • New tutorials:
        • Sensitivity analysis of a linear program
        • Serving web apps
      • Minimal ellipse SDP tutorial refactored and improved
      • Docs updated to the latest version of each package
      • Lots of minor fixes and improvements to the documentation

      Version 1.0.0 (March 24, 2022)

      Read more about this release, along with an acknowledgement of all the contributors in our JuMP 1.0.0 is released blog post.

      Breaking

      • The previously deprecated functions (v0.23.0, v0.23.1) have been removed. Deprecation was to improve consistency of function names:
        • num_nl_constraints (see num_nonlinear_constraints)
        • all_nl_constraints (see all_nonlinear_constraints)
        • add_NL_expression (see add_nonlinear_expression)
        • set_NL_objective (see set_nonlinear_objective)
        • add_NL_constraint (see add_nonlinear_constraint)
        • nl_expr_string (see nonlinear_expr_string)
        • nl_constraint_string (see nonlinear_constraint_string)
        • SymMatrixSpace (see SymmetricMatrixSpace)
      • The unintentionally exported variable JuMP.op_hint has been renamed to the unexported JuMP._OP_HINT

      Fixed

      • Fixed a bug writing .nl files
      • Fixed a bug broadcasting SparseAxisArrays

      Version 0.23.2 (March 14, 2022)

      Added

      • Added relative_gap to solution_summary
      • register now throws an informative error if the function is not differentiable using ForwardDiff. In some cases, the check in register will encounter a false negative, and the informative error will be thrown at run-time. This usually happens when the function is non-differentiable in a subset of the domain.

      Fixed

      • Fixed a scoping issue when extending the container keyword of containers

      Other

      • Docs updated to the latest version of each package

      Version 0.23.1 (March 2, 2022)

      Deprecated

      • nl_expr_string and nl_constraint_string have been renamed to nonlinear_expr_string and nonlinear_constraint_string. The old methods still exist with deprecation warnings. This change should impact very few users because to call them you must rely on private internals of the nonlinear API. Users are encouraged to use sprint(show, x) instead, where x is the nonlinear expression or constraint of interest.

      Added

      • Added support for Base.abs2(x) where x is a variable or affine expression. This is mainly useful for complex-valued constraints.

      Fixed

      • Fixed addition of complex and real affine expressions
      • Fixed arithmetic for Complex-valued quadratic expressions
      • Fixed variable bounds passed as Rational{Int}(Inf)
      • Fixed printing of the coefficient (0 + 1im)
      • Fixed a bug when solution_summary is called prior to optimize!

      Version 0.23.0 (February 25, 2022)

      JuMP v0.23.0 is a breaking release. It is also a release-candidate for JuMP v1.0.0. That is, if no issues are found with the v0.23.0 release, then it will be re-tagged as v1.0.0.

      Breaking

      • Julia 1.6 is now the minimum supported version
      • MathOptInterface has been updated to v1.0.0
      • All previously deprecated functionality has been removed
      • PrintMode, REPLMode and IJuliaMode have been removed in favor of the MIME types MIME"text/plain" and MIME"text/latex". Replace instances of ::Type{REPLMode} with ::MIME"text/plain", REPLMode with MIME("text/plain"), ::Type{IJuliaMode} with ::MIME"text/latex", and IJuliaMode with MIME("text/latex").
      • Functions containing the nl_ acronym have been renamed to the more explicit nonlinear_. For example, num_nl_constraints is now num_nonlinear_constraints and set_NL_objective is now set_nonlinear_objective. Calls to the old functions throw an error explaining the new name.
      • SymMatrixSpace has been renamed to SymmetricMatrixSpace

      Added

      • Added nonlinear_dual_start_value and set_nonlinear_dual_start_value
      • Added preliminary support for Complex coefficient types

      Fixed

      • Fixed a bug in solution_summary

      Other

      • MILP examples have been migrated from GLPK to HiGHS
      • Fixed various typos
      • Improved section on setting constraint start values

      Troubleshooting problems when updating

      If you experience problems when updating, you are likely using previously deprecated functionality. (By default, Julia does not warn when you use deprecated features.)

      To find the deprecated features you are using, start Julia with --depwarn=yes:

      $ julia --depwarn=yes

      Then install JuMP v0.22.3:

      julia> using Pkg
      +julia> pkg"add JuMP@0.22.3"

      And then run your code. Apply any suggestions, or search the release notes below for advice on updating a specific deprecated feature.

      Version 0.22.3 (February 10, 2022)

      Fixed

      • Fixed a reproducibility issue in the TSP tutorial
      • Fixed a reproducibility issue in the max_cut_sdp tutorial
      • Fixed a bug broadcasting an empty SparseAxisArray

      Other

      • Added a warning and improved documentation for the modify-then-query case
      • Fixed a typo in the docstring of RotatedSecondOrderCone
      • Added Aqua.jl as a check for code health
      • Added introductions to each section of the tutorials
      • Improved the column generation and Benders decomposition tutorials
      • Updated documentation to MOI v0.10.8
      • Updated JuliaFormatter to v0.22.2

      Version 0.22.2 (January 10, 2022)

      Added

      • The function all_nl_constraints now returns all nonlinear constraints in a model
      • start_value and set_start_value can now be used to get and set the primal start for constraint references
      • Plural macros now return a tuple containing the elements that were defined instead of nothing
      • Anonymous variables are now printed as _[i] where i is the index of the variable instead of noname. Calling name(x) still returns "" so this is non-breaking.

      Fixed

      • Fixed handling of min and max in nonlinear expressions
      • CartesianIndex is no longer allowed as a key for DenseAxisArrays.

      Other

      • Improved the performance of GenericAffExpr
      • Added a tutorial on the Travelling Salesperson Problem
      • Added a tutorial on querying the Hessian of a nonlinear program
      • Added documentation on using custom solver binaries.

      Version 0.22.1 (November 29, 2021)

      Added

      • Export OptimizationSense enum, with instances: MIN_SENSE, MAX_SENSE, and FEASIBILITY_SENSE
      • Add Base.isempty(::Model) to match Base.empty(::Model)

      Fixed

      • Fix bug in container with tuples as indices
      • Fix bug in set_time_limit_sec

      Other

      • Add tutorial "Design patterns for larger models"
      • Remove release notes section from PDF
      • General edits of the documentation and error messages

      Version 0.22.0 (November 10, 2021)

      JuMP v0.22 is a breaking release

      Breaking

      JuMP 0.22 contains a number of breaking changes. However, these should be invisible for the majority of users. You will mostly encounter these breaking changes if you: wrote a JuMP extension, accessed backend(model), or called @SDconstraint.

      The breaking changes are as follows:

      • MathOptInterface has been updated to v0.10.4. For users who have interacted with the MOI backend, this contains a large number of breaking changes. Read the MathOptInterface release notes for more details.
      • The bridge_constraints keyword argument to Model and set_optimizer has been renamed add_bridges to reflect that more thing were bridged than just constraints.
      • The backend(model) field now contains a concrete instance of a MOI.Utilities.CachingOptimizer instead of one with an abstractly typed optimizer field. In most cases, this will lead to improved performance. However, calling set_optimizer after backend invalidates the old backend. For example:
        model = Model()
         b = backend(model)
         set_optimizer(model, GLPK.Optimizer)
         @variable(model, x)
         # b is not updated with `x`! Get a new b by calling `backend` again.
        -new_b = backend(model)
      • All usages of @SDconstraint are deprecated. The new syntax is @constraint(model, X >= Y, PSDCone()).
      • Creating a DenseAxisArray with a Number as an axis will now display a warning. This catches a common error in which users write @variable(model, x[length(S)]) instead of @variable(model, x[1:length(S)]).
      • The caching_mode argument to Model, for example, Model(caching_mode = MOIU.MANUAL) mode has been removed. For more control over the optimizer, use direct_model instead.
      • The previously deprecated lp_objective_perturbation_range and lp_rhs_perturbation_range functions have been removed. Use lp_sensitivity_report instead.
      • The .m fields of NonlinearExpression and NonlinearParameter have been renamed to .model.
      • Infinite variable bounds are now ignored. Thus, @variable(model, x <= Inf) will show has_upper_bound(x) == false. Previously, these bounds were passed through to the solvers which caused numerical issues for solvers expecting finite bounds.
      • The variable_type and constraint_type functions were removed. This should only affect users who previously wrote JuMP extensions. The functions can be deleted without consequence.
      • The internal functions moi_mode, moi_bridge_constraints, moi_add_constraint, and moi_add_to_function_constant are no longer exported.
      • The un-used method Containers.generate_container has been deleted.
      • The Containers API has been refactored, and _build_ref_sets is now public as Containers.build_ref_sets.
      • The parse_constraint_ methods for extending @constraint at parse time have been refactored in a breaking way. Consult the Extensions documentation for more details and examples.

      Added

      • The TerminationStatusCode and ResultStatusCode enums are now exported by JuMP. Prefer termination_status(model) == OPTIMAL instead of == MOI.OPTIMAL, although the MOI. prefix way still works.
      • Copy a x::DenseAxisArray to an Array by calling Array(x).
      • NonlinearExpression is now a subtype of AbstractJuMPScalar
      • Constraints such as @constraint(model, x + 1 in MOI.Integer()) are now supported.
      • primal_feasibility_report now accepts a function as the first argument.
      • Scalar variables @variable(model, x[1:2] in MOI.Integer()) creates two variables, both of which are constrained to be in the set MOI.Integer.
      • Conic constraints can now be specified as inequalities under a different partial ordering. So @constraint(model, x - y in MOI.Nonnegatives()) can now be written as @constraint(model, x >= y, MOI.Nonnegatives()).
      • Names are now set for vectorized constraints.

      Fixed

      • Fixed a performance issue when show was called on a SparseAxisArray with a large number of elements.
      • Fixed a bug displaying barrier and simplex iterations in solution_summary.
      • Fixed a bug by implementing hash for DenseAxisArray and SparseAxisArray.
      • Names are now only set if the solver supports them. Previously, this prevented solvers such as Ipopt from being used with direct_model.
      • MutableArithmetics.Zero is converted into a 0.0 before being returned to the user. Previously, some calls to @expression would return the undocumented MutableArithmetics.Zero() object. One example is summing over an empty set @expression(model, sum(x[i] for i in 1:0)). You will now get 0.0 instead.
      • AffExpr and QuadExpr can now be used with == 0 instead of iszero. This fixes a number of issues relating to Julia standard libraries such as LinearAlgebra and SparseArrays.
      • Fixed a bug when registering a user-defined function with splatting.

      Other

      • The documentation is now available as a PDF.
      • The documentation now includes a full copy of the MathOptInterface documentation to make it easy to link concepts between the docs. (The MathOptInterface documentation has also been significantly improved.)
      • The documentation contains a large number of improvements and clarifications on a range of topics. Thanks to @sshin23, @DilumAluthge, and @jlwether.
      • The documentation is now built with Julia 1.6 instead of 1.0.
      • Various error messages have been improved to be more readable.

      Version 0.21.10 (September 4, 2021)

      Added

      • Added add_NL_expression
      • add_NL_xxx functions now support AffExpr and QuadExpr as terms

      Fixed

      • Fixed a bug in solution_summary
      • Fixed a bug in relax_integrality

      Other

      • Improved error message in lp_sensitivity_report

      Version 0.21.9 (August 1, 2021)

      Added

      • Containers now support arbitrary container types by passing the type to the container keyword and overloading Containers.container.
      • is_valid now supports nonlinear constraints
      • Added unsafe_backend for querying the inner-most optimizer of a JuMP model.
      • Nonlinear parameters now support the plural @NLparameters macro.
      • Containers (for example, DenseAxisArray) can now be used in vector-valued constraints.

      Other

      • Various improvements to the documentation.

      Version 0.21.8 (May 8, 2021)

      Added

      • The @constraint macro is now extendable in the same way as @variable.
      • AffExpr and QuadExpr can now be used in nonlinear macros.

      Fixed

      • Fixed a bug in lp_sensitivity_report.
      • Fixed an inference issue when creating empty SparseAxisArrays.

      Version 0.21.7 (April 12, 2021)

      Added

      • Added primal_feasibility_report, which can be used to check whether a primal point satisfies primal feasibility.
      • Added coefficient, which returns the coefficient associated with a variable in affine and quadratic expressions.
      • Added copy_conflict, which returns the IIS of an infeasible model.
      • Added solution_summary, which returns (and prints) a struct containing a summary of the solution.
      • Allow AbstractVector in vector constraints instead of just Vector.
      • Added latex_formulation(model) which returns an object representing the latex formulation of a model. Use print(latex_formulation(model)) to print the formulation as a string.
      • User-defined functions in nonlinear expressions are now automatically registered to aid quick model prototyping. However, a warning is printed to encourage the manual registration.
      • DenseAxisArray's now support broadcasting over multiple arrays.
      • Container indices can now be iterators of Base.SizeUnknown.

      Fixed

      • Fixed bug in rad2deg and deg2rad in nonlinear expressions.
      • Fixed a MethodError bug in Containers when forcing container type.
      • Allow partial slicing of a DenseAxisArray, resolving an issue from 2014.
      • Fixed a bug printing variable names in IJulia.
      • Ending an IJulia cell with model now prints a summary of the model (like in the REPL) not the latex formulation. Use print(model) to print the latex formulation.
      • Fixed a bug when copying models containing nested arrays.

      Other

      • Tutorials are now part of the documentation, and more refactoring has taken place.
      • Added JuliaFormatter added as a code formatter.
      • Added some precompilation statements to reduce initial latency.
      • Various improvements to error messages to make them more helpful.
      • Improved performance of value(::NonlinearExpression).
      • Improved performance of fix(::VariableRef).

      Version 0.21.6 (January 29, 2021)

      Added

      • Added support for skew symmetric variables via @variable(model, X[1:2, 1:2] in SkewSymmetricMatrixSpace()).
      • lp_sensitivity_report has been added which significantly improves the performance of querying the sensitivity summary of an LP. lp_objective_perturbation_range and lp_rhs_perturbation_range are deprecated.
      • Dual warm-starts are now supported with set_dual_start_value and dual_start_value.
      • (\in<tab>) can now be used in macros instead of = or in.
      • Use haskey(model::Model, key::Symbol) to check if a name key is registered in a model.
      • Added unregister(model::Model, key::Symbol) to unregister a name key from model.
      • Added callback_node_status for use in callbacks.
      • Added print_bridge_graph to visualize the bridging graph generated by MathOptInterface.
      • Improved error message for containers with duplicate indices.

      Fixed

      • Various fixes to pass tests on Julia 1.6.
      • Fixed a bug in the printing of nonlinear expressions in IJulia.
      • Fixed a bug when nonlinear expressions are passed to user-defined functions.
      • Some internal functions that were previously exported are now no longer exported.
      • Fixed a bug when relaxing a fixed binary variable.
      • Fixed a StackOverflowError that occurred when SparseAxisArrays had a large number of elements.
      • Removed an unnecessary type assertion in list_of_constraint_types.
      • Fixed a bug when copying models with registered expressions.

      Other

      • The documentation has been significantly overhauled. It now has distinct sections for the manual, API reference, and examples. The existing examples in /examples have now been moved to /docs/src/examples and rewritten using Literate.jl, and they are now included in the documentation.
      • JuliaFormatter has been applied to most of the codebase. This will continue to roll out over time, as we fix upstream issues in the formatter, and will eventually become compulsory.
      • The root cause of a large number of method invalidations has been resolved.
      • We switched continuous integration from Travis and Appveyor to GitHub Actions.

      Version 0.21.5 (September 18, 2020)

      Fixed

      • Fixed deprecation warnings
      • Throw DimensionMismatch for incompatibly sized functions and sets
      • Unify treatment of keys(x) on JuMP containers

      Version 0.21.4 (September 14, 2020)

      Added

      • Add debug info when adding unsupported constraints
      • Add relax_integrality for solving continuous relaxation
      • Allow querying constraint conflicts

      Fixed

      • Dispatch on Real for MOI.submit
      • Implement copy for CustomSet in tests
      • Don't export private macros
      • Fix invalid assertion in nonlinear
      • Error if constraint has NaN right-hand side
      • Improve speed of tests
      • Lots of work modularizing files in /test
      • Improve line numbers in macro error messages
      • Print nonlinear subexpressions
      • Various documentation updates
      • Dependency updates:
        • Datastructures 0.18
        • MathOptFormat v0.5
        • Prep for MathOptInterface 0.9.15

      Version 0.21.3 (June 18, 2020)

      • Added Special Order Sets (SOS1 and SOS2) to JuMP with default weights to ease the creation of such constraints (#2212).
      • Added functions simplex_iterations, barrier_iterations and node_count (#2201).
      • Added function reduced_cost (#2205).
      • Implemented callback_value for affine and quadratic expressions (#2231).
      • Support MutableArithmetics.Zero in objective and constraints (#2219).
      • Documentation improvements:
        • Mention tutorials in the docs (#2223).
        • Update COIN-OR links (#2242).
        • Explicit link to the documentation of MOI.FileFormats (#2253).
        • Typo fixes (#2261).
      • Containers improvements:
        • Fix Base.map for DenseAxisArray (#2235).
        • Throw BoundsError if number of indices is incorrect for DenseAxisArray and SparseAxisArray (#2240).
      • Extensibility improvements:
        • Implement a set_objective method fallback that redirects to set_objective_sense and set_objective_function (#2247).
        • Add parse_constraint method with arbitrary number of arguments (#2051).
        • Add parse_constraint_expr and parse_constraint_head (#2228).

      Version 0.21.2 (April 2, 2020)

      • Added relative_gap() to access MOI.RelativeGap() attribute (#2199).
      • Documentation fixes:
        • Added link to source for docstrings in the documentation (#2207).
        • Added docstring for @variables macro (#2216).
        • Typo fixes (#2177, #2184, #2182).
      • Implementation of methods for Base functions:
        • Implemented Base.empty! for JuMP.Model (#2198).
        • Implemented Base.conj for JuMP scalar types (#2209).

      Fixed

      • Fixed sum of expression with scalar product in macro (#2178).
      • Fixed writing of nonlinear models to MathOptFormat (#2181).
      • Fixed construction of empty SparseAxisArray (#2179).
      • Fixed constraint with zero function (#2188).

      Version 0.21.1 (Feb 18, 2020)

      • Improved the clarity of the with_optimizer deprecation warning.

      Version 0.21.0 (Feb 16, 2020)

      Breaking

      • Deprecated with_optimizer (#2090, #2084, #2141). You can replace with_optimizer by either nothing, optimizer_with_attributes or a closure:

        • replace with_optimizer(Ipopt.Optimizer) by Ipopt.Optimizer.
        • replace with_optimizer(Ipopt.Optimizer, max_cpu_time=60.0) by optimizer_with_attributes(Ipopt.Optimizer, "max_cpu_time" => 60.0).
        • replace with_optimizer(Gurobi.Optimizer, env) by () -> Gurobi.Optimizer(env).
        • replace with_optimizer(Gurobi.Optimizer, env, Presolve=0) by optimizer_with_attributes(() -> Gurobi.Optimizer(env), "Presolve" => 0).

        alternatively to optimizer_with_attributes, you can also set the attributes separately with set_optimizer_attribute.

      • Renamed set_parameter and set_parameters to set_optimizer_attribute and set_optimizer_attributes (#2150).

      • Broadcast should now be explicit inside macros. @SDconstraint(model, x >= 1) and @constraint(model, x + 1 in SecondOrderCone()) now throw an error instead of broadcasting 1 along the dimension of x (#2107).

      • @SDconstraint(model, x >= 0) is now equivalent to @constraint(model, x in PSDCone()) instead of @constraint(model, (x .- 0) in PSDCone()) (#2107).

      • The macros now create the containers with map instead of for loops, as a consequence, containers created by @expression can now have any element type and containers of constraint references now have concrete element types when possible. This fixes a long-standing issue where @expression could only be used to generate a collection of linear expressions. Now it works for quadratic expressions as well (#2070).

      • Calling deepcopy(::AbstractModel) now throws an error.

      • The constraint name is now printed in the model string (#2108).

      Added

      • Added support for solver-independent and solver-specific callbacks (#2101).
      • Added write_to_file and read_from_file, supported formats are CBF, LP, MathOptFormat, MPS and SDPA (#2114).
      • Added support for complementarity constraints (#2132).
      • Added support for indicator constraints (#2092).
      • Added support for querying multiple solutions with the result keyword (#2100).
      • Added support for constraining variables on creation (#2128).
      • Added method delete that deletes a vector of variables at once if it is supported by the underlying solver (#2135).
      • The arithmetic between JuMP expression has be refactored into the MutableArithmetics package (#2107).
      • Improved error on complex values in NLP (#1978).
      • Added an example of column generation (#2010).

      Fixed

      • Incorrect coefficients generated when using Symmetric variables (#2102)

      Version 0.20.1 (Oct 18, 2019)

      • Add sections on @variables and @constraints in the documentation (#2062).
      • Fixed product of sparse matrices for Julia v1.3 (#2063).
      • Added set_objective_coefficient to modify the coefficient of a linear term of the objective function (#2008).
      • Added set_time_limit_sec, unset_time_limit_sec and time_limit_sec to set and query the time limit for the solver in seconds (#2053).

      Version 0.20.0 (Aug 24, 2019)

      • Documentation updates.
      • Numerous bug fixes.
      • Better error messages (#1977, #1978, #1997, #2017).
      • Performance improvements (#1947, #2032).
      • Added LP sensitivity summary functions lp_objective_perturbation_range and lp_rhs_perturbation_range (#1917).
      • Added functions dual_objective_value, raw_status and set_parameter.
      • Added function set_objective_coefficient to modify the coefficient of a linear term of the objective (#2008).
      • Added functions set_normalized_rhs, normalized_rhs, and add_to_function_constant to modify and get the constant part of a constraint (#1935, #1960).
      • Added functions set_normalized_coefficient and normalized_coefficient to modify and get the coefficient of a linear term of a constraint (#1935, #1960).
      • Numerous other improvements in MOI 0.9, see the NEWS.md file of MOI for more details.

      Version 0.19.2 (June 8, 2019)

      • Fix a bug in derivatives that could arise in models with nested nonlinear subexpressions.

      Version 0.19.1 (May 12, 2019)

      • Usability and performance improvements.
      • Bug fixes.

      Version 0.19.0 (February 15, 2019)

      JuMP 0.19 contains significant breaking changes.

      Breaking

      • JuMP's abstraction layer for communicating with solvers changed from MathProgBase (MPB) to MathOptInterface (MOI). MOI addresses many longstanding design issues. (See @mlubin's slides from JuMP-dev 2018.) JuMP 0.19 is compatible only with solvers that have been updated for MOI. See the installation guide for a list of solvers that have and have not yet been updated.

      • Most solvers have been renamed to PackageName.Optimizer. For example, GurobiSolver() is now Gurobi.Optimizer.

      • Solvers are no longer added to a model via Model(solver = XXX(kwargs...)). Instead use Model(with_optimizer(XXX, kwargs...)). For example, Model(with_optimizer(Gurobi.Optimizer, OutputFlag=0)).

      • JuMP containers (for example, the objects returned by @variable) have been redesigned. Containers.SparseAxisArray replaces JuMPDict, JuMPArray was rewritten (inspired by AxisArrays) and renamed Containers.DenseAxisArray, and you can now request a container type with the container= keyword to the macros. See the corresponding documentation for more details.

      • The statuses returned by solvers have changed. See the possible status values here. The MOI statuses are much richer than the MPB statuses and can be used to distinguish between previously indistinguishable cases (for example, did the solver have a feasible solution when it stopped because of the time limit?).

      • Starting values are separate from result values. Use value to query the value of a variable in a solution. Use start_value and set_start_value to get and set an initial starting point provided to the solver. The solutions from previous solves are no longer automatically set as the starting points for the next solve.

      • The data structures for affine and quadratic expressions AffExpr and QuadExpr have changed. Internally, terms are stored in dictionaries instead of lists. Duplicate coefficients can no longer exist. Accessors and iteration methods have changed.

      • JuMPNLPEvaluator no longer includes the linear and quadratic parts of the model in the evaluation calls. These are now handled separately to allow NLP solvers that support various types of constraints.

      • JuMP solver-independent callbacks have been replaced by solver-specific callbacks. See your favorite solver for more details. (See the note below: No solver-specific callbacks are implemented yet.)

      • The norm() syntax is no longer recognized inside macros. Use the SecondOrderCone() set instead.

      • JuMP no longer performs automatic transformation between special quadratic forms and second-order cone constraints. Support for these constraint classes depends on the solver.

      • The symbols :Min and :Max are no longer used as optimization senses. Instead, JuMP uses the OptimizationSense enum from MathOptInterface. @objective(model, Max, ...), @objective(model, Min, ...), @NLobjective(model, Max, ...), and @objective(model, Min, ...) remain valid, but @objective(m, :Max, ...) is no longer accepted.

      • The sign conventions for duals has changed in some cases for consistency with conic duality (see the documentation). The shadow_price helper method returns duals with signs that match conventional LP interpretations of dual values as sensitivities of the objective value to relaxations of constraints.

      • @constraintref is no longer defined. Instead, create the appropriate container to hold constraint references manually. For example,

        constraints = Dict() # Optionally, specify types for improved performance.
        +new_b = backend(model)
      • All usages of @SDconstraint are deprecated. The new syntax is @constraint(model, X >= Y, PSDCone()).
      • Creating a DenseAxisArray with a Number as an axis will now display a warning. This catches a common error in which users write @variable(model, x[length(S)]) instead of @variable(model, x[1:length(S)]).
      • The caching_mode argument to Model, for example, Model(caching_mode = MOIU.MANUAL) mode has been removed. For more control over the optimizer, use direct_model instead.
      • The previously deprecated lp_objective_perturbation_range and lp_rhs_perturbation_range functions have been removed. Use lp_sensitivity_report instead.
      • The .m fields of NonlinearExpression and NonlinearParameter have been renamed to .model.
      • Infinite variable bounds are now ignored. Thus, @variable(model, x <= Inf) will show has_upper_bound(x) == false. Previously, these bounds were passed through to the solvers which caused numerical issues for solvers expecting finite bounds.
      • The variable_type and constraint_type functions were removed. This should only affect users who previously wrote JuMP extensions. The functions can be deleted without consequence.
      • The internal functions moi_mode, moi_bridge_constraints, moi_add_constraint, and moi_add_to_function_constant are no longer exported.
      • The un-used method Containers.generate_container has been deleted.
      • The Containers API has been refactored, and _build_ref_sets is now public as Containers.build_ref_sets.
      • The parse_constraint_ methods for extending @constraint at parse time have been refactored in a breaking way. Consult the Extensions documentation for more details and examples.

      Added

      • The TerminationStatusCode and ResultStatusCode enums are now exported by JuMP. Prefer termination_status(model) == OPTIMAL instead of == MOI.OPTIMAL, although the MOI. prefix way still works.
      • Copy a x::DenseAxisArray to an Array by calling Array(x).
      • NonlinearExpression is now a subtype of AbstractJuMPScalar
      • Constraints such as @constraint(model, x + 1 in MOI.Integer()) are now supported.
      • primal_feasibility_report now accepts a function as the first argument.
      • Scalar variables @variable(model, x[1:2] in MOI.Integer()) creates two variables, both of which are constrained to be in the set MOI.Integer.
      • Conic constraints can now be specified as inequalities under a different partial ordering. So @constraint(model, x - y in MOI.Nonnegatives()) can now be written as @constraint(model, x >= y, MOI.Nonnegatives()).
      • Names are now set for vectorized constraints.

      Fixed

      • Fixed a performance issue when show was called on a SparseAxisArray with a large number of elements.
      • Fixed a bug displaying barrier and simplex iterations in solution_summary.
      • Fixed a bug by implementing hash for DenseAxisArray and SparseAxisArray.
      • Names are now only set if the solver supports them. Previously, this prevented solvers such as Ipopt from being used with direct_model.
      • MutableArithmetics.Zero is converted into a 0.0 before being returned to the user. Previously, some calls to @expression would return the undocumented MutableArithmetics.Zero() object. One example is summing over an empty set @expression(model, sum(x[i] for i in 1:0)). You will now get 0.0 instead.
      • AffExpr and QuadExpr can now be used with == 0 instead of iszero. This fixes a number of issues relating to Julia standard libraries such as LinearAlgebra and SparseArrays.
      • Fixed a bug when registering a user-defined function with splatting.

      Other

      • The documentation is now available as a PDF.
      • The documentation now includes a full copy of the MathOptInterface documentation to make it easy to link concepts between the docs. (The MathOptInterface documentation has also been significantly improved.)
      • The documentation contains a large number of improvements and clarifications on a range of topics. Thanks to @sshin23, @DilumAluthge, and @jlwether.
      • The documentation is now built with Julia 1.6 instead of 1.0.
      • Various error messages have been improved to be more readable.

      Version 0.21.10 (September 4, 2021)

      Added

      • Added add_NL_expression
      • add_NL_xxx functions now support AffExpr and QuadExpr as terms

      Fixed

      • Fixed a bug in solution_summary
      • Fixed a bug in relax_integrality

      Other

      • Improved error message in lp_sensitivity_report

      Version 0.21.9 (August 1, 2021)

      Added

      • Containers now support arbitrary container types by passing the type to the container keyword and overloading Containers.container.
      • is_valid now supports nonlinear constraints
      • Added unsafe_backend for querying the inner-most optimizer of a JuMP model.
      • Nonlinear parameters now support the plural @NLparameters macro.
      • Containers (for example, DenseAxisArray) can now be used in vector-valued constraints.

      Other

      • Various improvements to the documentation.

      Version 0.21.8 (May 8, 2021)

      Added

      • The @constraint macro is now extendable in the same way as @variable.
      • AffExpr and QuadExpr can now be used in nonlinear macros.

      Fixed

      • Fixed a bug in lp_sensitivity_report.
      • Fixed an inference issue when creating empty SparseAxisArrays.

      Version 0.21.7 (April 12, 2021)

      Added

      • Added primal_feasibility_report, which can be used to check whether a primal point satisfies primal feasibility.
      • Added coefficient, which returns the coefficient associated with a variable in affine and quadratic expressions.
      • Added copy_conflict, which returns the IIS of an infeasible model.
      • Added solution_summary, which returns (and prints) a struct containing a summary of the solution.
      • Allow AbstractVector in vector constraints instead of just Vector.
      • Added latex_formulation(model) which returns an object representing the latex formulation of a model. Use print(latex_formulation(model)) to print the formulation as a string.
      • User-defined functions in nonlinear expressions are now automatically registered to aid quick model prototyping. However, a warning is printed to encourage the manual registration.
      • DenseAxisArray's now support broadcasting over multiple arrays.
      • Container indices can now be iterators of Base.SizeUnknown.

      Fixed

      • Fixed bug in rad2deg and deg2rad in nonlinear expressions.
      • Fixed a MethodError bug in Containers when forcing container type.
      • Allow partial slicing of a DenseAxisArray, resolving an issue from 2014.
      • Fixed a bug printing variable names in IJulia.
      • Ending an IJulia cell with model now prints a summary of the model (like in the REPL) not the latex formulation. Use print(model) to print the latex formulation.
      • Fixed a bug when copying models containing nested arrays.

      Other

      • Tutorials are now part of the documentation, and more refactoring has taken place.
      • Added JuliaFormatter added as a code formatter.
      • Added some precompilation statements to reduce initial latency.
      • Various improvements to error messages to make them more helpful.
      • Improved performance of value(::NonlinearExpression).
      • Improved performance of fix(::VariableRef).

      Version 0.21.6 (January 29, 2021)

      Added

      • Added support for skew symmetric variables via @variable(model, X[1:2, 1:2] in SkewSymmetricMatrixSpace()).
      • lp_sensitivity_report has been added which significantly improves the performance of querying the sensitivity summary of an LP. lp_objective_perturbation_range and lp_rhs_perturbation_range are deprecated.
      • Dual warm-starts are now supported with set_dual_start_value and dual_start_value.
      • (\in<tab>) can now be used in macros instead of = or in.
      • Use haskey(model::Model, key::Symbol) to check if a name key is registered in a model.
      • Added unregister(model::Model, key::Symbol) to unregister a name key from model.
      • Added callback_node_status for use in callbacks.
      • Added print_bridge_graph to visualize the bridging graph generated by MathOptInterface.
      • Improved error message for containers with duplicate indices.

      Fixed

      • Various fixes to pass tests on Julia 1.6.
      • Fixed a bug in the printing of nonlinear expressions in IJulia.
      • Fixed a bug when nonlinear expressions are passed to user-defined functions.
      • Some internal functions that were previously exported are now no longer exported.
      • Fixed a bug when relaxing a fixed binary variable.
      • Fixed a StackOverflowError that occurred when SparseAxisArrays had a large number of elements.
      • Removed an unnecessary type assertion in list_of_constraint_types.
      • Fixed a bug when copying models with registered expressions.

      Other

      • The documentation has been significantly overhauled. It now has distinct sections for the manual, API reference, and examples. The existing examples in /examples have now been moved to /docs/src/examples and rewritten using Literate.jl, and they are now included in the documentation.
      • JuliaFormatter has been applied to most of the codebase. This will continue to roll out over time, as we fix upstream issues in the formatter, and will eventually become compulsory.
      • The root cause of a large number of method invalidations has been resolved.
      • We switched continuous integration from Travis and Appveyor to GitHub Actions.

      Version 0.21.5 (September 18, 2020)

      Fixed

      • Fixed deprecation warnings
      • Throw DimensionMismatch for incompatibly sized functions and sets
      • Unify treatment of keys(x) on JuMP containers

      Version 0.21.4 (September 14, 2020)

      Added

      • Add debug info when adding unsupported constraints
      • Add relax_integrality for solving continuous relaxation
      • Allow querying constraint conflicts

      Fixed

      • Dispatch on Real for MOI.submit
      • Implement copy for CustomSet in tests
      • Don't export private macros
      • Fix invalid assertion in nonlinear
      • Error if constraint has NaN right-hand side
      • Improve speed of tests
      • Lots of work modularizing files in /test
      • Improve line numbers in macro error messages
      • Print nonlinear subexpressions
      • Various documentation updates
      • Dependency updates:
        • Datastructures 0.18
        • MathOptFormat v0.5
        • Prep for MathOptInterface 0.9.15

      Version 0.21.3 (June 18, 2020)

      • Added Special Order Sets (SOS1 and SOS2) to JuMP with default weights to ease the creation of such constraints (#2212).
      • Added functions simplex_iterations, barrier_iterations and node_count (#2201).
      • Added function reduced_cost (#2205).
      • Implemented callback_value for affine and quadratic expressions (#2231).
      • Support MutableArithmetics.Zero in objective and constraints (#2219).
      • Documentation improvements:
        • Mention tutorials in the docs (#2223).
        • Update COIN-OR links (#2242).
        • Explicit link to the documentation of MOI.FileFormats (#2253).
        • Typo fixes (#2261).
      • Containers improvements:
        • Fix Base.map for DenseAxisArray (#2235).
        • Throw BoundsError if number of indices is incorrect for DenseAxisArray and SparseAxisArray (#2240).
      • Extensibility improvements:
        • Implement a set_objective method fallback that redirects to set_objective_sense and set_objective_function (#2247).
        • Add parse_constraint method with arbitrary number of arguments (#2051).
        • Add parse_constraint_expr and parse_constraint_head (#2228).

      Version 0.21.2 (April 2, 2020)

      • Added relative_gap() to access MOI.RelativeGap() attribute (#2199).
      • Documentation fixes:
        • Added link to source for docstrings in the documentation (#2207).
        • Added docstring for @variables macro (#2216).
        • Typo fixes (#2177, #2184, #2182).
      • Implementation of methods for Base functions:
        • Implemented Base.empty! for JuMP.Model (#2198).
        • Implemented Base.conj for JuMP scalar types (#2209).

      Fixed

      • Fixed sum of expression with scalar product in macro (#2178).
      • Fixed writing of nonlinear models to MathOptFormat (#2181).
      • Fixed construction of empty SparseAxisArray (#2179).
      • Fixed constraint with zero function (#2188).

      Version 0.21.1 (Feb 18, 2020)

      • Improved the clarity of the with_optimizer deprecation warning.

      Version 0.21.0 (Feb 16, 2020)

      Breaking

      • Deprecated with_optimizer (#2090, #2084, #2141). You can replace with_optimizer by either nothing, optimizer_with_attributes or a closure:

        • replace with_optimizer(Ipopt.Optimizer) by Ipopt.Optimizer.
        • replace with_optimizer(Ipopt.Optimizer, max_cpu_time=60.0) by optimizer_with_attributes(Ipopt.Optimizer, "max_cpu_time" => 60.0).
        • replace with_optimizer(Gurobi.Optimizer, env) by () -> Gurobi.Optimizer(env).
        • replace with_optimizer(Gurobi.Optimizer, env, Presolve=0) by optimizer_with_attributes(() -> Gurobi.Optimizer(env), "Presolve" => 0).

        alternatively to optimizer_with_attributes, you can also set the attributes separately with set_optimizer_attribute.

      • Renamed set_parameter and set_parameters to set_optimizer_attribute and set_optimizer_attributes (#2150).

      • Broadcast should now be explicit inside macros. @SDconstraint(model, x >= 1) and @constraint(model, x + 1 in SecondOrderCone()) now throw an error instead of broadcasting 1 along the dimension of x (#2107).

      • @SDconstraint(model, x >= 0) is now equivalent to @constraint(model, x in PSDCone()) instead of @constraint(model, (x .- 0) in PSDCone()) (#2107).

      • The macros now create the containers with map instead of for loops, as a consequence, containers created by @expression can now have any element type and containers of constraint references now have concrete element types when possible. This fixes a long-standing issue where @expression could only be used to generate a collection of linear expressions. Now it works for quadratic expressions as well (#2070).

      • Calling deepcopy(::AbstractModel) now throws an error.

      • The constraint name is now printed in the model string (#2108).

      Added

      • Added support for solver-independent and solver-specific callbacks (#2101).
      • Added write_to_file and read_from_file, supported formats are CBF, LP, MathOptFormat, MPS and SDPA (#2114).
      • Added support for complementarity constraints (#2132).
      • Added support for indicator constraints (#2092).
      • Added support for querying multiple solutions with the result keyword (#2100).
      • Added support for constraining variables on creation (#2128).
      • Added method delete that deletes a vector of variables at once if it is supported by the underlying solver (#2135).
      • The arithmetic between JuMP expression has be refactored into the MutableArithmetics package (#2107).
      • Improved error on complex values in NLP (#1978).
      • Added an example of column generation (#2010).

      Fixed

      • Incorrect coefficients generated when using Symmetric variables (#2102)

      Version 0.20.1 (Oct 18, 2019)

      • Add sections on @variables and @constraints in the documentation (#2062).
      • Fixed product of sparse matrices for Julia v1.3 (#2063).
      • Added set_objective_coefficient to modify the coefficient of a linear term of the objective function (#2008).
      • Added set_time_limit_sec, unset_time_limit_sec and time_limit_sec to set and query the time limit for the solver in seconds (#2053).

      Version 0.20.0 (Aug 24, 2019)

      • Documentation updates.
      • Numerous bug fixes.
      • Better error messages (#1977, #1978, #1997, #2017).
      • Performance improvements (#1947, #2032).
      • Added LP sensitivity summary functions lp_objective_perturbation_range and lp_rhs_perturbation_range (#1917).
      • Added functions dual_objective_value, raw_status and set_parameter.
      • Added function set_objective_coefficient to modify the coefficient of a linear term of the objective (#2008).
      • Added functions set_normalized_rhs, normalized_rhs, and add_to_function_constant to modify and get the constant part of a constraint (#1935, #1960).
      • Added functions set_normalized_coefficient and normalized_coefficient to modify and get the coefficient of a linear term of a constraint (#1935, #1960).
      • Numerous other improvements in MOI 0.9, see the NEWS.md file of MOI for more details.

      Version 0.19.2 (June 8, 2019)

      • Fix a bug in derivatives that could arise in models with nested nonlinear subexpressions.

      Version 0.19.1 (May 12, 2019)

      • Usability and performance improvements.
      • Bug fixes.

      Version 0.19.0 (February 15, 2019)

      JuMP 0.19 contains significant breaking changes.

      Breaking

      • JuMP's abstraction layer for communicating with solvers changed from MathProgBase (MPB) to MathOptInterface (MOI). MOI addresses many longstanding design issues. (See @mlubin's slides from JuMP-dev 2018.) JuMP 0.19 is compatible only with solvers that have been updated for MOI. See the installation guide for a list of solvers that have and have not yet been updated.

      • Most solvers have been renamed to PackageName.Optimizer. For example, GurobiSolver() is now Gurobi.Optimizer.

      • Solvers are no longer added to a model via Model(solver = XXX(kwargs...)). Instead use Model(with_optimizer(XXX, kwargs...)). For example, Model(with_optimizer(Gurobi.Optimizer, OutputFlag=0)).

      • JuMP containers (for example, the objects returned by @variable) have been redesigned. Containers.SparseAxisArray replaces JuMPDict, JuMPArray was rewritten (inspired by AxisArrays) and renamed Containers.DenseAxisArray, and you can now request a container type with the container= keyword to the macros. See the corresponding documentation for more details.

      • The statuses returned by solvers have changed. See the possible status values here. The MOI statuses are much richer than the MPB statuses and can be used to distinguish between previously indistinguishable cases (for example, did the solver have a feasible solution when it stopped because of the time limit?).

      • Starting values are separate from result values. Use value to query the value of a variable in a solution. Use start_value and set_start_value to get and set an initial starting point provided to the solver. The solutions from previous solves are no longer automatically set as the starting points for the next solve.

      • The data structures for affine and quadratic expressions AffExpr and QuadExpr have changed. Internally, terms are stored in dictionaries instead of lists. Duplicate coefficients can no longer exist. Accessors and iteration methods have changed.

      • JuMPNLPEvaluator no longer includes the linear and quadratic parts of the model in the evaluation calls. These are now handled separately to allow NLP solvers that support various types of constraints.

      • JuMP solver-independent callbacks have been replaced by solver-specific callbacks. See your favorite solver for more details. (See the note below: No solver-specific callbacks are implemented yet.)

      • The norm() syntax is no longer recognized inside macros. Use the SecondOrderCone() set instead.

      • JuMP no longer performs automatic transformation between special quadratic forms and second-order cone constraints. Support for these constraint classes depends on the solver.

      • The symbols :Min and :Max are no longer used as optimization senses. Instead, JuMP uses the OptimizationSense enum from MathOptInterface. @objective(model, Max, ...), @objective(model, Min, ...), @NLobjective(model, Max, ...), and @objective(model, Min, ...) remain valid, but @objective(m, :Max, ...) is no longer accepted.

      • The sign conventions for duals has changed in some cases for consistency with conic duality (see the documentation). The shadow_price helper method returns duals with signs that match conventional LP interpretations of dual values as sensitivities of the objective value to relaxations of constraints.

      • @constraintref is no longer defined. Instead, create the appropriate container to hold constraint references manually. For example,

        constraints = Dict() # Optionally, specify types for improved performance.
         for i in 1:N
           constraints[i] = @constraint(model, ...)
        -end
      • The lowerbound, upperbound, and basename keyword arguments to the @variable macro have been renamed to lower_bound, upper_bound, and base_name, for consistency with JuMP's new style recommendations.

      • We rely on broadcasting syntax to apply accessors to collections of variables, for example, value.(x) instead of getvalue(x) for collections. (Use value(x) when x is a scalar object.)

      Added

      • Splatting (like f(x...)) is recognized in restricted settings in nonlinear expressions.

      • Support for deleting constraints and variables.

      • The documentation has been completely rewritten using docstrings and Documenter.

      • Support for modeling mixed conic and quadratic models (for example, conic models with quadratic objectives and bi-linear matrix inequalities).

      • Significantly improved support for modeling new types of constraints and for extending JuMP's macros.

      • Support for providing dual warm starts.

      • Improved support for accessing solver-specific attributes (for example, the irreducible inconsistent subsystem).

      • Explicit control of whether symmetry-enforcing constraints are added to PSD constraints.

      • Support for modeling exponential cones.

      • Significant improvements in internal code quality and testing.

      • Style and naming guidelines.

      • Direct mode and manual mode provide explicit control over when copies of a model are stored or regenerated. See the corresponding documentation.

      Regressions

      There are known regressions from JuMP 0.18 that will be addressed in a future release (0.19.x or later):

      • Performance regressions in model generation (issue). Please file an issue anyway if you notice a significant performance regression. We have plans to address a number of performance issues, but we might not be aware of all of them.

      • Fast incremental NLP solves are not yet reimplemented (issue).

      • We do not yet have an implementation of solver-specific callbacks.

      • The column generation syntax in @variable has been removed (that is, the objective, coefficients, and inconstraints keyword arguments). Support for column generation will be re-introduced in a future release.

      • The ability to solve the continuous relaxation (that is, via solve(model; relaxation = true)) is not yet reimplemented (issue).

      Version 0.18.5 (December 1, 2018)

      • Support views in some derivative evaluation functions.
      • Improved compatibility with PackageCompiler.

      Version 0.18.4 (October 8, 2018)

      • Fix a bug in model printing on Julia 0.7 and 1.0.

      Version 0.18.3 (October 1, 2018)

      • Add support for Julia v1.0 (Thanks @ExpandingMan)
      • Fix matrix expressions with quadratic functions (#1508)

      Version 0.18.2 (June 10, 2018)

      • Fix a bug in second-order derivatives when expressions are present (#1319)
      • Fix a bug in @constraintref (#1330)

      Version 0.18.1 (April 9, 2018)

      • Fix for nested tuple destructuring (#1193)
      • Preserve internal model when relaxation=true (#1209)
      • Minor bug fixes and updates for example

      Version 0.18.0 (July 27, 2017)

      • Drop support for Julia 0.5.
      • Update for ForwardDiff 0.5.
      • Minor bug fixes.

      Version 0.17.1 (June 9, 2017)

      • Use of constructconstraint! in @SDconstraint.
      • Minor bug fixes.

      Version 0.17.0 (May 27, 2017)

      • Breaking change: Mixing quadratic and conic constraints is no longer supported.
      • Breaking change: The getvariable and getconstraint functions are replaced by indexing on the corresponding symbol. For instance, to access the variable with name x, one should now write m[:x] instead of getvariable(m, :x). As a consequence, creating a variable and constraint with the same name now triggers a warning, and accessing one of them afterwards throws an error. This change is breaking only in the latter case.
      • Addition of the getobjectivebound function that mirrors the functionality of the MathProgBase getobjbound function except that it takes into account transformations performed by JuMP.
      • Minor bug fixes.

      The following changes are primarily of interest to developers of JuMP extensions:

      • The new syntax @constraint(model, expr in Cone) creates the constraint ensuring that expr is inside Cone. The Cone argument is passed to constructconstraint! which enables the call to the dispatched to an extension.
      • The @variable macro now calls constructvariable! instead of directly calling the Variable constructor. Extra arguments and keyword arguments passed to @variable are passed to constructvariable! which enables the call to be dispatched to an extension.
      • Refactor the internal function conicdata (used build the MathProgBase conic model) into smaller sub-functions to make these parts reusable by extensions.

      Version 0.16.2 (March 28, 2017)

      • Minor bug fixes and printing tweaks
      • Address deprecation warnings for Julia 0.6

      Version 0.16.1 (March 7, 2017)

      • Better support for AbstractArray in JuMP (Thanks @tkoolen)
      • Minor bug fixes

      Version 0.16.0 (February 23, 2017)

      • Breaking change: JuMP no longer has a mechanism for selecting solvers by default (the previous mechanism was flawed and incompatible with Julia 0.6). Not specifying a solver before calling solve() will result in an error.
      • Breaking change: User-defined functions are no longer global. The first argument to JuMP.register is now a JuMP Model object within whose scope the function will be registered. Calling JuMP.register without a Model now produces an error.
      • Breaking change: Use the new JuMP.fix method to fix a variable to a value or to update the value to which a variable is fixed. Calling setvalue on a fixed variable now results in an error in order to avoid silent behavior changes. (Thanks @joaquimg)
      • Nonlinear expressions now print out similarly to linear/quadratic expressions (useful for debugging!)
      • New category keyword to @variable. Used for specifying categories of anonymous variables.
      • Compatibility with Julia 0.6-dev.
      • Minor fixes and improvements (Thanks @cossio, @ccoffrin, @blegat)

      Version 0.15.1 (January 31, 2017)

      • Bugfix for @LinearConstraints and friends

      Version 0.15.0 (December 22, 2016)

      • Julia 0.5.0 is the minimum required version for this release.
      • Document support for BARON solver
      • Enable info callbacks in more states than before, for example, for recording solutions. New when argument to addinfocallback (#814, thanks @yeesian)
      • Improved support for anonymous variables. This includes new warnings for potentially confusing use of the traditional non-anonymous syntax:
        • When multiple variables in a model are given the same name
        • When non-symbols are used as names, for example, @variable(m, x[1][1:N])
      • Improvements in iterating over JuMP containers (#836, thanks @IssamT)
      • Support for writing variable names in .lp file output (Thanks @leethargo)
      • Support for querying duals to SDP problems (Thanks @blegat)
      • The comprehension syntax with curly braces sum{}, prod{}, and norm2{} has been deprecated in favor of Julia's native comprehension syntax sum(), prod() and norm() as previously announced. (For early adopters of the new syntax, norm2() was renamed to norm() without deprecation.)
      • Unit tests rewritten to use Base.Test instead of FactCheck
      • Improved support for operations with matrices of JuMP types (Thanks @ExpandingMan)
      • The syntax to halt a solver from inside a callback has changed from throw(CallbackAbort()) to return JuMP.StopTheSolver
      • Minor bug fixes

      Version 0.14.2 (December 12, 2016)

      • Allow singleton anonymous variables (includes bugfix)

      Version 0.14.1 (September 12, 2016)

      • More consistent handling of states in informational callbacks, includes a new when parameter to addinfocallback for specifying in which state an informational callback should be called.

      Version 0.14.0 (August 7, 2016)

      • Compatibility with Julia 0.5 and ForwardDiff 0.2
      • Support for "anonymous" variables, constraints, expressions, and parameters, for example, x = @variable(m, [1:N]) instead of @variable(m, x[1:N])
      • Support for retrieving constraints from a model by name via getconstraint
      • @NLconstraint now returns constraint references (as expected).
      • Support for vectorized expressions within lazy constraints
      • On Julia 0.5, parse new comprehension syntax sum(x[i] for i in 1:N if isodd(i)) instead of sum{ x[i], i in 1:N; isodd(i) }. The old syntax with curly braces will be deprecated in JuMP 0.15.
      • Now possible to provide nonlinear expressions as "raw" Julia Expr objects instead of using JuMP's nonlinear macros. This input format is useful for programmatically generated expressions.
      • s/Mathematical Programming/Mathematical Optimization/
      • Support for local cuts (Thanks to @madanim, Mehdi Madani)
      • Document Xpress interface developed by @joaquimg, Joaquim Dias Garcia
      • Minor bug and deprecation fixes (Thanks @odow, @jrevels)

      Version 0.13.2 (May 16, 2016)

      • Compatibility update for MathProgBase

      Version 0.13.1 (May 3, 2016)

      • Fix broken deprecation for registerNLfunction.

      Version 0.13.0 (April 29, 2016)

      • Most exported methods and macros have been renamed to avoid camelCase. See the list of changes here. There is a 1-1 mapping from the old names to the new, and it is safe to simply replace the names to update existing models.
      • Specify variable lower/upper bounds in @variable using the lowerbound and upperbound keyword arguments.
      • Change name printed for variable using the basename keyword argument to @variable.
      • New @variables macro allows multi-line declaration of groups of variables.
      • A number of solver methods previously available only through MathProgBase are now exposed directly in JuMP. The fix was recorded live.
      • Compatibility fixes with Julia 0.5.
      • The "end" indexing syntax is no longer supported within JuMPArrays which do not use 1-based indexing until upstream issues are resolved, see here.

      Version 0.12.2 (March 9, 2016)

      • Small fixes for nonlinear optimization

      Version 0.12.1 (March 1, 2016)

      • Fix a regression in slicing for JuMPArrays (when not using 1-based indexing)

      Version 0.12.0 (February 27, 2016)

      • The automatic differentiation functionality has been completely rewritten with a number of user-facing changes:
        • @defExpr and @defNLExpr now take the model as the first argument. The previous one-argument version of @defExpr is deprecated; all expressions should be named. For example, replace @defExpr(2x+y) with @defExpr(jump_model, my_expr, 2x+y).
        • JuMP no longer uses Julia's variable binding rules for efficiently re-solving a sequence of nonlinear models. Instead, we have introduced nonlinear parameters. This is a breaking change, so we have added a warning message when we detect models that may depend on the old behavior.
        • Support for user-defined functions integrated within nonlinear JuMP expressions.
      • Replaced iteration over AffExpr with Number-like scalar iteration; previous iteration behavior is now available via linearterms(::AffExpr).
      • Stopping the solver via throw(CallbackAbort()) from a callback no longer triggers an exception. Instead, solve() returns UserLimit status.
      • getDual() now works for conic problems (Thanks @emreyamangil.)

      Version 0.11.3 (February 4, 2016)

      • Bug-fix for problems with quadratic objectives and semidefinite constraints

      Version 0.11.2 (January 14, 2016)

      • Compatibility update for Mosek

      Version 0.11.1 (December 1, 2015)

      • Remove usage of @compat in tests.
      • Fix updating quadratic objectives for nonlinear models.

      Version 0.11.0 (November 30, 2015)

      • Julia 0.4.0 is the minimum required version for this release.
      • Fix for scoping semantics of index variables in sum{}. Index variables no longer leak into the surrounding scope.
      • Addition of the solve(m::Model, relaxation=true) keyword argument to solve the standard continuous relaxation of model m
      • The getConstraintBounds() method allows access to the lower and upper bounds of all constraints in a (nonlinear) model.
      • Update for breaking changes in MathProgBase

      Version 0.10.3 (November 20, 2015)

      • Fix a rare error when parsing quadratic expressions
      • Fix Variable() constructor with default arguments
      • Detect unrecognized keywords in solve()

      Version 0.10.2 (September 28, 2015)

      • Fix for deprecation warnings

      Version 0.10.1 (September 3, 2015)

      • Fixes for ambiguity warnings.
      • Fix for breaking change in precompilation syntax in Julia 0.4-pre

      Version 0.10.0 (August 31, 2015)

      • Support (on Julia 0.4 and later) for conditions in indexing @defVar and @addConstraint constructs, for example, @defVar(m, x[i=1:5,j=1:5; i+j >= 3])
      • Support for vectorized operations on Variables and expressions. See the documentation for details.
      • New getVar() method to access variables in a model by name
      • Support for semidefinite programming.
      • Dual solutions are now available for general nonlinear problems. You may call getDual on a reference object for a nonlinear constraint, and getDual on a variable object for Lagrange multipliers from active bounds.
      • Introduce warnings for two common performance traps: too many calls to getValue() on a collection of variables and use of the + operator in a loop to sum expressions.
      • Second-order cone constraints can be written directly with the norm() and norm2{} syntax.
      • Implement MathProgBase interface for querying Hessian-vector products.
      • Iteration over JuMPContainers is deprecated; instead, use the keys and values functions, and zip(keys(d),values(d)) for the old behavior.
      • @defVar returns Array{Variable,N} when each of N index sets are of the form 1:nᵢ.
      • Module precompilation: on Julia 0.4 and later, using JuMP is now much faster.

      Version 0.9.3 (August 11, 2015)

      • Fixes for FactCheck testing on julia v0.4.

      Version 0.9.2 (June 27, 2015)

      • Fix bug in @addConstraints.

      Version 0.9.1 (April 25, 2015)

      • Fix for Julia 0.4-dev.
      • Small infrastructure improvements for extensions.

      Version 0.9.0 (April 18, 2015)

      • Comparison operators for constructing constraints (for example, 2x >= 1) have been deprecated. Instead, construct the constraints explicitly in the @addConstraint macro to add them to the model, or in the @LinearConstraint macro to create a stand-alone linear constraint instance.
      • getValue() method implemented to compute the value of a nonlinear subexpression
      • JuMP is now released under the Mozilla Public License version 2.0 (was previously LGPL). MPL is a copyleft license which is less restrictive than LGPL, especially for embedding JuMP within other applications.
      • A number of performance improvements in ReverseDiffSparse for computing derivatives.
      • MathProgBase.getsolvetime(m) now returns the solution time reported by the solver, if available. (Thanks @odow, Oscar Dowson)
      • Formatting fix for LP format output. (Thanks @sbebo, Leonardo Taccari).

      Version 0.8.0 (February 17, 2015)

      • Nonlinear subexpressions now supported with the @defNLExpr macro.
      • SCS supported for solving second-order conic problems.
      • setXXXCallback family deprecated in favor of addXXXCallback.
      • Multiple callbacks of the same type can be registered.
      • Added support for informational callbacks via addInfoCallback.
      • A CallbackAbort exception can be thrown from callback to safely exit optimization.

      Version 0.7.4 (February 4, 2015)

      • Reduced costs and linear constraint duals are now accessible when quadratic constraints are present.
      • Two-sided nonlinear constraints are supported.
      • Methods for accessing the number of variables and constraints in a model are renamed.
      • New default procedure for setting initial values in nonlinear optimization: project zero onto the variable bounds.
      • Small bug fixes.

      Version 0.7.3 (January 14, 2015)

      • Fix a method ambiguity conflict with Compose.jl (cosmetic fix)

      Version 0.7.2 (January 9, 2015)

      • Fix a bug in sum(::JuMPDict)
      • Added the setCategory function to change a variables category (for example, continuous or binary)

      after construction, and getCategory to retrieve the variable category.

      Version 0.7.1 (January 2, 2015)

      • Fix a bug in parsing linear expressions in macros. Affects only Julia 0.4 and later.

      Version 0.7.0 (December 29, 2014)

      Linear/quadratic/conic programming

      • Breaking change: The syntax for column-wise model generation has been changed to use keyword arguments in @defVar.
      • On Julia 0.4 and later, variables and coefficients may be multiplied in any order within macros. That is, variable*coefficient is now valid syntax.
      • ECOS supported for solving second-order conic problems.

      Nonlinear programming

      • Support for skipping model generation when solving a sequence of nonlinear models with changing data.
      • Fix a memory leak when solving a sequence of nonlinear models.
      • The @addNLConstraint macro now supports the three-argument version to define sets of nonlinear constraints.
      • KNITRO supported as a nonlinear solver.
      • Speed improvements for model generation.
      • The @addNLConstraints macro supports adding multiple (groups of) constraints at once. Syntax is similar to @addConstraints.
      • Discrete variables allowed in nonlinear problems for solvers which support them (currently only KNITRO).

      General

      • Starting values for variables may now be specified with @defVar(m, x, start=value).
      • The setSolver function allows users to change the solver subsequent to model creation.
      • Support for "fixed" variables via the @defVar(m, x == 1) syntax.
      • Unit tests rewritten to use FactCheck.jl, improved testing across solvers.

      Version 0.6.3 (October 19, 2014)

      • Fix a bug in multiplying two AffExpr objects.

      Version 0.6.2 (October 11, 2014)

      • Further improvements and bug fixes for printing.
      • Fixed a bug in @defExpr.
      • Support for accessing expression graphs through the MathProgBase NLP interface.

      Version 0.6.1 (September 19, 2014)

      • Improvements and bug fixes for printing.

      Version 0.6.0 (September 9, 2014)

      • Julia 0.3.0 is the minimum required version for this release.
      • buildInternalModel(m::Model) added to build solver-level model in memory without optimizing.
      • Deprecate load_model_only keyword argument to solve.
      • Add groups of constraints with @addConstraints macro.
      • Unicode operators now supported, including for sum, for prod, and /
      • Quadratic constraints supported in @addConstraint macro.
      • Quadratic objectives supported in @setObjective macro.
      • MathProgBase solver-independent interface replaces Ipopt-specific interface for nonlinear problems
        • Breaking change: IpoptOptions no longer supported to specify solver options, use m = Model(solver=IpoptSolver(options...)) instead.
      • New solver interfaces: ECOS, NLopt, and nonlinear support for MOSEK
      • New option to control whether the lazy constraint callback is executed at each node in the B&B tree or just when feasible solutions are found
      • Add support for semicontinuous and semi-integer variables for those solvers that support them.
      • Add support for index dependencies (for example, triangular indexing) in @defVar, @addConstraint, and @defExpr (for example, @defVar(m, x[i=1:10,j=i:10])).
        • This required some changes to the internal structure of JuMP containers, which may break code that explicitly stored JuMPDict objects.

      Version 0.5.8 (September 24, 2014)

      • Fix a bug with specifying solvers (affects Julia 0.2 only)

      Version 0.5.7 (September 5, 2014)

      • Fix a bug in printing models

      Version 0.5.6 (September 2, 2014)

      • Add support for semicontinuous and semi-integer variables for those solvers that support them.
        • Breaking change: Syntax for Variable() constructor has changed (use of this interface remains discouraged)
      • Update for breaking changes in MathProgBase

      Version 0.5.5 (July 6, 2014)

      • Fix bug with problem modification: adding variables that did not appear in existing constraints or objective.

      Version 0.5.4 (June 19, 2014)

      • Update for breaking change in MathProgBase which reduces loading times for using JuMP
      • Fix error when MIPs not solved to optimality

      Version 0.5.3 (May 21, 2014)

      • Update for breaking change in ReverseDiffSparse

      Version 0.5.2 (May 9, 2014)

      • Fix compatibility with Julia 0.3 prerelease

      Version 0.5.1 (May 5, 2014)

      • Fix a bug in coefficient handling inside lazy constraints and user cuts

      Version 0.5.0 (May 2, 2014)

      • Support for nonlinear optimization with exact, sparse second-order derivatives automatically computed. Ipopt is currently the only solver supported.
      • getValue for AffExpr and QuadExpr
      • Breaking change: getSolverModel replaced by getInternalModel, which returns the internal MathProgBase-level model
      • Groups of constraints can be specified with @addConstraint (see documentation for details). This is not a breaking change.
      • dot(::JuMPDict{Variable},::JuMPDict{Variable}) now returns the corresponding quadratic expression.

      Version 0.4.1 (March 24, 2014)

      • Fix bug where change in objective sense was ignored when re-solving a model.
      • Fix issue with handling zero coefficients in AffExpr.

      Version 0.4.0 (March 10, 2014)

      • Support for SOS1 and SOS2 constraints.
      • Solver-independent callback for user heuristics.
      • dot and sum implemented for JuMPDict objects. Now you can say @addConstraint(m, dot(a,x) <= b).
      • Developers: support for extensions to JuMP. See definition of Model in src/JuMP.jl for more details.
      • Option to construct the low-level model before optimizing.

      Version 0.3.2 (February 17, 2014)

      • Improved model printing
        • Preliminary support for IJulia output

      Version 0.3.1 (January 30, 2014)

      • Documentation updates
      • Support for MOSEK
      • CPLEXLink renamed to CPLEX

      Version 0.3.0 (January 21, 2014)

      • Unbounded/infeasibility rays: getValue() will return the corresponding components of an unbounded ray when a model is unbounded, if supported by the selected solver. getDual() will return an infeasibility ray (Farkas proof) if a model is infeasible and the selected solver supports this feature.
      • Solver-independent callbacks for user generated cuts.
      • Use new interface for solver-independent QCQP.
      • setlazycallback renamed to setLazyCallback for consistency.

      Version 0.2.0 (December 15, 2013)

      Breaking

      • Objective sense is specified in setObjective instead of in the Model constructor.
      • lpsolver and mipsolver merged into single solver option.

      Added

      • Problem modification with efficient LP restarts and MIP warm-starts.
      • Relatedly, column-wise modeling now supported.
      • Solver-independent callbacks supported. Currently we support only a "lazy constraint" callback, which works with Gurobi, CPLEX, and GLPK. More callbacks coming soon.

      Version 0.1.2 (November 16, 2013)

      • Bug fixes for printing, improved error messages.
      • Allow AffExpr to be used in macros; for example, ex = y + z; @addConstraint(m, x + 2*ex <= 3)

      Version 0.1.1 (October 23, 2013)

      • Update for solver specification API changes in MathProgBase.

      Version 0.1.0 (October 3, 2013)

      • Initial public release.
      +end
    • The lowerbound, upperbound, and basename keyword arguments to the @variable macro have been renamed to lower_bound, upper_bound, and base_name, for consistency with JuMP's new style recommendations.

    • We rely on broadcasting syntax to apply accessors to collections of variables, for example, value.(x) instead of getvalue(x) for collections. (Use value(x) when x is a scalar object.)

    Added

    • Splatting (like f(x...)) is recognized in restricted settings in nonlinear expressions.

    • Support for deleting constraints and variables.

    • The documentation has been completely rewritten using docstrings and Documenter.

    • Support for modeling mixed conic and quadratic models (for example, conic models with quadratic objectives and bi-linear matrix inequalities).

    • Significantly improved support for modeling new types of constraints and for extending JuMP's macros.

    • Support for providing dual warm starts.

    • Improved support for accessing solver-specific attributes (for example, the irreducible inconsistent subsystem).

    • Explicit control of whether symmetry-enforcing constraints are added to PSD constraints.

    • Support for modeling exponential cones.

    • Significant improvements in internal code quality and testing.

    • Style and naming guidelines.

    • Direct mode and manual mode provide explicit control over when copies of a model are stored or regenerated. See the corresponding documentation.

    Regressions

    There are known regressions from JuMP 0.18 that will be addressed in a future release (0.19.x or later):

    • Performance regressions in model generation (issue). Please file an issue anyway if you notice a significant performance regression. We have plans to address a number of performance issues, but we might not be aware of all of them.

    • Fast incremental NLP solves are not yet reimplemented (issue).

    • We do not yet have an implementation of solver-specific callbacks.

    • The column generation syntax in @variable has been removed (that is, the objective, coefficients, and inconstraints keyword arguments). Support for column generation will be re-introduced in a future release.

    • The ability to solve the continuous relaxation (that is, via solve(model; relaxation = true)) is not yet reimplemented (issue).

    Version 0.18.5 (December 1, 2018)

    • Support views in some derivative evaluation functions.
    • Improved compatibility with PackageCompiler.

    Version 0.18.4 (October 8, 2018)

    • Fix a bug in model printing on Julia 0.7 and 1.0.

    Version 0.18.3 (October 1, 2018)

    • Add support for Julia v1.0 (Thanks @ExpandingMan)
    • Fix matrix expressions with quadratic functions (#1508)

    Version 0.18.2 (June 10, 2018)

    • Fix a bug in second-order derivatives when expressions are present (#1319)
    • Fix a bug in @constraintref (#1330)

    Version 0.18.1 (April 9, 2018)

    • Fix for nested tuple destructuring (#1193)
    • Preserve internal model when relaxation=true (#1209)
    • Minor bug fixes and updates for example

    Version 0.18.0 (July 27, 2017)

    • Drop support for Julia 0.5.
    • Update for ForwardDiff 0.5.
    • Minor bug fixes.

    Version 0.17.1 (June 9, 2017)

    • Use of constructconstraint! in @SDconstraint.
    • Minor bug fixes.

    Version 0.17.0 (May 27, 2017)

    • Breaking change: Mixing quadratic and conic constraints is no longer supported.
    • Breaking change: The getvariable and getconstraint functions are replaced by indexing on the corresponding symbol. For instance, to access the variable with name x, one should now write m[:x] instead of getvariable(m, :x). As a consequence, creating a variable and constraint with the same name now triggers a warning, and accessing one of them afterwards throws an error. This change is breaking only in the latter case.
    • Addition of the getobjectivebound function that mirrors the functionality of the MathProgBase getobjbound function except that it takes into account transformations performed by JuMP.
    • Minor bug fixes.

    The following changes are primarily of interest to developers of JuMP extensions:

    • The new syntax @constraint(model, expr in Cone) creates the constraint ensuring that expr is inside Cone. The Cone argument is passed to constructconstraint! which enables the call to the dispatched to an extension.
    • The @variable macro now calls constructvariable! instead of directly calling the Variable constructor. Extra arguments and keyword arguments passed to @variable are passed to constructvariable! which enables the call to be dispatched to an extension.
    • Refactor the internal function conicdata (used build the MathProgBase conic model) into smaller sub-functions to make these parts reusable by extensions.

    Version 0.16.2 (March 28, 2017)

    • Minor bug fixes and printing tweaks
    • Address deprecation warnings for Julia 0.6

    Version 0.16.1 (March 7, 2017)

    • Better support for AbstractArray in JuMP (Thanks @tkoolen)
    • Minor bug fixes

    Version 0.16.0 (February 23, 2017)

    • Breaking change: JuMP no longer has a mechanism for selecting solvers by default (the previous mechanism was flawed and incompatible with Julia 0.6). Not specifying a solver before calling solve() will result in an error.
    • Breaking change: User-defined functions are no longer global. The first argument to JuMP.register is now a JuMP Model object within whose scope the function will be registered. Calling JuMP.register without a Model now produces an error.
    • Breaking change: Use the new JuMP.fix method to fix a variable to a value or to update the value to which a variable is fixed. Calling setvalue on a fixed variable now results in an error in order to avoid silent behavior changes. (Thanks @joaquimg)
    • Nonlinear expressions now print out similarly to linear/quadratic expressions (useful for debugging!)
    • New category keyword to @variable. Used for specifying categories of anonymous variables.
    • Compatibility with Julia 0.6-dev.
    • Minor fixes and improvements (Thanks @cossio, @ccoffrin, @blegat)

    Version 0.15.1 (January 31, 2017)

    • Bugfix for @LinearConstraints and friends

    Version 0.15.0 (December 22, 2016)

    • Julia 0.5.0 is the minimum required version for this release.
    • Document support for BARON solver
    • Enable info callbacks in more states than before, for example, for recording solutions. New when argument to addinfocallback (#814, thanks @yeesian)
    • Improved support for anonymous variables. This includes new warnings for potentially confusing use of the traditional non-anonymous syntax:
      • When multiple variables in a model are given the same name
      • When non-symbols are used as names, for example, @variable(m, x[1][1:N])
    • Improvements in iterating over JuMP containers (#836, thanks @IssamT)
    • Support for writing variable names in .lp file output (Thanks @leethargo)
    • Support for querying duals to SDP problems (Thanks @blegat)
    • The comprehension syntax with curly braces sum{}, prod{}, and norm2{} has been deprecated in favor of Julia's native comprehension syntax sum(), prod() and norm() as previously announced. (For early adopters of the new syntax, norm2() was renamed to norm() without deprecation.)
    • Unit tests rewritten to use Base.Test instead of FactCheck
    • Improved support for operations with matrices of JuMP types (Thanks @ExpandingMan)
    • The syntax to halt a solver from inside a callback has changed from throw(CallbackAbort()) to return JuMP.StopTheSolver
    • Minor bug fixes

    Version 0.14.2 (December 12, 2016)

    • Allow singleton anonymous variables (includes bugfix)

    Version 0.14.1 (September 12, 2016)

    • More consistent handling of states in informational callbacks, includes a new when parameter to addinfocallback for specifying in which state an informational callback should be called.

    Version 0.14.0 (August 7, 2016)

    • Compatibility with Julia 0.5 and ForwardDiff 0.2
    • Support for "anonymous" variables, constraints, expressions, and parameters, for example, x = @variable(m, [1:N]) instead of @variable(m, x[1:N])
    • Support for retrieving constraints from a model by name via getconstraint
    • @NLconstraint now returns constraint references (as expected).
    • Support for vectorized expressions within lazy constraints
    • On Julia 0.5, parse new comprehension syntax sum(x[i] for i in 1:N if isodd(i)) instead of sum{ x[i], i in 1:N; isodd(i) }. The old syntax with curly braces will be deprecated in JuMP 0.15.
    • Now possible to provide nonlinear expressions as "raw" Julia Expr objects instead of using JuMP's nonlinear macros. This input format is useful for programmatically generated expressions.
    • s/Mathematical Programming/Mathematical Optimization/
    • Support for local cuts (Thanks to @madanim, Mehdi Madani)
    • Document Xpress interface developed by @joaquimg, Joaquim Dias Garcia
    • Minor bug and deprecation fixes (Thanks @odow, @jrevels)

    Version 0.13.2 (May 16, 2016)

    • Compatibility update for MathProgBase

    Version 0.13.1 (May 3, 2016)

    • Fix broken deprecation for registerNLfunction.

    Version 0.13.0 (April 29, 2016)

    • Most exported methods and macros have been renamed to avoid camelCase. See the list of changes here. There is a 1-1 mapping from the old names to the new, and it is safe to simply replace the names to update existing models.
    • Specify variable lower/upper bounds in @variable using the lowerbound and upperbound keyword arguments.
    • Change name printed for variable using the basename keyword argument to @variable.
    • New @variables macro allows multi-line declaration of groups of variables.
    • A number of solver methods previously available only through MathProgBase are now exposed directly in JuMP. The fix was recorded live.
    • Compatibility fixes with Julia 0.5.
    • The "end" indexing syntax is no longer supported within JuMPArrays which do not use 1-based indexing until upstream issues are resolved, see here.

    Version 0.12.2 (March 9, 2016)

    • Small fixes for nonlinear optimization

    Version 0.12.1 (March 1, 2016)

    • Fix a regression in slicing for JuMPArrays (when not using 1-based indexing)

    Version 0.12.0 (February 27, 2016)

    • The automatic differentiation functionality has been completely rewritten with a number of user-facing changes:
      • @defExpr and @defNLExpr now take the model as the first argument. The previous one-argument version of @defExpr is deprecated; all expressions should be named. For example, replace @defExpr(2x+y) with @defExpr(jump_model, my_expr, 2x+y).
      • JuMP no longer uses Julia's variable binding rules for efficiently re-solving a sequence of nonlinear models. Instead, we have introduced nonlinear parameters. This is a breaking change, so we have added a warning message when we detect models that may depend on the old behavior.
      • Support for user-defined functions integrated within nonlinear JuMP expressions.
    • Replaced iteration over AffExpr with Number-like scalar iteration; previous iteration behavior is now available via linearterms(::AffExpr).
    • Stopping the solver via throw(CallbackAbort()) from a callback no longer triggers an exception. Instead, solve() returns UserLimit status.
    • getDual() now works for conic problems (Thanks @emreyamangil.)

    Version 0.11.3 (February 4, 2016)

    • Bug-fix for problems with quadratic objectives and semidefinite constraints

    Version 0.11.2 (January 14, 2016)

    • Compatibility update for Mosek

    Version 0.11.1 (December 1, 2015)

    • Remove usage of @compat in tests.
    • Fix updating quadratic objectives for nonlinear models.

    Version 0.11.0 (November 30, 2015)

    • Julia 0.4.0 is the minimum required version for this release.
    • Fix for scoping semantics of index variables in sum{}. Index variables no longer leak into the surrounding scope.
    • Addition of the solve(m::Model, relaxation=true) keyword argument to solve the standard continuous relaxation of model m
    • The getConstraintBounds() method allows access to the lower and upper bounds of all constraints in a (nonlinear) model.
    • Update for breaking changes in MathProgBase

    Version 0.10.3 (November 20, 2015)

    • Fix a rare error when parsing quadratic expressions
    • Fix Variable() constructor with default arguments
    • Detect unrecognized keywords in solve()

    Version 0.10.2 (September 28, 2015)

    • Fix for deprecation warnings

    Version 0.10.1 (September 3, 2015)

    • Fixes for ambiguity warnings.
    • Fix for breaking change in precompilation syntax in Julia 0.4-pre

    Version 0.10.0 (August 31, 2015)

    • Support (on Julia 0.4 and later) for conditions in indexing @defVar and @addConstraint constructs, for example, @defVar(m, x[i=1:5,j=1:5; i+j >= 3])
    • Support for vectorized operations on Variables and expressions. See the documentation for details.
    • New getVar() method to access variables in a model by name
    • Support for semidefinite programming.
    • Dual solutions are now available for general nonlinear problems. You may call getDual on a reference object for a nonlinear constraint, and getDual on a variable object for Lagrange multipliers from active bounds.
    • Introduce warnings for two common performance traps: too many calls to getValue() on a collection of variables and use of the + operator in a loop to sum expressions.
    • Second-order cone constraints can be written directly with the norm() and norm2{} syntax.
    • Implement MathProgBase interface for querying Hessian-vector products.
    • Iteration over JuMPContainers is deprecated; instead, use the keys and values functions, and zip(keys(d),values(d)) for the old behavior.
    • @defVar returns Array{Variable,N} when each of N index sets are of the form 1:nᵢ.
    • Module precompilation: on Julia 0.4 and later, using JuMP is now much faster.

    Version 0.9.3 (August 11, 2015)

    • Fixes for FactCheck testing on julia v0.4.

    Version 0.9.2 (June 27, 2015)

    • Fix bug in @addConstraints.

    Version 0.9.1 (April 25, 2015)

    • Fix for Julia 0.4-dev.
    • Small infrastructure improvements for extensions.

    Version 0.9.0 (April 18, 2015)

    • Comparison operators for constructing constraints (for example, 2x >= 1) have been deprecated. Instead, construct the constraints explicitly in the @addConstraint macro to add them to the model, or in the @LinearConstraint macro to create a stand-alone linear constraint instance.
    • getValue() method implemented to compute the value of a nonlinear subexpression
    • JuMP is now released under the Mozilla Public License version 2.0 (was previously LGPL). MPL is a copyleft license which is less restrictive than LGPL, especially for embedding JuMP within other applications.
    • A number of performance improvements in ReverseDiffSparse for computing derivatives.
    • MathProgBase.getsolvetime(m) now returns the solution time reported by the solver, if available. (Thanks @odow, Oscar Dowson)
    • Formatting fix for LP format output. (Thanks @sbebo, Leonardo Taccari).

    Version 0.8.0 (February 17, 2015)

    • Nonlinear subexpressions now supported with the @defNLExpr macro.
    • SCS supported for solving second-order conic problems.
    • setXXXCallback family deprecated in favor of addXXXCallback.
    • Multiple callbacks of the same type can be registered.
    • Added support for informational callbacks via addInfoCallback.
    • A CallbackAbort exception can be thrown from callback to safely exit optimization.

    Version 0.7.4 (February 4, 2015)

    • Reduced costs and linear constraint duals are now accessible when quadratic constraints are present.
    • Two-sided nonlinear constraints are supported.
    • Methods for accessing the number of variables and constraints in a model are renamed.
    • New default procedure for setting initial values in nonlinear optimization: project zero onto the variable bounds.
    • Small bug fixes.

    Version 0.7.3 (January 14, 2015)

    • Fix a method ambiguity conflict with Compose.jl (cosmetic fix)

    Version 0.7.2 (January 9, 2015)

    • Fix a bug in sum(::JuMPDict)
    • Added the setCategory function to change a variables category (for example, continuous or binary)

    after construction, and getCategory to retrieve the variable category.

    Version 0.7.1 (January 2, 2015)

    • Fix a bug in parsing linear expressions in macros. Affects only Julia 0.4 and later.

    Version 0.7.0 (December 29, 2014)

    Linear/quadratic/conic programming

    • Breaking change: The syntax for column-wise model generation has been changed to use keyword arguments in @defVar.
    • On Julia 0.4 and later, variables and coefficients may be multiplied in any order within macros. That is, variable*coefficient is now valid syntax.
    • ECOS supported for solving second-order conic problems.

    Nonlinear programming

    • Support for skipping model generation when solving a sequence of nonlinear models with changing data.
    • Fix a memory leak when solving a sequence of nonlinear models.
    • The @addNLConstraint macro now supports the three-argument version to define sets of nonlinear constraints.
    • KNITRO supported as a nonlinear solver.
    • Speed improvements for model generation.
    • The @addNLConstraints macro supports adding multiple (groups of) constraints at once. Syntax is similar to @addConstraints.
    • Discrete variables allowed in nonlinear problems for solvers which support them (currently only KNITRO).

    General

    • Starting values for variables may now be specified with @defVar(m, x, start=value).
    • The setSolver function allows users to change the solver subsequent to model creation.
    • Support for "fixed" variables via the @defVar(m, x == 1) syntax.
    • Unit tests rewritten to use FactCheck.jl, improved testing across solvers.

    Version 0.6.3 (October 19, 2014)

    • Fix a bug in multiplying two AffExpr objects.

    Version 0.6.2 (October 11, 2014)

    • Further improvements and bug fixes for printing.
    • Fixed a bug in @defExpr.
    • Support for accessing expression graphs through the MathProgBase NLP interface.

    Version 0.6.1 (September 19, 2014)

    • Improvements and bug fixes for printing.

    Version 0.6.0 (September 9, 2014)

    • Julia 0.3.0 is the minimum required version for this release.
    • buildInternalModel(m::Model) added to build solver-level model in memory without optimizing.
    • Deprecate load_model_only keyword argument to solve.
    • Add groups of constraints with @addConstraints macro.
    • Unicode operators now supported, including for sum, for prod, and /
    • Quadratic constraints supported in @addConstraint macro.
    • Quadratic objectives supported in @setObjective macro.
    • MathProgBase solver-independent interface replaces Ipopt-specific interface for nonlinear problems
      • Breaking change: IpoptOptions no longer supported to specify solver options, use m = Model(solver=IpoptSolver(options...)) instead.
    • New solver interfaces: ECOS, NLopt, and nonlinear support for MOSEK
    • New option to control whether the lazy constraint callback is executed at each node in the B&B tree or just when feasible solutions are found
    • Add support for semicontinuous and semi-integer variables for those solvers that support them.
    • Add support for index dependencies (for example, triangular indexing) in @defVar, @addConstraint, and @defExpr (for example, @defVar(m, x[i=1:10,j=i:10])).
      • This required some changes to the internal structure of JuMP containers, which may break code that explicitly stored JuMPDict objects.

    Version 0.5.8 (September 24, 2014)

    • Fix a bug with specifying solvers (affects Julia 0.2 only)

    Version 0.5.7 (September 5, 2014)

    • Fix a bug in printing models

    Version 0.5.6 (September 2, 2014)

    • Add support for semicontinuous and semi-integer variables for those solvers that support them.
      • Breaking change: Syntax for Variable() constructor has changed (use of this interface remains discouraged)
    • Update for breaking changes in MathProgBase

    Version 0.5.5 (July 6, 2014)

    • Fix bug with problem modification: adding variables that did not appear in existing constraints or objective.

    Version 0.5.4 (June 19, 2014)

    • Update for breaking change in MathProgBase which reduces loading times for using JuMP
    • Fix error when MIPs not solved to optimality

    Version 0.5.3 (May 21, 2014)

    • Update for breaking change in ReverseDiffSparse

    Version 0.5.2 (May 9, 2014)

    • Fix compatibility with Julia 0.3 prerelease

    Version 0.5.1 (May 5, 2014)

    • Fix a bug in coefficient handling inside lazy constraints and user cuts

    Version 0.5.0 (May 2, 2014)

    • Support for nonlinear optimization with exact, sparse second-order derivatives automatically computed. Ipopt is currently the only solver supported.
    • getValue for AffExpr and QuadExpr
    • Breaking change: getSolverModel replaced by getInternalModel, which returns the internal MathProgBase-level model
    • Groups of constraints can be specified with @addConstraint (see documentation for details). This is not a breaking change.
    • dot(::JuMPDict{Variable},::JuMPDict{Variable}) now returns the corresponding quadratic expression.

    Version 0.4.1 (March 24, 2014)

    • Fix bug where change in objective sense was ignored when re-solving a model.
    • Fix issue with handling zero coefficients in AffExpr.

    Version 0.4.0 (March 10, 2014)

    • Support for SOS1 and SOS2 constraints.
    • Solver-independent callback for user heuristics.
    • dot and sum implemented for JuMPDict objects. Now you can say @addConstraint(m, dot(a,x) <= b).
    • Developers: support for extensions to JuMP. See definition of Model in src/JuMP.jl for more details.
    • Option to construct the low-level model before optimizing.

    Version 0.3.2 (February 17, 2014)

    • Improved model printing
      • Preliminary support for IJulia output

    Version 0.3.1 (January 30, 2014)

    • Documentation updates
    • Support for MOSEK
    • CPLEXLink renamed to CPLEX

    Version 0.3.0 (January 21, 2014)

    • Unbounded/infeasibility rays: getValue() will return the corresponding components of an unbounded ray when a model is unbounded, if supported by the selected solver. getDual() will return an infeasibility ray (Farkas proof) if a model is infeasible and the selected solver supports this feature.
    • Solver-independent callbacks for user generated cuts.
    • Use new interface for solver-independent QCQP.
    • setlazycallback renamed to setLazyCallback for consistency.

    Version 0.2.0 (December 15, 2013)

    Breaking

    • Objective sense is specified in setObjective instead of in the Model constructor.
    • lpsolver and mipsolver merged into single solver option.

    Added

    • Problem modification with efficient LP restarts and MIP warm-starts.
    • Relatedly, column-wise modeling now supported.
    • Solver-independent callbacks supported. Currently we support only a "lazy constraint" callback, which works with Gurobi, CPLEX, and GLPK. More callbacks coming soon.

    Version 0.1.2 (November 16, 2013)

    • Bug fixes for printing, improved error messages.
    • Allow AffExpr to be used in macros; for example, ex = y + z; @addConstraint(m, x + 2*ex <= 3)

    Version 0.1.1 (October 23, 2013)

    • Update for solver specification API changes in MathProgBase.

    Version 0.1.0 (October 3, 2013)

    • Initial public release.
    diff --git a/dev/search_index.js b/dev/search_index.js index 345b0414eb4..6d62f2ab2db 100644 --- a/dev/search_index.js +++ b/dev/search_index.js @@ -1,3 +1,3 @@ var documenterSearchIndex = {"docs": -[{"location":"moi/reference/nonlinear/","page":"Nonlinear programming","title":"Nonlinear programming","text":"EditURL = \"https://github.com/jump-dev/MathOptInterface.jl/blob/v1.34.0/docs/src/reference/nonlinear.md\"","category":"page"},{"location":"moi/reference/nonlinear/","page":"Nonlinear programming","title":"Nonlinear programming","text":"CurrentModule = MathOptInterface\nDocTestSetup = quote\n import MathOptInterface as MOI\nend\nDocTestFilters = [r\"MathOptInterface|MOI\"]","category":"page"},{"location":"moi/reference/nonlinear/#Nonlinear-programming","page":"Nonlinear programming","title":"Nonlinear programming","text":"","category":"section"},{"location":"moi/reference/nonlinear/#Types","page":"Nonlinear programming","title":"Types","text":"","category":"section"},{"location":"moi/reference/nonlinear/","page":"Nonlinear programming","title":"Nonlinear programming","text":"AbstractNLPEvaluator\nNLPBoundsPair\nNLPBlockData","category":"page"},{"location":"moi/reference/nonlinear/#MathOptInterface.AbstractNLPEvaluator","page":"Nonlinear programming","title":"MathOptInterface.AbstractNLPEvaluator","text":"AbstractNLPEvaluator\n\nAbstract supertype for the callback object that is used to query function values, derivatives, and expression graphs.\n\nIt is used in NLPBlockData.\n\nExample\n\nThis example uses the Test.HS071 evaluator.\n\njulia> import MathOptInterface as MOI\n\njulia> evaluator = MOI.Test.HS071(true);\n\njulia> supertype(typeof(evaluator))\nMathOptInterface.AbstractNLPEvaluator\n\n\n\n\n\n","category":"type"},{"location":"moi/reference/nonlinear/#MathOptInterface.NLPBoundsPair","page":"Nonlinear programming","title":"MathOptInterface.NLPBoundsPair","text":"NLPBoundsPair(lower::Float64, upper::Float64)\n\nA struct holding a pair of lower and upper bounds.\n\n-Inf and Inf can be used to indicate no lower or upper bound, respectively.\n\nExample\n\njulia> import MathOptInterface as MOI\n\njulia> bounds = MOI.NLPBoundsPair.([25.0, 40.0], [Inf, 40.0])\n2-element Vector{MathOptInterface.NLPBoundsPair}:\n MathOptInterface.NLPBoundsPair(25.0, Inf)\n MathOptInterface.NLPBoundsPair(40.0, 40.0)\n\n\n\n\n\n","category":"type"},{"location":"moi/reference/nonlinear/#MathOptInterface.NLPBlockData","page":"Nonlinear programming","title":"MathOptInterface.NLPBlockData","text":"struct NLPBlockData\n constraint_bounds::Vector{NLPBoundsPair}\n evaluator::AbstractNLPEvaluator\n has_objective::Bool\nend\n\nA struct encoding a set of nonlinear constraints of the form lb le g(x) le ub and, if has_objective == true, a nonlinear objective function f(x).\n\nNonlinear objectives override any objective set by using the ObjectiveFunction attribute.\n\nThe evaluator is a callback object that is used to query function values, derivatives, and expression graphs. If has_objective == false, then it is an error to query properties of the objective function, and in Hessian-of-the-Lagrangian queries, σ must be set to zero.\n\nnote: Note\nThroughout the evaluator, all variables are ordered according to ListOfVariableIndices. Hence, MOI copies of nonlinear problems must not re-order variables.\n\nExample\n\nThis example uses the Test.HS071 evaluator.\n\njulia> import MathOptInterface as MOI\n\njulia> model = MOI.Utilities.UniversalFallback(MOI.Utilities.Model{Float64}());\n\njulia> block = MOI.NLPBlockData(\n MOI.NLPBoundsPair.([25.0, 40.0], [Inf, 40.0]),\n MOI.Test.HS071(true),\n true,\n );\n\njulia> MOI.set(model, MOI.NLPBlock(), block)\n\n\n\n\n\n","category":"type"},{"location":"moi/reference/nonlinear/#Attributes","page":"Nonlinear programming","title":"Attributes","text":"","category":"section"},{"location":"moi/reference/nonlinear/","page":"Nonlinear programming","title":"Nonlinear programming","text":"NLPBlock\nNLPBlockDual\nNLPBlockDualStart","category":"page"},{"location":"moi/reference/nonlinear/#MathOptInterface.NLPBlock","page":"Nonlinear programming","title":"MathOptInterface.NLPBlock","text":"NLPBlock()\n\nAn AbstractModelAttribute that stores an NLPBlockData, representing a set of nonlinear constraints, and optionally a nonlinear objective.\n\nExample\n\nThis example uses the Test.HS071 evaluator.\n\njulia> import MathOptInterface as MOI\n\njulia> model = MOI.Utilities.UniversalFallback(MOI.Utilities.Model{Float64}());\n\njulia> block = MOI.NLPBlockData(\n MOI.NLPBoundsPair.([25.0, 40.0], [Inf, 40.0]),\n MOI.Test.HS071(true),\n true,\n );\n\njulia> MOI.set(model, MOI.NLPBlock(), block)\n\n\n\n\n\n","category":"type"},{"location":"moi/reference/nonlinear/#MathOptInterface.NLPBlockDual","page":"Nonlinear programming","title":"MathOptInterface.NLPBlockDual","text":"NLPBlockDual(result_index::Int = 1)\n\nAn AbstractModelAttribute for the Lagrange multipliers on the constraints from the NLPBlock in result result_index.\n\nIf result_index is omitted, it is 1 by default.\n\nExample\n\njulia> import MathOptInterface as MOI\n\njulia> MOI.NLPBlockDual()\nMathOptInterface.NLPBlockDual(1)\n\njulia> MOI.NLPBlockDual(2)\nMathOptInterface.NLPBlockDual(2)\n\n\n\n\n\n","category":"type"},{"location":"moi/reference/nonlinear/#MathOptInterface.NLPBlockDualStart","page":"Nonlinear programming","title":"MathOptInterface.NLPBlockDualStart","text":"NLPBlockDualStart()\n\nAn AbstractModelAttribute for the initial assignment of the Lagrange multipliers on the constraints from the NLPBlock that the solver may use to warm-start the solve.\n\nExample\n\nThis example uses the Test.HS071 evaluator.\n\njulia> import MathOptInterface as MOI\n\njulia> model = MOI.Utilities.UniversalFallback(MOI.Utilities.Model{Float64}());\n\njulia> block = MOI.NLPBlockData(\n MOI.NLPBoundsPair.([25.0, 40.0], [Inf, 40.0]),\n MOI.Test.HS071(true),\n true,\n );\n\njulia> MOI.set(model, MOI.NLPBlock(), block)\n\njulia> MOI.set(model, MOI.NLPBlockDualStart(), [1.0, 2.0])\n\n\n\n\n\n","category":"type"},{"location":"moi/reference/nonlinear/#Functions","page":"Nonlinear programming","title":"Functions","text":"","category":"section"},{"location":"moi/reference/nonlinear/","page":"Nonlinear programming","title":"Nonlinear programming","text":"initialize\nfeatures_available\neval_objective\neval_constraint\neval_objective_gradient\njacobian_structure\neval_constraint_gradient\nconstraint_gradient_structure\neval_constraint_jacobian\neval_constraint_jacobian_product\neval_constraint_jacobian_transpose_product\nhessian_lagrangian_structure\nhessian_objective_structure\nhessian_constraint_structure\neval_hessian_objective\neval_hessian_constraint\neval_hessian_lagrangian\neval_hessian_lagrangian_product\nobjective_expr\nconstraint_expr","category":"page"},{"location":"moi/reference/nonlinear/#MathOptInterface.initialize","page":"Nonlinear programming","title":"MathOptInterface.initialize","text":"initialize(\n d::AbstractNLPEvaluator,\n requested_features::Vector{Symbol},\n)::Nothing\n\nInitialize d with the set of features in requested_features. Check features_available before calling initialize to see what features are supported by d.\n\nwarning: Warning\nThis method must be called before any other methods.\n\nFeatures\n\nThe following features are defined:\n\n:Grad: enables eval_objective_gradient\n:Jac: enables eval_constraint_jacobian and eval_constraint_gradient\n:JacVec: enables eval_constraint_jacobian_product and eval_constraint_jacobian_transpose_product\n:Hess: enables eval_hessian_lagrangian\n:HessVec: enables eval_hessian_lagrangian_product\n:ExprGraph: enables objective_expr and constraint_expr.\n\nIn all cases, including when requested_features is empty, eval_objective and eval_constraint are supported.\n\nExample\n\nThis example uses the Test.HS071 evaluator.\n\njulia> import MathOptInterface as MOI\n\njulia> evaluator = MOI.Test.HS071(true);\n\njulia> MOI.initialize(evaluator, [:Grad, :Jac])\n\n\n\n\n\n","category":"function"},{"location":"moi/reference/nonlinear/#MathOptInterface.features_available","page":"Nonlinear programming","title":"MathOptInterface.features_available","text":"features_available(d::AbstractNLPEvaluator)::Vector{Symbol}\n\nReturns the subset of features available for this problem instance.\n\nSee initialize for the list of defined features.\n\nExample\n\nThis example uses the Test.HS071 evaluator.\n\njulia> import MathOptInterface as MOI\n\njulia> evaluator = MOI.Test.HS071(true, true);\n\njulia> MOI.features_available(evaluator)\n6-element Vector{Symbol}:\n :Grad\n :Jac\n :JacVec\n :ExprGraph\n :Hess\n :HessVec\n\n\n\n\n\n","category":"function"},{"location":"moi/reference/nonlinear/#MathOptInterface.eval_objective","page":"Nonlinear programming","title":"MathOptInterface.eval_objective","text":"eval_objective(d::AbstractNLPEvaluator, x::AbstractVector{T})::T where {T}\n\nEvaluate the objective f(x), returning a scalar value.\n\nInitialize\n\nBefore calling this function, you must call initialize, but you do not need to pass a value.\n\nExample\n\nThis example uses the Test.HS071 evaluator.\n\njulia> import MathOptInterface as MOI\n\njulia> evaluator = MOI.Test.HS071(true);\n\njulia> MOI.initialize(evaluator, Symbol[])\n\njulia> MOI.eval_objective(evaluator, [1.0, 2.0, 3.0, 4.0])\n27.0\n\n\n\n\n\n","category":"function"},{"location":"moi/reference/nonlinear/#MathOptInterface.eval_constraint","page":"Nonlinear programming","title":"MathOptInterface.eval_constraint","text":"eval_constraint(\n d::AbstractNLPEvaluator,\n g::AbstractVector{T},\n x::AbstractVector{T},\n)::Nothing where {T}\n\nGiven a set of vector-valued constraints l le g(x) le u, evaluate the constraint function g(x), storing the result in the vector g.\n\nInitialize\n\nBefore calling this function, you must call initialize, but you do not need to pass a value.\n\nImplementation notes\n\nWhen implementing this method, you must not assume that g is Vector{Float64}, but you may assume that it supports setindex! and length. For example, it may be the view of a vector.\n\nExample\n\nThis example uses the Test.HS071 evaluator.\n\njulia> import MathOptInterface as MOI\n\njulia> evaluator = MOI.Test.HS071(true);\n\njulia> MOI.initialize(evaluator, Symbol[])\n\njulia> g = fill(NaN, 2);\n\njulia> MOI.eval_constraint(evaluator, g, [1.0, 2.0, 3.0, 4.0])\n\njulia> g\n2-element Vector{Float64}:\n 24.0\n 30.0\n\n\n\n\n\n","category":"function"},{"location":"moi/reference/nonlinear/#MathOptInterface.eval_objective_gradient","page":"Nonlinear programming","title":"MathOptInterface.eval_objective_gradient","text":"eval_objective_gradient(\n d::AbstractNLPEvaluator,\n grad::AbstractVector{T},\n x::AbstractVector{T},\n)::Nothing where {T}\n\nEvaluate the gradient of the objective function grad = nabla f(x) as a dense vector, storing the result in the vector grad.\n\nInitialize\n\nBefore calling this function, you must call initialize with :Grad.\n\nImplementation notes\n\nWhen implementing this method, you must not assume that grad is Vector{Float64}, but you may assume that it supports setindex! and length. For example, it may be the view of a vector.\n\nExample\n\nThis example uses the Test.HS071 evaluator.\n\njulia> import MathOptInterface as MOI\n\njulia> evaluator = MOI.Test.HS071(true);\n\njulia> MOI.initialize(evaluator, Symbol[:Grad])\n\njulia> grad = fill(NaN, 4);\n\njulia> MOI.eval_objective_gradient(evaluator, grad, [1.0, 2.0, 3.0, 4.0])\n\njulia> grad\n4-element Vector{Float64}:\n 28.0\n 4.0\n 5.0\n 6.0\n\n\n\n\n\n","category":"function"},{"location":"moi/reference/nonlinear/#MathOptInterface.jacobian_structure","page":"Nonlinear programming","title":"MathOptInterface.jacobian_structure","text":"jacobian_structure(d::AbstractNLPEvaluator)::Vector{Tuple{Int64,Int64}}\n\nReturns a vector of tuples, (row, column), where each indicates the position of a structurally nonzero element in the Jacobian matrix: J_g(x) = left beginarrayc nabla g_1(x) nabla g_2(x) vdots nabla g_m(x) endarrayright where g_i is the itextth component of the nonlinear constraints g(x).\n\nThe indices are not required to be sorted and can contain duplicates, in which case the solver should combine the corresponding elements by adding them together.\n\nThe sparsity structure is assumed to be independent of the point x.\n\nInitialize\n\nBefore calling this function, you must call initialize with :Jac.\n\nExample\n\nThis example uses the Test.HS071 evaluator.\n\njulia> import MathOptInterface as MOI\n\njulia> evaluator = MOI.Test.HS071(true);\n\njulia> MOI.initialize(evaluator, Symbol[:Jac])\n\njulia> MOI.jacobian_structure(evaluator)\n8-element Vector{Tuple{Int64, Int64}}:\n (1, 1)\n (1, 2)\n (1, 3)\n (1, 4)\n (2, 1)\n (2, 2)\n (2, 3)\n (2, 4)\n\n\n\n\n\n","category":"function"},{"location":"moi/reference/nonlinear/#MathOptInterface.eval_constraint_gradient","page":"Nonlinear programming","title":"MathOptInterface.eval_constraint_gradient","text":"eval_constraint_gradient(\n d::AbstractNLPEvaluator,\n ∇g::AbstractVector{T},\n x::AbstractVector{T},\n i::Int,\n)::Nothing where {T}\n\nEvaluate the gradient of constraint i, nabla g_i(x), and store the non-zero values in ∇g, corresponding to the structure returned by constraint_gradient_structure.\n\nImplementation notes\n\nWhen implementing this method, you must not assume that ∇g is Vector{Float64}, but you may assume that it supports setindex! and length. For example, it may be the view of a vector.\n\nInitialize\n\nBefore calling this function, you must call initialize with :Jac.\n\nExample\n\nThis example uses the Test.HS071 evaluator.\n\njulia> import MathOptInterface as MOI\n\njulia> evaluator = MOI.Test.HS071(true);\n\njulia> MOI.initialize(evaluator, Symbol[:Jac])\n\njulia> indices = MOI.constraint_gradient_structure(evaluator, 1);\n\njulia> ∇g = zeros(length(indices));\n\njulia> MOI.eval_constraint_gradient(evaluator, ∇g, [1.0, 2.0, 3.0, 4.0], 1)\n\njulia> ∇g\n4-element Vector{Float64}:\n 24.0\n 12.0\n 8.0\n 6.0\n\n\n\n\n\n","category":"function"},{"location":"moi/reference/nonlinear/#MathOptInterface.constraint_gradient_structure","page":"Nonlinear programming","title":"MathOptInterface.constraint_gradient_structure","text":"constraint_gradient_structure(d::AbstractNLPEvaluator, i::Int)::Vector{Int64}\n\nReturns a vector of indices, where each element indicates the position of a structurally nonzero element in the gradient of constraint nabla g_i(x).\n\nThe indices are not required to be sorted and can contain duplicates, in which case the solver should combine the corresponding elements by adding them together.\n\nThe sparsity structure is assumed to be independent of the point x.\n\nInitialize\n\nBefore calling this function, you must call initialize with :Jac.\n\nExample\n\nThis example uses the Test.HS071 evaluator.\n\njulia> import MathOptInterface as MOI\n\njulia> evaluator = MOI.Test.HS071(true);\n\njulia> MOI.initialize(evaluator, Symbol[:Jac])\n\njulia> indices = MOI.constraint_gradient_structure(evaluator, 1)\n4-element Vector{Int64}:\n 1\n 2\n 3\n 4\n\n\n\n\n\n","category":"function"},{"location":"moi/reference/nonlinear/#MathOptInterface.eval_constraint_jacobian","page":"Nonlinear programming","title":"MathOptInterface.eval_constraint_jacobian","text":"eval_constraint_jacobian(\n d::AbstractNLPEvaluator,\n J::AbstractVector{T},\n x::AbstractVector{T},\n)::Nothing where {T}\n\nEvaluates the sparse Jacobian matrix J_g(x) = left beginarrayc nabla g_1(x) nabla g_2(x) vdots nabla g_m(x) endarrayright.\n\nThe result is stored in the vector J in the same order as the indices returned by jacobian_structure.\n\nImplementation notes\n\nWhen implementing this method, you must not assume that J is Vector{Float64}, but you may assume that it supports setindex! and length. For example, it may be the view of a vector.\n\nInitialize\n\nBefore calling this function, you must call initialize with :Hess.\n\nExample\n\nThis example uses the Test.HS071 evaluator.\n\njulia> import MathOptInterface as MOI\n\njulia> evaluator = MOI.Test.HS071(true);\n\njulia> MOI.initialize(evaluator, Symbol[:Jac])\n\njulia> J_indices = MOI.jacobian_structure(evaluator);\n\njulia> J = zeros(length(J_indices));\n\njulia> MOI.eval_constraint_jacobian(evaluator, J, [1.0, 2.0, 3.0, 4.0])\n\njulia> J\n8-element Vector{Float64}:\n 24.0\n 12.0\n 8.0\n 6.0\n 2.0\n 4.0\n 6.0\n 8.0\n\n\n\n\n\n","category":"function"},{"location":"moi/reference/nonlinear/#MathOptInterface.eval_constraint_jacobian_product","page":"Nonlinear programming","title":"MathOptInterface.eval_constraint_jacobian_product","text":"eval_constraint_jacobian_product(\n d::AbstractNLPEvaluator,\n y::AbstractVector{T},\n x::AbstractVector{T},\n w::AbstractVector{T},\n)::Nothing where {T}\n\nComputes the Jacobian-vector product y = J_g(x)w, storing the result in the vector y.\n\nThe vectors have dimensions such that length(w) == length(x), and length(y) is the number of nonlinear constraints.\n\nImplementation notes\n\nWhen implementing this method, you must not assume that y is Vector{Float64}, but you may assume that it supports setindex! and length. For example, it may be the view of a vector.\n\nInitialize\n\nBefore calling this function, you must call initialize with :JacVec.\n\nExample\n\nThis example uses the Test.HS071 evaluator.\n\njulia> import MathOptInterface as MOI\n\njulia> evaluator = MOI.Test.HS071(true);\n\njulia> MOI.initialize(evaluator, Symbol[:Jac, :JacVec])\n\njulia> y = zeros(2);\n\njulia> x = [1.0, 2.0, 3.0, 4.0];\n\njulia> w = [1.5, 2.5, 3.5, 4.5];\n\njulia> MOI.eval_constraint_jacobian_product(evaluator, y, x, w)\n\njulia> y\n2-element Vector{Float64}:\n 121.0\n 70.0\n\n\n\n\n\n","category":"function"},{"location":"moi/reference/nonlinear/#MathOptInterface.eval_constraint_jacobian_transpose_product","page":"Nonlinear programming","title":"MathOptInterface.eval_constraint_jacobian_transpose_product","text":"eval_constraint_jacobian_transpose_product(\n d::AbstractNLPEvaluator,\n y::AbstractVector{T},\n x::AbstractVector{T},\n w::AbstractVector{T},\n)::Nothing where {T}\n\nComputes the Jacobian-transpose-vector product y = J_g(x)^Tw, storing the result in the vector y.\n\nThe vectors have dimensions such that length(y) == length(x), and length(w) is the number of nonlinear constraints.\n\nImplementation notes\n\nWhen implementing this method, you must not assume that y is Vector{Float64}, but you may assume that it supports setindex! and length. For example, it may be the view of a vector.\n\nInitialize\n\nBefore calling this function, you must call initialize with :JacVec.\n\nExample\n\nThis example uses the Test.HS071 evaluator.\n\njulia> import MathOptInterface as MOI\n\njulia> evaluator = MOI.Test.HS071(true);\n\njulia> MOI.initialize(evaluator, Symbol[:Jac, :JacVec])\n\njulia> y = zeros(4);\n\njulia> x = [1.0, 2.0, 3.0, 4.0];\n\njulia> w = [1.5, 2.5];\n\njulia> MOI.eval_constraint_jacobian_transpose_product(evaluator, y, x, w)\n\njulia> y\n4-element Vector{Float64}:\n 41.0\n 28.0\n 27.0\n 29.0\n\n\n\n\n\n","category":"function"},{"location":"moi/reference/nonlinear/#MathOptInterface.hessian_lagrangian_structure","page":"Nonlinear programming","title":"MathOptInterface.hessian_lagrangian_structure","text":"hessian_lagrangian_structure(\n d::AbstractNLPEvaluator,\n)::Vector{Tuple{Int64,Int64}}\n\nReturns a vector of tuples, (row, column), where each indicates the position of a structurally nonzero element in the Hessian-of-the-Lagrangian matrix: nabla^2 f(x) + sum_i=1^m nabla^2 g_i(x).\n\nThe indices are not required to be sorted and can contain duplicates, in which case the solver should combine the corresponding elements by adding them together.\n\nAny mix of lower and upper-triangular indices is valid. Elements (i, j) and (j, i), if both present, should be treated as duplicates.\n\nThe sparsity structure is assumed to be independent of the point x.\n\nInitialize\n\nBefore calling this function, you must call initialize with :Hess.\n\nExample\n\nThis example uses the Test.HS071 evaluator.\n\njulia> import MathOptInterface as MOI\n\njulia> evaluator = MOI.Test.HS071(true);\n\njulia> MOI.initialize(evaluator, Symbol[:Hess])\n\njulia> MOI.hessian_lagrangian_structure(evaluator)\n10-element Vector{Tuple{Int64, Int64}}:\n (1, 1)\n (2, 1)\n (2, 2)\n (3, 1)\n (3, 2)\n (3, 3)\n (4, 1)\n (4, 2)\n (4, 3)\n (4, 4)\n\n\n\n\n\n","category":"function"},{"location":"moi/reference/nonlinear/#MathOptInterface.hessian_objective_structure","page":"Nonlinear programming","title":"MathOptInterface.hessian_objective_structure","text":"hessian_objective_structure(\n d::AbstractNLPEvaluator,\n)::Vector{Tuple{Int64,Int64}}\n\nReturns a vector of tuples, (row, column), where each indicates the position of a structurally nonzero element in the Hessian matrix: nabla^2 f(x).\n\nThe indices are not required to be sorted and can contain duplicates, in which case the solver should combine the corresponding elements by adding them together.\n\nAny mix of lower and upper-triangular indices is valid. Elements (i, j) and (j, i), if both present, should be treated as duplicates.\n\nThe sparsity structure is assumed to be independent of the point x.\n\nInitialize\n\nBefore calling this function, you must call initialize with :Hess.\n\nExample\n\nThis example uses the Test.HS071 evaluator.\n\njulia> import MathOptInterface as MOI\n\njulia> evaluator = MOI.Test.HS071(true);\n\njulia> MOI.initialize(evaluator, Symbol[:Hess])\n\njulia> MOI.hessian_objective_structure(evaluator)\n6-element Vector{Tuple{Int64, Int64}}:\n (1, 1)\n (2, 1)\n (3, 1)\n (4, 1)\n (4, 2)\n (4, 3)\n\n\n\n\n\n","category":"function"},{"location":"moi/reference/nonlinear/#MathOptInterface.hessian_constraint_structure","page":"Nonlinear programming","title":"MathOptInterface.hessian_constraint_structure","text":"hessian_constraint_structure(\n d::AbstractNLPEvaluator,\n i::Int64,\n)::Vector{Tuple{Int64,Int64}}\n\nReturns a vector of tuples, (row, column), where each indicates the position of a structurally nonzero element in the Hessian matrix: nabla^2 g_i(x).\n\nThe indices are not required to be sorted and can contain duplicates, in which case the solver should combine the corresponding elements by adding them together.\n\nAny mix of lower and upper-triangular indices is valid. Elements (i, j) and (j, i), if both present, should be treated as duplicates.\n\nThe sparsity structure is assumed to be independent of the point x.\n\nInitialize\n\nBefore calling this function, you must call initialize with :Hess.\n\nExample\n\nThis example uses the Test.HS071 evaluator.\n\njulia> import MathOptInterface as MOI\n\njulia> evaluator = MOI.Test.HS071(true);\n\njulia> MOI.initialize(evaluator, Symbol[:Hess])\n\njulia> MOI.hessian_constraint_structure(evaluator, 1)\n6-element Vector{Tuple{Int64, Int64}}:\n (2, 1)\n (3, 1)\n (3, 2)\n (4, 1)\n (4, 2)\n (4, 3)\n\njulia> MOI.hessian_constraint_structure(evaluator, 2)\n4-element Vector{Tuple{Int64, Int64}}:\n (1, 1)\n (2, 2)\n (3, 3)\n (4, 4)\n\n\n\n\n\n","category":"function"},{"location":"moi/reference/nonlinear/#MathOptInterface.eval_hessian_objective","page":"Nonlinear programming","title":"MathOptInterface.eval_hessian_objective","text":"eval_hessian_objective(\n d::AbstractNLPEvaluator,\n H::AbstractVector{T},\n x::AbstractVector{T},\n)::Nothing where {T}\n\nThis function computes the sparse Hessian matrix: nabla^2 f(x), storing the result in the vector H in the same order as the indices returned by hessian_objective_structure.\n\nImplementation notes\n\nWhen implementing this method, you must not assume that H is Vector{Float64}, but you may assume that it supports setindex! and length. For example, it may be the view of a vector.\n\nInitialize\n\nBefore calling this function, you must call initialize with :Hess.\n\nExample\n\nThis example uses the Test.HS071 evaluator.\n\njulia> import MathOptInterface as MOI\n\njulia> evaluator = MOI.Test.HS071(true, true);\n\njulia> MOI.initialize(evaluator, Symbol[:Hess])\n\njulia> indices = MOI.hessian_objective_structure(evaluator);\n\njulia> H = zeros(length(indices));\n\njulia> x = [1.0, 2.0, 3.0, 4.0];\n\njulia> MOI.eval_hessian_objective(evaluator, H, x)\n\njulia> H\n6-element Vector{Float64}:\n 8.0\n 4.0\n 4.0\n 7.0\n 1.0\n 1.0\n\n\n\n\n\n","category":"function"},{"location":"moi/reference/nonlinear/#MathOptInterface.eval_hessian_constraint","page":"Nonlinear programming","title":"MathOptInterface.eval_hessian_constraint","text":"eval_hessian_constraint(\n d::AbstractNLPEvaluator,\n H::AbstractVector{T},\n x::AbstractVector{T},\n i::Int64,\n)::Nothing where {T}\n\nThis function computes the sparse Hessian matrix: nabla^2 g_i(x), storing the result in the vector H in the same order as the indices returned by hessian_constraint_structure.\n\nImplementation notes\n\nWhen implementing this method, you must not assume that H is Vector{Float64}, but you may assume that it supports setindex! and length. For example, it may be the view of a vector.\n\nInitialize\n\nBefore calling this function, you must call initialize with :Hess.\n\nExample\n\nThis example uses the Test.HS071 evaluator.\n\njulia> import MathOptInterface as MOI\n\njulia> evaluator = MOI.Test.HS071(true, true);\n\njulia> MOI.initialize(evaluator, Symbol[:Hess])\n\njulia> indices = MOI.hessian_constraint_structure(evaluator, 1);\n\njulia> H = zeros(length(indices));\n\njulia> x = [1.0, 2.0, 3.0, 4.0];\n\njulia> MOI.eval_hessian_constraint(evaluator, H, x, 1)\n\njulia> H\n6-element Vector{Float64}:\n 12.0\n 8.0\n 4.0\n 6.0\n 3.0\n 2.0\n\n\n\n\n\n","category":"function"},{"location":"moi/reference/nonlinear/#MathOptInterface.eval_hessian_lagrangian","page":"Nonlinear programming","title":"MathOptInterface.eval_hessian_lagrangian","text":"eval_hessian_lagrangian(\n d::AbstractNLPEvaluator,\n H::AbstractVector{T},\n x::AbstractVector{T},\n σ::T,\n μ::AbstractVector{T},\n)::Nothing where {T}\n\nGiven scalar weight σ and vector of constraint weights μ, this function computes the sparse Hessian-of-the-Lagrangian matrix: sigmanabla^2 f(x) + sum_i=1^m mu_i nabla^2 g_i(x), storing the result in the vector H in the same order as the indices returned by hessian_lagrangian_structure.\n\nImplementation notes\n\nWhen implementing this method, you must not assume that H is Vector{Float64}, but you may assume that it supports setindex! and length. For example, it may be the view of a vector.\n\nInitialize\n\nBefore calling this function, you must call initialize with :Hess.\n\nExample\n\nThis example uses the Test.HS071 evaluator.\n\njulia> import MathOptInterface as MOI\n\njulia> evaluator = MOI.Test.HS071(true);\n\njulia> MOI.initialize(evaluator, Symbol[:Hess])\n\njulia> indices = MOI.hessian_lagrangian_structure(evaluator);\n\njulia> H = zeros(length(indices));\n\njulia> x = [1.0, 2.0, 3.0, 4.0];\n\njulia> σ = 1.0;\n\njulia> μ = [1.0, 1.0];\n\njulia> MOI.eval_hessian_lagrangian(evaluator, H, x, σ, μ)\n\njulia> H\n10-element Vector{Float64}:\n 10.0\n 16.0\n 2.0\n 12.0\n 4.0\n 2.0\n 13.0\n 4.0\n 3.0\n 2.0\n\n\n\n\n\n","category":"function"},{"location":"moi/reference/nonlinear/#MathOptInterface.eval_hessian_lagrangian_product","page":"Nonlinear programming","title":"MathOptInterface.eval_hessian_lagrangian_product","text":"eval_hessian_lagrangian_product(\n d::AbstractNLPEvaluator,\n h::AbstractVector{T},\n x::AbstractVector{T},\n v::AbstractVector{T},\n σ::T,\n μ::AbstractVector{T},\n)::Nothing where {T}\n\nGiven scalar weight σ and vector of constraint weights μ, computes the Hessian-of-the-Lagrangian-vector product h = left(sigmanabla^2 f(x) + sum_i=1^m mu_i nabla^2 g_i(x)right)v, storing the result in the vector h.\n\nThe vectors have dimensions such that length(h) == length(x) == length(v).\n\nImplementation notes\n\nWhen implementing this method, you must not assume that h is Vector{Float64}, but you may assume that it supports setindex! and length. For example, it may be the view of a vector.\n\nInitialize\n\nBefore calling this function, you must call initialize with :HessVec.\n\nExample\n\nThis example uses the Test.HS071 evaluator.\n\njulia> import MathOptInterface as MOI\n\njulia> evaluator = MOI.Test.HS071(true, true);\n\njulia> MOI.initialize(evaluator, Symbol[:HessVec])\n\njulia> H = fill(NaN, 4);\n\njulia> x = [1.0, 2.0, 3.0, 4.0];\n\njulia> v = [1.5, 2.5, 3.5, 4.5];\n\njulia> σ = 1.0;\n\njulia> μ = [1.0, 1.0];\n\njulia> MOI.eval_hessian_lagrangian_product(evaluator, H, x, v, σ, μ)\n\njulia> H\n4-element Vector{Float64}:\n 155.5\n 61.0\n 48.5\n 49.0\n\n\n\n\n\n","category":"function"},{"location":"moi/reference/nonlinear/#MathOptInterface.objective_expr","page":"Nonlinear programming","title":"MathOptInterface.objective_expr","text":"objective_expr(d::AbstractNLPEvaluator)::Expr\n\nReturns a Julia Expr object representing the expression graph of the objective function.\n\nFormat\n\nThe expression has a number of limitations, compared with arbitrary Julia expressions:\n\nAll sums and products are flattened out as simple Expr(:+, ...) and Expr(:*, ...) objects.\nAll decision variables must be of the form Expr(:ref, :x, MOI.VariableIndex(i)), where i is the ith variable in ListOfVariableIndices.\nThere are currently no restrictions on recognized functions; typically these will be built-in Julia functions like ^, exp, log, cos, tan, sqrt, etc., but modeling interfaces may choose to extend these basic functions, or error if they encounter unsupported functions.\n\nInitialize\n\nBefore calling this function, you must call initialize with :ExprGraph.\n\nExample\n\nThis example uses the Test.HS071 evaluator.\n\njulia> import MathOptInterface as MOI\n\njulia> evaluator = MOI.Test.HS071(true);\n\njulia> MOI.initialize(evaluator, [:ExprGraph])\n\njulia> MOI.objective_expr(evaluator)\n:(x[MOI.VariableIndex(1)] * x[MOI.VariableIndex(4)] * (x[MOI.VariableIndex(1)] + x[MOI.VariableIndex(2)] + x[MOI.VariableIndex(3)]) + x[MOI.VariableIndex(3)])\n\n\n\n\n\n","category":"function"},{"location":"moi/reference/nonlinear/#MathOptInterface.constraint_expr","page":"Nonlinear programming","title":"MathOptInterface.constraint_expr","text":"constraint_expr(d::AbstractNLPEvaluator, i::Integer)::Expr\n\nReturns a Julia Expr object representing the expression graph for the itextth nonlinear constraint.\n\nFormat\n\nThe format is the same as objective_expr, with an additional comparison operator indicating the sense of and bounds on the constraint.\n\nFor single-sided comparisons, the body of the constraint must be on the left-hand side, and the right-hand side must be a constant.\n\nFor double-sided comparisons (that is, l le g(x) le u), the body of the constraint must be in the middle, and the left- and right-hand sides must be constants.\n\nThe bounds on the constraints must match the NLPBoundsPairs passed to NLPBlockData.\n\nInitialize\n\nBefore calling this function, you must call initialize with :ExprGraph.\n\nExample\n\nThis example uses the Test.HS071 evaluator.\n\njulia> import MathOptInterface as MOI\n\njulia> evaluator = MOI.Test.HS071(true);\n\njulia> MOI.initialize(evaluator, [:ExprGraph])\n\njulia> MOI.constraint_expr(evaluator, 1)\n:(x[MOI.VariableIndex(1)] * x[MOI.VariableIndex(2)] * x[MOI.VariableIndex(3)] * x[MOI.VariableIndex(4)] >= 25.0)\n\njulia> MOI.constraint_expr(evaluator, 2)\n:(x[MOI.VariableIndex(1)] ^ 2 + x[MOI.VariableIndex(2)] ^ 2 + x[MOI.VariableIndex(3)] ^ 2 + x[MOI.VariableIndex(4)] ^ 2 == 40.0)\n\n\n\n\n\n","category":"function"},{"location":"packages/Cbc/","page":"jump-dev/Cbc.jl","title":"jump-dev/Cbc.jl","text":"EditURL = \"https://github.com/jump-dev/Cbc.jl/blob/v1.2.0/README.md\"","category":"page"},{"location":"packages/Cbc/","page":"jump-dev/Cbc.jl","title":"jump-dev/Cbc.jl","text":"(Image: )","category":"page"},{"location":"packages/Cbc/#Cbc.jl","page":"jump-dev/Cbc.jl","title":"Cbc.jl","text":"","category":"section"},{"location":"packages/Cbc/","page":"jump-dev/Cbc.jl","title":"jump-dev/Cbc.jl","text":"(Image: Build Status) (Image: codecov)","category":"page"},{"location":"packages/Cbc/","page":"jump-dev/Cbc.jl","title":"jump-dev/Cbc.jl","text":"Cbc.jl is a wrapper for the COIN-OR Branch and Cut (Cbc) solver.","category":"page"},{"location":"packages/Cbc/","page":"jump-dev/Cbc.jl","title":"jump-dev/Cbc.jl","text":"The wrapper has two components:","category":"page"},{"location":"packages/Cbc/","page":"jump-dev/Cbc.jl","title":"jump-dev/Cbc.jl","text":"a thin wrapper around the complete C API\nan interface to MathOptInterface","category":"page"},{"location":"packages/Cbc/#Affiliation","page":"jump-dev/Cbc.jl","title":"Affiliation","text":"","category":"section"},{"location":"packages/Cbc/","page":"jump-dev/Cbc.jl","title":"jump-dev/Cbc.jl","text":"This wrapper is maintained by the JuMP community and is not a COIN-OR project.","category":"page"},{"location":"packages/Cbc/#License","page":"jump-dev/Cbc.jl","title":"License","text":"","category":"section"},{"location":"packages/Cbc/","page":"jump-dev/Cbc.jl","title":"jump-dev/Cbc.jl","text":"Cbc.jl is licensed under the MIT License.","category":"page"},{"location":"packages/Cbc/","page":"jump-dev/Cbc.jl","title":"jump-dev/Cbc.jl","text":"The underlying solver, coin-or/Cbc, is licensed under the Eclipse public license.","category":"page"},{"location":"packages/Cbc/#Installation","page":"jump-dev/Cbc.jl","title":"Installation","text":"","category":"section"},{"location":"packages/Cbc/","page":"jump-dev/Cbc.jl","title":"jump-dev/Cbc.jl","text":"Install Cbc using Pkg.add:","category":"page"},{"location":"packages/Cbc/","page":"jump-dev/Cbc.jl","title":"jump-dev/Cbc.jl","text":"import Pkg\nPkg.add(\"Cbc\")","category":"page"},{"location":"packages/Cbc/","page":"jump-dev/Cbc.jl","title":"jump-dev/Cbc.jl","text":"In addition to installing the Cbc.jl package, this will also download and install the Cbc binaries. You do not need to install Cbc separately.","category":"page"},{"location":"packages/Cbc/","page":"jump-dev/Cbc.jl","title":"jump-dev/Cbc.jl","text":"To use a custom binary, read the Custom solver binaries section of the JuMP documentation.","category":"page"},{"location":"packages/Cbc/#Use-with-JuMP","page":"jump-dev/Cbc.jl","title":"Use with JuMP","text":"","category":"section"},{"location":"packages/Cbc/","page":"jump-dev/Cbc.jl","title":"jump-dev/Cbc.jl","text":"To use Cbc with JuMP, use Cbc.Optimizer:","category":"page"},{"location":"packages/Cbc/","page":"jump-dev/Cbc.jl","title":"jump-dev/Cbc.jl","text":"using JuMP, Cbc\nmodel = Model(Cbc.Optimizer)\nset_attribute(model, \"logLevel\", 1)","category":"page"},{"location":"packages/Cbc/#MathOptInterface-API","page":"jump-dev/Cbc.jl","title":"MathOptInterface API","text":"","category":"section"},{"location":"packages/Cbc/","page":"jump-dev/Cbc.jl","title":"jump-dev/Cbc.jl","text":"The COIN Branch-and-Cut (Cbc) optimizer supports the following constraints and attributes.","category":"page"},{"location":"packages/Cbc/","page":"jump-dev/Cbc.jl","title":"jump-dev/Cbc.jl","text":"List of supported objective functions:","category":"page"},{"location":"packages/Cbc/","page":"jump-dev/Cbc.jl","title":"jump-dev/Cbc.jl","text":"MOI.ObjectiveFunction{MOI.ScalarAffineFunction{Float64}}","category":"page"},{"location":"packages/Cbc/","page":"jump-dev/Cbc.jl","title":"jump-dev/Cbc.jl","text":"List of supported variable types:","category":"page"},{"location":"packages/Cbc/","page":"jump-dev/Cbc.jl","title":"jump-dev/Cbc.jl","text":"MOI.Reals","category":"page"},{"location":"packages/Cbc/","page":"jump-dev/Cbc.jl","title":"jump-dev/Cbc.jl","text":"List of supported constraint types:","category":"page"},{"location":"packages/Cbc/","page":"jump-dev/Cbc.jl","title":"jump-dev/Cbc.jl","text":"MOI.ScalarAffineFunction{Float64} in MOI.EqualTo{Float64}\nMOI.ScalarAffineFunction{Float64} in MOI.GreaterThan{Float64}\nMOI.ScalarAffineFunction{Float64} in MOI.Interval{Float64}\nMOI.ScalarAffineFunction{Float64} in MOI.LessThan{Float64}\nMOI.VariableIndex in MOI.EqualTo{Float64}\nMOI.VariableIndex in MOI.GreaterThan{Float64}\nMOI.VariableIndex in MOI.Integer\nMOI.VariableIndex in MOI.Interval{Float64}\nMOI.VariableIndex in MOI.LessThan{Float64}\nMOI.VariableIndex in MOI.ZeroOne\nMOI.VectorOfVariables in MOI.SOS1{Float64}\nMOI.VectorOfVariables in MOI.SOS2{Float64}","category":"page"},{"location":"packages/Cbc/","page":"jump-dev/Cbc.jl","title":"jump-dev/Cbc.jl","text":"List of supported model attributes:","category":"page"},{"location":"packages/Cbc/","page":"jump-dev/Cbc.jl","title":"jump-dev/Cbc.jl","text":"Cbc.Status\nCbc.SecondaryStatus\nMOI.DualStatus\nMOI.NodeCount\nMOI.NumberOfVariables\nMOI.ObjectiveBound\nMOI.ObjectiveSense\nMOI.ObjectiveValue\nMOI.PrimalStatus\nMOI.RelativeGap\nMOI.ResultCount\nMOI.SolveTimeSec\nMOI.TerminationStatus","category":"page"},{"location":"packages/Cbc/","page":"jump-dev/Cbc.jl","title":"jump-dev/Cbc.jl","text":"List of supported optimizer attributes:","category":"page"},{"location":"packages/Cbc/","page":"jump-dev/Cbc.jl","title":"jump-dev/Cbc.jl","text":"Cbc.SetVariableNames\nMOI.AbsoluteGapTolerance\nMOI.NumberOfThreads\nMOI.RawOptimizerAttribute\nMOI.RelativeGapTolerance\nMOI.Silent\nMOI.SolverName\nMOI.SolverVersion\nMOI.TimeLimitSec","category":"page"},{"location":"packages/Cbc/","page":"jump-dev/Cbc.jl","title":"jump-dev/Cbc.jl","text":"List of supported variable attributes:","category":"page"},{"location":"packages/Cbc/","page":"jump-dev/Cbc.jl","title":"jump-dev/Cbc.jl","text":"MOI.VariablePrimal\nMOI.VariablePrimalStart\nMOI.VariableName","category":"page"},{"location":"packages/Cbc/","page":"jump-dev/Cbc.jl","title":"jump-dev/Cbc.jl","text":"List of supported constraint attributes:","category":"page"},{"location":"packages/Cbc/","page":"jump-dev/Cbc.jl","title":"jump-dev/Cbc.jl","text":"MOI.ConstraintPrimal","category":"page"},{"location":"packages/Cbc/#Options","page":"jump-dev/Cbc.jl","title":"Options","text":"","category":"section"},{"location":"packages/Cbc/","page":"jump-dev/Cbc.jl","title":"jump-dev/Cbc.jl","text":"Options are, unfortunately, not well documented.","category":"page"},{"location":"packages/Cbc/","page":"jump-dev/Cbc.jl","title":"jump-dev/Cbc.jl","text":"The following options are likely to be the most useful:","category":"page"},{"location":"packages/Cbc/","page":"jump-dev/Cbc.jl","title":"jump-dev/Cbc.jl","text":"Parameter Example Explanation\nseconds 60.0 Solution timeout limit\nlogLevel 2 Set to 0 to disable solution output\nmaxSolutions 1 Terminate after this many feasible solutions have been found\nmaxNodes 1 Terminate after this many branch-and-bound nodes have been evaluated\nallowableGap 0.05 Terminate after optimality gap is less than this value (on an absolute scale)\nratioGap 0.05 Terminate after optimality gap is smaller than this relative fraction\nthreads 1 Set the number of threads to use for parallel branch & bound","category":"page"},{"location":"packages/Cbc/","page":"jump-dev/Cbc.jl","title":"jump-dev/Cbc.jl","text":"The complete list of parameters can be found by running the cbc executable and typing ? at the prompt.","category":"page"},{"location":"packages/Cbc/","page":"jump-dev/Cbc.jl","title":"jump-dev/Cbc.jl","text":"Start the cbc executable from Julia as follows:","category":"page"},{"location":"packages/Cbc/","page":"jump-dev/Cbc.jl","title":"jump-dev/Cbc.jl","text":"using Cbc_jll\nCbc_jll.cbc() do exe\n run(`$(exe)`)\nend","category":"page"},{"location":"tutorials/linear/geographic_clustering/","page":"Geographical clustering","title":"Geographical clustering","text":"EditURL = \"geographic_clustering.jl\"","category":"page"},{"location":"tutorials/linear/geographic_clustering/#Geographical-clustering","page":"Geographical clustering","title":"Geographical clustering","text":"","category":"section"},{"location":"tutorials/linear/geographic_clustering/","page":"Geographical clustering","title":"Geographical clustering","text":"This tutorial was generated using Literate.jl. Download the source as a .jl file.","category":"page"},{"location":"tutorials/linear/geographic_clustering/","page":"Geographical clustering","title":"Geographical clustering","text":"This tutorial was originally contributed by Matthew Helm and Mathieu Tanneau.","category":"page"},{"location":"tutorials/linear/geographic_clustering/","page":"Geographical clustering","title":"Geographical clustering","text":"The goal of this exercise is to cluster n cities into k groups, minimizing the total pairwise distance between cities and ensuring that the variance in the total populations of each group is relatively small.","category":"page"},{"location":"tutorials/linear/geographic_clustering/","page":"Geographical clustering","title":"Geographical clustering","text":"This tutorial uses the following packages:","category":"page"},{"location":"tutorials/linear/geographic_clustering/","page":"Geographical clustering","title":"Geographical clustering","text":"using JuMP\nimport DataFrames\nimport HiGHS\nimport LinearAlgebra","category":"page"},{"location":"tutorials/linear/geographic_clustering/","page":"Geographical clustering","title":"Geographical clustering","text":"For this example, we'll use the 20 most populous cities in the United States.","category":"page"},{"location":"tutorials/linear/geographic_clustering/","page":"Geographical clustering","title":"Geographical clustering","text":"cities = DataFrames.DataFrame(\n Union{String,Float64}[\n \"New York, NY\" 8.405 40.7127 -74.0059\n \"Los Angeles, CA\" 3.884 34.0522 -118.2436\n \"Chicago, IL\" 2.718 41.8781 -87.6297\n \"Houston, TX\" 2.195 29.7604 -95.3698\n \"Philadelphia, PA\" 1.553 39.9525 -75.1652\n \"Phoenix, AZ\" 1.513 33.4483 -112.0740\n \"San Antonio, TX\" 1.409 29.4241 -98.4936\n \"San Diego, CA\" 1.355 32.7157 -117.1610\n \"Dallas, TX\" 1.257 32.7766 -96.7969\n \"San Jose, CA\" 0.998 37.3382 -121.8863\n \"Austin, TX\" 0.885 30.2671 -97.7430\n \"Indianapolis, IN\" 0.843 39.7684 -86.1580\n \"Jacksonville, FL\" 0.842 30.3321 -81.6556\n \"San Francisco, CA\" 0.837 37.7749 -122.4194\n \"Columbus, OH\" 0.822 39.9611 -82.9987\n \"Charlotte, NC\" 0.792 35.2270 -80.8431\n \"Fort Worth, TX\" 0.792 32.7554 -97.3307\n \"Detroit, MI\" 0.688 42.3314 -83.0457\n \"El Paso, TX\" 0.674 31.7775 -106.4424\n \"Memphis, TN\" 0.653 35.1495 -90.0489\n ],\n [\"city\", \"population\", \"lat\", \"lon\"],\n)","category":"page"},{"location":"tutorials/linear/geographic_clustering/#Model-Specifics","page":"Geographical clustering","title":"Model Specifics","text":"","category":"section"},{"location":"tutorials/linear/geographic_clustering/","page":"Geographical clustering","title":"Geographical clustering","text":"We will cluster these 20 cities into 3 different groups and we will assume that the ideal or target population P for a group is simply the total population of the 20 cities divided by 3:","category":"page"},{"location":"tutorials/linear/geographic_clustering/","page":"Geographical clustering","title":"Geographical clustering","text":"n = size(cities, 1)\nk = 3\nP = sum(cities.population) / k","category":"page"},{"location":"tutorials/linear/geographic_clustering/#Obtaining-the-distances-between-each-city","page":"Geographical clustering","title":"Obtaining the distances between each city","text":"","category":"section"},{"location":"tutorials/linear/geographic_clustering/","page":"Geographical clustering","title":"Geographical clustering","text":"Let's compute the pairwise Haversine distance between each of the cities in our data set and store the result in a variable we'll call dm:","category":"page"},{"location":"tutorials/linear/geographic_clustering/","page":"Geographical clustering","title":"Geographical clustering","text":"\"\"\"\n haversine(lat1, long1, lat2, long2, r = 6372.8)\n\nCompute the haversine distance between two points on a sphere of radius `r`,\nwhere the points are given by the latitude/longitude pairs `lat1/long1` and\n`lat2/long2` (in degrees).\n\"\"\"\nfunction haversine(lat1, long1, lat2, long2, r = 6372.8)\n lat1, long1 = deg2rad(lat1), deg2rad(long1)\n lat2, long2 = deg2rad(lat2), deg2rad(long2)\n hav(a, b) = sin((b - a) / 2)^2\n inner_term = hav(lat1, lat2) + cos(lat1) * cos(lat2) * hav(long1, long2)\n d = 2 * r * asin(sqrt(inner_term))\n # Round distance to nearest kilometer.\n return round(Int, d)\nend","category":"page"},{"location":"tutorials/linear/geographic_clustering/","page":"Geographical clustering","title":"Geographical clustering","text":"Our distance matrix is symmetric so we'll convert it to a LowerTriangular matrix so that we can better interpret the objective value of our model:","category":"page"},{"location":"tutorials/linear/geographic_clustering/","page":"Geographical clustering","title":"Geographical clustering","text":"dm = LinearAlgebra.LowerTriangular([\n haversine(cities.lat[i], cities.lon[i], cities.lat[j], cities.lon[j])\n for i in 1:n, j in 1:n\n])","category":"page"},{"location":"tutorials/linear/geographic_clustering/#Build-the-model","page":"Geographical clustering","title":"Build the model","text":"","category":"section"},{"location":"tutorials/linear/geographic_clustering/","page":"Geographical clustering","title":"Geographical clustering","text":"Now that we have the basics taken care of, we can set up our model, create decision variables, add constraints, and then solve.","category":"page"},{"location":"tutorials/linear/geographic_clustering/","page":"Geographical clustering","title":"Geographical clustering","text":"First, we'll set up a model that leverages the Cbc solver. Next, we'll set up a binary variable x_ik that takes the value 1 if city i is in group k and 0 otherwise. Each city must be in a group, so we'll add the constraint sum_k x_ik = 1 for every i.","category":"page"},{"location":"tutorials/linear/geographic_clustering/","page":"Geographical clustering","title":"Geographical clustering","text":"model = Model(HiGHS.Optimizer)\nset_silent(model)\n@variable(model, x[1:n, 1:k], Bin)\n@constraint(model, [i = 1:n], sum(x[i, :]) == 1);\n# To reduce symmetry, we fix the first city to belong to the first group.\nfix(x[1, 1], 1; force = true)","category":"page"},{"location":"tutorials/linear/geographic_clustering/","page":"Geographical clustering","title":"Geographical clustering","text":"The total population of a group k is Q_k = sum_ix_ikq_i where q_i is simply the i-th value from the population column in our cities DataFrame. Let's add constraints so that alpha leq (Q_k - P) leq beta. We'll set alpha equal to -3 million and beta equal to 3. By adjusting these thresholds you'll find that there is a tradeoff between having relatively even populations between groups and having geographically close cities within each group. In other words, the larger the absolute values of alpha and beta, the closer together the cities in a group will be but the variance between the group populations will be higher.","category":"page"},{"location":"tutorials/linear/geographic_clustering/","page":"Geographical clustering","title":"Geographical clustering","text":"@variable(model, -3 <= population_diff[1:k] <= 3)\n@constraint(model, population_diff .== x' * cities.population .- P)","category":"page"},{"location":"tutorials/linear/geographic_clustering/","page":"Geographical clustering","title":"Geographical clustering","text":"Now we need to add one last binary variable z_ij to our model that we'll use to compute the total distance between the cities in our groups, defined as sum_ijd_ijz_ij. Variable z_ij will equal 1 if cities i and j are in the same group, and 0 if they are not in the same group.","category":"page"},{"location":"tutorials/linear/geographic_clustering/","page":"Geographical clustering","title":"Geographical clustering","text":"To ensure that z_ij = 1 if and only if cities i and j are in the same group, we add the constraints z_ij geq x_ik + x_jk - 1 for every pair ij and every k:","category":"page"},{"location":"tutorials/linear/geographic_clustering/","page":"Geographical clustering","title":"Geographical clustering","text":"@variable(model, z[i = 1:n, j = 1:i], Bin)\nfor k in 1:k, i in 1:n, j in 1:i\n @constraint(model, z[i, j] >= x[i, k] + x[j, k] - 1)\nend","category":"page"},{"location":"tutorials/linear/geographic_clustering/","page":"Geographical clustering","title":"Geographical clustering","text":"We can now add an objective to our model which will simply be to minimize the dot product of z and our distance matrix, dm.","category":"page"},{"location":"tutorials/linear/geographic_clustering/","page":"Geographical clustering","title":"Geographical clustering","text":"@objective(model, Min, sum(dm[i, j] * z[i, j] for i in 1:n, j in 1:i));\nnothing #hide","category":"page"},{"location":"tutorials/linear/geographic_clustering/","page":"Geographical clustering","title":"Geographical clustering","text":"We can then call optimize! and review the results.","category":"page"},{"location":"tutorials/linear/geographic_clustering/","page":"Geographical clustering","title":"Geographical clustering","text":"optimize!(model)\n@assert is_solved_and_feasible(model)","category":"page"},{"location":"tutorials/linear/geographic_clustering/#Reviewing-the-Results","page":"Geographical clustering","title":"Reviewing the Results","text":"","category":"section"},{"location":"tutorials/linear/geographic_clustering/","page":"Geographical clustering","title":"Geographical clustering","text":"Now that we have results, we can add a column to our cities DataFrame for the group and then loop through our x variable to assign each city to its group. Once we have that, we can look at the total population for each group and also look at the cities in each group to verify that they are grouped by geographic proximity.","category":"page"},{"location":"tutorials/linear/geographic_clustering/","page":"Geographical clustering","title":"Geographical clustering","text":"cities.group = zeros(n)\n\nfor i in 1:n, j in 1:k\n if round(Int, value(x[i, j])) == 1\n cities.group[i] = j\n end\nend\n\nfor group in DataFrames.groupby(cities, :group)\n @show group\n println(\"\")\n @show sum(group.population)\n println(\"\")\nend","category":"page"},{"location":"packages/DisjunctiveProgramming/","page":"hdavid16/DisjunctiveProgramming.jl","title":"hdavid16/DisjunctiveProgramming.jl","text":"EditURL = \"https://github.com/hdavid16/DisjunctiveProgramming.jl/blob/6a4d0ac4a7484e52b1dbff9cee310a73d2d23e81/docs/jump/README.md\"","category":"page"},{"location":"packages/DisjunctiveProgramming/","page":"hdavid16/DisjunctiveProgramming.jl","title":"hdavid16/DisjunctiveProgramming.jl","text":"(Image: Logo)","category":"page"},{"location":"packages/DisjunctiveProgramming/","page":"hdavid16/DisjunctiveProgramming.jl","title":"hdavid16/DisjunctiveProgramming.jl","text":"DisjunctiveProgramming.jl is a JuMP extension for expressing and solving Generalized Disjunctive Programs. Generalized Disjunctive Programming (GDP) is a modeling paradigm for easily modeling logical conditions which can be reformulated into a variety of mixed-integer programs. ","category":"page"},{"location":"packages/DisjunctiveProgramming/","page":"hdavid16/DisjunctiveProgramming.jl","title":"hdavid16/DisjunctiveProgramming.jl","text":"Current Version Documentation Build Status Citation\n(Image: ) (Image: ) (Image: Build Status) (Image: codecov.io) (Image: arXiv)","category":"page"},{"location":"packages/DisjunctiveProgramming/","page":"hdavid16/DisjunctiveProgramming.jl","title":"hdavid16/DisjunctiveProgramming.jl","text":"DisjunctiveProgramming builds upon JuMP to add support GDP modeling objects which include:","category":"page"},{"location":"packages/DisjunctiveProgramming/","page":"hdavid16/DisjunctiveProgramming.jl","title":"hdavid16/DisjunctiveProgramming.jl","text":"Logical variables (Y in textFalse textTrue)\nDisjunctions\nLogical constraints (also known as propositions)\nCardinality constraints","category":"page"},{"location":"packages/DisjunctiveProgramming/","page":"hdavid16/DisjunctiveProgramming.jl","title":"hdavid16/DisjunctiveProgramming.jl","text":"It also supports automatic conversion of the GDP model into a regular mixed-integer JuMP model via a variety of reformulations which include:","category":"page"},{"location":"packages/DisjunctiveProgramming/","page":"hdavid16/DisjunctiveProgramming.jl","title":"hdavid16/DisjunctiveProgramming.jl","text":"Big-M\nHull\nIndicator constraints","category":"page"},{"location":"packages/DisjunctiveProgramming/","page":"hdavid16/DisjunctiveProgramming.jl","title":"hdavid16/DisjunctiveProgramming.jl","text":"Moreover, DisjunctiveProgramming provides an extension API to easily add new reformulation methods.","category":"page"},{"location":"packages/DisjunctiveProgramming/#License","page":"hdavid16/DisjunctiveProgramming.jl","title":"License","text":"","category":"section"},{"location":"packages/DisjunctiveProgramming/","page":"hdavid16/DisjunctiveProgramming.jl","title":"hdavid16/DisjunctiveProgramming.jl","text":"InfiniteOpt is licensed under the MIT \"Expat\" license.","category":"page"},{"location":"packages/DisjunctiveProgramming/#Installation","page":"hdavid16/DisjunctiveProgramming.jl","title":"Installation","text":"","category":"section"},{"location":"packages/DisjunctiveProgramming/","page":"hdavid16/DisjunctiveProgramming.jl","title":"hdavid16/DisjunctiveProgramming.jl","text":"DisjunctiveProgramming.jl is a registered Julia package and can be installed by entering the following in the REPL.","category":"page"},{"location":"packages/DisjunctiveProgramming/","page":"hdavid16/DisjunctiveProgramming.jl","title":"hdavid16/DisjunctiveProgramming.jl","text":"julia> import Pkg; Pkg.add(\"DisjunctiveProgramming\")","category":"page"},{"location":"packages/DisjunctiveProgramming/#Documentation","page":"hdavid16/DisjunctiveProgramming.jl","title":"Documentation","text":"","category":"section"},{"location":"packages/DisjunctiveProgramming/","page":"hdavid16/DisjunctiveProgramming.jl","title":"hdavid16/DisjunctiveProgramming.jl","text":"Please visit our documentation pages to learn more.","category":"page"},{"location":"packages/DisjunctiveProgramming/#Citing","page":"hdavid16/DisjunctiveProgramming.jl","title":"Citing","text":"","category":"section"},{"location":"packages/DisjunctiveProgramming/","page":"hdavid16/DisjunctiveProgramming.jl","title":"hdavid16/DisjunctiveProgramming.jl","text":"(Image: arXiv)","category":"page"},{"location":"packages/DisjunctiveProgramming/","page":"hdavid16/DisjunctiveProgramming.jl","title":"hdavid16/DisjunctiveProgramming.jl","text":"If you use DisjunctiveProgramming.jl in your research, we would greatly appreciate your citing it.","category":"page"},{"location":"packages/DisjunctiveProgramming/","page":"hdavid16/DisjunctiveProgramming.jl","title":"hdavid16/DisjunctiveProgramming.jl","text":"@article{perez2023disjunctiveprogramming,\n title={DisjunctiveProgramming. jl: Generalized Disjunctive Programming Models and Algorithms for JuMP},\n author={Perez, Hector D and Joshi, Shivank and Grossmann, Ignacio E},\n journal={arXiv preprint arXiv:2304.10492},\n year={2023}\n}","category":"page"},{"location":"manual/objective/","page":"Objectives","title":"Objectives","text":"CurrentModule = JuMP\nDocTestSetup = quote\n using JuMP\nend\nDocTestFilters = [r\"≤|<=\", r\"≥|>=\", r\" == | = \", r\" ∈ | in \", r\"MathOptInterface|MOI\"]","category":"page"},{"location":"manual/objective/#Objectives","page":"Objectives","title":"Objectives","text":"","category":"section"},{"location":"manual/objective/","page":"Objectives","title":"Objectives","text":"This page describes macros and functions related to linear and quadratic objective functions only, unless otherwise indicated. For nonlinear objective functions, see Nonlinear Modeling.","category":"page"},{"location":"manual/objective/#Set-a-linear-objective","page":"Objectives","title":"Set a linear objective","text":"","category":"section"},{"location":"manual/objective/","page":"Objectives","title":"Objectives","text":"Use the @objective macro to set a linear objective function.","category":"page"},{"location":"manual/objective/","page":"Objectives","title":"Objectives","text":"Use Min to create a minimization objective:","category":"page"},{"location":"manual/objective/","page":"Objectives","title":"Objectives","text":"julia> model = Model();\n\njulia> @variable(model, x);\n\njulia> @objective(model, Min, 2x + 1)\n2 x + 1","category":"page"},{"location":"manual/objective/","page":"Objectives","title":"Objectives","text":"Use Max to create a maximization objective:","category":"page"},{"location":"manual/objective/","page":"Objectives","title":"Objectives","text":"julia> model = Model();\n\njulia> @variable(model, x);\n\njulia> @objective(model, Max, 2x + 1)\n2 x + 1","category":"page"},{"location":"manual/objective/#Set-a-quadratic-objective","page":"Objectives","title":"Set a quadratic objective","text":"","category":"section"},{"location":"manual/objective/","page":"Objectives","title":"Objectives","text":"Use the @objective macro to set a quadratic objective function.","category":"page"},{"location":"manual/objective/","page":"Objectives","title":"Objectives","text":"Use ^2 to have a variable squared:","category":"page"},{"location":"manual/objective/","page":"Objectives","title":"Objectives","text":"julia> model = Model();\n\njulia> @variable(model, x);\n\njulia> @objective(model, Min, x^2 + 2x + 1)\nx² + 2 x + 1","category":"page"},{"location":"manual/objective/","page":"Objectives","title":"Objectives","text":"You can also have bilinear terms between variables:","category":"page"},{"location":"manual/objective/","page":"Objectives","title":"Objectives","text":"julia> model = Model();\n\njulia> @variable(model, x)\nx\n\njulia> @variable(model, y)\ny\n\njulia> @objective(model, Max, x * y + x + y)\nx*y + x + y","category":"page"},{"location":"manual/objective/#Set-a-nonlinear-objective","page":"Objectives","title":"Set a nonlinear objective","text":"","category":"section"},{"location":"manual/objective/","page":"Objectives","title":"Objectives","text":"Use the @objective macro to set a nonlinear objective function:","category":"page"},{"location":"manual/objective/","page":"Objectives","title":"Objectives","text":"julia> model = Model();\n\njulia> @variable(model, x <= 1);\n\njulia> @objective(model, Max, log(x))\nlog(x)","category":"page"},{"location":"manual/objective/#Query-the-objective-function","page":"Objectives","title":"Query the objective function","text":"","category":"section"},{"location":"manual/objective/","page":"Objectives","title":"Objectives","text":"Use objective_function to return the current objective function.","category":"page"},{"location":"manual/objective/","page":"Objectives","title":"Objectives","text":"julia> model = Model();\n\njulia> @variable(model, x);\n\njulia> @objective(model, Min, 2x + 1)\n2 x + 1\n\njulia> objective_function(model)\n2 x + 1","category":"page"},{"location":"manual/objective/#Evaluate-the-objective-function-at-a-point","page":"Objectives","title":"Evaluate the objective function at a point","text":"","category":"section"},{"location":"manual/objective/","page":"Objectives","title":"Objectives","text":"Use value to evaluate an objective function at a point specifying values for variables.","category":"page"},{"location":"manual/objective/","page":"Objectives","title":"Objectives","text":"julia> model = Model();\n\njulia> @variable(model, x[1:2]);\n\njulia> @objective(model, Min, 2x[1]^2 + x[1] + 0.5*x[2])\n2 x[1]² + x[1] + 0.5 x[2]\n\njulia> f = objective_function(model)\n2 x[1]² + x[1] + 0.5 x[2]\n\njulia> point = Dict(x[1] => 2.0, x[2] => 1.0);\n\njulia> value(z -> point[z], f)\n10.5","category":"page"},{"location":"manual/objective/#Query-the-objective-sense","page":"Objectives","title":"Query the objective sense","text":"","category":"section"},{"location":"manual/objective/","page":"Objectives","title":"Objectives","text":"Use objective_sense to return the current objective sense.","category":"page"},{"location":"manual/objective/","page":"Objectives","title":"Objectives","text":"julia> model = Model();\n\njulia> @variable(model, x);\n\njulia> @objective(model, Min, 2x + 1)\n2 x + 1\n\njulia> objective_sense(model)\nMIN_SENSE::OptimizationSense = 0","category":"page"},{"location":"manual/objective/#Modify-an-objective","page":"Objectives","title":"Modify an objective","text":"","category":"section"},{"location":"manual/objective/","page":"Objectives","title":"Objectives","text":"To modify an objective, call @objective with the new objective function.","category":"page"},{"location":"manual/objective/","page":"Objectives","title":"Objectives","text":"julia> model = Model();\n\njulia> @variable(model, x);\n\njulia> @objective(model, Min, 2x)\n2 x\n\njulia> @objective(model, Max, -2x)\n-2 x","category":"page"},{"location":"manual/objective/","page":"Objectives","title":"Objectives","text":"Alternatively, use set_objective_function.","category":"page"},{"location":"manual/objective/","page":"Objectives","title":"Objectives","text":"julia> model = Model();\n\njulia> @variable(model, x);\n\njulia> @objective(model, Min, 2x)\n2 x\n\njulia> new_objective = @expression(model, -2 * x)\n-2 x\n\njulia> set_objective_function(model, new_objective)","category":"page"},{"location":"manual/objective/#Modify-an-objective-coefficient","page":"Objectives","title":"Modify an objective coefficient","text":"","category":"section"},{"location":"manual/objective/","page":"Objectives","title":"Objectives","text":"Use set_objective_coefficient to modify an objective coefficient.","category":"page"},{"location":"manual/objective/","page":"Objectives","title":"Objectives","text":"julia> model = Model();\n\njulia> @variable(model, x);\n\njulia> @objective(model, Min, 2x)\n2 x\n\njulia> set_objective_coefficient(model, x, 3)\n\njulia> objective_function(model)\n3 x","category":"page"},{"location":"manual/objective/","page":"Objectives","title":"Objectives","text":"Use set_objective_coefficient with two variables to modify a quadratic objective coefficient:","category":"page"},{"location":"manual/objective/","page":"Objectives","title":"Objectives","text":"julia> model = Model();\n\njulia> @variable(model, x);\n\njulia> @variable(model, y);\n\njulia> @objective(model, Min, x^2 + x * y)\nx² + x*y\n\njulia> set_objective_coefficient(model, x, x, 2)\n\njulia> set_objective_coefficient(model, x, y, 3)\n\njulia> objective_function(model)\n2 x² + 3 x*y","category":"page"},{"location":"manual/objective/#Modify-the-objective-sense","page":"Objectives","title":"Modify the objective sense","text":"","category":"section"},{"location":"manual/objective/","page":"Objectives","title":"Objectives","text":"Use set_objective_sense to modify the objective sense.","category":"page"},{"location":"manual/objective/","page":"Objectives","title":"Objectives","text":"julia> model = Model();\n\njulia> @variable(model, x);\n\njulia> @objective(model, Min, 2x)\n2 x\n\njulia> objective_sense(model)\nMIN_SENSE::OptimizationSense = 0\n\njulia> set_objective_sense(model, MAX_SENSE);\n\njulia> objective_sense(model)\nMAX_SENSE::OptimizationSense = 1","category":"page"},{"location":"manual/objective/","page":"Objectives","title":"Objectives","text":"Alternatively, call @objective and pass the existing objective function.","category":"page"},{"location":"manual/objective/","page":"Objectives","title":"Objectives","text":"julia> model = Model();\n\njulia> @variable(model, x);\n\njulia> @objective(model, Min, 2x)\n2 x\n\njulia> @objective(model, Max, objective_function(model))\n2 x","category":"page"},{"location":"manual/objective/#Set-a-vector-valued-objective","page":"Objectives","title":"Set a vector-valued objective","text":"","category":"section"},{"location":"manual/objective/","page":"Objectives","title":"Objectives","text":"Define a multi-objective optimization problem by passing a vector of objectives:","category":"page"},{"location":"manual/objective/","page":"Objectives","title":"Objectives","text":"julia> model = Model();\n\njulia> @variable(model, x[1:2]);\n\njulia> @objective(model, Min, [1 + x[1], 2 * x[2]])\n2-element Vector{AffExpr}:\n x[1] + 1\n 2 x[2]\n\njulia> f = objective_function(model)\n2-element Vector{AffExpr}:\n x[1] + 1\n 2 x[2]","category":"page"},{"location":"manual/objective/","page":"Objectives","title":"Objectives","text":"tip: Tip\nThe Multi-objective knapsack tutorial provides an example of solving a multi-objective integer program.","category":"page"},{"location":"manual/objective/","page":"Objectives","title":"Objectives","text":"In most cases, multi-objective optimization solvers will return multiple solutions, corresponding to points on the Pareto frontier. See Multiple solutions for information on how to query and work with multiple solutions.","category":"page"},{"location":"manual/objective/","page":"Objectives","title":"Objectives","text":"Note that you must set a single objective sense, that is, you cannot have both minimization and maximization objectives. Work around this limitation by choosing Min and negating any objectives you want to maximize:","category":"page"},{"location":"manual/objective/","page":"Objectives","title":"Objectives","text":"julia> model = Model();\n\njulia> @variable(model, x[1:2]);\n\njulia> @expression(model, obj1, 1 + x[1])\nx[1] + 1\n\njulia> @expression(model, obj2, 2 * x[1])\n2 x[1]\n\njulia> @objective(model, Min, [obj1, -obj2])\n2-element Vector{AffExpr}:\n x[1] + 1\n -2 x[1]","category":"page"},{"location":"manual/objective/","page":"Objectives","title":"Objectives","text":"Defining your objectives as expressions allows flexibility in how you can solve variations of the same problem, with some objectives removed and constrained to be no worse that a fixed value.","category":"page"},{"location":"manual/objective/","page":"Objectives","title":"Objectives","text":"julia> model = Model();\n\njulia> @variable(model, x[1:2]);\n\njulia> @expression(model, obj1, 1 + x[1])\nx[1] + 1\n\njulia> @expression(model, obj2, 2 * x[1])\n2 x[1]\n\njulia> @expression(model, obj3, x[1] + x[2])\nx[1] + x[2]\n\njulia> @objective(model, Min, [obj1, obj2, obj3]) # Three-objective problem\n3-element Vector{AffExpr}:\n x[1] + 1\n 2 x[1]\n x[1] + x[2]\n\njulia> # optimize!(model), look at the solution, talk to stakeholders, then\n # decide you want to solve a new problem where the third objective is\n # removed and constrained to be better than 2.0.\n nothing\n\njulia> @objective(model, Min, [obj1, obj2]) # Two-objective problem\n2-element Vector{AffExpr}:\n x[1] + 1\n 2 x[1]\n\njulia> @constraint(model, obj3 <= 2.0)\nx[1] + x[2] ≤ 2","category":"page"},{"location":"moi/reference/callbacks/","page":"Callbacks","title":"Callbacks","text":"EditURL = \"https://github.com/jump-dev/MathOptInterface.jl/blob/v1.34.0/docs/src/reference/callbacks.md\"","category":"page"},{"location":"moi/reference/callbacks/","page":"Callbacks","title":"Callbacks","text":"CurrentModule = MathOptInterface\nDocTestSetup = quote\n import MathOptInterface as MOI\nend\nDocTestFilters = [r\"MathOptInterface|MOI\"]","category":"page"},{"location":"moi/reference/callbacks/#Callbacks","page":"Callbacks","title":"Callbacks","text":"","category":"section"},{"location":"moi/reference/callbacks/","page":"Callbacks","title":"Callbacks","text":"AbstractCallback\nAbstractSubmittable\nsubmit","category":"page"},{"location":"moi/reference/callbacks/#MathOptInterface.AbstractCallback","page":"Callbacks","title":"MathOptInterface.AbstractCallback","text":"abstract type AbstractCallback <: AbstractModelAttribute end\n\nAbstract type for a model attribute representing a callback function. The value set to subtypes of AbstractCallback is a function that may be called during optimize!. As optimize! is in progress, the result attributes (that is, the attributes attr such that is_set_by_optimize(attr)) may not be accessible from the callback, hence trying to get result attributes might throw a OptimizeInProgress error.\n\nAt most one callback of each type can be registered. If an optimizer already has a function for a callback type, and the user registers a new function, then the old one is replaced.\n\nThe value of the attribute should be a function taking only one argument, commonly called callback_data, that can be used for instance in LazyConstraintCallback, HeuristicCallback and UserCutCallback.\n\n\n\n\n\n","category":"type"},{"location":"moi/reference/callbacks/#MathOptInterface.AbstractSubmittable","page":"Callbacks","title":"MathOptInterface.AbstractSubmittable","text":"AbstractSubmittable\n\nAbstract supertype for objects that can be submitted to the model.\n\n\n\n\n\n","category":"type"},{"location":"moi/reference/callbacks/#MathOptInterface.submit","page":"Callbacks","title":"MathOptInterface.submit","text":"submit(\n optimizer::AbstractOptimizer,\n sub::AbstractSubmittable,\n values...,\n)::Nothing\n\nSubmit values to the submittable sub of the optimizer optimizer.\n\nAn UnsupportedSubmittable error is thrown if model does not support the attribute attr (see supports) and a SubmitNotAllowed error is thrown if it supports the submittable sub but it cannot be submitted.\n\n\n\n\n\n","category":"function"},{"location":"moi/reference/callbacks/#Attributes","page":"Callbacks","title":"Attributes","text":"","category":"section"},{"location":"moi/reference/callbacks/","page":"Callbacks","title":"Callbacks","text":"CallbackNodeStatus\nCallbackVariablePrimal\nCallbackNodeStatusCode\nCALLBACK_NODE_STATUS_INTEGER\nCALLBACK_NODE_STATUS_FRACTIONAL\nCALLBACK_NODE_STATUS_UNKNOWN","category":"page"},{"location":"moi/reference/callbacks/#MathOptInterface.CallbackNodeStatus","page":"Callbacks","title":"MathOptInterface.CallbackNodeStatus","text":"CallbackNodeStatus(callback_data)\n\nAn optimizer attribute describing the (in)feasibility of the primal solution available from CallbackVariablePrimal during a callback identified by callback_data.\n\nReturns a CallbackNodeStatusCode Enum.\n\n\n\n\n\n","category":"type"},{"location":"moi/reference/callbacks/#MathOptInterface.CallbackVariablePrimal","page":"Callbacks","title":"MathOptInterface.CallbackVariablePrimal","text":"CallbackVariablePrimal(callback_data)\n\nA variable attribute for the assignment to some primal variable's value during the callback identified by callback_data.\n\n\n\n\n\n","category":"type"},{"location":"moi/reference/callbacks/#MathOptInterface.CallbackNodeStatusCode","page":"Callbacks","title":"MathOptInterface.CallbackNodeStatusCode","text":"CallbackNodeStatusCode\n\nAn Enum of possible return values from calling get with CallbackNodeStatus.\n\nValues\n\nPossible values are:\n\nCALLBACK_NODE_STATUS_INTEGER: the primal solution available from CallbackVariablePrimal is integer feasible.\nCALLBACK_NODE_STATUS_FRACTIONAL: the primal solution available from CallbackVariablePrimal is integer infeasible.\nCALLBACK_NODE_STATUS_UNKNOWN: the primal solution available from CallbackVariablePrimal might be integer feasible or infeasible.\n\n\n\n\n\n","category":"type"},{"location":"moi/reference/callbacks/#MathOptInterface.CALLBACK_NODE_STATUS_INTEGER","page":"Callbacks","title":"MathOptInterface.CALLBACK_NODE_STATUS_INTEGER","text":"CALLBACK_NODE_STATUS_INTEGER::CallbackNodeStatusCode\n\nAn instance of the CallbackNodeStatusCode enum.\n\nCALLBACK_NODE_STATUS_INTEGER: the primal solution available from CallbackVariablePrimal is integer feasible.\n\n\n\n\n\n","category":"constant"},{"location":"moi/reference/callbacks/#MathOptInterface.CALLBACK_NODE_STATUS_FRACTIONAL","page":"Callbacks","title":"MathOptInterface.CALLBACK_NODE_STATUS_FRACTIONAL","text":"CALLBACK_NODE_STATUS_FRACTIONAL::CallbackNodeStatusCode\n\nAn instance of the CallbackNodeStatusCode enum.\n\nCALLBACK_NODE_STATUS_FRACTIONAL: the primal solution available from CallbackVariablePrimal is integer infeasible.\n\n\n\n\n\n","category":"constant"},{"location":"moi/reference/callbacks/#MathOptInterface.CALLBACK_NODE_STATUS_UNKNOWN","page":"Callbacks","title":"MathOptInterface.CALLBACK_NODE_STATUS_UNKNOWN","text":"CALLBACK_NODE_STATUS_UNKNOWN::CallbackNodeStatusCode\n\nAn instance of the CallbackNodeStatusCode enum.\n\nCALLBACK_NODE_STATUS_UNKNOWN: the primal solution available from CallbackVariablePrimal might be integer feasible or infeasible.\n\n\n\n\n\n","category":"constant"},{"location":"moi/reference/callbacks/#Lazy-constraints","page":"Callbacks","title":"Lazy constraints","text":"","category":"section"},{"location":"moi/reference/callbacks/","page":"Callbacks","title":"Callbacks","text":"LazyConstraintCallback\nLazyConstraint","category":"page"},{"location":"moi/reference/callbacks/#MathOptInterface.LazyConstraintCallback","page":"Callbacks","title":"MathOptInterface.LazyConstraintCallback","text":"LazyConstraintCallback() <: AbstractCallback\n\nThe callback can be used to reduce the feasible set given the current primal solution by submitting a LazyConstraint. For instance, it may be called at an incumbent of a mixed-integer problem. Note that there is no guarantee that the callback is called at every feasible primal solution.\n\nThe current primal solution is accessed through CallbackVariablePrimal. Trying to access other result attributes will throw OptimizeInProgress as discussed in AbstractCallback.\n\nExample\n\nx = MOI.add_variables(optimizer, 8)\nMOI.set(optimizer, MOI.LazyConstraintCallback(), callback_data -> begin\n sol = MOI.get(optimizer, MOI.CallbackVariablePrimal(callback_data), x)\n if # should add a lazy constraint\n func = # computes function\n set = # computes set\n MOI.submit(optimizer, MOI.LazyConstraint(callback_data), func, set)\n end\nend)\n\n\n\n\n\n","category":"type"},{"location":"moi/reference/callbacks/#MathOptInterface.LazyConstraint","page":"Callbacks","title":"MathOptInterface.LazyConstraint","text":"LazyConstraint(callback_data)\n\nLazy constraint func-in-set submitted as func, set. The optimal solution returned by VariablePrimal will satisfy all lazy constraints that have been submitted.\n\nThis can be submitted only from the LazyConstraintCallback. The field callback_data is a solver-specific callback type that is passed as the argument to the feasible solution callback.\n\nExample\n\nSuppose x and y are VariableIndexs of optimizer. To add a LazyConstraint for 2x + 3y <= 1, write\n\nfunc = 2.0x + 3.0y\nset = MOI.LessThan(1.0)\nMOI.submit(optimizer, MOI.LazyConstraint(callback_data), func, set)\n\ninside a LazyConstraintCallback of data callback_data.\n\n\n\n\n\n","category":"type"},{"location":"moi/reference/callbacks/#User-cuts","page":"Callbacks","title":"User cuts","text":"","category":"section"},{"location":"moi/reference/callbacks/","page":"Callbacks","title":"Callbacks","text":"UserCutCallback\nUserCut","category":"page"},{"location":"moi/reference/callbacks/#MathOptInterface.UserCutCallback","page":"Callbacks","title":"MathOptInterface.UserCutCallback","text":"UserCutCallback() <: AbstractCallback\n\nThe callback can be used to submit UserCut given the current primal solution. For instance, it may be called at fractional (that is, non-integer) nodes in the branch and bound tree of a mixed-integer problem. Note that there is not guarantee that the callback is called everytime the solver has an infeasible solution.\n\nThe infeasible solution is accessed through CallbackVariablePrimal. Trying to access other result attributes will throw OptimizeInProgress as discussed in AbstractCallback.\n\nExample\n\nx = MOI.add_variables(optimizer, 8)\nMOI.set(optimizer, MOI.UserCutCallback(), callback_data -> begin\n sol = MOI.get(optimizer, MOI.CallbackVariablePrimal(callback_data), x)\n if # can find a user cut\n func = # computes function\n set = # computes set\n MOI.submit(optimizer, MOI.UserCut(callback_data), func, set)\n end\nend\n\n\n\n\n\n","category":"type"},{"location":"moi/reference/callbacks/#MathOptInterface.UserCut","page":"Callbacks","title":"MathOptInterface.UserCut","text":"UserCut(callback_data)\n\nConstraint func-to-set suggested to help the solver detect the solution given by CallbackVariablePrimal as infeasible. The cut is submitted as func, set. Typically CallbackVariablePrimal will violate integrality constraints, and a cut would be of the form ScalarAffineFunction-in-LessThan or ScalarAffineFunction-in-GreaterThan. Note that, as opposed to LazyConstraint, the provided constraint cannot modify the feasible set, the constraint should be redundant, for example, it may be a consequence of affine and integrality constraints.\n\nThis can be submitted only from the UserCutCallback. The field callback_data is a solver-specific callback type that is passed as the argument to the infeasible solution callback.\n\nNote that the solver may silently ignore the provided constraint.\n\n\n\n\n\n","category":"type"},{"location":"moi/reference/callbacks/#Heuristic-solutions","page":"Callbacks","title":"Heuristic solutions","text":"","category":"section"},{"location":"moi/reference/callbacks/","page":"Callbacks","title":"Callbacks","text":"HeuristicCallback\nHeuristicSolution\nHeuristicSolutionStatus\nHEURISTIC_SOLUTION_ACCEPTED\nHEURISTIC_SOLUTION_REJECTED\nHEURISTIC_SOLUTION_UNKNOWN","category":"page"},{"location":"moi/reference/callbacks/#MathOptInterface.HeuristicCallback","page":"Callbacks","title":"MathOptInterface.HeuristicCallback","text":"HeuristicCallback() <: AbstractCallback\n\nThe callback can be used to submit HeuristicSolution given the current primal solution. For example, it may be called at fractional (that is, non-integer) nodes in the branch and bound tree of a mixed-integer problem. Note that there is no guarantee that the callback is called every time the solver has an infeasible solution.\n\nThe current primal solution is accessed through CallbackVariablePrimal. Trying to access other result attributes will throw OptimizeInProgress as discussed in AbstractCallback.\n\nExample\n\nx = MOI.add_variables(optimizer, 8)\nMOI.set(optimizer, MOI.HeuristicCallback(), callback_data -> begin\n sol = MOI.get(optimizer, MOI.CallbackVariablePrimal(callback_data), x)\n if # can find a heuristic solution\n values = # computes heuristic solution\n MOI.submit(optimizer, MOI.HeuristicSolution(callback_data), x,\n values)\n end\nend\n\n\n\n\n\n","category":"type"},{"location":"moi/reference/callbacks/#MathOptInterface.HeuristicSolution","page":"Callbacks","title":"MathOptInterface.HeuristicSolution","text":"HeuristicSolution(callback_data)\n\nHeuristically obtained feasible solution. The solution is submitted as variables, values where values[i] gives the value of variables[i], similarly to set. The submit call returns a HeuristicSolutionStatus indicating whether the provided solution was accepted or rejected.\n\nThis can be submitted only from the HeuristicCallback. The field callback_data is a solver-specific callback type that is passed as the argument to the heuristic callback.\n\nSome solvers require a complete solution, others only partial solutions.\n\n\n\n\n\n","category":"type"},{"location":"moi/reference/callbacks/#MathOptInterface.HeuristicSolutionStatus","page":"Callbacks","title":"MathOptInterface.HeuristicSolutionStatus","text":"HeuristicSolutionStatus\n\nAn Enum of possible return values for submit with HeuristicSolution. This informs whether the heuristic solution was accepted or rejected.\n\nValues\n\nPossible values are:\n\nHEURISTIC_SOLUTION_ACCEPTED: The heuristic solution was accepted\nHEURISTIC_SOLUTION_REJECTED: The heuristic solution was rejected\nHEURISTIC_SOLUTION_UNKNOWN: No information available on the acceptance\n\n\n\n\n\n","category":"type"},{"location":"moi/reference/callbacks/#MathOptInterface.HEURISTIC_SOLUTION_ACCEPTED","page":"Callbacks","title":"MathOptInterface.HEURISTIC_SOLUTION_ACCEPTED","text":"HEURISTIC_SOLUTION_ACCEPTED::HeuristicSolutionStatus\n\nAn instance of the HeuristicSolutionStatus enum.\n\nHEURISTIC_SOLUTION_ACCEPTED: The heuristic solution was accepted\n\n\n\n\n\n","category":"constant"},{"location":"moi/reference/callbacks/#MathOptInterface.HEURISTIC_SOLUTION_REJECTED","page":"Callbacks","title":"MathOptInterface.HEURISTIC_SOLUTION_REJECTED","text":"HEURISTIC_SOLUTION_REJECTED::HeuristicSolutionStatus\n\nAn instance of the HeuristicSolutionStatus enum.\n\nHEURISTIC_SOLUTION_REJECTED: The heuristic solution was rejected\n\n\n\n\n\n","category":"constant"},{"location":"moi/reference/callbacks/#MathOptInterface.HEURISTIC_SOLUTION_UNKNOWN","page":"Callbacks","title":"MathOptInterface.HEURISTIC_SOLUTION_UNKNOWN","text":"HEURISTIC_SOLUTION_UNKNOWN::HeuristicSolutionStatus\n\nAn instance of the HeuristicSolutionStatus enum.\n\nHEURISTIC_SOLUTION_UNKNOWN: No information available on the acceptance\n\n\n\n\n\n","category":"constant"},{"location":"packages/SDDP/","page":"odow/SDDP.jl","title":"odow/SDDP.jl","text":"EditURL = \"https://github.com/odow/SDDP.jl/blob/v1.9.0/README.md\"","category":"page"},{"location":"packages/SDDP/","page":"odow/SDDP.jl","title":"odow/SDDP.jl","text":"\"logo\"","category":"page"},{"location":"packages/SDDP/#SDDP.jl","page":"odow/SDDP.jl","title":"SDDP.jl","text":"","category":"section"},{"location":"packages/SDDP/","page":"odow/SDDP.jl","title":"odow/SDDP.jl","text":"(Image: Build Status) (Image: codecov)","category":"page"},{"location":"packages/SDDP/","page":"odow/SDDP.jl","title":"odow/SDDP.jl","text":"SDDP.jl is a JuMP extension for solving large convex multistage stochastic programming problems using stochastic dual dynamic programming.","category":"page"},{"location":"packages/SDDP/#License","page":"odow/SDDP.jl","title":"License","text":"","category":"section"},{"location":"packages/SDDP/","page":"odow/SDDP.jl","title":"odow/SDDP.jl","text":"SDDP.jl is licensed under the MPL 2.0 license.","category":"page"},{"location":"packages/SDDP/#Documentation","page":"odow/SDDP.jl","title":"Documentation","text":"","category":"section"},{"location":"packages/SDDP/","page":"odow/SDDP.jl","title":"odow/SDDP.jl","text":"You can find the documentation at sddp.dev.","category":"page"},{"location":"packages/SDDP/#Help","page":"odow/SDDP.jl","title":"Help","text":"","category":"section"},{"location":"packages/SDDP/","page":"odow/SDDP.jl","title":"odow/SDDP.jl","text":"If you need help, please open a GitHub issue.","category":"page"},{"location":"packages/Plasmo/","page":"plasmo-dev/Plasmo.jl","title":"plasmo-dev/Plasmo.jl","text":"EditURL = \"https://github.com/plasmo-dev/Plasmo.jl/blob/v0.6.3/README.md\"","category":"page"},{"location":"packages/Plasmo/","page":"plasmo-dev/Plasmo.jl","title":"plasmo-dev/Plasmo.jl","text":"","category":"page"},{"location":"packages/Plasmo/","page":"plasmo-dev/Plasmo.jl","title":"plasmo-dev/Plasmo.jl","text":"(Image: CI) (Image: codecov) (Image: ) (Image: ) (Image: DOI)","category":"page"},{"location":"packages/Plasmo/#Plasmo.jl","page":"plasmo-dev/Plasmo.jl","title":"Plasmo.jl","text":"","category":"section"},{"location":"packages/Plasmo/","page":"plasmo-dev/Plasmo.jl","title":"plasmo-dev/Plasmo.jl","text":"(Platform for Scalable Modeling and Optimization)","category":"page"},{"location":"packages/Plasmo/","page":"plasmo-dev/Plasmo.jl","title":"plasmo-dev/Plasmo.jl","text":"[!NOTE] Plasmo.jl has undergone significant refactorization with the release of version 0.6. While most syntax should still work, we advise checking out the documentation for the latest updates and filing an issue if a v0.5 model produces errors.","category":"page"},{"location":"packages/Plasmo/","page":"plasmo-dev/Plasmo.jl","title":"plasmo-dev/Plasmo.jl","text":"Plasmo.jl is a graph-based algebraic modeling framework for building, managing, and solving optimization problems that utilizes graph-theoretic concepts and modular data structures. The package extends JuMP.jl to offer concise syntax, interfaces with MathOptInterface.jl to access standard optimization solvers, and utilizes Graphs.jl to provide graph analysis and processing methods. Plasmo.jl facilitates developing optimization models for networked systems such as supply chains, power systems, industrial processes, or any coupled system that involves multiple components and connections. The package also acts as a high-level platform to develop customized optimization-based decomposition techniques and meta-algorithms to optimize problems over large systems.","category":"page"},{"location":"packages/Plasmo/#Overview","page":"plasmo-dev/Plasmo.jl","title":"Overview","text":"","category":"section"},{"location":"packages/Plasmo/","page":"plasmo-dev/Plasmo.jl","title":"plasmo-dev/Plasmo.jl","text":"The core object in Plasmo.jl is the OptiGraph, a graph data structure that represents optimization problems as a set of optinodes and optiedges. Optinodes encapsulate variables, expressions, and constraints (and objective functions) as modular models and edges encapsulate linking constraints that couple variables across optinodes. Optigraphs can be embedded within other optigraphs to induce nested hierarchical structures, or they can be partitioned using different graph projections and partitioning algorithms to create new decomposition structures.","category":"page"},{"location":"packages/Plasmo/","page":"plasmo-dev/Plasmo.jl","title":"plasmo-dev/Plasmo.jl","text":"The core data structure in Plasmo.jl is the OptiGraph. The optigraph contains a set of optinodes which represent self-contained optimization problems and optiedges that represent coupling between optinodes (which produces an underlying hypergraph structure of optinodes and optiedges). Optigraphs can further be embedded within other optigraphs to create nested hierarchical graph structures. The graph structures obtained using Plasmo.jl can be used for simple model and data management, but they can also be used to perform graph partitioning or develop interfaces to structured optimization solvers.","category":"page"},{"location":"packages/Plasmo/#License","page":"plasmo-dev/Plasmo.jl","title":"License","text":"","category":"section"},{"location":"packages/Plasmo/","page":"plasmo-dev/Plasmo.jl","title":"plasmo-dev/Plasmo.jl","text":"Plasmo.jl is licensed under the MPL 2.0 license.","category":"page"},{"location":"packages/Plasmo/#Installation","page":"plasmo-dev/Plasmo.jl","title":"Installation","text":"","category":"section"},{"location":"packages/Plasmo/","page":"plasmo-dev/Plasmo.jl","title":"plasmo-dev/Plasmo.jl","text":"Install Plasmo using Pkg.add:","category":"page"},{"location":"packages/Plasmo/","page":"plasmo-dev/Plasmo.jl","title":"plasmo-dev/Plasmo.jl","text":"import Pkg\nPkg.add(\"Plasmo\")","category":"page"},{"location":"packages/Plasmo/#Documentation","page":"plasmo-dev/Plasmo.jl","title":"Documentation","text":"","category":"section"},{"location":"packages/Plasmo/","page":"plasmo-dev/Plasmo.jl","title":"plasmo-dev/Plasmo.jl","text":"The current documentation is available through GitHub Pages. Additional examples can be found in the examples folder.","category":"page"},{"location":"packages/Plasmo/#Simple-Example","page":"plasmo-dev/Plasmo.jl","title":"Simple Example","text":"","category":"section"},{"location":"packages/Plasmo/","page":"plasmo-dev/Plasmo.jl","title":"plasmo-dev/Plasmo.jl","text":"using Plasmo\nusing Ipopt\n\n#create an optigraph\ngraph = OptiGraph()\n\n#add nodes to an optigraph\n@optinode(graph, n1)\n@optinode(graph, n2)\n\n#add variables and constraints to nodes\n@variable(n1, 0 <= x <= 2)\n@variable(n1, 0 <= y <= 3)\n@constraint(n1, x+y <= 4)\n\n@variable(n2,x)\n@constraint(n2, exp(x) >= 2)\n\n#add linking constraints that couple nodes\n@linkconstraint(graph, n1[:x] == n2[:x])\n\n# set an optigraph objective\n@objective(graph, Min, n1[:x] + n2[:x])\n\n#optimize with Ipopt\nset_optimizer(graph, Ipopt.Optimizer)\noptimize!(graph)\n\n#Print solution values\nprintln(\"n1[:x] = \", value(n1[:x]))\nprintln(\"n2[:x] = \", value(n2[:x]))","category":"page"},{"location":"packages/Plasmo/#Acknowledgments","page":"plasmo-dev/Plasmo.jl","title":"Acknowledgments","text":"","category":"section"},{"location":"packages/Plasmo/","page":"plasmo-dev/Plasmo.jl","title":"plasmo-dev/Plasmo.jl","text":"This code is based on work supported by the following funding agencies:","category":"page"},{"location":"packages/Plasmo/","page":"plasmo-dev/Plasmo.jl","title":"plasmo-dev/Plasmo.jl","text":"U.S. Department of Energy (DOE), Office of Science, under Contract No. DE-AC02-06CH11357\nDOE Office of Electricity Delivery and Energy Reliability’s Advanced Grid Research and Development program at Argonne National Laboratory\nNational Science Foundation under award NSF-EECS-1609183 and under award CBET-1748516","category":"page"},{"location":"packages/Plasmo/","page":"plasmo-dev/Plasmo.jl","title":"plasmo-dev/Plasmo.jl","text":"The primary developer is Jordan Jalving (@jalving) with support from the following contributors. ","category":"page"},{"location":"packages/Plasmo/","page":"plasmo-dev/Plasmo.jl","title":"plasmo-dev/Plasmo.jl","text":"Victor Zavala (University of Wisconsin-Madison)\nYankai Cao (University of British Columbia)\nKibaek Kim (Argonne National Laboratory)\nSungho Shin (University of Wisconsin-Madison)","category":"page"},{"location":"packages/Plasmo/#Citing-Plasmo.jl","page":"plasmo-dev/Plasmo.jl","title":"Citing Plasmo.jl","text":"","category":"section"},{"location":"packages/Plasmo/","page":"plasmo-dev/Plasmo.jl","title":"plasmo-dev/Plasmo.jl","text":"If you find Plasmo.jl useful for your work, you may cite the manuscript as:","category":"page"},{"location":"packages/Plasmo/","page":"plasmo-dev/Plasmo.jl","title":"plasmo-dev/Plasmo.jl","text":"@article{Jalving2022,\n title={A Graph-Based Modeling Abstraction for Optimization: Concepts and Implementation in Plasmo.jl},\n author={Jordan Jalving and Sungho Shin and Victor M. Zavala},\n journal={Mathematical Programming Computation},\n year={2022},\n volume={14},\n pages={699 - 747},\n doi={10.1007/s12532-022-00223-3}\n}","category":"page"},{"location":"packages/Plasmo/","page":"plasmo-dev/Plasmo.jl","title":"plasmo-dev/Plasmo.jl","text":"You can also access a freely available pre-print.","category":"page"},{"location":"packages/Plasmo/","page":"plasmo-dev/Plasmo.jl","title":"plasmo-dev/Plasmo.jl","text":"There is also an earlier manuscript where we presented the initial ideas behind Plasmo.jl which you can find here:","category":"page"},{"location":"packages/Plasmo/","page":"plasmo-dev/Plasmo.jl","title":"plasmo-dev/Plasmo.jl","text":"@article{JalvingCaoZavala2019,\nauthor = {Jalving, Jordan and Cao, Yankai and Zavala, Victor M},\njournal = {Computers {\\&} Chemical Engineering},\npages = {134--154},\ntitle = {Graph-based modeling and simulation of complex systems},\nvolume = {125},\nyear = {2019},\ndoi = {10.1016/j.compchemeng.2019.03.009}\n}","category":"page"},{"location":"packages/Plasmo/","page":"plasmo-dev/Plasmo.jl","title":"plasmo-dev/Plasmo.jl","text":"A pre-print of this paper can be found here","category":"page"},{"location":"packages/MiniZinc/","page":"jump-dev/MiniZinc.jl","title":"jump-dev/MiniZinc.jl","text":"EditURL = \"https://github.com/jump-dev/MiniZinc.jl/blob/v0.3.12/README.md\"","category":"page"},{"location":"packages/MiniZinc/#MiniZinc.jl","page":"jump-dev/MiniZinc.jl","title":"MiniZinc.jl","text":"","category":"section"},{"location":"packages/MiniZinc/","page":"jump-dev/MiniZinc.jl","title":"jump-dev/MiniZinc.jl","text":"MiniZinc.jl is a wrapper for the MiniZinc constraint modeling language.","category":"page"},{"location":"packages/MiniZinc/","page":"jump-dev/MiniZinc.jl","title":"jump-dev/MiniZinc.jl","text":"It provides a way to write MathOptInterface models to .mzn files, and a way to interact with libminizinc.","category":"page"},{"location":"packages/MiniZinc/#Affiliation","page":"jump-dev/MiniZinc.jl","title":"Affiliation","text":"","category":"section"},{"location":"packages/MiniZinc/","page":"jump-dev/MiniZinc.jl","title":"jump-dev/MiniZinc.jl","text":"This wrapper is maintained by the JuMP community and is not part of the MiniZinc project.","category":"page"},{"location":"packages/MiniZinc/#Getting-help","page":"jump-dev/MiniZinc.jl","title":"Getting help","text":"","category":"section"},{"location":"packages/MiniZinc/","page":"jump-dev/MiniZinc.jl","title":"jump-dev/MiniZinc.jl","text":"If you need help, please ask a question on the JuMP community forum.","category":"page"},{"location":"packages/MiniZinc/","page":"jump-dev/MiniZinc.jl","title":"jump-dev/MiniZinc.jl","text":"If you have a reproducible example of a bug, please open a GitHub issue.","category":"page"},{"location":"packages/MiniZinc/#License","page":"jump-dev/MiniZinc.jl","title":"License","text":"","category":"section"},{"location":"packages/MiniZinc/","page":"jump-dev/MiniZinc.jl","title":"jump-dev/MiniZinc.jl","text":"MiniZinc.jl is licensed under the MIT License.","category":"page"},{"location":"packages/MiniZinc/","page":"jump-dev/MiniZinc.jl","title":"jump-dev/MiniZinc.jl","text":"The underlying project, MiniZinc/libminizinc, is licensed under the MPL 2.0 license.","category":"page"},{"location":"packages/MiniZinc/#Install","page":"jump-dev/MiniZinc.jl","title":"Install","text":"","category":"section"},{"location":"packages/MiniZinc/","page":"jump-dev/MiniZinc.jl","title":"jump-dev/MiniZinc.jl","text":"Install MiniZinc.jl using the Julia package manager:","category":"page"},{"location":"packages/MiniZinc/","page":"jump-dev/MiniZinc.jl","title":"jump-dev/MiniZinc.jl","text":"import Pkg\nPkg.add(\"MiniZinc\")","category":"page"},{"location":"packages/MiniZinc/","page":"jump-dev/MiniZinc.jl","title":"jump-dev/MiniZinc.jl","text":"Windows","category":"page"},{"location":"packages/MiniZinc/","page":"jump-dev/MiniZinc.jl","title":"jump-dev/MiniZinc.jl","text":"On Linux and macOS, this package automatically installs libminizinc. However, we're still working out problems with the install on Windows. To use MiniZinc.jl, you'll need to manually install a copy of libminizinc from minizinc.org or compile one yourself from MiniZinc/libminizinc.","category":"page"},{"location":"packages/MiniZinc/","page":"jump-dev/MiniZinc.jl","title":"jump-dev/MiniZinc.jl","text":"To teach MiniZinc.jl where to look for libminizinc, set the JULIA_LIBMINIZINC_DIR environment variable. For example:","category":"page"},{"location":"packages/MiniZinc/","page":"jump-dev/MiniZinc.jl","title":"jump-dev/MiniZinc.jl","text":"ENV[\"JULIA_LIBMINIZINC_DIR\"] = \"C:\\\\Program Files\\\\MiniZinc\"","category":"page"},{"location":"packages/MiniZinc/#Use-with-MathOptInterface","page":"jump-dev/MiniZinc.jl","title":"Use with MathOptInterface","text":"","category":"section"},{"location":"packages/MiniZinc/","page":"jump-dev/MiniZinc.jl","title":"jump-dev/MiniZinc.jl","text":"MiniZinc.jl supports the constraint programming sets defined in MathOptInterface, as well as (in)equality constraints.","category":"page"},{"location":"packages/MiniZinc/","page":"jump-dev/MiniZinc.jl","title":"jump-dev/MiniZinc.jl","text":"The following example solves the following constraint program:","category":"page"},{"location":"packages/MiniZinc/","page":"jump-dev/MiniZinc.jl","title":"jump-dev/MiniZinc.jl","text":"xᵢ ∈ {1, 2, 3} ∀i=1,2,3\nzⱼ ∈ {0, 1} ∀j=1,2\nz₁ <-> x₁ != x₂\nz₂ <-> x₂ != x₃\nz₁ + z₂ = 1","category":"page"},{"location":"packages/MiniZinc/","page":"jump-dev/MiniZinc.jl","title":"jump-dev/MiniZinc.jl","text":"julia> import MiniZinc\n\njulia> import MathOptInterface as MOI\n\njulia> function main()\n model = MOI.Utilities.CachingOptimizer(\n MiniZinc.Model{Int}(),\n MiniZinc.Optimizer{Int}(\"chuffed\"),\n )\n # xᵢ ∈ {1, 2, 3} ∀i=1,2,3\n x = MOI.add_variables(model, 3)\n MOI.add_constraint.(model, x, MOI.Interval(1, 3))\n MOI.add_constraint.(model, x, MOI.Integer())\n # zⱼ ∈ {0, 1} ∀j=1,2\n z = MOI.add_variables(model, 2)\n MOI.add_constraint.(model, z, MOI.ZeroOne())\n # z₁ <-> x₁ != x₂\n MOI.add_constraint(\n model,\n MOI.VectorOfVariables([z[1], x[1], x[2]]),\n MOI.Reified(MOI.AllDifferent(2)),\n )\n # z₂ <-> x₂ != x₃\n MOI.add_constraint(\n model,\n MOI.VectorOfVariables([z[2], x[2], x[3]]),\n MOI.Reified(MOI.AllDifferent(2)),\n )\n # z₁ + z₂ = 1\n MOI.add_constraint(model, 1 * z[1] + x[2], MOI.EqualTo(1))\n MOI.optimize!(model)\n x_star = MOI.get(model, MOI.VariablePrimal(), x)\n z_star = MOI.get(model, MOI.VariablePrimal(), z)\n return x_star, z_star\n end\nmain (generic function with 1 method)\n\njulia> main()\n([1, 1, 3], [0, 1])","category":"page"},{"location":"packages/MiniZinc/#Use-with-JuMP","page":"jump-dev/MiniZinc.jl","title":"Use with JuMP","text":"","category":"section"},{"location":"packages/MiniZinc/","page":"jump-dev/MiniZinc.jl","title":"jump-dev/MiniZinc.jl","text":"You can also call MiniZinc from JuMP, using any solver that libminizinc supports. By default, MiniZinc.jl is compiled with the HiGHS MILP solver, which can be selected by passing the \"highs\" parameter to MiniZinc.Optimizer:","category":"page"},{"location":"packages/MiniZinc/","page":"jump-dev/MiniZinc.jl","title":"jump-dev/MiniZinc.jl","text":"using JuMP\nimport MiniZinc\nmodel = Model(() -> MiniZinc.Optimizer{Float64}(\"highs\"))\n@variable(model, 1 <= x[1:3] <= 3, Int)\n@constraint(model, x in MOI.AllDifferent(3))\n@objective(model, Max, sum(i * x[i] for i in 1:3))\noptimize!(model)\n@show value.(x)","category":"page"},{"location":"packages/MiniZinc/#MathOptInterface-API","page":"jump-dev/MiniZinc.jl","title":"MathOptInterface API","text":"","category":"section"},{"location":"packages/MiniZinc/","page":"jump-dev/MiniZinc.jl","title":"jump-dev/MiniZinc.jl","text":"The MiniZinc Optimizer{T} supports the following constraints and attributes.","category":"page"},{"location":"packages/MiniZinc/","page":"jump-dev/MiniZinc.jl","title":"jump-dev/MiniZinc.jl","text":"List of supported objective functions:","category":"page"},{"location":"packages/MiniZinc/","page":"jump-dev/MiniZinc.jl","title":"jump-dev/MiniZinc.jl","text":"MOI.ObjectiveFunction{MOI.ScalarAffineFunction{T}}\nMOI.ObjectiveFunction{MOI.ScalarQuadraticFunction{T}}\nMOI.ObjectiveFunction{MOI.VariableIndex}","category":"page"},{"location":"packages/MiniZinc/","page":"jump-dev/MiniZinc.jl","title":"jump-dev/MiniZinc.jl","text":"List of supported variable types:","category":"page"},{"location":"packages/MiniZinc/","page":"jump-dev/MiniZinc.jl","title":"jump-dev/MiniZinc.jl","text":"MOI.Reals","category":"page"},{"location":"packages/MiniZinc/","page":"jump-dev/MiniZinc.jl","title":"jump-dev/MiniZinc.jl","text":"List of supported constraint types:","category":"page"},{"location":"packages/MiniZinc/","page":"jump-dev/MiniZinc.jl","title":"jump-dev/MiniZinc.jl","text":"MOI.ScalarAffineFunction{T} in MOI.EqualTo{T}\nMOI.ScalarAffineFunction{T} in MOI.GreaterThan{T}\nMOI.ScalarAffineFunction{T} in MOI.Integer\nMOI.ScalarAffineFunction{T} in MOI.Interval{T}\nMOI.ScalarAffineFunction{T} in MOI.LessThan{T}\nMOI.ScalarAffineFunction{T} in MOI.ZeroOne\nMOI.VariableIndex in MOI.EqualTo{T}\nMOI.VariableIndex in MOI.GreaterThan{T}\nMOI.VariableIndex in MOI.Integer\nMOI.VariableIndex in MOI.Interval{T}\nMOI.VariableIndex in MOI.LessThan{T}\nMOI.VariableIndex in MOI.Parameter{T}\nMOI.VariableIndex in MOI.Semicontinuous{T}\nMOI.VariableIndex in MOI.Semiinteger{T}\nMOI.VariableIndex in MOI.ZeroOne\nMOI.VectorOfVariables in MOI.AllDifferent\nMOI.VectorOfVariables in MOI.BinPacking{T}\nMOI.VectorOfVariables in MOI.Circuit\nMOI.VectorOfVariables in MOI.CountAtLeast\nMOI.VectorOfVariables in MOI.CountBelongs\nMOI.VectorOfVariables in MOI.CountDistinct\nMOI.VectorOfVariables in MOI.CountGreaterThan\nMOI.VectorOfVariables in MOI.Cumulative\nMOI.VectorOfVariables in MOI.Path\nMOI.VectorOfVariables in MOI.Table{T}","category":"page"},{"location":"packages/MiniZinc/","page":"jump-dev/MiniZinc.jl","title":"jump-dev/MiniZinc.jl","text":"List of supported model attributes:","category":"page"},{"location":"packages/MiniZinc/","page":"jump-dev/MiniZinc.jl","title":"jump-dev/MiniZinc.jl","text":"MOI.NLPBlock()\nMOI.Name()\nMOI.ObjectiveSense()","category":"page"},{"location":"packages/MiniZinc/#Options","page":"jump-dev/MiniZinc.jl","title":"Options","text":"","category":"section"},{"location":"packages/MiniZinc/","page":"jump-dev/MiniZinc.jl","title":"jump-dev/MiniZinc.jl","text":"Set options using MOI.RawOptimizerAttribute in MOI or set_attribute in JuMP.","category":"page"},{"location":"packages/MiniZinc/","page":"jump-dev/MiniZinc.jl","title":"jump-dev/MiniZinc.jl","text":"MiniZinc.jl supports the following options:","category":"page"},{"location":"packages/MiniZinc/","page":"jump-dev/MiniZinc.jl","title":"jump-dev/MiniZinc.jl","text":"model_filename::String = \"\": the location at which to write out the .mzn file during optimization. This option can be helpful during debugging. If left empty, a temporary file will be used instead.\nMOI.SolutionLimit: set this option to a positive integer to return up to the limit number of solutions.","category":"page"},{"location":"tutorials/linear/transp/","page":"The transportation problem","title":"The transportation problem","text":"EditURL = \"transp.jl\"","category":"page"},{"location":"tutorials/linear/transp/#The-transportation-problem","page":"The transportation problem","title":"The transportation problem","text":"","category":"section"},{"location":"tutorials/linear/transp/","page":"The transportation problem","title":"The transportation problem","text":"This tutorial was generated using Literate.jl. Download the source as a .jl file.","category":"page"},{"location":"tutorials/linear/transp/","page":"The transportation problem","title":"The transportation problem","text":"This tutorial was originally contributed by Louis Luangkesorn.","category":"page"},{"location":"tutorials/linear/transp/","page":"The transportation problem","title":"The transportation problem","text":"This tutorial is an adaptation of the transportation problem described in AMPL: A Modeling Language for Mathematical Programming, by R. Fourer, D.M. Gay and B.W. Kernighan.","category":"page"},{"location":"tutorials/linear/transp/","page":"The transportation problem","title":"The transportation problem","text":"The purpose of this tutorial is to demonstrate how to create a JuMP model from an ad-hoc structured text file.","category":"page"},{"location":"tutorials/linear/transp/#Required-packages","page":"The transportation problem","title":"Required packages","text":"","category":"section"},{"location":"tutorials/linear/transp/","page":"The transportation problem","title":"The transportation problem","text":"This tutorial uses the following packages:","category":"page"},{"location":"tutorials/linear/transp/","page":"The transportation problem","title":"The transportation problem","text":"using JuMP\nimport DelimitedFiles\nimport HiGHS","category":"page"},{"location":"tutorials/linear/transp/#Formulation","page":"The transportation problem","title":"Formulation","text":"","category":"section"},{"location":"tutorials/linear/transp/","page":"The transportation problem","title":"The transportation problem","text":"Suppose that we have a set of factories that produce pogo sticks, and a set of retail stores in which to sell them. Each factory has a maximum number of pogo sticks that it can produce, and each retail store has a demand of pogo sticks that it can sell.","category":"page"},{"location":"tutorials/linear/transp/","page":"The transportation problem","title":"The transportation problem","text":"In the transportation problem, we want to choose the number of pogo sticks to make and ship from each factory to each retail store that minimizes the total shipping cost.","category":"page"},{"location":"tutorials/linear/transp/","page":"The transportation problem","title":"The transportation problem","text":"Mathematically, we represent our set of factories by a set of origins i in O and our retail stores by a set of destinations j in D. The maximum supply at each factory is s_i and the demand from each retail store is d_j. The cost of shipping one pogo stick from i to j is c_ij.","category":"page"},{"location":"tutorials/linear/transp/","page":"The transportation problem","title":"The transportation problem","text":"With a little effort, we can model the transportation problem as the following linear program:","category":"page"},{"location":"tutorials/linear/transp/","page":"The transportation problem","title":"The transportation problem","text":"beginaligned\nmin sum_i in O j in D c_ij x_ij \nst sum_j in D x_i j le s_i forall i in O \n sum_i in O x_i j = d_j forall j in D \n x_i j ge 0 forall i in O j in D\nendaligned","category":"page"},{"location":"tutorials/linear/transp/#Data","page":"The transportation problem","title":"Data","text":"","category":"section"},{"location":"tutorials/linear/transp/","page":"The transportation problem","title":"The transportation problem","text":"We assume our data is in the form of a text file that has the following form. In practice, we would obtain this text file from the user as input, but for the purpose of this tutorial we're going to create it from Julia.","category":"page"},{"location":"tutorials/linear/transp/","page":"The transportation problem","title":"The transportation problem","text":"open(joinpath(@__DIR__, \"transp.txt\"), \"w\") do io\n print(\n io,\n \"\"\"\n . FRA DET LAN WIN STL FRE LAF SUPPLY\n GARY 39 14 11 14 16 82 8 1400\n CLEV 27 . 12 . 26 95 17 2600\n PITT 24 14 17 13 28 99 20 2900\n DEMAND 900 1200 600 400 1700 1100 1000 0\n \"\"\",\n )\n return\nend","category":"page"},{"location":"tutorials/linear/transp/","page":"The transportation problem","title":"The transportation problem","text":"Here the rows are the origins, the columns are the destinations, and the values are the cost of shipping one pogo stick from the origin to the destination. If pogo stick cannot be transported from a source to a destination, then the value is .. The final row and final column are the demand and supply of each location respectively.","category":"page"},{"location":"tutorials/linear/transp/","page":"The transportation problem","title":"The transportation problem","text":"We didn't account for arcs which do not exist in our formulation, but we can make a small change and fix x_ij = 0 if c_ij = .","category":"page"},{"location":"tutorials/linear/transp/","page":"The transportation problem","title":"The transportation problem","text":"Our first step is to convert this text format into an appropriate Julia datastructure that we can work with. Since our data is tabular with named rows and columns, one option is JuMP's Containers.DenseAxisArray object:","category":"page"},{"location":"tutorials/linear/transp/","page":"The transportation problem","title":"The transportation problem","text":"function read_data(filename::String)\n data = DelimitedFiles.readdlm(filename)\n rows, columns = data[2:end, 1], data[1, 2:end]\n return Containers.DenseAxisArray(data[2:end, 2:end], rows, columns)\nend\n\ndata = read_data(joinpath(@__DIR__, \"transp.txt\"))","category":"page"},{"location":"tutorials/linear/transp/#JuMP-formulation","page":"The transportation problem","title":"JuMP formulation","text":"","category":"section"},{"location":"tutorials/linear/transp/","page":"The transportation problem","title":"The transportation problem","text":"Following Design patterns for larger models, we code our JuMP model as a function which takes in an input. In this example, we print the output to stdout:","category":"page"},{"location":"tutorials/linear/transp/","page":"The transportation problem","title":"The transportation problem","text":"function solve_transportation_problem(data::Containers.DenseAxisArray)\n # Get the set of supplies and demands\n O, D = axes(data)\n # Drop the SUPPLY and DEMAND nodes from our sets\n O, D = setdiff(O, [\"DEMAND\"]), setdiff(D, [\"SUPPLY\"])\n model = Model(HiGHS.Optimizer)\n set_silent(model)\n @variable(model, x[o in O, d in D] >= 0)\n # Remove arcs with \".\" cost by fixing them to 0.0.\n for o in O, d in D\n if data[o, d] == \".\"\n fix(x[o, d], 0.0; force = true)\n end\n end\n @objective(\n model,\n Min,\n sum(data[o, d] * x[o, d] for o in O, d in D if data[o, d] != \".\"),\n )\n @constraint(model, [o in O], sum(x[o, :]) <= data[o, \"SUPPLY\"])\n @constraint(model, [d in D], sum(x[:, d]) == data[\"DEMAND\", d])\n optimize!(model)\n @assert is_solved_and_feasible(model)\n # Pretty print the solution in the format of the input\n print(\" \", join(lpad.(D, 7, ' ')))\n for o in O\n print(\"\\n\", o)\n for d in D\n if isapprox(value(x[o, d]), 0.0; atol = 1e-6)\n print(\" .\")\n else\n print(\" \", lpad(value(x[o, d]), 6, ' '))\n end\n end\n end\n return\nend","category":"page"},{"location":"tutorials/linear/transp/#Solution","page":"The transportation problem","title":"Solution","text":"","category":"section"},{"location":"tutorials/linear/transp/","page":"The transportation problem","title":"The transportation problem","text":"Let's solve and view the solution:","category":"page"},{"location":"tutorials/linear/transp/","page":"The transportation problem","title":"The transportation problem","text":"solve_transportation_problem(data)","category":"page"},{"location":"moi/developer/checklists/","page":"Checklists","title":"Checklists","text":"EditURL = \"https://github.com/jump-dev/MathOptInterface.jl/blob/v1.34.0/docs/src/developer/checklists.md\"","category":"page"},{"location":"moi/developer/checklists/#Checklists","page":"Checklists","title":"Checklists","text":"","category":"section"},{"location":"moi/developer/checklists/","page":"Checklists","title":"Checklists","text":"The purpose of this page is to collate a series of checklists for commonly performed changes to the source code of MathOptInterface.","category":"page"},{"location":"moi/developer/checklists/","page":"Checklists","title":"Checklists","text":"In each case, copy the checklist into the description of the pull request.","category":"page"},{"location":"moi/developer/checklists/#Making-a-release","page":"Checklists","title":"Making a release","text":"","category":"section"},{"location":"moi/developer/checklists/","page":"Checklists","title":"Checklists","text":"Use this checklist when making a release of the MathOptInterface repository.","category":"page"},{"location":"moi/developer/checklists/","page":"Checklists","title":"Checklists","text":"## Basic\n\n - [ ] `version` field of `Project.toml` has been updated\n - If a breaking change, increment the MAJOR field and reset others to 0\n - If adding new features, increment the MINOR field and reset PATCH to 0\n - If adding bug fixes or documentation changes, increment the PATCH field\n\n## Documentation\n\n - [ ] Add a new entry to `docs/src/changelog.md`, following existing style\n\n## Tests\n\n - [ ] The `solver-tests.yml` GitHub action does not have unexpected failures.\n To run the action, go to:\n https://github.com/jump-dev/MathOptInterface.jl/actions/workflows/solver-tests.yml\n and click \"Run workflow\"","category":"page"},{"location":"moi/developer/checklists/#Adding-a-new-set","page":"Checklists","title":"Adding a new set","text":"","category":"section"},{"location":"moi/developer/checklists/","page":"Checklists","title":"Checklists","text":"Use this checklist when adding a new set to the MathOptInterface repository.","category":"page"},{"location":"moi/developer/checklists/","page":"Checklists","title":"Checklists","text":"## Basic\n\n - [ ] Add a new `AbstractScalarSet` or `AbstractVectorSet` to `src/sets.jl`\n - [ ] If `isbitstype(S) == false`, implement `Base.copy(set::S)`\n - [ ] If `isbitstype(S) == false`, implement `Base.:(==)(x::S, y::S)`\n - [ ] If an `AbstractVectorSet`, implement `dimension(set::S)`, unless the\n dimension is given by `set.dimension`.\n\n## Utilities\n\n - [ ] If an `AbstractVectorSet`, implement `Utilities.set_dot`,\n unless the dot product between two vectors in the set is equivalent to\n `LinearAlgebra.dot`\n - [ ] If an `AbstractVectorSet`, implement `Utilities.set_with_dimension` in\n `src/Utilities/matrix_of_constraints.jl`\n - [ ] Add the set to the `@model` macro at the bottom of `src/Utilities.model.jl`\n\n## Documentation\n\n - [ ] Add a docstring, which gives the mathematical definition of the set,\n along with an `## Example` block containing a `jldoctest`\n - [ ] Add the docstring to `docs/src/reference/standard_form.md`\n - [ ] Add the set to the relevant table in `docs/src/manual/standard_form.md`\n\n## Tests\n\n - [ ] Define a new `_set(::Type{S})` method in `src/Test/test_basic_constraint.jl`\n and add the name of the set to the list at the bottom of that files\n - [ ] If the set has any checks in its constructor, add tests to `test/sets.jl`\n\n## MathOptFormat\n\n - [ ] Open an issue at `https://github.com/jump-dev/MathOptFormat` to add\n support for the new set {{ replace with link to the issue }}\n\n## Optional\n\n - [ ] Implement `dual_set(::S)` and `dual_set_type(::Type{S})`\n - [ ] Add new tests to the `Test` submodule exercising your new set\n - [ ] Add new bridges to convert your set into more commonly used sets","category":"page"},{"location":"moi/developer/checklists/#Adding-a-new-bridge","page":"Checklists","title":"Adding a new bridge","text":"","category":"section"},{"location":"moi/developer/checklists/","page":"Checklists","title":"Checklists","text":"Use this checklist when adding a new bridge to the MathOptInterface repository.","category":"page"},{"location":"moi/developer/checklists/","page":"Checklists","title":"Checklists","text":"The steps are mostly the same, but locations depend on whether the bridge is a Constraint, Objective, or Variable bridge. In each case below, replace XXX with the appropriate type of bridge.","category":"page"},{"location":"moi/developer/checklists/","page":"Checklists","title":"Checklists","text":"## Basic\n\n - [ ] Create a new file in `src/Bridges/XXX/bridges`\n - [ ] Define the bridge, following existing examples. The name of the bridge\n struct must end in `Bridge`\n - [ ] Check if your bridge can be a subtype of [`MOI.Bridges.Constraint.SetMapBridge`](@ref)\n - [ ] Define a new `const` that is a `SingleBridgeOptimizer` wrapping the\n new bridge. The name of the const must be the name of the bridge, less\n the `Bridge` suffix\n - [ ] `include` the file in `src/Bridges/XXX/bridges/XXX.jl`\n - [ ] If the bridge should be enabled by default, add the bridge to\n `add_all_bridges` at the bottom of `src/Bridges/XXX/XXX.jl`\n\n## Tests\n\n - [ ] Create a new file in the appropriate subdirectory of `tests/Bridges/XXX`\n - [ ] Use `MOI.Bridges.runtests` to test various inputs and outputs of the\n bridge\n - [ ] If, after opening the pull request to add the bridge, some lines are not\n covered by the tests, add additional bridge-specific tests to cover the\n untested lines.\n\n## Documentation\n\n - [ ] Add a docstring which uses the same template as existing bridges.\n\n## Final touch\n\nIf the bridge depends on run-time values of other variables and constraints in\nthe model:\n\n - [ ] Implement `MOI.Utilities.needs_final_touch(::Bridge)`\n - [ ] Implement `MOI.Utilities.final_touch(::Bridge, ::MOI.ModelLike)`\n - [ ] Ensure that `final_touch` can be called multiple times in a row","category":"page"},{"location":"moi/developer/checklists/#Updating-MathOptFormat","page":"Checklists","title":"Updating MathOptFormat","text":"","category":"section"},{"location":"moi/developer/checklists/","page":"Checklists","title":"Checklists","text":"Use this checklist when updating the version of MathOptFormat.","category":"page"},{"location":"moi/developer/checklists/","page":"Checklists","title":"Checklists","text":"## Basic\n\n - [ ] The file at `src/FileFormats/MOF/mof.schema.json` is updated\n - [ ] The constant `_SUPPORTED_VERSIONS` is updated in\n `src/FileFormats/MOF/MOF.jl`\n\n## New sets\n\n - [ ] New sets are added to the `@model` in `src/FileFormats/MOF/MOF.jl`\n - [ ] New sets are added to the `@enum` in `src/FileFormats/MOF/read.jl`\n - [ ] `set_to_moi` is defined for each set in `src/FileFormats/MOF/read.jl`\n - [ ] `head_name` is defined for each set in `src/FileFormats/MOF/write.jl`\n - [ ] A new unit test calling `_test_model_equality` is aded to\n `test/FileFormats/MOF/MOF.jl`\n\n## Tests\n\n - [ ] The version field in `test/FileFormats/MOF/nlp.mof.json` is updated\n\n## Documentation\n\n - [ ] The version fields are updated in `docs/src/submodules/FileFormats/overview.md`","category":"page"},{"location":"packages/SDPLR/","page":"jump-dev/SDPLR.jl","title":"jump-dev/SDPLR.jl","text":"EditURL = \"https://github.com/jump-dev/SDPLR.jl/blob/v0.1.0/README.md\"","category":"page"},{"location":"packages/SDPLR/#SDPLR","page":"jump-dev/SDPLR.jl","title":"SDPLR","text":"","category":"section"},{"location":"packages/SDPLR/","page":"jump-dev/SDPLR.jl","title":"jump-dev/SDPLR.jl","text":"(Image: Build Status) (Image: codecov)","category":"page"},{"location":"packages/SDPLR/","page":"jump-dev/SDPLR.jl","title":"jump-dev/SDPLR.jl","text":"SDPLR.jl is a wrapper for the SDPLR semidefinite programming solver.","category":"page"},{"location":"packages/SDPLR/#License","page":"jump-dev/SDPLR.jl","title":"License","text":"","category":"section"},{"location":"packages/SDPLR/","page":"jump-dev/SDPLR.jl","title":"jump-dev/SDPLR.jl","text":"SDPLR.jl is licensed under the MIT License.","category":"page"},{"location":"packages/SDPLR/","page":"jump-dev/SDPLR.jl","title":"jump-dev/SDPLR.jl","text":"The underlying solver, SDPLR, is licensed under the GPL v2 license.","category":"page"},{"location":"packages/SDPLR/#Installation","page":"jump-dev/SDPLR.jl","title":"Installation","text":"","category":"section"},{"location":"packages/SDPLR/","page":"jump-dev/SDPLR.jl","title":"jump-dev/SDPLR.jl","text":"Install SDPLR.jl using Pkg.add:","category":"page"},{"location":"packages/SDPLR/","page":"jump-dev/SDPLR.jl","title":"jump-dev/SDPLR.jl","text":"import Pkg\nPkg.add(\"SDPLR\")","category":"page"},{"location":"packages/SDPLR/","page":"jump-dev/SDPLR.jl","title":"jump-dev/SDPLR.jl","text":"In addition to installing the SDPLR.jl package, this will also download and install the SDPLR binaries. You do not need to install SDPLR separately.","category":"page"},{"location":"packages/SDPLR/","page":"jump-dev/SDPLR.jl","title":"jump-dev/SDPLR.jl","text":"To use a custom binary, read the Custom solver binaries section of the JuMP documentation.","category":"page"},{"location":"packages/SDPLR/#Use-with-JuMP","page":"jump-dev/SDPLR.jl","title":"Use with JuMP","text":"","category":"section"},{"location":"packages/SDPLR/","page":"jump-dev/SDPLR.jl","title":"jump-dev/SDPLR.jl","text":"To use SDPLR with JuMP, use SDPLR.Optimizer:","category":"page"},{"location":"packages/SDPLR/","page":"jump-dev/SDPLR.jl","title":"jump-dev/SDPLR.jl","text":"using JuMP, SDPLR\nmodel = Model(SDPLR.Optimizer)","category":"page"},{"location":"packages/SDPLR/#MathOptInterface-API","page":"jump-dev/SDPLR.jl","title":"MathOptInterface API","text":"","category":"section"},{"location":"packages/SDPLR/","page":"jump-dev/SDPLR.jl","title":"jump-dev/SDPLR.jl","text":"The SDPLR optimizer supports the following constraints and attributes.","category":"page"},{"location":"packages/SDPLR/","page":"jump-dev/SDPLR.jl","title":"jump-dev/SDPLR.jl","text":"List of supported objective functions:","category":"page"},{"location":"packages/SDPLR/","page":"jump-dev/SDPLR.jl","title":"jump-dev/SDPLR.jl","text":"MOI.ObjectiveFunction{MOI.ScalarAffineFunction{Float64}}","category":"page"},{"location":"packages/SDPLR/","page":"jump-dev/SDPLR.jl","title":"jump-dev/SDPLR.jl","text":"List of supported variable types:","category":"page"},{"location":"packages/SDPLR/","page":"jump-dev/SDPLR.jl","title":"jump-dev/SDPLR.jl","text":"MOI.Nonnegatives\nMOI.PositiveSemidefiniteConeTriangle","category":"page"},{"location":"packages/SDPLR/","page":"jump-dev/SDPLR.jl","title":"jump-dev/SDPLR.jl","text":"List of supported constraint types:","category":"page"},{"location":"packages/SDPLR/","page":"jump-dev/SDPLR.jl","title":"jump-dev/SDPLR.jl","text":"MOI.ScalarAffineFunction{Float64} in MOI.EqualTo{Float64}","category":"page"},{"location":"packages/SDPLR/","page":"jump-dev/SDPLR.jl","title":"jump-dev/SDPLR.jl","text":"List of supported model attributes:","category":"page"},{"location":"packages/SDPLR/","page":"jump-dev/SDPLR.jl","title":"jump-dev/SDPLR.jl","text":"MOI.ObjectiveSense()","category":"page"},{"location":"packages/SDPLR/#Attributes","page":"jump-dev/SDPLR.jl","title":"Attributes","text":"","category":"section"},{"location":"packages/SDPLR/","page":"jump-dev/SDPLR.jl","title":"jump-dev/SDPLR.jl","text":"The algorithm is parametrized by the attributes that can be used both with JuMP.set_attributes and JuMP.get_attributes and have the following types and default values:","category":"page"},{"location":"packages/SDPLR/","page":"jump-dev/SDPLR.jl","title":"jump-dev/SDPLR.jl","text":"rho_f::Cdouble = 1.0e-5\nrho_c::Cdouble = 1.0e-1\nsigmafac::Cdouble = 2.0\nrankreduce::Csize_t = 0\ntimelim::Csize_t = 3600\nprintlevel::Csize_t = 1\ndthresh_dim::Csize_t = 10\ndthresh_dens::Cdouble = 0.75\nnumbfgsvecs::Csize_t = 4\nrankredtol::Cdouble = 2.2204460492503131e-16\ngaptol::Cdouble = 1.0e-3\ncheckbd::Cptrdiff_t = -1\ntypebd::Cptrdiff_t = 1\nmaxrank::Function = default_maxrank","category":"page"},{"location":"packages/SDPLR/","page":"jump-dev/SDPLR.jl","title":"jump-dev/SDPLR.jl","text":"The following attributes can be also be used both with JuMP.set_attributes and JuMP.get_attributes, but they are also modified by optimize!:","category":"page"},{"location":"packages/SDPLR/","page":"jump-dev/SDPLR.jl","title":"jump-dev/SDPLR.jl","text":"majiter\niter\nlambdaupdate\ntotaltime\nsigma","category":"page"},{"location":"packages/SDPLR/","page":"jump-dev/SDPLR.jl","title":"jump-dev/SDPLR.jl","text":"When they are set, it provides the initial value of the algorithm. With get, they provide the value at the end of the algorithm. totaltime is the total time in second. For the other attributes, their meaning is best described by the following pseudo-code.","category":"page"},{"location":"packages/SDPLR/","page":"jump-dev/SDPLR.jl","title":"jump-dev/SDPLR.jl","text":"Given values of R, lambda and sigma, let vio = [dot(A[i], R * R') - b[i]) for i in 1:m] (vio[0] is dot(C, R * R') in the C implementation, but we ignore this entry here), val = dot(C, R * R') - dot(vio, lambda) + sigma/2 * norm(vio)^2, y = -lambda - sigma * vio, S = C + sum(A[i] * y[i] for i in 1:m) and the gradient is G = 2S * R. Note that norm(G) used in SDPLR when comparing with rho_c which has a 2-scaling difference from norm(S * R) used in the paper.","category":"page"},{"location":"packages/SDPLR/","page":"jump-dev/SDPLR.jl","title":"jump-dev/SDPLR.jl","text":"The SDPLR solvers implements the following algorithm.","category":"page"},{"location":"packages/SDPLR/","page":"jump-dev/SDPLR.jl","title":"jump-dev/SDPLR.jl","text":"sigma = inv(sum(size(A[i], 1) for i in 1:m))\norigval = val\nwhile majiter++ < 100_000\n lambdaupdate = 0\n localiter = 100\n while localiter > 10\n lambdaupdate += 1\n localiter = 0\n if norm(G) / (norm(C) + 1) <= rho_c / sigma\n break\n end\n while norm(G) / (norm(C) + 1) - rho_c / sigma > eps()\n localiter += 1\n iter += 1\n D = lbfgs(G)\n R += linesearch(D) * D\n if norm(vio) / (norm(b) + 1) <= rho_f || totaltime >= timelim || iter >= 10_000_000\n return\n end\n end\n lambda -= sigma * vio\n end\n if val - 1e10 * abs(origval) > eps()\n return\n end\n if norm(vio) / (norm(b) + 1) <= rho_f || totaltime >= timelim || iter >= 10_000_000\n return\n end\n while norm(G) / (norm(C) + 1) > rho_c / sigma\n sigma *= 2\n end\n lambdaupdate = 0\nend","category":"page"},{"location":"manual/expressions/","page":"Expressions","title":"Expressions","text":"DocTestSetup = quote\n using JuMP\nend","category":"page"},{"location":"manual/expressions/#Expressions","page":"Expressions","title":"Expressions","text":"","category":"section"},{"location":"manual/expressions/","page":"Expressions","title":"Expressions","text":"JuMP has three types of expressions: affine, quadratic, and nonlinear. These expressions can be inserted into constraints or into the objective. This is particularly useful if an expression is used in multiple places in the model.","category":"page"},{"location":"manual/expressions/#Affine-expressions","page":"Expressions","title":"Affine expressions","text":"","category":"section"},{"location":"manual/expressions/","page":"Expressions","title":"Expressions","text":"There are four ways of constructing an affine expression in JuMP: with the @expression macro, with operator overloading, with the AffExpr constructor, and with add_to_expression!.","category":"page"},{"location":"manual/expressions/#Macros","page":"Expressions","title":"Macros","text":"","category":"section"},{"location":"manual/expressions/","page":"Expressions","title":"Expressions","text":"The recommended way to create an affine expression is via the @expression macro.","category":"page"},{"location":"manual/expressions/","page":"Expressions","title":"Expressions","text":"julia> model = Model();\n\njulia> @variable(model, x)\nx\n\njulia> @variable(model, y)\ny\n\njulia> ex = @expression(model, 2x + y - 1)\n2 x + y - 1","category":"page"},{"location":"manual/expressions/","page":"Expressions","title":"Expressions","text":"This expression can be used in the objective or added to a constraint. For example:","category":"page"},{"location":"manual/expressions/","page":"Expressions","title":"Expressions","text":"julia> @objective(model, Min, 2 * ex - 1)\n4 x + 2 y - 3\n\njulia> objective_function(model)\n4 x + 2 y - 3","category":"page"},{"location":"manual/expressions/","page":"Expressions","title":"Expressions","text":"Just like variables and constraints, named expressions can also be created. For example","category":"page"},{"location":"manual/expressions/","page":"Expressions","title":"Expressions","text":"julia> model = Model();\n\njulia> @variable(model, x[i = 1:3]);\n\njulia> @expression(model, expr[i = 1:3], i * sum(x[j] for j in i:3));\n\njulia> expr\n3-element Vector{AffExpr}:\n x[1] + x[2] + x[3]\n 2 x[2] + 2 x[3]\n 3 x[3]","category":"page"},{"location":"manual/expressions/","page":"Expressions","title":"Expressions","text":"tip: Tip\nYou can read more about containers in the Containers section.","category":"page"},{"location":"manual/expressions/#Operator-overloading","page":"Expressions","title":"Operator overloading","text":"","category":"section"},{"location":"manual/expressions/","page":"Expressions","title":"Expressions","text":"Expressions can also be created without macros. However, note that in some cases, this can be much slower that constructing an expression using macros.","category":"page"},{"location":"manual/expressions/","page":"Expressions","title":"Expressions","text":"julia> model = Model();\n\njulia> @variable(model, x)\nx\n\njulia> @variable(model, y)\ny\n\njulia> ex = 2x + y - 1\n2 x + y - 1","category":"page"},{"location":"manual/expressions/#Constructors","page":"Expressions","title":"Constructors","text":"","category":"section"},{"location":"manual/expressions/","page":"Expressions","title":"Expressions","text":"A third way to create an affine expression is by the AffExpr constructor. The first argument is the constant term, and the remaining arguments are variable-coefficient pairs.","category":"page"},{"location":"manual/expressions/","page":"Expressions","title":"Expressions","text":"julia> model = Model();\n\njulia> @variable(model, x)\nx\n\njulia> @variable(model, y)\ny\n\njulia> ex = AffExpr(-1.0, x => 2.0, y => 1.0)\n2 x + y - 1","category":"page"},{"location":"manual/expressions/#add_to_expression!","page":"Expressions","title":"add_to_expression!","text":"","category":"section"},{"location":"manual/expressions/","page":"Expressions","title":"Expressions","text":"The fourth way to create an affine expression is by using add_to_expression!. Compared to the operator overloading method, this approach is faster because it avoids constructing temporary objects. The @expression macro uses add_to_expression! behind-the-scenes.","category":"page"},{"location":"manual/expressions/","page":"Expressions","title":"Expressions","text":"julia> model = Model();\n\njulia> @variable(model, x)\nx\n\njulia> @variable(model, y)\ny\n\njulia> ex = AffExpr(-1.0)\n-1\n\njulia> add_to_expression!(ex, 2.0, x)\n2 x - 1\n\njulia> add_to_expression!(ex, 1.0, y)\n2 x + y - 1","category":"page"},{"location":"manual/expressions/","page":"Expressions","title":"Expressions","text":"add_to_expression! can also be used to sum expressions in-place:","category":"page"},{"location":"manual/expressions/","page":"Expressions","title":"Expressions","text":"julia> model = Model();\n\njulia> @variable(model, x[1:2])\n2-element Vector{VariableRef}:\n x[1]\n x[2]\n\njulia> @expression(model, ex1, sum(x))\nx[1] + x[2]\n\njulia> @expression(model, ex2, 2 * sum(x))\n2 x[1] + 2 x[2]\n\njulia> add_to_expression!(ex1, ex2)\n3 x[1] + 3 x[2]\n\njulia> ex1\n3 x[1] + 3 x[2]\n\njulia> ex2\n2 x[1] + 2 x[2]","category":"page"},{"location":"manual/expressions/","page":"Expressions","title":"Expressions","text":"warning: Warning\nRead the section Initializing arrays for some cases to be careful about when using add_to_expression!.","category":"page"},{"location":"manual/expressions/#Removing-zero-terms","page":"Expressions","title":"Removing zero terms","text":"","category":"section"},{"location":"manual/expressions/","page":"Expressions","title":"Expressions","text":"Use drop_zeros! to remove terms from an affine expression with a 0 coefficient.","category":"page"},{"location":"manual/expressions/","page":"Expressions","title":"Expressions","text":"julia> model = Model();\n\njulia> @variable(model, x)\nx\n\njulia> @expression(model, ex, x + 1 - x)\n0 x + 1\n\njulia> drop_zeros!(ex)\n\njulia> ex\n1","category":"page"},{"location":"manual/expressions/#Coefficients","page":"Expressions","title":"Coefficients","text":"","category":"section"},{"location":"manual/expressions/","page":"Expressions","title":"Expressions","text":"Use coefficient to return the coefficient associated with a variable in an affine expression.","category":"page"},{"location":"manual/expressions/","page":"Expressions","title":"Expressions","text":"julia> model = Model();\n\njulia> @variable(model, x)\nx\n\njulia> @variable(model, y)\ny\n\njulia> @expression(model, ex, 2x + 1)\n2 x + 1\n\njulia> coefficient(ex, x)\n2.0\n\njulia> coefficient(ex, y)\n0.0","category":"page"},{"location":"manual/expressions/#Quadratic-expressions","page":"Expressions","title":"Quadratic expressions","text":"","category":"section"},{"location":"manual/expressions/","page":"Expressions","title":"Expressions","text":"Like affine expressions, there are four ways of constructing a quadratic expression in JuMP: macros, operator overloading, constructors, and add_to_expression!.","category":"page"},{"location":"manual/expressions/#Macros-2","page":"Expressions","title":"Macros","text":"","category":"section"},{"location":"manual/expressions/","page":"Expressions","title":"Expressions","text":"The @expression macro can be used to create quadratic expressions by including quadratic terms.","category":"page"},{"location":"manual/expressions/","page":"Expressions","title":"Expressions","text":"julia> model = Model();\n\njulia> @variable(model, x)\nx\n\njulia> @variable(model, y)\ny\n\njulia> ex = @expression(model, x^2 + 2 * x * y + y^2 + x + y - 1)\nx² + 2 x*y + y² + x + y - 1","category":"page"},{"location":"manual/expressions/#Operator-overloading-2","page":"Expressions","title":"Operator overloading","text":"","category":"section"},{"location":"manual/expressions/","page":"Expressions","title":"Expressions","text":"Operator overloading can also be used to create quadratic expressions. The same performance warning (discussed in the affine expression section) applies.","category":"page"},{"location":"manual/expressions/","page":"Expressions","title":"Expressions","text":"julia> model = Model();\n\njulia> @variable(model, x)\nx\n\njulia> @variable(model, y)\ny\n\njulia> ex = x^2 + 2 * x * y + y^2 + x + y - 1\nx² + 2 x*y + y² + x + y - 1","category":"page"},{"location":"manual/expressions/#Constructors-2","page":"Expressions","title":"Constructors","text":"","category":"section"},{"location":"manual/expressions/","page":"Expressions","title":"Expressions","text":"Quadratic expressions can also be created using the QuadExpr constructor. The first argument is an affine expression, and the remaining arguments are pairs, where the first term is a JuMP.UnorderedPair and the second term is the coefficient.","category":"page"},{"location":"manual/expressions/","page":"Expressions","title":"Expressions","text":"julia> model = Model();\n\njulia> @variable(model, x)\nx\n\njulia> @variable(model, y)\ny\n\njulia> aff_expr = AffExpr(-1.0, x => 1.0, y => 1.0)\nx + y - 1\n\njulia> quad_expr = QuadExpr(\n aff_expr,\n UnorderedPair(x, x) => 1.0,\n UnorderedPair(x, y) => 2.0,\n UnorderedPair(y, y) => 1.0,\n )\nx² + 2 x*y + y² + x + y - 1","category":"page"},{"location":"manual/expressions/#add_to_expression!-2","page":"Expressions","title":"add_to_expression!","text":"","category":"section"},{"location":"manual/expressions/","page":"Expressions","title":"Expressions","text":"Finally, add_to_expression! can also be used to add quadratic terms.","category":"page"},{"location":"manual/expressions/","page":"Expressions","title":"Expressions","text":"julia> model = Model();\n\njulia> @variable(model, x)\nx\n\njulia> @variable(model, y)\ny\n\njulia> ex = QuadExpr(x + y - 1.0)\nx + y - 1\n\njulia> add_to_expression!(ex, 1.0, x, x)\nx² + x + y - 1\n\njulia> add_to_expression!(ex, 2.0, x, y)\nx² + 2 x*y + x + y - 1\n\njulia> add_to_expression!(ex, 1.0, y, y)\nx² + 2 x*y + y² + x + y - 1","category":"page"},{"location":"manual/expressions/","page":"Expressions","title":"Expressions","text":"warning: Warning\nRead the section Initializing arrays for some cases to be careful about when using add_to_expression!.","category":"page"},{"location":"manual/expressions/#Removing-zero-terms-2","page":"Expressions","title":"Removing zero terms","text":"","category":"section"},{"location":"manual/expressions/","page":"Expressions","title":"Expressions","text":"Use drop_zeros! to remove terms from a quadratic expression with a 0 coefficient.","category":"page"},{"location":"manual/expressions/","page":"Expressions","title":"Expressions","text":"julia> model = Model();\n\njulia> @variable(model, x)\nx\n\njulia> @expression(model, ex, x^2 + x + 1 - x^2)\n0 x² + x + 1\n\njulia> drop_zeros!(ex)\n\njulia> ex\nx + 1","category":"page"},{"location":"manual/expressions/#Coefficients-2","page":"Expressions","title":"Coefficients","text":"","category":"section"},{"location":"manual/expressions/","page":"Expressions","title":"Expressions","text":"Use coefficient to return the coefficient associated with a pair of variables in a quadratic expression.","category":"page"},{"location":"manual/expressions/","page":"Expressions","title":"Expressions","text":"julia> model = Model();\n\njulia> @variable(model, x)\nx\n\njulia> @variable(model, y)\ny\n\njulia> @expression(model, ex, 2*x*y + 3*x)\n2 x*y + 3 x\n\njulia> coefficient(ex, x, y)\n2.0\n\njulia> coefficient(ex, x, x)\n0.0\n\njulia> coefficient(ex, y, x)\n2.0\n\njulia> coefficient(ex, x)\n3.0","category":"page"},{"location":"manual/expressions/#Nonlinear-expressions","page":"Expressions","title":"Nonlinear expressions","text":"","category":"section"},{"location":"manual/expressions/","page":"Expressions","title":"Expressions","text":"Nonlinear expressions in JuMP are represented by a NonlinearExpr object. See Nonlinear expressions in detail for more details.","category":"page"},{"location":"manual/expressions/#Initializing-arrays","page":"Expressions","title":"Initializing arrays","text":"","category":"section"},{"location":"manual/expressions/","page":"Expressions","title":"Expressions","text":"JuMP implements zero(AffExpr) and one(AffExpr) to support various functions in LinearAlgebra (for example, accessing the off-diagonal of a Diagonal matrix).","category":"page"},{"location":"manual/expressions/","page":"Expressions","title":"Expressions","text":"julia> zero(AffExpr)\n0\n\njulia> one(AffExpr)\n1","category":"page"},{"location":"manual/expressions/","page":"Expressions","title":"Expressions","text":"However, this can result in a subtle bug if you call add_to_expression! or the MutableArithmetics API on an element created by zeros or ones:","category":"page"},{"location":"manual/expressions/","page":"Expressions","title":"Expressions","text":"julia> x = zeros(AffExpr, 2)\n2-element Vector{AffExpr}:\n 0\n 0\n\njulia> add_to_expression!(x[1], 1.1)\n1.1\n\njulia> x\n2-element Vector{AffExpr}:\n 1.1\n 1.1","category":"page"},{"location":"manual/expressions/","page":"Expressions","title":"Expressions","text":"Notice how we modified x[1], but we also changed x[2]!","category":"page"},{"location":"manual/expressions/","page":"Expressions","title":"Expressions","text":"This happened because zeros(AffExpr, 2) calls zero(AffExpr) once to obtain a zero element, and then creates an appropriately sized array filled with the same element.","category":"page"},{"location":"manual/expressions/","page":"Expressions","title":"Expressions","text":"This also happens with broadcasting calls containing a conversion of 0 or 1:","category":"page"},{"location":"manual/expressions/","page":"Expressions","title":"Expressions","text":"julia> x = Vector{AffExpr}(undef, 2)\n2-element Vector{AffExpr}:\n #undef\n #undef\n\njulia> x .= 0\n2-element Vector{AffExpr}:\n 0\n 0\n\njulia> add_to_expression!(x[1], 1.1)\n1.1\n\njulia> x\n2-element Vector{AffExpr}:\n 1.1\n 1.1","category":"page"},{"location":"manual/expressions/","page":"Expressions","title":"Expressions","text":"The recommended way to create an array of empty expressions is as follows:","category":"page"},{"location":"manual/expressions/","page":"Expressions","title":"Expressions","text":"julia> x = Vector{AffExpr}(undef, 2)\n2-element Vector{AffExpr}:\n #undef\n #undef\n\njulia> for i in eachindex(x)\n x[i] = AffExpr(0.0)\n end\n\njulia> add_to_expression!(x[1], 1.1)\n1.1\n\njulia> x\n2-element Vector{AffExpr}:\n 1.1\n 0","category":"page"},{"location":"manual/expressions/","page":"Expressions","title":"Expressions","text":"Alternatively, use non-mutating operation to avoid updating x[1] in-place:","category":"page"},{"location":"manual/expressions/","page":"Expressions","title":"Expressions","text":"julia> x = zeros(AffExpr, 2)\n2-element Vector{AffExpr}:\n 0\n 0\n\njulia> x[1] += 1.1\n1.1\n\njulia> x\n2-element Vector{AffExpr}:\n 1.1\n 0","category":"page"},{"location":"manual/expressions/","page":"Expressions","title":"Expressions","text":"Note that for large expressions this will be slower due to the allocation of additional temporary objects.","category":"page"},{"location":"tutorials/linear/factory_schedule/","page":"The factory schedule example","title":"The factory schedule example","text":"EditURL = \"factory_schedule.jl\"","category":"page"},{"location":"tutorials/linear/factory_schedule/#The-factory-schedule-example","page":"The factory schedule example","title":"The factory schedule example","text":"","category":"section"},{"location":"tutorials/linear/factory_schedule/","page":"The factory schedule example","title":"The factory schedule example","text":"This tutorial was generated using Literate.jl. Download the source as a .jl file.","category":"page"},{"location":"tutorials/linear/factory_schedule/","page":"The factory schedule example","title":"The factory schedule example","text":"This tutorial was originally contributed by @Crghilardi.","category":"page"},{"location":"tutorials/linear/factory_schedule/","page":"The factory schedule example","title":"The factory schedule example","text":"This tutorial is a Julia translation of Part 5 from Introduction to Linear Programming with Python.","category":"page"},{"location":"tutorials/linear/factory_schedule/","page":"The factory schedule example","title":"The factory schedule example","text":"The purpose of this tutorial is to demonstrate how to use DataFrames and delimited files, and to structure your code that is robust to infeasibilities and permits running with different datasets.","category":"page"},{"location":"tutorials/linear/factory_schedule/#Required-packages","page":"The factory schedule example","title":"Required packages","text":"","category":"section"},{"location":"tutorials/linear/factory_schedule/","page":"The factory schedule example","title":"The factory schedule example","text":"This tutorial requires the following packages:","category":"page"},{"location":"tutorials/linear/factory_schedule/","page":"The factory schedule example","title":"The factory schedule example","text":"using JuMP\nimport CSV\nimport DataFrames\nimport HiGHS\nimport StatsPlots","category":"page"},{"location":"tutorials/linear/factory_schedule/#Formulation","page":"The factory schedule example","title":"Formulation","text":"","category":"section"},{"location":"tutorials/linear/factory_schedule/","page":"The factory schedule example","title":"The factory schedule example","text":"The Factory Scheduling Problem assumes we are optimizing the production of a good from factories f in F over the course of 12 months m in M.","category":"page"},{"location":"tutorials/linear/factory_schedule/","page":"The factory schedule example","title":"The factory schedule example","text":"If a factory f runs during a month m, a fixed cost of a_f is incurred, the factory must produce x_mf units that is within some minimum and maximum production levels l_f and u_f respectively, and each unit of production incurs a variable cost c_f. Otherwise, the factory can be shut for the month with zero production and no fixed-cost is incurred. We denote the run/not-run decision by z_mf in 0 1, where z_mf is 1 if factory f runs in month m. The factory must produce enough units to satisfy demand d_m.","category":"page"},{"location":"tutorials/linear/factory_schedule/","page":"The factory schedule example","title":"The factory schedule example","text":"With a little effort, we can formulate our problem as the following linear program:","category":"page"},{"location":"tutorials/linear/factory_schedule/","page":"The factory schedule example","title":"The factory schedule example","text":"beginaligned\nmin sumlimits_f in F m in M a_f z_mf + c_f x_mf \ntextst x_mf le u_f z_mf forall f in F m in M \n x_mf ge l_f z_mf forall f in F m in M \n sumlimits_fin F x_mf = d_m forall f in F m in M \n z_mf in 0 1 forall f in F m in M\nendaligned","category":"page"},{"location":"tutorials/linear/factory_schedule/","page":"The factory schedule example","title":"The factory schedule example","text":"However, this formulation has a problem: if demand is too high, we may be unable to satisfy the demand constraint, and the problem will be infeasible.","category":"page"},{"location":"tutorials/linear/factory_schedule/","page":"The factory schedule example","title":"The factory schedule example","text":"tip: Tip\nWhen modeling, consider ways to formulate your model such that it always has a feasible solution. This greatly simplifies debugging data errors that would otherwise result in an infeasible solution. In practice, most practical decisions have a feasible solution. In our case, we could satisfy demand (at a high cost) by buying replacement items for the buyer, or running the factories in overtime to make up the difference.","category":"page"},{"location":"tutorials/linear/factory_schedule/","page":"The factory schedule example","title":"The factory schedule example","text":"We can improve our model by adding a new variable, delta_m, which represents the quantity of unmet demand in each month m. We penalize delta_m by an arbitrarily large value of $10,000/unit in the objective.","category":"page"},{"location":"tutorials/linear/factory_schedule/","page":"The factory schedule example","title":"The factory schedule example","text":"beginaligned\nmin sumlimits_f in F m in M a_f z_mf + c_f x_mf + sumlimits_m in M10000 delta_m \ntextst x_mf le u_f z_mf forall f in F m in M \n x_mf ge l_f z_mf forall f in F m in M \n sumlimits_fin F x_mf - delta_m = d_m forall f in F m in M \n z_mf in 0 1 forall f in F m in M \n delta_m ge 0 forall m in M\nendaligned","category":"page"},{"location":"tutorials/linear/factory_schedule/#Data","page":"The factory schedule example","title":"Data","text":"","category":"section"},{"location":"tutorials/linear/factory_schedule/","page":"The factory schedule example","title":"The factory schedule example","text":"The JuMP GitHub repository contains two text files with the data we need for this tutorial.","category":"page"},{"location":"tutorials/linear/factory_schedule/","page":"The factory schedule example","title":"The factory schedule example","text":"The first file contains a dataset of our factories, A and B, with their production and cost levels for each month. For the documentation, the file is located at:","category":"page"},{"location":"tutorials/linear/factory_schedule/","page":"The factory schedule example","title":"The factory schedule example","text":"factories_filename = joinpath(@__DIR__, \"factory_schedule_factories.txt\");\nnothing #hide","category":"page"},{"location":"tutorials/linear/factory_schedule/","page":"The factory schedule example","title":"The factory schedule example","text":"To run locally, download factory_schedule_factories.txt and update factories_filename appropriately.","category":"page"},{"location":"tutorials/linear/factory_schedule/","page":"The factory schedule example","title":"The factory schedule example","text":"The file has the following contents:","category":"page"},{"location":"tutorials/linear/factory_schedule/","page":"The factory schedule example","title":"The factory schedule example","text":"print(read(factories_filename, String))","category":"page"},{"location":"tutorials/linear/factory_schedule/","page":"The factory schedule example","title":"The factory schedule example","text":"We use the CSV and DataFrames packages to read it into Julia:","category":"page"},{"location":"tutorials/linear/factory_schedule/","page":"The factory schedule example","title":"The factory schedule example","text":"factory_df = CSV.read(\n factories_filename,\n DataFrames.DataFrame;\n delim = ' ',\n ignorerepeated = true,\n)","category":"page"},{"location":"tutorials/linear/factory_schedule/","page":"The factory schedule example","title":"The factory schedule example","text":"The second file contains the demand data by month:","category":"page"},{"location":"tutorials/linear/factory_schedule/","page":"The factory schedule example","title":"The factory schedule example","text":"demand_filename = joinpath(@__DIR__, \"factory_schedule_demand.txt\");\nnothing #hide","category":"page"},{"location":"tutorials/linear/factory_schedule/","page":"The factory schedule example","title":"The factory schedule example","text":"To run locally, download factory_schedule_demand.txt and update demand_filename appropriately.","category":"page"},{"location":"tutorials/linear/factory_schedule/","page":"The factory schedule example","title":"The factory schedule example","text":"demand_df = CSV.read(\n demand_filename,\n DataFrames.DataFrame;\n delim = ' ',\n ignorerepeated = true,\n)","category":"page"},{"location":"tutorials/linear/factory_schedule/#Data-validation","page":"The factory schedule example","title":"Data validation","text":"","category":"section"},{"location":"tutorials/linear/factory_schedule/","page":"The factory schedule example","title":"The factory schedule example","text":"Before moving on, it's always good practice to validate the data you read from external sources. The more effort you spend here, the fewer issues you will have later. The following function contains a few simple checks, but we could add more. For example, you might want to check that none of the values are too large (or too small), which might indicate a typo or a unit conversion issue (perhaps the variable costs are in $/1000 units instead of $/unit).","category":"page"},{"location":"tutorials/linear/factory_schedule/","page":"The factory schedule example","title":"The factory schedule example","text":"function valiate_data(\n demand_df::DataFrames.DataFrame,\n factory_df::DataFrames.DataFrame,\n)\n # Minimum production must not exceed maximum production.\n @assert all(factory_df.min_production .<= factory_df.max_production)\n # Demand, minimum production, fixed costs, and variable costs must all be\n # non-negative.\n @assert all(demand_df.demand .>= 0)\n @assert all(factory_df.min_production .>= 0)\n @assert all(factory_df.fixed_cost .>= 0)\n @assert all(factory_df.variable_cost .>= 0)\n return\nend\n\nvaliate_data(demand_df, factory_df)","category":"page"},{"location":"tutorials/linear/factory_schedule/#JuMP-formulation","page":"The factory schedule example","title":"JuMP formulation","text":"","category":"section"},{"location":"tutorials/linear/factory_schedule/","page":"The factory schedule example","title":"The factory schedule example","text":"Next, we need to code our JuMP formulation. As shown in Design patterns for larger models, it's always good practice to code your model in a function that accepts well-defined input and returns well-defined output.","category":"page"},{"location":"tutorials/linear/factory_schedule/","page":"The factory schedule example","title":"The factory schedule example","text":"function solve_factory_scheduling(\n demand_df::DataFrames.DataFrame,\n factory_df::DataFrames.DataFrame,\n)\n # Even though we validated the data above, it's good practice to do it here\n # too.\n valiate_data(demand_df, factory_df)\n months, factories = unique(factory_df.month), unique(factory_df.factory)\n model = Model(HiGHS.Optimizer)\n set_silent(model)\n @variable(model, status[months, factories], Bin)\n @variable(model, production[months, factories], Int)\n @variable(model, unmet_demand[months] >= 0)\n # We use `eachrow` to loop through the rows of the dataframe and add the\n # relevant constraints.\n for r in eachrow(factory_df)\n m, f = r.month, r.factory\n @constraint(model, production[m, f] <= r.max_production * status[m, f])\n @constraint(model, production[m, f] >= r.min_production * status[m, f])\n end\n @constraint(\n model,\n [r in eachrow(demand_df)],\n sum(production[r.month, :]) + unmet_demand[r.month] == r.demand,\n )\n @objective(\n model,\n Min,\n 10_000 * sum(unmet_demand) + sum(\n r.fixed_cost * status[r.month, r.factory] +\n r.variable_cost * production[r.month, r.factory] for\n r in eachrow(factory_df)\n )\n )\n optimize!(model)\n @assert is_solved_and_feasible(model)\n schedules = Dict{Symbol,Vector{Float64}}(\n Symbol(f) => value.(production[:, f]) for f in factories\n )\n schedules[:unmet_demand] = value.(unmet_demand)\n return (\n termination_status = termination_status(model),\n cost = objective_value(model),\n # This `select` statement re-orders the columns in the DataFrame.\n schedules = DataFrames.select(\n DataFrames.DataFrame(schedules),\n [:unmet_demand, :A, :B],\n ),\n )\nend","category":"page"},{"location":"tutorials/linear/factory_schedule/#Solution","page":"The factory schedule example","title":"Solution","text":"","category":"section"},{"location":"tutorials/linear/factory_schedule/","page":"The factory schedule example","title":"The factory schedule example","text":"Now we can call our solve_factory_scheduling function using the data we read in above.","category":"page"},{"location":"tutorials/linear/factory_schedule/","page":"The factory schedule example","title":"The factory schedule example","text":"solution = solve_factory_scheduling(demand_df, factory_df);\nnothing #hide","category":"page"},{"location":"tutorials/linear/factory_schedule/","page":"The factory schedule example","title":"The factory schedule example","text":"Let's see what solution contains:","category":"page"},{"location":"tutorials/linear/factory_schedule/","page":"The factory schedule example","title":"The factory schedule example","text":"solution.termination_status","category":"page"},{"location":"tutorials/linear/factory_schedule/","page":"The factory schedule example","title":"The factory schedule example","text":"solution.cost","category":"page"},{"location":"tutorials/linear/factory_schedule/","page":"The factory schedule example","title":"The factory schedule example","text":"solution.schedules","category":"page"},{"location":"tutorials/linear/factory_schedule/","page":"The factory schedule example","title":"The factory schedule example","text":"These schedules will be easier to visualize as a graph:","category":"page"},{"location":"tutorials/linear/factory_schedule/","page":"The factory schedule example","title":"The factory schedule example","text":"StatsPlots.groupedbar(\n Matrix(solution.schedules);\n bar_position = :stack,\n labels = [\"unmet demand\" \"A\" \"B\"],\n xlabel = \"Month\",\n ylabel = \"Production\",\n legend = :topleft,\n color = [\"#20326c\" \"#4063d8\" \"#a0b1ec\"],\n)","category":"page"},{"location":"tutorials/linear/factory_schedule/","page":"The factory schedule example","title":"The factory schedule example","text":"Note that we don't have any unmet demand.","category":"page"},{"location":"tutorials/linear/factory_schedule/#What-happens-if-demand-increases?","page":"The factory schedule example","title":"What happens if demand increases?","text":"","category":"section"},{"location":"tutorials/linear/factory_schedule/","page":"The factory schedule example","title":"The factory schedule example","text":"Let's run an experiment by increasing the demand by 50% in all time periods:","category":"page"},{"location":"tutorials/linear/factory_schedule/","page":"The factory schedule example","title":"The factory schedule example","text":"demand_df.demand .*= 1.5","category":"page"},{"location":"tutorials/linear/factory_schedule/","page":"The factory schedule example","title":"The factory schedule example","text":"Now we resolve the problem:","category":"page"},{"location":"tutorials/linear/factory_schedule/","page":"The factory schedule example","title":"The factory schedule example","text":"high_demand_solution = solve_factory_scheduling(demand_df, factory_df);\nnothing #hide","category":"page"},{"location":"tutorials/linear/factory_schedule/","page":"The factory schedule example","title":"The factory schedule example","text":"and visualize the solution:","category":"page"},{"location":"tutorials/linear/factory_schedule/","page":"The factory schedule example","title":"The factory schedule example","text":"StatsPlots.groupedbar(\n Matrix(high_demand_solution.schedules);\n bar_position = :stack,\n labels = [\"unmet demand\" \"A\" \"B\"],\n xlabel = \"Month\",\n ylabel = \"Production\",\n legend = :topleft,\n color = [\"#20326c\" \"#4063d8\" \"#a0b1ec\"],\n)","category":"page"},{"location":"tutorials/linear/factory_schedule/","page":"The factory schedule example","title":"The factory schedule example","text":"Uh oh, we can't satisfy all of the demand.","category":"page"},{"location":"tutorials/linear/factory_schedule/#How-sensitive-is-the-solution-to-changes-in-variable-cost?","page":"The factory schedule example","title":"How sensitive is the solution to changes in variable cost?","text":"","category":"section"},{"location":"tutorials/linear/factory_schedule/","page":"The factory schedule example","title":"The factory schedule example","text":"Let's run another experiment, this time seeing how the optimal objective value changes as we vary the variable costs of each factory.","category":"page"},{"location":"tutorials/linear/factory_schedule/","page":"The factory schedule example","title":"The factory schedule example","text":"First though, let's reset the demand to it's original level:","category":"page"},{"location":"tutorials/linear/factory_schedule/","page":"The factory schedule example","title":"The factory schedule example","text":"demand_df.demand ./= 1.5;\nnothing #hide","category":"page"},{"location":"tutorials/linear/factory_schedule/","page":"The factory schedule example","title":"The factory schedule example","text":"For our experiment, we're going to scale the variable costs of both factories by a set of values from 0.0 to 1.5:","category":"page"},{"location":"tutorials/linear/factory_schedule/","page":"The factory schedule example","title":"The factory schedule example","text":"scale_factors = 0:0.1:1.5","category":"page"},{"location":"tutorials/linear/factory_schedule/","page":"The factory schedule example","title":"The factory schedule example","text":"At a high level, we're going to loop over the scale factors for A, then the scale factors for B, rescale the input data, call our solve_factory_scheduling example, and then store the optimal objective value in the following cost matrix:","category":"page"},{"location":"tutorials/linear/factory_schedule/","page":"The factory schedule example","title":"The factory schedule example","text":"cost = zeros(length(scale_factors), length(scale_factors));\nnothing #hide","category":"page"},{"location":"tutorials/linear/factory_schedule/","page":"The factory schedule example","title":"The factory schedule example","text":"Because we're modifying factory_df in-place, we need to store the original variable costs in a new column:","category":"page"},{"location":"tutorials/linear/factory_schedule/","page":"The factory schedule example","title":"The factory schedule example","text":"factory_df[!, :old_variable_cost] = copy(factory_df.variable_cost);\nnothing #hide","category":"page"},{"location":"tutorials/linear/factory_schedule/","page":"The factory schedule example","title":"The factory schedule example","text":"Then, we need a function to scale the :variable_cost column for a particular factory by a value scale:","category":"page"},{"location":"tutorials/linear/factory_schedule/","page":"The factory schedule example","title":"The factory schedule example","text":"function scale_variable_cost(df, factory, scale)\n rows = df.factory .== factory\n df[rows, :variable_cost] .=\n round.(Int, df[rows, :old_variable_cost] .* scale)\n return\nend","category":"page"},{"location":"tutorials/linear/factory_schedule/","page":"The factory schedule example","title":"The factory schedule example","text":"Our experiment is just a nested for-loop, modifying A and B and storing the cost:","category":"page"},{"location":"tutorials/linear/factory_schedule/","page":"The factory schedule example","title":"The factory schedule example","text":"for (j, a) in enumerate(scale_factors)\n scale_variable_cost(factory_df, \"A\", a)\n for (i, b) in enumerate(scale_factors)\n scale_variable_cost(factory_df, \"B\", b)\n cost[i, j] = solve_factory_scheduling(demand_df, factory_df).cost\n end\nend","category":"page"},{"location":"tutorials/linear/factory_schedule/","page":"The factory schedule example","title":"The factory schedule example","text":"Let's visualize the cost matrix:","category":"page"},{"location":"tutorials/linear/factory_schedule/","page":"The factory schedule example","title":"The factory schedule example","text":"StatsPlots.contour(\n scale_factors,\n scale_factors,\n cost;\n xlabel = \"Scale of factory A\",\n ylabel = \"Scale of factory B\",\n)","category":"page"},{"location":"tutorials/linear/factory_schedule/","page":"The factory schedule example","title":"The factory schedule example","text":"What can you infer from the solution?","category":"page"},{"location":"tutorials/linear/factory_schedule/","page":"The factory schedule example","title":"The factory schedule example","text":"info: Info\nThe Power Systems tutorial explains a number of other ways you can structure a problem to perform a parametric analysis of the solution. In particular, you can use in-place modification to reduce the time it takes to build and solve the resulting models.","category":"page"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"EditURL = \"changelog.md\"","category":"page"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"CurrentModule = JuMP","category":"page"},{"location":"release_notes/#Release-notes","page":"Release notes","title":"Release notes","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.","category":"page"},{"location":"release_notes/#[Version-1.23.3](https://github.com/jump-dev/JuMP.jl/releases/tag/v1.23.3)-(October-21,-2024)","page":"Release notes","title":"Version 1.23.3 (October 21, 2024)","text":"","category":"section"},{"location":"release_notes/#Fixed","page":"Release notes","title":"Fixed","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Fixed a printing bug with scientific numbers in MIME\"text/latex\" (#3838)\nFixed support for AbstractString in set_attribute (#3840)\nFixed a bug reporting vector-valued duals in solution_summary (#3846)\nFixed solution_summary when there are duplicate variable and constraint names (#3848)","category":"page"},{"location":"release_notes/#Other","page":"Release notes","title":"Other","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Documentation improvements (#3828) (#3831) (#3841) (#3843) (#3845)\nAdded the tutorial Tolerances and numerical issues (#3829) (#3830) (#3835)\nImproved the Benders decomposition tutorial (#38232) (#3833) (#3834)\nAdded DifferentiationInterface.jl to Automatic differentiation of user-defined operators (#3836) (#3842)\nAdded the tutorial Writing a solver interface (#3844)\nAdded the section Debugging performance problems (#3850)\nFormatting improvements (#3849)","category":"page"},{"location":"release_notes/#[Version-1.23.2](https://github.com/jump-dev/JuMP.jl/releases/tag/v1.23.2)-(September-13,-2024)","page":"Release notes","title":"Version 1.23.2 (September 13, 2024)","text":"","category":"section"},{"location":"release_notes/#Fixed-2","page":"Release notes","title":"Fixed","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Fixed an illegal simplification in MA.operate!! for NonlinearExpr (#3826)","category":"page"},{"location":"release_notes/#Other-2","page":"Release notes","title":"Other","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Added Rolling horizon problems tutorial (#3815)\nAdded more tests for shapes and dual shapes (#3816)\nAdded more packages to extension-tests.yml (#3817) (#3818)\nRemoved an unnecessary test(#3819)\nDocumentation improvements (#3820) (#3822) (#3823)\nAdded PiecewiseLinearOpt.jl to the docs (#3824)","category":"page"},{"location":"release_notes/#[Version-1.23.1](https://github.com/jump-dev/JuMP.jl/releases/tag/v1.23.1)-(August-30,-2024)","page":"Release notes","title":"Version 1.23.1 (August 30, 2024)","text":"","category":"section"},{"location":"release_notes/#Fixed-3","page":"Release notes","title":"Fixed","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Fixed a bug with indicator constraints and the in set syntax (#3813)","category":"page"},{"location":"release_notes/#Other-3","page":"Release notes","title":"Other","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Updated packages in documentation (#3807)\nUpdated the transitioning from MATLAB tutorial (#3809)\nAdd tutorial Performance problems with sum-if formulations (#3810)","category":"page"},{"location":"release_notes/#[Version-1.23.0](https://github.com/jump-dev/JuMP.jl/releases/tag/v1.23.0)-(August-13,-2024)","page":"Release notes","title":"Version 1.23.0 (August 13, 2024)","text":"","category":"section"},{"location":"release_notes/#Added","page":"Release notes","title":"Added","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Added set inequality syntax for matrices (#3766)\nImproved matrix inequality support (#3778) (#3805)","category":"page"},{"location":"release_notes/#Fixed-4","page":"Release notes","title":"Fixed","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Fixed a method for calling value on a ::Number (#3776)\nFixed querying dual of Symmetric and Hermitian equality constraints (#3797)\nFixed read_from_file for coefficient types other than Float64 (#3801)","category":"page"},{"location":"release_notes/#Other-4","page":"Release notes","title":"Other","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Documentation improvements\nFixed missing character in installation instructions (#3777)\nAdded a section of querying the Jacobian (#3779)\nClarify that SCIP does not support lazy constraints (#3784)\nFixed typo in knapsack.jl (#3792)\nAdded a warning to docs about tolerances in Bin and Int variables (#3794)\nClarify where to type installation commands (#3795)\nImprove error message for common incorrect syntax in constraint macro (#3781)\nChanged show(::IO, ::GenericModel) to a more informative tree structure (#3803)","category":"page"},{"location":"release_notes/#[Version-1.22.2](https://github.com/jump-dev/JuMP.jl/releases/tag/v1.22.2)-(June-17,-2024)","page":"Release notes","title":"Version 1.22.2 (June 17, 2024)","text":"","category":"section"},{"location":"release_notes/#Fixed-5","page":"Release notes","title":"Fixed","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Fixed printing to omit terms when printing a large array of expressions (#3759)\nFixed bug in printing when show is called on an invalid variable or constraint (#3763)","category":"page"},{"location":"release_notes/#Other-5","page":"Release notes","title":"Other","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Improved error message for unsupported kwargs in variable macro (#3751)\nImproved error message for unsupported container syntax like x[A][B] (#3756)\nDocstring improvements (#3758), (#3760), (#3761), (#3767)\nAdded warning to documentation about Y <= X, Set() syntax (#3769)\nWork-around change on nightly (#3753), (#3754)\nImproved printing of symmetric matrices when used in constraints (#3768)\nFixed a test for upcoming printing change in MOI (#3772)\nUpdated should_i_use.md (#3773)","category":"page"},{"location":"release_notes/#[Version-1.22.1](https://github.com/jump-dev/JuMP.jl/releases/tag/v1.22.1)-(May-17,-2024)","page":"Release notes","title":"Version 1.22.1 (May 17, 2024)","text":"","category":"section"},{"location":"release_notes/#Fixed-6","page":"Release notes","title":"Fixed","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Fixed bug including non-.jl files in src/macros.jl (#3747)","category":"page"},{"location":"release_notes/#Other-6","page":"Release notes","title":"Other","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Added DSDP to the list of supported solvers (#3745)\nUpdated YALMIP migration guide (#3748)","category":"page"},{"location":"release_notes/#[Version-1.22.0](https://github.com/jump-dev/JuMP.jl/releases/tag/v1.22.0)-(May-12,-2024)","page":"Release notes","title":"Version 1.22.0 (May 12, 2024)","text":"","category":"section"},{"location":"release_notes/#Added-2","page":"Release notes","title":"Added","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Added Base.complex(r, i) where r and i may be real-valued variables or affine or quadratic expressions (#3734)\nAdded @force_nonlinear for controlling when affine and quadratic expressions are instead parsed as nonlinear expressions. This can be useful for advanced users in a limited set of circumstances. (#3732)\nAdded support for returning the variable coefficients of a vector-valued constraint via normalized_coefficient. In addition, set_normalized_coefficients has been softly deprecated (no warning is thrown and old code will still work for all future 1.X releases of JuMP) in favor of set_normalized_coefficient. This change was made to unify how we get and set variable coefficients. (#3743)","category":"page"},{"location":"release_notes/#Fixed-7","page":"Release notes","title":"Fixed","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Fixed missing promote_operation method that resulted in slow code (#3730)\nImproved performance of getindex for Containers.DenseAxisArray (#3731)\nFixed the error message when the legacy nonlinear API is mixed with the new nonlinear API. In particular, we now uniformly throw an error message when unexpected objects occur in nonlinear expressions. (#3741)","category":"page"},{"location":"release_notes/#Other-7","page":"Release notes","title":"Other","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Updated documentation (#3727), (#3728), (#3739)\nUpdated versions in GitHub actions (#3735)","category":"page"},{"location":"release_notes/#[Version-1.21.1](https://github.com/jump-dev/JuMP.jl/releases/tag/v1.21.1)-(April-11,-2024)","page":"Release notes","title":"Version 1.21.1 (April 11, 2024)","text":"","category":"section"},{"location":"release_notes/#Fixed-8","page":"Release notes","title":"Fixed","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Fixed behavior of complex-value related functions like real, imag, conj and abs2 when called on GenericNonlinearExpr. This fixes a method error when calling x' where x is an array of nonlinear expressions. As a related consequence, we now always error when creating nonlinear expressions with complex components. Previously, only some constructors were checked for complex expressionns. (#3724)","category":"page"},{"location":"release_notes/#Other-8","page":"Release notes","title":"Other","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Documentation improvements (#3719) (#3720) (#3721) (#3722)","category":"page"},{"location":"release_notes/#[Version-1.21.0](https://github.com/jump-dev/JuMP.jl/releases/tag/v1.21.0)-(March-31,-2024)","page":"Release notes","title":"Version 1.21.0 (March 31, 2024)","text":"","category":"section"},{"location":"release_notes/#Added-3","page":"Release notes","title":"Added","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Added support for matrix inequality constraints with the HermitianPSDCone (#3705)\nAdded batched modification methods for set_normalized_rhs, set_objective_coefficient and set_normalized_coefficient. Using these methods can be more efficient for some solvers (#3716)\nAdded the private constant _CONSTRAINT_LIMIT_FOR_PRINTING, which controls how many constraints are printed to the screen during print(model). The main purpose of this is to prevent large quantities of text being printed when print(model) is accidentally called on a large model. (#3686)","category":"page"},{"location":"release_notes/#Fixed-9","page":"Release notes","title":"Fixed","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Changed Containers.SparseAxisArray to use an OrderedDict as the backing data structure. Iterating over the elements in a SparseAxisArray now iterates in the order that the elements were created. Previously, the order was undefined behavior. (#3681)\nFixed complex variables for non-Float64 coefficient types (#3691)\nFixed LinearAlgebra.hermitan(::AbstractJuMPScalar) (#3693)\nFixed multiplying real scalar by Hermitian matrix (#3695)","category":"page"},{"location":"release_notes/#Other-9","page":"Release notes","title":"Other","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Documentation improvements (#3679) (#3683) (#3702) (#3703) (#3706) (#3696) (#3708) (#3709) (#3711)\nAdded new tutorials:\nBasis matrices (#3675)\nTransitioning from MATLAB (#3698)\nAutomatic differentiation of user-defined operators (#3713)\nUpdated versions and compat bounds (#3687) (#3707) (#3717)","category":"page"},{"location":"release_notes/#[Version-1.20.0](https://github.com/jump-dev/JuMP.jl/releases/tag/v1.20.0)-(February-15,-2024)","page":"Release notes","title":"Version 1.20.0 (February 15, 2024)","text":"","category":"section"},{"location":"release_notes/#Added-4","page":"Release notes","title":"Added","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Added is_solved_and_feasible (#3668)\nAdded support for MOI.ModelLike as the optimizer (#3667)","category":"page"},{"location":"release_notes/#Fixed-10","page":"Release notes","title":"Fixed","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Fixed compat of DimensionalData (#3666)\nFixed convert(::Type{NonlinearExpr}, ::Number)(#3672)","category":"page"},{"location":"release_notes/#Other-10","page":"Release notes","title":"Other","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Added Optim to list of solvers (#3624)\nImproved linking within documentation (#3669)","category":"page"},{"location":"release_notes/#[Version-1.19.0](https://github.com/jump-dev/JuMP.jl/releases/tag/v1.19.0)-(February-1,-2024)","page":"Release notes","title":"Version 1.19.0 (February 1, 2024)","text":"","category":"section"},{"location":"release_notes/#Added-5","page":"Release notes","title":"Added","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Added support for modifying quadratic coefficients (#3658)","category":"page"},{"location":"release_notes/#Fixed-11","page":"Release notes","title":"Fixed","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Fixed short circuiting of && and || in macros (#3655)","category":"page"},{"location":"release_notes/#Other-11","page":"Release notes","title":"Other","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Added SDPLR to list of solvers (#3644)\nAdded new roadmap items (#3645)\nFixed vale.sh version (#3650)\nImprove error messages in macros (#3653)\nRefactoring of set_normalized_coefficient (#3660) (#3661)\nUpdate docs/packages.toml (#3662)","category":"page"},{"location":"release_notes/#[Version-1.18.1](https://github.com/jump-dev/JuMP.jl/releases/tag/v1.18.1)-(January-6,-2024)","page":"Release notes","title":"Version 1.18.1 (January 6, 2024)","text":"","category":"section"},{"location":"release_notes/#Fixed-12","page":"Release notes","title":"Fixed","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Fixed escaping of the set keyword in @variable (#3647)","category":"page"},{"location":"release_notes/#[Version-1.18.0](https://github.com/jump-dev/JuMP.jl/releases/tag/v1.18.0)-(January-2,-2024)","page":"Release notes","title":"Version 1.18.0 (January 2, 2024)","text":"","category":"section"},{"location":"release_notes/#Added-6","page":"Release notes","title":"Added","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"This release includes a large refactoring of the macro code that closes a roadmap item (#3629) Contributing pull requests include (#3600), (#3603), (#3606), (#3607), (#3610), (#3611), (#3612), (#3613), (#3614), (#3615), (#3617), (#3618), (#3619), (#3620), (#3621), (#3631), (#3632), (#3633)","category":"page"},{"location":"release_notes/#Fixed-13","page":"Release notes","title":"Fixed","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Fixed error for unsupported objective sense (#3601)\nFixed text/latex printing of GenericNonlinearExpr (#3609)\nFixed compat bounds of stdlib packages (#3626)\nFixed a bug that can accidentally modify the user's expressions in a macro (#3639)\nFixed a bug converting AffExpr to GenericNonlinearExpr (#3642)","category":"page"},{"location":"release_notes/#Other-12","page":"Release notes","title":"Other","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Added DisjunctiveProgrammingto extension-tests (#3597)\nAdded DisjunctiveProgrammingto docs (#3598)\nAdded DocumenterCitations to the docs (#3596), (#3630)\nMigrate from SnoopPrecompile to PrecompileTools (#3608)\nMinor documentation updates (#3623), (#3628), (#3635), (#3640), (#3643)","category":"page"},{"location":"release_notes/#[Version-1.17.0](https://github.com/jump-dev/JuMP.jl/releases/tag/v1.17.0)-(December-4,-2023)","page":"Release notes","title":"Version 1.17.0 (December 4, 2023)","text":"","category":"section"},{"location":"release_notes/#Added-7","page":"Release notes","title":"Added","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Added start_value, lower_bound, and upper_bound support for GenericAffExpr that are equivalent to a single GenericVariableRef (#3551)\nAdded SkipModelConvertScalarSetWrapper which is useful for extensions looking to avoid model_convert (#3552) (#3592)\nAdded lp_matrix_data (#3573) (#3591)","category":"page"},{"location":"release_notes/#Fixed-14","page":"Release notes","title":"Fixed","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Fixed variable_ref_type for unsupported types (#3556)\nFixed convert type of constraint starting values (#3571)\nFixed various methods to support AbstractJuMPScalar with Distances.jl (#3583)\nFixed eachindex for multiple arguments of Containers.DenseAxisArray and Containers.SparseAxisArray (#3587)\nExpressions with more than 60 terms now print in truncated form. This prevents large expressions from being accidentally printed to terminal or IJulia output (#3575)\nFixed a type instability in set_objective_coefficient (#3590)\nVarious fixes to the documentation (#3593) (#3595)","category":"page"},{"location":"release_notes/#Other-13","page":"Release notes","title":"Other","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Improved error messages for:\nAddition and subtraction between a matrix and a scalar (#3557) (#3558)\nVariables with non-constant bounds (#3583)\nInvalid indicator constraints (#3584)\nAdded new solvers to the documentation:\nEAGO.jl (#3560) (#3561)\nManopt.jl (#3568)\nPercival.jl (#3567)\nAdded new tutorials:\nApproximating nonlinear functions (#3563)\nExample: classification problems (#3569)\nImproved documentation for:\nSemicontinuous and Semiinteger variables (#3562)\nSOS1 and SOS2 (#3565)\nstart_value of HermitianPSDCone (#3564)\nFunction tracing (#3570)\nNonlinear operators with vector arguments (#3577)\nIndicator constraints (#3582)\nUpdated package compat bounds (#3578)","category":"page"},{"location":"release_notes/#[Version-1.16.0](https://github.com/jump-dev/JuMP.jl/releases/tag/v1.16.0)-(October-24,-2023)","page":"Release notes","title":"Version 1.16.0 (October 24, 2023)","text":"","category":"section"},{"location":"release_notes/#Added-8","page":"Release notes","title":"Added","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Added := operator for Boolean satisfiability problems (#3530)","category":"page"},{"location":"release_notes/#Fixed-15","page":"Release notes","title":"Fixed","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Fixed text/latex printing of MOI.Interval sets (#3537)\nFixed tests with duplicate function names (#3539)","category":"page"},{"location":"release_notes/#Other-14","page":"Release notes","title":"Other","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Updated documentation list of supported solvers (#3527) (#3529) (#3538) (#3542) (#3545) (#3546)\nUpdated to Documenter@1.1 (#3528)\nFixed various tutorials (#3534) (#3532)\nFixed Project.toml compat bounds for standard libraries (#3544)","category":"page"},{"location":"release_notes/#[Version-1.15.1](https://github.com/jump-dev/JuMP.jl/releases/tag/v1.15.1)-(September-24,-2023)","page":"Release notes","title":"Version 1.15.1 (September 24, 2023)","text":"","category":"section"},{"location":"release_notes/#Fixed-16","page":"Release notes","title":"Fixed","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Fixed support for single argument min and max operators (#3522)\nFixed error message for add_to_expression! when called with a GenericNonlinearExpr (#3506)\nFixed constraint tags with broadcasted constraints (#3515)\nFixed MethodError in MA.scaling (#3518)\nFixed support for arrays of Parameter variables (#3524)","category":"page"},{"location":"release_notes/#Other-15","page":"Release notes","title":"Other","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Updated to Documenter@1 (#3501)\nFixed links to data in tutorials (#3512)\nFixed typo in TSP tutorial (#3516)\nImproved error message for VariableNotOwned errors (#3520)\nFixed various JET errors (#3519)","category":"page"},{"location":"release_notes/#[Version-1.15.0](https://github.com/jump-dev/JuMP.jl/releases/tag/v1.15.0)-(September-15,-2023)","page":"Release notes","title":"Version 1.15.0 (September 15, 2023)","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"This is a large minor release because it adds an entirely new data structure and API path for working with nonlinear programs. The previous nonlinear interface remains unchanged and is documented at Nonlinear Modeling (Legacy). The new interface is a treated as a non-breaking feature addition and is documented at Nonlinear Modeling.","category":"page"},{"location":"release_notes/#Breaking","page":"Release notes","title":"Breaking","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Although the new nonlinear interface is a feature addition, there are two changes which might be breaking for a very small number of users.","category":"page"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"The syntax inside JuMP macros is parsed using a different code path, even for linear and quadratic expressions. We made this change to unify how we parse linear, quadratic, and nonlinear expressions. In all cases, the new code returns equivalent expressions, but because of the different order of operations, there are three changes to be aware of when updating:\nThe printed form of the expression may change, for example from x * y to y * x. This can cause tests which test the String representation of a model to fail.\nSome coefficients may change slightly due to floating point round-off error.\nParticularly when working with a JuMP extension, you may encounter a MethodError due to a missing or ambiguous method. These errors are due to previously existing bugs that were not triggered by the previous parsing code. If you encounter such an error, please open a GitHub issue.\nThe methods for Base.:^(x::VariableRef, n::Integer) and Base.:^(x::AffExpr, n::Integer) have changed. Previously, these methods supported only n = 0, 1, 2 and they always returned a QuadExpr, even for the case when n = 0 or n = 1. Now:\nx^0 returns one(T), where T is the value_type of the model (defaults to Float64)\nx^1 returns x\nx^2 returns a QuadExpr\nx^n where !(0 <= n <= 2) returns a NonlinearExpr.\nWe made this change to support nonlinear expressions and to align the mathematical definition of the operation with their return type. (Previously, users were surprised that x^1 returned a QuadExpr.) As a consequence of this change, the methods are now not type-stable. This means that the compiler cannot prove that x^2 returns a QuadExpr. If benchmarking shows that this is a performance problem, you can use the type-stable x * x instead of x^2.","category":"page"},{"location":"release_notes/#Added-9","page":"Release notes","title":"Added","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Added triangle_vec which simplifies adding MOI.LogDetConeTriangle and MOI.RootDetConeTriangle constraints (#3456)\nAdded the new nonlinear interface. This is a very large change. See the documentation at Nonlinear Modeling and the (long) discussion in JuMP.jl#3106. Related PRs are (#3468) (#3472) (#3475) (#3483) (#3487) (#3488) (#3489) (#3504) (#3509)","category":"page"},{"location":"release_notes/#Fixed-17","page":"Release notes","title":"Fixed","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Fixed uses of @nospecialize which cause precompilation failures in Julia v1.6.0 and v1.6.1. (#3464)\nFixed adding a container of Parameter (#3473)\nFixed return type of x^0 and x^1 to no longer return QuadExpr (see note in Breaking section above) (#3474)\nFixed error messages in LowerBoundRef, UpperBoundRef, FixRef, IntegerRef, BinaryRef, ParameterRef and related functions (#3494)\nFixed type inference of empty containers in JuMP macros (#3500)","category":"page"},{"location":"release_notes/#Other-16","page":"Release notes","title":"Other","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Added GAMS to solver documentation (#3357)\nUpdated various tutorials (#3459) (#3460) (#3462) (#3463) (#3465) (#3490) (#3492) (#3503)\nAdded The network multi-commodity flow problem tutorial (#3491)\nAdded Two-stage stochastic programs tutorial (#3466)\nAdded better error messages for unsupported operations in LinearAlgebra (#3476)\nUpdated to the latest version of Documenter (#3484) (#3495) (#3497)\nUpdated GitHub action versions (#3507)","category":"page"},{"location":"release_notes/#[Version-1.14.1](https://github.com/jump-dev/JuMP.jl/releases/tag/v1.14.1)-(September-2,-2023)","page":"Release notes","title":"Version 1.14.1 (September 2, 2023)","text":"","category":"section"},{"location":"release_notes/#Fixed-18","page":"Release notes","title":"Fixed","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Fix links in Documentation (#3478)","category":"page"},{"location":"release_notes/#[Version-1.14.0](https://github.com/jump-dev/JuMP.jl/releases/tag/v1.14.0)-(August-27,-2023)","page":"Release notes","title":"Version 1.14.0 (August 27, 2023)","text":"","category":"section"},{"location":"release_notes/#Added-10","page":"Release notes","title":"Added","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Added DimensionalData.jl extension (#3413)\nAdded syntactic sugar for the MOI.Parameter set (#3443)\nParameter\nParameterRef\nis_parameter\nparameter_value\nset_parameter_value","category":"page"},{"location":"release_notes/#Fixed-19","page":"Release notes","title":"Fixed","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Fixed model_convert for BridgeableConstraint (#3437)\nFixed printing models with integer coefficients larger than typemax(Int) (#3447)\nFixed support for constant left-hand side functions in a complementarity constraint (#3452)","category":"page"},{"location":"release_notes/#Other-17","page":"Release notes","title":"Other","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Updated packages used in documentation (#3444) (#3455)\nFixed docstring tests (#3445)\nFixed printing change for MathOptInterface (#3446)\nFixed typos in documentation (#3448) (#3457)\nAdded SCIP to callback documentation (#3449)","category":"page"},{"location":"release_notes/#[Version-1.13.0](https://github.com/jump-dev/JuMP.jl/releases/tag/v1.13.0)-(July-27,-2023)","page":"Release notes","title":"Version 1.13.0 (July 27, 2023)","text":"","category":"section"},{"location":"release_notes/#Added-11","page":"Release notes","title":"Added","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Added support for generic number types (#3377) (#3385)\nAdded fallback for MOI.AbstractSymmetricMatrixSetTriangle and MOI.AbstractSymmetricMatrixSetSquare (#3424)","category":"page"},{"location":"release_notes/#Fixed-20","page":"Release notes","title":"Fixed","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Fixed set_start_values with MOI.Bridges.Objective.SlackBridge (#3422)\nFixed flakey doctest in variables.md (#3425)\nFixed names on CITATION.bib (#3423)","category":"page"},{"location":"release_notes/#Other-18","page":"Release notes","title":"Other","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Added Loraine.jl to the installation table (#3426)\nRemoved Penopt.jl from packages.toml (#3428)\nImproved problem statement in cannery example of tutorial (#3430)\nMinor cleanups in Containers.DenseAxisArray implementation (#3429)\nChanged nested_problems.jl: outer/inner to upper/lower (#3433)\nRemoved second SDP relaxation in OPF tutorial (#3432)","category":"page"},{"location":"release_notes/#[Version-1.12.0](https://github.com/jump-dev/JuMP.jl/releases/tag/v1.12.0)-(June-19,-2023)","page":"Release notes","title":"Version 1.12.0 (June 19, 2023)","text":"","category":"section"},{"location":"release_notes/#Added-12","page":"Release notes","title":"Added","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Added coefficient_type keyword argument to add_bridge and remove_bridge (#3394)","category":"page"},{"location":"release_notes/#Fixed-21","page":"Release notes","title":"Fixed","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Fixed error message for matrix in HermitianPSDCone (#3369)\nFixed EditURL for custom documentation pages (#3373)\nFixed return type annotations for MOI.ConstraintPrimal and MOI.ConstraintDual (#3381)\nFixed printing change in Julia nightly (#3391)\nFixed printing of Complex coefficients (#3397)\nFixed printing of constraints in text/latex mode (#3405)\nFixed performance issue in Containers.rowtable (#3410)\nFixed bug when variables added to set of wrong dimension (#3411)","category":"page"},{"location":"release_notes/#Other-19","page":"Release notes","title":"Other","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Added more solver READMEs to the documentation (#3358) (#3360) (#3364) (#3365) (#3366) (#3368) (#3372) (#3374) (#3376) (#3379) (#3387) (#3389)\nAdded StatusSwitchingQP.jl to the installation table (#3354)\nUpdated checklist for adding a new solver (#3370)\nUpdated extension-tests.yml action (#3371) (#3375)\nColor logs in GitHub actions (#3392)\nAdded new tutorials\nOptimal power flow (#3395) (#3412)\nLovász numbers (#3399)\nDualization (#3402)\nUpdated JuMP paper citation (#3400)\nChanged GitHub action to upload LaTeX logs when building documentation (#3403)\nFixed printing of SCS log in documentation (#3406)\nUpdated solver versions (#3407)\nUpdated documentation to use Julia v1.9 (#3398)\nReplaced _value_type with MOI.Utilities.value_type (#3414)\nFixed a typo in docstring (#3415)\nRefactored API documentation (#3386)\nUpdated SCIP license (#3420)","category":"page"},{"location":"release_notes/#[Version-1.11.1](https://github.com/jump-dev/JuMP.jl/releases/tag/v1.11.1)-(May-19,-2023)","page":"Release notes","title":"Version 1.11.1 (May 19, 2023)","text":"","category":"section"},{"location":"release_notes/#Fixed-22","page":"Release notes","title":"Fixed","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Fixed a poor error message when sum(::DenseAxisArray; dims) was called (#3338)\nFixed support for dependent sets in the @variable macro (#3344)\nFixed a performance bug in constraints with sparse symmetric matrices (#3349)","category":"page"},{"location":"release_notes/#Other-20","page":"Release notes","title":"Other","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Improved the printing of complex numbers (#3332)\nWhen printing, sets which contain constants ending in .0 now print as integers. This follows the behavior of constants in functions (#3341)\nAdded InfiniteOpt to the extensions documentation (#3343)\nAdded more documentation for the exponential cone (#3345) (#3347)\nAdded checklists for developers (#3346) (#3355)\nFixed test support upcoming Julia nightly (#3351)\nFixed extension-tests.yml action (#3353)\nAdd more solvers to the documentation (#3359) (#3361) (#3362)","category":"page"},{"location":"release_notes/#[Version-1.11.0](https://github.com/jump-dev/JuMP.jl/releases/tag/v1.11.0)-(May-3,-2023)","page":"Release notes","title":"Version 1.11.0 (May 3, 2023)","text":"","category":"section"},{"location":"release_notes/#Added-13","page":"Release notes","title":"Added","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Added new methods to print_active_bridges for printing a particular objective, constraint, or variable (#3316)","category":"page"},{"location":"release_notes/#Fixed-23","page":"Release notes","title":"Fixed","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Fixed tests for MOI v1.14.0 release (#3312)\nFixed indexing containers when an axis is Vector{Any} that contains a Vector{Any} element (#3280)\nFixed getindex(::AbstractJuMPScalar) which is called for an expression like x[] (#3314)\nFixed bug in set_string_names_on_creation with a vector of variables (#3322)\nFixed bug in memoize function in nonlinear documentation (#3337)","category":"page"},{"location":"release_notes/#Other-21","page":"Release notes","title":"Other","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Fixed typos in the documentation (#3317) (#3318) (#3328)\nAdded a test for the order of setting start values (#3315)\nAdded READMEs of solvers and extensions to the docs (#3309) (#3320) (#3327) (#3329) (#3333)\nStyle improvements to src/variables.jl (#3324)\nClarify that column generation does not find global optimum (#3325)\nAdd a GitHub actions workflow for testing extensions prior to release (#3331)\nDocument the release process for JuMP (#3334)\nFix links to discourse and chatroom (#3335)","category":"page"},{"location":"release_notes/#[Version-1.10.0](https://github.com/jump-dev/JuMP.jl/releases/tag/v1.10.0)-(April-3,-2023)","page":"Release notes","title":"Version 1.10.0 (April 3, 2023)","text":"","category":"section"},{"location":"release_notes/#Added-14","page":"Release notes","title":"Added","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Added Nonnegatives, Nonpositives and Zeros, and support vector-valued inequality syntax in the JuMP macros (#3273)\nAdded special support for LinearAlgebra.Symmetric and LinearAlgebra.Hermitian matrices in Zeros constraints (#3281) (#3296)\nAdded HermitianMatrixSpace and the Hermitian tag for generating a matrix of variables that is Hermitian (#3292) (#3293)\nAdded Semicontinuous and Semiinteger (#3302)\nAdded support for keyword indexing of containers (#3237)","category":"page"},{"location":"release_notes/#Fixed-24","page":"Release notes","title":"Fixed","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Fixed [compat] bound for MathOptInterface in Project.toml (#3272)","category":"page"},{"location":"release_notes/#Other-22","page":"Release notes","title":"Other","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Split out the Nested optimization problems tutorial (#3274)\nUpdated doctests to ensure none have hidden state (#3275) (#3276)\nClarified how lazy constraints may revisit points (#3278)\nAdded P-Norm example (#3282)\nClarified docs that macros create new bindings (#3284)\nFixed threading example (#3283)\nAdded plot to The minimum distortion problem (#3288)\nAdded Google style rules for Vale and fixed warnings (#3285)\nAdded citation for the JuMP 1.0 paper (#3294)\nUpdated package versions in the documentation (#3298)\nAdded comment for the order in which start values must be set (#3303)\nImproved error message for unrecognized constraint operators (#3311)","category":"page"},{"location":"release_notes/#[Version-1.9.0](https://github.com/jump-dev/JuMP.jl/releases/tag/v1.9.0)-(March-7,-2023)","page":"Release notes","title":"Version 1.9.0 (March 7, 2023)","text":"","category":"section"},{"location":"release_notes/#Added-15","page":"Release notes","title":"Added","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Added get_attribute and set_attribute. These replace get_optimizer_attribute and set_optimizer_attribute, although the _optimizer_ functions remain for backward compatibility. (#3219)\nAdded set_start_values for setting all supported start values in a model (#3238)\nAdd remove_bridge and print_active_bridges (#3259)","category":"page"},{"location":"release_notes/#Fixed-25","page":"Release notes","title":"Fixed","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"The matrix returned by a variable in HermitianPSDCone is now a LinearAlgebra.Hermitian matrix. This is potentially breaking if you have written code to assume the return is a Matrix. (#3245) (#3246)\nFixed missing support for Base.isreal of expressions (#3252)","category":"page"},{"location":"release_notes/#Other-23","page":"Release notes","title":"Other","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Fixed a thread safety issue in the Parallelism tutorial (#3240) (#3243)\nImproved the error message when unsupported operators are used in @NL macros (#3236)\nClarified the documentation to say that matrices in HermitianPSDCone must be LinearAlgebra.Hermitian (#3241)\nMinor style fixes to internal macro code (#3247)\nAdd Example: quantum state discrimination tutorial (#3250)\nImprove error message when begin...end not passed to plural macros (#3255)\nDocument how to register function with varying number of input arguments (#3258)\nTidy tests by removing unneeded JuMP. prefixes (#3260)\nClarified the introduction to the Complex number support tutorial (#3262)\nFixed typos in the Documentation (#3263) (#3266) (#3268) (#3269)","category":"page"},{"location":"release_notes/#[Version-1.8.2](https://github.com/jump-dev/JuMP.jl/releases/tag/v1.8.2)-(February-27,-2023)","page":"Release notes","title":"Version 1.8.2 (February 27, 2023)","text":"","category":"section"},{"location":"release_notes/#Fixed-26","page":"Release notes","title":"Fixed","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Fixed dot product between complex JuMP expression and number (#3244)","category":"page"},{"location":"release_notes/#Other-24","page":"Release notes","title":"Other","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Polish simple SDP examples (#3232)","category":"page"},{"location":"release_notes/#[Version-1.8.1](https://github.com/jump-dev/JuMP.jl/releases/tag/v1.8.1)-(February-23,-2023)","page":"Release notes","title":"Version 1.8.1 (February 23, 2023)","text":"","category":"section"},{"location":"release_notes/#Fixed-27","page":"Release notes","title":"Fixed","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Fixed support for init in nonlinear generator expressions (#3226)","category":"page"},{"location":"release_notes/#Other-25","page":"Release notes","title":"Other","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Use and document import MathOptInterface as MOI (#3222)\nRemoved references in documentation to multiobjective optimization being unsupported (#3223)\nAdded tutorial on multi-objective portfolio optimization (#3227)\nRefactored some of the conic tutorials (#3229)\nFixed typos in the documentation (#3230)\nAdded tutorial on parallelism (#3231)","category":"page"},{"location":"release_notes/#[Version-1.8.0](https://github.com/jump-dev/JuMP.jl/releases/tag/v1.8.0)-(February-16,-2023)","page":"Release notes","title":"Version 1.8.0 (February 16, 2023)","text":"","category":"section"},{"location":"release_notes/#Added-16","page":"Release notes","title":"Added","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Added --> syntax support for indicator constraints. The old syntax of => remains supported (#3207)\nAdded <--> syntax for reified constraints. For now, few solvers support reified constraints (#3206)\nAdded fix_discrete_variables. This is most useful for computing the dual of a mixed-integer program (#3208)\nAdded support for vector-valued objectives. For details, see the Multi-objective knapsack tutorial (#3176)","category":"page"},{"location":"release_notes/#Fixed-28","page":"Release notes","title":"Fixed","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Fixed a bug in lp_sensitivity_report by switching to an explicit LU factorization of the basis matrix (#3182)\nFixed a bug that prevented [; kwarg] arguments in macros (#3220)","category":"page"},{"location":"release_notes/#Other-26","page":"Release notes","title":"Other","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Minor fixes to the documentation (#3200) (#3201) (#3203) (#3210)\nAdded tutorial Constraint programming (#3202)\nAdded more examples to Modeling with cones\nRemove _distance_to_set in favor of MOI.Utilities.distance_to_set (#3209)\nImprove The diet problem tutorial by adding the variable as a column in the dataframe (#3213)\nImprove The knapsack problem example tutorial (#3216) (#3217)\nAdded the Example: ellipsoid approximation tutorial (#3218)","category":"page"},{"location":"release_notes/#[Version-1.7.0](https://github.com/jump-dev/JuMP.jl/releases/tag/v1.7.0)-(January-25,-2023)","page":"Release notes","title":"Version 1.7.0 (January 25, 2023)","text":"","category":"section"},{"location":"release_notes/#Added-17","page":"Release notes","title":"Added","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Added support for view of a Containers.DenseAxisArray (#3152) (#3180)\nAdded support for containers of variables in ComplexPlane (#3184)\nAdded support for minimum and maximum generators in nonlinear expressions (#3189)\nAdded SnoopPrecompile statements that reduce the time-to-first-solve in Julia 1.9 (#3193) (#3195) (#3196) (#3197)","category":"page"},{"location":"release_notes/#Other-27","page":"Release notes","title":"Other","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Large refactoring of the tests (#3166) (#3167) (#3168) (#3169) (#3170) (#3171)\nRemove unreachable code due to VERSION checks (#3172)\nDocument how to test JuMP extensions (#3174)\nFix method ambiguities in Containers (#3173)\nImprove error message that is thrown when = is used instead of == in the @constraint macro (#3178)\nImprove the error message when Bool is used instead of Bin in the @variable macro (#3180)\nUpdate versions of the documentation (#3185)\nTidy the import of packages and remove unnecessary prefixes (#3186) (#3187)\nRefactor src/JuMP.jl by moving methods into more relevant files (#3188)\nFix docstring of Model not appearing in the documentation (#3198)","category":"page"},{"location":"release_notes/#[Version-1.6.0](https://github.com/jump-dev/JuMP.jl/releases/tag/v1.6.0)-(January-1,-2023)","page":"Release notes","title":"Version 1.6.0 (January 1, 2023)","text":"","category":"section"},{"location":"release_notes/#Added-18","page":"Release notes","title":"Added","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Added a result keyword argument to solution_summary to allow summarizing models with multiple solutions (#3138)\nAdded relax_with_penalty!, which is a useful tool when debugging infeasible models (#3140)\nAdded has_start_value (#3157)\nAdded support for HermitianPSDCone in constraints (#3154)","category":"page"},{"location":"release_notes/#Fixed-29","page":"Release notes","title":"Fixed","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Fixed promotion of complex expressions (#3150) (#3164)","category":"page"},{"location":"release_notes/#Other-28","page":"Release notes","title":"Other","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Added Benders tutorial with in-place resolves (#3145)\nAdded more Tips and tricks for linear programs (#3144) (#3163)\nClarified documentation that start can depend on the indices of a variable container (#3148)\nReplace instances of length and size by the recommended eachindex and axes (#3149)\nAdded a warning explaining why the model is dirty when accessing solution results from a modified model (#3156)\nClarify documentation that PSD ensures a symmetric matrix (#3159)\nMaintenance of the JuMP test suite (#3146) (#3158) (#3162)","category":"page"},{"location":"release_notes/#[Version-1.5.0](https://github.com/jump-dev/JuMP.jl/releases/tag/v1.5.0)-(December-8,-2022)","page":"Release notes","title":"Version 1.5.0 (December 8, 2022)","text":"","category":"section"},{"location":"release_notes/#Added-19","page":"Release notes","title":"Added","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Add support for complex-valued variables:\nHermitianPSDCone (#3109)\nComplexPlane and ComplexVariable (#3134)\nAdd support for MOI.OptimizerWithAttributes in set_optimizer_attribute and get_optimizer_attribute (#3129)","category":"page"},{"location":"release_notes/#Fixed-30","page":"Release notes","title":"Fixed","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Fixed error message for vectorized interval constraints (#3123)\nFixed passing AbstractString to set_optimizer_attribute (#3127)","category":"page"},{"location":"release_notes/#Other-29","page":"Release notes","title":"Other","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Update package versions used in docs (#3119) (#3133) (#3139)\nFixed output of diet tutorial (#3120)\nExplain how to use Dates.period in set_time_limit_sec (#3121)\nUpdate to JuliaFormatter v1.0.15 (#3130)\nFixed HTTP server example in web_app.jl (#3131)\nUpdate docs to build with Documenter#master (#3094)\nAdd tests for LinearAlgebra operations (#3132)\nTidy these release notes (#3135)\nAdded documentation for Complex number support (#3141)\nRemoved the \"workforce scheduling\" and \"steelT3\" tutorials (#3143)","category":"page"},{"location":"release_notes/#[Version-1.4.0](https://github.com/jump-dev/JuMP.jl/releases/tag/v1.4.0)-(October-29,-2022)","page":"Release notes","title":"Version 1.4.0 (October 29, 2022)","text":"","category":"section"},{"location":"release_notes/#Added-20","page":"Release notes","title":"Added","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Added Containers.rowtable which converts a container into a vector of NamedTuples to support the Tables.jl interface. This simplifies converting Containers.DenseAxisArray and Containers.SparseAxisArray objects into tabular forms such as a DataFrame (#3104)\nAdded a new method to Containers.container so that index names are passed to the container (#3088)","category":"page"},{"location":"release_notes/#Fixed-31","page":"Release notes","title":"Fixed","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Fixed a bug in copy_to(dest::Model, src::MOI.ModelLike) when src has nonlinear components (#3101)\nFixed the printing of (-1.0 + 0.0im) coefficients in complex expressions (#3112)\nFixed a parsing bug in nonlinear expressions with generator statements that contain multiple for statements (#3116)","category":"page"},{"location":"release_notes/#Other-30","page":"Release notes","title":"Other","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Converted the multi-commodity flow tutorial to use an SQLite database (#3098)\nFixed a number of typos in the documentation (#3103) (#3107) (#3018)\nImproved various style aspects of the PDF documentation (#3095) (#3098) (#3102)","category":"page"},{"location":"release_notes/#[Version-1.3.1](https://github.com/jump-dev/JuMP.jl/releases/tag/v1.3.1)-(September-28,-2022)","page":"Release notes","title":"Version 1.3.1 (September 28, 2022)","text":"","category":"section"},{"location":"release_notes/#Fixed-32","page":"Release notes","title":"Fixed","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Fixed a performance issue in relax_integrality (#3087)\nFixed the type stability of operators with Complex arguments (#3072)\nFixed a bug which added additional +() terms to some nonlinear expressions (#3091)\nFixed potential method ambiguities with AffExpr and QuadExpr objects (#3092)","category":"page"},{"location":"release_notes/#Other-31","page":"Release notes","title":"Other","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Added vale as a linter for the documentation (#3080)\nAdded a tutorial on debugging JuMP models (#3043)\nFixed a number of typos in the documentation (#3079) (#3083)\nMany other small tweaks to the documentation (#3068) (#3073) (#3074) (#3075) (#3076) (#3077) (#3078) (#3081) (#3082) (#3084) (#3085) (#3089)","category":"page"},{"location":"release_notes/#[Version-1.3.0](https://github.com/jump-dev/JuMP.jl/releases/tag/v1.3.0)-(September-5,-2022)","page":"Release notes","title":"Version 1.3.0 (September 5, 2022)","text":"","category":"section"},{"location":"release_notes/#Added-21","page":"Release notes","title":"Added","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Support slicing in SparseAxisArray (#3031)","category":"page"},{"location":"release_notes/#Fixed-33","page":"Release notes","title":"Fixed","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Fixed a bug introduced in v1.2.0 that prevented DenseAxisArrays with Vector keys (#3064)","category":"page"},{"location":"release_notes/#Other-32","page":"Release notes","title":"Other","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Released the JuMP logos under the CC BY 4.0 license (#3063)\nMinor tweaks to the documentation (#3054) (#3056) (#3057) (#3060) (#3061) (#3065)\nImproved code coverage of a number of files (#3048) (#3049) (#3050) (#3051) (#3052) (#3053) (#3058) (#3059)","category":"page"},{"location":"release_notes/#[Version-1.2.1](https://github.com/jump-dev/JuMP.jl/releases/tag/v1.2.1)-(August-22,-2022)","page":"Release notes","title":"Version 1.2.1 (August 22, 2022)","text":"","category":"section"},{"location":"release_notes/#Fixed-34","page":"Release notes","title":"Fixed","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Fixed a bug when parsing two-sided nonlinear constraints (#3045)","category":"page"},{"location":"release_notes/#[Version-1.2.0](https://github.com/jump-dev/JuMP.jl/releases/tag/v1.2.0)-(August-16,-2022)","page":"Release notes","title":"Version 1.2.0 (August 16, 2022)","text":"","category":"section"},{"location":"release_notes/#Breaking-2","page":"Release notes","title":"Breaking","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"This is a large minor release because it significantly refactors the internal code for handling nonlinear programs to use the MathOptInterface.Nonlinear submodule that was introduced in MathOptInterface v1.3.0. As a consequence, the internal datastructure in model.nlp_data has been removed, as has the JuMP._Derivatives submodule. Despite the changes, the public API for nonlinear programming has not changed, and any code that uses only the public API and that worked with v1.1.1 will continue to work with v1.2.0.","category":"page"},{"location":"release_notes/#Added-22","page":"Release notes","title":"Added","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Added all_constraints(model; include_variable_in_set_constraints) which simplifies returning a list of all constraint indices in the model.\nAdded the ability to delete nonlinear constraints via delete(::Model, ::NonlinearConstraintRef).\nAdded the ability to provide an explicit Hessian for a multivariate user-defined function.\nAdded support for querying the primal value of a nonlinear constraint via value(::NonlinearConstraintRef)","category":"page"},{"location":"release_notes/#Fixed-35","page":"Release notes","title":"Fixed","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Fixed a bug in Containers.DenseAxisArray so that it now supports indexing with keys that hash to the same value, even if they are different types, for example, Int32 and Int64.\nFixed a bug printing the model when the solver does not support MOI.Name.","category":"page"},{"location":"release_notes/#Other-33","page":"Release notes","title":"Other","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Added a constraint programming formulation to the Sudoku tutorial.\nAdded newly supported solvers Pajarito, Clarabel, and COPT to the installation table.\nFixed a variety of other miscellaneous issues in the documentation.","category":"page"},{"location":"release_notes/#[Version-1.1.1](https://github.com/jump-dev/JuMP.jl/releases/tag/v1.1.1)-(June-14,-2022)","page":"Release notes","title":"Version 1.1.1 (June 14, 2022)","text":"","category":"section"},{"location":"release_notes/#Other-34","page":"Release notes","title":"Other","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Fixed problem displaying LaTeX in the documentation\nMinor updates to the style guide\nUpdated to MOI v1.4.0 in the documentation","category":"page"},{"location":"release_notes/#[Version-1.1.0](https://github.com/jump-dev/JuMP.jl/releases/tag/v1.1.0)-(May-25,-2022)","page":"Release notes","title":"Version 1.1.0 (May 25, 2022)","text":"","category":"section"},{"location":"release_notes/#Added-23","page":"Release notes","title":"Added","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Added num_constraints(::Model; count_variable_in_set_constraints) to simplify the process of counting the number of constraints in a model\nAdded VariableRef(::ConstraintRef) for querying the variable associated with a bound or integrality constraint.\nAdded set_normalized_coefficients for modifying the variable coefficients of a vector-valued constraint.\nAdded set_string_names_on_creation to disable creating String names for variables and constraints. This can improve performance.","category":"page"},{"location":"release_notes/#Fixed-36","page":"Release notes","title":"Fixed","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Fixed a bug passing nothing to the start keyword of @variable","category":"page"},{"location":"release_notes/#Other-35","page":"Release notes","title":"Other","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"New tutorials:\nSensitivity analysis of a linear program\nServing web apps\nMinimal ellipse SDP tutorial refactored and improved\nDocs updated to the latest version of each package\nLots of minor fixes and improvements to the documentation","category":"page"},{"location":"release_notes/#[Version-1.0.0](https://github.com/jump-dev/JuMP.jl/releases/tag/v1.0.0)-(March-24,-2022)","page":"Release notes","title":"Version 1.0.0 (March 24, 2022)","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Read more about this release, along with an acknowledgement of all the contributors in our JuMP 1.0.0 is released blog post.","category":"page"},{"location":"release_notes/#Breaking-3","page":"Release notes","title":"Breaking","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"The previously deprecated functions (v0.23.0, v0.23.1) have been removed. Deprecation was to improve consistency of function names:\nnum_nl_constraints (see num_nonlinear_constraints)\nall_nl_constraints (see all_nonlinear_constraints)\nadd_NL_expression (see add_nonlinear_expression)\nset_NL_objective (see set_nonlinear_objective)\nadd_NL_constraint (see add_nonlinear_constraint)\nnl_expr_string (see nonlinear_expr_string)\nnl_constraint_string (see nonlinear_constraint_string)\nSymMatrixSpace (see SymmetricMatrixSpace)\nThe unintentionally exported variable JuMP.op_hint has been renamed to the unexported JuMP._OP_HINT","category":"page"},{"location":"release_notes/#Fixed-37","page":"Release notes","title":"Fixed","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Fixed a bug writing .nl files\nFixed a bug broadcasting SparseAxisArrays","category":"page"},{"location":"release_notes/#[Version-0.23.2](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.23.2)-(March-14,-2022)","page":"Release notes","title":"Version 0.23.2 (March 14, 2022)","text":"","category":"section"},{"location":"release_notes/#Added-24","page":"Release notes","title":"Added","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Added relative_gap to solution_summary\nregister now throws an informative error if the function is not differentiable using ForwardDiff. In some cases, the check in register will encounter a false negative, and the informative error will be thrown at run-time. This usually happens when the function is non-differentiable in a subset of the domain.","category":"page"},{"location":"release_notes/#Fixed-38","page":"Release notes","title":"Fixed","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Fixed a scoping issue when extending the container keyword of containers","category":"page"},{"location":"release_notes/#Other-36","page":"Release notes","title":"Other","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Docs updated to the latest version of each package","category":"page"},{"location":"release_notes/#[Version-0.23.1](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.23.1)-(March-2,-2022)","page":"Release notes","title":"Version 0.23.1 (March 2, 2022)","text":"","category":"section"},{"location":"release_notes/#Deprecated","page":"Release notes","title":"Deprecated","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"nl_expr_string and nl_constraint_string have been renamed to nonlinear_expr_string and nonlinear_constraint_string. The old methods still exist with deprecation warnings. This change should impact very few users because to call them you must rely on private internals of the nonlinear API. Users are encouraged to use sprint(show, x) instead, where x is the nonlinear expression or constraint of interest.","category":"page"},{"location":"release_notes/#Added-25","page":"Release notes","title":"Added","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Added support for Base.abs2(x) where x is a variable or affine expression. This is mainly useful for complex-valued constraints.","category":"page"},{"location":"release_notes/#Fixed-39","page":"Release notes","title":"Fixed","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Fixed addition of complex and real affine expressions\nFixed arithmetic for Complex-valued quadratic expressions\nFixed variable bounds passed as Rational{Int}(Inf)\nFixed printing of the coefficient (0 + 1im)\nFixed a bug when solution_summary is called prior to optimize!","category":"page"},{"location":"release_notes/#[Version-0.23.0](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.23.0)-(February-25,-2022)","page":"Release notes","title":"Version 0.23.0 (February 25, 2022)","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"JuMP v0.23.0 is a breaking release. It is also a release-candidate for JuMP v1.0.0. That is, if no issues are found with the v0.23.0 release, then it will be re-tagged as v1.0.0.","category":"page"},{"location":"release_notes/#Breaking-4","page":"Release notes","title":"Breaking","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Julia 1.6 is now the minimum supported version\nMathOptInterface has been updated to v1.0.0\nAll previously deprecated functionality has been removed\nPrintMode, REPLMode and IJuliaMode have been removed in favor of the MIME types MIME\"text/plain\" and MIME\"text/latex\". Replace instances of ::Type{REPLMode} with ::MIME\"text/plain\", REPLMode with MIME(\"text/plain\"), ::Type{IJuliaMode} with ::MIME\"text/latex\", and IJuliaMode with MIME(\"text/latex\").\nFunctions containing the nl_ acronym have been renamed to the more explicit nonlinear_. For example, num_nl_constraints is now num_nonlinear_constraints and set_NL_objective is now set_nonlinear_objective. Calls to the old functions throw an error explaining the new name.\nSymMatrixSpace has been renamed to SymmetricMatrixSpace","category":"page"},{"location":"release_notes/#Added-26","page":"Release notes","title":"Added","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Added nonlinear_dual_start_value and set_nonlinear_dual_start_value\nAdded preliminary support for Complex coefficient types","category":"page"},{"location":"release_notes/#Fixed-40","page":"Release notes","title":"Fixed","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Fixed a bug in solution_summary","category":"page"},{"location":"release_notes/#Other-37","page":"Release notes","title":"Other","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"MILP examples have been migrated from GLPK to HiGHS\nFixed various typos\nImproved section on setting constraint start values","category":"page"},{"location":"release_notes/#Troubleshooting-problems-when-updating","page":"Release notes","title":"Troubleshooting problems when updating","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"If you experience problems when updating, you are likely using previously deprecated functionality. (By default, Julia does not warn when you use deprecated features.)","category":"page"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"To find the deprecated features you are using, start Julia with --depwarn=yes:","category":"page"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"$ julia --depwarn=yes","category":"page"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Then install JuMP v0.22.3:","category":"page"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"julia> using Pkg\njulia> pkg\"add JuMP@0.22.3\"","category":"page"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"And then run your code. Apply any suggestions, or search the release notes below for advice on updating a specific deprecated feature.","category":"page"},{"location":"release_notes/#[Version-0.22.3](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.22.3)-(February-10,-2022)","page":"Release notes","title":"Version 0.22.3 (February 10, 2022)","text":"","category":"section"},{"location":"release_notes/#Fixed-41","page":"Release notes","title":"Fixed","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Fixed a reproducibility issue in the TSP tutorial\nFixed a reproducibility issue in the max_cut_sdp tutorial\nFixed a bug broadcasting an empty SparseAxisArray","category":"page"},{"location":"release_notes/#Other-38","page":"Release notes","title":"Other","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Added a warning and improved documentation for the modify-then-query case\nFixed a typo in the docstring of RotatedSecondOrderCone\nAdded Aqua.jl as a check for code health\nAdded introductions to each section of the tutorials\nImproved the column generation and Benders decomposition tutorials\nUpdated documentation to MOI v0.10.8\nUpdated JuliaFormatter to v0.22.2","category":"page"},{"location":"release_notes/#[Version-0.22.2](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.22.2)-(January-10,-2022)","page":"Release notes","title":"Version 0.22.2 (January 10, 2022)","text":"","category":"section"},{"location":"release_notes/#Added-27","page":"Release notes","title":"Added","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"The function all_nl_constraints now returns all nonlinear constraints in a model\nstart_value and set_start_value can now be used to get and set the primal start for constraint references\nPlural macros now return a tuple containing the elements that were defined instead of nothing\nAnonymous variables are now printed as _[i] where i is the index of the variable instead of noname. Calling name(x) still returns \"\" so this is non-breaking.","category":"page"},{"location":"release_notes/#Fixed-42","page":"Release notes","title":"Fixed","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Fixed handling of min and max in nonlinear expressions\nCartesianIndex is no longer allowed as a key for DenseAxisArrays.","category":"page"},{"location":"release_notes/#Other-39","page":"Release notes","title":"Other","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Improved the performance of GenericAffExpr\nAdded a tutorial on the Travelling Salesperson Problem\nAdded a tutorial on querying the Hessian of a nonlinear program\nAdded documentation on using custom solver binaries.","category":"page"},{"location":"release_notes/#[Version-0.22.1](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.22.1)-(November-29,-2021)","page":"Release notes","title":"Version 0.22.1 (November 29, 2021)","text":"","category":"section"},{"location":"release_notes/#Added-28","page":"Release notes","title":"Added","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Export OptimizationSense enum, with instances: MIN_SENSE, MAX_SENSE, and FEASIBILITY_SENSE\nAdd Base.isempty(::Model) to match Base.empty(::Model)","category":"page"},{"location":"release_notes/#Fixed-43","page":"Release notes","title":"Fixed","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Fix bug in container with tuples as indices\nFix bug in set_time_limit_sec","category":"page"},{"location":"release_notes/#Other-40","page":"Release notes","title":"Other","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Add tutorial \"Design patterns for larger models\"\nRemove release notes section from PDF\nGeneral edits of the documentation and error messages","category":"page"},{"location":"release_notes/#[Version-0.22.0](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.22.0)-(November-10,-2021)","page":"Release notes","title":"Version 0.22.0 (November 10, 2021)","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"JuMP v0.22 is a breaking release","category":"page"},{"location":"release_notes/#Breaking-5","page":"Release notes","title":"Breaking","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"JuMP 0.22 contains a number of breaking changes. However, these should be invisible for the majority of users. You will mostly encounter these breaking changes if you: wrote a JuMP extension, accessed backend(model), or called @SDconstraint.","category":"page"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"The breaking changes are as follows:","category":"page"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"MathOptInterface has been updated to v0.10.4. For users who have interacted with the MOI backend, this contains a large number of breaking changes. Read the MathOptInterface release notes for more details.\nThe bridge_constraints keyword argument to Model and set_optimizer has been renamed add_bridges to reflect that more thing were bridged than just constraints.\nThe backend(model) field now contains a concrete instance of a MOI.Utilities.CachingOptimizer instead of one with an abstractly typed optimizer field. In most cases, this will lead to improved performance. However, calling set_optimizer after backend invalidates the old backend. For example:\nmodel = Model()\nb = backend(model)\nset_optimizer(model, GLPK.Optimizer)\n@variable(model, x)\n# b is not updated with `x`! Get a new b by calling `backend` again.\nnew_b = backend(model)\nAll usages of @SDconstraint are deprecated. The new syntax is @constraint(model, X >= Y, PSDCone()).\nCreating a DenseAxisArray with a Number as an axis will now display a warning. This catches a common error in which users write @variable(model, x[length(S)]) instead of @variable(model, x[1:length(S)]).\nThe caching_mode argument to Model, for example, Model(caching_mode = MOIU.MANUAL) mode has been removed. For more control over the optimizer, use direct_model instead.\nThe previously deprecated lp_objective_perturbation_range and lp_rhs_perturbation_range functions have been removed. Use lp_sensitivity_report instead.\nThe .m fields of NonlinearExpression and NonlinearParameter have been renamed to .model.\nInfinite variable bounds are now ignored. Thus, @variable(model, x <= Inf) will show has_upper_bound(x) == false. Previously, these bounds were passed through to the solvers which caused numerical issues for solvers expecting finite bounds.\nThe variable_type and constraint_type functions were removed. This should only affect users who previously wrote JuMP extensions. The functions can be deleted without consequence.\nThe internal functions moi_mode, moi_bridge_constraints, moi_add_constraint, and moi_add_to_function_constant are no longer exported.\nThe un-used method Containers.generate_container has been deleted.\nThe Containers API has been refactored, and _build_ref_sets is now public as Containers.build_ref_sets.\nThe parse_constraint_ methods for extending @constraint at parse time have been refactored in a breaking way. Consult the Extensions documentation for more details and examples.","category":"page"},{"location":"release_notes/#Added-29","page":"Release notes","title":"Added","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"The TerminationStatusCode and ResultStatusCode enums are now exported by JuMP. Prefer termination_status(model) == OPTIMAL instead of == MOI.OPTIMAL, although the MOI. prefix way still works.\nCopy a x::DenseAxisArray to an Array by calling Array(x).\nNonlinearExpression is now a subtype of AbstractJuMPScalar\nConstraints such as @constraint(model, x + 1 in MOI.Integer()) are now supported.\nprimal_feasibility_report now accepts a function as the first argument.\nScalar variables @variable(model, x[1:2] in MOI.Integer()) creates two variables, both of which are constrained to be in the set MOI.Integer.\nConic constraints can now be specified as inequalities under a different partial ordering. So @constraint(model, x - y in MOI.Nonnegatives()) can now be written as @constraint(model, x >= y, MOI.Nonnegatives()).\nNames are now set for vectorized constraints.","category":"page"},{"location":"release_notes/#Fixed-44","page":"Release notes","title":"Fixed","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Fixed a performance issue when show was called on a SparseAxisArray with a large number of elements.\nFixed a bug displaying barrier and simplex iterations in solution_summary.\nFixed a bug by implementing hash for DenseAxisArray and SparseAxisArray.\nNames are now only set if the solver supports them. Previously, this prevented solvers such as Ipopt from being used with direct_model.\nMutableArithmetics.Zero is converted into a 0.0 before being returned to the user. Previously, some calls to @expression would return the undocumented MutableArithmetics.Zero() object. One example is summing over an empty set @expression(model, sum(x[i] for i in 1:0)). You will now get 0.0 instead.\nAffExpr and QuadExpr can now be used with == 0 instead of iszero. This fixes a number of issues relating to Julia standard libraries such as LinearAlgebra and SparseArrays.\nFixed a bug when registering a user-defined function with splatting.","category":"page"},{"location":"release_notes/#Other-41","page":"Release notes","title":"Other","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"The documentation is now available as a PDF.\nThe documentation now includes a full copy of the MathOptInterface documentation to make it easy to link concepts between the docs. (The MathOptInterface documentation has also been significantly improved.)\nThe documentation contains a large number of improvements and clarifications on a range of topics. Thanks to @sshin23, @DilumAluthge, and @jlwether.\nThe documentation is now built with Julia 1.6 instead of 1.0.\nVarious error messages have been improved to be more readable.","category":"page"},{"location":"release_notes/#[Version-0.21.10](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.21.10)-(September-4,-2021)","page":"Release notes","title":"Version 0.21.10 (September 4, 2021)","text":"","category":"section"},{"location":"release_notes/#Added-30","page":"Release notes","title":"Added","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Added add_NL_expression\nadd_NL_xxx functions now support AffExpr and QuadExpr as terms","category":"page"},{"location":"release_notes/#Fixed-45","page":"Release notes","title":"Fixed","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Fixed a bug in solution_summary\nFixed a bug in relax_integrality","category":"page"},{"location":"release_notes/#Other-42","page":"Release notes","title":"Other","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Improved error message in lp_sensitivity_report","category":"page"},{"location":"release_notes/#[Version-0.21.9](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.21.9)-(August-1,-2021)","page":"Release notes","title":"Version 0.21.9 (August 1, 2021)","text":"","category":"section"},{"location":"release_notes/#Added-31","page":"Release notes","title":"Added","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Containers now support arbitrary container types by passing the type to the container keyword and overloading Containers.container.\nis_valid now supports nonlinear constraints\nAdded unsafe_backend for querying the inner-most optimizer of a JuMP model.\nNonlinear parameters now support the plural @NLparameters macro.\nContainers (for example, DenseAxisArray) can now be used in vector-valued constraints.","category":"page"},{"location":"release_notes/#Other-43","page":"Release notes","title":"Other","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Various improvements to the documentation.","category":"page"},{"location":"release_notes/#[Version-0.21.8](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.21.8)-(May-8,-2021)","page":"Release notes","title":"Version 0.21.8 (May 8, 2021)","text":"","category":"section"},{"location":"release_notes/#Added-32","page":"Release notes","title":"Added","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"The @constraint macro is now extendable in the same way as @variable.\nAffExpr and QuadExpr can now be used in nonlinear macros.","category":"page"},{"location":"release_notes/#Fixed-46","page":"Release notes","title":"Fixed","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Fixed a bug in lp_sensitivity_report.\nFixed an inference issue when creating empty SparseAxisArrays.","category":"page"},{"location":"release_notes/#[Version-0.21.7](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.21.7)-(April-12,-2021)","page":"Release notes","title":"Version 0.21.7 (April 12, 2021)","text":"","category":"section"},{"location":"release_notes/#Added-33","page":"Release notes","title":"Added","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Added primal_feasibility_report, which can be used to check whether a primal point satisfies primal feasibility.\nAdded coefficient, which returns the coefficient associated with a variable in affine and quadratic expressions.\nAdded copy_conflict, which returns the IIS of an infeasible model.\nAdded solution_summary, which returns (and prints) a struct containing a summary of the solution.\nAllow AbstractVector in vector constraints instead of just Vector.\nAdded latex_formulation(model) which returns an object representing the latex formulation of a model. Use print(latex_formulation(model)) to print the formulation as a string.\nUser-defined functions in nonlinear expressions are now automatically registered to aid quick model prototyping. However, a warning is printed to encourage the manual registration.\nDenseAxisArray's now support broadcasting over multiple arrays.\nContainer indices can now be iterators of Base.SizeUnknown.","category":"page"},{"location":"release_notes/#Fixed-47","page":"Release notes","title":"Fixed","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Fixed bug in rad2deg and deg2rad in nonlinear expressions.\nFixed a MethodError bug in Containers when forcing container type.\nAllow partial slicing of a DenseAxisArray, resolving an issue from 2014.\nFixed a bug printing variable names in IJulia.\nEnding an IJulia cell with model now prints a summary of the model (like in the REPL) not the latex formulation. Use print(model) to print the latex formulation.\nFixed a bug when copying models containing nested arrays.","category":"page"},{"location":"release_notes/#Other-44","page":"Release notes","title":"Other","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Tutorials are now part of the documentation, and more refactoring has taken place.\nAdded JuliaFormatter added as a code formatter.\nAdded some precompilation statements to reduce initial latency.\nVarious improvements to error messages to make them more helpful.\nImproved performance of value(::NonlinearExpression).\nImproved performance of fix(::VariableRef).","category":"page"},{"location":"release_notes/#[Version-0.21.6](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.21.6)-(January-29,-2021)","page":"Release notes","title":"Version 0.21.6 (January 29, 2021)","text":"","category":"section"},{"location":"release_notes/#Added-34","page":"Release notes","title":"Added","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Added support for skew symmetric variables via @variable(model, X[1:2, 1:2] in SkewSymmetricMatrixSpace()).\nlp_sensitivity_report has been added which significantly improves the performance of querying the sensitivity summary of an LP. lp_objective_perturbation_range and lp_rhs_perturbation_range are deprecated.\nDual warm-starts are now supported with set_dual_start_value and dual_start_value.\n∈ (\\in) can now be used in macros instead of = or in.\nUse haskey(model::Model, key::Symbol) to check if a name key is registered in a model.\nAdded unregister(model::Model, key::Symbol) to unregister a name key from model.\nAdded callback_node_status for use in callbacks.\nAdded print_bridge_graph to visualize the bridging graph generated by MathOptInterface.\nImproved error message for containers with duplicate indices.","category":"page"},{"location":"release_notes/#Fixed-48","page":"Release notes","title":"Fixed","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Various fixes to pass tests on Julia 1.6.\nFixed a bug in the printing of nonlinear expressions in IJulia.\nFixed a bug when nonlinear expressions are passed to user-defined functions.\nSome internal functions that were previously exported are now no longer exported.\nFixed a bug when relaxing a fixed binary variable.\nFixed a StackOverflowError that occurred when SparseAxisArrays had a large number of elements.\nRemoved an unnecessary type assertion in list_of_constraint_types.\nFixed a bug when copying models with registered expressions.","category":"page"},{"location":"release_notes/#Other-45","page":"Release notes","title":"Other","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"The documentation has been significantly overhauled. It now has distinct sections for the manual, API reference, and examples. The existing examples in /examples have now been moved to /docs/src/examples and rewritten using Literate.jl, and they are now included in the documentation.\nJuliaFormatter has been applied to most of the codebase. This will continue to roll out over time, as we fix upstream issues in the formatter, and will eventually become compulsory.\nThe root cause of a large number of method invalidations has been resolved.\nWe switched continuous integration from Travis and Appveyor to GitHub Actions.","category":"page"},{"location":"release_notes/#[Version-0.21.5](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.21.5)-(September-18,-2020)","page":"Release notes","title":"Version 0.21.5 (September 18, 2020)","text":"","category":"section"},{"location":"release_notes/#Fixed-49","page":"Release notes","title":"Fixed","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Fixed deprecation warnings\nThrow DimensionMismatch for incompatibly sized functions and sets\nUnify treatment of keys(x) on JuMP containers","category":"page"},{"location":"release_notes/#[Version-0.21.4](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.21.4)-(September-14,-2020)","page":"Release notes","title":"Version 0.21.4 (September 14, 2020)","text":"","category":"section"},{"location":"release_notes/#Added-35","page":"Release notes","title":"Added","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Add debug info when adding unsupported constraints\nAdd relax_integrality for solving continuous relaxation\nAllow querying constraint conflicts","category":"page"},{"location":"release_notes/#Fixed-50","page":"Release notes","title":"Fixed","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Dispatch on Real for MOI.submit\nImplement copy for CustomSet in tests\nDon't export private macros\nFix invalid assertion in nonlinear\nError if constraint has NaN right-hand side\nImprove speed of tests\nLots of work modularizing files in /test\nImprove line numbers in macro error messages\nPrint nonlinear subexpressions\nVarious documentation updates\nDependency updates:\nDatastructures 0.18\nMathOptFormat v0.5\nPrep for MathOptInterface 0.9.15","category":"page"},{"location":"release_notes/#[Version-0.21.3](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.21.3)-(June-18,-2020)","page":"Release notes","title":"Version 0.21.3 (June 18, 2020)","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Added Special Order Sets (SOS1 and SOS2) to JuMP with default weights to ease the creation of such constraints (#2212).\nAdded functions simplex_iterations, barrier_iterations and node_count (#2201).\nAdded function reduced_cost (#2205).\nImplemented callback_value for affine and quadratic expressions (#2231).\nSupport MutableArithmetics.Zero in objective and constraints (#2219).\nDocumentation improvements:\nMention tutorials in the docs (#2223).\nUpdate COIN-OR links (#2242).\nExplicit link to the documentation of MOI.FileFormats (#2253).\nTypo fixes (#2261).\nContainers improvements:\nFix Base.map for DenseAxisArray (#2235).\nThrow BoundsError if number of indices is incorrect for DenseAxisArray and SparseAxisArray (#2240).\nExtensibility improvements:\nImplement a set_objective method fallback that redirects to set_objective_sense and set_objective_function (#2247).\nAdd parse_constraint method with arbitrary number of arguments (#2051).\nAdd parse_constraint_expr and parse_constraint_head (#2228).","category":"page"},{"location":"release_notes/#[Version-0.21.2](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.21.2)-(April-2,-2020)","page":"Release notes","title":"Version 0.21.2 (April 2, 2020)","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Added relative_gap() to access MOI.RelativeGap() attribute (#2199).\nDocumentation fixes:\nAdded link to source for docstrings in the documentation (#2207).\nAdded docstring for @variables macro (#2216).\nTypo fixes (#2177, #2184, #2182).\nImplementation of methods for Base functions:\nImplemented Base.empty! for JuMP.Model (#2198).\nImplemented Base.conj for JuMP scalar types (#2209).","category":"page"},{"location":"release_notes/#Fixed-51","page":"Release notes","title":"Fixed","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Fixed sum of expression with scalar product in macro (#2178).\nFixed writing of nonlinear models to MathOptFormat (#2181).\nFixed construction of empty SparseAxisArray (#2179).\nFixed constraint with zero function (#2188).","category":"page"},{"location":"release_notes/#[Version-0.21.1](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.21.1)-(Feb-18,-2020)","page":"Release notes","title":"Version 0.21.1 (Feb 18, 2020)","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Improved the clarity of the with_optimizer deprecation warning.","category":"page"},{"location":"release_notes/#[Version-0.21.0](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.21.0)-(Feb-16,-2020)","page":"Release notes","title":"Version 0.21.0 (Feb 16, 2020)","text":"","category":"section"},{"location":"release_notes/#Breaking-6","page":"Release notes","title":"Breaking","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Deprecated with_optimizer (#2090, #2084, #2141). You can replace with_optimizer by either nothing, optimizer_with_attributes or a closure:\nreplace with_optimizer(Ipopt.Optimizer) by Ipopt.Optimizer.\nreplace with_optimizer(Ipopt.Optimizer, max_cpu_time=60.0) by optimizer_with_attributes(Ipopt.Optimizer, \"max_cpu_time\" => 60.0).\nreplace with_optimizer(Gurobi.Optimizer, env) by () -> Gurobi.Optimizer(env).\nreplace with_optimizer(Gurobi.Optimizer, env, Presolve=0) by optimizer_with_attributes(() -> Gurobi.Optimizer(env), \"Presolve\" => 0).\nalternatively to optimizer_with_attributes, you can also set the attributes separately with set_optimizer_attribute.\nRenamed set_parameter and set_parameters to set_optimizer_attribute and set_optimizer_attributes (#2150).\nBroadcast should now be explicit inside macros. @SDconstraint(model, x >= 1) and @constraint(model, x + 1 in SecondOrderCone()) now throw an error instead of broadcasting 1 along the dimension of x (#2107).\n@SDconstraint(model, x >= 0) is now equivalent to @constraint(model, x in PSDCone()) instead of @constraint(model, (x .- 0) in PSDCone()) (#2107).\nThe macros now create the containers with map instead of for loops, as a consequence, containers created by @expression can now have any element type and containers of constraint references now have concrete element types when possible. This fixes a long-standing issue where @expression could only be used to generate a collection of linear expressions. Now it works for quadratic expressions as well (#2070).\nCalling deepcopy(::AbstractModel) now throws an error.\nThe constraint name is now printed in the model string (#2108).","category":"page"},{"location":"release_notes/#Added-36","page":"Release notes","title":"Added","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Added support for solver-independent and solver-specific callbacks (#2101).\nAdded write_to_file and read_from_file, supported formats are CBF, LP, MathOptFormat, MPS and SDPA (#2114).\nAdded support for complementarity constraints (#2132).\nAdded support for indicator constraints (#2092).\nAdded support for querying multiple solutions with the result keyword (#2100).\nAdded support for constraining variables on creation (#2128).\nAdded method delete that deletes a vector of variables at once if it is supported by the underlying solver (#2135).\nThe arithmetic between JuMP expression has be refactored into the MutableArithmetics package (#2107).\nImproved error on complex values in NLP (#1978).\nAdded an example of column generation (#2010).","category":"page"},{"location":"release_notes/#Fixed-52","page":"Release notes","title":"Fixed","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Incorrect coefficients generated when using Symmetric variables (#2102)","category":"page"},{"location":"release_notes/#[Version-0.20.1](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.20.1)-(Oct-18,-2019)","page":"Release notes","title":"Version 0.20.1 (Oct 18, 2019)","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Add sections on @variables and @constraints in the documentation (#2062).\nFixed product of sparse matrices for Julia v1.3 (#2063).\nAdded set_objective_coefficient to modify the coefficient of a linear term of the objective function (#2008).\nAdded set_time_limit_sec, unset_time_limit_sec and time_limit_sec to set and query the time limit for the solver in seconds (#2053).","category":"page"},{"location":"release_notes/#[Version-0.20.0](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.20.0)-(Aug-24,-2019)","page":"Release notes","title":"Version 0.20.0 (Aug 24, 2019)","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Documentation updates.\nNumerous bug fixes.\nBetter error messages (#1977, #1978, #1997, #2017).\nPerformance improvements (#1947, #2032).\nAdded LP sensitivity summary functions lp_objective_perturbation_range and lp_rhs_perturbation_range (#1917).\nAdded functions dual_objective_value, raw_status and set_parameter.\nAdded function set_objective_coefficient to modify the coefficient of a linear term of the objective (#2008).\nAdded functions set_normalized_rhs, normalized_rhs, and add_to_function_constant to modify and get the constant part of a constraint (#1935, #1960).\nAdded functions set_normalized_coefficient and normalized_coefficient to modify and get the coefficient of a linear term of a constraint (#1935, #1960).\nNumerous other improvements in MOI 0.9, see the NEWS.md file of MOI for more details.","category":"page"},{"location":"release_notes/#[Version-0.19.2](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.19.2)-(June-8,-2019)","page":"Release notes","title":"Version 0.19.2 (June 8, 2019)","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Fix a bug in derivatives that could arise in models with nested nonlinear subexpressions.","category":"page"},{"location":"release_notes/#[Version-0.19.1](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.19.1)-(May-12,-2019)","page":"Release notes","title":"Version 0.19.1 (May 12, 2019)","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Usability and performance improvements.\nBug fixes.","category":"page"},{"location":"release_notes/#[Version-0.19.0](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.19.0)-(February-15,-2019)","page":"Release notes","title":"Version 0.19.0 (February 15, 2019)","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"JuMP 0.19 contains significant breaking changes.","category":"page"},{"location":"release_notes/#Breaking-7","page":"Release notes","title":"Breaking","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"JuMP's abstraction layer for communicating with solvers changed from MathProgBase (MPB) to MathOptInterface (MOI). MOI addresses many longstanding design issues. (See @mlubin's slides from JuMP-dev 2018.) JuMP 0.19 is compatible only with solvers that have been updated for MOI. See the installation guide for a list of solvers that have and have not yet been updated.\nMost solvers have been renamed to PackageName.Optimizer. For example, GurobiSolver() is now Gurobi.Optimizer.\nSolvers are no longer added to a model via Model(solver = XXX(kwargs...)). Instead use Model(with_optimizer(XXX, kwargs...)). For example, Model(with_optimizer(Gurobi.Optimizer, OutputFlag=0)).\nJuMP containers (for example, the objects returned by @variable) have been redesigned. Containers.SparseAxisArray replaces JuMPDict, JuMPArray was rewritten (inspired by AxisArrays) and renamed Containers.DenseAxisArray, and you can now request a container type with the container= keyword to the macros. See the corresponding documentation for more details.\nThe statuses returned by solvers have changed. See the possible status values here. The MOI statuses are much richer than the MPB statuses and can be used to distinguish between previously indistinguishable cases (for example, did the solver have a feasible solution when it stopped because of the time limit?).\nStarting values are separate from result values. Use value to query the value of a variable in a solution. Use start_value and set_start_value to get and set an initial starting point provided to the solver. The solutions from previous solves are no longer automatically set as the starting points for the next solve.\nThe data structures for affine and quadratic expressions AffExpr and QuadExpr have changed. Internally, terms are stored in dictionaries instead of lists. Duplicate coefficients can no longer exist. Accessors and iteration methods have changed.\nJuMPNLPEvaluator no longer includes the linear and quadratic parts of the model in the evaluation calls. These are now handled separately to allow NLP solvers that support various types of constraints.\nJuMP solver-independent callbacks have been replaced by solver-specific callbacks. See your favorite solver for more details. (See the note below: No solver-specific callbacks are implemented yet.)\nThe norm() syntax is no longer recognized inside macros. Use the SecondOrderCone() set instead.\nJuMP no longer performs automatic transformation between special quadratic forms and second-order cone constraints. Support for these constraint classes depends on the solver.\nThe symbols :Min and :Max are no longer used as optimization senses. Instead, JuMP uses the OptimizationSense enum from MathOptInterface. @objective(model, Max, ...), @objective(model, Min, ...), @NLobjective(model, Max, ...), and @objective(model, Min, ...) remain valid, but @objective(m, :Max, ...) is no longer accepted.\nThe sign conventions for duals has changed in some cases for consistency with conic duality (see the documentation). The shadow_price helper method returns duals with signs that match conventional LP interpretations of dual values as sensitivities of the objective value to relaxations of constraints.\n@constraintref is no longer defined. Instead, create the appropriate container to hold constraint references manually. For example,\nconstraints = Dict() # Optionally, specify types for improved performance.\nfor i in 1:N\n constraints[i] = @constraint(model, ...)\nend\nThe lowerbound, upperbound, and basename keyword arguments to the @variable macro have been renamed to lower_bound, upper_bound, and base_name, for consistency with JuMP's new style recommendations.\nWe rely on broadcasting syntax to apply accessors to collections of variables, for example, value.(x) instead of getvalue(x) for collections. (Use value(x) when x is a scalar object.)","category":"page"},{"location":"release_notes/#Added-37","page":"Release notes","title":"Added","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Splatting (like f(x...)) is recognized in restricted settings in nonlinear expressions.\nSupport for deleting constraints and variables.\nThe documentation has been completely rewritten using docstrings and Documenter.\nSupport for modeling mixed conic and quadratic models (for example, conic models with quadratic objectives and bi-linear matrix inequalities).\nSignificantly improved support for modeling new types of constraints and for extending JuMP's macros.\nSupport for providing dual warm starts.\nImproved support for accessing solver-specific attributes (for example, the irreducible inconsistent subsystem).\nExplicit control of whether symmetry-enforcing constraints are added to PSD constraints.\nSupport for modeling exponential cones.\nSignificant improvements in internal code quality and testing.\nStyle and naming guidelines.\nDirect mode and manual mode provide explicit control over when copies of a model are stored or regenerated. See the corresponding documentation.","category":"page"},{"location":"release_notes/#Regressions","page":"Release notes","title":"Regressions","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"There are known regressions from JuMP 0.18 that will be addressed in a future release (0.19.x or later):","category":"page"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Performance regressions in model generation (issue). Please file an issue anyway if you notice a significant performance regression. We have plans to address a number of performance issues, but we might not be aware of all of them.\nFast incremental NLP solves are not yet reimplemented (issue).\nWe do not yet have an implementation of solver-specific callbacks.\nThe column generation syntax in @variable has been removed (that is, the objective, coefficients, and inconstraints keyword arguments). Support for column generation will be re-introduced in a future release.\nThe ability to solve the continuous relaxation (that is, via solve(model; relaxation = true)) is not yet reimplemented (issue).","category":"page"},{"location":"release_notes/#[Version-0.18.5](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.18.5)-(December-1,-2018)","page":"Release notes","title":"Version 0.18.5 (December 1, 2018)","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Support views in some derivative evaluation functions.\nImproved compatibility with PackageCompiler.","category":"page"},{"location":"release_notes/#[Version-0.18.4](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.18.4)-(October-8,-2018)","page":"Release notes","title":"Version 0.18.4 (October 8, 2018)","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Fix a bug in model printing on Julia 0.7 and 1.0.","category":"page"},{"location":"release_notes/#[Version-0.18.3](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.18.3)-(October-1,-2018)","page":"Release notes","title":"Version 0.18.3 (October 1, 2018)","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Add support for Julia v1.0 (Thanks @ExpandingMan)\nFix matrix expressions with quadratic functions (#1508)","category":"page"},{"location":"release_notes/#[Version-0.18.2](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.18.2)-(June-10,-2018)","page":"Release notes","title":"Version 0.18.2 (June 10, 2018)","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Fix a bug in second-order derivatives when expressions are present (#1319)\nFix a bug in @constraintref (#1330)","category":"page"},{"location":"release_notes/#[Version-0.18.1](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.18.1)-(April-9,-2018)","page":"Release notes","title":"Version 0.18.1 (April 9, 2018)","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Fix for nested tuple destructuring (#1193)\nPreserve internal model when relaxation=true (#1209)\nMinor bug fixes and updates for example","category":"page"},{"location":"release_notes/#[Version-0.18.0](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.18.0)-(July-27,-2017)","page":"Release notes","title":"Version 0.18.0 (July 27, 2017)","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Drop support for Julia 0.5.\nUpdate for ForwardDiff 0.5.\nMinor bug fixes.","category":"page"},{"location":"release_notes/#[Version-0.17.1](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.17.1)-(June-9,-2017)","page":"Release notes","title":"Version 0.17.1 (June 9, 2017)","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Use of constructconstraint! in @SDconstraint.\nMinor bug fixes.","category":"page"},{"location":"release_notes/#[Version-0.17.0](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.17.0)-(May-27,-2017)","page":"Release notes","title":"Version 0.17.0 (May 27, 2017)","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Breaking change: Mixing quadratic and conic constraints is no longer supported.\nBreaking change: The getvariable and getconstraint functions are replaced by indexing on the corresponding symbol. For instance, to access the variable with name x, one should now write m[:x] instead of getvariable(m, :x). As a consequence, creating a variable and constraint with the same name now triggers a warning, and accessing one of them afterwards throws an error. This change is breaking only in the latter case.\nAddition of the getobjectivebound function that mirrors the functionality of the MathProgBase getobjbound function except that it takes into account transformations performed by JuMP.\nMinor bug fixes.","category":"page"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"The following changes are primarily of interest to developers of JuMP extensions:","category":"page"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"The new syntax @constraint(model, expr in Cone) creates the constraint ensuring that expr is inside Cone. The Cone argument is passed to constructconstraint! which enables the call to the dispatched to an extension.\nThe @variable macro now calls constructvariable! instead of directly calling the Variable constructor. Extra arguments and keyword arguments passed to @variable are passed to constructvariable! which enables the call to be dispatched to an extension.\nRefactor the internal function conicdata (used build the MathProgBase conic model) into smaller sub-functions to make these parts reusable by extensions.","category":"page"},{"location":"release_notes/#[Version-0.16.2](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.16.2)-(March-28,-2017)","page":"Release notes","title":"Version 0.16.2 (March 28, 2017)","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Minor bug fixes and printing tweaks\nAddress deprecation warnings for Julia 0.6","category":"page"},{"location":"release_notes/#[Version-0.16.1](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.16.1)-(March-7,-2017)","page":"Release notes","title":"Version 0.16.1 (March 7, 2017)","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Better support for AbstractArray in JuMP (Thanks @tkoolen)\nMinor bug fixes","category":"page"},{"location":"release_notes/#[Version-0.16.0](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.16.0)-(February-23,-2017)","page":"Release notes","title":"Version 0.16.0 (February 23, 2017)","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Breaking change: JuMP no longer has a mechanism for selecting solvers by default (the previous mechanism was flawed and incompatible with Julia 0.6). Not specifying a solver before calling solve() will result in an error.\nBreaking change: User-defined functions are no longer global. The first argument to JuMP.register is now a JuMP Model object within whose scope the function will be registered. Calling JuMP.register without a Model now produces an error.\nBreaking change: Use the new JuMP.fix method to fix a variable to a value or to update the value to which a variable is fixed. Calling setvalue on a fixed variable now results in an error in order to avoid silent behavior changes. (Thanks @joaquimg)\nNonlinear expressions now print out similarly to linear/quadratic expressions (useful for debugging!)\nNew category keyword to @variable. Used for specifying categories of anonymous variables.\nCompatibility with Julia 0.6-dev.\nMinor fixes and improvements (Thanks @cossio, @ccoffrin, @blegat)","category":"page"},{"location":"release_notes/#[Version-0.15.1](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.15.1)-(January-31,-2017)","page":"Release notes","title":"Version 0.15.1 (January 31, 2017)","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Bugfix for @LinearConstraints and friends","category":"page"},{"location":"release_notes/#[Version-0.15.0](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.15.0)-(December-22,-2016)","page":"Release notes","title":"Version 0.15.0 (December 22, 2016)","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Julia 0.5.0 is the minimum required version for this release.\nDocument support for BARON solver\nEnable info callbacks in more states than before, for example, for recording solutions. New when argument to addinfocallback (#814, thanks @yeesian)\nImproved support for anonymous variables. This includes new warnings for potentially confusing use of the traditional non-anonymous syntax:\nWhen multiple variables in a model are given the same name\nWhen non-symbols are used as names, for example, @variable(m, x[1][1:N])\nImprovements in iterating over JuMP containers (#836, thanks @IssamT)\nSupport for writing variable names in .lp file output (Thanks @leethargo)\nSupport for querying duals to SDP problems (Thanks @blegat)\nThe comprehension syntax with curly braces sum{}, prod{}, and norm2{} has been deprecated in favor of Julia's native comprehension syntax sum(), prod() and norm() as previously announced. (For early adopters of the new syntax, norm2() was renamed to norm() without deprecation.)\nUnit tests rewritten to use Base.Test instead of FactCheck\nImproved support for operations with matrices of JuMP types (Thanks @ExpandingMan)\nThe syntax to halt a solver from inside a callback has changed from throw(CallbackAbort()) to return JuMP.StopTheSolver\nMinor bug fixes","category":"page"},{"location":"release_notes/#[Version-0.14.2](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.14.2)-(December-12,-2016)","page":"Release notes","title":"Version 0.14.2 (December 12, 2016)","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Allow singleton anonymous variables (includes bugfix)","category":"page"},{"location":"release_notes/#[Version-0.14.1](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.14.1)-(September-12,-2016)","page":"Release notes","title":"Version 0.14.1 (September 12, 2016)","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"More consistent handling of states in informational callbacks, includes a new when parameter to addinfocallback for specifying in which state an informational callback should be called.","category":"page"},{"location":"release_notes/#[Version-0.14.0](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.14.0)-(August-7,-2016)","page":"Release notes","title":"Version 0.14.0 (August 7, 2016)","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Compatibility with Julia 0.5 and ForwardDiff 0.2\nSupport for \"anonymous\" variables, constraints, expressions, and parameters, for example, x = @variable(m, [1:N]) instead of @variable(m, x[1:N])\nSupport for retrieving constraints from a model by name via getconstraint\n@NLconstraint now returns constraint references (as expected).\nSupport for vectorized expressions within lazy constraints\nOn Julia 0.5, parse new comprehension syntax sum(x[i] for i in 1:N if isodd(i)) instead of sum{ x[i], i in 1:N; isodd(i) }. The old syntax with curly braces will be deprecated in JuMP 0.15.\nNow possible to provide nonlinear expressions as \"raw\" Julia Expr objects instead of using JuMP's nonlinear macros. This input format is useful for programmatically generated expressions.\ns/Mathematical Programming/Mathematical Optimization/\nSupport for local cuts (Thanks to @madanim, Mehdi Madani)\nDocument Xpress interface developed by @joaquimg, Joaquim Dias Garcia\nMinor bug and deprecation fixes (Thanks @odow, @jrevels)","category":"page"},{"location":"release_notes/#[Version-0.13.2](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.13.2)-(May-16,-2016)","page":"Release notes","title":"Version 0.13.2 (May 16, 2016)","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Compatibility update for MathProgBase","category":"page"},{"location":"release_notes/#[Version-0.13.1](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.13.1)-(May-3,-2016)","page":"Release notes","title":"Version 0.13.1 (May 3, 2016)","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Fix broken deprecation for registerNLfunction.","category":"page"},{"location":"release_notes/#[Version-0.13.0](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.13.0)-(April-29,-2016)","page":"Release notes","title":"Version 0.13.0 (April 29, 2016)","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Most exported methods and macros have been renamed to avoid camelCase. See the list of changes here. There is a 1-1 mapping from the old names to the new, and it is safe to simply replace the names to update existing models.\nSpecify variable lower/upper bounds in @variable using the lowerbound and upperbound keyword arguments.\nChange name printed for variable using the basename keyword argument to @variable.\nNew @variables macro allows multi-line declaration of groups of variables.\nA number of solver methods previously available only through MathProgBase are now exposed directly in JuMP. The fix was recorded live.\nCompatibility fixes with Julia 0.5.\nThe \"end\" indexing syntax is no longer supported within JuMPArrays which do not use 1-based indexing until upstream issues are resolved, see here.","category":"page"},{"location":"release_notes/#[Version-0.12.2](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.12.2)-(March-9,-2016)","page":"Release notes","title":"Version 0.12.2 (March 9, 2016)","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Small fixes for nonlinear optimization","category":"page"},{"location":"release_notes/#[Version-0.12.1](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.12.1)-(March-1,-2016)","page":"Release notes","title":"Version 0.12.1 (March 1, 2016)","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Fix a regression in slicing for JuMPArrays (when not using 1-based indexing)","category":"page"},{"location":"release_notes/#[Version-0.12.0](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.12.0)-(February-27,-2016)","page":"Release notes","title":"Version 0.12.0 (February 27, 2016)","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"The automatic differentiation functionality has been completely rewritten with a number of user-facing changes:\n@defExpr and @defNLExpr now take the model as the first argument. The previous one-argument version of @defExpr is deprecated; all expressions should be named. For example, replace @defExpr(2x+y) with @defExpr(jump_model, my_expr, 2x+y).\nJuMP no longer uses Julia's variable binding rules for efficiently re-solving a sequence of nonlinear models. Instead, we have introduced nonlinear parameters. This is a breaking change, so we have added a warning message when we detect models that may depend on the old behavior.\nSupport for user-defined functions integrated within nonlinear JuMP expressions.\nReplaced iteration over AffExpr with Number-like scalar iteration; previous iteration behavior is now available via linearterms(::AffExpr).\nStopping the solver via throw(CallbackAbort()) from a callback no longer triggers an exception. Instead, solve() returns UserLimit status.\ngetDual() now works for conic problems (Thanks @emreyamangil.)","category":"page"},{"location":"release_notes/#[Version-0.11.3](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.11.3)-(February-4,-2016)","page":"Release notes","title":"Version 0.11.3 (February 4, 2016)","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Bug-fix for problems with quadratic objectives and semidefinite constraints","category":"page"},{"location":"release_notes/#[Version-0.11.2](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.11.2)-(January-14,-2016)","page":"Release notes","title":"Version 0.11.2 (January 14, 2016)","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Compatibility update for Mosek","category":"page"},{"location":"release_notes/#[Version-0.11.1](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.11.1)-(December-1,-2015)","page":"Release notes","title":"Version 0.11.1 (December 1, 2015)","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Remove usage of @compat in tests.\nFix updating quadratic objectives for nonlinear models.","category":"page"},{"location":"release_notes/#[Version-0.11.0](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.11.0)-(November-30,-2015)","page":"Release notes","title":"Version 0.11.0 (November 30, 2015)","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Julia 0.4.0 is the minimum required version for this release.\nFix for scoping semantics of index variables in sum{}. Index variables no longer leak into the surrounding scope.\nAddition of the solve(m::Model, relaxation=true) keyword argument to solve the standard continuous relaxation of model m\nThe getConstraintBounds() method allows access to the lower and upper bounds of all constraints in a (nonlinear) model.\nUpdate for breaking changes in MathProgBase","category":"page"},{"location":"release_notes/#[Version-0.10.3](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.10.3)-(November-20,-2015)","page":"Release notes","title":"Version 0.10.3 (November 20, 2015)","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Fix a rare error when parsing quadratic expressions\nFix Variable() constructor with default arguments\nDetect unrecognized keywords in solve()","category":"page"},{"location":"release_notes/#[Version-0.10.2](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.10.2)-(September-28,-2015)","page":"Release notes","title":"Version 0.10.2 (September 28, 2015)","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Fix for deprecation warnings","category":"page"},{"location":"release_notes/#[Version-0.10.1](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.10.1)-(September-3,-2015)","page":"Release notes","title":"Version 0.10.1 (September 3, 2015)","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Fixes for ambiguity warnings.\nFix for breaking change in precompilation syntax in Julia 0.4-pre","category":"page"},{"location":"release_notes/#[Version-0.10.0](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.10.0)-(August-31,-2015)","page":"Release notes","title":"Version 0.10.0 (August 31, 2015)","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Support (on Julia 0.4 and later) for conditions in indexing @defVar and @addConstraint constructs, for example, @defVar(m, x[i=1:5,j=1:5; i+j >= 3])\nSupport for vectorized operations on Variables and expressions. See the documentation for details.\nNew getVar() method to access variables in a model by name\nSupport for semidefinite programming.\nDual solutions are now available for general nonlinear problems. You may call getDual on a reference object for a nonlinear constraint, and getDual on a variable object for Lagrange multipliers from active bounds.\nIntroduce warnings for two common performance traps: too many calls to getValue() on a collection of variables and use of the + operator in a loop to sum expressions.\nSecond-order cone constraints can be written directly with the norm() and norm2{} syntax.\nImplement MathProgBase interface for querying Hessian-vector products.\nIteration over JuMPContainers is deprecated; instead, use the keys and values functions, and zip(keys(d),values(d)) for the old behavior.\n@defVar returns Array{Variable,N} when each of N index sets are of the form 1:nᵢ.\nModule precompilation: on Julia 0.4 and later, using JuMP is now much faster.","category":"page"},{"location":"release_notes/#[Version-0.9.3](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.9.3)-(August-11,-2015)","page":"Release notes","title":"Version 0.9.3 (August 11, 2015)","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Fixes for FactCheck testing on julia v0.4.","category":"page"},{"location":"release_notes/#[Version-0.9.2](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.9.2)-(June-27,-2015)","page":"Release notes","title":"Version 0.9.2 (June 27, 2015)","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Fix bug in @addConstraints.","category":"page"},{"location":"release_notes/#[Version-0.9.1](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.9.1)-(April-25,-2015)","page":"Release notes","title":"Version 0.9.1 (April 25, 2015)","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Fix for Julia 0.4-dev.\nSmall infrastructure improvements for extensions.","category":"page"},{"location":"release_notes/#[Version-0.9.0](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.9.0)-(April-18,-2015)","page":"Release notes","title":"Version 0.9.0 (April 18, 2015)","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Comparison operators for constructing constraints (for example, 2x >= 1) have been deprecated. Instead, construct the constraints explicitly in the @addConstraint macro to add them to the model, or in the @LinearConstraint macro to create a stand-alone linear constraint instance.\ngetValue() method implemented to compute the value of a nonlinear subexpression\nJuMP is now released under the Mozilla Public License version 2.0 (was previously LGPL). MPL is a copyleft license which is less restrictive than LGPL, especially for embedding JuMP within other applications.\nA number of performance improvements in ReverseDiffSparse for computing derivatives.\nMathProgBase.getsolvetime(m) now returns the solution time reported by the solver, if available. (Thanks @odow, Oscar Dowson)\nFormatting fix for LP format output. (Thanks @sbebo, Leonardo Taccari).","category":"page"},{"location":"release_notes/#[Version-0.8.0](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.8.0)-(February-17,-2015)","page":"Release notes","title":"Version 0.8.0 (February 17, 2015)","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Nonlinear subexpressions now supported with the @defNLExpr macro.\nSCS supported for solving second-order conic problems.\nsetXXXCallback family deprecated in favor of addXXXCallback.\nMultiple callbacks of the same type can be registered.\nAdded support for informational callbacks via addInfoCallback.\nA CallbackAbort exception can be thrown from callback to safely exit optimization.","category":"page"},{"location":"release_notes/#[Version-0.7.4](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.7.4)-(February-4,-2015)","page":"Release notes","title":"Version 0.7.4 (February 4, 2015)","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Reduced costs and linear constraint duals are now accessible when quadratic constraints are present.\nTwo-sided nonlinear constraints are supported.\nMethods for accessing the number of variables and constraints in a model are renamed.\nNew default procedure for setting initial values in nonlinear optimization: project zero onto the variable bounds.\nSmall bug fixes.","category":"page"},{"location":"release_notes/#[Version-0.7.3](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.7.3)-(January-14,-2015)","page":"Release notes","title":"Version 0.7.3 (January 14, 2015)","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Fix a method ambiguity conflict with Compose.jl (cosmetic fix)","category":"page"},{"location":"release_notes/#[Version-0.7.2](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.7.2)-(January-9,-2015)","page":"Release notes","title":"Version 0.7.2 (January 9, 2015)","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Fix a bug in sum(::JuMPDict)\nAdded the setCategory function to change a variables category (for example, continuous or binary)","category":"page"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"after construction, and getCategory to retrieve the variable category.","category":"page"},{"location":"release_notes/#[Version-0.7.1](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.7.1)-(January-2,-2015)","page":"Release notes","title":"Version 0.7.1 (January 2, 2015)","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Fix a bug in parsing linear expressions in macros. Affects only Julia 0.4 and later.","category":"page"},{"location":"release_notes/#[Version-0.7.0](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.7.0)-(December-29,-2014)","page":"Release notes","title":"Version 0.7.0 (December 29, 2014)","text":"","category":"section"},{"location":"release_notes/#Linear/quadratic/conic-programming","page":"Release notes","title":"Linear/quadratic/conic programming","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Breaking change: The syntax for column-wise model generation has been changed to use keyword arguments in @defVar.\nOn Julia 0.4 and later, variables and coefficients may be multiplied in any order within macros. That is, variable*coefficient is now valid syntax.\nECOS supported for solving second-order conic problems.","category":"page"},{"location":"release_notes/#_nonlinear_programming_release_notes","page":"Release notes","title":"Nonlinear programming","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Support for skipping model generation when solving a sequence of nonlinear models with changing data.\nFix a memory leak when solving a sequence of nonlinear models.\nThe @addNLConstraint macro now supports the three-argument version to define sets of nonlinear constraints.\nKNITRO supported as a nonlinear solver.\nSpeed improvements for model generation.\nThe @addNLConstraints macro supports adding multiple (groups of) constraints at once. Syntax is similar to @addConstraints.\nDiscrete variables allowed in nonlinear problems for solvers which support them (currently only KNITRO).","category":"page"},{"location":"release_notes/#General","page":"Release notes","title":"General","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Starting values for variables may now be specified with @defVar(m, x, start=value).\nThe setSolver function allows users to change the solver subsequent to model creation.\nSupport for \"fixed\" variables via the @defVar(m, x == 1) syntax.\nUnit tests rewritten to use FactCheck.jl, improved testing across solvers.","category":"page"},{"location":"release_notes/#[Version-0.6.3](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.6.3)-(October-19,-2014)","page":"Release notes","title":"Version 0.6.3 (October 19, 2014)","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Fix a bug in multiplying two AffExpr objects.","category":"page"},{"location":"release_notes/#[Version-0.6.2](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.6.2)-(October-11,-2014)","page":"Release notes","title":"Version 0.6.2 (October 11, 2014)","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Further improvements and bug fixes for printing.\nFixed a bug in @defExpr.\nSupport for accessing expression graphs through the MathProgBase NLP interface.","category":"page"},{"location":"release_notes/#[Version-0.6.1](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.6.1)-(September-19,-2014)","page":"Release notes","title":"Version 0.6.1 (September 19, 2014)","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Improvements and bug fixes for printing.","category":"page"},{"location":"release_notes/#[Version-0.6.0](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.6.0)-(September-9,-2014)","page":"Release notes","title":"Version 0.6.0 (September 9, 2014)","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Julia 0.3.0 is the minimum required version for this release.\nbuildInternalModel(m::Model) added to build solver-level model in memory without optimizing.\nDeprecate load_model_only keyword argument to solve.\nAdd groups of constraints with @addConstraints macro.\nUnicode operators now supported, including ∑ for sum, ∏ for prod, and ≤/≥\nQuadratic constraints supported in @addConstraint macro.\nQuadratic objectives supported in @setObjective macro.\nMathProgBase solver-independent interface replaces Ipopt-specific interface for nonlinear problems\nBreaking change: IpoptOptions no longer supported to specify solver options, use m = Model(solver=IpoptSolver(options...)) instead.\nNew solver interfaces: ECOS, NLopt, and nonlinear support for MOSEK\nNew option to control whether the lazy constraint callback is executed at each node in the B&B tree or just when feasible solutions are found\nAdd support for semicontinuous and semi-integer variables for those solvers that support them.\nAdd support for index dependencies (for example, triangular indexing) in @defVar, @addConstraint, and @defExpr (for example, @defVar(m, x[i=1:10,j=i:10])).\nThis required some changes to the internal structure of JuMP containers, which may break code that explicitly stored JuMPDict objects.","category":"page"},{"location":"release_notes/#[Version-0.5.8](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.5.8)-(September-24,-2014)","page":"Release notes","title":"Version 0.5.8 (September 24, 2014)","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Fix a bug with specifying solvers (affects Julia 0.2 only)","category":"page"},{"location":"release_notes/#[Version-0.5.7](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.5.7)-(September-5,-2014)","page":"Release notes","title":"Version 0.5.7 (September 5, 2014)","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Fix a bug in printing models","category":"page"},{"location":"release_notes/#[Version-0.5.6](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.5.6)-(September-2,-2014)","page":"Release notes","title":"Version 0.5.6 (September 2, 2014)","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Add support for semicontinuous and semi-integer variables for those solvers that support them.\nBreaking change: Syntax for Variable() constructor has changed (use of this interface remains discouraged)\nUpdate for breaking changes in MathProgBase","category":"page"},{"location":"release_notes/#[Version-0.5.5](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.5.5)-(July-6,-2014)","page":"Release notes","title":"Version 0.5.5 (July 6, 2014)","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Fix bug with problem modification: adding variables that did not appear in existing constraints or objective.","category":"page"},{"location":"release_notes/#[Version-0.5.4](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.5.4)-(June-19,-2014)","page":"Release notes","title":"Version 0.5.4 (June 19, 2014)","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Update for breaking change in MathProgBase which reduces loading times for using JuMP\nFix error when MIPs not solved to optimality","category":"page"},{"location":"release_notes/#[Version-0.5.3](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.5.3)-(May-21,-2014)","page":"Release notes","title":"Version 0.5.3 (May 21, 2014)","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Update for breaking change in ReverseDiffSparse","category":"page"},{"location":"release_notes/#[Version-0.5.2](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.5.2)-(May-9,-2014)","page":"Release notes","title":"Version 0.5.2 (May 9, 2014)","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Fix compatibility with Julia 0.3 prerelease","category":"page"},{"location":"release_notes/#[Version-0.5.1](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.5.1)-(May-5,-2014)","page":"Release notes","title":"Version 0.5.1 (May 5, 2014)","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Fix a bug in coefficient handling inside lazy constraints and user cuts","category":"page"},{"location":"release_notes/#[Version-0.5.0](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.5.0)-(May-2,-2014)","page":"Release notes","title":"Version 0.5.0 (May 2, 2014)","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Support for nonlinear optimization with exact, sparse second-order derivatives automatically computed. Ipopt is currently the only solver supported.\ngetValue for AffExpr and QuadExpr\nBreaking change: getSolverModel replaced by getInternalModel, which returns the internal MathProgBase-level model\nGroups of constraints can be specified with @addConstraint (see documentation for details). This is not a breaking change.\ndot(::JuMPDict{Variable},::JuMPDict{Variable}) now returns the corresponding quadratic expression.","category":"page"},{"location":"release_notes/#[Version-0.4.1](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.4.1)-(March-24,-2014)","page":"Release notes","title":"Version 0.4.1 (March 24, 2014)","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Fix bug where change in objective sense was ignored when re-solving a model.\nFix issue with handling zero coefficients in AffExpr.","category":"page"},{"location":"release_notes/#[Version-0.4.0](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.4.0)-(March-10,-2014)","page":"Release notes","title":"Version 0.4.0 (March 10, 2014)","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Support for SOS1 and SOS2 constraints.\nSolver-independent callback for user heuristics.\ndot and sum implemented for JuMPDict objects. Now you can say @addConstraint(m, dot(a,x) <= b).\nDevelopers: support for extensions to JuMP. See definition of Model in src/JuMP.jl for more details.\nOption to construct the low-level model before optimizing.","category":"page"},{"location":"release_notes/#[Version-0.3.2](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.3.2)-(February-17,-2014)","page":"Release notes","title":"Version 0.3.2 (February 17, 2014)","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Improved model printing\nPreliminary support for IJulia output","category":"page"},{"location":"release_notes/#[Version-0.3.1](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.3.1)-(January-30,-2014)","page":"Release notes","title":"Version 0.3.1 (January 30, 2014)","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Documentation updates\nSupport for MOSEK\nCPLEXLink renamed to CPLEX","category":"page"},{"location":"release_notes/#[Version-0.3.0](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.3.0)-(January-21,-2014)","page":"Release notes","title":"Version 0.3.0 (January 21, 2014)","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Unbounded/infeasibility rays: getValue() will return the corresponding components of an unbounded ray when a model is unbounded, if supported by the selected solver. getDual() will return an infeasibility ray (Farkas proof) if a model is infeasible and the selected solver supports this feature.\nSolver-independent callbacks for user generated cuts.\nUse new interface for solver-independent QCQP.\nsetlazycallback renamed to setLazyCallback for consistency.","category":"page"},{"location":"release_notes/#[Version-0.2.0](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.2.0)-(December-15,-2013)","page":"Release notes","title":"Version 0.2.0 (December 15, 2013)","text":"","category":"section"},{"location":"release_notes/#Breaking-8","page":"Release notes","title":"Breaking","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Objective sense is specified in setObjective instead of in the Model constructor.\nlpsolver and mipsolver merged into single solver option.","category":"page"},{"location":"release_notes/#Added-38","page":"Release notes","title":"Added","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Problem modification with efficient LP restarts and MIP warm-starts.\nRelatedly, column-wise modeling now supported.\nSolver-independent callbacks supported. Currently we support only a \"lazy constraint\" callback, which works with Gurobi, CPLEX, and GLPK. More callbacks coming soon.","category":"page"},{"location":"release_notes/#[Version-0.1.2](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.1.2)-(November-16,-2013)","page":"Release notes","title":"Version 0.1.2 (November 16, 2013)","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Bug fixes for printing, improved error messages.\nAllow AffExpr to be used in macros; for example, ex = y + z; @addConstraint(m, x + 2*ex <= 3)","category":"page"},{"location":"release_notes/#[Version-0.1.1](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.1.1)-(October-23,-2013)","page":"Release notes","title":"Version 0.1.1 (October 23, 2013)","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Update for solver specification API changes in MathProgBase.","category":"page"},{"location":"release_notes/#[Version-0.1.0](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.1.0)-(October-3,-2013)","page":"Release notes","title":"Version 0.1.0 (October 3, 2013)","text":"","category":"section"},{"location":"release_notes/","page":"Release notes","title":"Release notes","text":"Initial public release.","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"CurrentModule = JuMP\nDocTestSetup = quote\n using JuMP\n import HiGHS\nend\nDocTestFilters = [r\"≤|<=\", r\"≥|>=\", r\" == | = \", r\" ∈ | in \", r\"MathOptInterface|MOI\"]","category":"page"},{"location":"manual/constraints/#jump_constraints","page":"Constraints","title":"Constraints","text":"","category":"section"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"JuMP is based on the MathOptInterface (MOI) API. Because of this, JuMP uses the following standard form to represent problems:","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"beginalign\n min_x in mathbbR^n f_0(x)\n \n textst f_i(x) in mathcalS_i i = 1 ldots m\nendalign","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"Each constraint, f_i(x) in mathcalS_i, is composed of a function and a set. For example, instead of calling a^top x le b a less-than-or-equal-to constraint, we say that it is a scalar-affine-in-less-than constraint, where the function a^top x belongs to the less-than set (-infty b. We use the shorthand function-in-set to refer to constraints composed of different types of functions and sets.","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"This page explains how to write various types of constraints in JuMP. For nonlinear constraints, see Nonlinear Modeling instead.","category":"page"},{"location":"manual/constraints/#Add-a-constraint","page":"Constraints","title":"Add a constraint","text":"","category":"section"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"Add a constraint to a JuMP model using the @constraint macro. The syntax to use depends on the type of constraint you wish to add.","category":"page"},{"location":"manual/constraints/#Add-a-linear-constraint","page":"Constraints","title":"Add a linear constraint","text":"","category":"section"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"Create linear constraints using the @constraint macro:","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"julia> model = Model();\n\njulia> @variable(model, x[1:3]);\n\njulia> @constraint(model, c1, sum(x) <= 1)\nc1 : x[1] + x[2] + x[3] ≤ 1\n\njulia> @constraint(model, c2, x[1] + 2 * x[3] >= 2)\nc2 : x[1] + 2 x[3] ≥ 2\n\njulia> @constraint(model, c3, sum(i * x[i] for i in 1:3) == 3)\nc3 : x[1] + 2 x[2] + 3 x[3] = 3\n\njulia> @constraint(model, c4, 4 <= 2 * x[2] <= 5)\nc4 : 2 x[2] ∈ [4, 5]","category":"page"},{"location":"manual/constraints/#Normalization","page":"Constraints","title":"Normalization","text":"","category":"section"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"JuMP normalizes constraints by moving all of the terms containing variables to the left-hand side and all of the constant terms to the right-hand side. Thus, we get:","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"julia> model = Model();\n\njulia> @variable(model, x);\n\njulia> @constraint(model, c, 2x + 1 <= 4x + 4)\nc : -2 x ≤ 3","category":"page"},{"location":"manual/constraints/#quad_constraints","page":"Constraints","title":"Add a quadratic constraint","text":"","category":"section"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"In addition to affine functions, JuMP also supports constraints with quadratic terms. For example:","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"julia> model = Model();\n\njulia> @variable(model, x[i=1:2])\n2-element Vector{VariableRef}:\n x[1]\n x[2]\n\njulia> @variable(model, t >= 0)\nt\n\njulia> @constraint(model, my_q, x[1]^2 + x[2]^2 <= t^2)\nmy_q : x[1]² + x[2]² - t² ≤ 0","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"tip: Tip\nBecause solvers can take advantage of the knowledge that a constraint is quadratic, prefer adding quadratic constraints using @constraint, rather than @NLconstraint.","category":"page"},{"location":"manual/constraints/#Vectorized-constraints","page":"Constraints","title":"Vectorized constraints","text":"","category":"section"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"You can also add constraints to JuMP using vectorized linear algebra. For example:","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"julia> model = Model();\n\njulia> @variable(model, x[i=1:2])\n2-element Vector{VariableRef}:\n x[1]\n x[2]\n\njulia> A = [1 2; 3 4]\n2×2 Matrix{Int64}:\n 1 2\n 3 4\n\njulia> b = [5, 6]\n2-element Vector{Int64}:\n 5\n 6\n\njulia> @constraint(model, con_vector, A * x == b)\ncon_vector : [x[1] + 2 x[2] - 5, 3 x[1] + 4 x[2] - 6] ∈ Zeros()\n\njulia> @constraint(model, con_scalar, A * x .== b)\n2-element Vector{ConstraintRef{Model, MathOptInterface.ConstraintIndex{MathOptInterface.ScalarAffineFunction{Float64}, MathOptInterface.EqualTo{Float64}}, ScalarShape}}:\n con_scalar : x[1] + 2 x[2] = 5\n con_scalar : 3 x[1] + 4 x[2] = 6","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"The two constraints, == and .== are similar, but subtly different. The first creates a single constraint that is a MOI.VectorAffineFunction in MOI.Zeros constraint. The second creates a vector of MOI.ScalarAffineFunction in MOI.EqualTo constraints.","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"Which formulation to choose depends on the solver, and what you want to do with the constraint object con_vector or con_scalar.","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"If you are using a conic solver, expect the dual of con_vector to be a Vector{Float64}, and do not intend to delete a row in the constraint, choose the == formulation.\nIf you are using a solver that expects a list of scalar constraints, for example HiGHS, or you wish to delete part of the constraint or access a single row of the constraint, for example, dual(con_scalar[2]), then use the broadcast .==.","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"JuMP reformulates both constraints into the other form if needed by the solver, but choosing the right format for a particular solver is more efficient.","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"You can also use <=, .<= , >=, and .>= as comparison operators in the constraint.","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"julia> @constraint(model, A * x <= b)\n[x[1] + 2 x[2] - 5, 3 x[1] + 4 x[2] - 6] ∈ Nonpositives()\n\njulia> @constraint(model, A * x .<= b)\n2-element Vector{ConstraintRef{Model, MathOptInterface.ConstraintIndex{MathOptInterface.ScalarAffineFunction{Float64}, MathOptInterface.LessThan{Float64}}, ScalarShape}}:\n x[1] + 2 x[2] ≤ 5\n 3 x[1] + 4 x[2] ≤ 6\n\njulia> @constraint(model, A * x >= b)\n[x[1] + 2 x[2] - 5, 3 x[1] + 4 x[2] - 6] ∈ Nonnegatives()\n\njulia> @constraint(model, A * x .>= b)\n2-element Vector{ConstraintRef{Model, MathOptInterface.ConstraintIndex{MathOptInterface.ScalarAffineFunction{Float64}, MathOptInterface.GreaterThan{Float64}}, ScalarShape}}:\n x[1] + 2 x[2] ≥ 5\n 3 x[1] + 4 x[2] ≥ 6","category":"page"},{"location":"manual/constraints/#Matrix-inequalities","page":"Constraints","title":"Matrix inequalities","text":"","category":"section"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"Inequalities between matrices are not supported, due to the common ambiguity between elementwise inequalities and a PSDCone constraint.","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"julia> model = Model();\n\njulia> @variable(model, x[1:2, 1:2], Symmetric);\n\njulia> @variable(model, y[1:2, 1:2], Symmetric);\n\njulia> @constraint(model, x >= y)\nERROR: At none:1: `@constraint(model, x >= y)`:\nThe syntax `x >= y` is ambiguous for matrices because we cannot tell if\nyou intend a positive semidefinite constraint or an elementwise\ninequality.\n\nTo create a positive semidefinite constraint, pass `PSDCone()` or\n`HermitianPSDCone()`:\n\n```julia\n@constraint(model, x >= y, PSDCone())\n```\n\nTo create an element-wise inequality, pass `Nonnegatives()`, or use\nbroadcasting:\n\n```julia\n@constraint(model, x >= y, Nonnegatives())\n# or\n@constraint(model, x .>= y)\n```\nStacktrace:\n[...]","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"Instead, use the Set inequality syntax to specify a set like PSDCone or Nonnegatives:","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"julia> @constraint(model, x >= y, PSDCone())\n[x[1,1] - y[1,1] x[1,2] - y[1,2]\n ⋯ x[2,2] - y[2,2]] ∈ PSDCone()\n\njulia> @constraint(model, x >= y, Nonnegatives())\n[x[1,1] - y[1,1] x[1,2] - y[1,2]\n ⋯ x[2,2] - y[2,2]] ∈ Nonnegatives()\n\njulia> @constraint(model, x >= y, Nonpositives())\n[x[1,1] - y[1,1] x[1,2] - y[1,2]\n ⋯ x[2,2] - y[2,2]] ∈ Nonpositives()\n\njulia> @constraint(model, x >= y, Zeros())\n[x[1,1] - y[1,1] x[1,2] - y[1,2]\n ⋯ x[2,2] - y[2,2]] ∈ Zeros()","category":"page"},{"location":"manual/constraints/#Special-cases","page":"Constraints","title":"Special cases","text":"","category":"section"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"There are two exceptions: if the result of the left-hand side minus the right-hand side is a LinearAlgebra.Symmetric matrix or a LinearAlgebra.Hermitian matrix, you may use the non-broadcasting equality syntax:","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"julia> using LinearAlgebra\n\njulia> model = Model();\n\njulia> @variable(model, X[1:2, 1:2], Symmetric)\n2×2 Symmetric{VariableRef, Matrix{VariableRef}}:\n X[1,1] X[1,2]\n X[1,2] X[2,2]\n\njulia> @constraint(model, X == LinearAlgebra.I)\n[X[1,1] - 1 X[1,2]\n ⋯ X[2,2] - 1] ∈ Zeros()","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"This will add only three rows to the constraint matrix because the symmetric constraints are redundant. In contrast, the broadcasting syntax adds four linear constraints:","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"julia> @constraint(model, X .== LinearAlgebra.I)\n2×2 Matrix{ConstraintRef{Model, MathOptInterface.ConstraintIndex{MathOptInterface.ScalarAffineFunction{Float64}, MathOptInterface.EqualTo{Float64}}, ScalarShape}}:\n X[1,1] = 1 X[1,2] = 0\n X[1,2] = 0 X[2,2] = 1","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"The same holds for LinearAlgebra.Hermitian matrices:","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"julia> using LinearAlgebra\n\njulia> model = Model();\n\njulia> @variable(model, X[1:2, 1:2] in HermitianPSDCone())\n2×2 Hermitian{GenericAffExpr{ComplexF64, VariableRef}, Matrix{GenericAffExpr{ComplexF64, VariableRef}}}:\n real(X[1,1]) real(X[1,2]) + imag(X[1,2]) im\n real(X[1,2]) - imag(X[1,2]) im real(X[2,2])\n\njulia> @constraint(model, X == LinearAlgebra.I)\n[real(X[1,1]) - 1 real(X[1,2]) + imag(X[1,2]) im\n real(X[1,2]) - imag(X[1,2]) im real(X[2,2]) - 1] ∈ Zeros()\n\njulia> @constraint(model, X .== LinearAlgebra.I)\n2×2 Matrix{ConstraintRef{Model, MathOptInterface.ConstraintIndex{MathOptInterface.ScalarAffineFunction{ComplexF64}, MathOptInterface.EqualTo{ComplexF64}}, ScalarShape}}:\n real(X[1,1]) = 1 real(X[1,2]) + imag(X[1,2]) im = 0\n real(X[1,2]) - imag(X[1,2]) im = 0 real(X[2,2]) = 1","category":"page"},{"location":"manual/constraints/#Containers-of-constraints","page":"Constraints","title":"Containers of constraints","text":"","category":"section"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"The @constraint macro supports creating collections of constraints. We'll cover some brief syntax here; read the Constraint containers section for more details:","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"Create arrays of constraints:","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"julia> model = Model();\n\njulia> @variable(model, x[1:3]);\n\njulia> @constraint(model, c[i=1:3], x[i] <= i^2)\n3-element Vector{ConstraintRef{Model, MathOptInterface.ConstraintIndex{MathOptInterface.ScalarAffineFunction{Float64}, MathOptInterface.LessThan{Float64}}, ScalarShape}}:\n c[1] : x[1] ≤ 1\n c[2] : x[2] ≤ 4\n c[3] : x[3] ≤ 9\n\njulia> c[2]\nc[2] : x[2] ≤ 4","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"Sets can be any Julia type that supports iteration:","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"julia> model = Model();\n\njulia> @variable(model, x[1:3]);\n\njulia> @constraint(model, c[i=2:3, [\"red\", \"blue\"]], x[i] <= i^2)\n2-dimensional DenseAxisArray{ConstraintRef{Model, MathOptInterface.ConstraintIndex{MathOptInterface.ScalarAffineFunction{Float64}, MathOptInterface.LessThan{Float64}}, ScalarShape},2,...} with index sets:\n Dimension 1, 2:3\n Dimension 2, [\"red\", \"blue\"]\nAnd data, a 2×2 Matrix{ConstraintRef{Model, MathOptInterface.ConstraintIndex{MathOptInterface.ScalarAffineFunction{Float64}, MathOptInterface.LessThan{Float64}}, ScalarShape}}:\n c[2,red] : x[2] ≤ 4 c[2,blue] : x[2] ≤ 4\n c[3,red] : x[3] ≤ 9 c[3,blue] : x[3] ≤ 9\n\njulia> c[2, \"red\"]\nc[2,red] : x[2] ≤ 4","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"Sets can depend upon previous indices:","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"julia> model = Model();\n\njulia> @variable(model, x[1:3]);\n\njulia> @constraint(model, c[i=1:3, j=i:3], x[i] <= j)\nJuMP.Containers.SparseAxisArray{ConstraintRef{Model, MathOptInterface.ConstraintIndex{MathOptInterface.ScalarAffineFunction{Float64}, MathOptInterface.LessThan{Float64}}, ScalarShape}, 2, Tuple{Int64, Int64}} with 6 entries:\n [1, 1] = c[1,1] : x[1] ≤ 1\n [1, 2] = c[1,2] : x[1] ≤ 2\n [1, 3] = c[1,3] : x[1] ≤ 3\n [2, 2] = c[2,2] : x[2] ≤ 2\n [2, 3] = c[2,3] : x[2] ≤ 3\n [3, 3] = c[3,3] : x[3] ≤ 3","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"and you can filter elements in the sets using the ; syntax:","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"julia> model = Model();\n\njulia> @variable(model, x[1:9]);\n\njulia> @constraint(model, c[i=1:9; mod(i, 3) == 0], x[i] <= i)\nJuMP.Containers.SparseAxisArray{ConstraintRef{Model, MathOptInterface.ConstraintIndex{MathOptInterface.ScalarAffineFunction{Float64}, MathOptInterface.LessThan{Float64}}, ScalarShape}, 1, Tuple{Int64}} with 3 entries:\n [3] = c[3] : x[3] ≤ 3\n [6] = c[6] : x[6] ≤ 6\n [9] = c[9] : x[9] ≤ 9","category":"page"},{"location":"manual/constraints/#Registered-constraints","page":"Constraints","title":"Registered constraints","text":"","category":"section"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"When you create constraints, JuMP registers them inside the model using their corresponding symbol. Get a registered name using model[:key]:","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"julia> model = Model()\nA JuMP Model\n├ solver: none\n├ objective_sense: FEASIBILITY_SENSE\n├ num_variables: 0\n├ num_constraints: 0\n└ Names registered in the model: none\n\njulia> @variable(model, x)\nx\n\njulia> @constraint(model, my_c, 2x <= 1)\nmy_c : 2 x ≤ 1\n\njulia> model\nA JuMP Model\n├ solver: none\n├ objective_sense: FEASIBILITY_SENSE\n├ num_variables: 1\n├ num_constraints: 1\n│ └ AffExpr in MOI.LessThan{Float64}: 1\n└ Names registered in the model\n └ :my_c, :x\n\njulia> model[:my_c] === my_c\ntrue","category":"page"},{"location":"manual/constraints/#Anonymous-constraints","page":"Constraints","title":"Anonymous constraints","text":"","category":"section"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"To reduce the likelihood of accidental bugs, and because JuMP registers constraints inside a model, creating two constraints with the same name is an error:","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"julia> model = Model();\n\njulia> @variable(model, x)\nx\n\njulia> @constraint(model, c, 2x <= 1)\nc : 2 x ≤ 1\n\njulia> @constraint(model, c, 2x <= 1)\nERROR: An object of name c is already attached to this model. If this\n is intended, consider using the anonymous construction syntax, for example,\n `x = @variable(model, [1:N], ...)` where the name of the object does\n not appear inside the macro.\n\n Alternatively, use `unregister(model, :c)` to first unregister\n the existing name from the model. Note that this will not delete the\n object; it will just remove the reference at `model[:c]`.\n[...]","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"A common reason for encountering this error is adding constraints in a loop.","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"As a work-around, JuMP provides anonymous constraints. Create an anonymous constraint by omitting the name argument:","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"julia> model = Model();\n\njulia> @variable(model, x);\n\njulia> c = @constraint(model, 2x <= 1)\n2 x ≤ 1","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"Create a container of anonymous constraints by dropping the name in front of the [:","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"julia> model = Model();\n\njulia> @variable(model, x[1:3]);\n\njulia> c = @constraint(model, [i = 1:3], x[i] <= i)\n3-element Vector{ConstraintRef{Model, MathOptInterface.ConstraintIndex{MathOptInterface.ScalarAffineFunction{Float64}, MathOptInterface.LessThan{Float64}}, ScalarShape}}:\n x[1] ≤ 1\n x[2] ≤ 2\n x[3] ≤ 3","category":"page"},{"location":"manual/constraints/#Constraint-names","page":"Constraints","title":"Constraint names","text":"","category":"section"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"In addition to the symbol that constraints are registered with, constraints have a String name that is used for printing and writing to file formats.","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"Get and set the name of a constraint using name(::JuMP.ConstraintRef) and set_name(::JuMP.ConstraintRef, ::String):","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"julia> model = Model(); @variable(model, x);\n\njulia> @constraint(model, con, x <= 1)\ncon : x ≤ 1\n\njulia> name(con)\n\"con\"\n\njulia> set_name(con, \"my_con_name\")\n\njulia> con\nmy_con_name : x ≤ 1","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"Override the default choice of name using the base_name keyword:","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"julia> model = Model(); @variable(model, x);\n\njulia> con = @constraint(model, [i=1:2], x <= i, base_name = \"my_con\")\n2-element Vector{ConstraintRef{Model, MathOptInterface.ConstraintIndex{MathOptInterface.ScalarAffineFunction{Float64}, MathOptInterface.LessThan{Float64}}, ScalarShape}}:\n my_con[1] : x ≤ 1\n my_con[2] : x ≤ 2","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"Note that names apply to each element of the container, not to the container of constraints:","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"julia> name(con[1])\n\"my_con[1]\"\n\njulia> set_name(con[1], \"c\")\n\njulia> con\n2-element Vector{ConstraintRef{Model, MathOptInterface.ConstraintIndex{MathOptInterface.ScalarAffineFunction{Float64}, MathOptInterface.LessThan{Float64}}, ScalarShape}}:\n c : x ≤ 1\n my_con[2] : x ≤ 2","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"tip: Tip\nFor some models, setting the string name of each constraint can take a non-trivial portion of the total time required to build the model. Turn off String names by passing set_string_name = false to @constraint:julia> model = Model();\n\njulia> @variable(model, x);\n\njulia> @constraint(model, con, x <= 2, set_string_name = false)\nx ≤ 2See Disable string names for more information.","category":"page"},{"location":"manual/constraints/#Retrieve-a-constraint-by-name","page":"Constraints","title":"Retrieve a constraint by name","text":"","category":"section"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"Retrieve a constraint from a model using constraint_by_name:","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"julia> constraint_by_name(model, \"c\")\nc : x ≤ 1","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"If the name is not present, nothing will be returned:","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"julia> constraint_by_name(model, \"bad_name\")","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"You can only look up individual constraints using constraint_by_name. Something like this will not work:","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"julia> model = Model(); @variable(model, x);\n\njulia> con = @constraint(model, [i=1:2], x <= i, base_name = \"my_con\")\n2-element Vector{ConstraintRef{Model, MathOptInterface.ConstraintIndex{MathOptInterface.ScalarAffineFunction{Float64}, MathOptInterface.LessThan{Float64}}, ScalarShape}}:\n my_con[1] : x ≤ 1\n my_con[2] : x ≤ 2\n\njulia> constraint_by_name(model, \"my_con\")","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"To look up a collection of constraints, do not use constraint_by_name. Instead, register them using the model[:key] = value syntax:","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"julia> model = Model(); @variable(model, x);\n\njulia> model[:con] = @constraint(model, [i=1:2], x <= i, base_name = \"my_con\")\n2-element Vector{ConstraintRef{Model, MathOptInterface.ConstraintIndex{MathOptInterface.ScalarAffineFunction{Float64}, MathOptInterface.LessThan{Float64}}, ScalarShape}}:\n my_con[1] : x ≤ 1\n my_con[2] : x ≤ 2\n\njulia> model[:con]\n2-element Vector{ConstraintRef{Model, MathOptInterface.ConstraintIndex{MathOptInterface.ScalarAffineFunction{Float64}, MathOptInterface.LessThan{Float64}}, ScalarShape}}:\n my_con[1] : x ≤ 1\n my_con[2] : x ≤ 2","category":"page"},{"location":"manual/constraints/#String-names,-symbolic-names,-and-bindings","page":"Constraints","title":"String names, symbolic names, and bindings","text":"","category":"section"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"It's common for new users to experience confusion relating to constraints. Part of the problem is the difference between the name that a constraint is registered under and the String name used for printing.","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"Here's a summary of the differences:","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"Constraints are created using @constraint.\nConstraints can be named or anonymous.\nNamed constraints have the form @constraint(model, c, expr). For named constraints:\nThe String name of the constraint is set to \"c\".\nA Julia variable c is created that binds c to the JuMP constraint.\nThe name :c is registered as a key in the model with the value c.\nAnonymous constraints have the form c = @constraint(model, expr). For anonymous constraints:\nThe String name of the constraint is set to \"\".\nYou control the name of the Julia variable used as the binding.\nNo name is registered as a key in the model.\nThe base_name keyword can override the String name of the constraint.\nYou can manually register names in the model via model[:key] = value.","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"Here's an example of the differences:","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"julia> model = Model();\n\njulia> @variable(model, x)\nx\n\njulia> c_binding = @constraint(model, 2x <= 1, base_name = \"c\")\nc : 2 x ≤ 1\n\njulia> model\nA JuMP Model\n├ solver: none\n├ objective_sense: FEASIBILITY_SENSE\n├ num_variables: 1\n├ num_constraints: 1\n│ └ AffExpr in MOI.LessThan{Float64}: 1\n└ Names registered in the model\n └ :x\n\njulia> c\nERROR: UndefVarError: `c` not defined\n\njulia> c_binding\nc : 2 x ≤ 1\n\njulia> name(c_binding)\n\"c\"\n\njulia> model[:c_register] = c_binding\nc : 2 x ≤ 1\n\njulia> model\nA JuMP Model\n├ solver: none\n├ objective_sense: FEASIBILITY_SENSE\n├ num_variables: 1\n├ num_constraints: 1\n│ └ AffExpr in MOI.LessThan{Float64}: 1\n└ Names registered in the model\n └ :c_register, :x\n\njulia> model[:c_register]\nc : 2 x ≤ 1\n\njulia> model[:c_register] === c_binding\ntrue\n\njulia> c\nERROR: UndefVarError: `c` not defined","category":"page"},{"location":"manual/constraints/#The-@constraints-macro","page":"Constraints","title":"The @constraints macro","text":"","category":"section"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"If you have many @constraint calls, use the @constraints macro to improve readability:","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"julia> model = Model();\n\njulia> @variable(model, x);\n\njulia> @constraints(model, begin\n 2x <= 1\n c, x >= -1\n end)\n(2 x ≤ 1, c : x ≥ -1)\n\njulia> print(model)\nFeasibility\nSubject to\n c : x ≥ -1\n 2 x ≤ 1","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"The @constraints macro returns a tuple of the constraints that were defined.","category":"page"},{"location":"manual/constraints/#constraint_duality","page":"Constraints","title":"Duality","text":"","category":"section"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"JuMP adopts the notion of conic duality from MathOptInterface. For linear programs, a feasible dual on a >= constraint is nonnegative and a feasible dual on a <= constraint is nonpositive. If the constraint is an equality constraint, it depends on which direction is binding.","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"warning: Warning\nJuMP's definition of duality is independent of the objective sense. That is, the sign of feasible duals associated with a constraint depends on the direction of the constraint and not whether the problem is maximization or minimization. This is a different convention from linear programming duality in some common textbooks. If you have a linear program, and you want the textbook definition, you probably want to use shadow_price and reduced_cost instead.","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"The dual value associated with a constraint in the most recent solution can be accessed using the dual function. Use has_duals to check if the model has a dual solution available to query. For example:","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"julia> model = Model(HiGHS.Optimizer);\n\njulia> set_silent(model)\n\njulia> @variable(model, x)\nx\n\njulia> @constraint(model, con, x <= 1)\ncon : x ≤ 1\n\njulia> @objective(model, Min, -2x)\n-2 x\n\njulia> has_duals(model)\nfalse\n\njulia> optimize!(model)\n\njulia> has_duals(model)\ntrue\n\njulia> dual(con)\n-2.0\n\njulia> @objective(model, Max, 2x)\n2 x\n\njulia> optimize!(model)\n\njulia> dual(con)\n-2.0","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"To help users who may be less familiar with conic duality, JuMP provides shadow_price, which returns a value that can be interpreted as the improvement in the objective in response to an infinitesimal relaxation (on the scale of one unit) in the right-hand side of the constraint. shadow_price can be used only on linear constraints with a <=, >=, or == comparison operator.","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"In the example above, dual(con) returned -2.0 regardless of the optimization sense. However, in the second case when the optimization sense is Max, shadow_price returns:","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"julia> shadow_price(con)\n2.0","category":"page"},{"location":"manual/constraints/#Duals-of-variable-bounds","page":"Constraints","title":"Duals of variable bounds","text":"","category":"section"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"To query the dual variables associated with a variable bound, first obtain a constraint reference using one of UpperBoundRef, LowerBoundRef, or FixRef, and then call dual on the returned constraint reference. The reduced_cost function may simplify this process as it returns the shadow price of an active bound of a variable (or zero, if no active bound exists).","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"julia> model = Model(HiGHS.Optimizer);\n\njulia> set_silent(model)\n\njulia> @variable(model, x <= 1)\nx\n\njulia> @objective(model, Min, -2x)\n-2 x\n\njulia> optimize!(model)\n\njulia> dual(UpperBoundRef(x))\n-2.0\n\njulia> reduced_cost(x)\n-2.0","category":"page"},{"location":"manual/constraints/#Modify-a-constant-term","page":"Constraints","title":"Modify a constant term","text":"","category":"section"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"This section explains how to modify the constant term in a constraint. There are multiple ways to achieve this goal; we explain three options.","category":"page"},{"location":"manual/constraints/#Option-1:-change-the-right-hand-side","page":"Constraints","title":"Option 1: change the right-hand side","text":"","category":"section"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"Use set_normalized_rhs to modify the right-hand side (constant) term of a linear or quadratic constraint. Use normalized_rhs to query the right-hand side term.","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"julia> model = Model();\n\njulia> @variable(model, x);\n\njulia> @constraint(model, con, 2x <= 1)\ncon : 2 x ≤ 1\n\njulia> set_normalized_rhs(con, 3)\n\njulia> con\ncon : 2 x ≤ 3\n\njulia> normalized_rhs(con)\n3.0","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"warning: Warning\nset_normalized_rhs sets the right-hand side term of the normalized constraint. See Normalization for more details.","category":"page"},{"location":"manual/constraints/#Option-2:-use-fixed-variables","page":"Constraints","title":"Option 2: use fixed variables","text":"","category":"section"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"If constraints are complicated, for example, they are composed of a number of components, each of which has a constant term, then it may be difficult to calculate what the right-hand side term is in the standard form.","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"For this situation, JuMP includes the ability to fix variables to a value using the fix function. Fixing a variable sets its lower and upper bound to the same value. Thus, changes in a constant term can be simulated by adding a new variable and fixing it to different values. Here is an example:","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"julia> model = Model();\n\njulia> @variable(model, x);\n\njulia> @variable(model, const_term)\nconst_term\n\njulia> @constraint(model, con, 2x <= const_term + 1)\ncon : 2 x - const_term ≤ 1\n\njulia> fix(const_term, 1.0)","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"The constraint con is now equivalent to 2x <= 2.","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"warning: Warning\nFixed variables are not replaced with constants when communicating the problem to a solver. Therefore, even though const_term is fixed, it is still a decision variable, and so const_term * x is bilinear.","category":"page"},{"location":"manual/constraints/#Option-3:-modify-the-function's-constant-term","page":"Constraints","title":"Option 3: modify the function's constant term","text":"","category":"section"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"The third option is to use add_to_function_constant. The constant given is added to the function of a func-in-set constraint. In the following example, adding 2 to the function has the effect of removing 2 to the right-hand side:","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"julia> model = Model();\n\njulia> @variable(model, x);\n\njulia> @constraint(model, con, 2x <= 1)\ncon : 2 x ≤ 1\n\njulia> add_to_function_constant(con, 2)\n\njulia> con\ncon : 2 x ≤ -1\n\njulia> normalized_rhs(con)\n-1.0","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"In the case of interval constraints, the constant is removed from each bound:","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"julia> model = Model();\n\njulia> @variable(model, x);\n\njulia> @constraint(model, con, 0 <= 2x + 1 <= 2)\ncon : 2 x ∈ [-1, 1]\n\njulia> add_to_function_constant(con, 3)\n\njulia> con\ncon : 2 x ∈ [-4, -2]","category":"page"},{"location":"manual/constraints/#Modify-a-variable-coefficient","page":"Constraints","title":"Modify a variable coefficient","text":"","category":"section"},{"location":"manual/constraints/#Scalar-constraints","page":"Constraints","title":"Scalar constraints","text":"","category":"section"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"To modify the coefficients for a linear term in a constraint, use set_normalized_coefficient. To query the current coefficient, use normalized_coefficient.","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"julia> model = Model();\n\njulia> @variable(model, x[1:2]);\n\njulia> @constraint(model, con, 2x[1] + x[2] <= 1)\ncon : 2 x[1] + x[2] ≤ 1\n\njulia> set_normalized_coefficient(con, x[2], 0)\n\njulia> con\ncon : 2 x[1] ≤ 1\n\njulia> normalized_coefficient(con, x[2])\n0.0","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"To modify quadratic terms, pass two variables:","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"julia> model = Model();\n\njulia> @variable(model, x[1:2]);\n\njulia> @constraint(model, con, x[1]^2 + x[1] * x[2] <= 1)\ncon : x[1]² + x[1]*x[2] ≤ 1\n\njulia> set_normalized_coefficient(con, x[1], x[1], 2)\n\njulia> set_normalized_coefficient(con, x[1], x[2], 3)\n\njulia> con\ncon : 2 x[1]² + 3 x[1]*x[2] ≤ 1\n\njulia> normalized_coefficient(con, x[1], x[1])\n2.0\n\njulia> normalized_coefficient(con, x[1], x[2])\n3.0","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"warning: Warning\nset_normalized_coefficient sets the coefficient of the normalized constraint. See Normalization for more details.","category":"page"},{"location":"manual/constraints/#Vector-constraints","page":"Constraints","title":"Vector constraints","text":"","category":"section"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"To modify the coefficients of a vector-valued constraint, use set_normalized_coefficient.","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"julia> model = Model();\n\njulia> @variable(model, x)\nx\n\njulia> @constraint(model, con, [2x + 3x, 4x] in MOI.Nonnegatives(2))\ncon : [5 x, 4 x] ∈ MathOptInterface.Nonnegatives(2)\n\njulia> set_normalized_coefficient(con, x, [(1, 3.0)])\n\njulia> con\ncon : [3 x, 4 x] ∈ MathOptInterface.Nonnegatives(2)\n\njulia> set_normalized_coefficient(con, x, [(1, 2.0), (2, 5.0)])\n\njulia> con\ncon : [2 x, 5 x] ∈ MathOptInterface.Nonnegatives(2)","category":"page"},{"location":"manual/constraints/#Delete-a-constraint","page":"Constraints","title":"Delete a constraint","text":"","category":"section"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"Use delete to delete a constraint from a model. Use is_valid to check if a constraint belongs to a model and has not been deleted.","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"julia> model = Model();\n\njulia> @variable(model, x);\n\njulia> @constraint(model, con, 2x <= 1)\ncon : 2 x ≤ 1\n\njulia> is_valid(model, con)\ntrue\n\njulia> delete(model, con)\n\njulia> is_valid(model, con)\nfalse","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"Deleting a constraint does not unregister the symbolic reference from the model. Therefore, creating a new constraint of the same name will throw an error:","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"julia> @constraint(model, con, 2x <= 1)\nERROR: An object of name con is already attached to this model. If this\n is intended, consider using the anonymous construction syntax, for example,\n `x = @variable(model, [1:N], ...)` where the name of the object does\n not appear inside the macro.\n\n Alternatively, use `unregister(model, :con)` to first unregister\n the existing name from the model. Note that this will not delete the\n object; it will just remove the reference at `model[:con]`.\n[...]","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"After calling delete, call unregister to remove the symbolic reference:","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"julia> unregister(model, :con)\n\njulia> @constraint(model, con, 2x <= 1)\ncon : 2 x ≤ 1","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"info: Info\ndelete does not automatically unregister because we do not distinguish between names that are automatically registered by JuMP macros, and names that are manually registered by the user by setting values in object_dictionary. In addition, deleting a constraint and then adding a new constraint of the same name is an easy way to introduce bugs into your code.","category":"page"},{"location":"manual/constraints/#Start-values","page":"Constraints","title":"Start values","text":"","category":"section"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"Provide a starting value (also called warmstart) for a constraint's primal and dual solutions using set_start_value and set_dual_start_value.","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"Query the starting value for a constraint's primal and dual solution using start_value and dual_start_value. If no start value has been set, the methods will return nothing.","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"julia> model = Model();\n\njulia> @variable(model, x)\nx\n\njulia> @constraint(model, con, x >= 10)\ncon : x ≥ 10\n\njulia> start_value(con)\n\njulia> set_start_value(con, 10.0)\n\njulia> start_value(con)\n10.0\n\njulia> dual_start_value(con)\n\njulia> set_dual_start_value(con, 2)\n\njulia> dual_start_value(con)\n2.0","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"Vector-valued constraints require a vector:","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"julia> model = Model();\n\njulia> @variable(model, x[1:3])\n3-element Vector{VariableRef}:\n x[1]\n x[2]\n x[3]\n\njulia> @constraint(model, con, x in SecondOrderCone())\ncon : [x[1], x[2], x[3]] in MathOptInterface.SecondOrderCone(3)\n\njulia> dual_start_value(con)\n\njulia> set_dual_start_value(con, [1.0, 2.0, 3.0])\n\njulia> dual_start_value(con)\n3-element Vector{Float64}:\n 1.0\n 2.0\n 3.0","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"tip: Tip\nTo simplify setting start values for all variables and constraints in a model, see set_start_values. The Primal and dual warm-starts tutorial also gives a detailed description of how to iterate over constraints in the model to set custom start values.","category":"page"},{"location":"manual/constraints/#Constraint-containers","page":"Constraints","title":"Constraint containers","text":"","category":"section"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"Like Variable containers, JuMP provides a mechanism for building groups of constraints compactly. References to these groups of constraints are returned in containers. Three types of constraint containers are supported: Arrays, DenseAxisArrays, and SparseAxisArrays. We explain each of these in the following.","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"tip: Tip\nYou can read more about containers in the Containers section.","category":"page"},{"location":"manual/constraints/#constraint_arrays","page":"Constraints","title":"Arrays","text":"","category":"section"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"One way of adding a group of constraints compactly is the following:","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"julia> model = Model();\n\njulia> @variable(model, x);\n\njulia> @constraint(model, con[i = 1:3], i * x <= i + 1)\n3-element Vector{ConstraintRef{Model, MathOptInterface.ConstraintIndex{MathOptInterface.ScalarAffineFunction{Float64}, MathOptInterface.LessThan{Float64}}, ScalarShape}}:\n con[1] : x ≤ 2\n con[2] : 2 x ≤ 3\n con[3] : 3 x ≤ 4","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"JuMP returns references to the three constraints in an Array that is bound to the Julia variable con. This array can be accessed and sliced as you would with any Julia array:","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"julia> con[1]\ncon[1] : x ≤ 2\n\njulia> con[2:3]\n2-element Vector{ConstraintRef{Model, MathOptInterface.ConstraintIndex{MathOptInterface.ScalarAffineFunction{Float64}, MathOptInterface.LessThan{Float64}}, ScalarShape}}:\n con[2] : 2 x ≤ 3\n con[3] : 3 x ≤ 4","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"Anonymous containers can also be constructed by dropping the name (for example, con) before the square brackets:","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"julia> con = @constraint(model, [i = 1:2], i * x <= i + 1)\n2-element Vector{ConstraintRef{Model, MathOptInterface.ConstraintIndex{MathOptInterface.ScalarAffineFunction{Float64}, MathOptInterface.LessThan{Float64}}, ScalarShape}}:\n x ≤ 2\n 2 x ≤ 3","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"Just like @variable, JuMP will form an Array of constraints when it can determine at parse time that the indices are one-based integer ranges. Therefore con[1:b] will create an Array, but con[a:b] will not. A special case is con[Base.OneTo(n)] which will produce an Array. If JuMP cannot determine that the indices are one-based integer ranges (for example, in the case of con[a:b]), JuMP will create a DenseAxisArray instead.","category":"page"},{"location":"manual/constraints/#DenseAxisArrays","page":"Constraints","title":"DenseAxisArrays","text":"","category":"section"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"The syntax for constructing a DenseAxisArray of constraints is very similar to the syntax for constructing a DenseAxisArray of variables.","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"julia> model = Model();\n\njulia> @variable(model, x);\n\njulia> @constraint(model, con[i = 1:2, j = 2:3], i * x <= j + 1)\n2-dimensional DenseAxisArray{ConstraintRef{Model, MathOptInterface.ConstraintIndex{MathOptInterface.ScalarAffineFunction{Float64}, MathOptInterface.LessThan{Float64}}, ScalarShape},2,...} with index sets:\n Dimension 1, Base.OneTo(2)\n Dimension 2, 2:3\nAnd data, a 2×2 Matrix{ConstraintRef{Model, MathOptInterface.ConstraintIndex{MathOptInterface.ScalarAffineFunction{Float64}, MathOptInterface.LessThan{Float64}}, ScalarShape}}:\n con[1,2] : x ≤ 3 con[1,3] : x ≤ 4\n con[2,2] : 2 x ≤ 3 con[2,3] : 2 x ≤ 4","category":"page"},{"location":"manual/constraints/#SparseAxisArrays","page":"Constraints","title":"SparseAxisArrays","text":"","category":"section"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"The syntax for constructing a SparseAxisArray of constraints is very similar to the syntax for constructing a SparseAxisArray of variables.","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"julia> model = Model();\n\njulia> @variable(model, x);\n\njulia> @constraint(model, con[i = 1:2, j = 1:2; i != j], i * x <= j + 1)\nJuMP.Containers.SparseAxisArray{ConstraintRef{Model, MathOptInterface.ConstraintIndex{MathOptInterface.ScalarAffineFunction{Float64}, MathOptInterface.LessThan{Float64}}, ScalarShape}, 2, Tuple{Int64, Int64}} with 2 entries:\n [1, 2] = con[1,2] : x ≤ 3\n [2, 1] = con[2,1] : 2 x ≤ 2","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"warning: Warning\nIf you have many index dimensions and a large amount of sparsity, read Performance considerations.","category":"page"},{"location":"manual/constraints/#Forcing-the-container-type","page":"Constraints","title":"Forcing the container type","text":"","category":"section"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"When creating a container of constraints, JuMP will attempt to choose the tightest container type that can store the constraints. However, because this happens at parse time, it does not always make the best choice. Just like in @variable, you can force the type of container using the container keyword. For syntax and the reason behind this, take a look at the variable docs.","category":"page"},{"location":"manual/constraints/#Constraints-with-similar-indices","page":"Constraints","title":"Constraints with similar indices","text":"","category":"section"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"Containers are often used to create constraints over a set of indices. However, you'll often have cases in which you are repeating the indices:","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"julia> model = Model();\n\njulia> @variable(model, x[1:2]);\n\njulia> @variable(model, y[1:2]);\n\njulia> @constraints(model, begin\n [i=1:2, j=1:2, k=1:2], i * x[j] <= k\n [i=1:2, j=1:2, k=1:2], i * y[j] <= k\n end);","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"This is hard to read and leads to a lot of copy-paste. A more readable way is to use a for-loop:","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"julia> for i=1:2, j=1:2, k=1:2\n @constraints(model, begin\n i * x[j] <= k\n i * y[j] <= k\n end)\n end","category":"page"},{"location":"manual/constraints/#Accessing-constraints-from-a-model","page":"Constraints","title":"Accessing constraints from a model","text":"","category":"section"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"Query the types of function-in-set constraints in a model using list_of_constraint_types:","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"julia> model = Model();\n\njulia> @variable(model, x[i=1:2] >= i, Int);\n\njulia> @constraint(model, x[1] + x[2] <= 1);\n\njulia> list_of_constraint_types(model)\n3-element Vector{Tuple{Type, Type}}:\n (AffExpr, MathOptInterface.LessThan{Float64})\n (VariableRef, MathOptInterface.GreaterThan{Float64})\n (VariableRef, MathOptInterface.Integer)","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"For a given combination of function and set type, use num_constraints to access the number of constraints and all_constraints to access a list of their references:","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"julia> num_constraints(model, VariableRef, MOI.Integer)\n2\n\njulia> cons = all_constraints(model, VariableRef, MOI.Integer)\n2-element Vector{ConstraintRef{Model, MathOptInterface.ConstraintIndex{MathOptInterface.VariableIndex, MathOptInterface.Integer}, ScalarShape}}:\n x[1] integer\n x[2] integer","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"You can also count the total number of constraints in the model, but you must explicitly choose whether to count VariableRef constraints such as bound and integrality constraints:","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"julia> num_constraints(model; count_variable_in_set_constraints = true)\n5\n\njulia> num_constraints(model; count_variable_in_set_constraints = false)\n1","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"The same also applies for all_constraints:","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"julia> all_constraints(model; include_variable_in_set_constraints = true)\n5-element Vector{ConstraintRef}:\n x[1] + x[2] ≤ 1\n x[1] ≥ 1\n x[2] ≥ 2\n x[1] integer\n x[2] integer\n\njulia> all_constraints(model; include_variable_in_set_constraints = false)\n1-element Vector{ConstraintRef}:\n x[1] + x[2] ≤ 1","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"If you need finer-grained control on which constraints to include, use a variant of:","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"julia> sum(\n num_constraints(model, F, S) for\n (F, S) in list_of_constraint_types(model) if F != VariableRef\n )\n1","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"Use constraint_object to get an instance of an AbstractConstraint object that stores the constraint data:","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"julia> con = constraint_object(cons[1])\nScalarConstraint{VariableRef, MathOptInterface.Integer}(x[1], MathOptInterface.Integer())\n\njulia> con.func\nx[1]\n\njulia> con.set\nMathOptInterface.Integer()","category":"page"},{"location":"manual/constraints/#MathOptInterface-constraints","page":"Constraints","title":"MathOptInterface constraints","text":"","category":"section"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"Because JuMP is based on MathOptInterface, you can add any constraints supported by MathOptInterface using the function-in-set syntax. For a list of supported functions and sets, read Standard form problem.","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"note: Note\nWe use MOI as an alias for the MathOptInterface module. This alias is defined by using JuMP. You may also define it in your code as follows:import MathOptInterface as MOI","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"For example, the following two constraints are equivalent:","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"julia> model = Model();\n\njulia> @variable(model, x[1:3]);\n\njulia> @constraint(model, 2 * x[1] <= 1)\n2 x[1] ≤ 1\n\njulia> @constraint(model, 2 * x[1] in MOI.LessThan(1.0))\n2 x[1] ≤ 1","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"You can also use any set defined by MathOptInterface:","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"julia> @constraint(model, x - [1; 2; 3] in MOI.Nonnegatives(3))\n[x[1] - 1, x[2] - 2, x[3] - 3] ∈ MathOptInterface.Nonnegatives(3)\n\njulia> @constraint(model, x in MOI.ExponentialCone())\n[x[1], x[2], x[3]] ∈ MathOptInterface.ExponentialCone()","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"info: Info\nSimilar to how JuMP defines the <= and >= syntax as a convenience way to specify MOI.LessThan and MOI.GreaterThan constraints, the remaining sections in this page describe functions and syntax that have been added for the convenience of common modeling situations.","category":"page"},{"location":"manual/constraints/#Set-inequality-syntax","page":"Constraints","title":"Set inequality syntax","text":"","category":"section"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"For modeling convenience, the syntax @constraint(model, x >= y, Set()) is short-hand for @constraint(model, x - y in Set()).","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"Therefore, the following calls are equivalent:","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"julia> model = Model();\n\njulia> @variable(model, x[1:2]);\n\njulia> y = [0.5, 0.75];\n\njulia> @constraint(model, x >= y, MOI.Nonnegatives(2))\n[x[1] - 0.5, x[2] - 0.75] ∈ MathOptInterface.Nonnegatives(2)\n\njulia> @constraint(model, x - y in MOI.Nonnegatives(2))\n[x[1] - 0.5, x[2] - 0.75] ∈ MathOptInterface.Nonnegatives(2)","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"Non-zero constants are not supported in this syntax:","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"julia> @constraint(model, x >= 1, MOI.Nonnegatives(2))\nERROR: Operation `sub_mul` between `Vector{VariableRef}` and `Int64` is not allowed. This most often happens when you write a constraint like `x >= y` where `x` is an array and `y` is a constant. Use the broadcast syntax `x .- y >= 0` instead.\nStacktrace:\n[...]","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"Use instead:","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"julia> @constraint(model, x .- 1 >= 0, MOI.Nonnegatives(2))\n[x[1] - 1, x[2] - 1] ∈ MathOptInterface.Nonnegatives(2)","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"warning: Warning\nThe syntax @constraint(model, y <= x, Set()) is supported, but it is not recommended because the value of the primal and dual solutions associated with the constraint may be the negative of what you expect.","category":"page"},{"location":"manual/constraints/#Second-order-cone-constraints","page":"Constraints","title":"Second-order cone constraints","text":"","category":"section"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"A SecondOrderCone constrains the variables t and x to the set:","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"x_2 le t","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"and t ge 0. It can be added as follows:","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"julia> model = Model();\n\njulia> @variable(model, t)\nt\n\njulia> @variable(model, x[1:2])\n2-element Vector{VariableRef}:\n x[1]\n x[2]\n\njulia> @constraint(model, [t; x] in SecondOrderCone())\n[t, x[1], x[2]] ∈ MathOptInterface.SecondOrderCone(3)","category":"page"},{"location":"manual/constraints/#Rotated-second-order-cone-constraints","page":"Constraints","title":"Rotated second-order cone constraints","text":"","category":"section"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"A RotatedSecondOrderCone constrains the variables t, u, and x to the set:","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"x_2^2 le 2 t cdot u","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"and t u ge 0. It can be added as follows:","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"julia> model = Model();\n\njulia> @variable(model, t)\nt\n\njulia> @variable(model, u)\nu\n\njulia> @variable(model, x[1:2])\n2-element Vector{VariableRef}:\n x[1]\n x[2]\n\njulia> @constraint(model, [t; u; x] in RotatedSecondOrderCone())\n[t, u, x[1], x[2]] ∈ MathOptInterface.RotatedSecondOrderCone(4)","category":"page"},{"location":"manual/constraints/#Special-Ordered-Sets-of-Type-1","page":"Constraints","title":"Special Ordered Sets of Type 1","text":"","category":"section"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"In a Special Ordered Set of Type 1 (often denoted SOS-I or SOS1), at most one element can take a non-zero value.","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"Construct SOS-I constraints using the SOS1 set:","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"julia> model = Model();\n\njulia> @variable(model, x[1:3])\n3-element Vector{VariableRef}:\n x[1]\n x[2]\n x[3]\n\njulia> @constraint(model, x in SOS1())\n[x[1], x[2], x[3]] in MathOptInterface.SOS1{Float64}([1.0, 2.0, 3.0])","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"Although not required for feasibility, solvers can benefit from an ordering of the variables (for example, the variables represent different factories to build, at most one factory can be built, and the factories can be ordered according to cost). To induce an ordering, a vector of weights can be provided, and the variables are ordered according to their corresponding weight.","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"For example, in the constraint:","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"julia> @constraint(model, x in SOS1([3.1, 1.2, 2.3]))\n[x[1], x[2], x[3]] in MathOptInterface.SOS1{Float64}([3.1, 1.2, 2.3])","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"the variables x have precedence x[2], x[3], x[1].","category":"page"},{"location":"manual/constraints/#Special-Ordered-Sets-of-Type-2","page":"Constraints","title":"Special Ordered Sets of Type 2","text":"","category":"section"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"In a Special Ordered Set of Type 2 (SOS-II), at most two elements can be non-zero, and if there are two non-zeros, they must be consecutive according to the ordering induced by a weight vector.","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"Construct SOS-II constraints using the SOS2 set:","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"julia> @constraint(model, x in SOS2([3.0, 1.0, 2.0]))\n[x[1], x[2], x[3]] in MathOptInterface.SOS2{Float64}([3.0, 1.0, 2.0])","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"The possible non-zero pairs are (x[1], x[3]) and (x[2], x[3]):","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"If the weight vector is omitted, JuMP induces an ordering from 1:length(x):","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"julia> @constraint(model, x in SOS2())\n[x[1], x[2], x[3]] in MathOptInterface.SOS2{Float64}([1.0, 2.0, 3.0])","category":"page"},{"location":"manual/constraints/#Indicator-constraints","page":"Constraints","title":"Indicator constraints","text":"","category":"section"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"Indicator constraints consist of a binary variable and a linear constraint. The constraint holds when the binary variable takes the value 1. The constraint may or may not hold when the binary variable takes the value 0.","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"To enforce the constraint x + y <= 1 when the binary variable a is 1, use:","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"julia> model = Model();\n\njulia> @variable(model, x)\nx\n\njulia> @variable(model, y)\ny\n\njulia> @variable(model, a, Bin)\na\n\njulia> @constraint(model, a --> {x + y <= 1})\na --> {x + y ≤ 1}","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"If the constraint must hold when a is zero, add ! or ¬ before the binary variable;","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"julia> @constraint(model, !a --> {x + y <= 1})\n!a --> {x + y ≤ 1}","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"warning: Warning\nYou cannot use an expression for the left-hand side of an indicator constraint.","category":"page"},{"location":"manual/constraints/#Semidefinite-constraints","page":"Constraints","title":"Semidefinite constraints","text":"","category":"section"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"To constrain a matrix to be positive semidefinite (PSD), use PSDCone:","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"julia> model = Model();\n\njulia> @variable(model, X[1:2, 1:2])\n2×2 Matrix{VariableRef}:\n X[1,1] X[1,2]\n X[2,1] X[2,2]\n\njulia> @constraint(model, X >= 0, PSDCone())\n[X[1,1] X[1,2]\n X[2,1] X[2,2]] ∈ PSDCone()","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"tip: Tip\nWhere possible, prefer constructing a matrix of Semidefinite variables using the @variable macro, rather than adding a constraint like @constraint(model, X >= 0, PSDCone()). In some solvers, adding the constraint via @constraint is less efficient, and can result in additional intermediate variables and constraints being added to the model.","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"The inequality X >= Y between two square matrices X and Y is understood as constraining X - Y to be positive semidefinite.","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"julia> Y = [1 2; 2 1]\n2×2 Matrix{Int64}:\n 1 2\n 2 1\n\njulia> @constraint(model, X >= Y, PSDCone())\n[X[1,1] - 1 X[1,2] - 2\n X[2,1] - 2 X[2,2] - 1] ∈ PSDCone()","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"warning: Warning\nThe syntax @constraint(model, Y <= X, PSDCone()) is supported, but it is not recommended because the value of the primal and dual solutions associated with the constraint may be the negative of what you expect.","category":"page"},{"location":"manual/constraints/#Symmetry","page":"Constraints","title":"Symmetry","text":"","category":"section"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"Solvers supporting PSD constraints usually expect to be given a matrix that is symbolically symmetric, that is, for which the expression in corresponding off-diagonal entries are the same. In our example, the expressions of entries (1, 2) and (2, 1) are respectively X[1,2] - 2 and X[2,1] - 2 which are different.","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"To bridge the gap between the constraint modeled and what the solver expects, solvers may add an equality constraint X[1,2] - 2 == X[2,1] - 2 to force symmetry. Use LinearAlgebra.Symmetric to explicitly tell the solver that the matrix is symmetric:","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"julia> import LinearAlgebra\n\njulia> Z = [X[1, 1] X[1, 2]; X[1, 2] X[2, 2]]\n2×2 Matrix{VariableRef}:\n X[1,1] X[1,2]\n X[1,2] X[2,2]\n\njulia> @constraint(model, LinearAlgebra.Symmetric(Z) >= 0, PSDCone())\n[X[1,1] X[1,2]\n ⋯ X[2,2]] ∈ PSDCone()","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"Note that the lower triangular entries are ignored even if they are different so use it with caution:","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"julia> @constraint(model, LinearAlgebra.Symmetric(X) >= 0, PSDCone())\n[X[1,1] X[1,2]\n ⋯ X[2,2]] ∈ PSDCone()","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"(Note that no error is thrown, even though X is not symmetric.)","category":"page"},{"location":"manual/constraints/#Complementarity-constraints","page":"Constraints","title":"Complementarity constraints","text":"","category":"section"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"A mixed complementarity constraint F(x) ⟂ x consists of finding x in the interval [lb, ub], such that the following holds:","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"F(x) == 0 if lb < x < ub\nF(x) >= 0 if lb == x\nF(x) <= 0 if x == ub","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"JuMP supports mixed complementarity constraints via complements(F(x), x) or F(x) ⟂ x in the @constraint macro. The interval set [lb, ub] is obtained from the variable bounds on x.","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"For example, to define the problem 2x - 1 ⟂ x with x ∈ [0, ∞), do:","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"julia> model = Model();\n\njulia> @variable(model, x >= 0)\nx\n\njulia> @constraint(model, 2x - 1 ⟂ x)\n[2 x - 1, x] ∈ MathOptInterface.Complements(2)","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"This problem has a unique solution at x = 0.5.","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"The perp operator ⟂ can be entered in most editors (and the Julia REPL) by typing \\perp.","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"An alternative approach that does not require the ⟂ symbol uses the complements function as follows:","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"julia> @constraint(model, complements(2x - 1, x))\n[2 x - 1, x] ∈ MathOptInterface.Complements(2)","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"In both cases, the mapping F(x) is supplied as the first argument, and the matching variable x is supplied as the second.","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"Vector-valued complementarity constraints are also supported:","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"julia> @variable(model, -2 <= y[1:2] <= 2)\n2-element Vector{VariableRef}:\n y[1]\n y[2]\n\njulia> M = [1 2; 3 4]\n2×2 Matrix{Int64}:\n 1 2\n 3 4\n\njulia> q = [5, 6]\n2-element Vector{Int64}:\n 5\n 6\n\njulia> @constraint(model, M * y + q ⟂ y)\n[y[1] + 2 y[2] + 5, 3 y[1] + 4 y[2] + 6, y[1], y[2]] ∈ MathOptInterface.Complements(4)","category":"page"},{"location":"manual/constraints/#Boolean-constraints","page":"Constraints","title":"Boolean constraints","text":"","category":"section"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"Add a Boolean constraint (a MOI.EqualTo{Bool} set) using the := operator with a Bool right-hand side term:","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"julia> model = GenericModel{Bool}();\n\njulia> @variable(model, x[1:2]);\n\njulia> @constraint(model, x[1] || x[2] := true)\nx[1] || x[2] = true\n\njulia> @constraint(model, x[1] && x[2] := false)\nx[1] && x[2] = false\n\njulia> model\nA JuMP Model\n├ value_type: Bool\n├ solver: none\n├ objective_sense: FEASIBILITY_SENSE\n├ num_variables: 2\n├ num_constraints: 2\n│ └ GenericNonlinearExpr{GenericVariableRef{Bool}} in MOI.EqualTo{Bool}: 2\n└ Names registered in the model\n └ :x","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"Boolean constraints should not be added using the == operator because JuMP will rewrite the constraint as lhs - rhs = 0, and because constraints like a == b == c require parentheses to disambiguate between (a == b) == c and a == (b == c). In contrast, a == b := c is equivalent to (a == b) := c:","category":"page"},{"location":"manual/constraints/","page":"Constraints","title":"Constraints","text":"julia> model = Model();\n\njulia> @variable(model, x[1:2]);\n\njulia> rhs = false\nfalse\n\njulia> @constraint(model, (x[1] == x[2]) == rhs)\n(x[1] == x[2]) - 0.0 = 0\n\njulia> @constraint(model, x[1] == x[2] := rhs)\nx[1] == x[2] = false","category":"page"},{"location":"tutorials/applications/power_systems/","page":"Power Systems","title":"Power Systems","text":"EditURL = \"power_systems.jl\"","category":"page"},{"location":"tutorials/applications/power_systems/#Power-Systems","page":"Power Systems","title":"Power Systems","text":"","category":"section"},{"location":"tutorials/applications/power_systems/","page":"Power Systems","title":"Power Systems","text":"This tutorial was generated using Literate.jl. Download the source as a .jl file.","category":"page"},{"location":"tutorials/applications/power_systems/","page":"Power Systems","title":"Power Systems","text":"This tutorial was originally contributed by Yury Dvorkin and Miles Lubin.","category":"page"},{"location":"tutorials/applications/power_systems/","page":"Power Systems","title":"Power Systems","text":"This tutorial demonstrates how to formulate basic power systems engineering models in JuMP.","category":"page"},{"location":"tutorials/applications/power_systems/","page":"Power Systems","title":"Power Systems","text":"We will consider basic \"economic dispatch\" and \"unit commitment\" models without taking into account transmission constraints.","category":"page"},{"location":"tutorials/applications/power_systems/","page":"Power Systems","title":"Power Systems","text":"For this tutorial, we use the following packages:","category":"page"},{"location":"tutorials/applications/power_systems/","page":"Power Systems","title":"Power Systems","text":"using JuMP\nimport DataFrames\nimport HiGHS\nimport Plots\nimport StatsPlots","category":"page"},{"location":"tutorials/applications/power_systems/#Economic-dispatch","page":"Power Systems","title":"Economic dispatch","text":"","category":"section"},{"location":"tutorials/applications/power_systems/","page":"Power Systems","title":"Power Systems","text":"Economic dispatch (ED) is an optimization problem that minimizes the cost of supplying energy demand subject to operational constraints on power system assets. In its simplest modification, ED is an LP problem solved for an aggregated load and wind forecast and for a single infinitesimal moment.","category":"page"},{"location":"tutorials/applications/power_systems/","page":"Power Systems","title":"Power Systems","text":"Mathematically, the ED problem can be written as follows:","category":"page"},{"location":"tutorials/applications/power_systems/","page":"Power Systems","title":"Power Systems","text":"min sum_i in I c^g_i cdot g_i + c^w cdot w","category":"page"},{"location":"tutorials/applications/power_systems/","page":"Power Systems","title":"Power Systems","text":"where c_i and g_i are the incremental cost ($/MWh) and power output (MW) of the i^th generator, respectively, and c^w and w are the incremental cost ($/MWh) and wind power injection (MW), respectively.","category":"page"},{"location":"tutorials/applications/power_systems/","page":"Power Systems","title":"Power Systems","text":"Subject to the constraints:","category":"page"},{"location":"tutorials/applications/power_systems/","page":"Power Systems","title":"Power Systems","text":"Minimum (g^min) and maximum (g^max) limits on power outputs of generators: g^min_i leq g_i leq g^max_i\nConstraint on the wind power injection: 0 leq w leq w^f where w and w^f are the wind power injection and wind power forecast, respectively.\nPower balance constraint: sum_i in I g_i + w = d^f where d^f is the demand forecast.","category":"page"},{"location":"tutorials/applications/power_systems/","page":"Power Systems","title":"Power Systems","text":"Further reading on ED models can be found in A. J. Wood, B. F. Wollenberg, and G. B. Sheblé, \"Power Generation, Operation and Control,\" Wiley, 2013.","category":"page"},{"location":"tutorials/applications/power_systems/","page":"Power Systems","title":"Power Systems","text":"Define some input data about the test system.","category":"page"},{"location":"tutorials/applications/power_systems/","page":"Power Systems","title":"Power Systems","text":"We define some thermal generators:","category":"page"},{"location":"tutorials/applications/power_systems/","page":"Power Systems","title":"Power Systems","text":"function ThermalGenerator(\n min::Float64,\n max::Float64,\n fixed_cost::Float64,\n variable_cost::Float64,\n)\n return (\n min = min,\n max = max,\n fixed_cost = fixed_cost,\n variable_cost = variable_cost,\n )\nend\n\ngenerators = [\n ThermalGenerator(0.0, 1000.0, 1000.0, 50.0),\n ThermalGenerator(300.0, 1000.0, 0.0, 100.0),\n]","category":"page"},{"location":"tutorials/applications/power_systems/","page":"Power Systems","title":"Power Systems","text":"A wind generator","category":"page"},{"location":"tutorials/applications/power_systems/","page":"Power Systems","title":"Power Systems","text":"WindGenerator(variable_cost::Float64) = (variable_cost = variable_cost,)\n\nwind_generator = WindGenerator(50.0)","category":"page"},{"location":"tutorials/applications/power_systems/","page":"Power Systems","title":"Power Systems","text":"And a scenario","category":"page"},{"location":"tutorials/applications/power_systems/","page":"Power Systems","title":"Power Systems","text":"function Scenario(demand::Float64, wind::Float64)\n return (demand = demand, wind = wind)\nend\n\nscenario = Scenario(1500.0, 200.0)","category":"page"},{"location":"tutorials/applications/power_systems/","page":"Power Systems","title":"Power Systems","text":"Create a function solve_economic_dispatch, which solves the economic dispatch problem for a given set of input parameters.","category":"page"},{"location":"tutorials/applications/power_systems/","page":"Power Systems","title":"Power Systems","text":"function solve_economic_dispatch(generators::Vector, wind, scenario)\n # Define the economic dispatch (ED) model\n model = Model(HiGHS.Optimizer)\n set_silent(model)\n # Define decision variables\n # power output of generators\n N = length(generators)\n @variable(model, generators[i].min <= g[i = 1:N] <= generators[i].max)\n # wind power injection\n @variable(model, 0 <= w <= scenario.wind)\n # Define the objective function\n @objective(\n model,\n Min,\n sum(generators[i].variable_cost * g[i] for i in 1:N) +\n wind.variable_cost * w,\n )\n # Define the power balance constraint\n @constraint(model, sum(g[i] for i in 1:N) + w == scenario.demand)\n # Solve statement\n optimize!(model)\n @assert is_solved_and_feasible(model)\n # return the optimal value of the objective function and its minimizers\n return (\n g = value.(g),\n w = value(w),\n wind_spill = scenario.wind - value(w),\n total_cost = objective_value(model),\n )\nend","category":"page"},{"location":"tutorials/applications/power_systems/","page":"Power Systems","title":"Power Systems","text":"Solve the economic dispatch problem","category":"page"},{"location":"tutorials/applications/power_systems/","page":"Power Systems","title":"Power Systems","text":"solution = solve_economic_dispatch(generators, wind_generator, scenario);\n\nprintln(\"Dispatch of Generators: \", solution.g, \" MW\")\nprintln(\"Dispatch of Wind: \", solution.w, \" MW\")\nprintln(\"Wind spillage: \", solution.wind_spill, \" MW\")\nprintln(\"Total cost: \\$\", solution.total_cost)","category":"page"},{"location":"tutorials/applications/power_systems/#Economic-dispatch-with-adjustable-incremental-costs","page":"Power Systems","title":"Economic dispatch with adjustable incremental costs","text":"","category":"section"},{"location":"tutorials/applications/power_systems/","page":"Power Systems","title":"Power Systems","text":"In the following exercise we adjust the incremental cost of generator G1 and observe its impact on the total cost.","category":"page"},{"location":"tutorials/applications/power_systems/","page":"Power Systems","title":"Power Systems","text":"function scale_generator_cost(g, scale)\n return ThermalGenerator(g.min, g.max, g.fixed_cost, scale * g.variable_cost)\nend\n\nstart = time()\nc_g_scale_df = DataFrames.DataFrame(;\n # Scale factor\n scale = Float64[],\n # Dispatch of Generator 1 [MW]\n dispatch_G1 = Float64[],\n # Dispatch of Generator 2 [MW]\n dispatch_G2 = Float64[],\n # Dispatch of Wind [MW]\n dispatch_wind = Float64[],\n # Spillage of Wind [MW]\n spillage_wind = Float64[],\n # Total cost [$]\n total_cost = Float64[],\n)\nfor c_g1_scale in 0.5:0.1:3.0\n # Update the incremental cost of the first generator at every iteration.\n new_generators = scale_generator_cost.(generators, [c_g1_scale, 1.0])\n # Solve the economic-dispatch problem with the updated incremental cost\n sol = solve_economic_dispatch(new_generators, wind_generator, scenario)\n push!(\n c_g_scale_df,\n (c_g1_scale, sol.g[1], sol.g[2], sol.w, sol.wind_spill, sol.total_cost),\n )\nend\nprint(string(\"elapsed time: \", time() - start, \" seconds\"))","category":"page"},{"location":"tutorials/applications/power_systems/","page":"Power Systems","title":"Power Systems","text":"c_g_scale_df","category":"page"},{"location":"tutorials/applications/power_systems/#Modifying-the-JuMP-model-in-place","page":"Power Systems","title":"Modifying the JuMP model in-place","text":"","category":"section"},{"location":"tutorials/applications/power_systems/","page":"Power Systems","title":"Power Systems","text":"Note that in the previous exercise we entirely rebuilt the optimization model at every iteration of the internal loop, which incurs an additional computational burden. This burden can be alleviated if instead of re-building the entire model, we modify the constraints or objective function, as it shown in the example below.","category":"page"},{"location":"tutorials/applications/power_systems/","page":"Power Systems","title":"Power Systems","text":"Compare the computing time in case of the above and below models.","category":"page"},{"location":"tutorials/applications/power_systems/","page":"Power Systems","title":"Power Systems","text":"function solve_economic_dispatch_inplace(\n generators::Vector,\n wind,\n scenario,\n scale::AbstractVector{Float64},\n)\n obj_out = Float64[]\n w_out = Float64[]\n g1_out = Float64[]\n g2_out = Float64[]\n # This function only works for two generators\n @assert length(generators) == 2\n model = Model(HiGHS.Optimizer)\n set_silent(model)\n N = length(generators)\n @variable(model, generators[i].min <= g[i = 1:N] <= generators[i].max)\n @variable(model, 0 <= w <= scenario.wind)\n @objective(\n model,\n Min,\n sum(generators[i].variable_cost * g[i] for i in 1:N) +\n wind.variable_cost * w,\n )\n @constraint(model, sum(g[i] for i in 1:N) + w == scenario.demand)\n for c_g1_scale in scale\n @objective(\n model,\n Min,\n c_g1_scale * generators[1].variable_cost * g[1] +\n generators[2].variable_cost * g[2] +\n wind.variable_cost * w,\n )\n optimize!(model)\n @assert is_solved_and_feasible(model)\n push!(obj_out, objective_value(model))\n push!(w_out, value(w))\n push!(g1_out, value(g[1]))\n push!(g2_out, value(g[2]))\n end\n df = DataFrames.DataFrame(;\n scale = scale,\n dispatch_G1 = g1_out,\n dispatch_G2 = g2_out,\n dispatch_wind = w_out,\n spillage_wind = scenario.wind .- w_out,\n total_cost = obj_out,\n )\n return df\nend\n\nstart = time()\ninplace_df = solve_economic_dispatch_inplace(\n generators,\n wind_generator,\n scenario,\n 0.5:0.1:3.0,\n)\nprint(string(\"elapsed time: \", time() - start, \" seconds\"))","category":"page"},{"location":"tutorials/applications/power_systems/","page":"Power Systems","title":"Power Systems","text":"For small models, adjusting specific constraints or the objective function is sometimes faster and sometimes slower than re-building the entire model. However, as the problem size increases, updating the model in-place is usually faster.","category":"page"},{"location":"tutorials/applications/power_systems/","page":"Power Systems","title":"Power Systems","text":"inplace_df","category":"page"},{"location":"tutorials/applications/power_systems/#Inefficient-usage-of-wind-generators","page":"Power Systems","title":"Inefficient usage of wind generators","text":"","category":"section"},{"location":"tutorials/applications/power_systems/","page":"Power Systems","title":"Power Systems","text":"The economic dispatch problem does not perform commitment decisions and, thus, assumes that all generators must be dispatched at least at their minimum power output limit. This approach is not cost efficient and may lead to absurd decisions. For example, if d = sum_i in I g^min_i, the wind power injection must be zero, that is, all available wind generation is spilled, to meet the minimum power output constraints on generators.","category":"page"},{"location":"tutorials/applications/power_systems/","page":"Power Systems","title":"Power Systems","text":"In the following example, we adjust the total demand and observed how it affects wind spillage.","category":"page"},{"location":"tutorials/applications/power_systems/","page":"Power Systems","title":"Power Systems","text":"demand_scale_df = DataFrames.DataFrame(;\n demand = Float64[],\n dispatch_G1 = Float64[],\n dispatch_G2 = Float64[],\n dispatch_wind = Float64[],\n spillage_wind = Float64[],\n total_cost = Float64[],\n)\n\nfunction scale_demand(scenario, scale)\n return Scenario(scale * scenario.demand, scenario.wind)\nend\n\nfor demand_scale in 0.2:0.1:1.4\n new_scenario = scale_demand(scenario, demand_scale)\n sol = solve_economic_dispatch(generators, wind_generator, new_scenario)\n push!(\n demand_scale_df,\n (\n new_scenario.demand,\n sol.g[1],\n sol.g[2],\n sol.w,\n sol.wind_spill,\n sol.total_cost,\n ),\n )\nend\n\ndemand_scale_df","category":"page"},{"location":"tutorials/applications/power_systems/","page":"Power Systems","title":"Power Systems","text":"dispatch_plot = StatsPlots.@df(\n demand_scale_df,\n Plots.plot(\n :demand,\n [:dispatch_G1, :dispatch_G2],\n labels = [\"G1\" \"G2\"],\n title = \"Thermal Dispatch\",\n legend = :bottomright,\n linewidth = 3,\n xlabel = \"Demand\",\n ylabel = \"Dispatch [MW]\",\n ),\n)\n\nwind_plot = StatsPlots.@df(\n demand_scale_df,\n Plots.plot(\n :demand,\n [:dispatch_wind, :spillage_wind],\n labels = [\"Dispatch\" \"Spillage\"],\n title = \"Wind\",\n legend = :bottomright,\n linewidth = 3,\n xlabel = \"Demand [MW]\",\n ylabel = \"Energy [MW]\",\n ),\n)\n\nPlots.plot(dispatch_plot, wind_plot)","category":"page"},{"location":"tutorials/applications/power_systems/","page":"Power Systems","title":"Power Systems","text":"This particular drawback can be overcome by introducing binary decisions on the \"on/off\" status of generators. This model is called unit commitment and considered later in these notes.","category":"page"},{"location":"tutorials/applications/power_systems/","page":"Power Systems","title":"Power Systems","text":"For further reading on the interplay between wind generation and the minimum power output constraints of generators, we refer interested readers to R. Baldick, \"Wind and energy markets: a case study of Texas,\" IEEE Systems Journal, vol. 6, pp. 27-34, 2012.","category":"page"},{"location":"tutorials/applications/power_systems/#Unit-commitment","page":"Power Systems","title":"Unit commitment","text":"","category":"section"},{"location":"tutorials/applications/power_systems/","page":"Power Systems","title":"Power Systems","text":"The Unit Commitment (UC) model can be obtained from ED model by introducing binary variable associated with each generator. This binary variable can attain two values: if it is \"1,\" the generator is synchronized and, thus, can be dispatched, otherwise, that is, if the binary variable is \"0,\" that generator is not synchronized and its power output is set to 0.","category":"page"},{"location":"tutorials/applications/power_systems/","page":"Power Systems","title":"Power Systems","text":"To obtain the mathematical formulation of the UC model, we will modify the constraints of the ED model as follows:","category":"page"},{"location":"tutorials/applications/power_systems/","page":"Power Systems","title":"Power Systems","text":"g^min_i cdot u_ti leq g_i leq g^max_i cdot u_ti","category":"page"},{"location":"tutorials/applications/power_systems/","page":"Power Systems","title":"Power Systems","text":"where u_i in 01 In this constraint, if u_i = 0, then g_i = 0. On the other hand, if u_i = 1, then g^min_i leq g_i leq g^max_i.","category":"page"},{"location":"tutorials/applications/power_systems/","page":"Power Systems","title":"Power Systems","text":"For further reading on the UC problem we refer interested readers to G. Morales-Espana, J. M. Latorre, and A. Ramos, \"Tight and Compact MILP Formulation for the Thermal Unit Commitment Problem,\" IEEE Transactions on Power Systems, vol. 28, pp. 4897-4908, 2013.","category":"page"},{"location":"tutorials/applications/power_systems/","page":"Power Systems","title":"Power Systems","text":"In the following example we convert the ED model explained above to the UC model.","category":"page"},{"location":"tutorials/applications/power_systems/","page":"Power Systems","title":"Power Systems","text":"function solve_unit_commitment(generators::Vector, wind, scenario)\n model = Model(HiGHS.Optimizer)\n set_silent(model)\n N = length(generators)\n @variable(model, 0 <= g[i = 1:N] <= generators[i].max)\n @variable(model, 0 <= w <= scenario.wind)\n @constraint(model, sum(g[i] for i in 1:N) + w == scenario.demand)\n # !!! New: add binary on-off variables for each generator\n @variable(model, u[i = 1:N], Bin)\n @constraint(model, [i = 1:N], g[i] <= generators[i].max * u[i])\n @constraint(model, [i = 1:N], g[i] >= generators[i].min * u[i])\n @objective(\n model,\n Min,\n sum(generators[i].variable_cost * g[i] for i in 1:N) +\n wind.variable_cost * w +\n # !!! new\n sum(generators[i].fixed_cost * u[i] for i in 1:N)\n )\n optimize!(model)\n status = termination_status(model)\n if status != OPTIMAL\n return (status = status,)\n end\n @assert primal_status(model) == FEASIBLE_POINT\n return (\n status = status,\n g = value.(g),\n w = value(w),\n wind_spill = scenario.wind - value(w),\n u = value.(u),\n total_cost = objective_value(model),\n )\nend","category":"page"},{"location":"tutorials/applications/power_systems/","page":"Power Systems","title":"Power Systems","text":"Solve the unit commitment problem","category":"page"},{"location":"tutorials/applications/power_systems/","page":"Power Systems","title":"Power Systems","text":"solution = solve_unit_commitment(generators, wind_generator, scenario)\n\nprintln(\"Dispatch of Generators: \", solution.g, \" MW\")\nprintln(\"Commitments of Generators: \", solution.u)\nprintln(\"Dispatch of Wind: \", solution.w, \" MW\")\nprintln(\"Wind spillage: \", solution.wind_spill, \" MW\")\nprintln(\"Total cost: \\$\", solution.total_cost)","category":"page"},{"location":"tutorials/applications/power_systems/#Unit-commitment-as-a-function-of-demand","page":"Power Systems","title":"Unit commitment as a function of demand","text":"","category":"section"},{"location":"tutorials/applications/power_systems/","page":"Power Systems","title":"Power Systems","text":"After implementing the unit commitment model, we can now assess the interplay between the minimum power output constraints on generators and wind generation.","category":"page"},{"location":"tutorials/applications/power_systems/","page":"Power Systems","title":"Power Systems","text":"uc_df = DataFrames.DataFrame(;\n demand = Float64[],\n commitment_G1 = Float64[],\n commitment_G2 = Float64[],\n dispatch_G1 = Float64[],\n dispatch_G2 = Float64[],\n dispatch_wind = Float64[],\n spillage_wind = Float64[],\n total_cost = Float64[],\n)\n\nfor demand_scale in 0.2:0.1:1.4\n new_scenario = scale_demand(scenario, demand_scale)\n sol = solve_unit_commitment(generators, wind_generator, new_scenario)\n if sol.status == OPTIMAL\n push!(\n uc_df,\n (\n new_scenario.demand,\n sol.u[1],\n sol.u[2],\n sol.g[1],\n sol.g[2],\n sol.w,\n sol.wind_spill,\n sol.total_cost,\n ),\n )\n end\n println(\"Status: $(sol.status) for demand_scale = $(demand_scale)\")\nend","category":"page"},{"location":"tutorials/applications/power_systems/","page":"Power Systems","title":"Power Systems","text":"uc_df","category":"page"},{"location":"tutorials/applications/power_systems/","page":"Power Systems","title":"Power Systems","text":"commitment_plot = StatsPlots.@df(\n uc_df,\n Plots.plot(\n :demand,\n [:commitment_G1, :commitment_G2],\n labels = [\"G1\" \"G2\"],\n title = \"Commitment\",\n legend = :bottomright,\n linewidth = 3,\n xlabel = \"Demand [MW]\",\n ylabel = \"Commitment decision {0, 1}\",\n ),\n)\n\ndispatch_plot = StatsPlots.@df(\n uc_df,\n Plots.plot(\n :demand,\n [:dispatch_G1, :dispatch_G2, :dispatch_wind],\n labels = [\"G1\" \"G2\" \"Wind\"],\n title = \"Dispatch [MW]\",\n legend = :bottomright,\n linewidth = 3,\n xlabel = \"Demand\",\n ylabel = \"Dispatch [MW]\",\n ),\n)\n\nPlots.plot(commitment_plot, dispatch_plot)","category":"page"},{"location":"tutorials/applications/power_systems/#Nonlinear-economic-dispatch","page":"Power Systems","title":"Nonlinear economic dispatch","text":"","category":"section"},{"location":"tutorials/applications/power_systems/","page":"Power Systems","title":"Power Systems","text":"As a final example, we modify our economic dispatch problem in two ways:","category":"page"},{"location":"tutorials/applications/power_systems/","page":"Power Systems","title":"Power Systems","text":"The thermal cost function is user-defined\nThe output of the wind is only the square-root of the dispatch","category":"page"},{"location":"tutorials/applications/power_systems/","page":"Power Systems","title":"Power Systems","text":"import Ipopt\n\n\"\"\"\n thermal_cost_function(g)\n\nA user-defined thermal cost function in pure-Julia! You can include\nnonlinearities, and even things like control flow.\n\n!!! warning\n It's still up to you to make sure that the function has a meaningful\n derivative.\n\"\"\"\nfunction thermal_cost_function(g)\n if g <= 500\n return g\n else\n return g + 1e-2 * (g - 500)^2\n end\nend\n\nfunction solve_nonlinear_economic_dispatch(\n generators::Vector,\n wind,\n scenario;\n silent::Bool = false,\n)\n model = Model(Ipopt.Optimizer)\n if silent\n set_silent(model)\n end\n @operator(model, op_tcf, 1, thermal_cost_function)\n N = length(generators)\n @variable(model, generators[i].min <= g[i = 1:N] <= generators[i].max)\n @variable(model, 0 <= w <= scenario.wind)\n @objective(\n model,\n Min,\n sum(generators[i].variable_cost * op_tcf(g[i]) for i in 1:N) +\n wind.variable_cost * w,\n )\n @constraint(model, sum(g[i] for i in 1:N) + sqrt(w) == scenario.demand)\n optimize!(model)\n @assert is_solved_and_feasible(model)\n return (\n g = value.(g),\n w = value(w),\n wind_spill = scenario.wind - value(w),\n total_cost = objective_value(model),\n )\nend\n\nsolution =\n solve_nonlinear_economic_dispatch(generators, wind_generator, scenario)","category":"page"},{"location":"tutorials/applications/power_systems/","page":"Power Systems","title":"Power Systems","text":"Now let's see how the wind is dispatched as a function of the cost:","category":"page"},{"location":"tutorials/applications/power_systems/","page":"Power Systems","title":"Power Systems","text":"wind_cost = 0.0:1:100\nwind_dispatch = Float64[]\nfor c in wind_cost\n sol = solve_nonlinear_economic_dispatch(\n generators,\n WindGenerator(c),\n scenario;\n silent = true,\n )\n push!(wind_dispatch, sol.w)\nend\n\nPlots.plot(\n wind_cost,\n wind_dispatch;\n xlabel = \"Cost\",\n ylabel = \"Dispatch [MW]\",\n label = false,\n)","category":"page"},{"location":"tutorials/conic/logistic_regression/","page":"Example: logistic regression","title":"Example: logistic regression","text":"EditURL = \"logistic_regression.jl\"","category":"page"},{"location":"tutorials/conic/logistic_regression/#Example:-logistic-regression","page":"Example: logistic regression","title":"Example: logistic regression","text":"","category":"section"},{"location":"tutorials/conic/logistic_regression/","page":"Example: logistic regression","title":"Example: logistic regression","text":"This tutorial was generated using Literate.jl. Download the source as a .jl file.","category":"page"},{"location":"tutorials/conic/logistic_regression/","page":"Example: logistic regression","title":"Example: logistic regression","text":"This tutorial was originally contributed by François Pacaud.","category":"page"},{"location":"tutorials/conic/logistic_regression/","page":"Example: logistic regression","title":"Example: logistic regression","text":"This tutorial shows how to solve a logistic regression problem with JuMP. Logistic regression is a well known method in machine learning, useful when we want to classify binary variables with the help of a given set of features. To this goal, we find the optimal combination of features maximizing the (log)-likelihood onto a training set.","category":"page"},{"location":"tutorials/conic/logistic_regression/#Required-packages","page":"Example: logistic regression","title":"Required packages","text":"","category":"section"},{"location":"tutorials/conic/logistic_regression/","page":"Example: logistic regression","title":"Example: logistic regression","text":"This tutorial uses the following packages:","category":"page"},{"location":"tutorials/conic/logistic_regression/","page":"Example: logistic regression","title":"Example: logistic regression","text":"using JuMP\nimport MathOptInterface as MOI\nimport Random\nimport SCS\n\nRandom.seed!(2713);\nnothing #hide","category":"page"},{"location":"tutorials/conic/logistic_regression/#Formulating-the-logistic-regression-problem","page":"Example: logistic regression","title":"Formulating the logistic regression problem","text":"","category":"section"},{"location":"tutorials/conic/logistic_regression/","page":"Example: logistic regression","title":"Example: logistic regression","text":"Suppose we have a set of training data-point i = 1 cdots n, where for each i we have a vector of features x_i in mathbbR^p and a categorical observation y_i in -1 1.","category":"page"},{"location":"tutorials/conic/logistic_regression/","page":"Example: logistic regression","title":"Example: logistic regression","text":"The log-likelihood is given by","category":"page"},{"location":"tutorials/conic/logistic_regression/","page":"Example: logistic regression","title":"Example: logistic regression","text":"l(theta) = sum_i=1^n log(dfrac11 + exp(-y_i theta^top x_i))","category":"page"},{"location":"tutorials/conic/logistic_regression/","page":"Example: logistic regression","title":"Example: logistic regression","text":"and the optimal theta minimizes the logistic loss function:","category":"page"},{"location":"tutorials/conic/logistic_regression/","page":"Example: logistic regression","title":"Example: logistic regression","text":"min_theta sum_i=1^n log(1 + exp(-y_i theta^top x_i))","category":"page"},{"location":"tutorials/conic/logistic_regression/","page":"Example: logistic regression","title":"Example: logistic regression","text":"Most of the time, instead of solving directly the previous optimization problem, we prefer to add a regularization term:","category":"page"},{"location":"tutorials/conic/logistic_regression/","page":"Example: logistic regression","title":"Example: logistic regression","text":"min_theta sum_i=1^n log(1 + exp(-y_i theta^top x_i)) + lambda theta ","category":"page"},{"location":"tutorials/conic/logistic_regression/","page":"Example: logistic regression","title":"Example: logistic regression","text":"with lambda in mathbbR_+ a penalty and a norm function. By adding such a regularization term, we avoid overfitting on the training set and usually achieve a greater score in cross-validation.","category":"page"},{"location":"tutorials/conic/logistic_regression/#Reformulation-as-a-conic-optimization-problem","page":"Example: logistic regression","title":"Reformulation as a conic optimization problem","text":"","category":"section"},{"location":"tutorials/conic/logistic_regression/","page":"Example: logistic regression","title":"Example: logistic regression","text":"By introducing auxiliary variables t_1 cdots t_n and r, the optimization problem is equivalent to","category":"page"},{"location":"tutorials/conic/logistic_regression/","page":"Example: logistic regression","title":"Example: logistic regression","text":"beginaligned\nmin_t r theta sum_i=1^n t_i + lambda r \ntextsubject to quad t_i geq log(1 + exp(- y_i theta^top x_i)) \n quad r geq theta\nendaligned","category":"page"},{"location":"tutorials/conic/logistic_regression/","page":"Example: logistic regression","title":"Example: logistic regression","text":"Now, the trick is to reformulate the constraints t_i geq log(1 + exp(- y_i theta^top x_i)) with the help of the exponential cone","category":"page"},{"location":"tutorials/conic/logistic_regression/","page":"Example: logistic regression","title":"Example: logistic regression","text":"K_exp = (x y z) in mathbbR^3 y exp(x y) leq z ","category":"page"},{"location":"tutorials/conic/logistic_regression/","page":"Example: logistic regression","title":"Example: logistic regression","text":"Indeed, by passing to the exponential, we see that for all i=1 cdots n, the constraint t_i geq log(1 + exp(- y_i theta^top x_i)) is equivalent to","category":"page"},{"location":"tutorials/conic/logistic_regression/","page":"Example: logistic regression","title":"Example: logistic regression","text":"exp(-t_i) + exp(u_i - t_i) leq 1","category":"page"},{"location":"tutorials/conic/logistic_regression/","page":"Example: logistic regression","title":"Example: logistic regression","text":"with u_i = -y_i theta^top x_i. Then, by adding two auxiliary variables z_i1 and z_i2 such that z_i1 geq exp(u_i-t_i) and z_i2 geq exp(-t_i), we get the equivalent formulation","category":"page"},{"location":"tutorials/conic/logistic_regression/","page":"Example: logistic regression","title":"Example: logistic regression","text":"left\nbeginaligned\n(u_i -t_i 1 z_i1) in K_exp \n(-t_i 1 z_i2) in K_exp \nz_i1 + z_i2 leq 1\nendaligned\nright","category":"page"},{"location":"tutorials/conic/logistic_regression/","page":"Example: logistic regression","title":"Example: logistic regression","text":"In this setting, the conic version of the logistic regression problems writes out","category":"page"},{"location":"tutorials/conic/logistic_regression/","page":"Example: logistic regression","title":"Example: logistic regression","text":"beginaligned\nmin_t z r theta sum_i=1^n t_i + lambda r \ntextsubject to quad (u_i -t_i 1 z_i1) in K_exp \n quad (-t_i 1 z_i2) in K_exp \n quad z_i1 + z_i2 leq 1 \n quad u_i = -y_i x_i^top theta \n quad r geq theta\nendaligned","category":"page"},{"location":"tutorials/conic/logistic_regression/","page":"Example: logistic regression","title":"Example: logistic regression","text":"and thus encompasses 3n + p + 1 variables and 3n + 1 constraints (u_i = -y_i theta^top x_i is only a virtual constraint used to clarify the notation). Thus, if n gg 1, we get a large number of variables and constraints.","category":"page"},{"location":"tutorials/conic/logistic_regression/#Fitting-logistic-regression-with-a-conic-solver","page":"Example: logistic regression","title":"Fitting logistic regression with a conic solver","text":"","category":"section"},{"location":"tutorials/conic/logistic_regression/","page":"Example: logistic regression","title":"Example: logistic regression","text":"We start by implementing a function to generate a fake dataset, and where we could tune the correlation between the feature variables. The function is a direct transcription of the one used in this blog post.","category":"page"},{"location":"tutorials/conic/logistic_regression/","page":"Example: logistic regression","title":"Example: logistic regression","text":"function generate_dataset(n_samples = 100, n_features = 10; shift = 0.0)\n X = randn(n_samples, n_features)\n w = randn(n_features)\n y = sign.(X * w)\n X .+= 0.8 * randn(n_samples, n_features) # add noise\n X .+= shift # shift the points in the feature space\n X = hcat(X, ones(n_samples, 1))\n return X, y\nend","category":"page"},{"location":"tutorials/conic/logistic_regression/","page":"Example: logistic regression","title":"Example: logistic regression","text":"We write a softplus function to formulate each constraint t geq log(1 + exp(u)) with two exponential cones.","category":"page"},{"location":"tutorials/conic/logistic_regression/","page":"Example: logistic regression","title":"Example: logistic regression","text":"function softplus(model, t, u)\n z = @variable(model, [1:2], lower_bound = 0.0)\n @constraint(model, sum(z) <= 1.0)\n @constraint(model, [u - t, 1, z[1]] in MOI.ExponentialCone())\n @constraint(model, [-t, 1, z[2]] in MOI.ExponentialCone())\nend","category":"page"},{"location":"tutorials/conic/logistic_regression/#\\ell_2-regularized-logistic-regression","page":"Example: logistic regression","title":"ell_2 regularized logistic regression","text":"","category":"section"},{"location":"tutorials/conic/logistic_regression/","page":"Example: logistic regression","title":"Example: logistic regression","text":"Then, with the help of the softplus function, we could write our optimization model. In the ell_2 regularization case, the constraint r geq theta_2 rewrites as a second order cone constraint.","category":"page"},{"location":"tutorials/conic/logistic_regression/","page":"Example: logistic regression","title":"Example: logistic regression","text":"function build_logit_model(X, y, λ)\n n, p = size(X)\n model = Model()\n @variable(model, θ[1:p])\n @variable(model, t[1:n])\n for i in 1:n\n u = -(X[i, :]' * θ) * y[i]\n softplus(model, t[i], u)\n end\n # Add ℓ2 regularization\n @variable(model, 0.0 <= reg)\n @constraint(model, [reg; θ] in SecondOrderCone())\n # Define objective\n @objective(model, Min, sum(t) + λ * reg)\n return model\nend","category":"page"},{"location":"tutorials/conic/logistic_regression/","page":"Example: logistic regression","title":"Example: logistic regression","text":"We generate the dataset.","category":"page"},{"location":"tutorials/conic/logistic_regression/","page":"Example: logistic regression","title":"Example: logistic regression","text":"warning: Warning\nBe careful here, for large n and p SCS could fail to converge.","category":"page"},{"location":"tutorials/conic/logistic_regression/","page":"Example: logistic regression","title":"Example: logistic regression","text":"n, p = 200, 10\nX, y = generate_dataset(n, p; shift = 10.0);\n\n# We could now solve the logistic regression problem\nλ = 10.0\nmodel = build_logit_model(X, y, λ)\nset_optimizer(model, SCS.Optimizer)\nset_silent(model)\noptimize!(model)\n@assert is_solved_and_feasible(model)","category":"page"},{"location":"tutorials/conic/logistic_regression/","page":"Example: logistic regression","title":"Example: logistic regression","text":"θ♯ = value.(model[:θ])","category":"page"},{"location":"tutorials/conic/logistic_regression/","page":"Example: logistic regression","title":"Example: logistic regression","text":"It appears that the speed of convergence is not that impacted by the correlation of the dataset, nor by the penalty lambda.","category":"page"},{"location":"tutorials/conic/logistic_regression/#\\ell_1-regularized-logistic-regression","page":"Example: logistic regression","title":"ell_1 regularized logistic regression","text":"","category":"section"},{"location":"tutorials/conic/logistic_regression/","page":"Example: logistic regression","title":"Example: logistic regression","text":"We now formulate the logistic problem with a ell_1 regularization term. The ell_1 regularization ensures sparsity in the optimal solution of the resulting optimization problem. Luckily, the ell_1 norm is implemented as a set in MathOptInterface. Thus, we could formulate the sparse logistic regression problem with the help of a MOI.NormOneCone set.","category":"page"},{"location":"tutorials/conic/logistic_regression/","page":"Example: logistic regression","title":"Example: logistic regression","text":"function build_sparse_logit_model(X, y, λ)\n n, p = size(X)\n model = Model()\n @variable(model, θ[1:p])\n @variable(model, t[1:n])\n for i in 1:n\n u = -(X[i, :]' * θ) * y[i]\n softplus(model, t[i], u)\n end\n # Add ℓ1 regularization\n @variable(model, 0.0 <= reg)\n @constraint(model, [reg; θ] in MOI.NormOneCone(p + 1))\n # Define objective\n @objective(model, Min, sum(t) + λ * reg)\n return model\nend\n\n# Auxiliary function to count non-null components:\ncount_nonzero(v::Vector; tol = 1e-6) = sum(abs.(v) .>= tol)\n\n# We solve the sparse logistic regression problem on the same dataset as before.\nλ = 10.0\nsparse_model = build_sparse_logit_model(X, y, λ)\nset_optimizer(sparse_model, SCS.Optimizer)\nset_silent(sparse_model)\noptimize!(sparse_model)\n@assert is_solved_and_feasible(sparse_model)","category":"page"},{"location":"tutorials/conic/logistic_regression/","page":"Example: logistic regression","title":"Example: logistic regression","text":"θ♯ = value.(sparse_model[:θ])\nprintln(\n \"Number of non-zero components: \",\n count_nonzero(θ♯),\n \" (out of \",\n p,\n \" features)\",\n)","category":"page"},{"location":"tutorials/conic/logistic_regression/#Extensions","page":"Example: logistic regression","title":"Extensions","text":"","category":"section"},{"location":"tutorials/conic/logistic_regression/","page":"Example: logistic regression","title":"Example: logistic regression","text":"A direct extension would be to consider the sparse logistic regression with hard thresholding, which, on contrary to the soft version using a ell_1 regularization, adds an explicit cardinality constraint in its formulation:","category":"page"},{"location":"tutorials/conic/logistic_regression/","page":"Example: logistic regression","title":"Example: logistic regression","text":"beginaligned\nmin_theta sum_i=1^n log(1 + exp(-y_i theta^top x_i)) + lambda theta _2^2 \ntextsubject to quad theta _0 = k\nendaligned","category":"page"},{"location":"tutorials/conic/logistic_regression/","page":"Example: logistic regression","title":"Example: logistic regression","text":"where k is the maximum number of non-zero components in the vector theta, and _0 is the ell_0 pseudo-norm:","category":"page"},{"location":"tutorials/conic/logistic_regression/","page":"Example: logistic regression","title":"Example: logistic regression","text":" x_0 = i x_i neq 0","category":"page"},{"location":"tutorials/conic/logistic_regression/","page":"Example: logistic regression","title":"Example: logistic regression","text":"The cardinality constraint theta_0 leq k could be reformulated with binary variables. Thus the hard sparse regression problem could be solved by any solver supporting mixed integer conic problems.","category":"page"},{"location":"moi/background/motivation/","page":"Motivation","title":"Motivation","text":"EditURL = \"https://github.com/jump-dev/MathOptInterface.jl/blob/v1.34.0/docs/src/background/motivation.md\"","category":"page"},{"location":"moi/background/motivation/#Motivation","page":"Motivation","title":"Motivation","text":"","category":"section"},{"location":"moi/background/motivation/","page":"Motivation","title":"Motivation","text":"MathOptInterface (MOI) is a replacement for MathProgBase, the first-generation abstraction layer for mathematical optimization previously used by JuMP and Convex.jl.","category":"page"},{"location":"moi/background/motivation/","page":"Motivation","title":"Motivation","text":"To address a number of limitations of MathProgBase, MOI is designed to:","category":"page"},{"location":"moi/background/motivation/","page":"Motivation","title":"Motivation","text":"Be simple and extensible\nunifying linear, quadratic, and conic optimization,\nseamlessly facilitating extensions to essentially arbitrary constraints and functions (for example, indicator constraints, complementarity constraints, and piecewise-linear functions)\nBe fast\nby allowing access to a solver's in-memory representation of a problem without writing intermediate files (when possible)\nby using multiple dispatch and avoiding requiring containers of non-concrete types\nAllow a solver to return multiple results (for example, a pool of solutions)\nAllow a solver to return extra arbitrary information via attributes (for example, variable- and constraint-wise membership in an irreducible inconsistent subset for infeasibility analysis)\nProvide a greatly expanded set of status codes explaining what happened during the optimization procedure\nEnable a solver to more precisely specify which problem classes it supports\nEnable both primal and dual warm starts\nEnable adding and removing both variables and constraints by indices that are not required to be consecutive\nEnable any modification that the solver supports to an existing model\nAvoid requiring the solver wrapper to store an additional copy of the problem data","category":"page"},{"location":"tutorials/conic/introduction/#Introduction","page":"Introduction","title":"Introduction","text":"","category":"section"},{"location":"tutorials/conic/introduction/","page":"Introduction","title":"Introduction","text":"Conic programs are a class of convex nonlinear optimization problems which use cones to represent the nonlinearities. They have the form:","category":"page"},{"location":"tutorials/conic/introduction/","page":"Introduction","title":"Introduction","text":"beginalign\n min_x in mathbbR^n f_0(x) \n textst f_j(x) in mathcalS_j j = 1 ldots m\nendalign","category":"page"},{"location":"tutorials/conic/introduction/","page":"Introduction","title":"Introduction","text":"Mixed-integer conic programs (MICPs) are extensions of conic programs in which some (or all) of the decision variables take discrete values.","category":"page"},{"location":"tutorials/conic/introduction/#How-to-choose-a-solver","page":"Introduction","title":"How to choose a solver","text":"","category":"section"},{"location":"tutorials/conic/introduction/","page":"Introduction","title":"Introduction","text":"JuMP supports a range of conic solvers, although support differs on what types of cones each solver supports. In the list of Supported solvers, \"SOCP\" denotes solvers supporting second-order cones and \"SDP\" denotes solvers supporting semidefinite cones. In addition, solvers such as SCS and Mosek have support for the exponential cone. Moreover, due to the bridging system in MathOptInterface, many of these solvers support a much wider range of exotic cones than they natively support. Solvers supporting discrete variables start with \"(MI)\" in the list of Supported solvers.","category":"page"},{"location":"tutorials/conic/introduction/","page":"Introduction","title":"Introduction","text":"tip: Tip\nDuality plays a large role in solving conic optimization models. Depending on the solver, it can be more efficient to solve the dual instead of the primal. If performance is an issue, see the Dualization tutorial for more details.","category":"page"},{"location":"tutorials/conic/introduction/#How-these-tutorials-are-structured","page":"Introduction","title":"How these tutorials are structured","text":"","category":"section"},{"location":"tutorials/conic/introduction/","page":"Introduction","title":"Introduction","text":"Having a high-level overview of how this part of the documentation is structured will help you know where to look for certain things.","category":"page"},{"location":"tutorials/conic/introduction/","page":"Introduction","title":"Introduction","text":"The following tutorials are worked examples that present a problem in words, then formulate it in mathematics, and then solve it in JuMP. This usually involves some sort of visualization of the solution. Start here if you are new to JuMP.\nExample: experiment design\nExample: logistic regression\nThe Modeling with cones tutorial contains a number of helpful reformulations and tricks you can use when modeling conic programs. Look here if you are stuck trying to formulate a problem as a conic program.\nThe remaining tutorials are less verbose and styled in the form of short code examples. These tutorials have less explanation, but may contain useful code snippets, particularly if they are similar to a problem you are trying to solve.","category":"page"},{"location":"moi/tutorials/manipulating_expressions/","page":"Manipulating expressions","title":"Manipulating expressions","text":"EditURL = \"https://github.com/jump-dev/MathOptInterface.jl/blob/v1.34.0/docs/src/tutorials/manipulating_expressions.md\"","category":"page"},{"location":"moi/tutorials/manipulating_expressions/","page":"Manipulating expressions","title":"Manipulating expressions","text":"CurrentModule = MathOptInterface\nDocTestSetup = quote\n import MathOptInterface as MOI\nend\nDocTestFilters = [r\"MathOptInterface|MOI\"]","category":"page"},{"location":"moi/tutorials/manipulating_expressions/#Manipulating-expressions","page":"Manipulating expressions","title":"Manipulating expressions","text":"","category":"section"},{"location":"moi/tutorials/manipulating_expressions/","page":"Manipulating expressions","title":"Manipulating expressions","text":"This guide highlights a syntactically appealing way to build expressions at the MOI level, but also to look at their contents. It may be especially useful when writing models or bridge code.","category":"page"},{"location":"moi/tutorials/manipulating_expressions/#Creating-functions","page":"Manipulating expressions","title":"Creating functions","text":"","category":"section"},{"location":"moi/tutorials/manipulating_expressions/","page":"Manipulating expressions","title":"Manipulating expressions","text":"This section details the ways to create functions with MathOptInterface.","category":"page"},{"location":"moi/tutorials/manipulating_expressions/#Creating-scalar-affine-functions","page":"Manipulating expressions","title":"Creating scalar affine functions","text":"","category":"section"},{"location":"moi/tutorials/manipulating_expressions/","page":"Manipulating expressions","title":"Manipulating expressions","text":"The simplest scalar function is simply a variable:","category":"page"},{"location":"moi/tutorials/manipulating_expressions/","page":"Manipulating expressions","title":"Manipulating expressions","text":"julia> x = MOI.add_variable(model) # Create the variable x\nMOI.VariableIndex(1)","category":"page"},{"location":"moi/tutorials/manipulating_expressions/","page":"Manipulating expressions","title":"Manipulating expressions","text":"This type of function is extremely simple; to express more complex functions, other types must be used. For instance, a ScalarAffineFunction is a sum of linear terms (a factor times a variable) and a constant. Such an object can be built using the standard constructor:","category":"page"},{"location":"moi/tutorials/manipulating_expressions/","page":"Manipulating expressions","title":"Manipulating expressions","text":"julia> f = MOI.ScalarAffineFunction([MOI.ScalarAffineTerm(1, x)], 2) # x + 2\n(2) + (1) MOI.VariableIndex(1)","category":"page"},{"location":"moi/tutorials/manipulating_expressions/","page":"Manipulating expressions","title":"Manipulating expressions","text":"However, you can also use operators to build the same scalar function:","category":"page"},{"location":"moi/tutorials/manipulating_expressions/","page":"Manipulating expressions","title":"Manipulating expressions","text":"julia> f = x + 2\n(2) + (1) MOI.VariableIndex(1)","category":"page"},{"location":"moi/tutorials/manipulating_expressions/#Creating-scalar-quadratic-functions","page":"Manipulating expressions","title":"Creating scalar quadratic functions","text":"","category":"section"},{"location":"moi/tutorials/manipulating_expressions/","page":"Manipulating expressions","title":"Manipulating expressions","text":"Scalar quadratic functions are stored in ScalarQuadraticFunction objects, in a way that is highly similar to scalar affine functions. You can obtain a quadratic function as a product of affine functions:","category":"page"},{"location":"moi/tutorials/manipulating_expressions/","page":"Manipulating expressions","title":"Manipulating expressions","text":"julia> 1 * x * x\n(0) + 1.0 MOI.VariableIndex(1)²\n\njulia> f * f # (x + 2)²\n(4) + (2) MOI.VariableIndex(1) + (2) MOI.VariableIndex(1) + 1.0 MOI.VariableIndex(1)²\n\njulia> f^2 # (x + 2)² too\n(4) + (2) MOI.VariableIndex(1) + (2) MOI.VariableIndex(1) + 1.0 MOI.VariableIndex(1)²","category":"page"},{"location":"moi/tutorials/manipulating_expressions/#Creating-vector-functions","page":"Manipulating expressions","title":"Creating vector functions","text":"","category":"section"},{"location":"moi/tutorials/manipulating_expressions/","page":"Manipulating expressions","title":"Manipulating expressions","text":"A vector function is a function with several values, irrespective of the number of input variables. Similarly to scalar functions, there are three main types of vector functions: VectorOfVariables, VectorAffineFunction, and VectorQuadraticFunction.","category":"page"},{"location":"moi/tutorials/manipulating_expressions/","page":"Manipulating expressions","title":"Manipulating expressions","text":"The easiest way to create a vector function is to stack several scalar functions using Utilities.vectorize. It takes a vector as input, and the generated vector function (of the most appropriate type) has each dimension corresponding to a dimension of the vector.","category":"page"},{"location":"moi/tutorials/manipulating_expressions/","page":"Manipulating expressions","title":"Manipulating expressions","text":"julia> g = MOI.Utilities.vectorize([f, 2 * f])\n┌ ┐\n│(2) + (1) MOI.VariableIndex(1)│\n│(4) + (2) MOI.VariableIndex(1)│\n└ ┘","category":"page"},{"location":"moi/tutorials/manipulating_expressions/","page":"Manipulating expressions","title":"Manipulating expressions","text":"warning: Warning\nUtilities.vectorize only takes a vector of similar scalar functions: you cannot mix VariableIndex and ScalarAffineFunction, for instance. In practice, it means that Utilities.vectorize([x, f]) does not work; you should rather use Utilities.vectorize([1 * x, f]) instead to only have ScalarAffineFunction objects.","category":"page"},{"location":"moi/tutorials/manipulating_expressions/#Canonicalizing-functions","page":"Manipulating expressions","title":"Canonicalizing functions","text":"","category":"section"},{"location":"moi/tutorials/manipulating_expressions/","page":"Manipulating expressions","title":"Manipulating expressions","text":"In more advanced use cases, you might need to ensure that a function is \"canonical.\" Functions are stored as an array of terms, but there is no check that these terms are redundant: a ScalarAffineFunction object might have two terms with the same variable, like x + x + 1. These terms could be merged without changing the semantics of the function: 2x + 1.","category":"page"},{"location":"moi/tutorials/manipulating_expressions/","page":"Manipulating expressions","title":"Manipulating expressions","text":"Working with these objects might be cumbersome. Canonicalization helps maintain redundancy to zero.","category":"page"},{"location":"moi/tutorials/manipulating_expressions/","page":"Manipulating expressions","title":"Manipulating expressions","text":"Utilities.is_canonical checks whether a function is already in its canonical form:","category":"page"},{"location":"moi/tutorials/manipulating_expressions/","page":"Manipulating expressions","title":"Manipulating expressions","text":"julia> MOI.Utilities.is_canonical(f + f) # (x + 2) + (x + 2) is stored as x + x + 4\nfalse","category":"page"},{"location":"moi/tutorials/manipulating_expressions/","page":"Manipulating expressions","title":"Manipulating expressions","text":"Utilities.canonical returns the equivalent canonical version of the function:","category":"page"},{"location":"moi/tutorials/manipulating_expressions/","page":"Manipulating expressions","title":"Manipulating expressions","text":"julia> MOI.Utilities.canonical(f + f) # Returns 2x + 4\n(4) + (2) MOI.VariableIndex(1)","category":"page"},{"location":"moi/tutorials/manipulating_expressions/#Exploring-functions","page":"Manipulating expressions","title":"Exploring functions","text":"","category":"section"},{"location":"moi/tutorials/manipulating_expressions/","page":"Manipulating expressions","title":"Manipulating expressions","text":"At some point, you might need to dig into a function, for instance to map it into solver constructs.","category":"page"},{"location":"moi/tutorials/manipulating_expressions/#Vector-functions","page":"Manipulating expressions","title":"Vector functions","text":"","category":"section"},{"location":"moi/tutorials/manipulating_expressions/","page":"Manipulating expressions","title":"Manipulating expressions","text":"Utilities.scalarize returns a vector of scalar functions from a vector function:","category":"page"},{"location":"moi/tutorials/manipulating_expressions/","page":"Manipulating expressions","title":"Manipulating expressions","text":"julia> MOI.Utilities.scalarize(g) # Returns a vector [f, 2 * f].\n2-element Vector{MathOptInterface.ScalarAffineFunction{Int64}}:\n (2) + (1) MOI.VariableIndex(1)\n (4) + (2) MOI.VariableIndex(1)","category":"page"},{"location":"moi/tutorials/manipulating_expressions/","page":"Manipulating expressions","title":"Manipulating expressions","text":"note: Note\nUtilities.eachscalar returns an iterator on the dimensions, which serves the same purpose as Utilities.scalarize.","category":"page"},{"location":"moi/tutorials/manipulating_expressions/","page":"Manipulating expressions","title":"Manipulating expressions","text":"output_dimension returns the number of dimensions of the output of a function:","category":"page"},{"location":"moi/tutorials/manipulating_expressions/","page":"Manipulating expressions","title":"Manipulating expressions","text":"julia> MOI.output_dimension(g)\n2","category":"page"},{"location":"packages/MosekTools/","page":"jump-dev/MosekTools.jl","title":"jump-dev/MosekTools.jl","text":"EditURL = \"https://github.com/jump-dev/MosekTools.jl/blob/v0.15.1/README.md\"","category":"page"},{"location":"packages/MosekTools/#MosekTools.jl","page":"jump-dev/MosekTools.jl","title":"MosekTools.jl","text":"","category":"section"},{"location":"packages/MosekTools/","page":"jump-dev/MosekTools.jl","title":"jump-dev/MosekTools.jl","text":"MosekTools.jl is the MathOptInterface.jl implementation for the MOSEK solver.","category":"page"},{"location":"packages/MosekTools/","page":"jump-dev/MosekTools.jl","title":"jump-dev/MosekTools.jl","text":"The low-level solver API for MOSEK is found in the package Mosek.jl.","category":"page"},{"location":"packages/MosekTools/#Affiliation","page":"jump-dev/MosekTools.jl","title":"Affiliation","text":"","category":"section"},{"location":"packages/MosekTools/","page":"jump-dev/MosekTools.jl","title":"jump-dev/MosekTools.jl","text":"MosekTools.jl is maintained by the JuMP community and is not officially supported by MOSEK. However, Mosek.jl is an officially supported product of MOSEK.","category":"page"},{"location":"packages/MosekTools/#License","page":"jump-dev/MosekTools.jl","title":"License","text":"","category":"section"},{"location":"packages/MosekTools/","page":"jump-dev/MosekTools.jl","title":"jump-dev/MosekTools.jl","text":"MosekTools.jl is licensed under the MIT License.","category":"page"},{"location":"packages/MosekTools/","page":"jump-dev/MosekTools.jl","title":"jump-dev/MosekTools.jl","text":"The underlying solver is a closed-source commercial product for which you must obtain a license.","category":"page"},{"location":"packages/MosekTools/#Installation","page":"jump-dev/MosekTools.jl","title":"Installation","text":"","category":"section"},{"location":"packages/MosekTools/","page":"jump-dev/MosekTools.jl","title":"jump-dev/MosekTools.jl","text":"The latest release of this package and the master branch are to be used with the latest release of Mosek.jl (which uses MOSEK v10).","category":"page"},{"location":"packages/MosekTools/","page":"jump-dev/MosekTools.jl","title":"jump-dev/MosekTools.jl","text":"To use MOSEK v9 (resp. v8), use the v0.12.x (resp. v0.7.x) releases of this package, and the mosekv9 (resp. mosekv8) branch and v1.2.x (resp. v0.9.x) releases of Mosek.jl.","category":"page"},{"location":"packages/MosekTools/","page":"jump-dev/MosekTools.jl","title":"jump-dev/MosekTools.jl","text":"See the following table for a summary:","category":"page"},{"location":"packages/MosekTools/","page":"jump-dev/MosekTools.jl","title":"jump-dev/MosekTools.jl","text":"MOSEK Mosek.jl MosekTools.jl release MosekTools.jl branch\nv10 v10 v0.13 master\nv9 v0.12 v0.12 mosekv9\nv8 v0.9 v0.7 mosekv8","category":"page"},{"location":"packages/MosekTools/#Use-with-JuMP","page":"jump-dev/MosekTools.jl","title":"Use with JuMP","text":"","category":"section"},{"location":"packages/MosekTools/","page":"jump-dev/MosekTools.jl","title":"jump-dev/MosekTools.jl","text":"using JuMP\nusing MosekTools\nmodel = Model(Mosek.Optimizer)\nset_attribute(model, \"QUIET\", true)\nset_attribute(model, \"INTPNT_CO_TOL_DFEAS\", 1e-7)","category":"page"},{"location":"packages/MosekTools/#Options","page":"jump-dev/MosekTools.jl","title":"Options","text":"","category":"section"},{"location":"packages/MosekTools/","page":"jump-dev/MosekTools.jl","title":"jump-dev/MosekTools.jl","text":"The parameter QUIET is a special parameter that when set to true disables all Mosek printing output.","category":"page"},{"location":"packages/MosekTools/","page":"jump-dev/MosekTools.jl","title":"jump-dev/MosekTools.jl","text":"All other parameters can be found in the Mosek documentation.","category":"page"},{"location":"packages/MosekTools/","page":"jump-dev/MosekTools.jl","title":"jump-dev/MosekTools.jl","text":"Note that the prefix MSK_IPAR_ (for integer parameters), MSK_DPAR_ (for floating point parameters) or MSK_SPAR_ (for string parameters) are optional. If they are not given, they are inferred from the type of the value. For example, in the example above, as 1e-7 is a floating point number, the parameters name used is MSK_DPAR_INTPNT_CO_TOL_DFEAS.","category":"page"},{"location":"developers/style/#Style-guide-and-design-principles","page":"Style Guide","title":"Style guide and design principles","text":"","category":"section"},{"location":"developers/style/#Style-guide","page":"Style Guide","title":"Style guide","text":"","category":"section"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"This section describes the coding style rules that apply to JuMP code and that we recommend for JuMP models and surrounding Julia code. The motivations for a style guide include:","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"conveying best practices for writing readable and maintainable code\nreducing the amount of time spent on bike-shedding by establishing basic naming and formatting conventions\nlowering the barrier for new contributors by codifying the existing practices (for example, you can be more confident your code will pass review if you follow the style guide)","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"In some cases, the JuMP style guide diverges from the Julia style guide. All such cases will be explicitly noted and justified.","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"The JuMP style guide adopts many recommendations from the Google style guides.","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"info: Info\nThe style guide is always a work in progress, and not all JuMP code follows the rules. When modifying JuMP, please fix the style violations of the surrounding code (that is, leave the code tidier than when you started). If large changes are needed, consider separating them into another PR.","category":"page"},{"location":"developers/style/#JuliaFormatter","page":"Style Guide","title":"JuliaFormatter","text":"","category":"section"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"JuMP uses JuliaFormatter.jl as an auto-formatting tool.","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"We use the options contained in .JuliaFormatter.toml.","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"To format code, cd to the JuMP directory, then run:","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"] add JuliaFormatter@1\nusing JuliaFormatter\nformat(\"docs\")\nformat(\"src\")\nformat(\"test\")","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"info: Info\nA continuous integration check verifies that all PRs made to JuMP have passed the formatter.","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"The following sections outline extra style guide points that are not fixed automatically by JuliaFormatter.","category":"page"},{"location":"developers/style/#Abstract-types-and-composition","page":"Style Guide","title":"Abstract types and composition","text":"","category":"section"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"Specifying types for method arguments is mostly optional in Julia. The benefit of abstract method arguments is that it enables functions and types from one package to be used with functions and types from another package via multiple dispatch.","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"However, abstractly typed methods have two main drawbacks:","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"It's possible to find out that you are working with unexpected types deep in the call chain, potentially leading to hard-to-diagnose MethodErrors.\nUntyped function arguments can lead to correctness problems if the user's choice of input type does not satisfy the assumptions made by the author of the function.","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"As a motivating example, consider the following function:","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"julia> function my_sum(x)\n y = 0.0\n for i in 1:length(x)\n y += x[i]\n end\n return y\n end\nmy_sum (generic function with 1 method)","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"This function contains a number of implicit assumptions about the type of x:","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"x supports 1-based getindex and implements length\nThe element type of x supports addition with 0.0, and then with the result of x + 0.0.","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"info: Info\nAs a motivating example for the second point, VariableRef plus Float64 produces an AffExpr. Do not assume that +(::A, ::B) produces an instance of the type A or B.","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"my_sum works as expected if the user passes in Vector{Float64}:","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"julia> my_sum([1.0, 2.0, 3.0])\n6.0","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"but it doesn't respect input types, for example returning a Float64 if the user passes Vector{Int}:","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"julia> my_sum([1, 2, 3])\n6.0","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"but it throws a MethodError if the user passes String:","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"julia> my_sum(\"abc\")\nERROR: MethodError: no method matching +(::Float64, ::Char)\n[...]","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"This particular MethodError is hard to debug, particularly for new users, because it mentions +, Float64, and Char, none of which were called or passed by the user.","category":"page"},{"location":"developers/style/#Dealing-with-MethodErrors","page":"Style Guide","title":"Dealing with MethodErrors","text":"","category":"section"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"This section diverges from the Julia style guide, as well as other common guides like SciML. The following suggestions are intended to provide a friendlier experience for novice Julia programmers, at the cost of limiting the power and flexibility of advanced Julia programmers.","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"Code should follow the MethodError principle:","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"info: The MethodError principle\nA user should see a MethodError only for methods that they called directly.","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"Bad:","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"_internal_function(x::Integer) = x + 1\n# The user sees a MethodError for _internal_function when calling\n# public_function(\"a string\"). This is not very helpful.\npublic_function(x) = _internal_function(x)","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"Good:","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"_internal_function(x::Integer) = x + 1\n# The user sees a MethodError for public_function when calling\n# public_function(\"a string\"). This is easy to understand.\npublic_function(x::Integer) = _internal_function(x)","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"If it is hard to provide an error message at the top of the call chain, then the following pattern is also ok:","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"_internal_function(x::Integer) = x + 1\nfunction _internal_function(x)\n error(\n \"Internal error. This probably means that you called \" *\n \"`public_function()`s with the wrong type.\",\n )\nend\npublic_function(x) = _internal_function(x)","category":"page"},{"location":"developers/style/#Dealing-with-correctness","page":"Style Guide","title":"Dealing with correctness","text":"","category":"section"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"Dealing with correctness is harder, because Julia has no way of formally specifying interfaces that abstract types must implement. Instead, here are two options that you can use when writing and interacting with generic code:","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"Option 1: use concrete types and let users extend new methods.","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"In this option, explicitly restrict input arguments to concrete types that are tested and have been validated for correctness. For example:","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"julia> function my_sum_option_1(x::Vector{Float64})\n y = 0.0\n for i in 1:length(x)\n y += x[i]\n end\n return y\n end\nmy_sum_option_1 (generic function with 1 method)\n\njulia> my_sum_option_1([1.0, 2.0, 3.0])\n6.0","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"Using concrete types satisfies the MethodError principle:","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"julia> my_sum_option_1(\"abc\")\nERROR: MethodError: no method matching my_sum_option_1(::String)","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"and it allows other types to be supported in future by defining new methods:","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"julia> function my_sum_option_1(x::Array{T,N}) where {T<:Number,N}\n y = zero(T)\n for i in eachindex(x)\n y += x[i]\n end\n return y\n end\nmy_sum_option_1 (generic function with 2 methods)","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"Importantly, these methods do not have to be defined in the original package.","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"info: Info\nSome usage of abstract types is okay. For example, in my_sum_option_1, we allowed the element type, T, to be a subtype of Number. This is fairly safe, but it still has an implicit assumption that T supports zero(T) and +(::T, ::T).","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"Option 2: program defensively, and validate all assumptions.","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"An alternative is to program defensively, and to rigorously document and validate all assumptions that the code makes. In particular:","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"All assumptions on abstract types that aren't guaranteed by the definition of the abstract type (for example, optional methods without a fallback) should be documented.\nIf practical, the assumptions should be checked in code, and informative error messages should be provided to the user if the assumptions are not met. In general, these checks may be expensive, so you should prefer to do this once, at the highest level of the call-chain.\nTests should cover for a range of corner cases and argument types.","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"For example:","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"\"\"\"\n test_my_sum_defensive_assumptions(x::AbstractArray{T}) where {T}\n\nTest the assumptions made by `my_sum_defensive`.\n\"\"\"\nfunction test_my_sum_defensive_assumptions(x::AbstractArray{T}) where {T}\n try\n # Some types may not define zero.\n @assert zero(T) isa T\n # Check iteration supported\n @assert iterate(x) isa Union{Nothing,Tuple{T,Int}}\n # Check that + is defined\n @assert +(zero(T), zero(T)) isa Any\n catch err\n error(\n \"Unable to call my_sum_defensive(::$(typeof(x))) because \" *\n \"it failed an internal assumption\",\n )\n end\n return\nend\n\n\"\"\"\n my_sum_defensive(x::AbstractArray{T}) where {T}\n\nReturn the sum of the elements in the abstract array `x`.\n\n## Assumptions\n\nThis function makes the following assumptions:\n\n * That `zero(T)` is defined\n * That `x` supports the iteration interface\n * That `+(::T, ::T)` is defined\n\"\"\"\nfunction my_sum_defensive(x::AbstractArray{T}) where {T}\n test_my_sum_defensive_assumptions(x)\n y = zero(T)\n for xi in x\n y += xi\n end\n return y\nend\n\n# output\n\nmy_sum_defensive","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"This function works on Vector{Float64}:","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"julia> my_sum_defensive([1.0, 2.0, 3.0])\n6.0","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"as well as Matrix{Rational{Int}}:","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"julia> my_sum_defensive([(1//2) + (4//3)im; (6//5) + (7//11)im])\n17//10 + 65//33*im","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"and it throws an error when the assumptions aren't met:","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"julia> my_sum_defensive(['a', 'b', 'c'])\nERROR: Unable to call my_sum_defensive(::Vector{Char}) because it failed an internal assumption\n[...]","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"As an alternative, you may choose not to call test_my_sum_defensive_assumptions within my_sum_defensive, and instead ask users of my_sum_defensive to call it in their tests.","category":"page"},{"location":"developers/style/#Juxtaposed-multiplication","page":"Style Guide","title":"Juxtaposed multiplication","text":"","category":"section"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"Only use juxtaposed multiplication when the right-hand side is a symbol.","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"Good:","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"2x # Acceptable if there are space constraints.\n2 * x # This is preferred if space is not an issue.\n2 * (x + 1)","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"Bad:","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"2(x + 1)","category":"page"},{"location":"developers/style/#Empty-vectors","page":"Style Guide","title":"Empty vectors","text":"","category":"section"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"For a type T, T[] and Vector{T}() are equivalent ways to create an empty vector with element type T. Prefer T[] because it is more concise.","category":"page"},{"location":"developers/style/#Comments","page":"Style Guide","title":"Comments","text":"","category":"section"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"For non-native speakers and for general clarity, comments in code must be proper English sentences with appropriate punctuation.","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"Good:","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"# This is a comment demonstrating a good comment.","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"Bad:","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"# a bad comment","category":"page"},{"location":"developers/style/#JuMP-macro-syntax","page":"Style Guide","title":"JuMP macro syntax","text":"","category":"section"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"For consistency, always use parentheses.","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"Good:","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"@variable(model, x >= 0)","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"Bad:","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"@variable model x >= 0","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"For consistency, always use constant * variable as opposed to variable * constant. This makes it easier to read models in ambiguous cases like a * x.","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"Good:","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"a = 4\n@constraint(model, 3 * x <= 1)\n@constraint(model, a * x <= 1)","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"Bad:","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"a = 4\n@constraint(model, x * 3 <= 1)\n@constraint(model, x * a <= 1)","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"In order to reduce boilerplate code, prefer the plural form of macros over lots of repeated calls to singular forms.","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"Good:","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"@variables(model, begin\n x >= 0\n y >= 1\n z <= 2\nend)","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"Bad:","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"@variable(model, x >= 0)\n@variable(model, y >= 1)\n@variable(model, z <= 2)","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"An exception is made for calls with many keyword arguments, since these need to be enclosed in parentheses in order to parse properly.","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"Acceptable:","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"@variable(model, x >= 0, start = 0.0, base_name = \"my_x\")\n@variable(model, y >= 1, start = 2.0)\n@variable(model, z <= 2, start = -1.0)","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"Also acceptable:","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"@variables(model, begin\n x >= 0, (start = 0.0, base_name = \"my_x\")\n y >= 1, (start = 2.0)\n z <= 2, (start = -1.0)\nend)","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"While we always use in for for-loops, it is acceptable to use = in the container declarations of JuMP macros.","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"Okay:","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"@variable(model, x[i=1:3])","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"Also okay:","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"@variable(model, x[i in 1:3])","category":"page"},{"location":"developers/style/#Naming","page":"Style Guide","title":"Naming","text":"","category":"section"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"module SomeModule end\nfunction some_function end\nconst SOME_CONSTANT = ...\nstruct SomeStruct\n some_field::SomeType\nend\n@enum SomeEnum ENUM_VALUE_A ENUM_VALUE_B\nsome_local_variable = ...\nsome_file.jl # Except for ModuleName.jl.","category":"page"},{"location":"developers/style/#Exported-and-non-exported-names","page":"Style Guide","title":"Exported and non-exported names","text":"","category":"section"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"Begin private module level functions and constants with an underscore. All other objects in the scope of a module should be exported. (See JuMP.jl for an example of how to do this.)","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"Names beginning with an underscore should only be used for distinguishing between exported (public) and non-exported (private) objects. Therefore, never begin the name of a local variable with an underscore.","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"module MyModule\n\nexport public_function, PUBLIC_CONSTANT\n\nfunction _private_function()\n local_variable = 1\n return\nend\n\nfunction public_function end\n\nconst _PRIVATE_CONSTANT = 3.14159\nconst PUBLIC_CONSTANT = 1.41421\n\nend","category":"page"},{"location":"developers/style/#Use-of-underscores-within-names","page":"Style Guide","title":"Use of underscores within names","text":"","category":"section"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"The Julia style guide recommends avoiding underscores \"when readable,\" for example, haskey, isequal, remotecall, and remotecall_fetch. This convention creates the potential for unnecessary bikeshedding and also forces the user to recall the presence/absence of an underscore, for example, \"was that argument named basename or base_name?\". For consistency, always use underscores in variable names and function names to separate words.","category":"page"},{"location":"developers/style/#Use-of-!","page":"Style Guide","title":"Use of !","text":"","category":"section"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"Julia has a convention of appending ! to a function name if the function modifies its arguments. We recommend to:","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"Omit ! when the name itself makes it clear that modification is taking place, for example, add_constraint and set_name. We depart from the Julia style guide because ! does not provide a reader with any additional information in this case, and adherence to this convention is not uniform even in base Julia itself (consider Base.println and Base.finalize).\nUse ! in all other cases. In particular it can be used to distinguish between modifying and non-modifying variants of the same function like scale and scale!.","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"Note that ! is not a self-documenting feature because it is still ambiguous which arguments are modified when multiple arguments are present. Be sure to document which arguments are modified in the method's docstring.","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"See also the Julia style guide recommendations for ordering of function arguments.","category":"page"},{"location":"developers/style/#Abbreviations","page":"Style Guide","title":"Abbreviations","text":"","category":"section"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"Abbreviate names to make the code more readable, not to save typing. Don't arbitrarily delete letters from a word to abbreviate it (for example, indx). Use abbreviations consistently within a body of code (for example, do not mix con and constr, idx and indx).","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"Common abbreviations:","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"num for number\ncon for constraint","category":"page"},{"location":"developers/style/#No-one-letter-variable-names","page":"Style Guide","title":"No one-letter variable names","text":"","category":"section"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"Where possible, avoid one-letter variable names.","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"Use model = Model() instead of m = Model()","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"Exceptions are made for indices in loops.","category":"page"},{"location":"developers/style/#@enum-vs.-Symbol","page":"Style Guide","title":"@enum vs. Symbol","text":"","category":"section"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"The @enum macro lets you define types with a finite number of values that are explicitly enumerated (like enum in C/C++). Symbols are lightweight strings that are used to represent identifiers in Julia (for example, :x).","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"@enum provides type safety and can have docstrings attached to explain the possible values. Use @enums when applicable, for example, for reporting statuses. Use strings to provide long-form additional information like error messages.","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"Use of Symbol should typically be reserved for identifiers, for example, for lookup in the JuMP model (model[:my_variable]).","category":"page"},{"location":"developers/style/#using-vs.-import","page":"Style Guide","title":"using vs. import","text":"","category":"section"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"using ModuleName brings all symbols exported by the module ModuleName into scope, while import ModuleName brings only the module itself into scope. (See the Julia manual) for examples and more details.","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"For the same reason that from import * is not recommended in python (PEP 8), avoid using ModuleName except in throw-away scripts or at the REPL. The using statement makes it harder to track where symbols come from and exposes the code to ambiguities when two modules export the same symbol.","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"Prefer using ModuleName: x, p to import ModuleName.x, ModuleName.p and import MyModule: x, p because the import versions allow method extension without qualifying with the module name.","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"Similarly, using ModuleName: ModuleName is an acceptable substitute for import ModuleName, because it does not bring all symbols exported by ModuleName into scope. However, we prefer import ModuleName for consistency.","category":"page"},{"location":"developers/style/#Documentation","page":"Style Guide","title":"Documentation","text":"","category":"section"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"This section describes the writing style that should be used when writing documentation for JuMP (and supporting packages).","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"We can recommend the documentation style guides by Divio, Google, and Write the Docs as general reading for those writing documentation. This guide delegates a thorough handling of the topic to those guides and instead elaborates on the points more specific to Julia and documentation that use Documenter.","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"Be concise\nUse lists instead of long sentences\nUse numbered lists when describing a sequence, for example, (1) do X, (2) then Y\nUse bullet points when the items are not ordered\nExample code should be covered by doctests\nWhen a word is a Julia symbol and not an English word, enclose it with backticks. In addition, if it has a docstring in this doc add a link using @ref. If it is a plural, add the \"s\" after the closing backtick. For example,\n[`VariableRef`](@ref)s\nUse @meta blocks for TODOs and other comments that shouldn't be visible to readers. For example,\n```@meta\n# TODO: Mention also X, Y, and Z.\n```","category":"page"},{"location":"developers/style/#Docstrings","page":"Style Guide","title":"Docstrings","text":"","category":"section"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"Every exported object needs a docstring\nAll examples in docstrings should be jldoctests\nAlways use complete English sentences with proper punctuation\nDo not terminate lists with punctuation (for example, as in this doc)","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"Here is an example:","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"\"\"\"\n signature(args; kwargs...)\n\nShort sentence describing the function.\n\nOptional: add a slightly longer paragraph describing the function.\n\n## Notes\n\n - List any notes that the user should be aware of\n\n## Example\n\n```jldoctest\njulia> 1 + 1\n2\n```\n\"\"\"","category":"page"},{"location":"developers/style/#Testing","page":"Style Guide","title":"Testing","text":"","category":"section"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"Use a module to encapsulate tests, and structure all tests as functions. This avoids leaking local variables between tests.","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"Here is a basic skeleton:","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"module TestPkg\n\nusing Test\n\nfunction runtests()\n for name in names(@__MODULE__; all = true)\n if startswith(\"$(name)\", \"test_\")\n @testset \"$(name)\" begin\n getfield(@__MODULE__, name)()\n end\n end\n end\n return\nend\n\n_helper_function() = 2\n\nfunction test_addition()\n @test 1 + 1 == _helper_function()\n return\nend\n\nend # module TestPkg\n\nTestPkg.runtests()","category":"page"},{"location":"developers/style/","page":"Style Guide","title":"Style Guide","text":"Break the tests into multiple files, with one module per file, so that subsets of the codebase can be tested by calling include with the relevant file.","category":"page"},{"location":"moi/submodules/Bridges/implementation/","page":"Implementation","title":"Implementation","text":"EditURL = \"https://github.com/jump-dev/MathOptInterface.jl/blob/v1.34.0/docs/src/submodules/Bridges/implementation.md\"","category":"page"},{"location":"moi/submodules/Bridges/implementation/","page":"Implementation","title":"Implementation","text":"CurrentModule = MathOptInterface\nDocTestSetup = quote\n import MathOptInterface as MOI\nend\nDocTestFilters = [r\"MathOptInterface|MOI\"]","category":"page"},{"location":"moi/submodules/Bridges/implementation/#Implementing-a-bridge","page":"Implementation","title":"Implementing a bridge","text":"","category":"section"},{"location":"moi/submodules/Bridges/implementation/","page":"Implementation","title":"Implementation","text":"The easiest way to implement a bridge is to follow an existing example. There are three locations of bridges in the source code:","category":"page"},{"location":"moi/submodules/Bridges/implementation/","page":"Implementation","title":"Implementation","text":"Constraint bridges are stored in src/Bridges/Constraint/bridges\nObjective bridges are stored in src/Bridges/Objective/bridges\nVariable bridges are stored in src/Bridges/Variable/bridges","category":"page"},{"location":"moi/submodules/Bridges/implementation/","page":"Implementation","title":"Implementation","text":"The Implementing a constraint bridge tutorial has a more detailed guide on what is required to implement a bridge.","category":"page"},{"location":"moi/submodules/Bridges/implementation/","page":"Implementation","title":"Implementation","text":"When opening a pull request that adds a new bridge, use the checklist Adding a new bridge.","category":"page"},{"location":"moi/submodules/Bridges/implementation/","page":"Implementation","title":"Implementation","text":"If you need help or advice, please contact the Developer Chatroom.","category":"page"},{"location":"moi/submodules/Bridges/implementation/#SetMap-bridges","page":"Implementation","title":"SetMap bridges","text":"","category":"section"},{"location":"moi/submodules/Bridges/implementation/","page":"Implementation","title":"Implementation","text":"For constraint and variable bridges, a common reformulation is that f(x) in F is reformulated to g(x) in G. In this case, no additional variables and constraints are added, and the bridge needs only a way to map between the functions f and g and the sets F and G.","category":"page"},{"location":"moi/submodules/Bridges/implementation/","page":"Implementation","title":"Implementation","text":"To implementation a bridge of this form, subtype the abstract type Bridges.Constraint.SetMapBridge or Bridges.Variable.SetMapBridge and implement the API described in the docstring of each type.","category":"page"},{"location":"moi/submodules/Bridges/implementation/#final_touch","page":"Implementation","title":"final_touch","text":"","category":"section"},{"location":"moi/submodules/Bridges/implementation/","page":"Implementation","title":"Implementation","text":"Some bridges require information from other parts of the model. One set of examples are the various combinatorial ToMILP bridges, such as Bridges.Constraint.SOS1ToMILPBridge, which require knowledge of the variable bounds.","category":"page"},{"location":"moi/submodules/Bridges/implementation/","page":"Implementation","title":"Implementation","text":"Bridges requiring information from other parts of the model should implement Bridges.final_touch and Bridges.needs_final_touch.","category":"page"},{"location":"moi/submodules/Bridges/implementation/","page":"Implementation","title":"Implementation","text":"During the bridge's construction, store the function and set and make no changes to the underlying model. Then, in Bridges.final_touch, query the additional information and add the reformulated problem to the model.","category":"page"},{"location":"moi/submodules/Bridges/implementation/","page":"Implementation","title":"Implementation","text":"When implementing, you must consider that:","category":"page"},{"location":"moi/submodules/Bridges/implementation/","page":"Implementation","title":"Implementation","text":"Bridges.final_touch may be called multiple times, so that your reformulation should be applied only if necessary. Sometimes the additional data will be the same, and sometimes it may be different.\nWe do not currently support final_touch bridges that introduce constraints which also require a final_touch bridge. Therefore, you should implement final_touch only if necessary, and we recommend that you contact the Developer Chatroom for advice before doing so.","category":"page"},{"location":"moi/submodules/Bridges/implementation/#Testing","page":"Implementation","title":"Testing","text":"","category":"section"},{"location":"moi/submodules/Bridges/implementation/","page":"Implementation","title":"Implementation","text":"Use the Bridges.runtests function to test a bridge. It takes three arguments: the type of the bridge, the input model as a string, and the output model as a string.","category":"page"},{"location":"moi/submodules/Bridges/implementation/","page":"Implementation","title":"Implementation","text":"Here is an example:","category":"page"},{"location":"moi/submodules/Bridges/implementation/","page":"Implementation","title":"Implementation","text":"julia> MOI.Bridges.runtests(\n MOI.Bridges.Constraint.GreaterToLessBridge,\n \"\"\"\n variables: x\n x >= 1.0\n \"\"\",\n \"\"\"\n variables: x\n -1.0 * x <= -1.0\n \"\"\",\n )","category":"page"},{"location":"moi/submodules/Bridges/implementation/","page":"Implementation","title":"Implementation","text":"There are a number of other useful keyword arguments.","category":"page"},{"location":"moi/submodules/Bridges/implementation/","page":"Implementation","title":"Implementation","text":"eltype can be used to specify the element type of the model (and bridge). It defaults to Float64.\nvariable_start and constraint_start are used as the values to set the VariablePrimalStart and ConstraintPrimalStart attributes to. They default to 1.2. If you use a different eltype, you must set appropriate starting values of the same type. The default 1.2 was chosen to minimize the risk that the starting point is undefined, which could happen for common situations like 0.0 and 1.0. The tests associated with the starting values do not necessarily check for correctness, only that they can be set and get to produce the same result.\nprint_inner_model can be used to print the reformulated output model from the bridge. This is especially helpful during debugging to see what the bridge is doing, and to spot mistakes. It defaults to false.","category":"page"},{"location":"moi/submodules/Bridges/implementation/","page":"Implementation","title":"Implementation","text":"Here is an example:","category":"page"},{"location":"moi/submodules/Bridges/implementation/","page":"Implementation","title":"Implementation","text":"julia> MOI.Bridges.runtests(\n MOI.Bridges.Constraint.GreaterToLessBridge,\n \"\"\"\n variables: x\n x >= 1\n \"\"\",\n \"\"\"\n variables: x\n ::Int: -1 * x <= -1\n \"\"\";\n eltype = Int,\n print_inner_model = true,\n variable_start = 2,\n constraint_start = 2,\n )\nFeasibility\n\nSubject to:\n\nScalarAffineFunction{Int64}-in-LessThan{Int64}\n (0) - (1) x <= (-1)","category":"page"},{"location":"moi/submodules/Test/overview/","page":"Overview","title":"Overview","text":"EditURL = \"https://github.com/jump-dev/MathOptInterface.jl/blob/v1.34.0/docs/src/submodules/Test/overview.md\"","category":"page"},{"location":"moi/submodules/Test/overview/","page":"Overview","title":"Overview","text":"CurrentModule = MathOptInterface\nDocTestSetup = quote\n import MathOptInterface as MOI\nend\nDocTestFilters = [r\"MathOptInterface|MOI\"]","category":"page"},{"location":"moi/submodules/Test/overview/#test_module","page":"Overview","title":"The Test submodule","text":"","category":"section"},{"location":"moi/submodules/Test/overview/","page":"Overview","title":"Overview","text":"The Test submodule provides tools to help solvers implement unit tests in order to ensure they implement the MathOptInterface API correctly, and to check for solver-correctness.","category":"page"},{"location":"moi/submodules/Test/overview/","page":"Overview","title":"Overview","text":"We use a centralized repository of tests, so that if we find a bug in one solver, instead of adding a test to that particular repository, we add it here so that all solvers can benefit.","category":"page"},{"location":"moi/submodules/Test/overview/#How-to-test-a-solver","page":"Overview","title":"How to test a solver","text":"","category":"section"},{"location":"moi/submodules/Test/overview/","page":"Overview","title":"Overview","text":"The skeleton below can be used for the wrapper test file of a solver named FooBar.","category":"page"},{"location":"moi/submodules/Test/overview/","page":"Overview","title":"Overview","text":"# ============================ /test/MOI_wrapper.jl ============================\nmodule TestFooBar\n\nimport FooBar\nusing Test\n\nimport MathOptInterface as MOI\n\nconst OPTIMIZER = MOI.instantiate(\n MOI.OptimizerWithAttributes(FooBar.Optimizer, MOI.Silent() => true),\n)\n\nconst BRIDGED = MOI.instantiate(\n MOI.OptimizerWithAttributes(FooBar.Optimizer, MOI.Silent() => true),\n with_bridge_type = Float64,\n)\n\n# See the docstring of MOI.Test.Config for other arguments.\nconst CONFIG = MOI.Test.Config(\n # Modify tolerances as necessary.\n atol = 1e-6,\n rtol = 1e-6,\n # Use MOI.LOCALLY_SOLVED for local solvers.\n optimal_status = MOI.OPTIMAL,\n # Pass attributes or MOI functions to `exclude` to skip tests that\n # rely on this functionality.\n exclude = Any[MOI.VariableName, MOI.delete],\n)\n\n\"\"\"\n runtests()\n\nThis function runs all functions in the this Module starting with `test_`.\n\"\"\"\nfunction runtests()\n for name in names(@__MODULE__; all = true)\n if startswith(\"$(name)\", \"test_\")\n @testset \"$(name)\" begin\n getfield(@__MODULE__, name)()\n end\n end\n end\nend\n\n\"\"\"\n test_runtests()\n\nThis function runs all the tests in MathOptInterface.Test.\n\nPass arguments to `exclude` to skip tests for functionality that is not\nimplemented or that your solver doesn't support.\n\"\"\"\nfunction test_runtests()\n MOI.Test.runtests(\n BRIDGED,\n CONFIG,\n exclude = [\n \"test_attribute_NumberOfThreads\",\n \"test_quadratic_\",\n ],\n # This argument is useful to prevent tests from failing on future\n # releases of MOI that add new tests. Don't let this number get too far\n # behind the current MOI release though. You should periodically check\n # for new tests to fix bugs and implement new features.\n exclude_tests_after = v\"0.10.5\",\n )\n return\nend\n\n\"\"\"\n test_SolverName()\n\nYou can also write new tests for solver-specific functionality. Write each new\ntest as a function with a name beginning with `test_`.\n\"\"\"\nfunction test_SolverName()\n @test MOI.get(FooBar.Optimizer(), MOI.SolverName()) == \"FooBar\"\n return\nend\n\nend # module TestFooBar\n\n# This line at tne end of the file runs all the tests!\nTestFooBar.runtests()","category":"page"},{"location":"moi/submodules/Test/overview/","page":"Overview","title":"Overview","text":"Then modify your runtests.jl file to include the MOI_wrapper.jl file:","category":"page"},{"location":"moi/submodules/Test/overview/","page":"Overview","title":"Overview","text":"# ============================ /test/runtests.jl ============================\n\nusing Test\n\n@testset \"MOI\" begin\n include(\"test/MOI_wrapper.jl\")\nend","category":"page"},{"location":"moi/submodules/Test/overview/","page":"Overview","title":"Overview","text":"info: Info\nThe optimizer BRIDGED constructed with instantiate automatically bridges constraints that are not supported by OPTIMIZER using the bridges listed in Bridges. It is recommended for an implementation of MOI to only support constraints that are natively supported by the solver and let bridges transform the constraint to the appropriate form. For this reason it is expected that tests may not pass if OPTIMIZER is used instead of BRIDGED.","category":"page"},{"location":"moi/submodules/Test/overview/#How-to-debug-a-failing-test","page":"Overview","title":"How to debug a failing test","text":"","category":"section"},{"location":"moi/submodules/Test/overview/","page":"Overview","title":"Overview","text":"When writing a solver, it's likely that you will initially fail many tests. Some failures will be bugs, but other failures you may choose to exclude.","category":"page"},{"location":"moi/submodules/Test/overview/","page":"Overview","title":"Overview","text":"There are two ways to exclude tests:","category":"page"},{"location":"moi/submodules/Test/overview/","page":"Overview","title":"Overview","text":"Exclude tests whose names contain a string using:\nMOI.Test.runtests(\n model,\n config;\n exclude = String[\"test_to_exclude\", \"test_conic_\"],\n)\nThis will exclude tests whose name contains either of the two strings provided.\nExclude tests which rely on specific functionality using:\nMOI.Test.Config(exclude = Any[MOI.VariableName, MOI.optimize!])\nThis will exclude tests which use the MOI.VariableName attribute, or which call MOI.optimize!.","category":"page"},{"location":"moi/submodules/Test/overview/","page":"Overview","title":"Overview","text":"Each test that fails can be independently called as:","category":"page"},{"location":"moi/submodules/Test/overview/","page":"Overview","title":"Overview","text":"model = FooBar.Optimizer()\nconfig = MOI.Test.Config()\nMOI.empty!(model)\nMOI.Test.test_category_name_that_failed(model, config)","category":"page"},{"location":"moi/submodules/Test/overview/","page":"Overview","title":"Overview","text":"You can look-up the source code of the test that failed by searching for it in the src/Test/test_category.jl file.","category":"page"},{"location":"moi/submodules/Test/overview/","page":"Overview","title":"Overview","text":"tip: Tip\nEach test function also has a docstring that explains what the test is for. Use ? MOI.Test.test_category_name_that_failed from the REPL to read it.","category":"page"},{"location":"moi/submodules/Test/overview/","page":"Overview","title":"Overview","text":"Periodically, you should re-run excluded tests to see if they now pass. The easiest way to do this is to swap the exclude keyword argument of runtests to include. For example:","category":"page"},{"location":"moi/submodules/Test/overview/","page":"Overview","title":"Overview","text":"MOI.Test.runtests(\n model,\n config;\n exclude = String[\"test_to_exclude\", \"test_conic_\"],\n)","category":"page"},{"location":"moi/submodules/Test/overview/","page":"Overview","title":"Overview","text":"becomes","category":"page"},{"location":"moi/submodules/Test/overview/","page":"Overview","title":"Overview","text":"MOI.Test.runtests(\n model,\n config;\n include = String[\"test_to_exclude\", \"test_conic_\"],\n)","category":"page"},{"location":"moi/submodules/Test/overview/#How-to-add-a-test","page":"Overview","title":"How to add a test","text":"","category":"section"},{"location":"moi/submodules/Test/overview/","page":"Overview","title":"Overview","text":"To detect bugs in solvers, we add new tests to MOI.Test.","category":"page"},{"location":"moi/submodules/Test/overview/","page":"Overview","title":"Overview","text":"As an example, ECOS errored calling optimize! twice in a row. (See ECOS.jl PR #72.) We could add a test to ECOS.jl, but that would only stop us from re-introducing the bug to ECOS.jl in the future, but it would not catch other solvers in the ecosystem with the same bug. Instead, if we add a test to MOI.Test, then all solvers will also check that they handle a double optimize call.","category":"page"},{"location":"moi/submodules/Test/overview/","page":"Overview","title":"Overview","text":"For this test, we care about correctness, rather than performance. therefore, we don't expect solvers to efficiently decide that they have already solved the problem, only that calling optimize! twice doesn't throw an error or give the wrong answer.","category":"page"},{"location":"moi/submodules/Test/overview/","page":"Overview","title":"Overview","text":"Step 1","category":"page"},{"location":"moi/submodules/Test/overview/","page":"Overview","title":"Overview","text":"Install the MathOptInterface julia package in dev mode:","category":"page"},{"location":"moi/submodules/Test/overview/","page":"Overview","title":"Overview","text":"julia> ]\n(@v1.6) pkg> dev MathOptInterface","category":"page"},{"location":"moi/submodules/Test/overview/","page":"Overview","title":"Overview","text":"Step 2","category":"page"},{"location":"moi/submodules/Test/overview/","page":"Overview","title":"Overview","text":"From here on, proceed with making the following changes in the ~/.julia/dev/MathOptInterface folder (or equivalent dev path on your machine).","category":"page"},{"location":"moi/submodules/Test/overview/","page":"Overview","title":"Overview","text":"Step 3","category":"page"},{"location":"moi/submodules/Test/overview/","page":"Overview","title":"Overview","text":"Since the double-optimize error involves solving an optimization problem, add a new test to src/Test/test_solve.jl:","category":"page"},{"location":"moi/submodules/Test/overview/","page":"Overview","title":"Overview","text":"\"\"\"\n test_unit_optimize!_twice(model::MOI.ModelLike, config::Config)\n\nTest that calling `MOI.optimize!` twice does not error.\n\nThis problem was first detected in ECOS.jl PR#72:\nhttps://github.com/jump-dev/ECOS.jl/pull/72\n\"\"\"\nfunction test_unit_optimize!_twice(\n model::MOI.ModelLike,\n config::Config{T},\n) where {T}\n # Use the `@requires` macro to check conditions that the test function\n # requires to run. Models failing this `@requires` check will silently skip\n # the test.\n @requires MOI.supports_constraint(\n model,\n MOI.VariableIndex,\n MOI.GreaterThan{Float64},\n )\n @requires _supports(config, MOI.optimize!)\n # If needed, you can test that the model is empty at the start of the test.\n # You can assume that this will be the case for tests run via `runtests`.\n # User's calling tests individually need to call `MOI.empty!` themselves.\n @test MOI.is_empty(model)\n # Create a simple model. Try to make this as simple as possible so that the\n # majority of solvers can run the test.\n x = MOI.add_variable(model)\n MOI.add_constraint(model, x, MOI.GreaterThan(one(T)))\n MOI.set(model, MOI.ObjectiveSense(), MOI.MIN_SENSE)\n MOI.set(\n model,\n MOI.ObjectiveFunction{MOI.VariableIndex}(),\n x,\n )\n # The main component of the test: does calling `optimize!` twice error?\n MOI.optimize!(model)\n MOI.optimize!(model)\n # Check we have a solution.\n @test MOI.get(model, MOI.TerminationStatus()) == MOI.OPTIMAL\n # There is a three-argument version of `Base.isapprox` for checking\n # approximate equality based on the tolerances defined in `config`:\n @test isapprox(MOI.get(model, MOI.VariablePrimal(), x), one(T), config)\n # For code-style, these tests should always `return` `nothing`.\n return\nend","category":"page"},{"location":"moi/submodules/Test/overview/","page":"Overview","title":"Overview","text":"info: Info\nMake sure the function is agnostic to the number type T; don't assume it is a Float64 capable solver.","category":"page"},{"location":"moi/submodules/Test/overview/","page":"Overview","title":"Overview","text":"We also need to write a test for the test. Place this function immediately below the test you just wrote in the same file:","category":"page"},{"location":"moi/submodules/Test/overview/","page":"Overview","title":"Overview","text":"function setup_test(\n ::typeof(test_unit_optimize!_twice),\n model::MOI.Utilities.MockOptimizer,\n ::Config,\n)\n MOI.Utilities.set_mock_optimize!(\n model,\n (mock::MOI.Utilities.MockOptimizer) -> MOIU.mock_optimize!(\n mock,\n MOI.OPTIMAL,\n (MOI.FEASIBLE_POINT, [1.0]),\n ),\n )\n return\nend","category":"page"},{"location":"moi/submodules/Test/overview/","page":"Overview","title":"Overview","text":"Finally, you also need to implement Test.version_added. If we added this test when the latest released version of MOI was v0.10.5, define:","category":"page"},{"location":"moi/submodules/Test/overview/","page":"Overview","title":"Overview","text":"version_added(::typeof(test_unit_optimize!_twice)) = v\"0.10.6\"","category":"page"},{"location":"moi/submodules/Test/overview/","page":"Overview","title":"Overview","text":"Step 6","category":"page"},{"location":"moi/submodules/Test/overview/","page":"Overview","title":"Overview","text":"Commit the changes to git from ~/.julia/dev/MathOptInterface and submit the PR for review.","category":"page"},{"location":"moi/submodules/Test/overview/","page":"Overview","title":"Overview","text":"tip: Tip\nIf you need help writing a test, open an issue on GitHub, or ask the Developer Chatroom.","category":"page"},{"location":"tutorials/algorithms/pdhg/","page":"Writing a solver interface","title":"Writing a solver interface","text":"EditURL = \"pdhg.jl\"","category":"page"},{"location":"tutorials/algorithms/pdhg/#Writing-a-solver-interface","page":"Writing a solver interface","title":"Writing a solver interface","text":"","category":"section"},{"location":"tutorials/algorithms/pdhg/","page":"Writing a solver interface","title":"Writing a solver interface","text":"This tutorial was generated using Literate.jl. Download the source as a .jl file.","category":"page"},{"location":"tutorials/algorithms/pdhg/","page":"Writing a solver interface","title":"Writing a solver interface","text":"The purpose of this tutorial is to demonstrate how to implement a basic solver interface to MathOptInterface. As a motivating example, we implement the Primal Dual Hybrid Gradient (PDHG) method. PDHG is a first-order method that can solve convex optimization problems.","category":"page"},{"location":"tutorials/algorithms/pdhg/","page":"Writing a solver interface","title":"Writing a solver interface","text":"Google has a good introduction to the math behind PDLP, which is a variant of PDHG specialized for linear programs.","category":"page"},{"location":"tutorials/algorithms/pdhg/#Required-packages","page":"Writing a solver interface","title":"Required packages","text":"","category":"section"},{"location":"tutorials/algorithms/pdhg/","page":"Writing a solver interface","title":"Writing a solver interface","text":"This tutorial requires the following packages:","category":"page"},{"location":"tutorials/algorithms/pdhg/","page":"Writing a solver interface","title":"Writing a solver interface","text":"using JuMP\nimport LinearAlgebra\nimport MathOptInterface as MOI\nimport Printf\nimport SparseArrays","category":"page"},{"location":"tutorials/algorithms/pdhg/#Primal-Dual-Hybrid-Gradient","page":"Writing a solver interface","title":"Primal Dual Hybrid Gradient","text":"","category":"section"},{"location":"tutorials/algorithms/pdhg/","page":"Writing a solver interface","title":"Writing a solver interface","text":"The following function is a pedagogical implementation of PDHG that solves the linear program:","category":"page"},{"location":"tutorials/algorithms/pdhg/","page":"Writing a solver interface","title":"Writing a solver interface","text":"beginaligned\ntextmin c^top x \ntextsubject to Ax = b \n x ge 0\nendaligned","category":"page"},{"location":"tutorials/algorithms/pdhg/","page":"Writing a solver interface","title":"Writing a solver interface","text":"Note that this implementation is intentionally kept simple. It is not robust nor efficient, and it does not incorporate the theoretical improvements in the PDLP paper. It does use two workspace vectors so that the body of the iteration loop is non-allocating.","category":"page"},{"location":"tutorials/algorithms/pdhg/","page":"Writing a solver interface","title":"Writing a solver interface","text":"function solve_pdhg(\n A::SparseArrays.SparseMatrixCSC{Float64,Int},\n b::Vector{Float64},\n c::Vector{Float64};\n maximum_iterations::Int = 100_000,\n tol::Float64 = 1e-4,\n verbose::Bool = true,\n log_frequency::Int = 1_000,\n)\n printf(x::Float64) = Printf.@sprintf(\"% 1.6e\", x)\n printf(x::Int) = Printf.@sprintf(\"%6d\", x)\n m, n = size(A)\n η = τ = 1 / LinearAlgebra.norm(A) - 1e-6\n x, x_next, y, k, status = zeros(n), zeros(n), zeros(m), 0, MOI.OTHER_ERROR\n m_workspace, n_workspace = zeros(m), zeros(n)\n if verbose\n println(\n \" iter pobj dobj pfeas dfeas objfeas\",\n )\n end\n while status == MOI.OTHER_ERROR\n k += 1\n # =====================================================================\n # This block computes x_next = max.(0.0, x - η * (A' * y + c))\n LinearAlgebra.mul!(x_next, A', y)\n LinearAlgebra.axpby!(-η, c, -η, x_next)\n x_next .+= x\n x_next .= max.(0.0, x_next)\n # =====================================================================\n # This block computes y += τ * (A * (2 * x_next - x) - b)\n copy!(n_workspace, x_next)\n LinearAlgebra.axpby!(-1.0, x, 2.0, n_workspace)\n LinearAlgebra.mul!(y, A, n_workspace, τ, 1.0)\n LinearAlgebra.axpy!(-τ, b, y)\n # =====================================================================\n copy!(x, x_next)\n # =====================================================================\n # This block computes pfeas = LinearAlgebra.norm(A * x - b)\n LinearAlgebra.mul!(m_workspace, A, x)\n m_workspace .-= b\n pfeas = LinearAlgebra.norm(m_workspace)\n # =====================================================================\n # This block computes dfeas = LinearAlgebra.norm(min.(0.0, A' * y + c))\n LinearAlgebra.mul!(n_workspace, A', y)\n n_workspace .+= c\n n_workspace .= min.(0.0, n_workspace)\n dfeas = LinearAlgebra.norm(n_workspace)\n # =====================================================================\n objfeas = abs(LinearAlgebra.dot(c, x) + LinearAlgebra.dot(b, y))\n if pfeas <= tol && dfeas <= tol && objfeas <= tol\n status = MOI.OPTIMAL\n elseif k == maximum_iterations\n status = MOI.ITERATION_LIMIT\n end\n if verbose && (mod(k, log_frequency) == 0 || status != MOI.OTHER_ERROR)\n logs = printf.((k, c' * x, -b' * y, pfeas, dfeas, objfeas))\n println(join(logs, \" \"))\n end\n end\n return status, k, x, y\nend","category":"page"},{"location":"tutorials/algorithms/pdhg/","page":"Writing a solver interface","title":"Writing a solver interface","text":"Here's an example:","category":"page"},{"location":"tutorials/algorithms/pdhg/","page":"Writing a solver interface","title":"Writing a solver interface","text":"A = [0.0 -1.0 -1.0 0.0 0.0; 6.0 8.0 0.0 -1.0 0.0; 7.0 12.0 0.0 0.0 -1.0]\nb = [-3.0, 100.0, 120.0]\nc = [12.0, 20.0, 0.0, 0.0, 0.0]\nstatus, k, x, y = solve_pdhg(SparseArrays.sparse(A), b, c);\nnothing #hide","category":"page"},{"location":"tutorials/algorithms/pdhg/","page":"Writing a solver interface","title":"Writing a solver interface","text":"The termination status is:","category":"page"},{"location":"tutorials/algorithms/pdhg/","page":"Writing a solver interface","title":"Writing a solver interface","text":"status","category":"page"},{"location":"tutorials/algorithms/pdhg/","page":"Writing a solver interface","title":"Writing a solver interface","text":"The solve took the following number of iterations:","category":"page"},{"location":"tutorials/algorithms/pdhg/","page":"Writing a solver interface","title":"Writing a solver interface","text":"k","category":"page"},{"location":"tutorials/algorithms/pdhg/","page":"Writing a solver interface","title":"Writing a solver interface","text":"The primal solution is:","category":"page"},{"location":"tutorials/algorithms/pdhg/","page":"Writing a solver interface","title":"Writing a solver interface","text":"x","category":"page"},{"location":"tutorials/algorithms/pdhg/","page":"Writing a solver interface","title":"Writing a solver interface","text":"The dual multipliers are:","category":"page"},{"location":"tutorials/algorithms/pdhg/","page":"Writing a solver interface","title":"Writing a solver interface","text":"y","category":"page"},{"location":"tutorials/algorithms/pdhg/#The-MOI-interface","page":"Writing a solver interface","title":"The MOI interface","text":"","category":"section"},{"location":"tutorials/algorithms/pdhg/","page":"Writing a solver interface","title":"Writing a solver interface","text":"Converting a linear program from the modeler's form into the A, b, and c matrices of the standard form required by our implementation of PDHG is tedious and error-prone. This section walks through how to implement a basic interface to MathOptInterface, so that we can use our algorithm from JuMP.","category":"page"},{"location":"tutorials/algorithms/pdhg/","page":"Writing a solver interface","title":"Writing a solver interface","text":"For a more comprehensive guide, see Implementing a solver interface.","category":"page"},{"location":"tutorials/algorithms/pdhg/#The-Optimizer-type","page":"Writing a solver interface","title":"The Optimizer type","text":"","category":"section"},{"location":"tutorials/algorithms/pdhg/","page":"Writing a solver interface","title":"Writing a solver interface","text":"Create an optimizer by subtyping MOI.AbstractOptimizer. By convention, the name of this type is Optimizer, and most optimizers are available as PackageName.Optimizer.","category":"page"},{"location":"tutorials/algorithms/pdhg/","page":"Writing a solver interface","title":"Writing a solver interface","text":"The fields inside the optimizer are arbitrary. Store whatever is useful.","category":"page"},{"location":"tutorials/algorithms/pdhg/","page":"Writing a solver interface","title":"Writing a solver interface","text":"\"\"\"\n Optimizer()\n\nCreate a new optimizer for PDHG.\n\"\"\"\nmutable struct Optimizer <: MOI.AbstractOptimizer\n # A mapping from variable to column\n x_to_col::Dict{MOI.VariableIndex,Int}\n # A mapping from constraint to rows\n ci_to_rows::Dict{\n MOI.ConstraintIndex{MOI.VectorAffineFunction{Float64},MOI.Zeros},\n Vector{Int},\n }\n # Information from solve_pdhg\n status::MOI.TerminationStatusCode\n iterations::Int\n x::Vector{Float64}\n y::Vector{Float64}\n # Other useful quantities\n solve_time::Float64\n obj_value::Float64\n\n function Optimizer()\n F = MOI.VectorAffineFunction{Float64}\n return new(\n Dict{MOI.VariableIndex,Int}(),\n Dict{MOI.ConstraintIndex{F,MOI.Zeros},Vector{Int}}(),\n MOI.OPTIMIZE_NOT_CALLED,\n 0,\n Float64[],\n Float64[],\n 0.0,\n 0.0,\n )\n end\nend","category":"page"},{"location":"tutorials/algorithms/pdhg/","page":"Writing a solver interface","title":"Writing a solver interface","text":"Now that we have an Optimizer, we need to implement two methods: MOI.is_empty and MOI.empty!. These are called whenever MOI needs to ensure that the optimizer is in a clean state.","category":"page"},{"location":"tutorials/algorithms/pdhg/","page":"Writing a solver interface","title":"Writing a solver interface","text":"function MOI.is_empty(model::Optimizer)\n # You might want to check every field, not just a few\n return isempty(model.x_to_col) && model.status == MOI.OPTIMIZE_NOT_CALLED\nend\n\nfunction MOI.empty!(model::Optimizer)\n empty!(model.x_to_col)\n empty!(model.ci_to_rows)\n model.status = MOI.OPTIMIZE_NOT_CALLED\n model.iterations = 0\n model.solve_time = 0.0\n model.obj_value = 0.0\n empty!(model.x)\n empty!(model.y)\n return\nend","category":"page"},{"location":"tutorials/algorithms/pdhg/","page":"Writing a solver interface","title":"Writing a solver interface","text":"Next, we need to define what constraints the optimizer supports. Since our standard form was Ax = b, we support only Ax + b in 0, which is a MOI.VectorAffineFunction in MOI.Zeros constraint. Note that you might have expected Ax - b in 0. We'll address the difference in the sign of b in a few places later on.","category":"page"},{"location":"tutorials/algorithms/pdhg/","page":"Writing a solver interface","title":"Writing a solver interface","text":"function MOI.supports_constraint(\n ::Optimizer,\n ::Type{MOI.VectorAffineFunction{Float64}},\n ::Type{MOI.Zeros},\n)\n return true\nend","category":"page"},{"location":"tutorials/algorithms/pdhg/","page":"Writing a solver interface","title":"Writing a solver interface","text":"By default, MOI assumes that it can add free variables. This isn't true for our standard form, because we support only x ge 0. Let's tell MOI that:","category":"page"},{"location":"tutorials/algorithms/pdhg/","page":"Writing a solver interface","title":"Writing a solver interface","text":"MOI.supports_add_constrained_variables(::Optimizer, ::Type{MOI.Reals}) = false\n\nfunction MOI.supports_add_constrained_variables(\n ::Optimizer,\n ::Type{MOI.Nonnegatives},\n)\n return true\nend","category":"page"},{"location":"tutorials/algorithms/pdhg/","page":"Writing a solver interface","title":"Writing a solver interface","text":"The objective function that we support is MOI.ScalarAffineFunction:","category":"page"},{"location":"tutorials/algorithms/pdhg/","page":"Writing a solver interface","title":"Writing a solver interface","text":"function MOI.supports(\n ::Optimizer,\n ::MOI.ObjectiveFunction{MOI.ScalarAffineFunction{Float64}},\n)\n return true\nend","category":"page"},{"location":"tutorials/algorithms/pdhg/","page":"Writing a solver interface","title":"Writing a solver interface","text":"Finally, we'll implement MOI.SolverName so that MOI knows how to print the name of our optimizer:","category":"page"},{"location":"tutorials/algorithms/pdhg/","page":"Writing a solver interface","title":"Writing a solver interface","text":"MOI.get(::Optimizer, ::MOI.SolverName) = \"PDHG\"","category":"page"},{"location":"tutorials/algorithms/pdhg/#GenericModel","page":"Writing a solver interface","title":"GenericModel","text":"","category":"section"},{"location":"tutorials/algorithms/pdhg/","page":"Writing a solver interface","title":"Writing a solver interface","text":"The simplest way to solve a problem with your optimizer is to implement the method MOI.optimize!(dest::Optimizer, src::MOI.ModelLike), where src is an input model and dest is your empty optimizer.","category":"page"},{"location":"tutorials/algorithms/pdhg/","page":"Writing a solver interface","title":"Writing a solver interface","text":"To implement this method you would need to query the variables and constraints in src and the convert these into the matrix data expected by solve_pdhg. Since matrix input is a common requirement of solvers, MOI includes utilities to simplify the process.","category":"page"},{"location":"tutorials/algorithms/pdhg/","page":"Writing a solver interface","title":"Writing a solver interface","text":"The downside of the utilities is that they involve a highly parameterized type with a large number of possible configurations.The upside of the utilities is that, once setup, they requires few lines of code to extract the problem matrices.","category":"page"},{"location":"tutorials/algorithms/pdhg/","page":"Writing a solver interface","title":"Writing a solver interface","text":"First, we need to define the set of sets that our standard form supports. For PDHG, we support only Ax + b in {0}:","category":"page"},{"location":"tutorials/algorithms/pdhg/","page":"Writing a solver interface","title":"Writing a solver interface","text":"MOI.Utilities.@product_of_sets(SetOfZeros, MOI.Zeros)","category":"page"},{"location":"tutorials/algorithms/pdhg/","page":"Writing a solver interface","title":"Writing a solver interface","text":"Then, we define a MOI.Utilities.GenericModel. This is the highly parameterized type that can be customized.","category":"page"},{"location":"tutorials/algorithms/pdhg/","page":"Writing a solver interface","title":"Writing a solver interface","text":"const CacheModel = MOI.Utilities.GenericModel{\n # The coefficient type is Float64\n Float64,\n # We use the default objective container\n MOI.Utilities.ObjectiveContainer{Float64},\n # We use the default variable container\n MOI.Utilities.VariablesContainer{Float64},\n # We use a Matrix of Constraints to represent `A * x + b in K`\n MOI.Utilities.MatrixOfConstraints{\n # The number type is Float64\n Float64,\n # The matrix type `A` is a sparse matrix\n MOI.Utilities.MutableSparseMatrixCSC{\n # ... with Float64 coefficients\n Float64,\n # ... Int64 row and column indices\n Int,\n # ... and it uses one-based indexing\n MOI.Utilities.OneBasedIndexing,\n },\n # The vector type `b` is a Julia `Vector`\n Vector{Float64},\n # The set type `K` is the SetOfZeros type we defined above\n SetOfZeros{Float64},\n },\n}","category":"page"},{"location":"tutorials/algorithms/pdhg/","page":"Writing a solver interface","title":"Writing a solver interface","text":"As one example of possible alternate configuration, if you were interfacing with a solver written in C that expected zero-based indices, you might use instead:","category":"page"},{"location":"tutorials/algorithms/pdhg/","page":"Writing a solver interface","title":"Writing a solver interface","text":"MOI.Utilities.MutableSparseMatrixCSC{\n Cdouble,\n Cint,\n MOI.Utilities.ZeroBasedIndexing,\n}","category":"page"},{"location":"tutorials/algorithms/pdhg/","page":"Writing a solver interface","title":"Writing a solver interface","text":"tip: Tip\nThe best place to look at how to configure GenericModel is to find an existing solver with the same input standard form that you require.","category":"page"},{"location":"tutorials/algorithms/pdhg/","page":"Writing a solver interface","title":"Writing a solver interface","text":"We need to make one modification to CacheModel to tell MOI that x in mathbbR_+ is equivalent to adding variables in MOI.GreaterThan:","category":"page"},{"location":"tutorials/algorithms/pdhg/","page":"Writing a solver interface","title":"Writing a solver interface","text":"function MOI.add_constrained_variables(model::CacheModel, set::MOI.Nonnegatives)\n x = MOI.add_variables(model, MOI.dimension(set))\n MOI.add_constraint.(model, x, MOI.GreaterThan(0.0))\n ci = MOI.ConstraintIndex{MOI.VectorOfVariables,MOI.Nonnegatives}(x[1].value)\n return x, ci\nend","category":"page"},{"location":"tutorials/algorithms/pdhg/#The-optimize-method","page":"Writing a solver interface","title":"The optimize method","text":"","category":"section"},{"location":"tutorials/algorithms/pdhg/","page":"Writing a solver interface","title":"Writing a solver interface","text":"Now we define the most important method for our optimizer.","category":"page"},{"location":"tutorials/algorithms/pdhg/","page":"Writing a solver interface","title":"Writing a solver interface","text":"function MOI.optimize!(dest::Optimizer, src::MOI.ModelLike)\n # In addition to the values returned by `solve_pdhg`, it may be useful to\n # record other attributes, such as the solve time.\n start_time = time()\n # Construct a cache to store our problem data:\n cache = CacheModel()\n # MOI includes a utility to copy an arbitrary `src` model into `cache`. The\n # return, `index_map`, is a mapping from indices in `src` to indices in\n # `dest`.\n index_map = MOI.copy_to(cache, src)\n # Now we can access the `A` matrix:\n A = convert(\n SparseArrays.SparseMatrixCSC{Float64,Int},\n cache.constraints.coefficients,\n )\n # and the b vector (note that MOI models Ax = b as Ax + b in {0}, so b\n # differs by -):\n b = -cache.constraints.constants\n # The `c` vector is more involved, because we need to account for the\n # objective sense:\n sense = ifelse(cache.objective.sense == MOI.MAX_SENSE, -1, 1)\n F = MOI.ScalarAffineFunction{Float64}\n obj = MOI.get(src, MOI.ObjectiveFunction{F}())\n c = zeros(size(A, 2))\n for term in obj.terms\n c[term.variable.value] += sense * term.coefficient\n end\n # Now we can solve the problem with PDHG and record the solution:\n dest.status, dest.iterations, dest.x, dest.y = solve_pdhg(A, b, c)\n # To help assign the values of the x and y vectors to the appropriate\n # variables and constrats, we need a map of the constraint indices to their\n # row in the `dest` matrix and a map of the variable indices to their\n # column in the `dest` matrix:\n F, S = MOI.VectorAffineFunction{Float64}, MOI.Zeros\n for src_ci in MOI.get(src, MOI.ListOfConstraintIndices{F,S}())\n dest.ci_to_rows[index_map[src_ci]] =\n MOI.Utilities.rows(cache.constraints.sets, index_map[src_ci])\n end\n for (i, src_x) in enumerate(MOI.get(src, MOI.ListOfVariableIndices()))\n dest.x_to_col[index_map[src_x]] = i\n end\n # We can now record two derived quantities: the primal objective value and\n # the solve time.\n dest.obj_value = obj.constant + sense * c' * dest.x\n dest.solve_time = time() - start_time\n # We need to return the index map, and `false`, to indicate to MOI that we\n # do not support incremental modification of the model.\n return index_map, false\nend","category":"page"},{"location":"tutorials/algorithms/pdhg/#Solutions","page":"Writing a solver interface","title":"Solutions","text":"","category":"section"},{"location":"tutorials/algorithms/pdhg/","page":"Writing a solver interface","title":"Writing a solver interface","text":"Now that we know how to solve a model, let's implement the required solution attributes.","category":"page"},{"location":"tutorials/algorithms/pdhg/","page":"Writing a solver interface","title":"Writing a solver interface","text":"First, we need to tell MOI how many solutions we found via MOI.ResultCount:","category":"page"},{"location":"tutorials/algorithms/pdhg/","page":"Writing a solver interface","title":"Writing a solver interface","text":"function MOI.get(model::Optimizer, ::MOI.ResultCount)\n return model.status == MOI.OPTIMAL ? 1 : 0\nend","category":"page"},{"location":"tutorials/algorithms/pdhg/","page":"Writing a solver interface","title":"Writing a solver interface","text":"and implement MOI.RawStatusString to provide a user-readable string that describes what happened:","category":"page"},{"location":"tutorials/algorithms/pdhg/","page":"Writing a solver interface","title":"Writing a solver interface","text":"function MOI.get(model::Optimizer, ::MOI.RawStatusString)\n if model.status == MOI.OPTIMAL\n return \"found a primal-dual optimal solution (subject to tolerances)\"\n end\n return \"failed to solve\"\nend","category":"page"},{"location":"tutorials/algorithms/pdhg/","page":"Writing a solver interface","title":"Writing a solver interface","text":"Then, we need to implement the three types of problem status: MOI.TerminationStatus, MOI.PrimalStatus and MOI.DualStatus:","category":"page"},{"location":"tutorials/algorithms/pdhg/","page":"Writing a solver interface","title":"Writing a solver interface","text":"MOI.get(model::Optimizer, ::MOI.TerminationStatus) = model.status\n\nfunction MOI.get(model::Optimizer, attr::Union{MOI.PrimalStatus,MOI.DualStatus})\n if attr.result_index == 1 && model.status == MOI.OPTIMAL\n return MOI.FEASIBLE_POINT\n end\n return MOI.NO_SOLUTION\nend","category":"page"},{"location":"tutorials/algorithms/pdhg/","page":"Writing a solver interface","title":"Writing a solver interface","text":"Now we can implement MOI.ObjectiveValue, MOI.VariablePrimal, and MOI.ConstraintDual:","category":"page"},{"location":"tutorials/algorithms/pdhg/","page":"Writing a solver interface","title":"Writing a solver interface","text":"function MOI.get(model::Optimizer, attr::MOI.ObjectiveValue)\n MOI.check_result_index_bounds(model, attr)\n return model.obj_value\nend\n\nfunction MOI.get(\n model::Optimizer,\n attr::MOI.VariablePrimal,\n x::MOI.VariableIndex,\n)\n MOI.check_result_index_bounds(model, attr)\n return model.x[model.x_to_col[x]]\nend\n\nfunction MOI.get(\n model::Optimizer,\n attr::MOI.ConstraintDual,\n ci::MOI.ConstraintIndex{MOI.VectorAffineFunction{Float64},MOI.Zeros},\n)\n MOI.check_result_index_bounds(model, attr)\n # MOI models Ax = b as Ax + b in {0}, so the dual differs by -\n return -model.y[model.ci_to_rows[ci]]\nend","category":"page"},{"location":"tutorials/algorithms/pdhg/","page":"Writing a solver interface","title":"Writing a solver interface","text":"Some other useful result quantities are MOI.SolveTimeSec and MOI.BarrierIterations:","category":"page"},{"location":"tutorials/algorithms/pdhg/","page":"Writing a solver interface","title":"Writing a solver interface","text":"MOI.get(model::Optimizer, ::MOI.SolveTimeSec) = model.solve_time\nMOI.get(model::Optimizer, ::MOI.BarrierIterations) = model.iterations","category":"page"},{"location":"tutorials/algorithms/pdhg/#A-JuMP-example","page":"Writing a solver interface","title":"A JuMP example","text":"","category":"section"},{"location":"tutorials/algorithms/pdhg/","page":"Writing a solver interface","title":"Writing a solver interface","text":"Now we can solve an arbitrary linear program with JuMP. Here's the same standard form as before:","category":"page"},{"location":"tutorials/algorithms/pdhg/","page":"Writing a solver interface","title":"Writing a solver interface","text":"model = Model(Optimizer)\n@variable(model, x[1:5] >= 0)\n@objective(model, Min, c' * x)\n@constraint(model, c3, A * x == b)\noptimize!(model)","category":"page"},{"location":"tutorials/algorithms/pdhg/","page":"Writing a solver interface","title":"Writing a solver interface","text":"solution_summary(model; verbose = true)","category":"page"},{"location":"tutorials/algorithms/pdhg/","page":"Writing a solver interface","title":"Writing a solver interface","text":"But we could also have written:","category":"page"},{"location":"tutorials/algorithms/pdhg/","page":"Writing a solver interface","title":"Writing a solver interface","text":"model = Model(Optimizer)\n@variable(model, x >= 0)\n@variable(model, 0 <= y <= 3)\n@objective(model, Min, 12x + 20y)\n@constraint(model, c1, 6x + 8y >= 100)\n@constraint(model, c2, 7x + 12y >= 120)\noptimize!(model)","category":"page"},{"location":"tutorials/algorithms/pdhg/","page":"Writing a solver interface","title":"Writing a solver interface","text":"solution_summary(model; verbose = true)","category":"page"},{"location":"tutorials/algorithms/pdhg/","page":"Writing a solver interface","title":"Writing a solver interface","text":"Other variations are also possible:","category":"page"},{"location":"tutorials/algorithms/pdhg/","page":"Writing a solver interface","title":"Writing a solver interface","text":"model = Model(Optimizer)\n@variable(model, x[1:5] >= 0)\n@objective(model, Max, -c' * x)\n@constraint(model, c4, A * x .== b)\noptimize!(model)","category":"page"},{"location":"tutorials/algorithms/pdhg/","page":"Writing a solver interface","title":"Writing a solver interface","text":"solution_summary(model; verbose = true)","category":"page"},{"location":"tutorials/algorithms/pdhg/","page":"Writing a solver interface","title":"Writing a solver interface","text":"Behind the scenes, JuMP and MathOptInterface reformulate the problem from the modeller's form into the standard form defined by our Optimizer.","category":"page"},{"location":"moi/submodules/Utilities/reference/","page":"API Reference","title":"API Reference","text":"EditURL = \"https://github.com/jump-dev/MathOptInterface.jl/blob/v1.34.0/docs/src/submodules/Utilities/reference.md\"","category":"page"},{"location":"moi/submodules/Utilities/reference/","page":"API Reference","title":"API Reference","text":"CurrentModule = MathOptInterface\nDocTestSetup = quote\n import MathOptInterface as MOI\nend\nDocTestFilters = [r\"MathOptInterface|MOI\"]","category":"page"},{"location":"moi/submodules/Utilities/reference/#Utilities.Model","page":"API Reference","title":"Utilities.Model","text":"","category":"section"},{"location":"moi/submodules/Utilities/reference/","page":"API Reference","title":"API Reference","text":"Utilities.Model","category":"page"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.Model","page":"API Reference","title":"MathOptInterface.Utilities.Model","text":"MOI.Utilities.Model{T}() where {T}\n\nAn implementation of ModelLike that supports all functions and sets defined in MOI. It is parameterized by the coefficient type.\n\nExample\n\njulia> import MathOptInterface as MOI\n\njulia> model = MOI.Utilities.Model{Float64}()\nMOIU.Model{Float64}\n├ ObjectiveSense: FEASIBILITY_SENSE\n├ ObjectiveFunctionType: MOI.ScalarAffineFunction{Float64}\n├ NumberOfVariables: 0\n└ NumberOfConstraints: 0\n\n\n\n\n\n","category":"type"},{"location":"moi/submodules/Utilities/reference/#Utilities.UniversalFallback","page":"API Reference","title":"Utilities.UniversalFallback","text":"","category":"section"},{"location":"moi/submodules/Utilities/reference/","page":"API Reference","title":"API Reference","text":"Utilities.UniversalFallback","category":"page"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.UniversalFallback","page":"API Reference","title":"MathOptInterface.Utilities.UniversalFallback","text":"UniversalFallback\n\nThe UniversalFallback can be applied on a MOI.ModelLike model to create the model UniversalFallback(model) supporting any constraint and attribute. This allows to have a specialized implementation in model for performance critical constraints and attributes while still supporting other attributes with a small performance penalty. Note that model is unaware of constraints and attributes stored by UniversalFallback so this is not appropriate if model is an optimizer (for this reason, MOI.optimize! has not been implemented). In that case, optimizer bridges should be used instead.\n\n\n\n\n\n","category":"type"},{"location":"moi/submodules/Utilities/reference/#Utilities.@model","page":"API Reference","title":"Utilities.@model","text":"","category":"section"},{"location":"moi/submodules/Utilities/reference/","page":"API Reference","title":"API Reference","text":"Utilities.@model\nUtilities.GenericModel\nUtilities.GenericOptimizer","category":"page"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.@model","page":"API Reference","title":"MathOptInterface.Utilities.@model","text":"macro model(\n model_name,\n scalar_sets,\n typed_scalar_sets,\n vector_sets,\n typed_vector_sets,\n scalar_functions,\n typed_scalar_functions,\n vector_functions,\n typed_vector_functions,\n is_optimizer = false\n)\n\nCreates a type model_name implementing the MOI model interface and supporting all combinations of the provided functions and sets.\n\nEach typed_ scalar/vector sets/functions argument is a tuple of types. A type is \"typed\" if it has a coefficient {T} as the first type parameter.\n\nTuple syntax\n\nTo give no set/function, write (). To give one set or function X, write (X,).\n\nis_optimizer\n\nIf is_optimizer = true, the resulting struct is a of GenericOptimizer, which is a subtype of MOI.AbstractOptimizer, otherwise, it is a GenericModel, which is a subtype of MOI.ModelLike.\n\nVariableIndex\n\nThe function MOI.VariableIndex must not be given in scalar_functions.\nThe model supports MOI.VariableIndex-in-S constraints where S is MOI.EqualTo, MOI.GreaterThan, MOI.LessThan, MOI.Interval, MOI.Integer, MOI.ZeroOne, MOI.Semicontinuous or MOI.Semiinteger.\nThe sets supported with MOI.VariableIndex cannot be controlled from the macro; use UniversalFallback to support more sets.\n\nExample\n\nThe model describing a linear program would be:\n\n@model(\n LPModel, # model_name\n (), # untyped scalar sets\n (MOI.EqualTo, MOI.GreaterThan, MOI.LessThan, MOI.Interval), # typed scalar sets\n (MOI.Zeros, MOI.Nonnegatives, MOI.Nonpositives), # untyped vector sets\n (), # typed vector sets\n (), # untyped scalar functions\n (MOI.ScalarAffineFunction,), # typed scalar functions\n (MOI.VectorOfVariables,), # untyped vector functions\n (MOI.VectorAffineFunction,), # typed vector functions\n false, # is_optimizer\n)\n\n\n\n\n\n","category":"macro"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.GenericModel","page":"API Reference","title":"MathOptInterface.Utilities.GenericModel","text":"mutable struct GenericModel{T,O,V,C} <: AbstractModelLike{T}\n\nImplements a model supporting coefficients of type T and:\n\nAn objective function stored in .objective::O\nVariables and VariableIndex constraints stored in .variable_bounds::V\nF-in-S constraints (excluding VariableIndex constraints) stored in .constraints::C\n\nAll interactions take place via the MOI interface, so the types O, V, and C must implement the API as needed for their functionality.\n\n\n\n\n\n","category":"type"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.GenericOptimizer","page":"API Reference","title":"MathOptInterface.Utilities.GenericOptimizer","text":"mutable struct GenericOptimizer{T,O,V,C} <: AbstractOptimizer{T}\n\nImplements a model supporting coefficients of type T and:\n\nAn objective function stored in .objective::O\nVariables and VariableIndex constraints stored in .variable_bounds::V\nF-in-S constraints (excluding VariableIndex constraints) stored in .constraints::C\n\nAll interactions take place via the MOI interface, so the types O, V, and C must implement the API as needed for their functionality.\n\n\n\n\n\n","category":"type"},{"location":"moi/submodules/Utilities/reference/#.objective","page":"API Reference","title":".objective","text":"","category":"section"},{"location":"moi/submodules/Utilities/reference/","page":"API Reference","title":"API Reference","text":"Utilities.ObjectiveContainer","category":"page"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.ObjectiveContainer","page":"API Reference","title":"MathOptInterface.Utilities.ObjectiveContainer","text":"ObjectiveContainer{T}\n\nA helper struct to simplify the handling of objective functions in Utilities.Model.\n\n\n\n\n\n","category":"type"},{"location":"moi/submodules/Utilities/reference/#.variables","page":"API Reference","title":".variables","text":"","category":"section"},{"location":"moi/submodules/Utilities/reference/","page":"API Reference","title":"API Reference","text":"Utilities.VariablesContainer\nUtilities.FreeVariables","category":"page"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.VariablesContainer","page":"API Reference","title":"MathOptInterface.Utilities.VariablesContainer","text":"struct VariablesContainer{T} <: AbstractVectorBounds\n set_mask::Vector{UInt16}\n lower::Vector{T}\n upper::Vector{T}\nend\n\nA struct for storing variables and VariableIndex-related constraints. Used in MOI.Utilities.Model by default.\n\n\n\n\n\n","category":"type"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.FreeVariables","page":"API Reference","title":"MathOptInterface.Utilities.FreeVariables","text":"mutable struct FreeVariables <: MOI.ModelLike\n n::Int64\n FreeVariables() = new(0)\nend\n\nA struct for storing free variables that can be used as the variables field of GenericModel or GenericModel. It represents a model that does not support any constraint nor objective function.\n\nExample\n\nThe following model type represents a conic model in geometric form. As opposed to VariablesContainer, FreeVariables does not support constraint bounds so they are bridged into an affine constraint in the MOI.Nonnegatives cone as expected for the geometric conic form.\n\njulia> MOI.Utilities.@product_of_sets(\n Cones,\n MOI.Zeros,\n MOI.Nonnegatives,\n MOI.SecondOrderCone,\n MOI.PositiveSemidefiniteConeTriangle,\n);\n\njulia> const ConicModel{T} = MOI.Utilities.GenericOptimizer{\n T,\n MOI.Utilities.ObjectiveContainer{T},\n MOI.Utilities.FreeVariables,\n MOI.Utilities.MatrixOfConstraints{\n T,\n MOI.Utilities.MutableSparseMatrixCSC{\n T,\n Int,\n MOI.Utilities.OneBasedIndexing,\n },\n Vector{T},\n Cones{T},\n },\n};\n\njulia> model = MOI.instantiate(ConicModel{Float64}, with_bridge_type=Float64);\n\njulia> x = MOI.add_variable(model)\nMathOptInterface.VariableIndex(1)\n\njulia> c = MOI.add_constraint(model, x, MOI.GreaterThan(1.0))\nMathOptInterface.ConstraintIndex{MathOptInterface.VariableIndex, MathOptInterface.GreaterThan{Float64}}(1)\n\njulia> MOI.Bridges.is_bridged(model, c)\ntrue\n\njulia> bridge = MOI.Bridges.bridge(model, c)\nMathOptInterface.Bridges.Constraint.VectorizeBridge{Float64, MathOptInterface.VectorAffineFunction{Float64}, MathOptInterface.Nonnegatives, MathOptInterface.VariableIndex}(MathOptInterface.ConstraintIndex{MathOptInterface.VectorAffineFunction{Float64}, MathOptInterface.Nonnegatives}(1), 1.0)\n\njulia> bridge.vector_constraint\nMathOptInterface.ConstraintIndex{MathOptInterface.VectorAffineFunction{Float64}, MathOptInterface.Nonnegatives}(1)\n\njulia> MOI.Bridges.is_bridged(model, bridge.vector_constraint)\nfalse\n\n\n\n\n\n","category":"type"},{"location":"moi/submodules/Utilities/reference/#.constraints","page":"API Reference","title":".constraints","text":"","category":"section"},{"location":"moi/submodules/Utilities/reference/","page":"API Reference","title":"API Reference","text":"Utilities.VectorOfConstraints\nUtilities.StructOfConstraints\nUtilities.@struct_of_constraints_by_function_types\nUtilities.@struct_of_constraints_by_set_types\nUtilities.struct_of_constraint_code","category":"page"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.VectorOfConstraints","page":"API Reference","title":"MathOptInterface.Utilities.VectorOfConstraints","text":"mutable struct VectorOfConstraints{\n F<:MOI.AbstractFunction,\n S<:MOI.AbstractSet,\n} <: MOI.ModelLike\n constraints::CleverDicts.CleverDict{\n MOI.ConstraintIndex{F,S},\n Tuple{F,S},\n typeof(CleverDicts.key_to_index),\n typeof(CleverDicts.index_to_key),\n }\nend\n\nA struct storing F-in-S constraints as a mapping between the constraint indices to the corresponding tuple of function and set.\n\n\n\n\n\n","category":"type"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.StructOfConstraints","page":"API Reference","title":"MathOptInterface.Utilities.StructOfConstraints","text":"abstract type StructOfConstraints <: MOI.ModelLike end\n\nA struct storing a subfields other structs storing constraints of different types.\n\nSee Utilities.@struct_of_constraints_by_function_types and Utilities.@struct_of_constraints_by_set_types.\n\n\n\n\n\n","category":"type"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.@struct_of_constraints_by_function_types","page":"API Reference","title":"MathOptInterface.Utilities.@struct_of_constraints_by_function_types","text":"Utilities.@struct_of_constraints_by_function_types(name, func_types...)\n\nGiven a vector of n function types (F1, F2,..., Fn) in func_types, defines a subtype of StructOfConstraints of name name and which type parameters {T, C1, C2, ..., Cn}. It contains n field where the ith field has type Ci and stores the constraints of function type Fi.\n\nThe expression Fi can also be a union in which case any constraint for which the function type is in the union is stored in the field with type Ci.\n\n\n\n\n\n","category":"macro"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.@struct_of_constraints_by_set_types","page":"API Reference","title":"MathOptInterface.Utilities.@struct_of_constraints_by_set_types","text":"Utilities.@struct_of_constraints_by_set_types(name, func_types...)\n\nGiven a vector of n set types (S1, S2,..., Sn) in func_types, defines a subtype of StructOfConstraints of name name and which type parameters {T, C1, C2, ..., Cn}. It contains n field where the ith field has type Ci and stores the constraints of set type Si. The expression Si can also be a union in which case any constraint for which the set type is in the union is stored in the field with type Ci. This can be useful if Ci is a MatrixOfConstraints in order to concatenate the coefficients of constraints of several different set types in the same matrix.\n\n\n\n\n\n","category":"macro"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.struct_of_constraint_code","page":"API Reference","title":"MathOptInterface.Utilities.struct_of_constraint_code","text":"struct_of_constraint_code(struct_name, types, field_types = nothing)\n\nGiven a vector of n Union{SymbolFun,_UnionSymbolFS{SymbolFun}} or Union{SymbolSet,_UnionSymbolFS{SymbolSet}} in types, defines a subtype of StructOfConstraints of name name and which type parameters {T, F1, F2, ..., Fn} if field_types is nothing and a {T} otherwise. It contains n field where the ith field has type Ci if field_types is nothing and type field_types[i] otherwise. If types is vector of Union{SymbolFun,_UnionSymbolFS{SymbolFun}} (resp. Union{SymbolSet,_UnionSymbolFS{SymbolSet}}) then the constraints of that function (resp. set) type are stored in the corresponding field.\n\nThis function is used by the macros @model, @struct_of_constraints_by_function_types and @struct_of_constraints_by_set_types.\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Utilities/reference/#Caching-optimizer","page":"API Reference","title":"Caching optimizer","text":"","category":"section"},{"location":"moi/submodules/Utilities/reference/","page":"API Reference","title":"API Reference","text":"Utilities.CachingOptimizer\nUtilities.attach_optimizer\nUtilities.reset_optimizer\nUtilities.drop_optimizer\nUtilities.state\nUtilities.mode","category":"page"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.CachingOptimizer","page":"API Reference","title":"MathOptInterface.Utilities.CachingOptimizer","text":"CachingOptimizer\n\nCachingOptimizer is an intermediate layer that stores a cache of the model and links it with an optimizer. It supports incremental model construction and modification even when the optimizer doesn't.\n\nConstructors\n\n CachingOptimizer(cache::MOI.ModelLike, optimizer::AbstractOptimizer)\n\nCreates a CachingOptimizer in AUTOMATIC mode, with the optimizer optimizer.\n\nThe type of the optimizer returned is CachingOptimizer{typeof(optimizer), typeof(cache)} so it does not support the function reset_optimizer(::CachingOptimizer, new_optimizer) if the type of new_optimizer is different from the type of optimizer.\n\n CachingOptimizer(cache::MOI.ModelLike, mode::CachingOptimizerMode)\n\nCreates a CachingOptimizer in the NO_OPTIMIZER state and mode mode.\n\nThe type of the optimizer returned is CachingOptimizer{MOI.AbstractOptimizer,typeof(cache)} so it does support the function reset_optimizer(::CachingOptimizer, new_optimizer) if the type of new_optimizer is different from the type of optimizer.\n\nAbout the type\n\nStates\n\nA CachingOptimizer may be in one of three possible states (CachingOptimizerState):\n\nNO_OPTIMIZER: The CachingOptimizer does not have any optimizer.\nEMPTY_OPTIMIZER: The CachingOptimizer has an empty optimizer. The optimizer is not synchronized with the cached model.\nATTACHED_OPTIMIZER: The CachingOptimizer has an optimizer, and it is synchronized with the cached model.\n\nModes\n\nA CachingOptimizer has two modes of operation (CachingOptimizerMode):\n\nMANUAL: The only methods that change the state of the CachingOptimizer are Utilities.reset_optimizer, Utilities.drop_optimizer, and Utilities.attach_optimizer. Attempting to perform an operation in the incorrect state results in an error.\nAUTOMATIC: The CachingOptimizer changes its state when necessary. For example, optimize! will automatically call attach_optimizer (an optimizer must have been previously set). Attempting to add a constraint or perform a modification not supported by the optimizer results in a drop to EMPTY_OPTIMIZER mode.\n\n\n\n\n\n","category":"type"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.attach_optimizer","page":"API Reference","title":"MathOptInterface.Utilities.attach_optimizer","text":"attach_optimizer(model::CachingOptimizer)\n\nAttaches the optimizer to model, copying all model data into it. Can be called only from the EMPTY_OPTIMIZER state. If the copy succeeds, the CachingOptimizer will be in state ATTACHED_OPTIMIZER after the call, otherwise an error is thrown; see MOI.copy_to for more details on which errors can be thrown.\n\n\n\n\n\nMOIU.attach_optimizer(model::GenericModel)\n\nCall MOIU.attach_optimizer on the backend of model.\n\nCannot be called in direct mode.\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.reset_optimizer","page":"API Reference","title":"MathOptInterface.Utilities.reset_optimizer","text":"reset_optimizer(m::CachingOptimizer, optimizer::MOI.AbstractOptimizer)\n\nSets or resets m to have the given empty optimizer optimizer.\n\nCan be called from any state. An assertion error will be thrown if optimizer is not empty.\n\nThe CachingOptimizer m will be in state EMPTY_OPTIMIZER after the call.\n\n\n\n\n\nreset_optimizer(m::CachingOptimizer)\n\nDetaches and empties the current optimizer. Can be called from ATTACHED_OPTIMIZER or EMPTY_OPTIMIZER state. The CachingOptimizer will be in state EMPTY_OPTIMIZER after the call.\n\n\n\n\n\nMOIU.reset_optimizer(model::GenericModel, optimizer::MOI.AbstractOptimizer)\n\nCall MOIU.reset_optimizer on the backend of model.\n\nCannot be called in direct mode.\n\n\n\n\n\nMOIU.reset_optimizer(model::GenericModel)\n\nCall MOIU.reset_optimizer on the backend of model.\n\nCannot be called in direct mode.\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.drop_optimizer","page":"API Reference","title":"MathOptInterface.Utilities.drop_optimizer","text":"drop_optimizer(m::CachingOptimizer)\n\nDrops the optimizer, if one is present. Can be called from any state. The CachingOptimizer will be in state NO_OPTIMIZER after the call.\n\n\n\n\n\nMOIU.drop_optimizer(model::GenericModel)\n\nCall MOIU.drop_optimizer on the backend of model.\n\nCannot be called in direct mode.\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.state","page":"API Reference","title":"MathOptInterface.Utilities.state","text":"state(m::CachingOptimizer)::CachingOptimizerState\n\nReturns the state of the CachingOptimizer m. See Utilities.CachingOptimizer.\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.mode","page":"API Reference","title":"MathOptInterface.Utilities.mode","text":"mode(m::CachingOptimizer)::CachingOptimizerMode\n\nReturns the operating mode of the CachingOptimizer m. See Utilities.CachingOptimizer.\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Utilities/reference/#Mock-optimizer","page":"API Reference","title":"Mock optimizer","text":"","category":"section"},{"location":"moi/submodules/Utilities/reference/","page":"API Reference","title":"API Reference","text":"Utilities.MockOptimizer","category":"page"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.MockOptimizer","page":"API Reference","title":"MathOptInterface.Utilities.MockOptimizer","text":"MockOptimizer\n\nMockOptimizer is a fake optimizer especially useful for testing. Its main feature is that it can store the values that should be returned for each attribute.\n\n\n\n\n\n","category":"type"},{"location":"moi/submodules/Utilities/reference/#Printing","page":"API Reference","title":"Printing","text":"","category":"section"},{"location":"moi/submodules/Utilities/reference/","page":"API Reference","title":"API Reference","text":"Utilities.latex_formulation","category":"page"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.latex_formulation","page":"API Reference","title":"MathOptInterface.Utilities.latex_formulation","text":"latex_formulation(model::MOI.ModelLike; kwargs...)\n\nWrap model in a type so that it can be pretty-printed as text/latex in a notebook like IJulia, or in Documenter.\n\nTo render the model, end the cell with latex_formulation(model), or call display(latex_formulation(model)) in to force the display of the model from inside a function.\n\nPossible keyword arguments are:\n\nsimplify_coefficients : Simplify coefficients if possible by omitting them or removing trailing zeros.\ndefault_name : The name given to variables with an empty name.\nprint_types : Print the MOI type of each function and set for clarity.\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Utilities/reference/#Copy-utilities","page":"API Reference","title":"Copy utilities","text":"","category":"section"},{"location":"moi/submodules/Utilities/reference/","page":"API Reference","title":"API Reference","text":"Utilities.default_copy_to\nUtilities.IndexMap\nUtilities.identity_index_map\nUtilities.ModelFilter\nUtilities.loadfromstring!","category":"page"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.default_copy_to","page":"API Reference","title":"MathOptInterface.Utilities.default_copy_to","text":"default_copy_to(dest::MOI.ModelLike, src::MOI.ModelLike)\n\nA default implementation of MOI.copy_to(dest, src) for models that implement the incremental interface, that is, MOI.supports_incremental_interface returns true.\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.IndexMap","page":"API Reference","title":"MathOptInterface.Utilities.IndexMap","text":"IndexMap()\n\nThe dictionary-like object returned by MOI.copy_to.\n\n\n\n\n\n","category":"type"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.identity_index_map","page":"API Reference","title":"MathOptInterface.Utilities.identity_index_map","text":"identity_index_map(model::MOI.ModelLike)\n\nReturn an IndexMap that maps all variable and constraint indices of model to themselves.\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.ModelFilter","page":"API Reference","title":"MathOptInterface.Utilities.ModelFilter","text":"ModelFilter(filter::Function, model::MOI.ModelLike)\n\nA layer to filter out various components of model.\n\nThe filter function takes a single argument, which is each element from the list returned by the attributes below. It returns true if the element should be visible in the filtered model and false otherwise.\n\nThe components that are filtered are:\n\nEntire constraint types via:\nMOI.ListOfConstraintTypesPresent\nIndividual constraints via:\nMOI.ListOfConstraintIndices{F,S}\nSpecific attributes via:\nMOI.ListOfModelAttributesSet\nMOI.ListOfConstraintAttributesSet\nMOI.ListOfVariableAttributesSet\n\nwarning: Warning\nThe list of attributes filtered may change in a future release. You should write functions that are generic and not limited to the five types listed above. Thus, you should probably define a fallback filter(::Any) = true.\n\nSee below for examples of how this works.\n\nnote: Note\nThis layer has a limited scope. It is intended by be used in conjunction with MOI.copy_to.\n\nExample: copy model excluding integer constraints\n\nUse the do syntax to provide a single function.\n\nfiltered_src = MOI.Utilities.ModelFilter(src) do item\n return item != (MOI.VariableIndex, MOI.Integer)\nend\nMOI.copy_to(dest, filtered_src)\n\nExample: copy model excluding names\n\nUse type dispatch to simplify the implementation:\n\nmy_filter(::Any) = true # Note the generic fallback\nmy_filter(::MOI.VariableName) = false\nmy_filter(::MOI.ConstraintName) = false\nfiltered_src = MOI.Utilities.ModelFilter(my_filter, src)\nMOI.copy_to(dest, filtered_src)\n\nExample: copy irreducible infeasible subsystem\n\nmy_filter(::Any) = true # Note the generic fallback\nfunction my_filter(ci::MOI.ConstraintIndex)\n status = MOI.get(dest, MOI.ConstraintConflictStatus(), ci)\n return status != MOI.NOT_IN_CONFLICT\nend\nfiltered_src = MOI.Utilities.ModelFilter(my_filter, src)\nMOI.copy_to(dest, filtered_src)\n\n\n\n\n\n","category":"type"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.loadfromstring!","page":"API Reference","title":"MathOptInterface.Utilities.loadfromstring!","text":"loadfromstring!(model, s)\n\nA utility function to aid writing tests.\n\nwarning: Warning\nThis function is not intended for widespread use. It is mainly used as a tool to simplify writing tests in MathOptInterface. Do not use it as an exchange format for storing or transmitting problem instances. Use the FileFormats submodule instead.\n\nExample\n\njulia> model = MOI.Utilities.Model{Float64}();\n\njulia> MOI.Utilities.loadfromstring!(model, \"\"\"\n variables: x, y, z\n constrainedvariable: [a, b, c] in Nonnegatives(3)\n minobjective::Float64: 2x + 3y\n con1: x + y <= 1.0\n con2: [x, y] in Nonnegatives(2)\n x >= 0.0\n \"\"\")\n\nNotes\n\nSpecial labels are:\n\nvariables\nminobjective\nmaxobjectives\n\nEverything else denotes a constraint with a name.\n\nAppend ::T to use an element type of T when parsing the function.\n\nDo not name VariableIndex constraints.\n\nExceptions\n\nx - y does NOT currently parse. Instead, write x + -1.0 * y.\nx^2 does NOT currently parse. Instead, write x * x.\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Utilities/reference/#Penalty-relaxation","page":"API Reference","title":"Penalty relaxation","text":"","category":"section"},{"location":"moi/submodules/Utilities/reference/","page":"API Reference","title":"API Reference","text":"Utilities.PenaltyRelaxation\nUtilities.ScalarPenaltyRelaxation","category":"page"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.PenaltyRelaxation","page":"API Reference","title":"MathOptInterface.Utilities.PenaltyRelaxation","text":"PenaltyRelaxation(\n penalties = Dict{MOI.ConstraintIndex,Float64}();\n default::Union{Nothing,T} = 1.0,\n)\n\nA problem modifier that, when passed to MOI.modify, destructively modifies the model in-place to create a penalized relaxation of the constraints.\n\nwarning: Warning\nThis is a destructive routine that modifies the model in-place. If you don't want to modify the original model, use JuMP.copy_model to create a copy before calling MOI.modify.\n\nReformulation\n\nSee Utilities.ScalarPenaltyRelaxation for details of the reformulation.\n\nFor each constraint ci, the penalty passed to Utilities.ScalarPenaltyRelaxation is get(penalties, ci, default). If the value is nothing, because ci does not exist in penalties and default = nothing, then the constraint is skipped.\n\nReturn value\n\nMOI.modify(model, PenaltyRelaxation()) returns a Dict{MOI.ConstraintIndex,MOI.ScalarAffineFunction} that maps each constraint index to the corresponding y + z as a MOI.ScalarAffineFunction. In an optimal solution, query the value of these functions to compute the violation of each constraint.\n\nRelax a subset of constraints\n\nTo relax a subset of constraints, pass a penalties dictionary and set default = nothing.\n\nSupported constraint types\n\nThe penalty relaxation is currently limited to modifying MOI.ScalarAffineFunction and MOI.ScalarQuadraticFunction constraints in the linear sets MOI.LessThan, MOI.GreaterThan, MOI.EqualTo and MOI.Interval.\n\nIt does not include variable bound or integrality constraints, because these cannot be modified in-place.\n\nTo modify variable bounds, rewrite them as linear constraints.\n\nExample\n\njulia> model = MOI.Utilities.Model{Float64}();\n\njulia> x = MOI.add_variable(model);\n\njulia> c = MOI.add_constraint(model, 1.0 * x, MOI.LessThan(2.0));\n\njulia> map = MOI.modify(model, MOI.Utilities.PenaltyRelaxation(default = 2.0));\n\njulia> print(model)\nMinimize ScalarAffineFunction{Float64}:\n 0.0 + 2.0 v[2]\n\nSubject to:\n\nScalarAffineFunction{Float64}-in-LessThan{Float64}\n 0.0 + 1.0 v[1] - 1.0 v[2] <= 2.0\n\nVariableIndex-in-GreaterThan{Float64}\n v[2] >= 0.0\n\njulia> map[c] isa MOI.ScalarAffineFunction{Float64}\ntrue\n\njulia> model = MOI.Utilities.Model{Float64}();\n\njulia> x = MOI.add_variable(model);\n\njulia> c = MOI.add_constraint(model, 1.0 * x, MOI.LessThan(2.0));\n\njulia> map = MOI.modify(model, MOI.Utilities.PenaltyRelaxation(Dict(c => 3.0)));\n\njulia> print(model)\nMinimize ScalarAffineFunction{Float64}:\n 0.0 + 3.0 v[2]\n\nSubject to:\n\nScalarAffineFunction{Float64}-in-LessThan{Float64}\n 0.0 + 1.0 v[1] - 1.0 v[2] <= 2.0\n\nVariableIndex-in-GreaterThan{Float64}\n v[2] >= 0.0\n\njulia> map[c] isa MOI.ScalarAffineFunction{Float64}\ntrue\n\n\n\n\n\n","category":"type"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.ScalarPenaltyRelaxation","page":"API Reference","title":"MathOptInterface.Utilities.ScalarPenaltyRelaxation","text":"ScalarPenaltyRelaxation(penalty::T) where {T}\n\nA problem modifier that, when passed to MOI.modify, destructively modifies the constraint in-place to create a penalized relaxation of the constraint.\n\nwarning: Warning\nThis is a destructive routine that modifies the constraint in-place. If you don't want to modify the original model, use JuMP.copy_model to create a copy before calling MOI.modify.\n\nReformulation\n\nThe penalty relaxation modifies constraints of the form f(x) in S into f(x) + y - z in S, where y z ge 0, and then it introduces a penalty term into the objective of a times (y + z) (if minimizing, else -a), where a is penalty\n\nWhen S is MOI.LessThan or MOI.GreaterThan, we omit y or z respectively as a performance optimization.\n\nReturn value\n\nMOI.modify(model, ci, ScalarPenaltyRelaxation(penalty)) returns y + z as a MOI.ScalarAffineFunction. In an optimal solution, query the value of this function to compute the violation of the constraint.\n\nExample\n\njulia> model = MOI.Utilities.Model{Float64}();\n\njulia> x = MOI.add_variable(model);\n\njulia> c = MOI.add_constraint(model, 1.0 * x, MOI.LessThan(2.0));\n\njulia> f = MOI.modify(model, c, MOI.Utilities.ScalarPenaltyRelaxation(2.0));\n\njulia> print(model)\nMinimize ScalarAffineFunction{Float64}:\n 0.0 + 2.0 v[2]\n\nSubject to:\n\nScalarAffineFunction{Float64}-in-LessThan{Float64}\n 0.0 + 1.0 v[1] - 1.0 v[2] <= 2.0\n\nVariableIndex-in-GreaterThan{Float64}\n v[2] >= 0.0\n\njulia> f isa MOI.ScalarAffineFunction{Float64}\ntrue\n\n\n\n\n\n","category":"type"},{"location":"moi/submodules/Utilities/reference/#MatrixOfConstraints","page":"API Reference","title":"MatrixOfConstraints","text":"","category":"section"},{"location":"moi/submodules/Utilities/reference/","page":"API Reference","title":"API Reference","text":"Utilities.MatrixOfConstraints","category":"page"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.MatrixOfConstraints","page":"API Reference","title":"MathOptInterface.Utilities.MatrixOfConstraints","text":"mutable struct MatrixOfConstraints{T,AT,BT,ST} <: MOI.ModelLike\n coefficients::AT\n constants::BT\n sets::ST\n caches::Vector{Any}\n are_indices_mapped::Vector{BitSet}\n final_touch::Bool\nend\n\nRepresent ScalarAffineFunction and VectorAffinefunction constraints in a matrix form where the linear coefficients of the functions are stored in the coefficients field, the constants of the functions or sets are stored in the constants field. Additional information about the sets are stored in the sets field.\n\nThis model can only be used as the constraints field of a MOI.Utilities.AbstractModel.\n\nWhen the constraints are added, they are stored in the caches field. They are only loaded in the coefficients and constants fields once MOI.Utilities.final_touch is called. For this reason, MatrixOfConstraints should not be used by an incremental interface. Use MOI.copy_to instead.\n\nThe constraints can be added in two different ways:\n\nWith add_constraint, in which case a canonicalized copy of the function is stored in caches.\nWith pass_nonvariable_constraints, in which case the functions and sets are stored themselves in caches without mapping the variable indices. The corresponding index in caches is added in are_indices_mapped. This avoids doing a copy of the function in case the getter of CanonicalConstraintFunction does not make a copy for the source model, for example, this is the case of VectorOfConstraints.\n\nWe illustrate this with an example. Suppose a model is copied from a src::MOI.Utilities.Model to a bridged model with a MatrixOfConstraints. For all the types that are not bridged, the constraints will be copied with pass_nonvariable_constraints. Hence the functions stored in caches are exactly the same as the ones stored in src. This is ok since this is only during the copy_to operation during which src cannot be modified. On the other hand, for the types that are bridged, the functions added may contain duplicates even if the functions did not contain duplicates in src so duplicates are removed with MOI.Utilities.canonical.\n\nInterface\n\nThe .coefficients::AT type must implement:\n\nAT()\nMOI.empty(::AT)!\nMOI.Utilities.add_column\nMOI.Utilities.set_number_of_rows\nMOI.Utilities.allocate_terms\nMOI.Utilities.load_terms\nMOI.Utilities.final_touch\n\nThe .constants::BT type must implement:\n\nBT()\nBase.empty!(::BT)\nBase.resize(::BT)\nMOI.Utilities.load_constants\nMOI.Utilities.function_constants\nMOI.Utilities.set_from_constants\n\nThe .sets::ST type must implement:\n\nST()\nMOI.is_empty(::ST)\nMOI.empty(::ST)\nMOI.dimension(::ST)\nMOI.is_valid(::ST, ::MOI.ConstraintIndex)\nMOI.get(::ST, ::MOI.ListOfConstraintTypesPresent)\nMOI.get(::ST, ::MOI.NumberOfConstraints)\nMOI.get(::ST, ::MOI.ListOfConstraintIndices)\nMOI.Utilities.set_types\nMOI.Utilities.set_index\nMOI.Utilities.add_set\nMOI.Utilities.rows\nMOI.Utilities.final_touch\n\n\n\n\n\n","category":"type"},{"location":"moi/submodules/Utilities/reference/#.coefficients","page":"API Reference","title":".coefficients","text":"","category":"section"},{"location":"moi/submodules/Utilities/reference/","page":"API Reference","title":"API Reference","text":"Utilities.add_column\nUtilities.allocate_terms\nUtilities.set_number_of_rows\nUtilities.load_terms\nUtilities.final_touch\nUtilities.extract_function","category":"page"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.add_column","page":"API Reference","title":"MathOptInterface.Utilities.add_column","text":"add_column(coefficients)::Nothing\n\nTell coefficients to pre-allocate datastructures as needed to store one column.\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.allocate_terms","page":"API Reference","title":"MathOptInterface.Utilities.allocate_terms","text":"allocate_terms(coefficients, index_map, func)::Nothing\n\nTell coefficients that the terms of the function func where the variable indices are mapped with index_map will be loaded with load_terms.\n\nThe function func must be canonicalized before calling allocate_terms. See is_canonical.\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.set_number_of_rows","page":"API Reference","title":"MathOptInterface.Utilities.set_number_of_rows","text":"set_number_of_rows(coefficients, n)::Nothing\n\nTell coefficients to pre-allocate datastructures as needed to store n rows.\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.load_terms","page":"API Reference","title":"MathOptInterface.Utilities.load_terms","text":"load_terms(coefficients, index_map, func, offset)::Nothing\n\nLoads the terms of func to coefficients, mapping the variable indices with index_map.\n\nThe ith dimension of func is loaded at the (offset + i)th row of coefficients.\n\nThe function must be allocated first with allocate_terms.\n\nThe function func must be canonicalized, see is_canonical.\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.final_touch","page":"API Reference","title":"MathOptInterface.Utilities.final_touch","text":"final_touch(coefficients)::Nothing\n\nInforms the coefficients that all functions have been added with load_terms. No more modification is allowed unless MOI.empty! is called.\n\nfinal_touch(sets)::Nothing\n\nInforms the sets that all functions have been added with add_set. No more modification is allowed unless MOI.empty! is called.\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.extract_function","page":"API Reference","title":"MathOptInterface.Utilities.extract_function","text":"extract_function(coefficients, row::Integer, constant::T) where {T}\n\nReturn the MOI.ScalarAffineFunction{T} function corresponding to row row in coefficients.\n\nextract_function(\n coefficients,\n rows::UnitRange,\n constants::Vector{T},\n) where{T}\n\nReturn the MOI.VectorAffineFunction{T} function corresponding to rows rows in coefficients.\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Utilities/reference/","page":"API Reference","title":"API Reference","text":"Utilities.MutableSparseMatrixCSC\nUtilities.AbstractIndexing\nUtilities.ZeroBasedIndexing\nUtilities.OneBasedIndexing","category":"page"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.MutableSparseMatrixCSC","page":"API Reference","title":"MathOptInterface.Utilities.MutableSparseMatrixCSC","text":"mutable struct MutableSparseMatrixCSC{Tv,Ti<:Integer,I<:AbstractIndexing}\n indexing::I\n m::Int\n n::Int\n colptr::Vector{Ti}\n rowval::Vector{Ti}\n nzval::Vector{Tv}\n nz_added::Vector{Ti}\nend\n\nMatrix type loading sparse matrices in the Compressed Sparse Column format. The indexing used is indexing, see AbstractIndexing. The other fields have the same meaning than for SparseArrays.SparseMatrixCSC except that the indexing is different unless indexing is OneBasedIndexing. In addition, nz_added is used to cache the number of non-zero terms that have been added to each column due to the incremental nature of load_terms.\n\nThe matrix is loaded in 5 steps:\n\nMOI.empty! is called.\nMOI.Utilities.add_column and MOI.Utilities.allocate_terms are called in any order.\nMOI.Utilities.set_number_of_rows is called.\nMOI.Utilities.load_terms is called for each affine function.\nMOI.Utilities.final_touch is called.\n\n\n\n\n\n","category":"type"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.AbstractIndexing","page":"API Reference","title":"MathOptInterface.Utilities.AbstractIndexing","text":"abstract type AbstractIndexing end\n\nIndexing to be used for storing the row and column indices of MutableSparseMatrixCSC. See ZeroBasedIndexing and OneBasedIndexing.\n\n\n\n\n\n","category":"type"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.ZeroBasedIndexing","page":"API Reference","title":"MathOptInterface.Utilities.ZeroBasedIndexing","text":"struct ZeroBasedIndexing <: AbstractIndexing end\n\nZero-based indexing: the ith row or column has index i - 1. This is useful when the vectors of row and column indices need to be communicated to a library using zero-based indexing such as C libraries.\n\n\n\n\n\n","category":"type"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.OneBasedIndexing","page":"API Reference","title":"MathOptInterface.Utilities.OneBasedIndexing","text":"struct ZeroBasedIndexing <: AbstractIndexing end\n\nOne-based indexing: the ith row or column has index i. This enables an allocation-free conversion of MutableSparseMatrixCSC to SparseArrays.SparseMatrixCSC.\n\n\n\n\n\n","category":"type"},{"location":"moi/submodules/Utilities/reference/#.constants","page":"API Reference","title":".constants","text":"","category":"section"},{"location":"moi/submodules/Utilities/reference/","page":"API Reference","title":"API Reference","text":"Utilities.load_constants\nUtilities.function_constants\nUtilities.set_from_constants\nUtilities.modify_constants","category":"page"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.load_constants","page":"API Reference","title":"MathOptInterface.Utilities.load_constants","text":"load_constants(constants, offset, func_or_set)::Nothing\n\nThis function loads the constants of func_or_set in constants at an offset of offset. Where offset is the sum of the dimensions of the constraints already loaded. The storage should be preallocated with resize! before calling this function.\n\nThis function should be implemented to be usable as storage of constants for MatrixOfConstraints.\n\nThe constants are loaded in three steps:\n\nBase.empty! is called.\nBase.resize! is called with the sum of the dimensions of all constraints.\nMOI.Utilities.load_constants is called for each function for vector constraint or set for scalar constraint.\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.function_constants","page":"API Reference","title":"MathOptInterface.Utilities.function_constants","text":"function_constants(constants, rows)\n\nThis function returns the function constants that were loaded with load_constants at the rows rows.\n\nThis function should be implemented to be usable as storage of constants for MatrixOfConstraints.\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.set_from_constants","page":"API Reference","title":"MathOptInterface.Utilities.set_from_constants","text":"set_from_constants(constants, S::Type, rows)::S\n\nThis function returns an instance of the set S for which the constants where loaded with load_constants at the rows rows.\n\nThis function should be implemented to be usable as storage of constants for MatrixOfConstraints.\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.modify_constants","page":"API Reference","title":"MathOptInterface.Utilities.modify_constants","text":"modify_constants(constants, row::Integer, new_constant::T) where {T}\nmodify_constants(\n constants,\n rows::AbstractVector{<:Integer},\n new_constants::AbstractVector{T},\n) where {T}\n\nModify constants in-place to store new_constant in the row row, or rows rows.\n\nThis function must be implemented to enable MOI.ScalarConstantChange and MOI.VectorConstantChange for MatrixOfConstraints.\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Utilities/reference/","page":"API Reference","title":"API Reference","text":"Utilities.Hyperrectangle","category":"page"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.Hyperrectangle","page":"API Reference","title":"MathOptInterface.Utilities.Hyperrectangle","text":"struct Hyperrectangle{T} <: AbstractVectorBounds\n lower::Vector{T}\n upper::Vector{T}\nend\n\nA struct for the .constants field in MatrixOfConstraints.\n\n\n\n\n\n","category":"type"},{"location":"moi/submodules/Utilities/reference/#.sets","page":"API Reference","title":".sets","text":"","category":"section"},{"location":"moi/submodules/Utilities/reference/","page":"API Reference","title":"API Reference","text":"Utilities.set_index\nUtilities.set_types\nUtilities.add_set\nUtilities.rows\nUtilities.num_rows\nUtilities.set_with_dimension","category":"page"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.set_index","page":"API Reference","title":"MathOptInterface.Utilities.set_index","text":"set_index(sets, ::Type{S})::Union{Int,Nothing} where {S<:MOI.AbstractSet}\n\nReturn an integer corresponding to the index of the set type in the list given by set_types.\n\nIf S is not part of the list, return nothing.\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.set_types","page":"API Reference","title":"MathOptInterface.Utilities.set_types","text":"set_types(sets)::Vector{Type}\n\nReturn the list of the types of the sets allowed in sets.\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.add_set","page":"API Reference","title":"MathOptInterface.Utilities.add_set","text":"add_set(sets, i)::Int64\n\nAdd a scalar set of type index i.\n\nadd_set(sets, i, dim)::Int64\n\nAdd a vector set of type index i and dimension dim.\n\nBoth methods return a unique Int64 of the set that can be used to reference this set.\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.rows","page":"API Reference","title":"MathOptInterface.Utilities.rows","text":"rows(sets, ci::MOI.ConstraintIndex)::Union{Int,UnitRange{Int}}\n\nReturn the rows in 1:MOI.dimension(sets) corresponding to the set of id ci.value.\n\nFor scalar sets, this returns an Int. For vector sets, this returns an UnitRange{Int}.\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.num_rows","page":"API Reference","title":"MathOptInterface.Utilities.num_rows","text":"num_rows(sets::OrderedProductOfSets, ::Type{S}) where {S}\n\nReturn the number of rows corresponding to a set of type S. That is, it is the sum of the dimensions of the sets of type S.\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.set_with_dimension","page":"API Reference","title":"MathOptInterface.Utilities.set_with_dimension","text":"set_with_dimension(::Type{S}, dim) where {S<:MOI.AbstractVectorSet}\n\nReturns the instance of S of MOI.dimension dim. This needs to be implemented for sets of type S to be useable with MatrixOfConstraints.\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Utilities/reference/","page":"API Reference","title":"API Reference","text":"Utilities.ProductOfSets\nUtilities.MixOfScalarSets\nUtilities.@mix_of_scalar_sets\nUtilities.OrderedProductOfSets\nUtilities.@product_of_sets","category":"page"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.ProductOfSets","page":"API Reference","title":"MathOptInterface.Utilities.ProductOfSets","text":"abstract type ProductOfSets{T} end\n\nRepresents a cartesian product of sets of given types.\n\n\n\n\n\n","category":"type"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.MixOfScalarSets","page":"API Reference","title":"MathOptInterface.Utilities.MixOfScalarSets","text":"abstract type MixOfScalarSets{T} <: ProductOfSets{T} end\n\nProduct of scalar sets in the order the constraints are added, mixing the constraints of different types.\n\nUse @mix_of_scalar_sets to generate a new subtype.\n\n\n\n\n\n","category":"type"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.@mix_of_scalar_sets","page":"API Reference","title":"MathOptInterface.Utilities.@mix_of_scalar_sets","text":"@mix_of_scalar_sets(name, set_types...)\n\nGenerate a new MixOfScalarSets subtype.\n\nExample\n\njulia> import MathOptInterface as MOI\n\njulia> MOI.Utilities.@mix_of_scalar_sets(\n MixedIntegerLinearProgramSets,\n MOI.GreaterThan{T},\n MOI.LessThan{T},\n MOI.EqualTo{T},\n MOI.Integer,\n )\n\n\n\n\n\n","category":"macro"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.OrderedProductOfSets","page":"API Reference","title":"MathOptInterface.Utilities.OrderedProductOfSets","text":"abstract type OrderedProductOfSets{T} <: ProductOfSets{T} end\n\nProduct of sets in the order the constraints are added, grouping the constraints of the same types contiguously.\n\nUse @product_of_sets to generate new subtypes.\n\n\n\n\n\n","category":"type"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.@product_of_sets","page":"API Reference","title":"MathOptInterface.Utilities.@product_of_sets","text":"@product_of_sets(name, set_types...)\n\nGenerate a new OrderedProductOfSets subtype.\n\nExample\n\njulia> import MathOptInterface as MOI\n\njulia> MOI.Utilities.@product_of_sets(\n LinearOrthants,\n MOI.Zeros,\n MOI.Nonnegatives,\n MOI.Nonpositives,\n MOI.ZeroOne,\n )\n\n\n\n\n\n","category":"macro"},{"location":"moi/submodules/Utilities/reference/#Fallbacks","page":"API Reference","title":"Fallbacks","text":"","category":"section"},{"location":"moi/submodules/Utilities/reference/","page":"API Reference","title":"API Reference","text":"Utilities.get_fallback","category":"page"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.get_fallback","page":"API Reference","title":"MathOptInterface.Utilities.get_fallback","text":"get_fallback(model::MOI.ModelLike, ::MOI.ObjectiveValue)\n\nCompute the objective function value using the VariablePrimal results and the ObjectiveFunction value.\n\n\n\n\n\nget_fallback(\n model::MOI.ModelLike,\n ::MOI.DualObjectiveValue,\n ::Type{T},\n)::T where {T}\n\nCompute the dual objective value of type T using the ConstraintDual results and the ConstraintFunction and ConstraintSet values.\n\nNote that the nonlinear part of the model is ignored.\n\n\n\n\n\nget_fallback(\n model::MOI.ModelLike,\n ::MOI.ConstraintPrimal,\n constraint_index::MOI.ConstraintIndex,\n)\n\nCompute the value of the function of the constraint of index constraint_index using the VariablePrimal results and the ConstraintFunction values.\n\n\n\n\n\nget_fallback(\n model::MOI.ModelLike,\n attr::MOI.ConstraintDual,\n ci::MOI.ConstraintIndex{Union{MOI.VariableIndex,MOI.VectorOfVariables}},\n ::Type{T} = Float64,\n) where {T}\n\nCompute the dual of the constraint of index ci using the ConstraintDual of other constraints and the ConstraintFunction values.\n\nThrows an error if some constraints are quadratic or if there is one another MOI.VariableIndex-in-S or MOI.VectorOfVariables-in-S constraint with one of the variables in the function of the constraint ci.\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Utilities/reference/#Function-utilities","page":"API Reference","title":"Function utilities","text":"","category":"section"},{"location":"moi/submodules/Utilities/reference/","page":"API Reference","title":"API Reference","text":"The following utilities are available for functions:","category":"page"},{"location":"moi/submodules/Utilities/reference/","page":"API Reference","title":"API Reference","text":"Utilities.eval_variables\nUtilities.map_indices\nUtilities.substitute_variables\nUtilities.filter_variables\nUtilities.remove_variable\nUtilities.all_coefficients\nUtilities.unsafe_add\nUtilities.isapprox_zero\nUtilities.modify_function\nUtilities.zero_with_output_dimension","category":"page"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.eval_variables","page":"API Reference","title":"MathOptInterface.Utilities.eval_variables","text":"eval_variables(value_fn::Function, f::MOI.AbstractFunction)\n\nReturns the value of function f if each variable index vi is evaluated as value_fn(vi).\n\nNote that value_fn must return a Number. See substitute_variables for a similar function where value_fn returns an MOI.AbstractScalarFunction.\n\nwarning: Warning\nThe two-argument version of eval_variables is deprecated and may be removed in MOI v2.0.0. Use the three-argument method eval_variables(::Function, ::MOI.ModelLike, ::MOI.AbstractFunction) instead.\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.map_indices","page":"API Reference","title":"MathOptInterface.Utilities.map_indices","text":"map_indices(index_map::Function, attr::MOI.AnyAttribute, x::X)::X where {X}\n\nSubstitute any MOI.VariableIndex (resp. MOI.ConstraintIndex) in x by the MOI.VariableIndex (resp. MOI.ConstraintIndex) of the same type given by index_map(x).\n\nWhen to implement this method for new types X\n\nThis function is used by implementations of MOI.copy_to on constraint functions, attribute values and submittable values. If you define a new attribute whose values x::X contain variable or constraint indices, you must also implement this function.\n\n\n\n\n\nmap_indices(\n variable_map::AbstractDict{T,T},\n x::X,\n)::X where {T<:MOI.Index,X}\n\nShortcut for map_indices(vi -> variable_map[vi], x).\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.substitute_variables","page":"API Reference","title":"MathOptInterface.Utilities.substitute_variables","text":"substitute_variables(variable_map::Function, x)\n\nSubstitute any MOI.VariableIndex in x by variable_map(x). The variable_map function returns either MOI.VariableIndex or MOI.ScalarAffineFunction, see eval_variables for a similar function where variable_map returns a number.\n\nThis function is used by bridge optimizers on constraint functions, attribute values and submittable values when at least one variable bridge is used hence it needs to be implemented for custom types that are meant to be used as attribute or submittable value.\n\nnote: Note\nWhen implementing a new method, don't use substitute_variables(::Function, because Julia will not specialize on it. Use instead substitute_variables(::F, ...) where {F<:Function}.\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.filter_variables","page":"API Reference","title":"MathOptInterface.Utilities.filter_variables","text":"filter_variables(keep::Function, f::AbstractFunction)\n\nReturn a new function f with the variable vi such that !keep(vi) removed.\n\nWARNING: Don't define filter_variables(::Function, ...) because Julia will not specialize on this. Define instead filter_variables(::F, ...) where {F<:Function}.\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.remove_variable","page":"API Reference","title":"MathOptInterface.Utilities.remove_variable","text":"remove_variable(f::AbstractFunction, vi::VariableIndex)\n\nReturn a new function f with the variable vi removed.\n\n\n\n\n\nremove_variable(\n f::MOI.AbstractFunction,\n s::MOI.AbstractSet,\n vi::MOI.VariableIndex,\n)\n\nReturn a tuple (g, t) representing the constraint f-in-s with the variable vi removed. That is, the terms containing the variable vi in the function f are removed and the dimension of the set s is updated if needed (for example, when f is a VectorOfVariables with vi being one of the variables).\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.all_coefficients","page":"API Reference","title":"MathOptInterface.Utilities.all_coefficients","text":"all_coefficients(p::Function, f::MOI.AbstractFunction)\n\nDetermine whether predicate p returns true for all coefficients of f, returning false as soon as the first coefficient of f for which p returns false is encountered (short-circuiting). Similar to all.\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.unsafe_add","page":"API Reference","title":"MathOptInterface.Utilities.unsafe_add","text":"unsafe_add(t1::MOI.ScalarAffineTerm, t2::MOI.ScalarAffineTerm)\n\nSums the coefficients of t1 and t2 and returns an output MOI.ScalarAffineTerm. It is unsafe because it uses the variable of t1 as the variable of the output without checking that it is equal to that of t2.\n\n\n\n\n\nunsafe_add(t1::MOI.ScalarQuadraticTerm, t2::MOI.ScalarQuadraticTerm)\n\nSums the coefficients of t1 and t2 and returns an output MOI.ScalarQuadraticTerm. It is unsafe because it uses the variable's of t1 as the variable's of the output without checking that they are the same (up to permutation) to those of t2.\n\n\n\n\n\nunsafe_add(t1::MOI.VectorAffineTerm, t2::MOI.VectorAffineTerm)\n\nSums the coefficients of t1 and t2 and returns an output MOI.VectorAffineTerm. It is unsafe because it uses the output_index and variable of t1 as the output_index and variable of the output term without checking that they are equal to those of t2.\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.isapprox_zero","page":"API Reference","title":"MathOptInterface.Utilities.isapprox_zero","text":"isapprox_zero(f::MOI.AbstractFunction, tol)\n\nReturn a Bool indicating whether the function f is approximately zero using tol as a tolerance.\n\nImportant note\n\nThis function assumes that f does not contain any duplicate terms, you might want to first call canonical if that is not guaranteed.\n\nExample\n\njulia> import MathOptInterface as MOI\n\njulia> x = MOI.VariableIndex(1)\nMOI.VariableIndex(1)\n\njulia> f = MOI.ScalarAffineFunction(MOI.ScalarAffineTerm.([1, -1], [x, x]), 0)\n(0) + (1) MOI.VariableIndex(1) - (1) MOI.VariableIndex(1)\n\njulia> MOI.Utilities.isapprox_zero(f, 1e-8)\nfalse\n\njulia> MOI.Utilities.isapprox_zero(MOI.Utilities.canonical(f), 1e-8)\ntrue\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.modify_function","page":"API Reference","title":"MathOptInterface.Utilities.modify_function","text":"modify_function(f::AbstractFunction, change::AbstractFunctionModification)\n\nReturn a copy of the function f, modified according to change.\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.zero_with_output_dimension","page":"API Reference","title":"MathOptInterface.Utilities.zero_with_output_dimension","text":"zero_with_output_dimension(::Type{T}, output_dimension::Integer) where {T}\n\nCreate an instance of type T with the output dimension output_dimension.\n\nThis is mostly useful in Bridges, when code needs to be agnostic to the type of vector-valued function that is passed in.\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Utilities/reference/","page":"API Reference","title":"API Reference","text":"The following functions can be used to canonicalize a function:","category":"page"},{"location":"moi/submodules/Utilities/reference/","page":"API Reference","title":"API Reference","text":"Utilities.is_canonical\nUtilities.canonical\nUtilities.canonicalize!","category":"page"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.is_canonical","page":"API Reference","title":"MathOptInterface.Utilities.is_canonical","text":"is_canonical(f::Union{ScalarAffineFunction, VectorAffineFunction})\n\nReturns a Bool indicating whether the function is in canonical form. See canonical.\n\n\n\n\n\nis_canonical(f::Union{ScalarQuadraticFunction, VectorQuadraticFunction})\n\nReturns a Bool indicating whether the function is in canonical form. See canonical.\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.canonical","page":"API Reference","title":"MathOptInterface.Utilities.canonical","text":"canonical(f::MOI.AbstractFunction)\n\nReturns the function in a canonical form, that is,\n\nA term appear only once.\nThe coefficients are nonzero.\nThe terms appear in increasing order of variable where there the order of the variables is the order of their value.\nFor a AbstractVectorFunction, the terms are sorted in ascending order of output index.\n\nThe output of canonical can be assumed to be a copy of f, even for VectorOfVariables.\n\nExample\n\njulia> import MathOptInterface as MOI\n\njulia> x, y, z = MOI.VariableIndex.(1:3);\n\njulia> f = MOI.ScalarAffineFunction(\n MOI.ScalarAffineTerm.(Float64[2, 1, 3, -2, -3], [y, x, z, x, z]),\n 5.0,\n )\n5.0 + 2.0 MOI.VariableIndex(2) + 1.0 MOI.VariableIndex(1) + 3.0 MOI.VariableIndex(3) - 2.0 MOI.VariableIndex(1) - 3.0 MOI.VariableIndex(3)\n\njulia> MOI.Utilities.canonical(f)\n5.0 - 1.0 MOI.VariableIndex(1) + 2.0 MOI.VariableIndex(2)\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.canonicalize!","page":"API Reference","title":"MathOptInterface.Utilities.canonicalize!","text":"canonicalize!(f::Union{ScalarAffineFunction, VectorAffineFunction})\n\nConvert a function to canonical form in-place, without allocating a copy to hold the result. See canonical.\n\n\n\n\n\ncanonicalize!(f::Union{ScalarQuadraticFunction, VectorQuadraticFunction})\n\nConvert a function to canonical form in-place, without allocating a copy to hold the result. See canonical.\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Utilities/reference/","page":"API Reference","title":"API Reference","text":"The following functions can be used to manipulate functions with basic algebra:","category":"page"},{"location":"moi/submodules/Utilities/reference/","page":"API Reference","title":"API Reference","text":"Utilities.scalar_type\nUtilities.scalarize\nUtilities.eachscalar\nUtilities.promote_operation\nUtilities.operate\nUtilities.operate!\nUtilities.operate_output_index!\nUtilities.vectorize","category":"page"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.scalar_type","page":"API Reference","title":"MathOptInterface.Utilities.scalar_type","text":"scalar_type(F::Type{<:MOI.AbstractVectorFunction})\n\nType of functions obtained by indexing objects obtained by calling eachscalar on functions of type F.\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.scalarize","page":"API Reference","title":"MathOptInterface.Utilities.scalarize","text":"scalarize(func::MOI.VectorOfVariables, ignore_constants::Bool = false)\n\nReturns a vector of scalar functions making up the vector function in the form of a Vector{MOI.SingleVariable}.\n\nSee also eachscalar.\n\n\n\n\n\nscalarize(func::MOI.VectorAffineFunction{T}, ignore_constants::Bool = false)\n\nReturns a vector of scalar functions making up the vector function in the form of a Vector{MOI.ScalarAffineFunction{T}}.\n\nSee also eachscalar.\n\n\n\n\n\nscalarize(func::MOI.VectorQuadraticFunction{T}, ignore_constants::Bool = false)\n\nReturns a vector of scalar functions making up the vector function in the form of a Vector{MOI.ScalarQuadraticFunction{T}}.\n\nSee also eachscalar.\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.eachscalar","page":"API Reference","title":"MathOptInterface.Utilities.eachscalar","text":"eachscalar(f::MOI.AbstractVectorFunction)\n\nReturns an iterator for the scalar components of the vector function.\n\nSee also scalarize.\n\n\n\n\n\neachscalar(f::MOI.AbstractVector)\n\nReturns an iterator for the scalar components of the vector.\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.promote_operation","page":"API Reference","title":"MathOptInterface.Utilities.promote_operation","text":"promote_operation(\n op::Function,\n ::Type{T},\n ArgsTypes::Type{<:Union{T,AbstractVector{T},MOI.AbstractFunction}}...,\n) where {T<:Number}\n\nCompute the return type of the call operate(op, T, args...), where the types of the arguments args are ArgsTypes.\n\nOne assumption is that the element type T is invariant under each operation. That is, op(::T, ::T)::T where op is a +, -, *, and /.\n\nThere are six methods for which we implement Utilities.promote_operation:\n\n+ a. promote_operation(::typeof(+), ::Type{T}, ::Type{F1}, ::Type{F2})\n- a. promote_operation(::typeof(-), ::Type{T}, ::Type{F}) b. promote_operation(::typeof(-), ::Type{T}, ::Type{F1}, ::Type{F2})\n* a. promote_operation(::typeof(*), ::Type{T}, ::Type{T}, ::Type{F}) b. promote_operation(::typeof(*), ::Type{T}, ::Type{F}, ::Type{T}) c. promote_operation(::typeof(*), ::Type{T}, ::Type{F1}, ::Type{F2}) where F1 and F2 are VariableIndex or ScalarAffineFunction d. promote_operation(::typeof(*), ::Type{T}, ::Type{<:Diagonal{T}}, ::Type{F}\n/ a. promote_operation(::typeof(/), ::Type{T}, ::Type{F}, ::Type{T})\nvcat a. promote_operation(::typeof(vcat), ::Type{T}, ::Type{F}...)\nimag a. promote_operation(::typeof(imag), ::Type{T}, ::Type{F}) where F is VariableIndex or VectorOfVariables\n\nIn each case, F (or F1 and F2) is one of the ten supported types, with a restriction that the mathematical operation makes sense, for example, we don't define promote_operation(-, T, F1, F2) where F1 is a scalar-valued function and F2 is a vector-valued function. The ten supported types are:\n\n::T\n::VariableIndex\n::ScalarAffineFunction{T}\n::ScalarQuadraticFunction{T}\n::ScalarNonlinearFunction\n::AbstractVector{T}\n::VectorOfVariables\n::VectorAffineFunction{T}\n::VectorQuadraticFunction{T}\n::VectorNonlinearFunction\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.operate","page":"API Reference","title":"MathOptInterface.Utilities.operate","text":"operate(\n op::Function,\n ::Type{T},\n args::Union{T,MOI.AbstractFunction}...,\n)::MOI.AbstractFunction where {T<:Number}\n\nReturns an MOI.AbstractFunction representing the function resulting from the operation op(args...) on functions of coefficient type T.\n\nNo argument can be modified.\n\nMethods\n\n+ a. operate(::typeof(+), ::Type{T}, ::F1) b. operate(::typeof(+), ::Type{T}, ::F1, ::F2) c. operate(::typeof(+), ::Type{T}, ::F1...)\n- a. operate(::typeof(-), ::Type{T}, ::F) b. operate(::typeof(-), ::Type{T}, ::F1, ::F2)\n* a. operate(::typeof(*), ::Type{T}, ::T, ::F) b. operate(::typeof(*), ::Type{T}, ::F, ::T) c. operate(::typeof(*), ::Type{T}, ::F1, ::F2) where F1 and F2 are VariableIndex or ScalarAffineFunction d. operate(::typeof(*), ::Type{T}, ::Diagonal{T}, ::F)\n/ a. operate(::typeof(/), ::Type{T}, ::F, ::T)\nvcat a. operate(::typeof(vcat), ::Type{T}, ::F...)\nimag a. operate(::typeof(imag), ::Type{T}, ::F) where F is VariableIndex or VectorOfVariables\n\nOne assumption is that the element type T is invariant under each operation. That is, op(::T, ::T)::T where op is a +, -, *, and /.\n\nIn each case, F (or F1 and F2) is one of the ten supported types, with a restriction that the mathematical operation makes sense, for example, we don't define promote_operation(-, T, F1, F2) where F1 is a scalar-valued function and F2 is a vector-valued function. The ten supported types are:\n\n::T\n::VariableIndex\n::ScalarAffineFunction{T}\n::ScalarQuadraticFunction{T}\n::ScalarNonlinearFunction\n::AbstractVector{T}\n::VectorOfVariables\n::VectorAffineFunction{T}\n::VectorQuadraticFunction{T}\n::VectorNonlinearFunction\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.operate!","page":"API Reference","title":"MathOptInterface.Utilities.operate!","text":"operate!(\n op::Function,\n ::Type{T},\n args::Union{T,MOI.AbstractFunction}...,\n)::MOI.AbstractFunction where {T<:Number}\n\nReturns an MOI.AbstractFunction representing the function resulting from the operation op(args...) on functions of coefficient type T.\n\nThe first argument may be modified, in which case the return value is identical to the first argument. For operations which cannot be implemented in-place, this function returns a new object.\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.operate_output_index!","page":"API Reference","title":"MathOptInterface.Utilities.operate_output_index!","text":"operate_output_index!(\n op::Union{typeof(+),typeof(-)},\n ::Type{T},\n output_index::Integer,\n f::Union{AbstractVector{T},MOI.AbstractVectorFunction}\n g::Union{T,MOI.AbstractScalarFunction}...\n) where {T<:Number}\n\nReturn an MOI.AbstractVectorFunction in which the scalar function in row output_index is the result of op(f[output_index], g).\n\nThe functions at output index different to output_index are the same as the functions at the same output index in func. The first argument may be modified.\n\nMethods\n\n+ a. operate_output_index!(+, ::Type{T}, ::Int, ::VectorF, ::ScalarF)\n- a. operate_output_index!(-, ::Type{T}, ::Int, ::VectorF, ::ScalarF)\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.vectorize","page":"API Reference","title":"MathOptInterface.Utilities.vectorize","text":"vectorize(x::AbstractVector{<:Number})\n\nReturns x.\n\n\n\n\n\nvectorize(x::AbstractVector{MOI.VariableIndex})\n\nReturns the vector of scalar affine functions in the form of a MOI.VectorAffineFunction{T}.\n\n\n\n\n\nvectorize(funcs::AbstractVector{MOI.ScalarAffineFunction{T}}) where T\n\nReturns the vector of scalar affine functions in the form of a MOI.VectorAffineFunction{T}.\n\n\n\n\n\nvectorize(funcs::AbstractVector{MOI.ScalarQuadraticFunction{T}}) where T\n\nReturns the vector of scalar quadratic functions in the form of a MOI.VectorQuadraticFunction{T}.\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Utilities/reference/#Constraint-utilities","page":"API Reference","title":"Constraint utilities","text":"","category":"section"},{"location":"moi/submodules/Utilities/reference/","page":"API Reference","title":"API Reference","text":"The following utilities are available for moving the function constant to the set for scalar constraints:","category":"page"},{"location":"moi/submodules/Utilities/reference/","page":"API Reference","title":"API Reference","text":"Utilities.shift_constant\nUtilities.supports_shift_constant\nUtilities.normalize_and_add_constraint\nUtilities.normalize_constant","category":"page"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.shift_constant","page":"API Reference","title":"MathOptInterface.Utilities.shift_constant","text":"shift_constant(set::MOI.AbstractScalarSet, offset)\n\nReturns a new scalar set new_set such that func-in-set is equivalent to func + offset-in-new_set.\n\nUse supports_shift_constant to check if the set supports shifting:\n\nif MOI.Utilities.supports_shift_constant(typeof(set))\n new_set = MOI.Utilities.shift_constant(set, -func.constant)\n func.constant = 0\n MOI.add_constraint(model, func, new_set)\nelse\n MOI.add_constraint(model, func, set)\nend\n\nNote for developers\n\nOnly define this function if it makes sense and you have implemented supports_shift_constant to return true.\n\nExample\n\njulia> import MathOptInterface as MOI\n\njulia> set = MOI.Interval(-2.0, 3.0)\nMathOptInterface.Interval{Float64}(-2.0, 3.0)\n\njulia> MOI.Utilities.supports_shift_constant(typeof(set))\ntrue\n\njulia> MOI.Utilities.shift_constant(set, 1.0)\nMathOptInterface.Interval{Float64}(-1.0, 4.0)\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.supports_shift_constant","page":"API Reference","title":"MathOptInterface.Utilities.supports_shift_constant","text":"supports_shift_constant(::Type{S}) where {S<:MOI.AbstractSet}\n\nReturn true if shift_constant is defined for set S.\n\nSee also shift_constant.\n\nExample\n\njulia> import MathOptInterface as MOI\n\njulia> MOI.Utilities.supports_shift_constant(MOI.Interval{Float64})\ntrue\n\njulia> MOI.Utilities.supports_shift_constant(MOI.ZeroOne)\nfalse\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.normalize_and_add_constraint","page":"API Reference","title":"MathOptInterface.Utilities.normalize_and_add_constraint","text":"normalize_and_add_constraint(\n model::MOI.ModelLike,\n func::MOI.AbstractScalarFunction,\n set::MOI.AbstractScalarSet;\n allow_modify_function::Bool = false,\n)\n\nAdds the scalar constraint obtained by moving the constant term in func to the set in model. If allow_modify_function is true then the function func can be modified.\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.normalize_constant","page":"API Reference","title":"MathOptInterface.Utilities.normalize_constant","text":"normalize_constant(\n func::MOI.AbstractScalarFunction,\n set::MOI.AbstractScalarSet;\n allow_modify_function::Bool = false,\n)\n\nReturn the func-in-set constraint in normalized form. That is, if func is MOI.ScalarQuadraticFunction or MOI.ScalarAffineFunction, the constant is moved to the set. If allow_modify_function is true then the function func can be modified.\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Utilities/reference/","page":"API Reference","title":"API Reference","text":"The following utility identifies those constraints imposing bounds on a given variable, and returns those bound values:","category":"page"},{"location":"moi/submodules/Utilities/reference/","page":"API Reference","title":"API Reference","text":"Utilities.get_bounds","category":"page"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.get_bounds","page":"API Reference","title":"MathOptInterface.Utilities.get_bounds","text":"get_bounds(model::MOI.ModelLike, ::Type{T}, x::MOI.VariableIndex)\n\nReturn a tuple (lb, ub) of type Tuple{T, T}, where lb and ub are lower and upper bounds, respectively, imposed on x in model.\n\n\n\n\n\nget_bounds(\n model::MOI.ModelLike,\n bounds_cache::Dict{MOI.VariableIndex,NTuple{2,T}},\n f::MOI.ScalarAffineFunction{T},\n) where {T} --> Union{Nothing,NTuple{2,T}}\n\nReturn the lower and upper bound of f as a tuple. If the domain is not bounded, return nothing.\n\n\n\n\n\nget_bounds(\n model::MOI.ModelLike,\n bounds_cache::Dict{MOI.VariableIndex,NTuple{2,T}},\n x::MOI.VariableIndex,\n) where {T} --> Union{Nothing,NTuple{2,T}}\n\nReturn the lower and upper bound of x as a tuple. If the domain is not bounded, return nothing.\n\nSimilar to get_bounds(::MOI.ModelLike, ::Type{T}, ::MOI.VariableIndex), except that the second argument is a cache which maps variables to their bounds and avoids repeated lookups.\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Utilities/reference/","page":"API Reference","title":"API Reference","text":"The following utilities are useful when working with symmetric matrix cones.","category":"page"},{"location":"moi/submodules/Utilities/reference/","page":"API Reference","title":"API Reference","text":"Utilities.is_diagonal_vectorized_index\nUtilities.side_dimension_for_vectorized_dimension","category":"page"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.is_diagonal_vectorized_index","page":"API Reference","title":"MathOptInterface.Utilities.is_diagonal_vectorized_index","text":"is_diagonal_vectorized_index(index::Base.Integer)\n\nReturn whether index is the index of a diagonal element in a MOI.AbstractSymmetricMatrixSetTriangle set.\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.side_dimension_for_vectorized_dimension","page":"API Reference","title":"MathOptInterface.Utilities.side_dimension_for_vectorized_dimension","text":"side_dimension_for_vectorized_dimension(n::Integer)\n\nReturn the dimension d such that MOI.dimension(MOI.PositiveSemidefiniteConeTriangle(d)) is n.\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Utilities/reference/#Set-utilities","page":"API Reference","title":"Set utilities","text":"","category":"section"},{"location":"moi/submodules/Utilities/reference/","page":"API Reference","title":"API Reference","text":"The following utilities are available for sets:","category":"page"},{"location":"moi/submodules/Utilities/reference/","page":"API Reference","title":"API Reference","text":"Utilities.AbstractDistance\nUtilities.ProjectionUpperBoundDistance\nUtilities.distance_to_set\nUtilities.set_dot","category":"page"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.AbstractDistance","page":"API Reference","title":"MathOptInterface.Utilities.AbstractDistance","text":"abstract type AbstractDistance end\n\nAn abstract type used to enable dispatch of Utilities.distance_to_set.\n\n\n\n\n\n","category":"type"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.ProjectionUpperBoundDistance","page":"API Reference","title":"MathOptInterface.Utilities.ProjectionUpperBoundDistance","text":"ProjectionUpperBoundDistance() <: AbstractDistance\n\nAn upper bound on the minimum distance between point and the closest feasible point in set.\n\nDefinition of distance\n\nThe minimum distance is computed as:\n\nd(x mathcalK) = min_y in mathcalK x - y \n\nwhere x is point and mathcalK is set. The norm is computed as:\n\nx = sqrtf(x x mathcalK)\n\nwhere f is Utilities.set_dot.\n\nIn the default case, where the set does not have a specialized method for Utilities.set_dot, the norm is equivalent to the Euclidean norm x = sqrtsum x_i^2.\n\nWhy an upper bound?\n\nIn most cases, distance_to_set should return the smallest upper bound, but it may return a larger value if the smallest upper bound is expensive to compute.\n\nFor example, given an epigraph from of a conic set, (t x) f(x) le t, it may be simpler to return delta such that f(x) le t + delta, rather than computing the nearest projection onto the set.\n\nIf the distance is not the smallest upper bound, the docstring of the appropriate distance_to_set method must describe the way that the distance is computed.\n\n\n\n\n\n","category":"type"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.distance_to_set","page":"API Reference","title":"MathOptInterface.Utilities.distance_to_set","text":"distance_to_set(\n [d::AbstractDistance = ProjectionUpperBoundDistance()],]\n point::T,\n set::MOI.AbstractScalarSet,\n) where {T}\n\ndistance_to_set(\n [d::AbstractDistance = ProjectionUpperBoundDistance(),]\n point::AbstractVector{T},\n set::MOI.AbstractVectorSet,\n) where {T}\n\nCompute the distance between point and set using the distance metric d. If point is in the set set, this function must return zero(T).\n\nIf d is omitted, the default distance is Utilities.ProjectionUpperBoundDistance.\n\n\n\n\n\ndistance_to_set(::ProjectionUpperBoundDistance, x, ::MOI.RotatedSecondOrderCone)\n\nLet (t, u, y...) = x. Return the 2-norm of the vector d such that in x + d, u is projected to 1 if u <= 0, and t is increased such that x + d belongs to the set.\n\n\n\n\n\ndistance_to_set(::ProjectionUpperBoundDistance, x, ::MOI.ExponentialCone)\n\nLet (u, v, w) = x. If v > 0, return the epigraph distance d such that (u, v, w + d) belongs to the set.\n\nIf v <= 0 return the 2-norm of the vector d such that x + d = (u, 1, z) where z satisfies the constraints.\n\n\n\n\n\ndistance_to_set(::ProjectionUpperBoundDistance, x, ::MOI.DualExponentialCone)\n\nLet (u, v, w) = x. If u < 0, return the epigraph distance d such that (u, v, w + d) belongs to the set.\n\nIf u >= 0 return the 2-norm of the vector d such that x + d = (u, -1, z) where z satisfies the constraints.\n\n\n\n\n\ndistance_to_set(::ProjectionUpperBoundDistance, x, ::MOI.GeometricMeanCone)\n\nLet (t, y...) = x. If all y are non-negative, return the epigraph distance d such that (t + d, y...) belongs to the set.\n\nIf any y are strictly negative, return the 2-norm of the vector d that projects negative y elements to 0 and t to ℝ₋.\n\n\n\n\n\ndistance_to_set(::ProjectionUpperBoundDistance, x, ::MOI.PowerCone)\n\nLet (a, b, c) = x. If a and b are non-negative, return the epigraph distance required to increase c such that the constraint is satisfied.\n\nIf a or b is strictly negative, return the 2-norm of the vector d such that in the vector x + d: c, and any negative a and b are projected to 0.\n\n\n\n\n\ndistance_to_set(::ProjectionUpperBoundDistance, x, ::MOI.DualPowerCone)\n\nLet (a, b, c) = x. If a and b are non-negative, return the epigraph distance required to increase c such that the constraint is satisfied.\n\nIf a or b is strictly negative, return the 2-norm of the vector d such that in the vector x + d: c, and any negative a and b are projected to 0.\n\n\n\n\n\ndistance_to_set(::ProjectionUpperBoundDistance, x, ::MOI.NormOneCone)\n\nLet (t, y...) = x. Return the epigraph distance d such that (t + d, y...) belongs to the set.\n\n\n\n\n\ndistance_to_set(::ProjectionUpperBoundDistance, x, ::MOI.NormInfinityCone)\n\nLet (t, y...) = x. Return the epigraph distance d such that (t + d, y...) belongs to the set.\n\n\n\n\n\ndistance_to_set(::ProjectionUpperBoundDistance, x, ::MOI.RelativeEntropyCone)\n\nLet (u, v..., w...) = x. If v and w are strictly positive, return the epigraph distance required to increase u such that the constraint is satisfied.\n\nIf any elements in v or w are non-positive, return the 2-norm of the vector d such that in the vector x + d: any non-positive elements in v and w are projected to 1, and u is projected such that the epigraph constraint holds.\n\n\n\n\n\ndistance_to_set(::ProjectionUpperBoundDistance, x, set::MOI.NormCone)\n\nLet (t, y...) = x. Return the epigraph distance d such that (t + d, y...) belongs to the set.\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.set_dot","page":"API Reference","title":"MathOptInterface.Utilities.set_dot","text":"set_dot(x::AbstractVector, y::AbstractVector, set::AbstractVectorSet)\n\nReturn the scalar product between a vector x of the set set and a vector y of the dual of the set s.\n\n\n\n\n\nset_dot(x, y, set::AbstractScalarSet)\n\nReturn the scalar product between a number x of the set set and a number y of the dual of the set s.\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Utilities/reference/#DoubleDicts","page":"API Reference","title":"DoubleDicts","text":"","category":"section"},{"location":"moi/submodules/Utilities/reference/","page":"API Reference","title":"API Reference","text":"Utilities.DoubleDicts.DoubleDict\nUtilities.DoubleDicts.DoubleDictInner\nUtilities.DoubleDicts.IndexDoubleDict\nUtilities.DoubleDicts.IndexDoubleDictInner\nUtilities.DoubleDicts.outer_keys\nUtilities.DoubleDicts.nonempty_outer_keys","category":"page"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.DoubleDicts.DoubleDict","page":"API Reference","title":"MathOptInterface.Utilities.DoubleDicts.DoubleDict","text":"DoubleDict{V}\n\nAn optimized dictionary to map MOI.ConstraintIndex to values of type V.\n\nWorks as a AbstractDict{MOI.ConstraintIndex,V} with minimal differences.\n\nIf V is also a MOI.ConstraintIndex, use IndexDoubleDict.\n\nNote that MOI.ConstraintIndex is not a concrete type, opposed to MOI.ConstraintIndex{MOI.VariableIndex, MOI.Integers}, which is a concrete type.\n\nWhen looping through multiple keys of the same Function-in-Set type, use\n\ninner = dict[F, S]\n\nto return a type-stable DoubleDictInner.\n\n\n\n\n\n","category":"type"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.DoubleDicts.DoubleDictInner","page":"API Reference","title":"MathOptInterface.Utilities.DoubleDicts.DoubleDictInner","text":"DoubleDictInner{F,S,V}\n\nA type stable inner dictionary of DoubleDict.\n\n\n\n\n\n","category":"type"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.DoubleDicts.IndexDoubleDict","page":"API Reference","title":"MathOptInterface.Utilities.DoubleDicts.IndexDoubleDict","text":"IndexDoubleDict\n\nA specialized version of [DoubleDict] in which the values are of type MOI.ConstraintIndex\n\nWhen looping through multiple keys of the same Function-in-Set type, use\n\ninner = dict[F, S]\n\nto return a type-stable IndexDoubleDictInner.\n\n\n\n\n\n","category":"type"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.DoubleDicts.IndexDoubleDictInner","page":"API Reference","title":"MathOptInterface.Utilities.DoubleDicts.IndexDoubleDictInner","text":"IndexDoubleDictInner{F,S}\n\nA type stable inner dictionary of IndexDoubleDict.\n\n\n\n\n\n","category":"type"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.DoubleDicts.outer_keys","page":"API Reference","title":"MathOptInterface.Utilities.DoubleDicts.outer_keys","text":"outer_keys(d::AbstractDoubleDict)\n\nReturn an iterator over the outer keys of the AbstractDoubleDict d. Each outer key is a Tuple{Type,Type} so that a double loop can be easily used:\n\nfor (F, S) in DoubleDicts.outer_keys(dict)\n for (k, v) in dict[F, S]\n # ...\n end\nend\n\nFor performance, it is recommended that the inner loop lies in a separate function to guarantee type-stability. Some outer keys (F, S) might lead to an empty dict[F, S]. If you want only nonempty dict[F, S], use nonempty_outer_keys.\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Utilities/reference/#MathOptInterface.Utilities.DoubleDicts.nonempty_outer_keys","page":"API Reference","title":"MathOptInterface.Utilities.DoubleDicts.nonempty_outer_keys","text":"nonempty_outer_keys(d::AbstractDoubleDict)\n\nReturn a vector of outer keys of the AbstractDoubleDict d.\n\nOnly outer keys that have a nonempty set of inner keys will be returned.\n\nEach outer key is a Tuple{Type,Type} so that a double loop can be easily used\n\nfor (F, S) in DoubleDicts.nonempty_outer_keys(dict)\n for (k, v) in dict[F, S]\n # ...\n end\nend\nFor performance, it is recommended that the inner loop lies in a separate\nfunction to guarantee type-stability.\n\nIf you want an iterator of all current outer keys, use [`outer_keys`](@ref).\n\n\n\n\n\n","category":"function"},{"location":"packages/Clp/","page":"jump-dev/Clp.jl","title":"jump-dev/Clp.jl","text":"EditURL = \"https://github.com/jump-dev/Clp.jl/blob/v1.1.0/README.md\"","category":"page"},{"location":"packages/Clp/","page":"jump-dev/Clp.jl","title":"jump-dev/Clp.jl","text":"(Image: )","category":"page"},{"location":"packages/Clp/#Clp.jl","page":"jump-dev/Clp.jl","title":"Clp.jl","text":"","category":"section"},{"location":"packages/Clp/","page":"jump-dev/Clp.jl","title":"jump-dev/Clp.jl","text":"(Image: Build Status) (Image: codecov)","category":"page"},{"location":"packages/Clp/","page":"jump-dev/Clp.jl","title":"jump-dev/Clp.jl","text":"Clp.jl is a wrapper for the COIN-OR Linear Programming solver.","category":"page"},{"location":"packages/Clp/","page":"jump-dev/Clp.jl","title":"jump-dev/Clp.jl","text":"The wrapper has two components:","category":"page"},{"location":"packages/Clp/","page":"jump-dev/Clp.jl","title":"jump-dev/Clp.jl","text":"a thin wrapper around the complete C API\nan interface to MathOptInterface","category":"page"},{"location":"packages/Clp/#Affiliation","page":"jump-dev/Clp.jl","title":"Affiliation","text":"","category":"section"},{"location":"packages/Clp/","page":"jump-dev/Clp.jl","title":"jump-dev/Clp.jl","text":"This wrapper is maintained by the JuMP community and is not a COIN-OR project.","category":"page"},{"location":"packages/Clp/#Getting-help","page":"jump-dev/Clp.jl","title":"Getting help","text":"","category":"section"},{"location":"packages/Clp/","page":"jump-dev/Clp.jl","title":"jump-dev/Clp.jl","text":"If you need help, please ask a question on the JuMP community forum.","category":"page"},{"location":"packages/Clp/","page":"jump-dev/Clp.jl","title":"jump-dev/Clp.jl","text":"If you have a reproducible example of a bug, please open a GitHub issue.","category":"page"},{"location":"packages/Clp/#License","page":"jump-dev/Clp.jl","title":"License","text":"","category":"section"},{"location":"packages/Clp/","page":"jump-dev/Clp.jl","title":"jump-dev/Clp.jl","text":"Clp.jl is licensed under the MIT License.","category":"page"},{"location":"packages/Clp/","page":"jump-dev/Clp.jl","title":"jump-dev/Clp.jl","text":"The underlying solver, coin-or/Clp, is licensed under the Eclipse public license.","category":"page"},{"location":"packages/Clp/#Installation","page":"jump-dev/Clp.jl","title":"Installation","text":"","category":"section"},{"location":"packages/Clp/","page":"jump-dev/Clp.jl","title":"jump-dev/Clp.jl","text":"Install Clp using Pkg.add:","category":"page"},{"location":"packages/Clp/","page":"jump-dev/Clp.jl","title":"jump-dev/Clp.jl","text":"import Pkg\nPkg.add(\"Clp\")","category":"page"},{"location":"packages/Clp/","page":"jump-dev/Clp.jl","title":"jump-dev/Clp.jl","text":"In addition to installing the Clp.jl package, this will also download and install the Clp binaries. You do not need to install Clp separately.","category":"page"},{"location":"packages/Clp/","page":"jump-dev/Clp.jl","title":"jump-dev/Clp.jl","text":"To use a custom binary, read the Custom solver binaries section of the JuMP documentation.","category":"page"},{"location":"packages/Clp/#Use-with-JuMP","page":"jump-dev/Clp.jl","title":"Use with JuMP","text":"","category":"section"},{"location":"packages/Clp/","page":"jump-dev/Clp.jl","title":"jump-dev/Clp.jl","text":"To use Clp with JuMP, use Clp.Optimizer:","category":"page"},{"location":"packages/Clp/","page":"jump-dev/Clp.jl","title":"jump-dev/Clp.jl","text":"using JuMP, Clp\nmodel = Model(Clp.Optimizer)\nset_attribute(model, \"LogLevel\", 1)\nset_attribute(model, \"Algorithm\", 4)","category":"page"},{"location":"packages/Clp/#MathOptInterface-API","page":"jump-dev/Clp.jl","title":"MathOptInterface API","text":"","category":"section"},{"location":"packages/Clp/","page":"jump-dev/Clp.jl","title":"jump-dev/Clp.jl","text":"The Clp optimizer supports the following constraints and attributes.","category":"page"},{"location":"packages/Clp/","page":"jump-dev/Clp.jl","title":"jump-dev/Clp.jl","text":"List of supported objective functions:","category":"page"},{"location":"packages/Clp/","page":"jump-dev/Clp.jl","title":"jump-dev/Clp.jl","text":"MOI.ObjectiveFunction{MOI.ScalarAffineFunction{Float64}}","category":"page"},{"location":"packages/Clp/","page":"jump-dev/Clp.jl","title":"jump-dev/Clp.jl","text":"List of supported variable types:","category":"page"},{"location":"packages/Clp/","page":"jump-dev/Clp.jl","title":"jump-dev/Clp.jl","text":"MOI.Reals","category":"page"},{"location":"packages/Clp/","page":"jump-dev/Clp.jl","title":"jump-dev/Clp.jl","text":"List of supported constraint types:","category":"page"},{"location":"packages/Clp/","page":"jump-dev/Clp.jl","title":"jump-dev/Clp.jl","text":"MOI.ScalarAffineFunction{Float64} in MOI.EqualTo{Float64}\nMOI.ScalarAffineFunction{Float64} in MOI.GreaterThan{Float64}\nMOI.ScalarAffineFunction{Float64} in MOI.Interval{Float64}\nMOI.ScalarAffineFunction{Float64} in MOI.LessThan{Float64}\nMOI.VariableIndex in MOI.EqualTo{Float64}\nMOI.VariableIndex in MOI.GreaterThan{Float64}\nMOI.VariableIndex in MOI.Interval{Float64}\nMOI.VariableIndex in MOI.LessThan{Float64}","category":"page"},{"location":"packages/Clp/","page":"jump-dev/Clp.jl","title":"jump-dev/Clp.jl","text":"List of supported model attributes:","category":"page"},{"location":"packages/Clp/","page":"jump-dev/Clp.jl","title":"jump-dev/Clp.jl","text":"MOI.ObjectiveSense()","category":"page"},{"location":"packages/Clp/#Options","page":"jump-dev/Clp.jl","title":"Options","text":"","category":"section"},{"location":"packages/Clp/","page":"jump-dev/Clp.jl","title":"jump-dev/Clp.jl","text":"Options are, unfortunately, not well documented.","category":"page"},{"location":"packages/Clp/","page":"jump-dev/Clp.jl","title":"jump-dev/Clp.jl","text":"The following options are likely to be the most useful:","category":"page"},{"location":"packages/Clp/","page":"jump-dev/Clp.jl","title":"jump-dev/Clp.jl","text":"Parameter Example Explanation\nPrimalTolerance 1e-7 Primal feasibility tolerance\nDualTolerance 1e-7 Dual feasibility tolerance\nDualObjectiveLimit 1e308 When using dual simplex (where the objective is monotonically changing), terminate when the objective exceeds this limit\nMaximumIterations 2147483647 Terminate after performing this number of simplex iterations\nMaximumSeconds -1.0 Terminate after this many seconds have passed. A negative value means no time limit\nLogLevel 1 Set to 1, 2, 3, or 4 for increasing output. Set to 0 to disable output\nPresolveType 0 Set to 1 to disable presolve\nSolveType 5 Solution method: dual simplex (0), primal simplex (1), sprint (2), barrier with crossover (3), barrier without crossover (4), automatic (5)\nInfeasibleReturn 0 Set to 1 to return as soon as the problem is found to be infeasible (by default, an infeasibility proof is computed as well)\nScaling 3 0 -off, 1 equilibrium, 2 geometric, 3 auto, 4 dynamic(later)\nPerturbation 100 switch on perturbation (50), automatic (100), don't try perturbing (102)","category":"page"},{"location":"packages/Clp/#C-API","page":"jump-dev/Clp.jl","title":"C API","text":"","category":"section"},{"location":"packages/Clp/","page":"jump-dev/Clp.jl","title":"jump-dev/Clp.jl","text":"The C API can be accessed via Clp.Clp_XXX functions, where the names and arguments are identical to the C API.","category":"page"},{"location":"background/bibliography/#Bibliography","page":"Bibliography","title":"Bibliography","text":"","category":"section"},{"location":"background/bibliography/","page":"Bibliography","title":"Bibliography","text":"Barvinok, A. (2002). A course in convexity. Vol. 54 of Graduate studies in mathematics (American Mathematical Society).\n\n\n\nBen-Tal, A. and Nemirovski, A. (2001). Lectures on Modern Convex Optimization (Society for Industrial and Applied Mathematics).\n\n\n\nBertsimas, D.; Gupta, V. and Kallus, N. (2018). Data-driven robust optimization. Mathematical Programming 167, 235–292.\n\n\n\nBetts, J. T. (2010). Practical Methods for Optimal Control and Estimation Using Nonlinear Programming. Second Edition (Society for Industrial and Applied Mathematics).\n\n\n\nBoyd, S. and Vandenberghe, L. (2004). Convex Optimization (Cambridge University Press, Cambridge).\n\n\n\nBukhsh, W. A.; Grothey, A.; McKinnon, K. I. and Trodden, P. A. (2013). Local Solutions of the Optimal Power Flow Problem. IEEE Transactions on Power Systems 28, 4780–4788.\n\n\n\nCornuéjols, G.; Peña, J. and Tütüncü, R. (2018). Optimization Methods in Finance. 2 Edition (Cambridge University Press).\n\n\n\nD’Aertrycke, G.; Ehrenmann, A.; Ralph, D. and Smeers, Y. (2017). Risk trading in capacity equilibrium models (Cambridge Working Papers in Economics (CWPE)).\n\n\n\nFerris, M. C.; Mangasarian, O. L. and Wright, S. J. (2007). Linear Programming with MATLAB (Society for Industrial and Applied Mathematics).\n\n\n\nGoemans, M. X. and Williamson, D. P. (1995). Improved Approximation Algorithms for Maximum Cut and Satisfiability Problems Using Semidefinite Programming. J. ACM 42, 1115–1145.\n\n\n\nJabr, R. A. (2012). Exploiting Sparsity in SDP Relaxations of the OPF Problem. IEEE Transactions on Power Systems 27, 1138–1139.\n\n\n\nKnuth, D. E. (1994). The sandwich theorem. The Electronic Journal of Combinatorics 1.\n\n\n\nKrasko, V. and Rebennack, S. (2017). Global Optimization: Optimal Power Flow Problem. In: Advances and Trends in Optimization with Engineering Applications, edited by Terlaky, T.; Anjos, M. F. and Ahmed, S. (Society for Industrial and Applied Mathematics, Philadelphia, PA); Chapter 15, pp. 187–205.\n\n\n\nLinial, N. (2002). Finite Metric Spaces: Combinatorics, Geometry and Algorithms. In: Proceedings of the Eighteenth Annual Symposium on Computational Geometry, SCG '02 (Association for Computing Machinery, New York, NY, USA); p. 63.\n\n\n\nMatoušek, J. (2013). Lectures on discrete geometry. Vol. 212 no. 1 of Graduate Texts in Mathematics (Springer Science & Business Media).\n\n\n\nPeng, J. and Wei, Y. (2007). Approximating K‐means‐type Clustering via Semidefinite Programming. SIAM Journal on Optimization 18, 186–205.\n\n\n\nZimmerman, R. D.; Murillo-Sánchez, C. E. and Thomas, R. J. (2011). MATPOWER: Steady-State Operations, Planning, and Analysis Tools for Power Systems Research and Education. IEEE Transactions on Power Systems 26, 12–19.\n\n\n\n","category":"page"},{"location":"moi/","page":"Introduction","title":"Introduction","text":"EditURL = \"https://github.com/jump-dev/MathOptInterface.jl/blob/v1.34.0/docs/src/index.md\"","category":"page"},{"location":"moi/#moi_documentation","page":"Introduction","title":"Introduction","text":"","category":"section"},{"location":"moi/","page":"Introduction","title":"Introduction","text":"warning: Warning\nThis documentation in this section is a copy of the official MathOptInterface documentation available at https://jump.dev/MathOptInterface.jl/v1.34.0. It is included here to make it easier to link concepts between JuMP and MathOptInterface.","category":"page"},{"location":"moi/#What-is-MathOptInterface?","page":"Introduction","title":"What is MathOptInterface?","text":"","category":"section"},{"location":"moi/","page":"Introduction","title":"Introduction","text":"MathOptInterface.jl (MOI) is an abstraction layer designed to provide a unified interface to mathematical optimization solvers so that users do not need to understand multiple solver-specific APIs.","category":"page"},{"location":"moi/","page":"Introduction","title":"Introduction","text":"tip: Tip\nThis documentation is aimed at developers writing software interfaces to solvers and modeling languages using the MathOptInterface API. If you are a user interested in solving optimization problems, we encourage you instead to use MOI through a higher-level modeling interface like JuMP or Convex.jl.","category":"page"},{"location":"moi/#How-the-documentation-is-structured","page":"Introduction","title":"How the documentation is structured","text":"","category":"section"},{"location":"moi/","page":"Introduction","title":"Introduction","text":"Having a high-level overview of how this documentation is structured will help you know where to look for certain things.","category":"page"},{"location":"moi/","page":"Introduction","title":"Introduction","text":"The Tutorials section contains articles on how to use and implement the MathOptInteraface API. Look here if you want to write a model in MOI, or write an interface to a new solver.\nThe Manual contains short code-snippets that explain how to use the MOI API. Look here for more details on particular areas of MOI.\nThe Background section contains articles on the theory behind MathOptInterface. Look here if you want to understand why, rather than how.\nThe API Reference contains a complete list of functions and types that comprise the MOI API. Look here if you want to know how to use (or implement) a particular function.\nThe Submodules section contains stand-alone documentation for each of the submodules within MOI. These submodules are not required to interface a solver with MOI, but they make the job much easier.","category":"page"},{"location":"moi/#Citing-MathOptInterface","page":"Introduction","title":"Citing MathOptInterface","text":"","category":"section"},{"location":"moi/","page":"Introduction","title":"Introduction","text":"If you find MathOptInterface useful in your work, we kindly request that you cite the following paper:","category":"page"},{"location":"moi/","page":"Introduction","title":"Introduction","text":"@article{legat2021mathoptinterface,\n title={{MathOptInterface}: a data structure for mathematical optimization problems},\n author={Legat, Beno{\\^\\i}t and Dowson, Oscar and Garcia, Joaquim Dias and Lubin, Miles},\n journal={INFORMS Journal on Computing},\n year={2021},\n doi={10.1287/ijoc.2021.1067},\n publisher={INFORMS}\n}","category":"page"},{"location":"moi/","page":"Introduction","title":"Introduction","text":"A preprint of this paper is freely available.","category":"page"},{"location":"packages/OSQP/","page":"osqp/OSQP.jl","title":"osqp/OSQP.jl","text":"EditURL = \"https://github.com/osqp/OSQP.jl/blob/v0.8.1/README.md\"","category":"page"},{"location":"packages/OSQP/#OSQP.jl","page":"osqp/OSQP.jl","title":"OSQP.jl","text":"","category":"section"},{"location":"packages/OSQP/","page":"osqp/OSQP.jl","title":"osqp/OSQP.jl","text":"(Image: Build Status) (Image: codecov.io)","category":"page"},{"location":"packages/OSQP/","page":"osqp/OSQP.jl","title":"osqp/OSQP.jl","text":"OSQP.jl is a Julia wrapper for OSQP: the Operator Splitting QP Solver.","category":"page"},{"location":"packages/OSQP/#License","page":"osqp/OSQP.jl","title":"License","text":"","category":"section"},{"location":"packages/OSQP/","page":"osqp/OSQP.jl","title":"osqp/OSQP.jl","text":"OSQP.jl is licensed under the Apache-2.0 license.","category":"page"},{"location":"packages/OSQP/","page":"osqp/OSQP.jl","title":"osqp/OSQP.jl","text":"The upstream solver, osqp/osqp is also licensed under the Apache-2.0 license.","category":"page"},{"location":"packages/OSQP/#Installation","page":"osqp/OSQP.jl","title":"Installation","text":"","category":"section"},{"location":"packages/OSQP/","page":"osqp/OSQP.jl","title":"osqp/OSQP.jl","text":"Install OSQP.jl using the Julia package manager","category":"page"},{"location":"packages/OSQP/","page":"osqp/OSQP.jl","title":"osqp/OSQP.jl","text":"import Pkg\nPkg.add(\"OSQP\")","category":"page"},{"location":"packages/OSQP/#Problem-class","page":"osqp/OSQP.jl","title":"Problem class","text":"","category":"section"},{"location":"packages/OSQP/","page":"osqp/OSQP.jl","title":"osqp/OSQP.jl","text":"The OSQP (Operator Splitting Quadratic Program) solver is a numerical optimization package for solving problems in the form","category":"page"},{"location":"packages/OSQP/","page":"osqp/OSQP.jl","title":"osqp/OSQP.jl","text":"minimize 0.5 x' P x + q' x\n\nsubject to l <= A x <= u","category":"page"},{"location":"packages/OSQP/","page":"osqp/OSQP.jl","title":"osqp/OSQP.jl","text":"where x in R^n is the optimization variable. The objective function is defined by a positive semidefinite matrix P in S^n_+ and vector q in R^n. The linear constraints are defined by matrix A in R^{m x n} and vectors l in R^m U {-inf}^m, u in R^m U {+inf}^m.","category":"page"},{"location":"packages/OSQP/#Documentation","page":"osqp/OSQP.jl","title":"Documentation","text":"","category":"section"},{"location":"packages/OSQP/","page":"osqp/OSQP.jl","title":"osqp/OSQP.jl","text":"Detailed documentation is available at https://osqp.org/.","category":"page"},{"location":"tutorials/nonlinear/classifiers/","page":"Example: classification problems","title":"Example: classification problems","text":"EditURL = \"classifiers.jl\"","category":"page"},{"location":"tutorials/nonlinear/classifiers/#Example:-classification-problems","page":"Example: classification problems","title":"Example: classification problems","text":"","category":"section"},{"location":"tutorials/nonlinear/classifiers/","page":"Example: classification problems","title":"Example: classification problems","text":"This tutorial was generated using Literate.jl. Download the source as a .jl file.","category":"page"},{"location":"tutorials/nonlinear/classifiers/","page":"Example: classification problems","title":"Example: classification problems","text":"The purpose of this tutorial is to show how JuMP can be used to formulate classification problems.","category":"page"},{"location":"tutorials/nonlinear/classifiers/","page":"Example: classification problems","title":"Example: classification problems","text":"Classification problems deal with constructing functions, called classifiers, that can efficiently classify data into two or more distinct sets. A common application is classifying previously unseen data points after training a classifier on known data.","category":"page"},{"location":"tutorials/nonlinear/classifiers/","page":"Example: classification problems","title":"Example: classification problems","text":"The theory and models in this tutorial come from Section 9.4 of (Ferris et al., 2007).","category":"page"},{"location":"tutorials/nonlinear/classifiers/#Required-packages","page":"Example: classification problems","title":"Required packages","text":"","category":"section"},{"location":"tutorials/nonlinear/classifiers/","page":"Example: classification problems","title":"Example: classification problems","text":"This tutorial uses the following packages:","category":"page"},{"location":"tutorials/nonlinear/classifiers/","page":"Example: classification problems","title":"Example: classification problems","text":"using JuMP\nimport DelimitedFiles\nimport Ipopt\nimport LinearAlgebra\nimport Plots\nimport Random\nimport Test","category":"page"},{"location":"tutorials/nonlinear/classifiers/#Data-and-visualisation","page":"Example: classification problems","title":"Data and visualisation","text":"","category":"section"},{"location":"tutorials/nonlinear/classifiers/","page":"Example: classification problems","title":"Example: classification problems","text":"To start, let's generate some points to test with. The argument m is the number of 2-dimensional points:","category":"page"},{"location":"tutorials/nonlinear/classifiers/","page":"Example: classification problems","title":"Example: classification problems","text":"function generate_test_points(m; random_seed = 1)\n rng = Random.MersenneTwister(random_seed)\n return 2.0 .* rand(rng, Float64, m, 2)\nend","category":"page"},{"location":"tutorials/nonlinear/classifiers/","page":"Example: classification problems","title":"Example: classification problems","text":"For the sake of the example, let's take m = 100:","category":"page"},{"location":"tutorials/nonlinear/classifiers/","page":"Example: classification problems","title":"Example: classification problems","text":"P = generate_test_points(100);\nnothing #hide","category":"page"},{"location":"tutorials/nonlinear/classifiers/","page":"Example: classification problems","title":"Example: classification problems","text":"The points are represented row-wise in the matrix P. Let's visualise the points using the Plots package:","category":"page"},{"location":"tutorials/nonlinear/classifiers/","page":"Example: classification problems","title":"Example: classification problems","text":"plot = Plots.scatter(\n P[:, 1],\n P[:, 2];\n xlim = (0, 2.02),\n ylim = (0, 2.02),\n color = :white,\n size = (600, 600),\n legend = false,\n)","category":"page"},{"location":"tutorials/nonlinear/classifiers/","page":"Example: classification problems","title":"Example: classification problems","text":"We want to split the points into two distinct sets on either side of a dividing line. We'll then label each point depending on which side of the line it happens to fall. Based on the labels of the point, we'll show how to create a classifier using a JuMP model. We can then test how well our classifier reproduces the original labels and the boundary between them.","category":"page"},{"location":"tutorials/nonlinear/classifiers/","page":"Example: classification problems","title":"Example: classification problems","text":"Let's make a line to divide the points into two sets by defining a gradient and a constant:","category":"page"},{"location":"tutorials/nonlinear/classifiers/","page":"Example: classification problems","title":"Example: classification problems","text":"w_0, g_0 = [5, 3], 8\nline(v::AbstractArray; w = w_0, g = g_0) = w' * v - g\nline(x::Real; w = w_0, g = g_0) = -(w[1] * x - g) / w[2];\nnothing #hide","category":"page"},{"location":"tutorials/nonlinear/classifiers/","page":"Example: classification problems","title":"Example: classification problems","text":"Julia's multiple dispatch feature allows us to define the vector and single-variable form of the line function under the same name.","category":"page"},{"location":"tutorials/nonlinear/classifiers/","page":"Example: classification problems","title":"Example: classification problems","text":"Let's add this to the plot:","category":"page"},{"location":"tutorials/nonlinear/classifiers/","page":"Example: classification problems","title":"Example: classification problems","text":"Plots.plot!(plot, line; linewidth = 5)","category":"page"},{"location":"tutorials/nonlinear/classifiers/","page":"Example: classification problems","title":"Example: classification problems","text":"Now we label the points relative to which side of the line they are. It is numerically useful to have the labels +1 and -1 for the upcoming JuMP formulation.","category":"page"},{"location":"tutorials/nonlinear/classifiers/","page":"Example: classification problems","title":"Example: classification problems","text":"labels = ifelse.(line.(eachrow(P)) .>= 0, 1, -1)\nPlots.scatter!(\n plot,\n P[:, 1],\n P[:, 2];\n shape = ifelse.(labels .== 1, :cross, :xcross),\n markercolor = ifelse.(labels .== 1, :blue, :crimson),\n markersize = 8,\n)","category":"page"},{"location":"tutorials/nonlinear/classifiers/","page":"Example: classification problems","title":"Example: classification problems","text":"Our goal is to show we can reconstruct the line from just the points and the labels.","category":"page"},{"location":"tutorials/nonlinear/classifiers/#Formulation:-linear-support-vector-machine","page":"Example: classification problems","title":"Formulation: linear support vector machine","text":"","category":"section"},{"location":"tutorials/nonlinear/classifiers/","page":"Example: classification problems","title":"Example: classification problems","text":"A classifier known as the linear support vector machine (SVM) looks for the affine function L(p) = w^top p - g that satisfies L(p) 0 for all points p with a label -1 and L(p) ge 0 for all points p with a label +1.","category":"page"},{"location":"tutorials/nonlinear/classifiers/","page":"Example: classification problems","title":"Example: classification problems","text":"The linearly constrained quadratic program that implements this is:","category":"page"},{"location":"tutorials/nonlinear/classifiers/","page":"Example: classification problems","title":"Example: classification problems","text":"beginaligned\nmin_w in mathbbR^n g in mathbbR y in mathbbR^m quad frac12 w^top w + C sum_i=1^m y_i \ntextsubject to quad D cdot (P w - g) + y geq mathbf1 \n y ge 0\nendaligned","category":"page"},{"location":"tutorials/nonlinear/classifiers/","page":"Example: classification problems","title":"Example: classification problems","text":"where D is a diagonal matrix of the labels.","category":"page"},{"location":"tutorials/nonlinear/classifiers/","page":"Example: classification problems","title":"Example: classification problems","text":"We need a default value for the positive penalty parameter C:","category":"page"},{"location":"tutorials/nonlinear/classifiers/","page":"Example: classification problems","title":"Example: classification problems","text":"C_0 = 100.0;\nnothing #hide","category":"page"},{"location":"tutorials/nonlinear/classifiers/#JuMP-formulation","page":"Example: classification problems","title":"JuMP formulation","text":"","category":"section"},{"location":"tutorials/nonlinear/classifiers/","page":"Example: classification problems","title":"Example: classification problems","text":"Here is the JuMP model:","category":"page"},{"location":"tutorials/nonlinear/classifiers/","page":"Example: classification problems","title":"Example: classification problems","text":"function solve_SVM_classifier(P::Matrix, labels::Vector; C::Float64 = C_0)\n m, n = size(P)\n model = Model(Ipopt.Optimizer)\n set_silent(model)\n @variable(model, w[1:n])\n @variable(model, g)\n @variable(model, y[1:m] >= 0)\n @objective(model, Min, 1 / 2 * w' * w + C * sum(y))\n D = LinearAlgebra.Diagonal(labels)\n @constraint(model, D * (P * w .- g) .+ y .>= 1)\n optimize!(model)\n Test.@test is_solved_and_feasible(model)\n slack = extrema(value.(y))\n println(\"Minimum slack: \", slack[1], \"\\nMaximum slack: \", slack[2])\n classifier(x) = line(x; w = value.(w), g = value(g))\n return model, classifier\nend","category":"page"},{"location":"tutorials/nonlinear/classifiers/#Results","page":"Example: classification problems","title":"Results","text":"","category":"section"},{"location":"tutorials/nonlinear/classifiers/","page":"Example: classification problems","title":"Example: classification problems","text":"Let's recover the values that define the classifier by solving the model:","category":"page"},{"location":"tutorials/nonlinear/classifiers/","page":"Example: classification problems","title":"Example: classification problems","text":"_, classifier = solve_SVM_classifier(P, labels)","category":"page"},{"location":"tutorials/nonlinear/classifiers/","page":"Example: classification problems","title":"Example: classification problems","text":"With the solution, we can ask: was the value of the penalty constant \"sufficiently large\" for this data set? This can be judged in part by the range of the slack variables. If the slack is too large, then we need to increase the penalty constant.","category":"page"},{"location":"tutorials/nonlinear/classifiers/","page":"Example: classification problems","title":"Example: classification problems","text":"Let's plot the solution and check how we did:","category":"page"},{"location":"tutorials/nonlinear/classifiers/","page":"Example: classification problems","title":"Example: classification problems","text":"Plots.plot!(plot, classifier; linewidth = 5, linestyle = :dashdotdot)","category":"page"},{"location":"tutorials/nonlinear/classifiers/","page":"Example: classification problems","title":"Example: classification problems","text":"We find that we have recovered the dividing line from just the information of the points and their labels.","category":"page"},{"location":"tutorials/nonlinear/classifiers/#Nonseparable-classes-of-points","page":"Example: classification problems","title":"Nonseparable classes of points","text":"","category":"section"},{"location":"tutorials/nonlinear/classifiers/","page":"Example: classification problems","title":"Example: classification problems","text":"Now, what if the point sets are not cleanly separable by a line (or a hyperplane in higher dimensions)? Does this still work? Let's repeat the process, but this time we will simulate nonseparable classes of points by intermingling a few nearby points across the previously used line.","category":"page"},{"location":"tutorials/nonlinear/classifiers/","page":"Example: classification problems","title":"Example: classification problems","text":"nearby_indices = abs.(line.(eachrow(P))) .< 1.1\nlabels_new = ifelse.(nearby_indices, -labels, labels)\nmodel, classifier = solve_SVM_classifier(P, labels_new)\nplot = Plots.scatter(\n P[:, 1],\n P[:, 2];\n xlim = (0, 2.02),\n ylim = (0, 2.02),\n color = :white,\n size = (600, 600),\n legend = false,\n)\nPlots.scatter!(\n plot,\n P[:, 1],\n P[:, 2];\n shape = ifelse.(labels_new .== 1, :cross, :xcross),\n markercolor = ifelse.(labels_new .== 1, :blue, :crimson),\n markersize = 8,\n)\nPlots.plot!(plot, classifier; linewidth = 5, linestyle = :dashdotdot)","category":"page"},{"location":"tutorials/nonlinear/classifiers/","page":"Example: classification problems","title":"Example: classification problems","text":"So our JuMP formulation still produces a classifier, but it mis-classifies some of the nonseparable points.","category":"page"},{"location":"tutorials/nonlinear/classifiers/","page":"Example: classification problems","title":"Example: classification problems","text":"We can find out which points are contributing to the shape of the line by looking at the dual values of the affine constraints and comparing them to the penalty constant C:","category":"page"},{"location":"tutorials/nonlinear/classifiers/","page":"Example: classification problems","title":"Example: classification problems","text":"affine_cons = all_constraints(model, AffExpr, MOI.GreaterThan{Float64})\nactive_cons = findall(isapprox.(dual.(affine_cons), C_0; atol = 0.001))\nfindall(nearby_indices) ⊆ active_cons","category":"page"},{"location":"tutorials/nonlinear/classifiers/","page":"Example: classification problems","title":"Example: classification problems","text":"The last statement tells us that our nonseparable points are actively contributing to how the classifier is defined. The remaining points are of interest and are highlighted:","category":"page"},{"location":"tutorials/nonlinear/classifiers/","page":"Example: classification problems","title":"Example: classification problems","text":"P_active = P[setdiff(active_cons, findall(nearby_indices)), :]\nPlots.scatter!(\n plot,\n P_active[:, 1],\n P_active[:, 2];\n shape = :hexagon,\n markersize = 8,\n markeropacity = 0.5,\n)","category":"page"},{"location":"tutorials/nonlinear/classifiers/#Advanced:-duality-and-the-kernel-method","page":"Example: classification problems","title":"Advanced: duality and the kernel method","text":"","category":"section"},{"location":"tutorials/nonlinear/classifiers/","page":"Example: classification problems","title":"Example: classification problems","text":"We now consider an alternative formulation for a linear SVM by solving the dual problem.","category":"page"},{"location":"tutorials/nonlinear/classifiers/#The-dual-program","page":"Example: classification problems","title":"The dual program","text":"","category":"section"},{"location":"tutorials/nonlinear/classifiers/","page":"Example: classification problems","title":"Example: classification problems","text":"The dual of the linear SVM program is also a linearly constrained quadratic program:","category":"page"},{"location":"tutorials/nonlinear/classifiers/","page":"Example: classification problems","title":"Example: classification problems","text":"beginaligned\nmin_u in mathbbR^m quad frac12 u^top D P P^top D u - mathbf1^top u \ntextsubject to quad mathbf1^top D u = 0 \n 0 leq u leq Cmathbf1\nendaligned","category":"page"},{"location":"tutorials/nonlinear/classifiers/","page":"Example: classification problems","title":"Example: classification problems","text":"This is the JuMP model:","category":"page"},{"location":"tutorials/nonlinear/classifiers/","page":"Example: classification problems","title":"Example: classification problems","text":"function solve_dual_SVM_classifier(P::Matrix, labels::Vector; C::Float64 = C_0)\n m, n = size(P)\n model = Model(Ipopt.Optimizer)\n set_silent(model)\n @variable(model, 0 <= u[1:m] <= C)\n D = LinearAlgebra.Diagonal(labels)\n @objective(model, Min, 1 / 2 * u' * D * P * P' * D * u - sum(u))\n @constraint(model, con, sum(D * u) == 0)\n optimize!(model)\n Test.@test is_solved_and_feasible(model)\n w = P' * D * value.(u)\n g = dual(con)\n classifier(x) = line(x; w = w, g = g)\n return classifier\nend","category":"page"},{"location":"tutorials/nonlinear/classifiers/","page":"Example: classification problems","title":"Example: classification problems","text":"We recover the line gradient vector w through setting w = P^top D u, and the line constant g as the dual value of the single affine constraint.","category":"page"},{"location":"tutorials/nonlinear/classifiers/","page":"Example: classification problems","title":"Example: classification problems","text":"The dual problem has fewer variables and fewer constraints, so in many cases it may be simpler to solve the dual form.","category":"page"},{"location":"tutorials/nonlinear/classifiers/","page":"Example: classification problems","title":"Example: classification problems","text":"We can check that the dual form has recovered a classifier:","category":"page"},{"location":"tutorials/nonlinear/classifiers/","page":"Example: classification problems","title":"Example: classification problems","text":"classifier = solve_dual_SVM_classifier(P, labels)\nPlots.plot!(plot, classifier; linewidth = 5, linestyle = :dash)","category":"page"},{"location":"tutorials/nonlinear/classifiers/#The-kernel-method","page":"Example: classification problems","title":"The kernel method","text":"","category":"section"},{"location":"tutorials/nonlinear/classifiers/","page":"Example: classification problems","title":"Example: classification problems","text":"Linear SVM techniques are not limited to finding separating hyperplanes in the original space of the dataset. One could first transform the training data under a nonlinear mapping, apply our method, then map the hyperplane back into original space.","category":"page"},{"location":"tutorials/nonlinear/classifiers/","page":"Example: classification problems","title":"Example: classification problems","text":"The actual data describing the point set is held in a matrix P, but looking at the dual program we see that what actually matters is the Gram matrix P P^top, expressing a pairwise comparison (an inner-product) between each point vector. It follows that any mapping of the point set only needs to be defined at the level of pairwise maps between points. Such maps are known as kernel functions:","category":"page"},{"location":"tutorials/nonlinear/classifiers/","page":"Example: classification problems","title":"Example: classification problems","text":"k mathbbR^n times mathbbR^n rightarrow mathbbR qquad\n(s t) mapsto left Phi(s) Phi(t) right","category":"page"},{"location":"tutorials/nonlinear/classifiers/","page":"Example: classification problems","title":"Example: classification problems","text":"where the right-hand side applies some transformation Phi mathbbR^n rightarrow mathbbR^n followed by an inner-product in that image space.","category":"page"},{"location":"tutorials/nonlinear/classifiers/","page":"Example: classification problems","title":"Example: classification problems","text":"In practice, we can avoid having Phi explicitly given but instead define a kernel function directly between pairs of vectors. This change to using a kernel function without knowing the map is called the kernel method (or sometimes, the kernel trick).","category":"page"},{"location":"tutorials/nonlinear/classifiers/#Classifier-using-a-Gaussian-kernel","page":"Example: classification problems","title":"Classifier using a Gaussian kernel","text":"","category":"section"},{"location":"tutorials/nonlinear/classifiers/","page":"Example: classification problems","title":"Example: classification problems","text":"We will demonstrate the application of a Gaussian or radial basis function kernel:","category":"page"},{"location":"tutorials/nonlinear/classifiers/","page":"Example: classification problems","title":"Example: classification problems","text":"k(s t) = expleft( -mu lVert s - t rVert^2_2 right)","category":"page"},{"location":"tutorials/nonlinear/classifiers/","page":"Example: classification problems","title":"Example: classification problems","text":"for some positive parameter mu.","category":"page"},{"location":"tutorials/nonlinear/classifiers/","page":"Example: classification problems","title":"Example: classification problems","text":"k_gauss(s::Vector, t::Vector; μ = 0.5) = exp(-μ * LinearAlgebra.norm(s - t)^2)","category":"page"},{"location":"tutorials/nonlinear/classifiers/","page":"Example: classification problems","title":"Example: classification problems","text":"Given a matrix of points expressed row-wise and a kernel, the next function returns the transformed matrix K that replaces P P^top:","category":"page"},{"location":"tutorials/nonlinear/classifiers/","page":"Example: classification problems","title":"Example: classification problems","text":"function pairwise_transform(kernel::Function, P::Matrix{T}) where {T}\n m, n = size(P)\n K = zeros(T, m, m)\n for j in 1:m, i in 1:j\n K[i, j] = K[j, i] = kernel(P[i, :], P[j, :])\n end\n return LinearAlgebra.Symmetric(K)\nend","category":"page"},{"location":"tutorials/nonlinear/classifiers/","page":"Example: classification problems","title":"Example: classification problems","text":"Now we're ready to define our optimization problem. We need to provide the kernel function to be used in the problem. Note that any extra keyword arguments here (like parameter values) are passed through to the kernel.","category":"page"},{"location":"tutorials/nonlinear/classifiers/","page":"Example: classification problems","title":"Example: classification problems","text":"function solve_kernel_SVM_classifier(\n kernel::Function,\n P::Matrix,\n labels::Vector;\n C::Float64 = C_0,\n kwargs...,\n)\n m, n = size(P)\n K = pairwise_transform(kernel, P)\n model = Model(Ipopt.Optimizer)\n set_silent(model)\n @variable(model, 0 <= u[1:m] <= C)\n D = LinearAlgebra.Diagonal(labels)\n con = @constraint(model, sum(D * u) == 0)\n @objective(model, Min, 1 / 2 * u' * D * K * D * u - sum(u))\n optimize!(model)\n Test.@test is_solved_and_feasible(model)\n u_sol, g_sol = value.(u), dual(con)\n function classifier(v::Vector)\n return sum(\n D[i, i] * u_sol[i] * kernel(P[i, :], v; kwargs...) for i in 1:m\n ) - g_sol\n end\n return classifier\nend","category":"page"},{"location":"tutorials/nonlinear/classifiers/","page":"Example: classification problems","title":"Example: classification problems","text":"This time, we don't recover the line gradient vector w directly. Instead, we compute the classifier f using the function:","category":"page"},{"location":"tutorials/nonlinear/classifiers/","page":"Example: classification problems","title":"Example: classification problems","text":" f(v) = sum_i=1^m D_ii u_i k(p_i v ) - g","category":"page"},{"location":"tutorials/nonlinear/classifiers/","page":"Example: classification problems","title":"Example: classification problems","text":"where p_i is row vector i of P.","category":"page"},{"location":"tutorials/nonlinear/classifiers/#Checkerboard-dataset","page":"Example: classification problems","title":"Checkerboard dataset","text":"","category":"section"},{"location":"tutorials/nonlinear/classifiers/","page":"Example: classification problems","title":"Example: classification problems","text":"To demonstrate this nonlinear technique, we'll use the checkerboard dataset.","category":"page"},{"location":"tutorials/nonlinear/classifiers/","page":"Example: classification problems","title":"Example: classification problems","text":"filename = joinpath(@__DIR__, \"data\", \"checker\", \"checker.txt\")\ncheckerboard = DelimitedFiles.readdlm(filename, ' ', Int)\nlabels = ifelse.(iszero.(checkerboard[:, 1]), -1, 1)\nB = checkerboard[:, 2:3] ./ 100.0 # rescale to [0,2] x [0,2] square.\nplot = Plots.scatter(\n B[:, 1],\n B[:, 2];\n color = ifelse.(labels .== 1, :white, :black),\n markersize = ifelse.(labels .== 1, 4, 2),\n size = (600, 600),\n legend = false,\n)","category":"page"},{"location":"tutorials/nonlinear/classifiers/","page":"Example: classification problems","title":"Example: classification problems","text":"Is the technique capable of generating a distinctly nonlinear surface? Let's solve the Gaussian kernel based quadratic problem with these parameters:","category":"page"},{"location":"tutorials/nonlinear/classifiers/","page":"Example: classification problems","title":"Example: classification problems","text":"classifier = solve_kernel_SVM_classifier(k_gauss, B, labels; C = 1e5, μ = 10.0)\ngrid = [[x, y] for x in 0:0.01:2, y in 0:0.01:2]\ngrid_pos = [Tuple(g) for g in grid if classifier(g) >= 0]\nPlots.scatter!(plot, grid_pos; markersize = 0.2)","category":"page"},{"location":"tutorials/nonlinear/classifiers/","page":"Example: classification problems","title":"Example: classification problems","text":"We find that the kernel method can perform well as a nonlinear classifier.","category":"page"},{"location":"tutorials/nonlinear/classifiers/","page":"Example: classification problems","title":"Example: classification problems","text":"The result has a fairly strong dependence on the choice of parameters, with larger values of mu allowing for a more complex boundary while smaller values lead to a smoother boundary for the classifier. Determining a better performing kernel function and choice of parameters is covered by the process of cross-validation with respect to the dataset, where different testing, training and tuning sets are used to validate the best choice of parameters against a statistical measure of error.","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"CurrentModule = JuMP\nDocTestSetup = quote\n using JuMP, HiGHS, SCS\nend\nDocTestFilters = [r\"≤|<=\", r\"≥|>=\", r\" == | = \", r\" ∈ | in \", r\"MathOptInterface|MOI\"]","category":"page"},{"location":"manual/models/#jump_models","page":"Models","title":"Models","text":"","category":"section"},{"location":"manual/models/","page":"Models","title":"Models","text":"JuMP models are the fundamental building block that we use to construct optimization problems. They hold things like the variables and constraints, as well as which solver to use and even solution information.","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"info: Info\nJuMP uses \"optimizer\" as a synonym for \"solver.\" Our convention is to use \"solver\" to refer to the underlying software, and use \"optimizer\" to refer to the Julia object that wraps the solver. For example, HiGHS is a solver, and HiGHS.Optimizer is an optimizer.","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"tip: Tip\nSee Supported solvers for a list of available solvers.","category":"page"},{"location":"manual/models/#Create-a-model","page":"Models","title":"Create a model","text":"","category":"section"},{"location":"manual/models/","page":"Models","title":"Models","text":"Create a model by passing an optimizer to Model:","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"julia> model = Model(HiGHS.Optimizer)\nA JuMP Model\n├ solver: HiGHS\n├ objective_sense: FEASIBILITY_SENSE\n├ num_variables: 0\n├ num_constraints: 0\n└ Names registered in the model: none","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"If you don't know which optimizer you will be using at creation time, create a model without an optimizer, and then call set_optimizer at any time prior to optimize!:","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"julia> model = Model()\nA JuMP Model\n├ solver: none\n├ objective_sense: FEASIBILITY_SENSE\n├ num_variables: 0\n├ num_constraints: 0\n└ Names registered in the model: none\n\njulia> set_optimizer(model, HiGHS.Optimizer)","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"tip: Tip\nDon't know what the fields Model mode and CachingOptimizer state mean? Read the Backends section.","category":"page"},{"location":"manual/models/#What-is-the-difference?","page":"Models","title":"What is the difference?","text":"","category":"section"},{"location":"manual/models/","page":"Models","title":"Models","text":"For most models, there is no difference between passing the optimizer to Model, and calling set_optimizer.","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"However, if an optimizer does not support a constraint in the model, the timing of when an error will be thrown can differ:","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"If you pass an optimizer, an error will be thrown when you try to add the constraint.\nIf you call set_optimizer, an error will be thrown when you try to solve the model via optimize!.","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"Therefore, most users should pass an optimizer to Model because it provides the earliest warning that your solver is not suitable for the model you are trying to build. However, if you are modifying a problem by adding and deleting different constraint types, you may need to use set_optimizer. See Switching optimizer for the relaxed problem for an example of when this is useful.","category":"page"},{"location":"manual/models/#Reducing-time-to-first-solve-latency","page":"Models","title":"Reducing time-to-first-solve latency","text":"","category":"section"},{"location":"manual/models/","page":"Models","title":"Models","text":"By default, JuMP uses bridges to reformulate the model you are building into an equivalent model supported by the solver.","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"However, if your model is already supported by the solver, bridges add latency (read The \"time-to-first-solve\" issue). This is particularly noticeable for small models.","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"To reduce the \"time-to-first-solve,s\" try passing add_bridges = false.","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"julia> model = Model(HiGHS.Optimizer; add_bridges = false);","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"or","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"julia> model = Model();\n\njulia> set_optimizer(model, HiGHS.Optimizer; add_bridges = false)","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"However, be wary. If your model and solver combination needs bridges, an error will be thrown:","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"julia> model = Model(SCS.Optimizer; add_bridges = false);\n\n\njulia> @variable(model, x)\nx\n\njulia> @constraint(model, 2x <= 1)\nERROR: Constraints of type MathOptInterface.ScalarAffineFunction{Float64}-in-MathOptInterface.LessThan{Float64} are not supported by the solver.\n\nIf you expected the solver to support your problem, you may have an error in your formulation. Otherwise, consider using a different solver.\n\nThe list of available solvers, along with the problem types they support, is available at https://jump.dev/JuMP.jl/stable/installation/#Supported-solvers.\n[...]","category":"page"},{"location":"manual/models/#Solvers-which-expect-environments","page":"Models","title":"Solvers which expect environments","text":"","category":"section"},{"location":"manual/models/","page":"Models","title":"Models","text":"Some solvers accept (or require) positional arguments such as a license environment or a path to a binary executable. For these solvers, you can pass a function to Model which takes zero arguments and returns an instance of the optimizer.","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"A common use-case for this is passing an environment or sub-solver to the optimizer:","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"julia> import HiGHS\n\njulia> import MultiObjectiveAlgorithms as MOA\n\njulia> model = Model(() -> MOA.Optimizer(HiGHS.Optimizer))\nA JuMP Model\n├ solver: MOA[algorithm=MultiObjectiveAlgorithms.Lexicographic, optimizer=HiGHS]\n├ objective_sense: FEASIBILITY_SENSE\n├ num_variables: 0\n├ num_constraints: 0\n└ Names registered in the model: none","category":"page"},{"location":"manual/models/#solver_options","page":"Models","title":"Solver options","text":"","category":"section"},{"location":"manual/models/","page":"Models","title":"Models","text":"JuMP uses \"attribute\" as a synonym for \"option.\" Use optimizer_with_attributes to create an optimizer with some attributes initialized:","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"julia> model = Model(\n optimizer_with_attributes(HiGHS.Optimizer, \"output_flag\" => false),\n )\nA JuMP Model\n├ solver: HiGHS\n├ objective_sense: FEASIBILITY_SENSE\n├ num_variables: 0\n├ num_constraints: 0\n└ Names registered in the model: none","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"Alternatively, use set_attribute to set an attribute after the model has been created:","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"julia> model = Model(HiGHS.Optimizer);\n\njulia> set_attribute(model, \"output_flag\", false)\n\njulia> get_attribute(model, \"output_flag\")\nfalse","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"You can also modify attributes within an optimizer_with_attributes object:","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"julia> solver = optimizer_with_attributes(HiGHS.Optimizer, \"output_flag\" => true);\n\njulia> get_attribute(solver, \"output_flag\")\ntrue\n\njulia> set_attribute(solver, \"output_flag\", false)\n\njulia> get_attribute(solver, \"output_flag\")\nfalse\n\njulia> model = Model(solver);","category":"page"},{"location":"manual/models/#Changing-the-number-types","page":"Models","title":"Changing the number types","text":"","category":"section"},{"location":"manual/models/","page":"Models","title":"Models","text":"By default, the coefficients of affine and quadratic expressions are numbers of type either Float64 or Complex{Float64} (see Complex number support).","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"The type Float64 can be changed using the GenericModel constructor:","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"julia> model = GenericModel{Rational{BigInt}}();\n\njulia> @variable(model, x)\nx\n\njulia> @expression(model, expr, 1 // 3 * x)\n1//3 x\n\njulia> typeof(expr)\nGenericAffExpr{Rational{BigInt}, GenericVariableRef{Rational{BigInt}}}","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"Using a value_type other than Float64 is an advanced operation and should be used only if the underlying solver actually solves the problem using the provided value type.","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"warning: Warning\nNonlinear Modeling is currently restricted to the Float64 number type.","category":"page"},{"location":"manual/models/#Print-the-model","page":"Models","title":"Print the model","text":"","category":"section"},{"location":"manual/models/","page":"Models","title":"Models","text":"By default, show(model) will print a summary of the problem:","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"julia> model = Model(); @variable(model, x >= 0); @objective(model, Max, x);\n\njulia> model\nA JuMP Model\n├ solver: none\n├ objective_sense: MAX_SENSE\n│ └ objective_function_type: VariableRef\n├ num_variables: 1\n├ num_constraints: 1\n│ └ VariableRef in MOI.GreaterThan{Float64}: 1\n└ Names registered in the model\n └ :x","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"Use print to print the formulation of the model (in IJulia, this will render as LaTeX.","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"julia> print(model)\nMax x\nSubject to\n x ≥ 0","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"warning: Warning\nThis format is specific to JuMP and may change in any future release. It is not intended to be an instance format. To write the model to a file, use write_to_file instead.","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"Use latex_formulation to display the model in LaTeX form.","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"julia> latex_formulation(model)\n$$ \\begin{aligned}\n\\max\\quad & x\\\\\n\\text{Subject to} \\quad & x \\geq 0\\\\\n\\end{aligned} $$","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"In IJulia (and Documenter), ending a cell in with latex_formulation will render the model in LaTeX:","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"using JuMP # hide\nmodel = Model() # hide\n@variable(model, x >= 0) # hide\n@objective(model, Max, x) # hide\nlatex_formulation(model)","category":"page"},{"location":"manual/models/#Turn-off-output","page":"Models","title":"Turn off output","text":"","category":"section"},{"location":"manual/models/","page":"Models","title":"Models","text":"Use set_silent and unset_silent to disable or enable printing output from the solver.","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"julia> model = Model(HiGHS.Optimizer);\n\njulia> set_silent(model)\n\njulia> unset_silent(model)","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"tip: Tip\nMost solvers will also have a solver-specific option to provide finer-grained control over the output. Consult their README's for details.","category":"page"},{"location":"manual/models/#Set-a-time-limit","page":"Models","title":"Set a time limit","text":"","category":"section"},{"location":"manual/models/","page":"Models","title":"Models","text":"Use set_time_limit_sec, unset_time_limit_sec, and time_limit_sec to manage time limits.","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"julia> model = Model(HiGHS.Optimizer);\n\njulia> set_time_limit_sec(model, 60.0)\n\n\njulia> time_limit_sec(model)\n60.0\n\njulia> unset_time_limit_sec(model)\n\njulia> limit = time_limit_sec(model)\n\njulia> limit === nothing\ntrue","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"If your time limit is encoded as a Dates.Period object, use the following code to convert it to Float64 for set_time_limit_sec:","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"julia> import Dates\n\njulia> seconds(x::Dates.Period) = 1e-3 * Dates.value(round(x, Dates.Millisecond))\nseconds (generic function with 1 method)\n\njulia> set_time_limit_sec(model, seconds(Dates.Hour(1)))\n\njulia> time_limit_sec(model)\n3600.0","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"info: Info\nSome solvers do not support time limits. In these cases, an error will be thrown.","category":"page"},{"location":"manual/models/#Write-a-model-to-file","page":"Models","title":"Write a model to file","text":"","category":"section"},{"location":"manual/models/","page":"Models","title":"Models","text":"JuMP can write models to a variety of file-formats using write_to_file and Base.write.","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"For most common file formats, the file type will be detected from the extension.","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"For example, here is how to write an MPS file:","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"julia> model = Model();\n\njulia> write_to_file(model, \"model.mps\")","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"Other supported file formats include:","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":".cbf for the Conic Benchmark Format\n.lp for the LP file format\n.mof.json for the MathOptFormat\n.nl for AMPL's NL file format\n.rew for the REW file format\n.sdpa and \".dat-s\" for the SDPA file format","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"To write to a specific io::IO, use Base.write. Specify the file type by passing a MOI.FileFormats.FileFormat enum.","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"julia> model = Model();\n\njulia> io = IOBuffer();\n\njulia> write(io, model; format = MOI.FileFormats.FORMAT_MPS)","category":"page"},{"location":"manual/models/#Read-a-model-from-file","page":"Models","title":"Read a model from file","text":"","category":"section"},{"location":"manual/models/","page":"Models","title":"Models","text":"JuMP models can be created from file formats using read_from_file and Base.read.","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"julia> model = read_from_file(\"model.mps\")\nA JuMP Model\n├ solver: none\n├ objective_sense: MIN_SENSE\n│ └ objective_function_type: AffExpr\n├ num_variables: 0\n├ num_constraints: 0\n└ Names registered in the model: none\n\njulia> seekstart(io);\n\njulia> model2 = read(io, Model; format = MOI.FileFormats.FORMAT_MPS)\nA JuMP Model\n├ solver: none\n├ objective_sense: MIN_SENSE\n│ └ objective_function_type: AffExpr\n├ num_variables: 0\n├ num_constraints: 0\n└ Names registered in the model: none","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"note: Note\nBecause file formats do not serialize the containers of JuMP variables and constraints, the names in the model will not be registered. Therefore, you cannot access named variables and constraints via model[:x]. Instead, use variable_by_name or constraint_by_name to access specific variables or constraints.","category":"page"},{"location":"manual/models/#Relax-integrality","page":"Models","title":"Relax integrality","text":"","category":"section"},{"location":"manual/models/","page":"Models","title":"Models","text":"Use relax_integrality to remove any integrality constraints from the model, such as integer and binary restrictions on variables. relax_integrality returns a function that can be later called with zero arguments to re-add the removed constraints:","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"julia> model = Model();\n\njulia> @variable(model, x, Int)\nx\n\njulia> num_constraints(model, VariableRef, MOI.Integer)\n1\n\njulia> undo = relax_integrality(model);\n\njulia> num_constraints(model, VariableRef, MOI.Integer)\n0\n\njulia> undo()\n\njulia> num_constraints(model, VariableRef, MOI.Integer)\n1","category":"page"},{"location":"manual/models/#Switching-optimizer-for-the-relaxed-problem","page":"Models","title":"Switching optimizer for the relaxed problem","text":"","category":"section"},{"location":"manual/models/","page":"Models","title":"Models","text":"A common reason for relaxing integrality is to compute dual variables of the relaxed problem. However, some mixed-integer linear solvers (for example, Cbc) do not return dual solutions, even if the problem does not have integrality restrictions.","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"Therefore, after relax_integrality you should call set_optimizer with a solver that does support dual solutions, such as Clp.","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"For example, instead of:","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"using JuMP, Cbc\nmodel = Model(Cbc.Optimizer)\n@variable(model, x, Int)\nundo = relax_integrality(model)\noptimize!(model)\nreduced_cost(x) # Errors","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"do:","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"using JuMP, Cbc, Clp\nmodel = Model(Cbc.Optimizer)\n@variable(model, x, Int)\nundo = relax_integrality(model)\nset_optimizer(model, Clp.Optimizer)\noptimize!(model)\nreduced_cost(x) # Works","category":"page"},{"location":"manual/models/#Get-the-matrix-representation","page":"Models","title":"Get the matrix representation","text":"","category":"section"},{"location":"manual/models/","page":"Models","title":"Models","text":"Use lp_matrix_data to return a data structure that represents the matrix form of a linear program.","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"julia> begin\n model = Model()\n @variable(model, x >= 1, Bin)\n @variable(model, 2 <= y)\n @variable(model, 3 <= z <= 4, Int)\n @constraint(model, x == 5)\n @constraint(model, 2x + 3y <= 6)\n @constraint(model, -4y >= 5z + 7)\n @constraint(model, -1 <= x + y <= 2)\n @objective(model, Max, 1 + 2x)\n end;\n\njulia> data = lp_matrix_data(model);\n\njulia> data.A\n4×3 SparseArrays.SparseMatrixCSC{Float64, Int64} with 7 stored entries:\n 1.0 ⋅ ⋅\n ⋅ -4.0 -5.0\n 2.0 3.0 ⋅\n 1.0 1.0 ⋅\n\njulia> data.b_lower\n4-element Vector{Float64}:\n 5.0\n 7.0\n -Inf\n -1.0\n\njulia> data.b_upper\n4-element Vector{Float64}:\n 5.0\n Inf\n 6.0\n 2.0\n\njulia> data.x_lower\n3-element Vector{Float64}:\n 1.0\n 2.0\n 3.0\n\njulia> data.x_upper\n3-element Vector{Float64}:\n Inf\n Inf\n 4.0\n\njulia> data.c\n3-element Vector{Float64}:\n 2.0\n 0.0\n 0.0\n\njulia> data.c_offset\n1.0\n\njulia> data.sense\nMAX_SENSE::OptimizationSense = 1\n\njulia> data.integers\n1-element Vector{Int64}:\n 3\n\njulia> data.binaries\n1-element Vector{Int64}:\n 1","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"warning: Warning\nlp_matrix_data is intentionally limited in the types of problems that it supports and the structure of the matrices it outputs. It is mainly intended as a pedagogical and debugging tool. It should not be used to interface solvers, see Implementing a solver interface instead.","category":"page"},{"location":"manual/models/#Backends","page":"Models","title":"Backends","text":"","category":"section"},{"location":"manual/models/","page":"Models","title":"Models","text":"info: Info\nThis section discusses advanced features of JuMP. For new users, you may want to skip this section. You don't need to know how JuMP manages problems behind the scenes to create and solve JuMP models.","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"A JuMP Model is a thin layer around a backend of type MOI.ModelLike that stores the optimization problem and acts as the optimization solver.","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"However, if you construct a model like Model(HiGHS.Optimizer), the backend is not a HiGHS.Optimizer, but a more complicated object.","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"From JuMP, the MOI backend can be accessed using the backend function. Let's see what the backend of a JuMP Model is:","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"julia> model = Model(HiGHS.Optimizer);\n\njulia> b = backend(model)\nMOIU.CachingOptimizer\n├ state: EMPTY_OPTIMIZER\n├ mode: AUTOMATIC\n├ model_cache: MOIU.UniversalFallback{MOIU.Model{Float64}}\n│ ├ ObjectiveSense: FEASIBILITY_SENSE\n│ ├ ObjectiveFunctionType: MOI.ScalarAffineFunction{Float64}\n│ ├ NumberOfVariables: 0\n│ └ NumberOfConstraints: 0\n└ optimizer: MOIB.LazyBridgeOptimizer{HiGHS.Optimizer}\n ├ Variable bridges: none\n ├ Constraint bridges: none\n ├ Objective bridges: none\n └ model: A HiGHS model with 0 columns and 0 rows.","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"Uh oh. Even though we passed a HiGHS.Optimizer, the backend is a much more complicated object.","category":"page"},{"location":"manual/models/#CachingOptimizer","page":"Models","title":"CachingOptimizer","text":"","category":"section"},{"location":"manual/models/","page":"Models","title":"Models","text":"A MOIU.CachingOptimizer is a layer that abstracts the difference between solvers that support incremental modification (for example, they support adding variables one-by-one), and solvers that require the entire problem in a single API call (for example, they only accept the A, b and c matrices of a linear program).","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"It has two parts:","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"A cache, where the model can be built and modified incrementally\njulia> b.model_cache\nMOIU.UniversalFallback{MOIU.Model{Float64}}\n├ ObjectiveSense: FEASIBILITY_SENSE\n├ ObjectiveFunctionType: MOI.ScalarAffineFunction{Float64}\n├ NumberOfVariables: 0\n└ NumberOfConstraints: 0\nAn optimizer, which is used to solve the problem\njulia> b.optimizer\nMOIB.LazyBridgeOptimizer{HiGHS.Optimizer}\n├ Variable bridges: none\n├ Constraint bridges: none\n├ Objective bridges: none\n└ model: A HiGHS model with 0 columns and 0 rows.","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"info: Info\nThe LazyBridgeOptimizer section explains what a LazyBridgeOptimizer is.","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"The CachingOptimizer has logic to decide when to copy the problem from the cache to the optimizer, and when it can efficiently update the optimizer in-place.","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"A CachingOptimizer may be in one of three possible states:","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"NO_OPTIMIZER: The CachingOptimizer does not have any optimizer.\nEMPTY_OPTIMIZER: The CachingOptimizer has an empty optimizer, and it is not synchronized with the cached model.\nATTACHED_OPTIMIZER: The CachingOptimizer has an optimizer, and it is synchronized with the cached model.","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"A CachingOptimizer has two modes of operation:","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"AUTOMATIC: The CachingOptimizer changes its state when necessary. For example, optimize! will automatically call attach_optimizer (an optimizer must have been previously set). Attempting to add a constraint or perform a modification not supported by the optimizer results in a drop to EMPTY_OPTIMIZER mode.\nMANUAL: The user must change the state of the CachingOptimizer using MOIU.reset_optimizer(::JuMP.Model), MOIU.drop_optimizer(::JuMP.Model), and MOIU.attach_optimizer(::JuMP.Model). Attempting to perform an operation in the incorrect state results in an error.","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"By default Model will create a CachingOptimizer in AUTOMATIC mode.","category":"page"},{"location":"manual/models/#LazyBridgeOptimizer","page":"Models","title":"LazyBridgeOptimizer","text":"","category":"section"},{"location":"manual/models/","page":"Models","title":"Models","text":"The second layer that JuMP applies automatically is a MOI.Bridges.LazyBridgeOptimizer. A MOI.Bridges.LazyBridgeOptimizer is an MOI layer that attempts to transform the problem from the formulation provided by the user into an equivalent problem supported by the solver. This may involve adding new variables and constraints to the optimizer. The transformations are selected from a set of known recipes called bridges.","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"A common example of a bridge is one that splits an interval constraint like @constraint(model, 1 <= x + y <= 2) into two constraints, @constraint(model, x + y >= 1) and @constraint(model, x + y <= 2).","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"Use the add_bridges = false keyword to remove the bridging layer:","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"julia> model = Model(HiGHS.Optimizer; add_bridges = false)\nA JuMP Model\n├ solver: HiGHS\n├ objective_sense: FEASIBILITY_SENSE\n├ num_variables: 0\n├ num_constraints: 0\n└ Names registered in the model: none\n\njulia> backend(model)\nMOIU.CachingOptimizer\n├ state: EMPTY_OPTIMIZER\n├ mode: AUTOMATIC\n├ model_cache: MOIU.UniversalFallback{MOIU.Model{Float64}}\n│ ├ ObjectiveSense: FEASIBILITY_SENSE\n│ ├ ObjectiveFunctionType: MOI.ScalarAffineFunction{Float64}\n│ ├ NumberOfVariables: 0\n│ └ NumberOfConstraints: 0\n└ optimizer: A HiGHS model with 0 columns and 0 rows.","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"Bridges can be added and removed from a MOI.Bridges.LazyBridgeOptimizer using add_bridge and remove_bridge. Use print_active_bridges to see which bridges are used to reformulate the model. Read the Example: ellipsoid approximation tutorial for more details.","category":"page"},{"location":"manual/models/#Unsafe-backend","page":"Models","title":"Unsafe backend","text":"","category":"section"},{"location":"manual/models/","page":"Models","title":"Models","text":"In some advanced use-cases, it is necessary to work with the inner optimization model directly. To access this model, use unsafe_backend:","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"julia> backend(model)\nMOIU.CachingOptimizer\n├ state: EMPTY_OPTIMIZER\n├ mode: AUTOMATIC\n├ model_cache: MOIU.UniversalFallback{MOIU.Model{Float64}}\n│ ├ ObjectiveSense: FEASIBILITY_SENSE\n│ ├ ObjectiveFunctionType: MOI.ScalarAffineFunction{Float64}\n│ ├ NumberOfVariables: 0\n│ └ NumberOfConstraints: 0\n└ optimizer: MOIB.LazyBridgeOptimizer{HiGHS.Optimizer}\n ├ Variable bridges: none\n ├ Constraint bridges: none\n ├ Objective bridges: none\n └ model: A HiGHS model with 0 columns and 0 rows.\n\njulia> unsafe_backend(model)\nA HiGHS model with 0 columns and 0 rows.","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"warning: Warning\nbackend and unsafe_backend are advanced routines. Read their docstrings to understand the caveats of their usage, and only call them if you wish to access low-level solver-specific functions.","category":"page"},{"location":"manual/models/#Direct-mode","page":"Models","title":"Direct mode","text":"","category":"section"},{"location":"manual/models/","page":"Models","title":"Models","text":"Using a CachingOptimizer results in an additional copy of the model being stored by JuMP in the .model_cache field. To avoid this overhead, create a JuMP model using direct_model:","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"julia> model = direct_model(HiGHS.Optimizer())\nA JuMP Model\n├ mode: DIRECT\n├ solver: HiGHS\n├ objective_sense: FEASIBILITY_SENSE\n├ num_variables: 0\n├ num_constraints: 0\n└ Names registered in the model: none","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"warning: Warning\nSolvers that do not support incremental modification do not support direct_model. An error will be thrown, telling you to use a CachingOptimizer instead.","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"The benefit of using direct_model is that there are no extra layers (for example, Cachingoptimizer or LazyBridgeOptimizer) between model and the provided optimizer:","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"julia> backend(model)\nA HiGHS model with 0 columns and 0 rows.","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"A downside of direct mode is that there is no bridging layer. Therefore, only constraints which are natively supported by the solver are supported. For example, HiGHS.jl does not implement quadratic constraints:","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"julia> model = direct_model(HiGHS.Optimizer());\n\njulia> set_silent(model)\n\njulia> @variable(model, x[1:2]);\n\njulia> @constraint(model, x[1]^2 + x[2]^2 <= 2)\nERROR: Constraints of type MathOptInterface.ScalarQuadraticFunction{Float64}-in-MathOptInterface.LessThan{Float64} are not supported by the solver.\n\nIf you expected the solver to support your problem, you may have an error in your formulation. Otherwise, consider using a different solver.\n\nThe list of available solvers, along with the problem types they support, is available at https://jump.dev/JuMP.jl/stable/installation/#Supported-solvers.\nStacktrace:","category":"page"},{"location":"manual/models/","page":"Models","title":"Models","text":"warning: Warning\nAnother downside of direct mode is that the behavior of querying solution information after modifying the problem is solver-specific. This can lead to errors, or the solver silently returning an incorrect value. See OptimizeNotCalled errors for more information.","category":"page"},{"location":"moi/background/duality/","page":"Duality","title":"Duality","text":"EditURL = \"https://github.com/jump-dev/MathOptInterface.jl/blob/v1.34.0/docs/src/background/duality.md\"","category":"page"},{"location":"moi/background/duality/","page":"Duality","title":"Duality","text":"CurrentModule = MathOptInterface\nDocTestSetup = quote\n import MathOptInterface as MOI\nend\nDocTestFilters = [r\"MathOptInterface|MOI\"]","category":"page"},{"location":"moi/background/duality/#Duality","page":"Duality","title":"Duality","text":"","category":"section"},{"location":"moi/background/duality/","page":"Duality","title":"Duality","text":"Conic duality is the starting point for MOI's duality conventions. When all functions are affine (or coordinate projections), and all constraint sets are closed convex cones, the model may be called a conic optimization problem.","category":"page"},{"location":"moi/background/duality/","page":"Duality","title":"Duality","text":"For a minimization problem in geometric conic form, the primal is:","category":"page"},{"location":"moi/background/duality/","page":"Duality","title":"Duality","text":"beginalign\n min_x in mathbbR^n a_0^T x + b_0\n\n textst A_i x + b_i in mathcalC_i i = 1 ldots m\nendalign","category":"page"},{"location":"moi/background/duality/","page":"Duality","title":"Duality","text":"and the dual is a maximization problem in standard conic form:","category":"page"},{"location":"moi/background/duality/","page":"Duality","title":"Duality","text":"beginalign\n max_y_1 ldots y_m -sum_i=1^m b_i^T y_i + b_0\n\n textst a_0 - sum_i=1^m A_i^T y_i = 0\n\n y_i in mathcalC_i^* i = 1 ldots m\nendalign","category":"page"},{"location":"moi/background/duality/","page":"Duality","title":"Duality","text":"where each mathcalC_i is a closed convex cone and mathcalC_i^* is its dual cone.","category":"page"},{"location":"moi/background/duality/","page":"Duality","title":"Duality","text":"For a maximization problem in geometric conic form, the primal is:","category":"page"},{"location":"moi/background/duality/","page":"Duality","title":"Duality","text":"beginalign\n max_x in mathbbR^n a_0^T x + b_0\n\n textst A_i x + b_i in mathcalC_i i = 1 ldots m\nendalign","category":"page"},{"location":"moi/background/duality/","page":"Duality","title":"Duality","text":"and the dual is a minimization problem in standard conic form:","category":"page"},{"location":"moi/background/duality/","page":"Duality","title":"Duality","text":"beginalign\n min_y_1 ldots y_m sum_i=1^m b_i^T y_i + b_0\n\n textst a_0 + sum_i=1^m A_i^T y_i = 0\n\n y_i in mathcalC_i^* i = 1 ldots m\nendalign","category":"page"},{"location":"moi/background/duality/","page":"Duality","title":"Duality","text":"A linear inequality constraint a^T x + b ge c is equivalent to a^T x + b - c in mathbbR_+, and a^T x + b le c is equivalent to a^T x + b - c in mathbbR_-. Variable-wise constraints are affine constraints with the appropriate identity mapping in place of A_i.","category":"page"},{"location":"moi/background/duality/","page":"Duality","title":"Duality","text":"For the special case of minimization LPs, the MOI primal form can be stated as:","category":"page"},{"location":"moi/background/duality/","page":"Duality","title":"Duality","text":"beginalign\n min_x in mathbbR^n a_0^T x + b_0\n\n textst\nA_1 x ge b_1\n A_2 x le b_2\n A_3 x = b_3\nendalign","category":"page"},{"location":"moi/background/duality/","page":"Duality","title":"Duality","text":"By applying the stated transformations to conic form, taking the dual, and transforming back into linear inequality form, one obtains the following dual:","category":"page"},{"location":"moi/background/duality/","page":"Duality","title":"Duality","text":"beginalign\n max_y_1y_2y_3 b_1^Ty_1 + b_2^Ty_2 + b_3^Ty_3 + b_0\n\n textst\nA_1^Ty_1 + A_2^Ty_2 + A_3^Ty_3 = a_0\n y_1 ge 0\n y_2 le 0\nendalign","category":"page"},{"location":"moi/background/duality/","page":"Duality","title":"Duality","text":"For maximization LPs, the MOI primal form can be stated as:","category":"page"},{"location":"moi/background/duality/","page":"Duality","title":"Duality","text":"beginalign\n max_x in mathbbR^n a_0^T x + b_0\n\n textst\nA_1 x ge b_1\n A_2 x le b_2\n A_3 x = b_3\nendalign","category":"page"},{"location":"moi/background/duality/","page":"Duality","title":"Duality","text":"and similarly, the dual is:","category":"page"},{"location":"moi/background/duality/","page":"Duality","title":"Duality","text":"beginalign\n min_y_1y_2y_3 -b_1^Ty_1 - b_2^Ty_2 - b_3^Ty_3 + b_0\n\n textst\nA_1^Ty_1 + A_2^Ty_2 + A_3^Ty_3 = -a_0\n y_1 ge 0\n y_2 le 0\nendalign","category":"page"},{"location":"moi/background/duality/","page":"Duality","title":"Duality","text":"warning: Warning\nFor the LP case, the signs of the feasible dual variables depend only on the sense of the corresponding primal inequality and not on the objective sense.","category":"page"},{"location":"moi/background/duality/#Duality-and-scalar-product","page":"Duality","title":"Duality and scalar product","text":"","category":"section"},{"location":"moi/background/duality/","page":"Duality","title":"Duality","text":"The scalar product is different from the canonical one for the sets PositiveSemidefiniteConeTriangle, LogDetConeTriangle, RootDetConeTriangle.","category":"page"},{"location":"moi/background/duality/","page":"Duality","title":"Duality","text":"If the set C_i of the section Duality is one of these three cones, then the rows of the matrix A_i corresponding to off-diagonal entries are twice the value of the coefficients field in the VectorAffineFunction for the corresponding rows. See PositiveSemidefiniteConeTriangle for details.","category":"page"},{"location":"moi/background/duality/#Dual-for-problems-with-quadratic-functions","page":"Duality","title":"Dual for problems with quadratic functions","text":"","category":"section"},{"location":"moi/background/duality/#Quadratic-Programs-(QPs)","page":"Duality","title":"Quadratic Programs (QPs)","text":"","category":"section"},{"location":"moi/background/duality/","page":"Duality","title":"Duality","text":"For quadratic programs with only affine conic constraints,","category":"page"},{"location":"moi/background/duality/","page":"Duality","title":"Duality","text":"beginalign*\n min_x in mathbbR^n frac12x^TQ_0x + a_0^T x + b_0\n\n textst A_i x + b_i in mathcalC_i i = 1 ldots m\nendalign*","category":"page"},{"location":"moi/background/duality/","page":"Duality","title":"Duality","text":"with cones mathcalC_i subseteq mathbbR^m_i for i = 1 ldots m, consider the Lagrangian function","category":"page"},{"location":"moi/background/duality/","page":"Duality","title":"Duality","text":"L(x y) = frac12x^TQ_0x + a_0^T x + b_0 - sum_i = 1^m y_i^T (A_i x + b_i)","category":"page"},{"location":"moi/background/duality/","page":"Duality","title":"Duality","text":"Let z(y) denote sum_i = 1^m A_i^T y_i - a_0, the Lagrangian can be rewritten as","category":"page"},{"location":"moi/background/duality/","page":"Duality","title":"Duality","text":"L(x y) = frac12x^TQ_0x - z(y)^T x + b_0 - sum_i = 1^m y_i^T b_i","category":"page"},{"location":"moi/background/duality/","page":"Duality","title":"Duality","text":"The condition nabla_x L(x y) = 0 gives","category":"page"},{"location":"moi/background/duality/","page":"Duality","title":"Duality","text":"0 = nabla_x L(x y) = Q_0x + a_0 - sum_i = 1^m y_i^T b_i","category":"page"},{"location":"moi/background/duality/","page":"Duality","title":"Duality","text":"which gives Q_0x = z(y). This allows to obtain that","category":"page"},{"location":"moi/background/duality/","page":"Duality","title":"Duality","text":"min_x in mathbbR^n L(x y) = -frac12x^TQ_0x + b_0 - sum_i = 1^m y_i^T b_i","category":"page"},{"location":"moi/background/duality/","page":"Duality","title":"Duality","text":"so the dual problem is","category":"page"},{"location":"moi/background/duality/","page":"Duality","title":"Duality","text":"max_y_i in mathcalC_i^* min_x in mathbbR^n -frac12x^TQ_0x + b_0 - sum_i = 1^m y_i^T b_i","category":"page"},{"location":"moi/background/duality/","page":"Duality","title":"Duality","text":"If Q_0 is invertible, we have x = Q_0^-1z(y) hence","category":"page"},{"location":"moi/background/duality/","page":"Duality","title":"Duality","text":"min_x in mathbbR^n L(x y) = -frac12z(y)^TQ_0^-1z(y) + b_0 - sum_i = 1^m y_i^T b_i","category":"page"},{"location":"moi/background/duality/","page":"Duality","title":"Duality","text":"so the dual problem is","category":"page"},{"location":"moi/background/duality/","page":"Duality","title":"Duality","text":"max_y_i in mathcalC_i^* -frac12z(y)^TQ_0^-1z(y) + b_0 - sum_i = 1^m y_i^T b_i","category":"page"},{"location":"moi/background/duality/#Quadratically-Constrained-Quadratic-Programs-(QCQPs)","page":"Duality","title":"Quadratically Constrained Quadratic Programs (QCQPs)","text":"","category":"section"},{"location":"moi/background/duality/","page":"Duality","title":"Duality","text":"Given a problem with both quadratic function and quadratic objectives:","category":"page"},{"location":"moi/background/duality/","page":"Duality","title":"Duality","text":"beginalign*\n min_x in mathbbR^n frac12x^TQ_0x + a_0^T x + b_0\n\n textst frac12x^TQ_ix + a_i^T x + b_i in mathcalC_i i = 1 ldots m\nendalign*","category":"page"},{"location":"moi/background/duality/","page":"Duality","title":"Duality","text":"with cones mathcalC_i subseteq mathbbR for i = 1 ldots m, consider the Lagrangian function","category":"page"},{"location":"moi/background/duality/","page":"Duality","title":"Duality","text":"L(x y) = frac12x^TQ_0x + a_0^T x + b_0 - sum_i = 1^m y_i (frac12x^TQ_ix + a_i^T x + b_i)","category":"page"},{"location":"moi/background/duality/","page":"Duality","title":"Duality","text":"A pair of primal-dual variables (x^star y^star) is optimal if","category":"page"},{"location":"moi/background/duality/","page":"Duality","title":"Duality","text":"x^star is a minimizer of\nmin_x in mathbbR^n L(x y^star)\nThat is,\n0 = nabla_x L(x y^star) = Q_0x + a_0 - sum_i = 1^m y_i^star (Q_ix + a_i)\nand y^star is a maximizer of\nmax_y_i in mathcalC_i^* L(x^star y)\nThat is, for all i = 1 ldots m, frac12x^TQ_ix + a_i^T x + b_i is either zero or in the normal cone of mathcalC_i^* at y^star. For instance, if mathcalC_i is z in mathbbR z le 0 , this means that if frac12x^TQ_ix + a_i^T x + b_i is nonzero at x^star then y_i^star = 0. This is the classical complementary slackness condition.","category":"page"},{"location":"moi/background/duality/","page":"Duality","title":"Duality","text":"If mathcalC_i is a vector set, the discussion remains valid with y_i(frac12x^TQ_ix + a_i^T x + b_i) replaced with the scalar product between y_i and the vector of scalar-valued quadratic functions.","category":"page"},{"location":"moi/background/duality/#Dual-for-square-semidefinite-matrices","page":"Duality","title":"Dual for square semidefinite matrices","text":"","category":"section"},{"location":"moi/background/duality/","page":"Duality","title":"Duality","text":"The set PositiveSemidefiniteConeTriangle is a self-dual. That is, querying ConstraintDual of a PositiveSemidefiniteConeTriangle constraint returns a vector that is itself a member of PositiveSemidefiniteConeTriangle.","category":"page"},{"location":"moi/background/duality/","page":"Duality","title":"Duality","text":"However, the dual of PositiveSemidefiniteConeSquare is not so straight forward. This section explains the duality convention we use, and how it is derived.","category":"page"},{"location":"moi/background/duality/","page":"Duality","title":"Duality","text":"info: Info\nIf you have a PositiveSemidefiniteConeSquare constraint, the result matrix A from ConstraintDual is not positive semidefinite. However, A + A^top is positive semidefinite.","category":"page"},{"location":"moi/background/duality/","page":"Duality","title":"Duality","text":"Let mathcalS_+ be the cone of symmetric semidefinite matrices in the fracn(n+1)2 dimensional space of symmetric mathbbR^n times n matrices. That is, mathcalS_+ is the set PositiveSemidefiniteConeTriangle. It is well known that mathcalS_+ is a self-dual proper cone.","category":"page"},{"location":"moi/background/duality/","page":"Duality","title":"Duality","text":"Let mathcalP_+ be the cone of symmetric semidefinite matrices in the n^2 dimensional space of mathbbR^n times n matrices. That is mathcalP_+ is the set PositiveSemidefiniteConeSquare.","category":"page"},{"location":"moi/background/duality/","page":"Duality","title":"Duality","text":"In addition, let mathcalD_+ be the cone of matrices A such that A+A^top in mathcalP_+.","category":"page"},{"location":"moi/background/duality/","page":"Duality","title":"Duality","text":"mathcalP_+ is not proper because it is not solid (it is not n^2 dimensional), so it is not necessarily true that mathcalP_+^** = mathcalP_+.","category":"page"},{"location":"moi/background/duality/","page":"Duality","title":"Duality","text":"However, this is the case, because we will show that mathcalP_+^* = mathcalD_+ and mathcalD_+^* = mathcalP_+.","category":"page"},{"location":"moi/background/duality/","page":"Duality","title":"Duality","text":"First, let us see why mathcalP_+^* = mathcalD_+.","category":"page"},{"location":"moi/background/duality/","page":"Duality","title":"Duality","text":"If B is symmetric, then","category":"page"},{"location":"moi/background/duality/","page":"Duality","title":"Duality","text":"langle AB rangle = langle A^top B^top rangle = langle A^top Brangle","category":"page"},{"location":"moi/background/duality/","page":"Duality","title":"Duality","text":"so","category":"page"},{"location":"moi/background/duality/","page":"Duality","title":"Duality","text":"2langle A B rangle = langle A B rangle + langle A^top B rangle = langle A + A^top B rangle","category":"page"},{"location":"moi/background/duality/","page":"Duality","title":"Duality","text":"Therefore, langle ABrangle ge 0 for all B in mathcalP_+ if and only if langle A+A^topBrangle ge 0 for all B in mathcalP_+. Since A+A^top is symmetric, and we know that mathcalS_+ is self-dual, we have shown that mathcalP_+^* is the set of matrices A such that A+A^top in mathcalP_+.","category":"page"},{"location":"moi/background/duality/","page":"Duality","title":"Duality","text":"Second, let us see why mathcalD_+^* = mathcalP_+.","category":"page"},{"location":"moi/background/duality/","page":"Duality","title":"Duality","text":"Since A in mathcalD_+ implies that A^top in mathcalD_+, B in mathcalD_+^* means that langle A+A^topBrangle ge 0 for all A in mathcalD_+, and hence B in mathcalP_+.","category":"page"},{"location":"moi/background/duality/","page":"Duality","title":"Duality","text":"To see why it should be symmetric, simply notice that if B_ij B_ji, then langle ABrangle can be made arbitrarily small by setting A_ij = A_ij + s and A_ji = A_ji - s, with s arbitrarily large, and A stays in mathcalD_+ because A+A^top does not change.","category":"page"},{"location":"moi/background/duality/","page":"Duality","title":"Duality","text":"Typically, the primal/dual pair for semidefinite programs is presented as:","category":"page"},{"location":"moi/background/duality/","page":"Duality","title":"Duality","text":"beginalign\n min langle C X rangle \ntextst langle A_k Xrangle = b_k forall k \n X in mathcalS_+\nendalign","category":"page"},{"location":"moi/background/duality/","page":"Duality","title":"Duality","text":"with the dual","category":"page"},{"location":"moi/background/duality/","page":"Duality","title":"Duality","text":"beginalign\n max sum_k b_k y_k \ntextst C - sum A_k y_k in mathcalS_+\nendalign","category":"page"},{"location":"moi/background/duality/","page":"Duality","title":"Duality","text":"If we allow A_k to be non-symmetric, we should instead use:","category":"page"},{"location":"moi/background/duality/","page":"Duality","title":"Duality","text":"beginalign\n min langle C X rangle \ntextst langle A_k Xrangle = b_k forall k \n X in mathcalD_+\nendalign","category":"page"},{"location":"moi/background/duality/","page":"Duality","title":"Duality","text":"with the dual","category":"page"},{"location":"moi/background/duality/","page":"Duality","title":"Duality","text":"beginalign\n max sum b_k y_k \ntextst C - sum A_k y_k in mathcalP_+\nendalign","category":"page"},{"location":"moi/background/duality/","page":"Duality","title":"Duality","text":"This is implemented as:","category":"page"},{"location":"moi/background/duality/","page":"Duality","title":"Duality","text":"beginalign\n min langle C Z rangle + langle C - C^top S rangle \ntextst langle A_k Z rangle + langle A_k - A_k^top S rangle = b_k forall k \n Z in mathcalS_+\nendalign","category":"page"},{"location":"moi/background/duality/","page":"Duality","title":"Duality","text":"with the dual","category":"page"},{"location":"moi/background/duality/","page":"Duality","title":"Duality","text":"beginalign\n max sum b_k y_k \ntextst C+C^top - sum (A_k+A_k^top) y_k in mathcalS_+ \n C-C^top - sum(A_k-A_k^top) y_k = 0\nendalign","category":"page"},{"location":"moi/background/duality/","page":"Duality","title":"Duality","text":"and we recover Z = X + X^top.","category":"page"},{"location":"tutorials/conic/tips_and_tricks/","page":"Modeling with cones","title":"Modeling with cones","text":"EditURL = \"tips_and_tricks.jl\"","category":"page"},{"location":"tutorials/conic/tips_and_tricks/#Modeling-with-cones","page":"Modeling with cones","title":"Modeling with cones","text":"","category":"section"},{"location":"tutorials/conic/tips_and_tricks/","page":"Modeling with cones","title":"Modeling with cones","text":"This tutorial was generated using Literate.jl. Download the source as a .jl file.","category":"page"},{"location":"tutorials/conic/tips_and_tricks/","page":"Modeling with cones","title":"Modeling with cones","text":"This tutorial was originally contributed by Arpit Bhatia.","category":"page"},{"location":"tutorials/conic/tips_and_tricks/","page":"Modeling with cones","title":"Modeling with cones","text":"The purpose of this tutorial is to show how you can model various common problems using conic optimization.","category":"page"},{"location":"tutorials/conic/tips_and_tricks/","page":"Modeling with cones","title":"Modeling with cones","text":"tip: Tip\nA good resource for learning more about functions which can be modeled using cones is the MOSEK Modeling Cookbook.","category":"page"},{"location":"tutorials/conic/tips_and_tricks/#Required-packages","page":"Modeling with cones","title":"Required packages","text":"","category":"section"},{"location":"tutorials/conic/tips_and_tricks/","page":"Modeling with cones","title":"Modeling with cones","text":"This tutorial uses the following packages:","category":"page"},{"location":"tutorials/conic/tips_and_tricks/","page":"Modeling with cones","title":"Modeling with cones","text":"using JuMP\nimport LinearAlgebra\nimport MathOptInterface as MOI\nimport SCS\n\nimport Random # hide\nRandom.seed!(1234) # hide\nnothing # hide","category":"page"},{"location":"tutorials/conic/tips_and_tricks/#Background-theory","page":"Modeling with cones","title":"Background theory","text":"","category":"section"},{"location":"tutorials/conic/tips_and_tricks/","page":"Modeling with cones","title":"Modeling with cones","text":"A subset C of a vector space V is a cone if forall x in C and positive scalars lambda 0, the product lambda x in C.","category":"page"},{"location":"tutorials/conic/tips_and_tricks/","page":"Modeling with cones","title":"Modeling with cones","text":"A cone C is a convex cone if lambda x + (1 - lambda) y in C, for any lambda in 0 1, and any x y in C.","category":"page"},{"location":"tutorials/conic/tips_and_tricks/","page":"Modeling with cones","title":"Modeling with cones","text":"Conic programming problems are convex optimization problems in which a convex function is minimized over the intersection of an affine subspace and a convex cone. An example of a conic-form minimization problems, in the primal form is:","category":"page"},{"location":"tutorials/conic/tips_and_tricks/","page":"Modeling with cones","title":"Modeling with cones","text":"beginaligned\n min_x in mathbbR^n a_0^T x + b_0 \n textst A_i x + b_i in mathcalC_i i = 1 ldots m\nendaligned","category":"page"},{"location":"tutorials/conic/tips_and_tricks/","page":"Modeling with cones","title":"Modeling with cones","text":"The corresponding dual problem is:","category":"page"},{"location":"tutorials/conic/tips_and_tricks/","page":"Modeling with cones","title":"Modeling with cones","text":"beginaligned\n max_y_1 ldots y_m -sum_i=1^m b_i^T y_i + b_0 \n textst a_0 - sum_i=1^m A_i^T y_i = 0 \n y_i in mathcalC_i^* i = 1 ldots m\nendaligned","category":"page"},{"location":"tutorials/conic/tips_and_tricks/","page":"Modeling with cones","title":"Modeling with cones","text":"where each mathcalC_i is a closed convex cone and mathcalC_i^* is its dual cone.","category":"page"},{"location":"tutorials/conic/tips_and_tricks/#Second-Order-Cone","page":"Modeling with cones","title":"Second-Order Cone","text":"","category":"section"},{"location":"tutorials/conic/tips_and_tricks/","page":"Modeling with cones","title":"Modeling with cones","text":"The SecondOrderCone (or Lorentz Cone) of dimension n is a cone of the form:","category":"page"},{"location":"tutorials/conic/tips_and_tricks/","page":"Modeling with cones","title":"Modeling with cones","text":"K_soc = (t x) in mathbbR^n t ge x_2 ","category":"page"},{"location":"tutorials/conic/tips_and_tricks/","page":"Modeling with cones","title":"Modeling with cones","text":"It is most commonly used to represent the L2-norm of the vector x:","category":"page"},{"location":"tutorials/conic/tips_and_tricks/","page":"Modeling with cones","title":"Modeling with cones","text":"model = Model(SCS.Optimizer)\nset_silent(model)\n@variable(model, x[1:3])\n@variable(model, t)\n@constraint(model, sum(x) == 1)\n@constraint(model, [t; x] in SecondOrderCone())\n@objective(model, Min, t)\noptimize!(model)\n@assert is_solved_and_feasible(model)\nvalue(t), value.(x)","category":"page"},{"location":"tutorials/conic/tips_and_tricks/#Rotated-Second-Order-Cone","page":"Modeling with cones","title":"Rotated Second-Order Cone","text":"","category":"section"},{"location":"tutorials/conic/tips_and_tricks/","page":"Modeling with cones","title":"Modeling with cones","text":"A Second-Order Cone rotated by pi4 in the (x_1x_2) plane is called a RotatedSecondOrderCone. It is a cone of the form:","category":"page"},{"location":"tutorials/conic/tips_and_tricks/","page":"Modeling with cones","title":"Modeling with cones","text":"K_rsoc = (tux) in mathbbR^n 2tu ge x_2^2 tu ge 0 ","category":"page"},{"location":"tutorials/conic/tips_and_tricks/","page":"Modeling with cones","title":"Modeling with cones","text":"When u = 0.5, it represents the sum of squares of a vector x:","category":"page"},{"location":"tutorials/conic/tips_and_tricks/","page":"Modeling with cones","title":"Modeling with cones","text":"data = [1.0, 2.0, 3.0, 4.0]\ntarget = [0.45, 1.04, 1.51, 1.97]\nmodel = Model(SCS.Optimizer)\nset_silent(model)\n@variable(model, θ)\n@variable(model, t)\n@expression(model, residuals, θ * data .- target)\n@constraint(model, [t; 0.5; residuals] in RotatedSecondOrderCone())\n@objective(model, Min, t)\noptimize!(model)\n@assert is_solved_and_feasible(model)\nvalue(θ), value(t)","category":"page"},{"location":"tutorials/conic/tips_and_tricks/#Exponential-Cone","page":"Modeling with cones","title":"Exponential Cone","text":"","category":"section"},{"location":"tutorials/conic/tips_and_tricks/","page":"Modeling with cones","title":"Modeling with cones","text":"The MOI.ExponentialCone is a set of the form:","category":"page"},{"location":"tutorials/conic/tips_and_tricks/","page":"Modeling with cones","title":"Modeling with cones","text":"K_exp = (xyz) in mathbbR^3 y exp (xy) le z y 0 ","category":"page"},{"location":"tutorials/conic/tips_and_tricks/","page":"Modeling with cones","title":"Modeling with cones","text":"It can be used to model problems involving log and exp.","category":"page"},{"location":"tutorials/conic/tips_and_tricks/#Exponential","page":"Modeling with cones","title":"Exponential","text":"","category":"section"},{"location":"tutorials/conic/tips_and_tricks/","page":"Modeling with cones","title":"Modeling with cones","text":"To model exp(x) le z, use (x, 1, z):","category":"page"},{"location":"tutorials/conic/tips_and_tricks/","page":"Modeling with cones","title":"Modeling with cones","text":"model = Model(SCS.Optimizer)\nset_silent(model)\n@variable(model, x == 1.5)\n@variable(model, z)\n@objective(model, Min, z)\n@constraint(model, [x, 1, z] in MOI.ExponentialCone())\noptimize!(model)\n@assert is_solved_and_feasible(model)\nvalue(z), exp(1.5)","category":"page"},{"location":"tutorials/conic/tips_and_tricks/#Logarithm","page":"Modeling with cones","title":"Logarithm","text":"","category":"section"},{"location":"tutorials/conic/tips_and_tricks/","page":"Modeling with cones","title":"Modeling with cones","text":"To model x le log(z), use (x, 1, z):","category":"page"},{"location":"tutorials/conic/tips_and_tricks/","page":"Modeling with cones","title":"Modeling with cones","text":"model = Model(SCS.Optimizer)\nset_silent(model)\n@variable(model, x)\n@variable(model, z == 1.5)\n@objective(model, Max, x)\n@constraint(model, [x, 1, z] in MOI.ExponentialCone())\noptimize!(model)\n@assert is_solved_and_feasible(model)\nvalue(x), log(1.5)","category":"page"},{"location":"tutorials/conic/tips_and_tricks/#Log-sum-exp","page":"Modeling with cones","title":"Log-sum-exp","text":"","category":"section"},{"location":"tutorials/conic/tips_and_tricks/","page":"Modeling with cones","title":"Modeling with cones","text":"To model t ge logleft(sum e^x_iright), use:","category":"page"},{"location":"tutorials/conic/tips_and_tricks/","page":"Modeling with cones","title":"Modeling with cones","text":"N = 3\nx0 = rand(N)\nmodel = Model(SCS.Optimizer)\nset_silent(model)\n@variable(model, x[i = 1:N] == x0[i])\n@variable(model, t)\n@objective(model, Min, t)\n@variable(model, u[1:N])\n@constraint(model, sum(u) <= 1)\n@constraint(model, [i = 1:N], [x[i] - t, 1, u[i]] in MOI.ExponentialCone())\noptimize!(model)\nvalue(t), log(sum(exp.(x0)))","category":"page"},{"location":"tutorials/conic/tips_and_tricks/#Entropy","page":"Modeling with cones","title":"Entropy","text":"","category":"section"},{"location":"tutorials/conic/tips_and_tricks/","page":"Modeling with cones","title":"Modeling with cones","text":"The entropy maximization problem consists of maximizing the entropy function, H(x) = -xlogx subject to linear inequality constraints.","category":"page"},{"location":"tutorials/conic/tips_and_tricks/","page":"Modeling with cones","title":"Modeling with cones","text":"beginaligned\n max - sum_i=1^n x_i log x_i \n textst mathbf1^top x = 1 \n Ax leq b\nendaligned","category":"page"},{"location":"tutorials/conic/tips_and_tricks/","page":"Modeling with cones","title":"Modeling with cones","text":"We can model this problem using an exponential cone by using the following transformation:","category":"page"},{"location":"tutorials/conic/tips_and_tricks/","page":"Modeling with cones","title":"Modeling with cones","text":"tleq -xlogx iff tleq xlog(1x) iff (t x 1) in K_exp","category":"page"},{"location":"tutorials/conic/tips_and_tricks/","page":"Modeling with cones","title":"Modeling with cones","text":"Thus, our problem becomes,","category":"page"},{"location":"tutorials/conic/tips_and_tricks/","page":"Modeling with cones","title":"Modeling with cones","text":"beginaligned\n max 1^Tt \n textst Ax leq b \n 1^T x = 1 \n (t_i x_i 1) in K_exp forall i = 1 ldots n \nendaligned","category":"page"},{"location":"tutorials/conic/tips_and_tricks/","page":"Modeling with cones","title":"Modeling with cones","text":"m, n = 10, 15\nA, b = randn(m, n), rand(m, 1)\nmodel = Model(SCS.Optimizer)\nset_silent(model)\n@variable(model, t[1:n])\n@variable(model, x[1:n])\n@objective(model, Max, sum(t))\n@constraint(model, sum(x) == 1)\n@constraint(model, A * x .<= b)\n@constraint(model, [i = 1:n], [t[i], x[i], 1] in MOI.ExponentialCone())\noptimize!(model)\n@assert is_solved_and_feasible(model)\nobjective_value(model)","category":"page"},{"location":"tutorials/conic/tips_and_tricks/","page":"Modeling with cones","title":"Modeling with cones","text":"The MOI.ExponentialCone has a dual, the MOI.DualExponentialCone, that offers an alternative formulation that can be more efficient for some formulations.","category":"page"},{"location":"tutorials/conic/tips_and_tricks/","page":"Modeling with cones","title":"Modeling with cones","text":"There is also the MOI.RelativeEntropyCone for explicitly encoding the relative entropy function","category":"page"},{"location":"tutorials/conic/tips_and_tricks/","page":"Modeling with cones","title":"Modeling with cones","text":"model = Model(SCS.Optimizer)\nset_silent(model)\n@variable(model, t)\n@variable(model, x[1:n])\n@objective(model, Max, -t)\n@constraint(model, sum(x) == 1)\n@constraint(model, A * x .<= b)\n@constraint(model, [t; ones(n); x] in MOI.RelativeEntropyCone(2n + 1))\noptimize!(model)\n@assert is_solved_and_feasible(model)\nobjective_value(model)","category":"page"},{"location":"tutorials/conic/tips_and_tricks/#PowerCone","page":"Modeling with cones","title":"PowerCone","text":"","category":"section"},{"location":"tutorials/conic/tips_and_tricks/","page":"Modeling with cones","title":"Modeling with cones","text":"The MOI.PowerCone is a three-dimensional set parameterized by a scalar value α. It has the form:","category":"page"},{"location":"tutorials/conic/tips_and_tricks/","page":"Modeling with cones","title":"Modeling with cones","text":"K_p = (xyz) in mathbbR^3 x^alpha y^1-alpha ge z x ge 0 y ge 0 ","category":"page"},{"location":"tutorials/conic/tips_and_tricks/","page":"Modeling with cones","title":"Modeling with cones","text":"The power cone permits a number of reformulations. For example, when p 1, we can model t ge x^p using the power cone (t 1 x) with alpha = 1 p. Thus, to model t ge x^3 with x ge 0","category":"page"},{"location":"tutorials/conic/tips_and_tricks/","page":"Modeling with cones","title":"Modeling with cones","text":"model = Model(SCS.Optimizer)\nset_silent(model)\n@variable(model, t)\n@variable(model, x >= 1.5)\n@constraint(model, [t, 1, x] in MOI.PowerCone(1 / 3))\n@objective(model, Min, t)\noptimize!(model)\n@assert is_solved_and_feasible(model)\nvalue(t), value(x)","category":"page"},{"location":"tutorials/conic/tips_and_tricks/","page":"Modeling with cones","title":"Modeling with cones","text":"The MOI.PowerCone has a dual, the MOI.DualPowerCone, that offers an alternative formulation that can be more efficient for some formulations.","category":"page"},{"location":"tutorials/conic/tips_and_tricks/#P-Norm","page":"Modeling with cones","title":"P-Norm","text":"","category":"section"},{"location":"tutorials/conic/tips_and_tricks/","page":"Modeling with cones","title":"Modeling with cones","text":"The p-norm x_p = left(sumlimits_i x_i^pright)^frac1p can be modeled using MOI.PowerCones. See the Mosek Modeling Cookbook for the derivation.","category":"page"},{"location":"tutorials/conic/tips_and_tricks/","page":"Modeling with cones","title":"Modeling with cones","text":"function p_norm(x::Vector, p)\n N = length(x)\n model = Model(SCS.Optimizer)\n set_silent(model)\n @variable(model, r[1:N])\n @variable(model, t)\n @constraint(model, [i = 1:N], [r[i], t, x[i]] in MOI.PowerCone(1 / p))\n @constraint(model, sum(r) == t)\n @objective(model, Min, t)\n optimize!(model)\n @assert is_solved_and_feasible(model)\n return value(t)\nend\n\nx = rand(5);\nLinearAlgebra.norm(x, 4), p_norm(x, 4)","category":"page"},{"location":"tutorials/conic/tips_and_tricks/#Positive-Semidefinite-Cone","page":"Modeling with cones","title":"Positive Semidefinite Cone","text":"","category":"section"},{"location":"tutorials/conic/tips_and_tricks/","page":"Modeling with cones","title":"Modeling with cones","text":"The set of positive semidefinite matrices (PSD) of dimension n form a cone in mathbbR^n. We write this set mathematically as:","category":"page"},{"location":"tutorials/conic/tips_and_tricks/","page":"Modeling with cones","title":"Modeling with cones","text":"mathcalS_+^n = X in mathcalS^n mid z^T X z geq 0 forall zin mathbbR^n ","category":"page"},{"location":"tutorials/conic/tips_and_tricks/","page":"Modeling with cones","title":"Modeling with cones","text":"A PSD cone is represented in JuMP using the MOI sets PositiveSemidefiniteConeTriangle (for upper triangle of a PSD matrix) and PositiveSemidefiniteConeSquare (for a complete PSD matrix). However, it is preferable to use the PSDCone shortcut as illustrated below.","category":"page"},{"location":"tutorials/conic/tips_and_tricks/#Example:-largest-eigenvalue-of-a-symmetric-matrix","page":"Modeling with cones","title":"Example: largest eigenvalue of a symmetric matrix","text":"","category":"section"},{"location":"tutorials/conic/tips_and_tricks/","page":"Modeling with cones","title":"Modeling with cones","text":"Suppose A has eigenvalues lambda_1 geq lambda_2 ldots geq lambda_n. Then the matrix t I-A has eigenvalues t-lambda_1 t-lambda_2 ldots t-lambda_n. Note that t I-A is PSD exactly when all these eigenvalues are non-negative, and this happens for values t geq lambda_1. Thus, we can model the problem of finding the largest eigenvalue of a symmetric matrix as:","category":"page"},{"location":"tutorials/conic/tips_and_tricks/","page":"Modeling with cones","title":"Modeling with cones","text":"beginaligned\nlambda_1 = min t \ntext st t I-A succeq 0\nendaligned","category":"page"},{"location":"tutorials/conic/tips_and_tricks/","page":"Modeling with cones","title":"Modeling with cones","text":"A = [3 2 4; 2 0 2; 4 2 3]\nI = Matrix{Float64}(LinearAlgebra.I, 3, 3)\nmodel = Model(SCS.Optimizer)\nset_silent(model)\n@variable(model, t)\n@objective(model, Min, t)\n@constraint(model, t .* I - A in PSDCone())\noptimize!(model)\n@assert is_solved_and_feasible(model)\nobjective_value(model)","category":"page"},{"location":"tutorials/conic/tips_and_tricks/#GeometricMeanCone","page":"Modeling with cones","title":"GeometricMeanCone","text":"","category":"section"},{"location":"tutorials/conic/tips_and_tricks/","page":"Modeling with cones","title":"Modeling with cones","text":"The MOI.GeometricMeanCone is a cone of the form:","category":"page"},{"location":"tutorials/conic/tips_and_tricks/","page":"Modeling with cones","title":"Modeling with cones","text":"K_geo = (t x) in mathbbR^n x ge 0 t le sqrtn-1x_1 x_2 cdots x_n-1 ","category":"page"},{"location":"tutorials/conic/tips_and_tricks/","page":"Modeling with cones","title":"Modeling with cones","text":"model = Model(SCS.Optimizer)\nset_silent(model)\n@variable(model, x[1:4])\n@variable(model, t)\n@constraint(model, sum(x) == 1)\n@constraint(model, [t; x] in MOI.GeometricMeanCone(5))\noptimize!(model)\nvalue(t), value.(x)","category":"page"},{"location":"tutorials/conic/tips_and_tricks/#RootDetCone","page":"Modeling with cones","title":"RootDetCone","text":"","category":"section"},{"location":"tutorials/conic/tips_and_tricks/","page":"Modeling with cones","title":"Modeling with cones","text":"The MOI.RootDetConeSquare is a cone of the form:","category":"page"},{"location":"tutorials/conic/tips_and_tricks/","page":"Modeling with cones","title":"Modeling with cones","text":"K = (t X) in mathbbR^1+d^2 t le det(X)^frac1d ","category":"page"},{"location":"tutorials/conic/tips_and_tricks/","page":"Modeling with cones","title":"Modeling with cones","text":"model = Model(SCS.Optimizer)\nset_silent(model)\n@variable(model, t)\n@variable(model, X[1:2, 1:2])\n@objective(model, Max, t)\n@constraint(model, [t; vec(X)] in MOI.RootDetConeSquare(2))\n@constraint(model, X .== [2 1; 1 3])\noptimize!(model)\n@assert is_solved_and_feasible(model)\nvalue(t), sqrt(LinearAlgebra.det(value.(X)))","category":"page"},{"location":"tutorials/conic/tips_and_tricks/","page":"Modeling with cones","title":"Modeling with cones","text":"If X is symmetric, then you can use MOI.RootDetConeTriangle instead. This can be more efficient because the solver does not need to add additional constraints to ensure X is symmetric.","category":"page"},{"location":"tutorials/conic/tips_and_tricks/","page":"Modeling with cones","title":"Modeling with cones","text":"When forming the function, use triangle_vec to obtain the column-wise upper triangle of the matrix as a vector in the order that JuMP requires.","category":"page"},{"location":"tutorials/conic/tips_and_tricks/","page":"Modeling with cones","title":"Modeling with cones","text":"model = Model(SCS.Optimizer)\nset_silent(model)\n@variable(model, t)\n@variable(model, X[1:2, 1:2], Symmetric)\n@objective(model, Max, t)\n@constraint(model, [t; triangle_vec(X)] in MOI.RootDetConeTriangle(2))\n@constraint(model, X .== [2 1; 1 3])\noptimize!(model)\nvalue(t), sqrt(LinearAlgebra.det(value.(X)))","category":"page"},{"location":"tutorials/conic/tips_and_tricks/#LogDetCone","page":"Modeling with cones","title":"LogDetCone","text":"","category":"section"},{"location":"tutorials/conic/tips_and_tricks/","page":"Modeling with cones","title":"Modeling with cones","text":"The MOI.LogDetConeSquare is a cone of the form:","category":"page"},{"location":"tutorials/conic/tips_and_tricks/","page":"Modeling with cones","title":"Modeling with cones","text":"K = (t u X) in mathbbR^2+d^2 t le u log(det(X u)) ","category":"page"},{"location":"tutorials/conic/tips_and_tricks/","page":"Modeling with cones","title":"Modeling with cones","text":"model = Model(SCS.Optimizer)\nset_silent(model)\n@variable(model, t)\n@variable(model, u)\n@variable(model, X[1:2, 1:2])\n@objective(model, Max, t)\n@constraint(model, [t; u; vec(X)] in MOI.LogDetConeSquare(2))\n@constraint(model, X .== [2 1; 1 3])\n@constraint(model, u == 0.5)\noptimize!(model)\n@assert is_solved_and_feasible(model)\nvalue(t), 0.5 * log(LinearAlgebra.det(value.(X) ./ 0.5))","category":"page"},{"location":"tutorials/conic/tips_and_tricks/","page":"Modeling with cones","title":"Modeling with cones","text":"If X is symmetric, then you can use MOI.LogDetConeTriangle instead. This can be more efficient because the solver does not need to add additional constraints to ensure X is symmetric.","category":"page"},{"location":"tutorials/conic/tips_and_tricks/","page":"Modeling with cones","title":"Modeling with cones","text":"When forming the function, use triangle_vec to obtain the column-wise upper triangle of the matrix as a vector in the order that JuMP requires.","category":"page"},{"location":"tutorials/conic/tips_and_tricks/","page":"Modeling with cones","title":"Modeling with cones","text":"model = Model(SCS.Optimizer)\nset_silent(model)\n@variable(model, t)\n@variable(model, u)\n@variable(model, X[1:2, 1:2], Symmetric)\n@objective(model, Max, t)\n@constraint(model, [t; u; triangle_vec(X)] in MOI.LogDetConeTriangle(2))\n@constraint(model, X .== [2 1; 1 3])\n@constraint(model, u == 0.5)\noptimize!(model)\n@assert is_solved_and_feasible(model)\nvalue(t), 0.5 * log(LinearAlgebra.det(value.(X) ./ 0.5))","category":"page"},{"location":"tutorials/conic/tips_and_tricks/#Other-Cones-and-Functions","page":"Modeling with cones","title":"Other Cones and Functions","text":"","category":"section"},{"location":"tutorials/conic/tips_and_tricks/","page":"Modeling with cones","title":"Modeling with cones","text":"For other cones supported by JuMP, check out the MathOptInterface Manual.","category":"page"},{"location":"packages/BARON/","page":"jump-dev/BARON.jl","title":"jump-dev/BARON.jl","text":"EditURL = \"https://github.com/jump-dev/BARON.jl/blob/v0.8.5/README.md\"","category":"page"},{"location":"packages/BARON/#BARON.jl","page":"jump-dev/BARON.jl","title":"BARON.jl","text":"","category":"section"},{"location":"packages/BARON/","page":"jump-dev/BARON.jl","title":"jump-dev/BARON.jl","text":"(Image: Build Status) (Image: codecov)","category":"page"},{"location":"packages/BARON/","page":"jump-dev/BARON.jl","title":"jump-dev/BARON.jl","text":"BARON.jl is a wrapper for BARON by The Optimization Firm.","category":"page"},{"location":"packages/BARON/#Affiliation","page":"jump-dev/BARON.jl","title":"Affiliation","text":"","category":"section"},{"location":"packages/BARON/","page":"jump-dev/BARON.jl","title":"jump-dev/BARON.jl","text":"This wrapper is maintained by the JuMP community and is not officially supported by The Optimization Firm.","category":"page"},{"location":"packages/BARON/#Getting-help","page":"jump-dev/BARON.jl","title":"Getting help","text":"","category":"section"},{"location":"packages/BARON/","page":"jump-dev/BARON.jl","title":"jump-dev/BARON.jl","text":"If you need help, please ask a question on the JuMP community forum.","category":"page"},{"location":"packages/BARON/","page":"jump-dev/BARON.jl","title":"jump-dev/BARON.jl","text":"If you have a reproducible example of a bug, please open a GitHub issue.","category":"page"},{"location":"packages/BARON/#License","page":"jump-dev/BARON.jl","title":"License","text":"","category":"section"},{"location":"packages/BARON/","page":"jump-dev/BARON.jl","title":"jump-dev/BARON.jl","text":"BARON.jl is licensed under the MIT License.","category":"page"},{"location":"packages/BARON/","page":"jump-dev/BARON.jl","title":"jump-dev/BARON.jl","text":"The underlying solver is a closed-source commercial product for which you must obtain a license from The Optimization Firm, although a small trial version is available for free.","category":"page"},{"location":"packages/BARON/#Installation","page":"jump-dev/BARON.jl","title":"Installation","text":"","category":"section"},{"location":"packages/BARON/","page":"jump-dev/BARON.jl","title":"jump-dev/BARON.jl","text":"First, download a copy of the BARON solver and unpack the executable in a location of your choosing.","category":"page"},{"location":"packages/BARON/","page":"jump-dev/BARON.jl","title":"jump-dev/BARON.jl","text":"Once installed, set the BARON_EXEC environment variable pointing to the BARON executable (full path, including file name as it differs across platforms), and run Pkg.add(\"BARON\"). For example:","category":"page"},{"location":"packages/BARON/","page":"jump-dev/BARON.jl","title":"jump-dev/BARON.jl","text":"ENV[\"BARON_EXEC\"] = \"/path/to/baron.exe\"\nusing Pkg\nPkg.add(\"BARON\")","category":"page"},{"location":"packages/BARON/","page":"jump-dev/BARON.jl","title":"jump-dev/BARON.jl","text":"The baronlice.txt license file should be placed in the same directory as the BARON executable, or in your current working directory.","category":"page"},{"location":"packages/BARON/#Use-with-JuMP","page":"jump-dev/BARON.jl","title":"Use with JuMP","text":"","category":"section"},{"location":"packages/BARON/","page":"jump-dev/BARON.jl","title":"jump-dev/BARON.jl","text":"using JuMP, BARON\nmodel = Model(BARON.Optimizer)","category":"page"},{"location":"packages/BARON/#MathOptInterface-API","page":"jump-dev/BARON.jl","title":"MathOptInterface API","text":"","category":"section"},{"location":"packages/BARON/","page":"jump-dev/BARON.jl","title":"jump-dev/BARON.jl","text":"The BARON optimizer supports the following constraints and attributes.","category":"page"},{"location":"packages/BARON/","page":"jump-dev/BARON.jl","title":"jump-dev/BARON.jl","text":"List of supported objective functions:","category":"page"},{"location":"packages/BARON/","page":"jump-dev/BARON.jl","title":"jump-dev/BARON.jl","text":"MOI.ObjectiveFunction{MOI.ScalarAffineFunction{Float64}}\nMOI.ObjectiveFunction{MOI.ScalarQuadraticFunction{Float64}}\nMOI.ObjectiveFunction{MOI.ScalarNonlinearFunction}","category":"page"},{"location":"packages/BARON/","page":"jump-dev/BARON.jl","title":"jump-dev/BARON.jl","text":"List of supported variable types:","category":"page"},{"location":"packages/BARON/","page":"jump-dev/BARON.jl","title":"jump-dev/BARON.jl","text":"MOI.Reals","category":"page"},{"location":"packages/BARON/","page":"jump-dev/BARON.jl","title":"jump-dev/BARON.jl","text":"List of supported constraint types:","category":"page"},{"location":"packages/BARON/","page":"jump-dev/BARON.jl","title":"jump-dev/BARON.jl","text":"MOI.ScalarAffineFunction{Float64} in MOI.EqualTo{Float64}\nMOI.ScalarAffineFunction{Float64} in MOI.GreaterThan{Float64}\nMOI.ScalarAffineFunction{Float64} in MOI.Interval{Float64}\nMOI.ScalarAffineFunction{Float64} in MOI.LessThan{Float64}\nMOI.ScalarQuadraticFunction{Float64} in MOI.EqualTo{Float64}\nMOI.ScalarQuadraticFunction{Float64} in MOI.GreaterThan{Float64}\nMOI.ScalarQuadraticFunction{Float64} in MOI.Interval{Float64}\nMOI.ScalarQuadraticFunction{Float64} in MOI.LessThan{Float64}\nMOI.ScalarNonlinearFunction in MOI.EqualTo{Float64}\nMOI.ScalarNonlinearFunction in MOI.GreaterThan{Float64}\nMOI.ScalarNonlinearFunction in MOI.Interval{Float64}\nMOI.ScalarNonlinearFunction in MOI.LessThan{Float64}\nMOI.VariableIndex in MOI.EqualTo{Float64}\nMOI.VariableIndex in MOI.GreaterThan{Float64}\nMOI.VariableIndex in MOI.Integer\nMOI.VariableIndex in MOI.Interval{Float64}\nMOI.VariableIndex in MOI.LessThan{Float64}\nMOI.VariableIndex in MOI.ZeroOne","category":"page"},{"location":"packages/BARON/","page":"jump-dev/BARON.jl","title":"jump-dev/BARON.jl","text":"List of supported model attributes:","category":"page"},{"location":"packages/BARON/","page":"jump-dev/BARON.jl","title":"jump-dev/BARON.jl","text":"MOI.NLPBlock()\nMOI.ObjectiveSense()","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"EditURL = \"getting_started_with_julia.jl\"","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/#Getting-started-with-Julia","page":"Getting started with Julia","title":"Getting started with Julia","text":"","category":"section"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"This tutorial was generated using Literate.jl. Download the source as a .jl file.","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"Because JuMP is embedded in Julia, knowing some basic Julia is important before you start learning JuMP.","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"tip: Tip\nThis tutorial is designed to provide a minimalist crash course in the basics of Julia. You can find resources that provide a more comprehensive introduction to Julia here.","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/#Installing-Julia","page":"Getting started with Julia","title":"Installing Julia","text":"","category":"section"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"To install Julia, download the latest stable release, then follow the platform specific install instructions.","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"tip: Tip\nUnless you know otherwise, you probably want the 64-bit version.","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"Next, you need an IDE to develop in. VS Code is a popular choice, so follow these install instructions.","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"Julia can also be used with Jupyter notebooks or the reactive notebooks of Pluto.jl.","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/#The-Julia-REPL","page":"Getting started with Julia","title":"The Julia REPL","text":"","category":"section"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"The main way of interacting with Julia is via its REPL (Read Evaluate Print Loop). To access the REPL, start the Julia executable to arrive at the julia> prompt, and then start coding:","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"1 + 1","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"As your programs become larger, write a script as a text file, and then run that file using:","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"julia> include(\"path/to/file.jl\")","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"warning: Warning\nBecause of Julia's startup latency, running scripts from the command line like the following is slow:$ julia path/to/file.jlUse the REPL or a notebook instead, and read The \"time-to-first-solve\" issue for more information.","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/#Code-blocks-in-this-documentation","page":"Getting started with Julia","title":"Code blocks in this documentation","text":"","category":"section"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"In this documentation you'll see a mix of code examples with and without the julia>.","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"The Julia prompt is mostly used to demonstrate short code snippets, and the output is exactly what you will see if run from the REPL.","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"Blocks without the julia> can be copy-pasted into the REPL, but they are used because they enable richer output like plots or LaTeX to be displayed in the online and PDF versions of the documentation. If you run them from the REPL you may see different output.","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/#Where-to-get-help","page":"Getting started with Julia","title":"Where to get help","text":"","category":"section"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"Read the documentation\nJuMP https://jump.dev/JuMP.jl/stable/\nJulia https://docs.julialang.org/en/v1/\nAsk (or browse) the Julia community forum: https://discourse.julialang.org\nIf the question is JuMP-related, ask in the Optimization (Mathematical) section, or tag your question with \"jump\"","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"To access the built-in help at the REPL, type ? to enter help-mode, followed by the name of the function to lookup:","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"help?> print\nsearch: print println printstyled sprint isprint prevind parentindices precision escape_string\n\n print([io::IO], xs...)\n\n Write to io (or to the default output stream stdout if io is not given) a canonical\n (un-decorated) text representation. The representation used by print includes minimal formatting\n and tries to avoid Julia-specific details.\n\n print falls back to calling show, so most types should just define show. Define print if your\n type has a separate \"plain\" representation. For example, show displays strings with quotes, and\n print displays strings without quotes.\n\n string returns the output of print as a string.\n\n Examples\n ≡≡≡≡≡≡≡≡≡≡\n\n julia> print(\"Hello World!\")\n Hello World!\n julia> io = IOBuffer();\n\n julia> print(io, \"Hello\", ' ', :World!)\n\n julia> String(take!(io))\n \"Hello World!\"","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/#Numbers-and-arithmetic","page":"Getting started with Julia","title":"Numbers and arithmetic","text":"","category":"section"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"Since we want to solve optimization problems, we're going to be using a lot of math. Luckily, Julia is great for math, with all the usual operators:","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"1 + 1\n1 - 2\n2 * 2\n4 / 5\n3^2","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"Did you notice how Julia didn't print .0 after some of the numbers? Julia is a dynamic language, which means you never have to explicitly declare the type of a variable. However, in the background, Julia is giving each variable a type. Check the type of something using the typeof function:","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"typeof(1)\ntypeof(1.0)","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"Here 1 is an Int64, which is an integer with 64 bits of precision, and 1.0 is a Float64, which is a floating point number with 64-bits of precision.","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"tip: Tip\nIf you aren't familiar with floating point numbers, make sure to read the Floating point numbers section.","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"We create complex numbers using im:","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"x = 2 + 1im\nreal(x)\nimag(x)\ntypeof(x)\nx * (1 - 2im)","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"info: Info\nThe curly brackets surround what we call the parameters of a type. You can read Complex{Int64} as \"a complex number, where the real and imaginary parts are represented by Int64.\" If we call typeof(1.0 + 2.0im) it will be Complex{Float64}, which a complex number with the parts represented by Float64.","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"There are also some cool things like an irrational representation of π.","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"π","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"tip: Tip\nTo make π (and most other Greek letters), type \\pi and then press [TAB].","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"typeof(π)","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"However, if we do math with irrational numbers, they get converted to Float64:","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"typeof(2π / 3)","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/#Floating-point-numbers","page":"Getting started with Julia","title":"Floating point numbers","text":"","category":"section"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"warning: Warning\nIf you aren't familiar with floating point numbers, make sure to read this section carefully.","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"A Float64 is a floating point approximation of a real number using 64-bits of information.","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"Because it is an approximation, things we know hold true in mathematics don't hold true in a computer. For example:","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"0.1 * 3 == 0.3","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"A more complicated example is:","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"sin(2π / 3) == √3 / 2","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"tip: Tip\nGet √ by typing \\sqrt then press [TAB].","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"Let's see what the differences are:","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"0.1 * 3 - 0.3\nsin(2π / 3) - √3 / 2","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"They are small, but not zero.","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"One way of explaining this difference is to consider how we would write 1 / 3 and 2 / 3 using only four digits after the decimal point. We would write 1 / 3 as 0.3333, and 2 / 3 as 0.6667. So, despite the fact that 2 * (1 / 3) == 2 / 3, 2 * 0.3333 == 0.6666 != 0.6667.","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"Let's try that again using ≈ (\\approx + [TAB]) instead of ==:","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"0.1 * 3 ≈ 0.3\nsin(2π / 3) ≈ √3 / 2","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"≈ is a clever way of calling the isapprox function:","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"isapprox(sin(2π / 3), √3 / 2; atol = 1e-8)","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"warning: Warning\nFloating point is the reason solvers use tolerances when they solve optimization models. A common mistake you're likely to make is checking whether a binary variable is 0 using value(z) == 0. Always remember to use something like isapprox when comparing floating point numbers.","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"Note that isapprox will always return false if one of the number being compared is 0 and atol is zero (its default value).","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"1e-300 ≈ 0.0","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"so always set a nonzero value of atol if one of the arguments can be zero.","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"isapprox(1e-9, 0.0; atol = 1e-8)","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"tip: Tip\nGurobi has a good series of articles on the implications of floating point in optimization if you want to read more.","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"If you aren't careful, floating point arithmetic can throw up all manner of issues. For example:","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"1 + 1e-16 == 1","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"It even turns out that floating point numbers aren't associative:","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"(1 + 1e-16) - 1e-16 == 1 + (1e-16 - 1e-16)","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"It's important to note that this issue isn't Julia-specific. It happens in every programming language (try it out in Python).","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/#Vectors,-matrices,-and-arrays","page":"Getting started with Julia","title":"Vectors, matrices, and arrays","text":"","category":"section"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"Similar to MATLAB, Julia has native support for vectors, matrices and tensors; all of which are represented by arrays of different dimensions. Vectors are constructed by comma-separated elements surrounded by square brackets:","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"b = [5, 6]","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"Matrices can be constructed with spaces separating the columns, and semicolons separating the rows:","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"A = [1.0 2.0; 3.0 4.0]","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"We can do linear algebra:","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"x = A \\ b","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"info: Info\nHere is floating point at work again; x is approximately [-4, 4.5].","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"A * x\nA * x ≈ b","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"Note that when multiplying vectors and matrices, dimensions matter. For example, you can't multiply a vector by a vector:","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"try #hide\n b * b\ncatch err #hide\n showerror(stderr, err) #hide\nend #hide","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"But multiplying transposes works:","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"b' * b\nb * b'","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/#Other-common-types","page":"Getting started with Julia","title":"Other common types","text":"","category":"section"},{"location":"tutorials/getting_started/getting_started_with_julia/#Comments","page":"Getting started with Julia","title":"Comments","text":"","category":"section"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"Although not technically a type, code comments begin with the # character:","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"1 + 1 # This is a comment","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"Multiline comments begin with #= and end with =#:","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"#=\nHere is a\nmultiline comment\n=#","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"Comments can even be nested inside expressions. This is sometimes helpful when documenting inputs to functions:","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"isapprox(\n sin(π),\n 0.0;\n #= We need an explicit atol here because we are comparing with 0 =#\n atol = 0.001,\n)","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/#Strings","page":"Getting started with Julia","title":"Strings","text":"","category":"section"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"Double quotes are used for strings:","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"typeof(\"This is Julia\")","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"Unicode is fine in strings:","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"typeof(\"π is about 3.1415\")","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"Use println to print a string:","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"println(\"Hello, World!\")","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"Use $() to interpolate values into a string:","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"x = 123\nprintln(\"The value of x is: $(x)\")","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"Use triple-quotes for multiline strings:","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"s = \"\"\"\nHere is\na\nmultiline string\n\"\"\"\n\nprintln(s)","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/#Symbols","page":"Getting started with Julia","title":"Symbols","text":"","category":"section"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"Julia Symbols are a data structure from the compiler that represent Julia identifiers (that is, variable names).","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"println(\"The value of x is: $(eval(:x))\")","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"warning: Warning\nWe used eval here to demonstrate how Julia links Symbols to variables. However, avoid calling eval in your code. It is usually a sign that your code is doing something that could be more easily achieved a different way. The Community Forum is a good place to ask for advice on alternative approaches.","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"typeof(:x)","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"You can think of a Symbol as a String that takes up less memory, and that can't be modified.","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"Convert between String and Symbol using their constructors:","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"String(:abc)\nSymbol(\"abc\")","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"tip: Tip\nSymbols are often (ab)used to stand in for a String or an Enum, when one of the latter is likely a better choice. The JuMP Style guide recommends reserving Symbols for identifiers. See @enum vs. Symbol for more.","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/#Tuples","page":"Getting started with Julia","title":"Tuples","text":"","category":"section"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"Julia makes extensive use of a simple data structure called Tuples. Tuples are immutable collections of values. For example:","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"t = (\"hello\", 1.2, :foo)\ntypeof(t)","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"Tuples can be accessed by index, similar to arrays:","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"t[2]","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"And they can be \"unpacked\" like so:","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"a, b, c = t\nb","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"The values can also be given names, which is a convenient way of making light-weight data structures.","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"t = (word = \"hello\", num = 1.2, sym = :foo)","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"Values can be accessed using dot syntax:","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"t.word","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/#Dictionaries","page":"Getting started with Julia","title":"Dictionaries","text":"","category":"section"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"Similar to Python, Julia has native support for dictionaries. Dictionaries provide a very generic way of mapping keys to values. For example, a map of integers to strings:","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"d1 = Dict(1 => \"A\", 2 => \"B\", 4 => \"D\")","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"info: Info\nType-stuff again: Dict{Int64,String} is a dictionary with Int64 keys and String values.","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"Looking up a value uses the bracket syntax:","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"d1[2]","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"Dictionaries support non-integer keys and can mix data types:","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"Dict(\"A\" => 1, \"B\" => 2.5, \"D\" => 2 - 3im)","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"info: Info\nJulia types form a hierarchy. Here the value type of the dictionary is Number, which is a generalization of Int64, Float64, and Complex{Int}. Leaf nodes in this hierarchy are called \"concrete\" types, and all others are called \"Abstract.\" In general, having variables with abstract types like Number can lead to slower code, so you should try to make sure every element in a dictionary or vector is the same type. For example, in this case we could represent every element as a Complex{Float64}:","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"Dict(\"A\" => 1.0 + 0.0im, \"B\" => 2.5 + 0.0im, \"D\" => 2.0 - 3.0im)","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"Dictionaries can be nested:","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"d2 = Dict(\"A\" => 1, \"B\" => 2, \"D\" => Dict(:foo => 3, :bar => 4))\nd2[\"B\"]\nd2[\"D\"][:foo]","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/#Structs","page":"Getting started with Julia","title":"Structs","text":"","category":"section"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"You can define custom datastructures with struct:","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"struct MyStruct\n x::Int\n y::String\n z::Dict{Int,Int}\nend\n\na = MyStruct(1, \"a\", Dict(2 => 3))\na.x","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"By default, these are not mutable","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"try #hide\n a.x = 2\ncatch err #hide\n showerror(stderr, err) #hide\nend #hide","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"However, you can declare a mutable struct which is mutable:","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"mutable struct MyStructMutable\n x::Int\n y::String\n z::Dict{Int,Int}\nend\n\na = MyStructMutable(1, \"a\", Dict(2 => 3))\na.x\na.x = 2\na","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/#Loops","page":"Getting started with Julia","title":"Loops","text":"","category":"section"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"Julia has native support for for-each style loops with the syntax for in end:","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"for i in 1:5\n println(i)\nend","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"info: Info\nRanges are constructed as start:stop, or start:step:stop.","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"for i in 1.2:1.1:5.6\n println(i)\nend","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"This for-each loop also works with dictionaries:","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"for (key, value) in Dict(\"A\" => 1, \"B\" => 2.5, \"D\" => 2 - 3im)\n println(\"$(key): $(value)\")\nend","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"Note that in contrast to vector languages like MATLAB and R, loops do not result in a significant performance degradation in Julia.","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/#Control-flow","page":"Getting started with Julia","title":"Control flow","text":"","category":"section"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"Julia control flow is similar to MATLAB, using the keywords if-elseif-else-end, and the logical operators || and && for or and and respectively:","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"for i in 0:5:15\n if i < 5\n println(\"$(i) is less than 5\")\n elseif i < 10\n println(\"$(i) is less than 10\")\n else\n if i == 10\n println(\"the value is 10\")\n else\n println(\"$(i) is bigger than 10\")\n end\n end\nend","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/#Comprehensions","page":"Getting started with Julia","title":"Comprehensions","text":"","category":"section"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"Similar to languages like Haskell and Python, Julia supports the use of simple loops in the construction of arrays and dictionaries, called comprehensions.","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"A list of increasing integers:","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"[i for i in 1:5]","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"Matrices can be built by including multiple indices:","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"[i * j for i in 1:5, j in 5:10]","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"Conditional statements can be used to filter out some values:","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"[i for i in 1:10 if i % 2 == 1]","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"A similar syntax can be used for building dictionaries:","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"Dict(\"$(i)\" => i for i in 1:10 if i % 2 == 1)","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/#Functions","page":"Getting started with Julia","title":"Functions","text":"","category":"section"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"A simple function is defined as follows:","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"function print_hello()\n return println(\"hello\")\nend\nprint_hello()","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"Arguments can be added to a function:","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"function print_it(x)\n return println(x)\nend\nprint_it(\"hello\")\nprint_it(1.234)\nprint_it(:my_id)","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"Optional keyword arguments are also possible:","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"function print_it(x; prefix = \"value:\")\n return println(\"$(prefix) $(x)\")\nend\nprint_it(1.234)\nprint_it(1.234; prefix = \"val:\")","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"The keyword return is used to specify the return values of a function:","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"function mult(x; y = 2.0)\n return x * y\nend\n\nmult(4.0)\nmult(4.0; y = 5.0)","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/#Anonymous-functions","page":"Getting started with Julia","title":"Anonymous functions","text":"","category":"section"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"The syntax input -> output creates an anonymous function. These are most useful when passed to other functions. For example:","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"f = x -> x^2\nf(2)\nmap(x -> x^2, 1:4)","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/#Type-parameters","page":"Getting started with Julia","title":"Type parameters","text":"","category":"section"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"We can constrain the inputs to a function using type parameters, which are :: followed by the type of the input we want. For example:","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"function foo(x::Int)\n return x^2\nend\n\nfunction foo(x::Float64)\n return exp(x)\nend\n\nfunction foo(x::Number)\n return x + 1\nend\n\nfoo(2)\nfoo(2.0)\nfoo(1 + 1im)","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"But what happens if we call foo with something we haven't defined it for?","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"try #hide\n foo([1, 2, 3])\ncatch err #hide\n showerror(stderr, err) #hide\nend #hide","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"A MethodError means that you passed a function something that didn't match the type that it was expecting. In this case, the error message says that it doesn't know how to handle an Vector{Int64}, but it does know how to handle Float64, Int64, and Number.","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"tip: Tip\nRead the \"Closest candidates\" part of the error message carefully to get a hint as to what was expected.","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/#Broadcasting","page":"Getting started with Julia","title":"Broadcasting","text":"","category":"section"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"In the example above, we didn't define what to do if f was passed a Vector. Luckily, Julia provides a convenient syntax for mapping f element-wise over arrays. Just add a . between the name of the function and the opening (. This works for any function, including functions with multiple arguments. For example:","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"foo.([1, 2, 3])","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"tip: Tip\nGet a MethodError when calling a function that takes a Vector, Matrix, or Array? Try broadcasting.","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/#Mutable-vs-immutable-objects","page":"Getting started with Julia","title":"Mutable vs immutable objects","text":"","category":"section"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"Some types in Julia are mutable, which means you can change the values inside them. A good example is an array. You can modify the contents of an array without having to make a new array.","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"In contrast, types like Float64 are immutable. You cannot modify the contents of a Float64.","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"This is something to be aware of when passing types into functions. For example:","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"function mutability_example(mutable_type::Vector{Int}, immutable_type::Int)\n mutable_type[1] += 1\n immutable_type += 1\n return\nend\n\nmutable_type = [1, 2, 3]\nimmutable_type = 1\n\nmutability_example(mutable_type, immutable_type)\n\nprintln(\"mutable_type: $(mutable_type)\")\nprintln(\"immutable_type: $(immutable_type)\")","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"Because Vector{Int} is a mutable type, modifying the variable inside the function changed the value outside of the function. In contrast, the change to immutable_type didn't modify the value outside the function.","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"You can check mutability with the isimmutable function:","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"isimmutable([1, 2, 3])\nisimmutable(1)","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/#The-package-manager","page":"Getting started with Julia","title":"The package manager","text":"","category":"section"},{"location":"tutorials/getting_started/getting_started_with_julia/#Installing-packages","page":"Getting started with Julia","title":"Installing packages","text":"","category":"section"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"No matter how wonderful Julia's base language is, at some point you will want to use an extension package. Some of these are built-in, for example random number generation is available in the Random package in the standard library. These packages are loaded with the commands using and import.","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"using Random # The equivalent of Python's `from Random import *`\nimport Random # The equivalent of Python's `import Random`\n\nRandom.seed!(33)\n\n[rand() for i in 1:10]","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"The Package Manager is used to install packages that are not part of Julia's standard library.","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"For example the following can be used to install JuMP,","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"using Pkg\nPkg.add(\"JuMP\")","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"For a complete list of registered Julia packages see the package listing at JuliaHub.","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"From time to you may wish to use a Julia package that is not registered. In this case a git repository URL can be used to install the package.","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"using Pkg\nPkg.add(\"https://github.com/user-name/MyPackage.jl.git\")","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/#Package-environments","page":"Getting started with Julia","title":"Package environments","text":"","category":"section"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"By default, Pkg.add will add packages to Julia's global environment. However, Julia also has built-in support for virtual environments.","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"Activate a virtual environment with:","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"import Pkg; Pkg.activate(\"/path/to/environment\")","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"You can see what packages are installed in the current environment with Pkg.status().","category":"page"},{"location":"tutorials/getting_started/getting_started_with_julia/","page":"Getting started with Julia","title":"Getting started with Julia","text":"tip: Tip\nWe strongly recommend you create a Pkg environment for each project that you create in Julia, and add only the packages that you need, instead of adding lots of packages to the global environment. The Pkg manager documentation has more information on this topic.","category":"page"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"EditURL = \"tips_and_tricks.jl\"","category":"page"},{"location":"tutorials/linear/tips_and_tricks/#linear_tips_and_tricks","page":"Tips and tricks","title":"Tips and tricks","text":"","category":"section"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"This tutorial was generated using Literate.jl. Download the source as a .jl file.","category":"page"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"This tutorial was originally contributed by Arpit Bhatia.","category":"page"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"tip: Tip\nA good source of tips is the Mosek Modeling Cookbook.","category":"page"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"This tutorial collates some tips and tricks you can use when formulating mixed-integer programs. It uses the following packages:","category":"page"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"using JuMP","category":"page"},{"location":"tutorials/linear/tips_and_tricks/#Absolute-value","page":"Tips and tricks","title":"Absolute value","text":"","category":"section"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"To model the absolute value function t ge x, there are a few options. In all cases, these reformulations only work if you are minimizing t \"down\" into x. They do not work if you are trying to maximize x.","category":"page"},{"location":"tutorials/linear/tips_and_tricks/#Option-1","page":"Tips and tricks","title":"Option 1","text":"","category":"section"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"This option adds two linear inequality constraints:","category":"page"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"model = Model();\n@variable(model, x)\n@variable(model, t)\n@constraint(model, t >= x)\n@constraint(model, t >= -x)","category":"page"},{"location":"tutorials/linear/tips_and_tricks/#Option-2","page":"Tips and tricks","title":"Option 2","text":"","category":"section"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"This option uses two non-negative variables and forms expressions for x and t:","category":"page"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"model = Model();\n@variable(model, z[1:2] >= 0)\n@expression(model, t, z[1] + z[2])\n@expression(model, x, z[1] - z[2])","category":"page"},{"location":"tutorials/linear/tips_and_tricks/#Option-3","page":"Tips and tricks","title":"Option 3","text":"","category":"section"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"This option uses MOI.NormOneCone and lets JuMP choose the reformulation:","category":"page"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"model = Model();\n@variable(model, x)\n@variable(model, t)\n@constraint(model, [t; x] in MOI.NormOneCone(2))","category":"page"},{"location":"tutorials/linear/tips_and_tricks/#L1-norm","page":"Tips and tricks","title":"L1-norm","text":"","category":"section"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"To model min x_1, that is, min sumlimits_i x_i, use the MOI.NormOneCone:","category":"page"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"model = Model();\n@variable(model, x[1:3])\n@variable(model, t)\n@constraint(model, [t; x] in MOI.NormOneCone(1 + length(x)))\n@objective(model, Min, t)","category":"page"},{"location":"tutorials/linear/tips_and_tricks/#Infinity-norm","page":"Tips and tricks","title":"Infinity-norm","text":"","category":"section"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"To model min x_infty, that is, min maxlimits_i x_i, use the MOI.NormInfinityCone:","category":"page"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"model = Model();\n@variable(model, x[1:3])\n@variable(model, t)\n@constraint(model, [t; x] in MOI.NormInfinityCone(1 + length(x)))\n@objective(model, Min, t)","category":"page"},{"location":"tutorials/linear/tips_and_tricks/#Max","page":"Tips and tricks","title":"Max","text":"","category":"section"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"To model t ge maxx y, do:","category":"page"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"model = Model();\n@variable(model, t)\n@variable(model, x)\n@variable(model, y)\n@constraint(model, t >= x)\n@constraint(model, t >= y)","category":"page"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"This reformulation does not work for t ge minx y.","category":"page"},{"location":"tutorials/linear/tips_and_tricks/#Min","page":"Tips and tricks","title":"Min","text":"","category":"section"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"To model t le minx y, do:","category":"page"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"model = Model();\n@variable(model, t)\n@variable(model, x)\n@variable(model, y)\n@constraint(model, t <= x)\n@constraint(model, t <= y)","category":"page"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"This reformulation does not work for t le maxx y.","category":"page"},{"location":"tutorials/linear/tips_and_tricks/#Modulo","page":"Tips and tricks","title":"Modulo","text":"","category":"section"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"To model y = x text mod n, where n is a constant modulus, we use the relationship x = n cdot z + y, where z in mathbbZ_+ is the number of times that n can be divided by x and y is the remainder.","category":"page"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"n = 4\nmodel = Model();\n@variable(model, x >= 0, Int)\n@variable(model, 0 <= y <= n - 1, Int)\n@variable(model, z >= 0, Int)\n@constraint(model, x == n * z + y)","category":"page"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"The modulo reformulation is often useful for subdividing a time increment into units of time like hours and days:","category":"page"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"model = Model();\n@variable(model, t >= 0, Int)\n@variable(model, 0 <= hours <= 23, Int)\n@variable(model, days >= 0, Int)\n@constraint(model, t == 24 * days + hours)","category":"page"},{"location":"tutorials/linear/tips_and_tricks/#Boolean-operators","page":"Tips and tricks","title":"Boolean operators","text":"","category":"section"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"Binary variables can be used to construct logical operators. Here are some example.","category":"page"},{"location":"tutorials/linear/tips_and_tricks/#Or","page":"Tips and tricks","title":"Or","text":"","category":"section"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"x_3 = x_1 lor x_2","category":"page"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"model = Model();\n@variable(model, x[1:3], Bin)\n@constraints(model, begin\n x[1] <= x[3]\n x[2] <= x[3]\n x[3] <= x[1] + x[2]\nend)","category":"page"},{"location":"tutorials/linear/tips_and_tricks/#And","page":"Tips and tricks","title":"And","text":"","category":"section"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"x_3 = x_1 land x_2","category":"page"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"model = Model();\n@variable(model, x[1:3], Bin)\n@constraints(model, begin\n x[3] <= x[1]\n x[3] <= x[2]\n x[3] >= x[1] + x[2] - 1\nend)","category":"page"},{"location":"tutorials/linear/tips_and_tricks/#Not","page":"Tips and tricks","title":"Not","text":"","category":"section"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"x_1 neg x_2","category":"page"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"model = Model();\n@variable(model, x[1:2], Bin)\n@constraint(model, x[1] == 1 - x[2])","category":"page"},{"location":"tutorials/linear/tips_and_tricks/#Implies","page":"Tips and tricks","title":"Implies","text":"","category":"section"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"x_1 implies x_2","category":"page"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"model = Model();\n@variable(model, x[1:2], Bin)\n@constraint(model, x[1] <= x[2])","category":"page"},{"location":"tutorials/linear/tips_and_tricks/#Disjunctions","page":"Tips and tricks","title":"Disjunctions","text":"","category":"section"},{"location":"tutorials/linear/tips_and_tricks/#Problem","page":"Tips and tricks","title":"Problem","text":"","category":"section"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"Suppose that we have two constraints a^top x leq b and c^top x leq d, and we want at least one to hold.","category":"page"},{"location":"tutorials/linear/tips_and_tricks/#Trick-1","page":"Tips and tricks","title":"Trick 1","text":"","category":"section"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"Use an indicator constraint.","category":"page"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"Example Either x_1 leq 1 or x_2 leq 2.","category":"page"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"model = Model();\n@variable(model, x[1:2])\n@variable(model, y[1:2], Bin)\n@constraint(model, y[1] --> {x[1] <= 1})\n@constraint(model, y[2] --> {x[2] <= 2})\n@constraint(model, sum(y) == 1) # Exactly one branch must be true","category":"page"},{"location":"tutorials/linear/tips_and_tricks/#Trick-2","page":"Tips and tricks","title":"Trick 2","text":"","category":"section"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"Introduce a \"big-M\" multiplied by a binary variable to relax one of the constraints.","category":"page"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"Example Either x_1 leq 1 or x_2 leq 2.","category":"page"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"model = Model();\n@variable(model, x[1:2] <= 10)\n@variable(model, y[1:2], Bin)\nM = 100\n@constraint(model, x[1] <= 1 + M * y[1])\n@constraint(model, x[2] <= 2 + M * y[2])\n@constraint(model, sum(y) == 1)","category":"page"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"warning: Warning\nIf M is too small, the solution may be suboptimal. If M is too big, the solver may encounter numerical issues. Try to use domain knowledge to choose an M that is just right. Gurobi has a good documentation section on this topic.","category":"page"},{"location":"tutorials/linear/tips_and_tricks/#tips_indicator_constraint","page":"Tips and tricks","title":"Indicator constraints","text":"","category":"section"},{"location":"tutorials/linear/tips_and_tricks/#Problem-2","page":"Tips and tricks","title":"Problem","text":"","category":"section"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"Suppose we want to model that a certain linear inequality must be satisfied when some other event occurs, that is, for a binary variable z, we want to model the implication:","category":"page"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"z = 1 implies a^top x leq b","category":"page"},{"location":"tutorials/linear/tips_and_tricks/#Trick-1-2","page":"Tips and tricks","title":"Trick 1","text":"","category":"section"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"Some solvers have native support for indicator constraints. In addition, if the variables involved have finite domains, then JuMP can automatically reformulate an indicator into a mixed-integer program.","category":"page"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"Example x_1 + x_2 leq 1 if z = 1.","category":"page"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"model = Model();\n@variable(model, 0 <= x[1:2] <= 10)\n@variable(model, z, Bin)\n@constraint(model, z --> {sum(x) <= 1})","category":"page"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"Example x_1 + x_2 leq 1 if z = 0.","category":"page"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"model = Model();\n@variable(model, 0 <= x[1:2] <= 10)\n@variable(model, z, Bin)\n@constraint(model, !z --> {sum(x) <= 1})","category":"page"},{"location":"tutorials/linear/tips_and_tricks/#Trick-2-2","page":"Tips and tricks","title":"Trick 2","text":"","category":"section"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"If the solver doesn't support indicator constraints and the variables do not have a finite domain, you can use the big-M trick.","category":"page"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"Example x_1 + x_2 leq 1 if z = 1.","category":"page"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"model = Model();\n@variable(model, x[1:2] <= 10)\n@variable(model, z, Bin)\nM = 100\n@constraint(model, sum(x) <= 1 + M * (1 - z))","category":"page"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"Example x_1 + x_2 leq 1 if z = 0.","category":"page"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"model = Model();\n@variable(model, x[1:2] <= 10)\n@variable(model, z, Bin)\nM = 100\n@constraint(model, sum(x) <= 1 + M * z)","category":"page"},{"location":"tutorials/linear/tips_and_tricks/#Semi-continuous-variables","page":"Tips and tricks","title":"Semi-continuous variables","text":"","category":"section"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"A semi-continuous variable is a continuous variable between bounds lu that also can assume the value zero, that is: x in 0 cup lu","category":"page"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"Example x in 0cup 1 2","category":"page"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"model = Model();\n@variable(model, x in Semicontinuous(1.0, 2.0))","category":"page"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"You can also represent a semi-continuous variable using the reformulation:","category":"page"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"model = Model();\n@variable(model, x)\n@variable(model, z, Bin)\n@constraint(model, x <= 2 * z)\n@constraint(model, x >= 1 * z)","category":"page"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"When z = 0 the two constraints are equivalent to 0 <= x <= 0. When z = 1, the two constraints are equivalent to 1 <= x <= 2.","category":"page"},{"location":"tutorials/linear/tips_and_tricks/#Semi-integer-variables","page":"Tips and tricks","title":"Semi-integer variables","text":"","category":"section"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"A semi-integer variable is a variable which assumes integer values between bounds lu and can also assume the value zero: x in 0 cup l u cap mathbbZ","category":"page"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"model = Model();\n@variable(model, x in Semiinteger(5.0, 10.0))","category":"page"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"You can also represent a semi-integer variable using the reformulation:","category":"page"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"model = Model();\n@variable(model, x, Int)\n@variable(model, z, Bin)\n@constraint(model, x <= 10 * z)\n@constraint(model, x >= 5 * z)","category":"page"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"When z = 0 the two constraints are equivalent to 0 <= x <= 0. When z = 1, the two constraints are equivalent to 5 <= x <= 10.","category":"page"},{"location":"tutorials/linear/tips_and_tricks/#Special-Ordered-Sets-of-Type-1","page":"Tips and tricks","title":"Special Ordered Sets of Type 1","text":"","category":"section"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"A Special Ordered Set of Type 1 is a set of variables, at most one of which can take a non-zero value, all others being at 0.","category":"page"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"They most frequently apply where a set of variables are actually binary variables. In other words, we have to choose at most one from a set of possibilities.","category":"page"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"model = Model();\n@variable(model, x[1:3], Bin)\n@constraint(model, x in SOS1())","category":"page"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"You can optionally pass SOS1 a weight vector like","category":"page"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"@constraint(model, x in SOS1([0.2, 0.5, 0.3]))","category":"page"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"If the decision variables are related and have a physical ordering, then the weight vector, although not used directly in the constraint, can help the solver make a better decision in the solution process.","category":"page"},{"location":"tutorials/linear/tips_and_tricks/#tip_sos2","page":"Tips and tricks","title":"Special Ordered Sets of Type 2","text":"","category":"section"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"A Special Ordered Set of type 2 is a set of non-negative variables, of which at most two can be non-zero, and if two are non-zero these must be consecutive in their ordering.","category":"page"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"model = Model();\n@variable(model, x[1:3])\n@constraint(model, x in SOS2([3.0, 1.0, 2.0]))","category":"page"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"The ordering provided by the weight vector is more important in this case as the variables need to be consecutive according to the ordering. For example, in the above constraint, the possible pairs are:","category":"page"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"Consecutive\n(x[1] and x[3]) as they correspond to 3 and 2 resp. and thus can be non-zero\n(x[2] and x[3]) as they correspond to 1 and 2 resp. and thus can be non-zero\nNon-consecutive\n(x[1] and x[2]) as they correspond to 3 and 1 resp. and thus cannot be non-zero","category":"page"},{"location":"tutorials/linear/tips_and_tricks/#Piecewise-linear-approximations","page":"Tips and tricks","title":"Piecewise linear approximations","text":"","category":"section"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"SOSII constraints are most often used to form piecewise linear approximations of a function.","category":"page"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"Given a set of points for x:","category":"page"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"x̂ = -1:0.5:2","category":"page"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"and a set of corresponding points for y:","category":"page"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"ŷ = x̂ .^ 2","category":"page"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"the piecewise linear approximation is constructed by representing x and y as convex combinations of x̂ and ŷ.","category":"page"},{"location":"tutorials/linear/tips_and_tricks/","page":"Tips and tricks","title":"Tips and tricks","text":"N = length(x̂)\nmodel = Model();\n@variable(model, -1 <= x <= 2)\n@variable(model, y)\n@variable(model, 0 <= λ[1:N] <= 1)\n@objective(model, Max, y)\n@constraints(model, begin\n x == sum(x̂[i] * λ[i] for i in 1:N)\n y == sum(ŷ[i] * λ[i] for i in 1:N)\n sum(λ) == 1\n λ in SOS2()\nend)","category":"page"},{"location":"tutorials/applications/web_app/","page":"Serving web apps","title":"Serving web apps","text":"EditURL = \"web_app.jl\"","category":"page"},{"location":"tutorials/applications/web_app/#Serving-web-apps","page":"Serving web apps","title":"Serving web apps","text":"","category":"section"},{"location":"tutorials/applications/web_app/","page":"Serving web apps","title":"Serving web apps","text":"This tutorial was generated using Literate.jl. Download the source as a .jl file.","category":"page"},{"location":"tutorials/applications/web_app/","page":"Serving web apps","title":"Serving web apps","text":"This tutorial demonstrates how to setup and serve JuMP models via a REST API.","category":"page"},{"location":"tutorials/applications/web_app/","page":"Serving web apps","title":"Serving web apps","text":"In the example app we are building, we solve a trivial mixed-integer program, which is parameterized by the lower bound of a variable. To call the service, users send an HTTP POST request with JSON contents indicating the lower bound. The returned value is the solution of the mixed-integer program as JSON.","category":"page"},{"location":"tutorials/applications/web_app/","page":"Serving web apps","title":"Serving web apps","text":"First, we need JuMP and a solver:","category":"page"},{"location":"tutorials/applications/web_app/","page":"Serving web apps","title":"Serving web apps","text":"using JuMP\nimport HiGHS","category":"page"},{"location":"tutorials/applications/web_app/","page":"Serving web apps","title":"Serving web apps","text":"We also need HTTP.jl to act as our REST server, and JSON.jl to marshal data.","category":"page"},{"location":"tutorials/applications/web_app/","page":"Serving web apps","title":"Serving web apps","text":"import HTTP\nimport JSON","category":"page"},{"location":"tutorials/applications/web_app/#The-server-side","page":"Serving web apps","title":"The server side","text":"","category":"section"},{"location":"tutorials/applications/web_app/","page":"Serving web apps","title":"Serving web apps","text":"The core components of our REST server are endpoints. These are functions which accept a Dict{String,Any} of input parameters, and return a Dict{String,Any} as output. The types are Dict{String,Any} because we're going to read these to and from JSON.","category":"page"},{"location":"tutorials/applications/web_app/","page":"Serving web apps","title":"Serving web apps","text":"Here's a very simple endpoint: it accepts params as input, formulates and solves a trivial mixed-integer program, and then returns a dictionary with the result.","category":"page"},{"location":"tutorials/applications/web_app/","page":"Serving web apps","title":"Serving web apps","text":"function endpoint_solve(params::Dict{String,Any})\n if !haskey(params, \"lower_bound\")\n return Dict{String,Any}(\n \"status\" => \"failure\",\n \"reason\" => \"missing lower_bound param\",\n )\n elseif !(params[\"lower_bound\"] isa Real)\n return Dict{String,Any}(\n \"status\" => \"failure\",\n \"reason\" => \"lower_bound is not a number\",\n )\n end\n model = Model(HiGHS.Optimizer)\n set_silent(model)\n @variable(model, x >= params[\"lower_bound\"], Int)\n optimize!(model)\n ret = Dict{String,Any}(\n \"status\" => \"okay\",\n \"terminaton_status\" => termination_status(model),\n \"primal_status\" => primal_status(model),\n )\n # Only include the `x` key if it has a value.\n if primal_status(model) == FEASIBLE_POINT\n ret[\"x\"] = value(x)\n end\n return ret\nend","category":"page"},{"location":"tutorials/applications/web_app/","page":"Serving web apps","title":"Serving web apps","text":"When we call this, we get:","category":"page"},{"location":"tutorials/applications/web_app/","page":"Serving web apps","title":"Serving web apps","text":"endpoint_solve(Dict{String,Any}(\"lower_bound\" => 1.2))","category":"page"},{"location":"tutorials/applications/web_app/","page":"Serving web apps","title":"Serving web apps","text":"endpoint_solve(Dict{String,Any}())","category":"page"},{"location":"tutorials/applications/web_app/","page":"Serving web apps","title":"Serving web apps","text":"For a second function, we need a function that accepts an HTTP.Request object and returns an HTTP.Response object.","category":"page"},{"location":"tutorials/applications/web_app/","page":"Serving web apps","title":"Serving web apps","text":"function serve_solve(request::HTTP.Request)\n data = JSON.parse(String(request.body))\n solution = endpoint_solve(data)\n return HTTP.Response(200, JSON.json(solution))\nend","category":"page"},{"location":"tutorials/applications/web_app/","page":"Serving web apps","title":"Serving web apps","text":"Finally, we need an HTTP server. There are a variety of ways you can do this in HTTP.jl. We use an explicit Sockets.listen so we have manual control of when we shutdown the server.","category":"page"},{"location":"tutorials/applications/web_app/","page":"Serving web apps","title":"Serving web apps","text":"function setup_server(host, port)\n server = HTTP.Sockets.listen(host, port)\n HTTP.serve!(host, port; server = server) do request\n try\n # Extend the server by adding other endpoints here.\n if request.target == \"/api/solve\"\n return serve_solve(request)\n else\n return HTTP.Response(404, \"target $(request.target) not found\")\n end\n catch err\n # Log details about the exception server-side\n @info \"Unhandled exception: $err\"\n # Return a response to the client\n return HTTP.Response(500, \"internal error\")\n end\n end\n return server\nend","category":"page"},{"location":"tutorials/applications/web_app/","page":"Serving web apps","title":"Serving web apps","text":"warning: Warning\nHTTP.jl does not serve requests on a separate thread. Therefore, a long-running job will block the main thread, preventing concurrent users from submitting requests. To work-around this, read HTTP.jl issue 798 or watch Building Microservices and Applications in Julia from JuliaCon 2020.","category":"page"},{"location":"tutorials/applications/web_app/","page":"Serving web apps","title":"Serving web apps","text":"server = setup_server(HTTP.ip\"127.0.0.1\", 8080)","category":"page"},{"location":"tutorials/applications/web_app/#The-client-side","page":"Serving web apps","title":"The client side","text":"","category":"section"},{"location":"tutorials/applications/web_app/","page":"Serving web apps","title":"Serving web apps","text":"Now that we have a server, we can send it requests via this function:","category":"page"},{"location":"tutorials/applications/web_app/","page":"Serving web apps","title":"Serving web apps","text":"function send_request(data::Dict; endpoint::String = \"solve\")\n ret = HTTP.request(\n \"POST\",\n # This should match the URL and endpoint we defined for our server.\n \"http://127.0.0.1:8080/api/$endpoint\",\n [\"Content-Type\" => \"application/json\"],\n JSON.json(data),\n )\n if ret.status != 200\n # This could happen if there are time-outs, network errors, etc.\n return Dict(\n \"status\" => \"failure\",\n \"code\" => ret.status,\n \"body\" => String(ret.body),\n )\n end\n return JSON.parse(String(ret.body))\nend","category":"page"},{"location":"tutorials/applications/web_app/","page":"Serving web apps","title":"Serving web apps","text":"Let's see what happens:","category":"page"},{"location":"tutorials/applications/web_app/","page":"Serving web apps","title":"Serving web apps","text":"send_request(Dict(\"lower_bound\" => 0))","category":"page"},{"location":"tutorials/applications/web_app/","page":"Serving web apps","title":"Serving web apps","text":"send_request(Dict(\"lower_bound\" => 1.2))","category":"page"},{"location":"tutorials/applications/web_app/","page":"Serving web apps","title":"Serving web apps","text":"If we don't send a lower_bound, we get:","category":"page"},{"location":"tutorials/applications/web_app/","page":"Serving web apps","title":"Serving web apps","text":"send_request(Dict(\"invalid_param\" => 1.2))","category":"page"},{"location":"tutorials/applications/web_app/","page":"Serving web apps","title":"Serving web apps","text":"If we don't send a lower_bound that is a number, we get:","category":"page"},{"location":"tutorials/applications/web_app/","page":"Serving web apps","title":"Serving web apps","text":"send_request(Dict(\"lower_bound\" => \"1.2\"))","category":"page"},{"location":"tutorials/applications/web_app/","page":"Serving web apps","title":"Serving web apps","text":"Finally, we can shutdown our HTTP server:","category":"page"},{"location":"tutorials/applications/web_app/","page":"Serving web apps","title":"Serving web apps","text":"close(server)","category":"page"},{"location":"tutorials/applications/web_app/#Next-steps","page":"Serving web apps","title":"Next steps","text":"","category":"section"},{"location":"tutorials/applications/web_app/","page":"Serving web apps","title":"Serving web apps","text":"For more complicated examples relating to HTTP servers, consult the HTTP.jl documentation.","category":"page"},{"location":"tutorials/applications/web_app/","page":"Serving web apps","title":"Serving web apps","text":"To see how you can integrate this with a larger JuMP model, read Design patterns for larger models.","category":"page"},{"location":"packages/SDPT3/","page":"jump-dev/SDPT3.jl","title":"jump-dev/SDPT3.jl","text":"EditURL = \"https://github.com/jump-dev/SDPT3.jl/blob/b565aac2a58818090d521f2340e71f597688e4fb/README.md\"","category":"page"},{"location":"packages/SDPT3/#SDPT3.jl","page":"jump-dev/SDPT3.jl","title":"SDPT3.jl","text":"","category":"section"},{"location":"packages/SDPT3/","page":"jump-dev/SDPT3.jl","title":"jump-dev/SDPT3.jl","text":"SDPT3.jl is wrapper for the SDPT3 solver.","category":"page"},{"location":"packages/SDPT3/","page":"jump-dev/SDPT3.jl","title":"jump-dev/SDPT3.jl","text":"The wrapper has two components:","category":"page"},{"location":"packages/SDPT3/","page":"jump-dev/SDPT3.jl","title":"jump-dev/SDPT3.jl","text":"an exported sdpt3 function that is a thin wrapper on top of the sdpt3 MATLAB function\nan interface to MathOptInterface","category":"page"},{"location":"packages/SDPT3/#Affiliation","page":"jump-dev/SDPT3.jl","title":"Affiliation","text":"","category":"section"},{"location":"packages/SDPT3/","page":"jump-dev/SDPT3.jl","title":"jump-dev/SDPT3.jl","text":"This wrapper is maintained by the JuMP community and is not an official wrapper of SDPT3.","category":"page"},{"location":"packages/SDPT3/#License","page":"jump-dev/SDPT3.jl","title":"License","text":"","category":"section"},{"location":"packages/SDPT3/","page":"jump-dev/SDPT3.jl","title":"jump-dev/SDPT3.jl","text":"SDPT3.jl is licensed under the MIT License.","category":"page"},{"location":"packages/SDPT3/","page":"jump-dev/SDPT3.jl","title":"jump-dev/SDPT3.jl","text":"The underlying solver, SDPT3 is licensed under the GPL v2 License.","category":"page"},{"location":"packages/SDPT3/","page":"jump-dev/SDPT3.jl","title":"jump-dev/SDPT3.jl","text":"In addition, SDPT3 requires an installation of MATLAB, which is a closed-source commercial product for which you must obtain a license.","category":"page"},{"location":"packages/SDPT3/#Use-with-JuMP","page":"jump-dev/SDPT3.jl","title":"Use with JuMP","text":"","category":"section"},{"location":"packages/SDPT3/","page":"jump-dev/SDPT3.jl","title":"jump-dev/SDPT3.jl","text":"To use SDPT3 with JuMP, do:","category":"page"},{"location":"packages/SDPT3/","page":"jump-dev/SDPT3.jl","title":"jump-dev/SDPT3.jl","text":"using JuMP, SDPT3\nmodel = Model(SDPT3.Optimizer)\nset_attribute(model, \"printlevel\", 0)","category":"page"},{"location":"packages/SDPT3/#Installation","page":"jump-dev/SDPT3.jl","title":"Installation","text":"","category":"section"},{"location":"packages/SDPT3/","page":"jump-dev/SDPT3.jl","title":"jump-dev/SDPT3.jl","text":"First, make sure that you satisfy the requirements of the MATLAB.jl Julia package, and that the SeDuMi software is installed in your MATLAB™ installation.","category":"page"},{"location":"packages/SDPT3/","page":"jump-dev/SDPT3.jl","title":"jump-dev/SDPT3.jl","text":"Then, install SDPT3.jl using Pkg.add:","category":"page"},{"location":"packages/SDPT3/","page":"jump-dev/SDPT3.jl","title":"jump-dev/SDPT3.jl","text":"import Pkg\nPkg.add(\"SDPT3\")","category":"page"},{"location":"packages/SDPT3/#SDPT3-not-in-PATH","page":"jump-dev/SDPT3.jl","title":"SDPT3 not in PATH","text":"","category":"section"},{"location":"packages/SDPT3/","page":"jump-dev/SDPT3.jl","title":"jump-dev/SDPT3.jl","text":"If you get the error:","category":"page"},{"location":"packages/SDPT3/","page":"jump-dev/SDPT3.jl","title":"jump-dev/SDPT3.jl","text":"Error using save\nVariable 'jx_sdpt3_arg_out_1' not found.\n\nERROR: LoadError: MATLAB.MEngineError(\"failed to get variable jx_sdpt3_arg_out_1 from MATLAB session\")\nStacktrace:\n[...]","category":"page"},{"location":"packages/SDPT3/","page":"jump-dev/SDPT3.jl","title":"jump-dev/SDPT3.jl","text":"The error means that we could not find the sdpt3 function with one output argument using the MATLAB C API. This most likely means that you did not add SDPT3 to the MATLAB's path (that is, the toolbox/local/pathdef.m file).","category":"page"},{"location":"packages/SDPT3/","page":"jump-dev/SDPT3.jl","title":"jump-dev/SDPT3.jl","text":"If modifying toolbox/local/pathdef.m does not work, the following should work, where /path/to/sdpt3/ is the directory where the sdpt3 folder is located:","category":"page"},{"location":"packages/SDPT3/","page":"jump-dev/SDPT3.jl","title":"jump-dev/SDPT3.jl","text":"julia> using MATLAB\n\njulia> cd(\"/path/to/sdpt3/\") do\n MATLAB.mat\"install_sdpt3\"\n end\n\njulia> MATLAB.mat\"savepath\"","category":"page"},{"location":"packages/SDPT3/","page":"jump-dev/SDPT3.jl","title":"jump-dev/SDPT3.jl","text":"An alternative fix is suggested in the following issue.","category":"page"},{"location":"packages/SDPT3/#Error-in-validate","page":"jump-dev/SDPT3.jl","title":"Error in validate","text":"","category":"section"},{"location":"packages/SDPT3/","page":"jump-dev/SDPT3.jl","title":"jump-dev/SDPT3.jl","text":"If you get the error:","category":"page"},{"location":"packages/SDPT3/","page":"jump-dev/SDPT3.jl","title":"jump-dev/SDPT3.jl","text":"Brace indexing is not supported for variables of this type.\n\nError in validate\n\nError in sdpt3 (line 171)\n [blk,At,C,b,blkdim,numblk,parbarrier] = validate(blk,At,C,b,par,parbarrier);\n\nError using save\nVariable 'jx_sdpt3_arg_out_1' not found.","category":"page"},{"location":"packages/SDPT3/","page":"jump-dev/SDPT3.jl","title":"jump-dev/SDPT3.jl","text":"It might mean that you have added SDPNAL in addition to SDPT3 in the MATLAB's path (that is, the toolbox/local/pathdef.m file). Because SDPNAL also defines a validate function, this can make sdpt3 call SDPNAL's validate function instead of SDPT3's validate function, which causes the issue.","category":"page"},{"location":"packages/SDPT3/","page":"jump-dev/SDPT3.jl","title":"jump-dev/SDPT3.jl","text":"One way to fix this from the Julia REPL is to reset the search path to the factory-installed state using restoredefaultpath:","category":"page"},{"location":"packages/SDPT3/","page":"jump-dev/SDPT3.jl","title":"jump-dev/SDPT3.jl","text":"julia> using MATLAB\n\njulia> MATLAB.restoredefaultpath()\n\njulia> MATLAB.mat\"savepath\"","category":"page"},{"location":"tutorials/conic/dualization/","page":"Dualization","title":"Dualization","text":"EditURL = \"dualization.jl\"","category":"page"},{"location":"tutorials/conic/dualization/#Dualization","page":"Dualization","title":"Dualization","text":"","category":"section"},{"location":"tutorials/conic/dualization/","page":"Dualization","title":"Dualization","text":"This tutorial was generated using Literate.jl. Download the source as a .jl file.","category":"page"},{"location":"tutorials/conic/dualization/","page":"Dualization","title":"Dualization","text":"The purpose of this tutorial is to explain how to use Dualization.jl to improve the performance of some conic optimization models.","category":"page"},{"location":"tutorials/conic/dualization/","page":"Dualization","title":"Dualization","text":"There are two important takeaways:","category":"page"},{"location":"tutorials/conic/dualization/","page":"Dualization","title":"Dualization","text":"JuMP reformulates problems to meet the input requirements of the solver, potentially increasing the problem size by adding slack variables and constraints.\nSolving the dual of a conic model can be more efficient than solving the primal.","category":"page"},{"location":"tutorials/conic/dualization/","page":"Dualization","title":"Dualization","text":"Dualization.jl is a package which fixes these problems, allowing you to solve the dual instead of the primal with a one-line change to your code.","category":"page"},{"location":"tutorials/conic/dualization/#Required-packages","page":"Dualization","title":"Required packages","text":"","category":"section"},{"location":"tutorials/conic/dualization/","page":"Dualization","title":"Dualization","text":"This tutorial uses the following packages:","category":"page"},{"location":"tutorials/conic/dualization/","page":"Dualization","title":"Dualization","text":"using JuMP\nimport Dualization\nimport SCS","category":"page"},{"location":"tutorials/conic/dualization/#Background","page":"Dualization","title":"Background","text":"","category":"section"},{"location":"tutorials/conic/dualization/","page":"Dualization","title":"Dualization","text":"Conic optimization solvers typically accept one of two input formulations.","category":"page"},{"location":"tutorials/conic/dualization/","page":"Dualization","title":"Dualization","text":"The first is the standard conic form:","category":"page"},{"location":"tutorials/conic/dualization/","page":"Dualization","title":"Dualization","text":"beginalign\n min_x in mathbbR^n c^top x \n textst A x = b \n x in mathcalK\nendalign","category":"page"},{"location":"tutorials/conic/dualization/","page":"Dualization","title":"Dualization","text":"in which we have a set of linear equality constraints Ax = b and the variables belong to a cone mathcalK.","category":"page"},{"location":"tutorials/conic/dualization/","page":"Dualization","title":"Dualization","text":"The second is the geometric conic form:","category":"page"},{"location":"tutorials/conic/dualization/","page":"Dualization","title":"Dualization","text":"beginalign\n min_x in mathbbR^n c^top x \n textst A x - b in mathcalK\nendalign","category":"page"},{"location":"tutorials/conic/dualization/","page":"Dualization","title":"Dualization","text":"in which an affine function Ax - b belongs to a cone mathcalK and the variables are free.","category":"page"},{"location":"tutorials/conic/dualization/","page":"Dualization","title":"Dualization","text":"It is trivial to convert between these two representations, for example, to go from the geometric conic form to the standard conic form we introduce slack variables y:","category":"page"},{"location":"tutorials/conic/dualization/","page":"Dualization","title":"Dualization","text":"beginalign\n min_x in mathbbR^n c^top x \n textst beginbmatrixA -Iendbmatrix beginbmatrixxyendbmatrix = b \n beginbmatrixxyendbmatrix in mathbbR^n times mathcalK\nendalign","category":"page"},{"location":"tutorials/conic/dualization/","page":"Dualization","title":"Dualization","text":"and to go from the standard conic form to the geometric conic form, we can rewrite the equality constraint as a function belonging to the {0} cone:","category":"page"},{"location":"tutorials/conic/dualization/","page":"Dualization","title":"Dualization","text":"beginalign\n min_x in mathbbR^n c^top x \n textst beginbmatrixAIendbmatrix x - beginbmatrixb0endbmatrix in 0 times mathcalK\nendalign","category":"page"},{"location":"tutorials/conic/dualization/","page":"Dualization","title":"Dualization","text":"From a theoretical perspective, the two formulations are equivalent, and if you implement a model in the standard conic form and pass it to a geometric conic form solver (or vice versa), then JuMP will automatically reformulate the problem into the correct formulation.","category":"page"},{"location":"tutorials/conic/dualization/","page":"Dualization","title":"Dualization","text":"From a practical perspective though, the reformulations are problematic because the additional slack variables and constraints can make the problem much larger and therefore harder to solve.","category":"page"},{"location":"tutorials/conic/dualization/","page":"Dualization","title":"Dualization","text":"You should also note many problems contain a mix of conic constraints and variables, and so they do not neatly fall into one of the two formulations. In these cases, JuMP reformulates only the variables and constraints as necessary to convert the problem into the desired form.","category":"page"},{"location":"tutorials/conic/dualization/#Primal-and-dual-formulations","page":"Dualization","title":"Primal and dual formulations","text":"","category":"section"},{"location":"tutorials/conic/dualization/","page":"Dualization","title":"Dualization","text":"Duality plays a large role in conic optimization. For a detailed description of conic duality, see Duality.","category":"page"},{"location":"tutorials/conic/dualization/","page":"Dualization","title":"Dualization","text":"A useful observation is that if the primal problem is in standard conic form, then the dual problem is in geometric conic form, and vice versa. Moreover, the primal and dual may have a different number of variables and constraints, although which one is smaller depends on the problem. Therefore, instead of reformulating the problem from one form to the other, it can be more efficient to solve the dual instead of the primal.","category":"page"},{"location":"tutorials/conic/dualization/","page":"Dualization","title":"Dualization","text":"To demonstrate, we use a variation of the Maximum cut via SDP example.","category":"page"},{"location":"tutorials/conic/dualization/","page":"Dualization","title":"Dualization","text":"The primal formulation (in standard conic form) is:","category":"page"},{"location":"tutorials/conic/dualization/","page":"Dualization","title":"Dualization","text":"model_primal = Model()\n@variable(model_primal, X[1:2, 1:2], PSD)\n@objective(model_primal, Max, sum([1 -1; -1 1] .* X))\n@constraint(model_primal, primal_c[i = 1:2], 1 - X[i, i] == 0)\nprint(model_primal)","category":"page"},{"location":"tutorials/conic/dualization/","page":"Dualization","title":"Dualization","text":"This problem has three scalar decision variables (the matrix X is symmetric), two scalar equality constraints, and a constraint that X is positive semidefinite.","category":"page"},{"location":"tutorials/conic/dualization/","page":"Dualization","title":"Dualization","text":"The dual of model_primal is:","category":"page"},{"location":"tutorials/conic/dualization/","page":"Dualization","title":"Dualization","text":"model_dual = Model()\n@variable(model_dual, y[1:2])\n@objective(model_dual, Min, sum(y))\n@constraint(model_dual, dual_c, [y[1]-1 1; 1 y[2]-1] in PSDCone())\nprint(model_dual)","category":"page"},{"location":"tutorials/conic/dualization/","page":"Dualization","title":"Dualization","text":"This problem has two scalar decision variables, and a 2x2 positive semidefinite matrix constraint.","category":"page"},{"location":"tutorials/conic/dualization/","page":"Dualization","title":"Dualization","text":"tip: Tip\nIf you haven't seen conic duality before, try deriving the dual problem based on the description in Duality. You'll need to know that the dual cone of PSDCone is the PSDCone.","category":"page"},{"location":"tutorials/conic/dualization/","page":"Dualization","title":"Dualization","text":"When we solve model_primal with SCS.Optimizer, SCS reports three variables (variables n: 3), five rows in the constraint matrix (constraints m: 5), and five non-zeros in the matrix (nnz(A): 5):","category":"page"},{"location":"tutorials/conic/dualization/","page":"Dualization","title":"Dualization","text":"set_optimizer(model_primal, SCS.Optimizer)\noptimize!(model_primal)\n@assert is_solved_and_feasible(model_primal; dual = true)","category":"page"},{"location":"tutorials/conic/dualization/","page":"Dualization","title":"Dualization","text":"(There are five rows in the constraint matrix because SCS expects problems in geometric conic form, and so JuMP has reformulated the X, PSD variable constraint into the affine constraint X .+ 0 in PSDCone().)","category":"page"},{"location":"tutorials/conic/dualization/","page":"Dualization","title":"Dualization","text":"The solution we obtain is:","category":"page"},{"location":"tutorials/conic/dualization/","page":"Dualization","title":"Dualization","text":"value.(X)","category":"page"},{"location":"tutorials/conic/dualization/","page":"Dualization","title":"Dualization","text":"dual.(primal_c)","category":"page"},{"location":"tutorials/conic/dualization/","page":"Dualization","title":"Dualization","text":"objective_value(model_primal)","category":"page"},{"location":"tutorials/conic/dualization/","page":"Dualization","title":"Dualization","text":"When we solve model_dual with SCS.Optimizer, SCS reports two variables (variables n: 2), three rows in the constraint matrix (constraints m: 3), and two non-zeros in the matrix (nnz(A): 2):","category":"page"},{"location":"tutorials/conic/dualization/","page":"Dualization","title":"Dualization","text":"set_optimizer(model_dual, SCS.Optimizer)\noptimize!(model_dual)\n@assert is_solved_and_feasible(model_dual; dual = true)","category":"page"},{"location":"tutorials/conic/dualization/","page":"Dualization","title":"Dualization","text":"and the solution we obtain is:","category":"page"},{"location":"tutorials/conic/dualization/","page":"Dualization","title":"Dualization","text":"dual.(dual_c)","category":"page"},{"location":"tutorials/conic/dualization/","page":"Dualization","title":"Dualization","text":"value.(y)","category":"page"},{"location":"tutorials/conic/dualization/","page":"Dualization","title":"Dualization","text":"objective_value(model_dual)","category":"page"},{"location":"tutorials/conic/dualization/","page":"Dualization","title":"Dualization","text":"This particular problem is small enough that it isn't meaningful to compare the solve times, but in general, we should expect model_dual to solve faster than model_primal because it contains fewer variables and constraints. The difference is particularly noticeable on large-scale optimization problems.","category":"page"},{"location":"tutorials/conic/dualization/#dual_optimizer","page":"Dualization","title":"dual_optimizer","text":"","category":"section"},{"location":"tutorials/conic/dualization/","page":"Dualization","title":"Dualization","text":"Manually deriving the conic dual is difficult and error-prone. The package Dualization.jl provides the Dualization.dual_optimizer meta-solver, which wraps any MathOptInterface-compatible solver in an interface that automatically formulates and solves the dual of an input problem.","category":"page"},{"location":"tutorials/conic/dualization/","page":"Dualization","title":"Dualization","text":"To demonstrate, we use Dualization.dual_optimizer to solve model_primal:","category":"page"},{"location":"tutorials/conic/dualization/","page":"Dualization","title":"Dualization","text":"set_optimizer(model_primal, Dualization.dual_optimizer(SCS.Optimizer))\noptimize!(model_primal)\n@assert is_solved_and_feasible(model_primal; dual = true)","category":"page"},{"location":"tutorials/conic/dualization/","page":"Dualization","title":"Dualization","text":"The performance is the same as if we solved model_dual, and the correct solution is returned to X:","category":"page"},{"location":"tutorials/conic/dualization/","page":"Dualization","title":"Dualization","text":"value.(X)","category":"page"},{"location":"tutorials/conic/dualization/","page":"Dualization","title":"Dualization","text":"dual.(primal_c)","category":"page"},{"location":"tutorials/conic/dualization/","page":"Dualization","title":"Dualization","text":"Moreover, if we use dual_optimizer on model_dual, then we get the same performance as if we had solved model_primal:","category":"page"},{"location":"tutorials/conic/dualization/","page":"Dualization","title":"Dualization","text":"set_optimizer(model_dual, Dualization.dual_optimizer(SCS.Optimizer))\noptimize!(model_dual)\n@assert is_solved_and_feasible(model_dual; dual = true)","category":"page"},{"location":"tutorials/conic/dualization/","page":"Dualization","title":"Dualization","text":"dual.(dual_c)","category":"page"},{"location":"tutorials/conic/dualization/","page":"Dualization","title":"Dualization","text":"value.(y)","category":"page"},{"location":"tutorials/conic/dualization/#A-mixed-example","page":"Dualization","title":"A mixed example","text":"","category":"section"},{"location":"tutorials/conic/dualization/","page":"Dualization","title":"Dualization","text":"The Maximum cut via SDP example is nicely defined because the primal is in standard conic form and the dual is in geometric conic form. However, many practical models contain a mix of the two formulations. One example is The minimum distortion problem:","category":"page"},{"location":"tutorials/conic/dualization/","page":"Dualization","title":"Dualization","text":"D = [0 1 1 1; 1 0 2 2; 1 2 0 2; 1 2 2 0]\nmodel = Model()\n@variable(model, c²)\n@variable(model, Q[1:4, 1:4], PSD)\n@objective(model, Min, c²)\nfor i in 1:4, j in (i+1):4\n @constraint(model, D[i, j]^2 <= Q[i, i] + Q[j, j] - 2 * Q[i, j])\n @constraint(model, Q[i, i] + Q[j, j] - 2 * Q[i, j] <= c² * D[i, j]^2)\nend\n@constraint(model, Q[1, 1] == 0)\n@constraint(model, c² >= 1)","category":"page"},{"location":"tutorials/conic/dualization/","page":"Dualization","title":"Dualization","text":"In this formulation, the Q variable is of the form xinmathcalK, but there is also a free variable, c², a linear equality constraint, Q[1, 1] == 0, and some linear inequality constraints. Rather than attempting to derive the formulation that JuMP would pass to SCS and its dual, the simplest solution is to try solving the problem with and without dual_optimizer to see which formulation is most efficient.","category":"page"},{"location":"tutorials/conic/dualization/","page":"Dualization","title":"Dualization","text":"set_optimizer(model, SCS.Optimizer)\noptimize!(model)","category":"page"},{"location":"tutorials/conic/dualization/","page":"Dualization","title":"Dualization","text":"set_optimizer(model, Dualization.dual_optimizer(SCS.Optimizer))\noptimize!(model)","category":"page"},{"location":"tutorials/conic/dualization/","page":"Dualization","title":"Dualization","text":"For this problem, SCS reports that the primal has variables n: 11, constraints m: 24 and that the dual has variables n: 14, constraints m: 24. Therefore, we should probably use the primal formulation because it has fewer variables and the same number of constraints.","category":"page"},{"location":"tutorials/conic/dualization/#When-to-use-dual_optimizer","page":"Dualization","title":"When to use dual_optimizer","text":"","category":"section"},{"location":"tutorials/conic/dualization/","page":"Dualization","title":"Dualization","text":"Because it can make the problem larger or smaller, depending on the problem and the choice of solver, there is no definitive rule on when you should use dual_optimizer. However, you should try dual_optimizer if your conic optimization problem takes a long time to solve, or if you need to repeatedly solve similarly structured problems with different data. In some cases solving the dual instead of the primal can make a large difference.","category":"page"},{"location":"tutorials/conic/ellipse_approx/","page":"Example: ellipsoid approximation","title":"Example: ellipsoid approximation","text":"EditURL = \"ellipse_approx.jl\"","category":"page"},{"location":"tutorials/conic/ellipse_approx/#Example:-ellipsoid-approximation","page":"Example: ellipsoid approximation","title":"Example: ellipsoid approximation","text":"","category":"section"},{"location":"tutorials/conic/ellipse_approx/","page":"Example: ellipsoid approximation","title":"Example: ellipsoid approximation","text":"This tutorial was generated using Literate.jl. Download the source as a .jl file.","category":"page"},{"location":"tutorials/conic/ellipse_approx/","page":"Example: ellipsoid approximation","title":"Example: ellipsoid approximation","text":"This tutorial considers the problem of computing extremal ellipsoids: finding ellipsoids that best approximate a given set. As an extension, we show how to use JuMP to inspect the bridges that were used, and how to explore alternative formulations.","category":"page"},{"location":"tutorials/conic/ellipse_approx/","page":"Example: ellipsoid approximation","title":"Example: ellipsoid approximation","text":"The model comes from Section 4.9 of (Ben-Tal and Nemirovski, 2001).","category":"page"},{"location":"tutorials/conic/ellipse_approx/","page":"Example: ellipsoid approximation","title":"Example: ellipsoid approximation","text":"For a related example, see also the Example: minimal ellipses tutorial.","category":"page"},{"location":"tutorials/conic/ellipse_approx/#Required-packages","page":"Example: ellipsoid approximation","title":"Required packages","text":"","category":"section"},{"location":"tutorials/conic/ellipse_approx/","page":"Example: ellipsoid approximation","title":"Example: ellipsoid approximation","text":"This tutorial uses the following packages:","category":"page"},{"location":"tutorials/conic/ellipse_approx/","page":"Example: ellipsoid approximation","title":"Example: ellipsoid approximation","text":"using JuMP\nimport LinearAlgebra\nimport Plots\nimport Random\nimport SCS\nimport Test","category":"page"},{"location":"tutorials/conic/ellipse_approx/#Problem-formulation","page":"Example: ellipsoid approximation","title":"Problem formulation","text":"","category":"section"},{"location":"tutorials/conic/ellipse_approx/","page":"Example: ellipsoid approximation","title":"Example: ellipsoid approximation","text":"Suppose that we are given a set mathcalS consisting of m points in n-dimensional space:","category":"page"},{"location":"tutorials/conic/ellipse_approx/","page":"Example: ellipsoid approximation","title":"Example: ellipsoid approximation","text":"mathcalS = x_1 ldots x_m subset mathbbR^n","category":"page"},{"location":"tutorials/conic/ellipse_approx/","page":"Example: ellipsoid approximation","title":"Example: ellipsoid approximation","text":"Our goal is to determine an optimal vector c in mathbbR^n and an optimal n times n real symmetric matrix D such that the ellipse:","category":"page"},{"location":"tutorials/conic/ellipse_approx/","page":"Example: ellipsoid approximation","title":"Example: ellipsoid approximation","text":"E(D c) = x (x - c)^top D ( x - c) leq 1 ","category":"page"},{"location":"tutorials/conic/ellipse_approx/","page":"Example: ellipsoid approximation","title":"Example: ellipsoid approximation","text":"contains mathcalS and has the smallest possible volume.","category":"page"},{"location":"tutorials/conic/ellipse_approx/","page":"Example: ellipsoid approximation","title":"Example: ellipsoid approximation","text":"The optimal D and c are given by the optimization problem:","category":"page"},{"location":"tutorials/conic/ellipse_approx/","page":"Example: ellipsoid approximation","title":"Example: ellipsoid approximation","text":"beginaligned\nmax quad t \ntextst quad Z succeq 0 \n beginbmatrix s z^top z Z endbmatrix succeq 0 \n x_i^top Z x_i - 2x_i^top z + s leq 1 quad i=1 ldots m \n t le sqrtndet(Z)\nendaligned","category":"page"},{"location":"tutorials/conic/ellipse_approx/","page":"Example: ellipsoid approximation","title":"Example: ellipsoid approximation","text":"where D = Z_* and c = Z_*^-1 z_*.","category":"page"},{"location":"tutorials/conic/ellipse_approx/#Data","page":"Example: ellipsoid approximation","title":"Data","text":"","category":"section"},{"location":"tutorials/conic/ellipse_approx/","page":"Example: ellipsoid approximation","title":"Example: ellipsoid approximation","text":"We first need to generate some points to work with.","category":"page"},{"location":"tutorials/conic/ellipse_approx/","page":"Example: ellipsoid approximation","title":"Example: ellipsoid approximation","text":"function generate_point_cloud(\n m; # number of 2-dimensional points\n a = 10, # scaling in x direction\n b = 2, # scaling in y direction\n rho = π / 6, # rotation of points around origin\n random_seed = 1,\n)\n rng = Random.MersenneTwister(random_seed)\n P = randn(rng, Float64, m, 2)\n Phi = [a*cos(rho) a*sin(rho); -b*sin(rho) b*cos(rho)]\n S = P * Phi\n return S\nend","category":"page"},{"location":"tutorials/conic/ellipse_approx/","page":"Example: ellipsoid approximation","title":"Example: ellipsoid approximation","text":"For the sake of this example, let's take m = 600:","category":"page"},{"location":"tutorials/conic/ellipse_approx/","page":"Example: ellipsoid approximation","title":"Example: ellipsoid approximation","text":"S = generate_point_cloud(600);\nnothing #hide","category":"page"},{"location":"tutorials/conic/ellipse_approx/","page":"Example: ellipsoid approximation","title":"Example: ellipsoid approximation","text":"We will visualise the points (and ellipse) using the Plots package:","category":"page"},{"location":"tutorials/conic/ellipse_approx/","page":"Example: ellipsoid approximation","title":"Example: ellipsoid approximation","text":"r = 1.1 * maximum(abs.(S))\nplot = Plots.scatter(\n S[:, 1],\n S[:, 2];\n xlim = (-r, r),\n ylim = (-r, r),\n label = nothing,\n c = :green,\n shape = :x,\n size = (600, 600),\n)","category":"page"},{"location":"tutorials/conic/ellipse_approx/#JuMP-formulation","page":"Example: ellipsoid approximation","title":"JuMP formulation","text":"","category":"section"},{"location":"tutorials/conic/ellipse_approx/","page":"Example: ellipsoid approximation","title":"Example: ellipsoid approximation","text":"Now let's build and the JuMP model. We'll compute D and c after the solve.","category":"page"},{"location":"tutorials/conic/ellipse_approx/","page":"Example: ellipsoid approximation","title":"Example: ellipsoid approximation","text":"model = Model(SCS.Optimizer)\n# We need to use a tighter tolerance for this example, otherwise the bounding\n# ellipse won't actually be bounding...\nset_attribute(model, \"eps_rel\", 1e-7)\nset_silent(model)\nm, n = size(S)\n@variable(model, z[1:n])\n@variable(model, Z[1:n, 1:n], PSD)\n@variable(model, s)\n@variable(model, t)\n@constraint(model, [s z'; z Z] >= 0, PSDCone())\n@constraint(\n model,\n [i in 1:m],\n S[i, :]' * Z * S[i, :] - 2 * S[i, :]' * z + s <= 1,\n)\n@constraint(model, [t; vec(Z)] in MOI.RootDetConeSquare(n))\n@objective(model, Max, t)\noptimize!(model)\nTest.@test is_solved_and_feasible(model)\nsolution_summary(model)","category":"page"},{"location":"tutorials/conic/ellipse_approx/#Results","page":"Example: ellipsoid approximation","title":"Results","text":"","category":"section"},{"location":"tutorials/conic/ellipse_approx/","page":"Example: ellipsoid approximation","title":"Example: ellipsoid approximation","text":"After solving the model to optimality we can recover the solution in terms of D and c:","category":"page"},{"location":"tutorials/conic/ellipse_approx/","page":"Example: ellipsoid approximation","title":"Example: ellipsoid approximation","text":"D = value.(Z)","category":"page"},{"location":"tutorials/conic/ellipse_approx/","page":"Example: ellipsoid approximation","title":"Example: ellipsoid approximation","text":"c = D \\ value.(z)","category":"page"},{"location":"tutorials/conic/ellipse_approx/","page":"Example: ellipsoid approximation","title":"Example: ellipsoid approximation","text":"We can check that each point lies inside the ellipsoid, by checking if the largest normalized radius is less than 1:","category":"page"},{"location":"tutorials/conic/ellipse_approx/","page":"Example: ellipsoid approximation","title":"Example: ellipsoid approximation","text":"largest_radius = maximum(map(x -> (x - c)' * D * (x - c), eachrow(S)))","category":"page"},{"location":"tutorials/conic/ellipse_approx/","page":"Example: ellipsoid approximation","title":"Example: ellipsoid approximation","text":"Finally, overlaying the solution in the plot we see the minimal volume approximating ellipsoid:","category":"page"},{"location":"tutorials/conic/ellipse_approx/","page":"Example: ellipsoid approximation","title":"Example: ellipsoid approximation","text":"P = sqrt(D)\nq = -P * c\ndata = [tuple(P \\ [cos(θ) - q[1], sin(θ) - q[2]]...) for θ in 0:0.05:(2pi+0.05)]\nPlots.plot!(plot, data; c = :crimson, label = nothing)","category":"page"},{"location":"tutorials/conic/ellipse_approx/#Alternative-formulations","page":"Example: ellipsoid approximation","title":"Alternative formulations","text":"","category":"section"},{"location":"tutorials/conic/ellipse_approx/","page":"Example: ellipsoid approximation","title":"Example: ellipsoid approximation","text":"The formulation of model uses MOI.RootDetConeSquare. However, because SCS does not natively support this cone, JuMP automatically reformulates the problem into an equivalent problem that SCS does support. You can see the reformulation that JuMP chose using print_active_bridges:","category":"page"},{"location":"tutorials/conic/ellipse_approx/","page":"Example: ellipsoid approximation","title":"Example: ellipsoid approximation","text":"print_active_bridges(model)","category":"page"},{"location":"tutorials/conic/ellipse_approx/","page":"Example: ellipsoid approximation","title":"Example: ellipsoid approximation","text":"There's a lot going on here, but the first bullet is:","category":"page"},{"location":"tutorials/conic/ellipse_approx/","page":"Example: ellipsoid approximation","title":"Example: ellipsoid approximation","text":"* Unsupported objective: MOI.VariableIndex\n| bridged by:\n| MOIB.Objective.FunctionizeBridge{Float64}\n| introduces:\n| * Supported objective: MOI.ScalarAffineFunction{Float64}","category":"page"},{"location":"tutorials/conic/ellipse_approx/","page":"Example: ellipsoid approximation","title":"Example: ellipsoid approximation","text":"This says that SCS does not support a MOI.VariableIndex objective function, and that JuMP used a MOI.Bridges.Objective.FunctionizeBridge to convert it into a MOI.ScalarAffineFunction{Float64} objective function.","category":"page"},{"location":"tutorials/conic/ellipse_approx/","page":"Example: ellipsoid approximation","title":"Example: ellipsoid approximation","text":"We can leave JuMP to do the reformulation, or we can rewrite our model to have an objective function that SCS natively supports:","category":"page"},{"location":"tutorials/conic/ellipse_approx/","page":"Example: ellipsoid approximation","title":"Example: ellipsoid approximation","text":"@objective(model, Max, 1.0 * t + 0.0);\nnothing #hide","category":"page"},{"location":"tutorials/conic/ellipse_approx/","page":"Example: ellipsoid approximation","title":"Example: ellipsoid approximation","text":"Re-printing the active bridges:","category":"page"},{"location":"tutorials/conic/ellipse_approx/","page":"Example: ellipsoid approximation","title":"Example: ellipsoid approximation","text":"print_active_bridges(model)","category":"page"},{"location":"tutorials/conic/ellipse_approx/","page":"Example: ellipsoid approximation","title":"Example: ellipsoid approximation","text":"we get * Supported objective: MOI.ScalarAffineFunction{Float64}.","category":"page"},{"location":"tutorials/conic/ellipse_approx/","page":"Example: ellipsoid approximation","title":"Example: ellipsoid approximation","text":"We can manually implement some other reformulations to change our model to something that SCS more closely supports by:","category":"page"},{"location":"tutorials/conic/ellipse_approx/","page":"Example: ellipsoid approximation","title":"Example: ellipsoid approximation","text":"Replacing the MOI.VectorOfVariables in MOI.PositiveSemidefiniteConeTriangle constraint @variable(model, Z[1:n, 1:n], PSD) with the MOI.VectorAffineFunction in MOI.PositiveSemidefiniteConeTriangle @constraint(model, Z >= 0, PSDCone()).\nReplacing the MOI.VectorOfVariables in MOI.PositiveSemidefiniteConeSquare constraint [s z'; z Z] >= 0, PSDCone() with the MOI.VectorAffineFunction in MOI.PositiveSemidefiniteConeTriangle @constraint(model, LinearAlgebra.Symmetric([s z'; z Z]) >= 0, PSDCone()).\nReplacing the MOI.ScalarAffineFunction in MOI.GreaterThan constraints with the vectorized equivalent of MOI.VectorAffineFunction in MOI.Nonnegatives\nReplacing the MOI.VectorOfVariables in MOI.RootDetConeSquare constraint with MOI.VectorAffineFunction in MOI.RootDetConeTriangle.","category":"page"},{"location":"tutorials/conic/ellipse_approx/","page":"Example: ellipsoid approximation","title":"Example: ellipsoid approximation","text":"Note that we still need to bridge MOI.PositiveSemidefiniteConeTriangle constraints because SCS uses an internal SCS.ScaledPSDCone set instead.","category":"page"},{"location":"tutorials/conic/ellipse_approx/","page":"Example: ellipsoid approximation","title":"Example: ellipsoid approximation","text":"model = Model(SCS.Optimizer)\nset_attribute(model, \"eps_rel\", 1e-6)\nset_silent(model)\n@variable(model, z[1:n])\n@variable(model, s)\n@variable(model, t)\n# The former @variable(model, Z[1:n, 1:n], PSD)\n@variable(model, Z[1:n, 1:n], Symmetric)\n@constraint(model, Z >= 0, PSDCone())\n# The former [s z'; z Z] >= 0, PSDCone()\n@constraint(model, LinearAlgebra.Symmetric([s z'; z Z]) >= 0, PSDCone())\n# The former constraint S[i, :]' * Z * S[i, :] - 2 * S[i, :]' * z + s <= 1\nf = [1 - S[i, :]' * Z * S[i, :] + 2 * S[i, :]' * z - s for i in 1:m]\n@constraint(model, f in MOI.Nonnegatives(m))\n# The former constraint [t; vec(Z)] in MOI.RootDetConeSquare(n)\n@constraint(model, 1 * [t; triangle_vec(Z)] .+ 0 in MOI.RootDetConeTriangle(n))\n# The former @objective(model, Max, t)\n@objective(model, Max, 1 * t + 0)\noptimize!(model)\nTest.@test is_solved_and_feasible(model)\nsolve_time_1 = solve_time(model)","category":"page"},{"location":"tutorials/conic/ellipse_approx/","page":"Example: ellipsoid approximation","title":"Example: ellipsoid approximation","text":"This formulation gives the much smaller graph:","category":"page"},{"location":"tutorials/conic/ellipse_approx/","page":"Example: ellipsoid approximation","title":"Example: ellipsoid approximation","text":"print_active_bridges(model)","category":"page"},{"location":"tutorials/conic/ellipse_approx/","page":"Example: ellipsoid approximation","title":"Example: ellipsoid approximation","text":"The last bullet shows how JuMP reformulated the MOI.RootDetConeTriangle constraint by adding a mix of MOI.PositiveSemidefiniteConeTriangle and MOI.GeometricMeanCone constraints.","category":"page"},{"location":"tutorials/conic/ellipse_approx/","page":"Example: ellipsoid approximation","title":"Example: ellipsoid approximation","text":"Because SCS doesn't natively support the MOI.GeometricMeanCone, these constraints were further bridged using a MOI.Bridges.Constraint.GeoMeanToPowerBridge to a series of MOI.PowerCone constraints.","category":"page"},{"location":"tutorials/conic/ellipse_approx/","page":"Example: ellipsoid approximation","title":"Example: ellipsoid approximation","text":"However, there are many other ways that a MOI.GeometricMeanCone can be reformulated into something that SCS supports. Let's see what happens if we use remove_bridge to remove the MOI.Bridges.Constraint.GeoMeanToPowerBridge:","category":"page"},{"location":"tutorials/conic/ellipse_approx/","page":"Example: ellipsoid approximation","title":"Example: ellipsoid approximation","text":"remove_bridge(model, MOI.Bridges.Constraint.GeoMeanToPowerBridge)\noptimize!(model)\nTest.@test is_solved_and_feasible(model)","category":"page"},{"location":"tutorials/conic/ellipse_approx/","page":"Example: ellipsoid approximation","title":"Example: ellipsoid approximation","text":"This time, the solve took:","category":"page"},{"location":"tutorials/conic/ellipse_approx/","page":"Example: ellipsoid approximation","title":"Example: ellipsoid approximation","text":"solve_time_2 = solve_time(model)","category":"page"},{"location":"tutorials/conic/ellipse_approx/","page":"Example: ellipsoid approximation","title":"Example: ellipsoid approximation","text":"where previously it took","category":"page"},{"location":"tutorials/conic/ellipse_approx/","page":"Example: ellipsoid approximation","title":"Example: ellipsoid approximation","text":"solve_time_1","category":"page"},{"location":"tutorials/conic/ellipse_approx/","page":"Example: ellipsoid approximation","title":"Example: ellipsoid approximation","text":"Why was the solve time different?","category":"page"},{"location":"tutorials/conic/ellipse_approx/","page":"Example: ellipsoid approximation","title":"Example: ellipsoid approximation","text":"print_active_bridges(model)","category":"page"},{"location":"tutorials/conic/ellipse_approx/","page":"Example: ellipsoid approximation","title":"Example: ellipsoid approximation","text":"This time, JuMP used a MOI.Bridges.Constraint.GeoMeanBridge to reformulate the constraint into a set of MOI.RotatedSecondOrderCone constraints, which were further reformulated into a set of supported MOI.SecondOrderCone constraints.","category":"page"},{"location":"tutorials/conic/ellipse_approx/","page":"Example: ellipsoid approximation","title":"Example: ellipsoid approximation","text":"Since the two models are equivalent, we can conclude that for this particular model, the MOI.SecondOrderCone formulation is more efficient.","category":"page"},{"location":"tutorials/conic/ellipse_approx/","page":"Example: ellipsoid approximation","title":"Example: ellipsoid approximation","text":"In general though, the performance of a particular reformulation is problem- and solver-specific. Therefore, JuMP chooses to minimize the number of bridges in the default reformulation, leaving you to explore alternative formulations using the tools and techniques shown in this tutorial.","category":"page"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"DocTestSetup = quote\n using JuMP\nend","category":"page"},{"location":"manual/containers/#Containers","page":"Containers","title":"Containers","text":"","category":"section"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"JuMP provides specialized containers similar to AxisArrays that enable multi-dimensional arrays with non-integer indices.","category":"page"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"These containers are created automatically by JuMP's macros. Each macro has the same basic syntax:","category":"page"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"@macroname(model, name[key1=index1, index2; optional_condition], other stuff)","category":"page"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"The containers are generated by the name[key1=index1, index2; optional_condition] syntax. Everything else is specific to the particular macro.","category":"page"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"Containers can be named, for example, name[key=index], or unnamed, for example, [key=index]. We call unnamed containers anonymous.","category":"page"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"We call the bits inside the square brackets and before the ; the index sets. The index sets can be named, for example, [i = 1:4], or they can be unnamed, for example, [1:4].","category":"page"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"We call the bit inside the square brackets and after the ; the condition. Conditions are optional.","category":"page"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"In addition to the standard JuMP macros like @variable and @constraint, which construct containers of variables and constraints respectively, you can use Containers.@container to construct containers with arbitrary elements.","category":"page"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"We will use this macro to explain the three types of containers that are natively supported by JuMP: Array, Containers.DenseAxisArray, and Containers.SparseAxisArray.","category":"page"},{"location":"manual/containers/#Array","page":"Containers","title":"Array","text":"","category":"section"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"An Array is created when the index sets are rectangular and the index sets are of the form 1:n.","category":"page"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"julia> Containers.@container(x[i = 1:2, j = 1:3], (i, j))\n2×3 Matrix{Tuple{Int64, Int64}}:\n (1, 1) (1, 2) (1, 3)\n (2, 1) (2, 2) (2, 3)","category":"page"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"The result is a normal Julia Array, so you can do all the usual things.","category":"page"},{"location":"manual/containers/#Slicing","page":"Containers","title":"Slicing","text":"","category":"section"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"Arrays can be sliced","category":"page"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"julia> x[:, 1]\n2-element Vector{Tuple{Int64, Int64}}:\n (1, 1)\n (2, 1)\n\njulia> x[2, :]\n3-element Vector{Tuple{Int64, Int64}}:\n (2, 1)\n (2, 2)\n (2, 3)","category":"page"},{"location":"manual/containers/#Looping","page":"Containers","title":"Looping","text":"","category":"section"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"Use eachindex to loop over the elements:","category":"page"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"julia> for key in eachindex(x)\n println(x[key])\n end\n(1, 1)\n(2, 1)\n(1, 2)\n(2, 2)\n(1, 3)\n(2, 3)","category":"page"},{"location":"manual/containers/#Get-the-index-sets","page":"Containers","title":"Get the index sets","text":"","category":"section"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"Use axes to obtain the index sets:","category":"page"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"julia> axes(x)\n(Base.OneTo(2), Base.OneTo(3))","category":"page"},{"location":"manual/containers/#Broadcasting","page":"Containers","title":"Broadcasting","text":"","category":"section"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"Broadcasting over an Array returns an Array","category":"page"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"julia> swap(x::Tuple) = (last(x), first(x))\nswap (generic function with 1 method)\n\njulia> swap.(x)\n2×3 Matrix{Tuple{Int64, Int64}}:\n (1, 1) (2, 1) (3, 1)\n (1, 2) (2, 2) (3, 2)","category":"page"},{"location":"manual/containers/#Tables","page":"Containers","title":"Tables","text":"","category":"section"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"Use Containers.rowtable to convert the Array into a Tables.jl compatible Vector{<:NamedTuple}:","category":"page"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"julia> table = Containers.rowtable(x; header = [:I, :J, :value])\n6-element Vector{@NamedTuple{I::Int64, J::Int64, value::Tuple{Int64, Int64}}}:\n (I = 1, J = 1, value = (1, 1))\n (I = 2, J = 1, value = (2, 1))\n (I = 1, J = 2, value = (1, 2))\n (I = 2, J = 2, value = (2, 2))\n (I = 1, J = 3, value = (1, 3))\n (I = 2, J = 3, value = (2, 3))","category":"page"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"Because it supports the Tables.jl interface, you can pass it to any function which accepts a table as input:","category":"page"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"julia> import DataFrames;\n\njulia> DataFrames.DataFrame(table)\n6×3 DataFrame\n Row │ I J value\n │ Int64 Int64 Tuple…\n─────┼──────────────────────\n 1 │ 1 1 (1, 1)\n 2 │ 2 1 (2, 1)\n 3 │ 1 2 (1, 2)\n 4 │ 2 2 (2, 2)\n 5 │ 1 3 (1, 3)\n 6 │ 2 3 (2, 3)","category":"page"},{"location":"manual/containers/#DenseAxisArray","page":"Containers","title":"DenseAxisArray","text":"","category":"section"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"A Containers.DenseAxisArray is created when the index sets are rectangular, but not of the form 1:n. The index sets can be of any type.","category":"page"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"julia> x = Containers.@container([i = 1:2, j = [:A, :B]], (i, j))\n2-dimensional DenseAxisArray{Tuple{Int64, Symbol},2,...} with index sets:\n Dimension 1, Base.OneTo(2)\n Dimension 2, [:A, :B]\nAnd data, a 2×2 Matrix{Tuple{Int64, Symbol}}:\n (1, :A) (1, :B)\n (2, :A) (2, :B)","category":"page"},{"location":"manual/containers/#Slicing-2","page":"Containers","title":"Slicing","text":"","category":"section"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"DenseAxisArrays can be sliced","category":"page"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"julia> x[:, :A]\n1-dimensional DenseAxisArray{Tuple{Int64, Symbol},1,...} with index sets:\n Dimension 1, Base.OneTo(2)\nAnd data, a 2-element Vector{Tuple{Int64, Symbol}}:\n (1, :A)\n (2, :A)\n\njulia> x[1, :]\n1-dimensional DenseAxisArray{Tuple{Int64, Symbol},1,...} with index sets:\n Dimension 1, [:A, :B]\nAnd data, a 2-element Vector{Tuple{Int64, Symbol}}:\n (1, :A)\n (1, :B)","category":"page"},{"location":"manual/containers/#Looping-2","page":"Containers","title":"Looping","text":"","category":"section"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"Use eachindex to loop over the elements:","category":"page"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"julia> for key in eachindex(x)\n println(x[key])\n end\n(1, :A)\n(2, :A)\n(1, :B)\n(2, :B)","category":"page"},{"location":"manual/containers/#Get-the-index-sets-2","page":"Containers","title":"Get the index sets","text":"","category":"section"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"Use axes to obtain the index sets:","category":"page"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"julia> axes(x)\n(Base.OneTo(2), [:A, :B])","category":"page"},{"location":"manual/containers/#Broadcasting-2","page":"Containers","title":"Broadcasting","text":"","category":"section"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"Broadcasting over a DenseAxisArray returns a DenseAxisArray","category":"page"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"julia> swap(x::Tuple) = (last(x), first(x))\nswap (generic function with 1 method)\n\njulia> swap.(x)\n2-dimensional DenseAxisArray{Tuple{Symbol, Int64},2,...} with index sets:\n Dimension 1, Base.OneTo(2)\n Dimension 2, [:A, :B]\nAnd data, a 2×2 Matrix{Tuple{Symbol, Int64}}:\n (:A, 1) (:B, 1)\n (:A, 2) (:B, 2)","category":"page"},{"location":"manual/containers/#Access-internal-data","page":"Containers","title":"Access internal data","text":"","category":"section"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"Use Array(x) to copy the internal data array into a new Array:","category":"page"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"julia> Array(x)\n2×2 Matrix{Tuple{Int64, Symbol}}:\n (1, :A) (1, :B)\n (2, :A) (2, :B)","category":"page"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"To access the internal data without a copy, use x.data.","category":"page"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"julia> x.data\n2×2 Matrix{Tuple{Int64, Symbol}}:\n (1, :A) (1, :B)\n (2, :A) (2, :B)","category":"page"},{"location":"manual/containers/#Tables-2","page":"Containers","title":"Tables","text":"","category":"section"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"Use Containers.rowtable to convert the DenseAxisArray into a Tables.jl compatible Vector{<:NamedTuple}:","category":"page"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"julia> table = Containers.rowtable(x; header = [:I, :J, :value])\n4-element Vector{@NamedTuple{I::Int64, J::Symbol, value::Tuple{Int64, Symbol}}}:\n (I = 1, J = :A, value = (1, :A))\n (I = 2, J = :A, value = (2, :A))\n (I = 1, J = :B, value = (1, :B))\n (I = 2, J = :B, value = (2, :B))","category":"page"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"Because it supports the Tables.jl interface, you can pass it to any function which accepts a table as input:","category":"page"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"julia> import DataFrames;\n\njulia> DataFrames.DataFrame(table)\n4×3 DataFrame\n Row │ I J value\n │ Int64 Symbol Tuple…\n─────┼────────────────────────\n 1 │ 1 A (1, :A)\n 2 │ 2 A (2, :A)\n 3 │ 1 B (1, :B)\n 4 │ 2 B (2, :B)","category":"page"},{"location":"manual/containers/#Keyword-indexing","page":"Containers","title":"Keyword indexing","text":"","category":"section"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"If all axes are named, you can use keyword indexing:","category":"page"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"julia> x[i = 2, j = :A]\n(2, :A)\n\njulia> x[i = :, j = :B]\n1-dimensional DenseAxisArray{Tuple{Int64, Symbol},1,...} with index sets:\n Dimension 1, Base.OneTo(2)\nAnd data, a 2-element Vector{Tuple{Int64, Symbol}}:\n (1, :B)\n (2, :B)","category":"page"},{"location":"manual/containers/#SparseAxisArray","page":"Containers","title":"SparseAxisArray","text":"","category":"section"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"A Containers.SparseAxisArray is created when the index sets are non-rectangular. This occurs in two circumstances:","category":"page"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"An index depends on a prior index:","category":"page"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"julia> Containers.@container([i = 1:2, j = i:2], (i, j))\nJuMP.Containers.SparseAxisArray{Tuple{Int64, Int64}, 2, Tuple{Int64, Int64}} with 3 entries:\n [1, 1] = (1, 1)\n [1, 2] = (1, 2)\n [2, 2] = (2, 2)","category":"page"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"The [indices; condition] syntax is used:","category":"page"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"julia> x = Containers.@container([i = 1:3, j = [:A, :B]; i > 1], (i, j))\nJuMP.Containers.SparseAxisArray{Tuple{Int64, Symbol}, 2, Tuple{Int64, Symbol}} with 4 entries:\n [2, A] = (2, :A)\n [2, B] = (2, :B)\n [3, A] = (3, :A)\n [3, B] = (3, :B)","category":"page"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"Here we have the index sets i = 1:3, j = [:A, :B], followed by ;, and then a condition, which evaluates to true or false: i > 1.","category":"page"},{"location":"manual/containers/#Slicing-3","page":"Containers","title":"Slicing","text":"","category":"section"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"Slicing is supported:","category":"page"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"julia> y = x[:, :B]\nJuMP.Containers.SparseAxisArray{Tuple{Int64, Symbol}, 1, Tuple{Int64}} with 2 entries:\n [2] = (2, :B)\n [3] = (3, :B)","category":"page"},{"location":"manual/containers/#Looping-3","page":"Containers","title":"Looping","text":"","category":"section"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"Use eachindex to loop over the elements:","category":"page"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"julia> for key in eachindex(x)\n println(x[key])\n end\n(2, :A)\n(2, :B)\n(3, :A)\n(3, :B)\n\njulia> for key in eachindex(y)\n println(y[key])\n end\n(2, :B)\n(3, :B)","category":"page"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"warning: Warning\nIf you use a macro to construct a SparseAxisArray, then the iteration order is row-major, that is, indices are varied from right to left. As an example, when iterating over x above, the j index is iterated, keeping i constant. This order is in contrast to Base.Arrays, which iterate in column-major order, that is, by varying indices from left to right.","category":"page"},{"location":"manual/containers/#Broadcasting-3","page":"Containers","title":"Broadcasting","text":"","category":"section"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"Broadcasting over a SparseAxisArray returns a SparseAxisArray","category":"page"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"julia> swap(x::Tuple) = (last(x), first(x))\nswap (generic function with 1 method)\n\njulia> swap.(y)\nJuMP.Containers.SparseAxisArray{Tuple{Symbol, Int64}, 1, Tuple{Int64}} with 2 entries:\n [2] = (:B, 2)\n [3] = (:B, 3)","category":"page"},{"location":"manual/containers/#Tables-3","page":"Containers","title":"Tables","text":"","category":"section"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"Use Containers.rowtable to convert the SparseAxisArray into a Tables.jl compatible Vector{<:NamedTuple}:","category":"page"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"julia> table = Containers.rowtable(x; header = [:I, :J, :value])\n4-element Vector{@NamedTuple{I::Int64, J::Symbol, value::Tuple{Int64, Symbol}}}:\n (I = 2, J = :A, value = (2, :A))\n (I = 2, J = :B, value = (2, :B))\n (I = 3, J = :A, value = (3, :A))\n (I = 3, J = :B, value = (3, :B))","category":"page"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"Because it supports the Tables.jl interface, you can pass it to any function which accepts a table as input:","category":"page"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"julia> import DataFrames;\n\njulia> DataFrames.DataFrame(table)\n4×3 DataFrame\n Row │ I J value\n │ Int64 Symbol Tuple…\n─────┼────────────────────────\n 1 │ 2 A (2, :A)\n 2 │ 2 B (2, :B)\n 3 │ 3 A (3, :A)\n 4 │ 3 B (3, :B)","category":"page"},{"location":"manual/containers/#Keyword-indexing-2","page":"Containers","title":"Keyword indexing","text":"","category":"section"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"If all axes are named, you can use keyword indexing:","category":"page"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"julia> x[i = 2, j = :A]\n(2, :A)\n\njulia> x[i = :, j = :B]\nJuMP.Containers.SparseAxisArray{Tuple{Int64, Symbol}, 1, Tuple{Int64}} with 2 entries:\n [2] = (2, :B)\n [3] = (3, :B)","category":"page"},{"location":"manual/containers/#Forcing-the-container-type","page":"Containers","title":"Forcing the container type","text":"","category":"section"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"Pass container = T to use T as the container. For example:","category":"page"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"julia> Containers.@container([i = 1:2, j = 1:2], i + j, container = Array)\n2×2 Matrix{Int64}:\n 2 3\n 3 4\n\njulia> Containers.@container([i = 1:2, j = 1:2], i + j, container = Dict)\nDict{Tuple{Int64, Int64}, Int64} with 4 entries:\n (1, 2) => 3\n (1, 1) => 2\n (2, 2) => 4\n (2, 1) => 3","category":"page"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"You can also pass DenseAxisArray or SparseAxisArray.","category":"page"},{"location":"manual/containers/#How-different-container-types-are-chosen","page":"Containers","title":"How different container types are chosen","text":"","category":"section"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"If the compiler can prove at compile time that the index sets are rectangular, and indexed by a compact set of integers that start at 1, Containers.@container will return an array. This is the case if your index sets are visible to the macro as 1:n:","category":"page"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"julia> Containers.@container([i=1:3, j=1:5], i + j)\n3×5 Matrix{Int64}:\n 2 3 4 5 6\n 3 4 5 6 7\n 4 5 6 7 8","category":"page"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"or an instance of Base.OneTo:","category":"page"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"julia> set = Base.OneTo(3)\nBase.OneTo(3)\n\njulia> Containers.@container([i=set, j=1:5], i + j)\n3×5 Matrix{Int64}:\n 2 3 4 5 6\n 3 4 5 6 7\n 4 5 6 7 8","category":"page"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"If the compiler can prove that the index set is rectangular, but not necessarily of the form 1:n at compile time, then a Containers.DenseAxisArray will be constructed instead:","category":"page"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"julia> set = 1:3\n1:3\n\njulia> Containers.@container([i=set, j=1:5], i + j)\n2-dimensional DenseAxisArray{Int64,2,...} with index sets:\n Dimension 1, 1:3\n Dimension 2, Base.OneTo(5)\nAnd data, a 3×5 Matrix{Int64}:\n 2 3 4 5 6\n 3 4 5 6 7\n 4 5 6 7 8","category":"page"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"info: Info\nWhat happened here? Although we know that set contains 1:3, at compile time the typeof(set) is a UnitRange{Int}. Therefore, Julia can't prove that the range starts at 1 (it only finds this out at runtime), and it defaults to a DenseAxisArray. The case where we explicitly wrote i = 1:3 worked because the macro can \"see\" the 1 at compile time.","category":"page"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"However, if you know that the indices do form an Array, you can force the container type with container = Array:","category":"page"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"julia> set = 1:3\n1:3\n\njulia> Containers.@container([i=set, j=1:5], i + j, container = Array)\n3×5 Matrix{Int64}:\n 2 3 4 5 6\n 3 4 5 6 7\n 4 5 6 7 8","category":"page"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"Here's another example with something similar:","category":"page"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"julia> a = 1\n1\n\njulia> Containers.@container([i=a:3, j=1:5], i + j)\n2-dimensional DenseAxisArray{Int64,2,...} with index sets:\n Dimension 1, 1:3\n Dimension 2, Base.OneTo(5)\nAnd data, a 3×5 Matrix{Int64}:\n 2 3 4 5 6\n 3 4 5 6 7\n 4 5 6 7 8\n\njulia> Containers.@container([i=1:a, j=1:5], i + j)\n1×5 Matrix{Int64}:\n 2 3 4 5 6","category":"page"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"Finally, if the compiler cannot prove that the index set is rectangular, a Containers.SparseAxisArray will be created.","category":"page"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"This occurs when some indices depend on a previous one:","category":"page"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"julia> Containers.@container([i=1:3, j=1:i], i + j)\nJuMP.Containers.SparseAxisArray{Int64, 2, Tuple{Int64, Int64}} with 6 entries:\n [1, 1] = 2\n [2, 1] = 3\n [2, 2] = 4\n [3, 1] = 4\n [3, 2] = 5\n [3, 3] = 6","category":"page"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"or if there is a condition on the index sets:","category":"page"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"julia> Containers.@container([i = 1:5; isodd(i)], i^2)\nJuMP.Containers.SparseAxisArray{Int64, 1, Tuple{Int64}} with 3 entries:\n [1] = 1\n [3] = 9\n [5] = 25","category":"page"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"The condition can depend on multiple indices, the only requirement is that it is an expression that returns true or false:","category":"page"},{"location":"manual/containers/","page":"Containers","title":"Containers","text":"julia> condition(i, j) = isodd(i) && iseven(j)\ncondition (generic function with 1 method)\n\njulia> Containers.@container([i = 1:2, j = 1:4; condition(i, j)], i + j)\nJuMP.Containers.SparseAxisArray{Int64, 2, Tuple{Int64, Int64}} with 2 entries:\n [1, 2] = 3\n [1, 4] = 5","category":"page"},{"location":"moi/manual/solutions/","page":"Solutions","title":"Solutions","text":"EditURL = \"https://github.com/jump-dev/MathOptInterface.jl/blob/v1.34.0/docs/src/manual/solutions.md\"","category":"page"},{"location":"moi/manual/solutions/","page":"Solutions","title":"Solutions","text":"CurrentModule = MathOptInterface\nDocTestSetup = quote\n import MathOptInterface as MOI\nend\nDocTestFilters = [r\"MathOptInterface|MOI\"]","category":"page"},{"location":"moi/manual/solutions/#manual_solutions","page":"Solutions","title":"Solutions","text":"","category":"section"},{"location":"moi/manual/solutions/#Solving-and-retrieving-the-results","page":"Solutions","title":"Solving and retrieving the results","text":"","category":"section"},{"location":"moi/manual/solutions/","page":"Solutions","title":"Solutions","text":"Once an optimizer is loaded with the objective function and all of the constraints, we can ask the solver to solve the model by calling optimize!.","category":"page"},{"location":"moi/manual/solutions/","page":"Solutions","title":"Solutions","text":"MOI.optimize!(optimizer)","category":"page"},{"location":"moi/manual/solutions/#Why-did-the-solver-stop?","page":"Solutions","title":"Why did the solver stop?","text":"","category":"section"},{"location":"moi/manual/solutions/","page":"Solutions","title":"Solutions","text":"The optimization procedure may stop for a number of reasons. The TerminationStatus attribute of the optimizer returns a TerminationStatusCode object which explains why the solver stopped.","category":"page"},{"location":"moi/manual/solutions/","page":"Solutions","title":"Solutions","text":"The termination statuses distinguish between proofs of optimality, infeasibility, local convergence, limits, and termination because of something unexpected like invalid problem data or failure to converge.","category":"page"},{"location":"moi/manual/solutions/","page":"Solutions","title":"Solutions","text":"A typical usage of the TerminationStatus attribute is as follows:","category":"page"},{"location":"moi/manual/solutions/","page":"Solutions","title":"Solutions","text":"status = MOI.get(optimizer, TerminationStatus())\nif status == MOI.OPTIMAL\n # Ok, we solved the problem!\nelse\n # Handle other cases.\nend","category":"page"},{"location":"moi/manual/solutions/","page":"Solutions","title":"Solutions","text":"After checking the TerminationStatus, check ResultCount. This attribute returns the number of results that the solver has available to return. A result is defined as a primal-dual pair, but either the primal or the dual may be missing from the result. While the OPTIMAL termination status normally implies that at least one result is available, other statuses do not. For example, in the case of infeasibility, a solver may return no result or a proof of infeasibility. The ResultCount attribute distinguishes between these two cases.","category":"page"},{"location":"moi/manual/solutions/#Primal-solutions","page":"Solutions","title":"Primal solutions","text":"","category":"section"},{"location":"moi/manual/solutions/","page":"Solutions","title":"Solutions","text":"Use the PrimalStatus optimizer attribute to return a ResultStatusCode describing the status of the primal solution.","category":"page"},{"location":"moi/manual/solutions/","page":"Solutions","title":"Solutions","text":"Common returns are described below in the Common status situations section.","category":"page"},{"location":"moi/manual/solutions/","page":"Solutions","title":"Solutions","text":"Query the primal solution using the VariablePrimal and ConstraintPrimal attributes.","category":"page"},{"location":"moi/manual/solutions/","page":"Solutions","title":"Solutions","text":"Query the objective function value using the ObjectiveValue attribute.","category":"page"},{"location":"moi/manual/solutions/#Dual-solutions","page":"Solutions","title":"Dual solutions","text":"","category":"section"},{"location":"moi/manual/solutions/","page":"Solutions","title":"Solutions","text":"warning: Warning\nSee Duality for a discussion of the MOI conventions for primal-dual pairs and certificates.","category":"page"},{"location":"moi/manual/solutions/","page":"Solutions","title":"Solutions","text":"Use the DualStatus optimizer attribute to return a ResultStatusCode describing the status of the dual solution.","category":"page"},{"location":"moi/manual/solutions/","page":"Solutions","title":"Solutions","text":"Query the dual solution using the ConstraintDual attribute.","category":"page"},{"location":"moi/manual/solutions/","page":"Solutions","title":"Solutions","text":"Query the dual objective function value using the DualObjectiveValue attribute.","category":"page"},{"location":"moi/manual/solutions/#Common-status-situations","page":"Solutions","title":"Common status situations","text":"","category":"section"},{"location":"moi/manual/solutions/","page":"Solutions","title":"Solutions","text":"The sections below describe how to interpret typical or interesting status cases for three common classes of solvers. The example cases are illustrative, not comprehensive. Solver wrappers may provide additional information on how the solver's statuses map to MOI statuses.","category":"page"},{"location":"moi/manual/solutions/","page":"Solutions","title":"Solutions","text":"info: Info\n* in the tables indicate that multiple different values are possible.","category":"page"},{"location":"moi/manual/solutions/#Primal-dual-convex-solver","page":"Solutions","title":"Primal-dual convex solver","text":"","category":"section"},{"location":"moi/manual/solutions/","page":"Solutions","title":"Solutions","text":"Linear programming and conic optimization solvers fall into this category.","category":"page"},{"location":"moi/manual/solutions/","page":"Solutions","title":"Solutions","text":"What happened? TerminationStatus ResultCount PrimalStatus DualStatus\nProved optimality OPTIMAL 1 FEASIBLE_POINT FEASIBLE_POINT\nProved infeasible INFEASIBLE 1 NO_SOLUTION INFEASIBILITY_CERTIFICATE\nOptimal within relaxed tolerances ALMOST_OPTIMAL 1 FEASIBLE_POINT FEASIBLE_POINT\nOptimal within relaxed tolerances ALMOST_OPTIMAL 1 ALMOST_FEASIBLE_POINT ALMOST_FEASIBLE_POINT\nDetected an unbounded ray of the primal DUAL_INFEASIBLE 1 INFEASIBILITY_CERTIFICATE NO_SOLUTION\nStall SLOW_PROGRESS 1 * *","category":"page"},{"location":"moi/manual/solutions/#Global-branch-and-bound-solvers","page":"Solutions","title":"Global branch-and-bound solvers","text":"","category":"section"},{"location":"moi/manual/solutions/","page":"Solutions","title":"Solutions","text":"Mixed-integer programming solvers fall into this category.","category":"page"},{"location":"moi/manual/solutions/","page":"Solutions","title":"Solutions","text":"What happened? TerminationStatus ResultCount PrimalStatus DualStatus\nProved optimality OPTIMAL 1 FEASIBLE_POINT NO_SOLUTION\nPresolve detected infeasibility or unboundedness INFEASIBLE_OR_UNBOUNDED 0 NO_SOLUTION NO_SOLUTION\nProved infeasibility INFEASIBLE 0 NO_SOLUTION NO_SOLUTION\nTimed out (no solution) TIME_LIMIT 0 NO_SOLUTION NO_SOLUTION\nTimed out (with a solution) TIME_LIMIT 1 FEASIBLE_POINT NO_SOLUTION\nCPXMIP_OPTIMAL_INFEAS ALMOST_OPTIMAL 1 INFEASIBLE_POINT NO_SOLUTION","category":"page"},{"location":"moi/manual/solutions/","page":"Solutions","title":"Solutions","text":"info: Info\nCPXMIP_OPTIMAL_INFEAS is a CPLEX status that indicates that a preprocessed problem was solved to optimality, but the solver was unable to recover a feasible solution to the original problem. Handling this status was one of the motivating drivers behind the design of MOI.","category":"page"},{"location":"moi/manual/solutions/#Local-search-solvers","page":"Solutions","title":"Local search solvers","text":"","category":"section"},{"location":"moi/manual/solutions/","page":"Solutions","title":"Solutions","text":"Nonlinear programming solvers fall into this category. It also includes non-global tree search solvers like Juniper.","category":"page"},{"location":"moi/manual/solutions/","page":"Solutions","title":"Solutions","text":"What happened? TerminationStatus ResultCount PrimalStatus DualStatus\nConverged to a stationary point LOCALLY_SOLVED 1 FEASIBLE_POINT FEASIBLE_POINT\nCompleted a non-global tree search (with a solution) LOCALLY_SOLVED 1 FEASIBLE_POINT FEASIBLE_POINT\nConverged to an infeasible point LOCALLY_INFEASIBLE 1 INFEASIBLE_POINT *\nCompleted a non-global tree search (no solution found) LOCALLY_INFEASIBLE 0 NO_SOLUTION NO_SOLUTION\nIteration limit ITERATION_LIMIT 1 * *\nDiverging iterates NORM_LIMIT or OBJECTIVE_LIMIT 1 * *","category":"page"},{"location":"moi/manual/solutions/#Querying-solution-attributes","page":"Solutions","title":"Querying solution attributes","text":"","category":"section"},{"location":"moi/manual/solutions/","page":"Solutions","title":"Solutions","text":"Some solvers will not implement every solution attribute. Therefore, a call like MOI.get(model, MOI.SolveTimeSec()) may throw an UnsupportedAttribute error.","category":"page"},{"location":"moi/manual/solutions/","page":"Solutions","title":"Solutions","text":"If you need to write code that is agnostic to the solver (for example, you are writing a library that an end-user passes their choice of solver to), you can work-around this problem using a try-catch:","category":"page"},{"location":"moi/manual/solutions/","page":"Solutions","title":"Solutions","text":"function get_solve_time(model)\n try\n return MOI.get(model, MOI.SolveTimeSec())\n catch err\n if err isa MOI.UnsupportedAttribute\n return NaN # Solver doesn't support. Return a placeholder value.\n end\n rethrow(err) # Something else went wrong. Rethrow the error\n end\nend","category":"page"},{"location":"moi/manual/solutions/","page":"Solutions","title":"Solutions","text":"If, after careful profiling, you find that the try-catch is taking a significant portion of your runtime, you can improve performance by caching the result of the try-catch:","category":"page"},{"location":"moi/manual/solutions/","page":"Solutions","title":"Solutions","text":"mutable struct CachedSolveTime{M}\n model::M\n supports_solve_time::Bool\n CachedSolveTime(model::M) where {M} = new(model, true)\nend\n\nfunction get_solve_time(model::CachedSolveTime)\n if !model.supports_solve_time\n return NaN\n end\n try\n return MOI.get(model, MOI.SolveTimeSec())\n catch err\n if err isa MOI.UnsupportedAttribute\n model.supports_solve_time = false\n return NaN\n end\n rethrow(err) # Something else went wrong. Rethrow the error\n end\nend","category":"page"},{"location":"tutorials/getting_started/introduction/#Introduction","page":"Introduction","title":"Introduction","text":"","category":"section"},{"location":"tutorials/getting_started/introduction/","page":"Introduction","title":"Introduction","text":"The purpose of these \"Getting started\" tutorials is to teach new users the basics of Julia and JuMP.","category":"page"},{"location":"tutorials/getting_started/introduction/#How-these-tutorials-are-structured","page":"Introduction","title":"How these tutorials are structured","text":"","category":"section"},{"location":"tutorials/getting_started/introduction/","page":"Introduction","title":"Introduction","text":"Having a high-level overview of how this part of the documentation is structured will help you know where to look for certain things.","category":"page"},{"location":"tutorials/getting_started/introduction/","page":"Introduction","title":"Introduction","text":"The \"Getting started with\" tutorials are basic introductions to different aspects of JuMP and Julia. If you are new to JuMP and Julia, start by reading them in the following order:\nGetting started with Julia\nGetting started with JuMP\nGetting started with sets and indexing\nGetting started with data and plotting\nJulia has a reputation for being \"fast.\" Unfortunately, it is also easy to write slow Julia code. Performance tips contains a number of important tips on how to improve the performance of models you write in JuMP.\nDesign patterns for larger models is a more advanced tutorial that is aimed at users writing large JuMP models. It's in the \"Getting started\" section to give you an early preview of how JuMP makes it easy to structure larger models. If you are new to JuMP you may want to skip or briefly skim this tutorial, and come back to it once you have written a few JuMP models.","category":"page"},{"location":"tutorials/applications/two_stage_stochastic/","page":"Two-stage stochastic programs","title":"Two-stage stochastic programs","text":"EditURL = \"two_stage_stochastic.jl\"","category":"page"},{"location":"tutorials/applications/two_stage_stochastic/#Two-stage-stochastic-programs","page":"Two-stage stochastic programs","title":"Two-stage stochastic programs","text":"","category":"section"},{"location":"tutorials/applications/two_stage_stochastic/","page":"Two-stage stochastic programs","title":"Two-stage stochastic programs","text":"This tutorial was generated using Literate.jl. Download the source as a .jl file.","category":"page"},{"location":"tutorials/applications/two_stage_stochastic/","page":"Two-stage stochastic programs","title":"Two-stage stochastic programs","text":"The purpose of this tutorial is to demonstrate how to model and solve a two-stage stochastic program.","category":"page"},{"location":"tutorials/applications/two_stage_stochastic/","page":"Two-stage stochastic programs","title":"Two-stage stochastic programs","text":"info: Info\nThe JuMP extension InfiniteOpt.jl can also be used to model and solve two-stage stochastic programs. The JuMP extension SDDP.jl can be used to model and solve multi-stage stochastic programs.","category":"page"},{"location":"tutorials/applications/two_stage_stochastic/","page":"Two-stage stochastic programs","title":"Two-stage stochastic programs","text":"This tutorial uses the following packages","category":"page"},{"location":"tutorials/applications/two_stage_stochastic/","page":"Two-stage stochastic programs","title":"Two-stage stochastic programs","text":"using JuMP\nimport Distributions\nimport HiGHS\nimport Plots\nimport StatsPlots\nimport Statistics","category":"page"},{"location":"tutorials/applications/two_stage_stochastic/#Background","page":"Two-stage stochastic programs","title":"Background","text":"","category":"section"},{"location":"tutorials/applications/two_stage_stochastic/","page":"Two-stage stochastic programs","title":"Two-stage stochastic programs","text":"During the week, you are a busy practitioner of Operations Research. To escape the drudgery of mathematics, you decide to open a side business selling creamy mushroom pies with puff pastry. After a few weeks, it quickly becomes apparent that operating a food business is not so easy.","category":"page"},{"location":"tutorials/applications/two_stage_stochastic/","page":"Two-stage stochastic programs","title":"Two-stage stochastic programs","text":"The pies must be prepared in the morning, before you open for the day and can gauge the level of demand. If you bake too many, the unsold pies at the end of the day must be discarded and you have wasted time and money on their production. But if you bake too few, then there may be un-served customers and you could have made more money by baking more pies.","category":"page"},{"location":"tutorials/applications/two_stage_stochastic/","page":"Two-stage stochastic programs","title":"Two-stage stochastic programs","text":"After a few weeks of poor decision making, you decide to put your knowledge of Operations Research to good use, starting with some data collection.","category":"page"},{"location":"tutorials/applications/two_stage_stochastic/","page":"Two-stage stochastic programs","title":"Two-stage stochastic programs","text":"Each pie costs you $2 to make, and you sell them at $5 each. Disposal of an unsold pie costs $0.10. Based on three weeks of data collected, in which you made 200 pies each week, you sold 150, 190, and 200 pies. Thus, as a guess, you assume a triangular distribution of demand with a minimum of 150, a median of 200, and a maximum of 250.","category":"page"},{"location":"tutorials/applications/two_stage_stochastic/","page":"Two-stage stochastic programs","title":"Two-stage stochastic programs","text":"We can model this problem by a two-stage stochastic program. In the first stage, we decide a quantity of pies to make x. We make this decision before we observe the demand d_omega. In the second stage, we sell y_omega pies, and incur any costs for unsold pies.","category":"page"},{"location":"tutorials/applications/two_stage_stochastic/","page":"Two-stage stochastic programs","title":"Two-stage stochastic programs","text":"We can formulate this problem as follows:","category":"page"},{"location":"tutorials/applications/two_stage_stochastic/","page":"Two-stage stochastic programs","title":"Two-stage stochastic programs","text":"beginaligned\nmaxlimits_xy_omega -2x + mathbbE_omega5y_omega - 01(x - y_omega) \n y_omega le x quad forall omega in Omega \n 0 le y_omega le d_omega quad forall omega in Omega \n x ge 0\nendaligned","category":"page"},{"location":"tutorials/applications/two_stage_stochastic/#Sample-Average-approximation","page":"Two-stage stochastic programs","title":"Sample Average approximation","text":"","category":"section"},{"location":"tutorials/applications/two_stage_stochastic/","page":"Two-stage stochastic programs","title":"Two-stage stochastic programs","text":"If the distribution of demand is continuous, then our problem has an infinite number of variables and constraints. To form a computationally tractable problem, we instead use a finite set of samples drawn from the distribution. This is called sample average approximation (SAA).","category":"page"},{"location":"tutorials/applications/two_stage_stochastic/","page":"Two-stage stochastic programs","title":"Two-stage stochastic programs","text":"D = Distributions.TriangularDist(150.0, 250.0, 200.0)\nN = 100\nd = sort!(rand(D, N));\nΩ = 1:N\nP = fill(1 / N, N);\nStatsPlots.histogram(d; bins = 20, label = \"\", xlabel = \"Demand\")","category":"page"},{"location":"tutorials/applications/two_stage_stochastic/#JuMP-model","page":"Two-stage stochastic programs","title":"JuMP model","text":"","category":"section"},{"location":"tutorials/applications/two_stage_stochastic/","page":"Two-stage stochastic programs","title":"Two-stage stochastic programs","text":"The implementation of our two-stage stochastic program in JuMP is:","category":"page"},{"location":"tutorials/applications/two_stage_stochastic/","page":"Two-stage stochastic programs","title":"Two-stage stochastic programs","text":"model = Model(HiGHS.Optimizer)\nset_silent(model)\n@variable(model, x >= 0)\n@variable(model, 0 <= y[ω in Ω] <= d[ω])\n@constraint(model, [ω in Ω], y[ω] <= x)\n@expression(model, z[ω in Ω], 5y[ω] - 0.1 * (x - y[ω]))\n@objective(model, Max, -2x + sum(P[ω] * z[ω] for ω in Ω))\noptimize!(model)\n@assert is_solved_and_feasible(model)\nsolution_summary(model)","category":"page"},{"location":"tutorials/applications/two_stage_stochastic/","page":"Two-stage stochastic programs","title":"Two-stage stochastic programs","text":"The optimal number of pies to make is:","category":"page"},{"location":"tutorials/applications/two_stage_stochastic/","page":"Two-stage stochastic programs","title":"Two-stage stochastic programs","text":"value(x)","category":"page"},{"location":"tutorials/applications/two_stage_stochastic/","page":"Two-stage stochastic programs","title":"Two-stage stochastic programs","text":"The distribution of total profit is:","category":"page"},{"location":"tutorials/applications/two_stage_stochastic/","page":"Two-stage stochastic programs","title":"Two-stage stochastic programs","text":"total_profit = [-2 * value(x) + value(z[ω]) for ω in Ω]","category":"page"},{"location":"tutorials/applications/two_stage_stochastic/","page":"Two-stage stochastic programs","title":"Two-stage stochastic programs","text":"Let's plot it:","category":"page"},{"location":"tutorials/applications/two_stage_stochastic/","page":"Two-stage stochastic programs","title":"Two-stage stochastic programs","text":"\"\"\"\n bin_distribution(x::Vector{Float64}, N::Int)\n\nA helper function that discretizes `x` into bins of width `N`.\n\"\"\"\nbin_distribution(x, N) = N * (floor(minimum(x) / N):ceil(maximum(x) / N))\n\nplot = StatsPlots.histogram(\n total_profit;\n bins = bin_distribution(total_profit, 25),\n label = \"\",\n xlabel = \"Profit [\\$]\",\n ylabel = \"Number of outcomes\",\n)\nμ = Statistics.mean(total_profit)\nPlots.vline!(\n plot,\n [μ];\n label = \"Expected profit (\\$$(round(Int, μ)))\",\n linewidth = 3,\n)\nplot","category":"page"},{"location":"tutorials/applications/two_stage_stochastic/#Risk-measures","page":"Two-stage stochastic programs","title":"Risk measures","text":"","category":"section"},{"location":"tutorials/applications/two_stage_stochastic/","page":"Two-stage stochastic programs","title":"Two-stage stochastic programs","text":"A risk measure is a function which maps a random variable to a real number. Common risk measures include the mean (expectation), median, mode, and maximum. We need a risk measure to convert the distribution of second stage costs into a single number that can be optimized.","category":"page"},{"location":"tutorials/applications/two_stage_stochastic/","page":"Two-stage stochastic programs","title":"Two-stage stochastic programs","text":"Our model currently uses the expectation risk measure, but others are possible too. One popular risk measure is the conditional value at risk (CVaR).","category":"page"},{"location":"tutorials/applications/two_stage_stochastic/","page":"Two-stage stochastic programs","title":"Two-stage stochastic programs","text":"CVaR has a parameter gamma, and it computes the expectation of the worst gamma fraction of outcomes.","category":"page"},{"location":"tutorials/applications/two_stage_stochastic/","page":"Two-stage stochastic programs","title":"Two-stage stochastic programs","text":"If we are maximizing, so that small outcomes are bad, the definition of CVaR is:","category":"page"},{"location":"tutorials/applications/two_stage_stochastic/","page":"Two-stage stochastic programs","title":"Two-stage stochastic programs","text":"CVaR_gammaZ = maxlimits_xi xi - frac1gammamathbbE_omegaleft(xi - Z)_+right","category":"page"},{"location":"tutorials/applications/two_stage_stochastic/","page":"Two-stage stochastic programs","title":"Two-stage stochastic programs","text":"which can be formulated as the linear program:","category":"page"},{"location":"tutorials/applications/two_stage_stochastic/","page":"Two-stage stochastic programs","title":"Two-stage stochastic programs","text":"beginaligned\nCVaR_gammaZ = maxlimits_xi z_omega xi - frac1gammasum P_omega z_omega\n z_omega ge xi - Z_omega quad forall omega \n z_omega ge 0 quad forall omega\nendaligned","category":"page"},{"location":"tutorials/applications/two_stage_stochastic/","page":"Two-stage stochastic programs","title":"Two-stage stochastic programs","text":"function CVaR(Z::Vector{Float64}, P::Vector{Float64}; γ::Float64)\n @assert 0 < γ <= 1\n N = length(Z)\n model = Model(HiGHS.Optimizer)\n set_silent(model)\n @variable(model, ξ)\n @variable(model, z[1:N] >= 0)\n @constraint(model, [i in 1:N], z[i] >= ξ - Z[i])\n @objective(model, Max, ξ - 1 / γ * sum(P[i] * z[i] for i in 1:N))\n optimize!(model)\n @assert is_solved_and_feasible(model)\n return objective_value(model)\nend","category":"page"},{"location":"tutorials/applications/two_stage_stochastic/","page":"Two-stage stochastic programs","title":"Two-stage stochastic programs","text":"When γ is 1.0, we compute the mean of the profit:","category":"page"},{"location":"tutorials/applications/two_stage_stochastic/","page":"Two-stage stochastic programs","title":"Two-stage stochastic programs","text":"cvar_10 = CVaR(total_profit, P; γ = 1.0)","category":"page"},{"location":"tutorials/applications/two_stage_stochastic/","page":"Two-stage stochastic programs","title":"Two-stage stochastic programs","text":"Statistics.mean(total_profit)","category":"page"},{"location":"tutorials/applications/two_stage_stochastic/","page":"Two-stage stochastic programs","title":"Two-stage stochastic programs","text":"As γ approaches 0.0, we compute the worst-case (minimum) profit:","category":"page"},{"location":"tutorials/applications/two_stage_stochastic/","page":"Two-stage stochastic programs","title":"Two-stage stochastic programs","text":"cvar_00 = CVaR(total_profit, P; γ = 0.0001)","category":"page"},{"location":"tutorials/applications/two_stage_stochastic/","page":"Two-stage stochastic programs","title":"Two-stage stochastic programs","text":"minimum(total_profit)","category":"page"},{"location":"tutorials/applications/two_stage_stochastic/","page":"Two-stage stochastic programs","title":"Two-stage stochastic programs","text":"By varying γ between 0 and 1 we can compute some trade-off of these two extremes:","category":"page"},{"location":"tutorials/applications/two_stage_stochastic/","page":"Two-stage stochastic programs","title":"Two-stage stochastic programs","text":"cvar_05 = CVaR(total_profit, P; γ = 0.5)","category":"page"},{"location":"tutorials/applications/two_stage_stochastic/","page":"Two-stage stochastic programs","title":"Two-stage stochastic programs","text":"Let's plot these outcomes on our distribution:","category":"page"},{"location":"tutorials/applications/two_stage_stochastic/","page":"Two-stage stochastic programs","title":"Two-stage stochastic programs","text":"plot = StatsPlots.histogram(\n total_profit;\n bins = bin_distribution(total_profit, 25),\n label = \"\",\n xlabel = \"Profit [\\$]\",\n ylabel = \"Number of outcomes\",\n)\nPlots.vline!(\n plot,\n [cvar_10 cvar_05 cvar_00];\n label = [\"γ = 1.0\" \"γ = 0.5\" \"γ = 0.0\"],\n linewidth = 3,\n)\nplot","category":"page"},{"location":"tutorials/applications/two_stage_stochastic/#Risk-averse-sample-average-approximation","page":"Two-stage stochastic programs","title":"Risk averse sample average approximation","text":"","category":"section"},{"location":"tutorials/applications/two_stage_stochastic/","page":"Two-stage stochastic programs","title":"Two-stage stochastic programs","text":"Because CVaR can be formulated as a linear program, we can form a risk averse sample average approximation model by combining the two formulations:","category":"page"},{"location":"tutorials/applications/two_stage_stochastic/","page":"Two-stage stochastic programs","title":"Two-stage stochastic programs","text":"γ = 0.4\nmodel = Model(HiGHS.Optimizer)\nset_silent(model)\n@variable(model, x >= 0)\n@variable(model, 0 <= y[ω in Ω] <= d[ω])\n@constraint(model, [ω in Ω], y[ω] <= x)\n@expression(model, Z[ω in Ω], 5 * y[ω] - 0.1(x - y[ω]))\n@variable(model, ξ)\n@variable(model, z[ω in Ω] >= 0)\n@constraint(model, [ω in Ω], z[ω] >= ξ - Z[ω])\n@objective(model, Max, -2x + ξ - 1 / γ * sum(P[ω] * z[ω] for ω in Ω))\noptimize!(model)\n@assert is_solved_and_feasible(model)","category":"page"},{"location":"tutorials/applications/two_stage_stochastic/","page":"Two-stage stochastic programs","title":"Two-stage stochastic programs","text":"When gamma = 04, the optimal number of pies to bake is:","category":"page"},{"location":"tutorials/applications/two_stage_stochastic/","page":"Two-stage stochastic programs","title":"Two-stage stochastic programs","text":"value(x)","category":"page"},{"location":"tutorials/applications/two_stage_stochastic/","page":"Two-stage stochastic programs","title":"Two-stage stochastic programs","text":"The distribution of total profit is:","category":"page"},{"location":"tutorials/applications/two_stage_stochastic/","page":"Two-stage stochastic programs","title":"Two-stage stochastic programs","text":"risk_averse_total_profit = [value(-2x + Z[ω]) for ω in Ω]\nbins = bin_distribution([total_profit; risk_averse_total_profit], 25)\nplot = StatsPlots.histogram(total_profit; label = \"Expectation\", bins = bins)\nStatsPlots.histogram!(\n plot,\n risk_averse_total_profit;\n label = \"CV@R\",\n bins = bins,\n alpha = 0.5,\n)\nplot","category":"page"},{"location":"tutorials/applications/two_stage_stochastic/#Next-steps","page":"Two-stage stochastic programs","title":"Next steps","text":"","category":"section"},{"location":"tutorials/applications/two_stage_stochastic/","page":"Two-stage stochastic programs","title":"Two-stage stochastic programs","text":"Try solving this problem for different numbers of samples and different distributions.\nRefactor the example to avoid hard-coding the costs. What happens to the solution if the cost of disposing unsold pies increases?\nPlot the optimal number of pies to make for different values of the risk aversion parameter gamma. What is the relationship?","category":"page"},{"location":"packages/solvers/#Introduction","page":"Introduction","title":"Introduction","text":"","category":"section"},{"location":"packages/solvers/","page":"Introduction","title":"Introduction","text":"This section of the documentation contains brief documentation for some of the solvers that JuMP supports. The list of solvers is not exhaustive, but instead is intended to help you discover commonly used solvers.","category":"page"},{"location":"packages/solvers/#Affiliation","page":"Introduction","title":"Affiliation","text":"","category":"section"},{"location":"packages/solvers/","page":"Introduction","title":"Introduction","text":"Packages beginning with jump-dev/ are developed and maintained by the JuMP developers. In many cases, these packages wrap external solvers that are not developed by the JuMP developers and, while the Julia packages are all open-source, in some cases the solvers themselves are closed source commercial products.","category":"page"},{"location":"packages/solvers/","page":"Introduction","title":"Introduction","text":"Packages that do not begin with jump-dev/ are developed independently. The developers of these packages requested or consented to the inclusion of their README contents in the JuMP documentation for the benefit of users.","category":"page"},{"location":"packages/solvers/#Adding-new-solvers","page":"Introduction","title":"Adding new solvers","text":"","category":"section"},{"location":"packages/solvers/","page":"Introduction","title":"Introduction","text":"Written a solver? Add it to this section of the JuMP documentation by making a pull request to the docs/packages.toml file.","category":"page"},{"location":"packages/MathOptAI/","page":"lanl-ansi/MathOptAI.jl","title":"lanl-ansi/MathOptAI.jl","text":"EditURL = \"https://github.com/lanl-ansi/MathOptAI.jl/blob/v0.1.2/README.md\"","category":"page"},{"location":"packages/MathOptAI/","page":"lanl-ansi/MathOptAI.jl","title":"lanl-ansi/MathOptAI.jl","text":"(Image: )","category":"page"},{"location":"packages/MathOptAI/#MathOptAI.jl","page":"lanl-ansi/MathOptAI.jl","title":"MathOptAI.jl","text":"","category":"section"},{"location":"packages/MathOptAI/","page":"lanl-ansi/MathOptAI.jl","title":"lanl-ansi/MathOptAI.jl","text":"(Image: Build Status) (Image: codecov)","category":"page"},{"location":"packages/MathOptAI/","page":"lanl-ansi/MathOptAI.jl","title":"lanl-ansi/MathOptAI.jl","text":"MathOptAI.jl is a JuMP extension for embedding trained AI, machine learning, and statistical learning models into a JuMP optimization model.","category":"page"},{"location":"packages/MathOptAI/#License","page":"lanl-ansi/MathOptAI.jl","title":"License","text":"","category":"section"},{"location":"packages/MathOptAI/","page":"lanl-ansi/MathOptAI.jl","title":"lanl-ansi/MathOptAI.jl","text":"MathOptAI.jl is provided under a BSD-3 license as part of the Optimization and Machine Learning Toolbox project, O4806.","category":"page"},{"location":"packages/MathOptAI/","page":"lanl-ansi/MathOptAI.jl","title":"lanl-ansi/MathOptAI.jl","text":"See LICENSE.md for details.","category":"page"},{"location":"packages/MathOptAI/","page":"lanl-ansi/MathOptAI.jl","title":"lanl-ansi/MathOptAI.jl","text":"Despite the name similarity, this project is not affiliated with OMLT, the Optimization and Machine Learning Toolkit.","category":"page"},{"location":"packages/MathOptAI/#Installation","page":"lanl-ansi/MathOptAI.jl","title":"Installation","text":"","category":"section"},{"location":"packages/MathOptAI/","page":"lanl-ansi/MathOptAI.jl","title":"lanl-ansi/MathOptAI.jl","text":"Install MathOptAI.jl using the Julia package manager:","category":"page"},{"location":"packages/MathOptAI/","page":"lanl-ansi/MathOptAI.jl","title":"lanl-ansi/MathOptAI.jl","text":"import Pkg\nPkg.add(\"MathOptAI\")","category":"page"},{"location":"packages/MathOptAI/#Getting-started","page":"lanl-ansi/MathOptAI.jl","title":"Getting started","text":"","category":"section"},{"location":"packages/MathOptAI/","page":"lanl-ansi/MathOptAI.jl","title":"lanl-ansi/MathOptAI.jl","text":"Here's an example of using MathOptAI to embed a trained neural network from Flux into a JuMP model. The vector of JuMP variables x is fed as input to the neural network. The output y is a vector of JuMP variables that represents the output layer of the neural network. The formulation object stores the additional variables and constraints that were added to model.","category":"page"},{"location":"packages/MathOptAI/","page":"lanl-ansi/MathOptAI.jl","title":"lanl-ansi/MathOptAI.jl","text":"julia> using JuMP, MathOptAI, Flux\n\njulia> predictor = Flux.Chain(\n Flux.Dense(28^2 => 32, Flux.sigmoid),\n Flux.Dense(32 => 10),\n Flux.softmax,\n );\n\njulia> #= Train the Flux model. Code not shown for simplicity =#\n\njulia> model = JuMP.Model();\n\njulia> JuMP.@variable(model, 0 <= x[1:28^2] <= 1);\n\njulia> y, formulation = MathOptAI.add_predictor(model, predictor, x);\n\njulia> y\n10-element Vector{VariableRef}:\n moai_SoftMax[1]\n moai_SoftMax[2]\n moai_SoftMax[3]\n moai_SoftMax[4]\n moai_SoftMax[5]\n moai_SoftMax[6]\n moai_SoftMax[7]\n moai_SoftMax[8]\n moai_SoftMax[9]\n moai_SoftMax[10]","category":"page"},{"location":"packages/MathOptAI/#Documentation","page":"lanl-ansi/MathOptAI.jl","title":"Documentation","text":"","category":"section"},{"location":"packages/MathOptAI/","page":"lanl-ansi/MathOptAI.jl","title":"lanl-ansi/MathOptAI.jl","text":"Documentation is available at https://lanl-ansi.github.io/MathOptAI.jl/dev.","category":"page"},{"location":"packages/MathOptAI/#Getting-help","page":"lanl-ansi/MathOptAI.jl","title":"Getting help","text":"","category":"section"},{"location":"packages/MathOptAI/","page":"lanl-ansi/MathOptAI.jl","title":"lanl-ansi/MathOptAI.jl","text":"For help, questions, comments, and suggestions, please open a GitHub issue.","category":"page"},{"location":"packages/MathOptAI/#Inspiration","page":"lanl-ansi/MathOptAI.jl","title":"Inspiration","text":"","category":"section"},{"location":"packages/MathOptAI/","page":"lanl-ansi/MathOptAI.jl","title":"lanl-ansi/MathOptAI.jl","text":"This project is mainly inspired by two existing projects:","category":"page"},{"location":"packages/MathOptAI/","page":"lanl-ansi/MathOptAI.jl","title":"lanl-ansi/MathOptAI.jl","text":"OMLT\ngurobi-machinelearning","category":"page"},{"location":"packages/MathOptAI/","page":"lanl-ansi/MathOptAI.jl","title":"lanl-ansi/MathOptAI.jl","text":"Other works, from which we took less inspiration, include:","category":"page"},{"location":"packages/MathOptAI/","page":"lanl-ansi/MathOptAI.jl","title":"lanl-ansi/MathOptAI.jl","text":"JANOS\nMeLOn\nENTMOOT\nreluMIP\nOptiCL\nPySCIPOpt-ML","category":"page"},{"location":"packages/MathOptAI/","page":"lanl-ansi/MathOptAI.jl","title":"lanl-ansi/MathOptAI.jl","text":"The 2024 paper of López-Flores et al. is an excellent summary of the state of the field at the time that we started development of MathOptAI.","category":"page"},{"location":"packages/MathOptAI/","page":"lanl-ansi/MathOptAI.jl","title":"lanl-ansi/MathOptAI.jl","text":"López-Flores, F.J., Ramírez-Márquez, C., Ponce-Ortega J.M. (2024). Process Systems Engineering Tools for Optimization of Trained Machine Learning Models: Comparative and Perspective. Industrial & Engineering Chemistry Research, 63(32), 13966-13979. DOI: 10.1021/acs.iecr.4c00632","category":"page"},{"location":"tutorials/algorithms/rolling_horizon/","page":"Rolling horizon problems","title":"Rolling horizon problems","text":"EditURL = \"rolling_horizon.jl\"","category":"page"},{"location":"tutorials/algorithms/rolling_horizon/#Rolling-horizon-problems","page":"Rolling horizon problems","title":"Rolling horizon problems","text":"","category":"section"},{"location":"tutorials/algorithms/rolling_horizon/","page":"Rolling horizon problems","title":"Rolling horizon problems","text":"This tutorial was generated using Literate.jl. Download the source as a .jl file.","category":"page"},{"location":"tutorials/algorithms/rolling_horizon/","page":"Rolling horizon problems","title":"Rolling horizon problems","text":"This tutorial was originally contributed by Diego Tejada.","category":"page"},{"location":"tutorials/algorithms/rolling_horizon/","page":"Rolling horizon problems","title":"Rolling horizon problems","text":"The purpose of this tutorial is to demonstrate how to use ParametricOptInterface.jl to solve a rolling horizon optimization problem.","category":"page"},{"location":"tutorials/algorithms/rolling_horizon/","page":"Rolling horizon problems","title":"Rolling horizon problems","text":"The term \"rolling horizon\" refers to solving a time-dependent model repeatedly, where the planning interval is shifted forward in time during each solution step.","category":"page"},{"location":"tutorials/algorithms/rolling_horizon/","page":"Rolling horizon problems","title":"Rolling horizon problems","text":"As a motivating example, this tutorial models the operations of a power system with solar generation and a battery.","category":"page"},{"location":"tutorials/algorithms/rolling_horizon/#Required-packages","page":"Rolling horizon problems","title":"Required packages","text":"","category":"section"},{"location":"tutorials/algorithms/rolling_horizon/","page":"Rolling horizon problems","title":"Rolling horizon problems","text":"This tutorial uses the following packages","category":"page"},{"location":"tutorials/algorithms/rolling_horizon/","page":"Rolling horizon problems","title":"Rolling horizon problems","text":"using JuMP\nimport CSV\nimport DataFrames\nimport HiGHS\nimport ParametricOptInterface as POI\nimport Plots","category":"page"},{"location":"tutorials/algorithms/rolling_horizon/#The-optimization-model","page":"Rolling horizon problems","title":"The optimization model","text":"","category":"section"},{"location":"tutorials/algorithms/rolling_horizon/","page":"Rolling horizon problems","title":"Rolling horizon problems","text":"The model is a simplified model of a power system's operations with battery storage.","category":"page"},{"location":"tutorials/algorithms/rolling_horizon/","page":"Rolling horizon problems","title":"Rolling horizon problems","text":"We model the system of a set of time-steps t in 1ldotsT, where each time step is a period of one hour.","category":"page"},{"location":"tutorials/algorithms/rolling_horizon/","page":"Rolling horizon problems","title":"Rolling horizon problems","text":"There are five types of decision variables in the model:","category":"page"},{"location":"tutorials/algorithms/rolling_horizon/","page":"Rolling horizon problems","title":"Rolling horizon problems","text":"Renewable production: r_t geq 0\nThermal production: 0 leq p_t leq overlineP\nStorage level: 0 leq s_t leq overlineS\nStorage charging: 0 leq c_t leq overlineC\nStorage discharging: 0 leq d_t leq overlineD","category":"page"},{"location":"tutorials/algorithms/rolling_horizon/","page":"Rolling horizon problems","title":"Rolling horizon problems","text":"For the purpose of this tutorial, there are three parameters of interest:","category":"page"},{"location":"tutorials/algorithms/rolling_horizon/","page":"Rolling horizon problems","title":"Rolling horizon problems","text":"Demand at time t: D_t\nRenewable availability at time t: A_t\nInitial storage: S_0","category":"page"},{"location":"tutorials/algorithms/rolling_horizon/","page":"Rolling horizon problems","title":"Rolling horizon problems","text":"The objective function to minimize is the total cost of thermal generation:","category":"page"},{"location":"tutorials/algorithms/rolling_horizon/","page":"Rolling horizon problems","title":"Rolling horizon problems","text":"min sum_t O cdot p_t","category":"page"},{"location":"tutorials/algorithms/rolling_horizon/","page":"Rolling horizon problems","title":"Rolling horizon problems","text":"For the constraints, we must balance power generation and consumption in all time periods:","category":"page"},{"location":"tutorials/algorithms/rolling_horizon/","page":"Rolling horizon problems","title":"Rolling horizon problems","text":"p_t + r_t + d_t = D_t + c_t forall t","category":"page"},{"location":"tutorials/algorithms/rolling_horizon/","page":"Rolling horizon problems","title":"Rolling horizon problems","text":"We need to account for the dynamics of the battery storage:","category":"page"},{"location":"tutorials/algorithms/rolling_horizon/","page":"Rolling horizon problems","title":"Rolling horizon problems","text":"s_t = s_t-1 + eta^c cdot c_t - fracd_teta^d forall t","category":"page"},{"location":"tutorials/algorithms/rolling_horizon/","page":"Rolling horizon problems","title":"Rolling horizon problems","text":"with the boundary condition that s_0 = S_0.","category":"page"},{"location":"tutorials/algorithms/rolling_horizon/","page":"Rolling horizon problems","title":"Rolling horizon problems","text":"Finally, the level of renewable energy production is limited by the quantity of potential solar generation A:","category":"page"},{"location":"tutorials/algorithms/rolling_horizon/","page":"Rolling horizon problems","title":"Rolling horizon problems","text":"r_t leq A_t quad forall t","category":"page"},{"location":"tutorials/algorithms/rolling_horizon/","page":"Rolling horizon problems","title":"Rolling horizon problems","text":"Solving this problem with a large number of time steps is computationally challenging. A common practice is to use the rolling horizon idea to solve multiple identical problems of a smaller size. These problems differ only in parameters such as demand, renewable availability, and initial storage. By combining the solution of many smaller problems, we can recover a feasible solution to the full problem. However, because we don't optimize the full set of decisions in a single optimization problem, the recovered solution might be suboptimal.","category":"page"},{"location":"tutorials/algorithms/rolling_horizon/#Parameter-definition-and-input-data","page":"Rolling horizon problems","title":"Parameter definition and input data","text":"","category":"section"},{"location":"tutorials/algorithms/rolling_horizon/","page":"Rolling horizon problems","title":"Rolling horizon problems","text":"There are two main parameters for a rolling horizon implementation: the optimization window and the move forward.","category":"page"},{"location":"tutorials/algorithms/rolling_horizon/","page":"Rolling horizon problems","title":"Rolling horizon problems","text":"Optimization Window: this value defines how many periods (for example, hours) we will optimize each time. For this example, we set the default value to 48 hours, meaning we will optimize two days each time.","category":"page"},{"location":"tutorials/algorithms/rolling_horizon/","page":"Rolling horizon problems","title":"Rolling horizon problems","text":"optimization_window = 48;\nnothing #hide","category":"page"},{"location":"tutorials/algorithms/rolling_horizon/","page":"Rolling horizon problems","title":"Rolling horizon problems","text":"Move Forward: this value defines how many periods (for example, hours) we will move forward to optimize the next optimization window. For this example, we set the default value in 24 hours, meaning we will move one day ahead each time.","category":"page"},{"location":"tutorials/algorithms/rolling_horizon/","page":"Rolling horizon problems","title":"Rolling horizon problems","text":"move_forward = 24;\nnothing #hide","category":"page"},{"location":"tutorials/algorithms/rolling_horizon/","page":"Rolling horizon problems","title":"Rolling horizon problems","text":"Note that the move forward parameter must be lower or equal to the optimization window parameter to work correctly.","category":"page"},{"location":"tutorials/algorithms/rolling_horizon/","page":"Rolling horizon problems","title":"Rolling horizon problems","text":"@assert optimization_window >= move_forward","category":"page"},{"location":"tutorials/algorithms/rolling_horizon/","page":"Rolling horizon problems","title":"Rolling horizon problems","text":"Let's explore the input data in file rolling_horizon.csv. We have a total time horizon of a week (that is, 168 hours), an electricity demand, and a solar production profile.","category":"page"},{"location":"tutorials/algorithms/rolling_horizon/","page":"Rolling horizon problems","title":"Rolling horizon problems","text":"filename = joinpath(@__DIR__, \"rolling_horizon.csv\")\ntime_series = CSV.read(filename, DataFrames.DataFrame)\ntime_series[1:21:end, :]","category":"page"},{"location":"tutorials/algorithms/rolling_horizon/","page":"Rolling horizon problems","title":"Rolling horizon problems","text":"We define the solar investment (for example, 150 MW) to determine the solar production during the operation optimization step.","category":"page"},{"location":"tutorials/algorithms/rolling_horizon/","page":"Rolling horizon problems","title":"Rolling horizon problems","text":"solar_investment = 150;\nnothing #hide","category":"page"},{"location":"tutorials/algorithms/rolling_horizon/","page":"Rolling horizon problems","title":"Rolling horizon problems","text":"We multiply the level of solar investment by the time series of availability to get actual MW generated.","category":"page"},{"location":"tutorials/algorithms/rolling_horizon/","page":"Rolling horizon problems","title":"Rolling horizon problems","text":"time_series.solar_MW = solar_investment * time_series.solar_pu;\nnothing #hide","category":"page"},{"location":"tutorials/algorithms/rolling_horizon/","page":"Rolling horizon problems","title":"Rolling horizon problems","text":"In addition, we can determine some basic information about the rolling horizon, such as the number of data points we have:","category":"page"},{"location":"tutorials/algorithms/rolling_horizon/","page":"Rolling horizon problems","title":"Rolling horizon problems","text":"total_time_length = size(time_series, 1)","category":"page"},{"location":"tutorials/algorithms/rolling_horizon/","page":"Rolling horizon problems","title":"Rolling horizon problems","text":"and the number of windows that we are going to optimize given the problem's time horizon:","category":"page"},{"location":"tutorials/algorithms/rolling_horizon/","page":"Rolling horizon problems","title":"Rolling horizon problems","text":"(total_time_length + move_forward - optimization_window) / move_forward","category":"page"},{"location":"tutorials/algorithms/rolling_horizon/","page":"Rolling horizon problems","title":"Rolling horizon problems","text":"Finally, we can see a plot representing the first two optimization windows and the move forward parameter to have a better idea of how the rolling horizon works.","category":"page"},{"location":"tutorials/algorithms/rolling_horizon/","page":"Rolling horizon problems","title":"Rolling horizon problems","text":"x_series = 1:total_time_length\ny_series = [time_series.demand_MW, time_series.solar_MW]\nplot_1 = Plots.plot(x_series, y_series; label = [\"demand\" \"solar\"])\nplot_2 = Plots.plot(x_series, y_series; label = false)\nwindow = [0, optimization_window]\nPlots.vspan!(plot_1, window; alpha = 0.25, label = false)\nPlots.vspan!(plot_2, move_forward .+ window; alpha = 0.25, label = false)\ntext_1 = Plots.text(\"optimization\\n window 1\", :top, :left, 8)\nPlots.annotate!(plot_1, 18, time_series.solar_MW[12], text_1)\ntext_2 = Plots.text(\"optimization\\n window 2\", :top, :left, 8)\nPlots.annotate!(plot_2, 42, time_series.solar_MW[12], text_2)\nPlots.plot(\n plot_1,\n plot_2;\n layout = (2, 1),\n linewidth = 3,\n xticks = 0:12:total_time_length,\n xlabel = \"Hours\",\n ylabel = \"MW\",\n)","category":"page"},{"location":"tutorials/algorithms/rolling_horizon/#JuMP-model","page":"Rolling horizon problems","title":"JuMP model","text":"","category":"section"},{"location":"tutorials/algorithms/rolling_horizon/","page":"Rolling horizon problems","title":"Rolling horizon problems","text":"We have all the information we need to create a JuMP model to solve a single window of our rolling horizon problem.","category":"page"},{"location":"tutorials/algorithms/rolling_horizon/","page":"Rolling horizon problems","title":"Rolling horizon problems","text":"As the optimizer, we use POI.Optimizer, which is part of ParametricOptInterface.jl. POI.Optimizer converts the Parameter decision variables into constants in the underlying optimization model, and it efficiently updates the solver in-place when we call set_parameter_value which avoids having to rebuild the problem each time we call optimize!.","category":"page"},{"location":"tutorials/algorithms/rolling_horizon/","page":"Rolling horizon problems","title":"Rolling horizon problems","text":"model = Model(() -> POI.Optimizer(HiGHS.Optimizer()))\nset_silent(model)\n@variables(model, begin\n 0 <= r[1:optimization_window]\n 0 <= p[1:optimization_window] <= 150\n 0 <= s[1:optimization_window] <= 40\n 0 <= c[1:optimization_window] <= 10\n 0 <= d[1:optimization_window] <= 10\n # Initialize empty parameters. These values will get updated later\n D[t in 1:optimization_window] in Parameter(0)\n A[t in 1:optimization_window] in Parameter(0)\n S_0 in Parameter(0)\nend)\n@objective(model, Min, 50 * sum(p))\n@constraints(\n model,\n begin\n p .+ r .+ d .== D .+ c\n s[1] == S_0 + 0.9 * c[1] - d[1] / 0.9\n [t in 2:optimization_window], s[t] == s[t-1] + 0.9 * c[t] - d[t] / 0.9\n r .<= A\n end\n)\nmodel","category":"page"},{"location":"tutorials/algorithms/rolling_horizon/","page":"Rolling horizon problems","title":"Rolling horizon problems","text":"After the optimization, we can store the results in vectors. It's important to note that despite optimizing for 48 hours (the default value), we only store the values for the \"move forward\" parameter (for example, 24 hours or one day using the default value). This approach ensures that there is a buffer of additional periods or hours beyond the \"move forward\" parameter to prevent the storage from depleting entirely at the end of the specified hours.","category":"page"},{"location":"tutorials/algorithms/rolling_horizon/","page":"Rolling horizon problems","title":"Rolling horizon problems","text":"sol_complete = Dict(\n :r => zeros(total_time_length),\n :p => zeros(total_time_length),\n :c => zeros(total_time_length),\n :d => zeros(total_time_length),\n # The storage level is initialized with an initial value\n :s => zeros(total_time_length + 1),\n)\nsol_windows = Pair{Int,Dict{Symbol,Vector{Float64}}}[]","category":"page"},{"location":"tutorials/algorithms/rolling_horizon/","page":"Rolling horizon problems","title":"Rolling horizon problems","text":"Now we can iterate across the windows of our rolling horizon problem, and at each window, we:","category":"page"},{"location":"tutorials/algorithms/rolling_horizon/","page":"Rolling horizon problems","title":"Rolling horizon problems","text":"update the parameters in the models\nsolve the model for that window\nstore the results for later analysis","category":"page"},{"location":"tutorials/algorithms/rolling_horizon/","page":"Rolling horizon problems","title":"Rolling horizon problems","text":"offsets = 0:move_forward:total_time_length-optimization_window\nfor offset in offsets\n # Step 1: update the parameter values over the optimization_window\n for t in 1:optimization_window\n set_parameter_value(model[:D][t], time_series[offset+t, :demand_MW])\n set_parameter_value(model[:A][t], time_series[offset+t, :solar_MW])\n end\n # Set the starting storage level as the value from the end of the previous\n # solve. The `+1` accounts for the initial storage value in time step \"t=0\"\n set_parameter_value(model[:S_0], sol_complete[:s][offset+1])\n # Step 2: solve the model\n optimize!(model)\n # Step 3: store the results of the move_forward values, except in the last\n # horizon where we store the full `optimization_window`.\n for t in 1:(offset == last(offsets) ? optimization_window : move_forward)\n for key in (:r, :p, :c, :d)\n sol_complete[key][offset+t] = value(model[key][t])\n end\n sol_complete[:s][offset+t+1] = value(model[:s][t])\n end\n sol_window = Dict(key => value.(model[key]) for key in (:r, :p, :s, :c, :d))\n push!(sol_windows, offset => sol_window)\nend","category":"page"},{"location":"tutorials/algorithms/rolling_horizon/#Solution","page":"Rolling horizon problems","title":"Solution","text":"","category":"section"},{"location":"tutorials/algorithms/rolling_horizon/","page":"Rolling horizon problems","title":"Rolling horizon problems","text":"Here is a function to plot the solution at each of the time-steps to help visualize the rolling horizon scheme:","category":"page"},{"location":"tutorials/algorithms/rolling_horizon/","page":"Rolling horizon problems","title":"Rolling horizon problems","text":"function plot_solution(sol; offset = 0, kwargs...)\n plot = Plots.plot(;\n ylabel = \"MW\",\n xlims = (0, total_time_length),\n xticks = 0:12:total_time_length,\n kwargs...,\n )\n y = hcat(sol[:p], sol[:r], sol[:d])\n x = offset .+ (1:size(y, 1))\n if offset == 0\n Plots.areaplot!(x, y; label = [\"thermal\" \"solar\" \"discharge\"])\n Plots.areaplot!(x, -sol[:c]; label = \"charge\")\n else\n Plots.areaplot!(x, y; label = false)\n Plots.areaplot!(x, -sol[:c]; label = false)\n end\n return plot\nend\n\nPlots.plot(\n [plot_solution(sol; offset) for (offset, sol) in sol_windows]...;\n layout = (length(sol_windows), 1),\n size = (600, 800),\n margin = 3Plots.mm,\n)","category":"page"},{"location":"tutorials/algorithms/rolling_horizon/","page":"Rolling horizon problems","title":"Rolling horizon problems","text":"We can re-use the function to plot the recovered solution of the full problem:","category":"page"},{"location":"tutorials/algorithms/rolling_horizon/","page":"Rolling horizon problems","title":"Rolling horizon problems","text":"plot_solution(sol_complete; offset = 0, xlabel = \"Hour\")","category":"page"},{"location":"tutorials/algorithms/rolling_horizon/#Final-remark","page":"Rolling horizon problems","title":"Final remark","text":"","category":"section"},{"location":"tutorials/algorithms/rolling_horizon/","page":"Rolling horizon problems","title":"Rolling horizon problems","text":"ParametricOptInterface.jl offers an easy way to update the parameters of an optimization problem that will be solved several times, as in the rolling horizon implementation. It has the benefit of avoiding rebuilding the model each time we want to solve it with new information in a new window.","category":"page"},{"location":"moi/reference/models/","page":"Models","title":"Models","text":"EditURL = \"https://github.com/jump-dev/MathOptInterface.jl/blob/v1.34.0/docs/src/reference/models.md\"","category":"page"},{"location":"moi/reference/models/","page":"Models","title":"Models","text":"CurrentModule = MathOptInterface\nDocTestSetup = quote\n import MathOptInterface as MOI\nend\nDocTestFilters = [r\"MathOptInterface|MOI\"]","category":"page"},{"location":"moi/reference/models/#Models","page":"Models","title":"Models","text":"","category":"section"},{"location":"moi/reference/models/#Attribute-interface","page":"Models","title":"Attribute interface","text":"","category":"section"},{"location":"moi/reference/models/","page":"Models","title":"Models","text":"is_set_by_optimize\nis_copyable\nget\nget!\nset\nsupports\nattribute_value_type","category":"page"},{"location":"moi/reference/models/#MathOptInterface.is_set_by_optimize","page":"Models","title":"MathOptInterface.is_set_by_optimize","text":"is_set_by_optimize(::AnyAttribute)\n\nReturn a Bool indicating whether the value of the attribute is set during an optimize! call, that is, the attribute is used to query the result of the optimization.\n\nIf an attribute can be set by the user, define is_copyable instead.\n\nAn attribute cannot be both is_copyable and is_set_by_optimize.\n\nDefault fallback\n\nThis function returns false by default so it should be implemented for attributes that are set by optimize!.\n\nUndefined behavior\n\nQuerying the value of the attribute that is_set_by_optimize before a call to optimize! is undefined and depends on solver-specific behavior.\n\n\n\n\n\n","category":"function"},{"location":"moi/reference/models/#MathOptInterface.is_copyable","page":"Models","title":"MathOptInterface.is_copyable","text":"is_copyable(::AnyAttribute)\n\nReturn a Bool indicating whether the value of the attribute may be copied during copy_to using set.\n\nIf an attribute is_copyable, then it cannot be modified by the optimizer, and get must always return the value that was set by the user.\n\nIf an attribute is the result of an optimization, define is_set_by_optimize instead.\n\nAn attribute cannot be both is_set_by_optimize and is_copyable.\n\nDefault fallback\n\nBy default is_copyable(attr) returns !is_set_by_optimize(attr), which is most probably true.\n\nIf an attribute should not be copied, define is_copyable(::MyAttribute) = false.\n\n\n\n\n\n","category":"function"},{"location":"moi/reference/models/#MathOptInterface.get","page":"Models","title":"MathOptInterface.get","text":"MOI.get(b::AbstractBridge, ::MOI.NumberOfVariables)::Int64\n\nReturn the number of variables created by the bridge b in the model.\n\nSee also MOI.NumberOfConstraints.\n\nImplementation notes\n\nThere is a default fallback, so you need only implement this if the bridge adds new variables.\n\n\n\n\n\nMOI.get(b::AbstractBridge, ::MOI.ListOfVariableIndices)\n\nReturn the list of variables created by the bridge b.\n\nSee also MOI.ListOfVariableIndices.\n\nImplementation notes\n\nThere is a default fallback, so you need only implement this if the bridge adds new variables.\n\n\n\n\n\nMOI.get(b::AbstractBridge, ::MOI.NumberOfConstraints{F,S})::Int64 where {F,S}\n\nReturn the number of constraints of the type F-in-S created by the bridge b.\n\nSee also MOI.NumberOfConstraints.\n\nImplementation notes\n\nThere is a default fallback, so you need only implement this for the constraint types returned by added_constraint_types.\n\n\n\n\n\nMOI.get(b::AbstractBridge, ::MOI.ListOfConstraintIndices{F,S}) where {F,S}\n\nReturn a Vector{ConstraintIndex{F,S}} with indices of all constraints of type F-in-S created by the bride b.\n\nSee also MOI.ListOfConstraintIndices.\n\nImplementation notes\n\nThere is a default fallback, so you need only implement this for the constraint types returned by added_constraint_types.\n\n\n\n\n\nfunction MOI.get(\n model::MOI.ModelLike,\n attr::MOI.AbstractConstraintAttribute,\n bridge::AbstractBridge,\n)\n\nReturn the value of the attribute attr of the model model for the constraint bridged by bridge.\n\n\n\n\n\nget(model::GenericModel, attr::MathOptInterface.AbstractOptimizerAttribute)\n\nReturn the value of the attribute attr from the model's MOI backend.\n\n\n\n\n\nget(model::GenericModel, attr::MathOptInterface.AbstractModelAttribute)\n\nReturn the value of the attribute attr from the model's MOI backend.\n\n\n\n\n\nget(optimizer::AbstractOptimizer, attr::AbstractOptimizerAttribute)\n\nReturn an attribute attr of the optimizer optimizer.\n\nget(model::ModelLike, attr::AbstractModelAttribute)\n\nReturn an attribute attr of the model model.\n\nget(model::ModelLike, attr::AbstractVariableAttribute, v::VariableIndex)\n\nIf the attribute attr is set for the variable v in the model model, return its value, return nothing otherwise. If the attribute attr is not supported by model then an error should be thrown instead of returning nothing.\n\nget(model::ModelLike, attr::AbstractVariableAttribute, v::Vector{VariableIndex})\n\nReturn a vector of attributes corresponding to each variable in the collection v in the model model.\n\nget(model::ModelLike, attr::AbstractConstraintAttribute, c::ConstraintIndex)\n\nIf the attribute attr is set for the constraint c in the model model, return its value, return nothing otherwise. If the attribute attr is not supported by model then an error should be thrown instead of returning nothing.\n\nget(\n model::ModelLike,\n attr::AbstractConstraintAttribute,\n c::Vector{ConstraintIndex{F,S}},\n) where {F,S}\n\nReturn a vector of attributes corresponding to each constraint in the collection c in the model model.\n\nget(model::ModelLike, ::Type{VariableIndex}, name::String)\n\nIf a variable with name name exists in the model model, return the corresponding index, otherwise return nothing. Errors if two variables have the same name.\n\nget(\n model::ModelLike,\n ::Type{ConstraintIndex{F,S}},\n name::String,\n) where {F,S}\n\nIf an F-in-S constraint with name name exists in the model model, return the corresponding index, otherwise return nothing. Errors if two constraints have the same name.\n\nget(model::ModelLike, ::Type{ConstraintIndex}, name::String)\n\nIf any constraint with name name exists in the model model, return the corresponding index, otherwise return nothing. This version is available for convenience but may incur a performance penalty because it is not type stable. Errors if two constraints have the same name.\n\n\n\n\n\n","category":"function"},{"location":"moi/reference/models/#MathOptInterface.get!","page":"Models","title":"MathOptInterface.get!","text":"get!(output, model::ModelLike, args...)\n\nAn in-place version of get.\n\nThe signature matches that of get except that the result is placed in the vector output.\n\n\n\n\n\n","category":"function"},{"location":"moi/reference/models/#MathOptInterface.set","page":"Models","title":"MathOptInterface.set","text":"function MOI.set(\n model::MOI.ModelLike,\n attr::MOI.AbstractConstraintAttribute,\n bridge::AbstractBridge,\n value,\n)\n\nSet the value of the attribute attr of the model model for the constraint bridged by bridge.\n\n\n\n\n\nset(optimizer::AbstractOptimizer, attr::AbstractOptimizerAttribute, value)\n\nAssign value to the attribute attr of the optimizer optimizer.\n\nset(model::ModelLike, attr::AbstractModelAttribute, value)\n\nAssign value to the attribute attr of the model model.\n\nset(model::ModelLike, attr::AbstractVariableAttribute, v::VariableIndex, value)\n\nAssign value to the attribute attr of variable v in model model.\n\nset(\n model::ModelLike,\n attr::AbstractVariableAttribute,\n v::Vector{VariableIndex},\n vector_of_values,\n)\n\nAssign a value respectively to the attribute attr of each variable in the collection v in model model.\n\nset(\n model::ModelLike,\n attr::AbstractConstraintAttribute,\n c::ConstraintIndex,\n value,\n)\n\nAssign a value to the attribute attr of constraint c in model model.\n\nset(\n model::ModelLike,\n attr::AbstractConstraintAttribute,\n c::Vector{ConstraintIndex{F,S}},\n vector_of_values,\n) where {F,S}\n\nAssign a value respectively to the attribute attr of each constraint in the collection c in model model.\n\nAn UnsupportedAttribute error is thrown if model does not support the attribute attr (see supports) and a SetAttributeNotAllowed error is thrown if it supports the attribute attr but it cannot be set.\n\nset(\n model::ModelLike,\n ::ConstraintSet,\n c::ConstraintIndex{F,S},\n set::S,\n) where {F,S}\n\nChange the set of constraint c to the new set set which should be of the same type as the original set.\n\nset(\n model::ModelLike,\n ::ConstraintFunction,\n c::ConstraintIndex{F,S},\n func::F,\n) where {F,S}\n\nReplace the function in constraint c with func. F must match the original function type used to define the constraint.\n\nnote: Note\nSetting the constraint function is not allowed if F is VariableIndex; a SettingVariableIndexNotAllowed error is thrown instead. This is because, it would require changing the index c since the index of VariableIndex constraints must be the same as the index of the variable.\n\n\n\n\n\n","category":"function"},{"location":"moi/reference/models/#MathOptInterface.supports","page":"Models","title":"MathOptInterface.supports","text":"MOI.supports(\n model::MOI.ModelLike,\n attr::MOI.AbstractConstraintAttribute,\n BT::Type{<:AbstractBridge},\n)\n\nReturn a Bool indicating whether BT supports setting attr to model.\n\n\n\n\n\nsupports(model::ModelLike, sub::AbstractSubmittable)::Bool\n\nReturn a Bool indicating whether model supports the submittable sub.\n\nsupports(model::ModelLike, attr::AbstractOptimizerAttribute)::Bool\n\nReturn a Bool indicating whether model supports the optimizer attribute attr. That is, it returns false if copy_to(model, src) shows a warning in case attr is in the ListOfOptimizerAttributesSet of src; see copy_to for more details on how unsupported optimizer attributes are handled in copy.\n\nsupports(model::ModelLike, attr::AbstractModelAttribute)::Bool\n\nReturn a Bool indicating whether model supports the model attribute attr. That is, it returns false if copy_to(model, src) cannot be performed in case attr is in the ListOfModelAttributesSet of src.\n\nsupports(\n model::ModelLike,\n attr::AbstractVariableAttribute,\n ::Type{VariableIndex},\n)::Bool\n\nReturn a Bool indicating whether model supports the variable attribute attr. That is, it returns false if copy_to(model, src) cannot be performed in case attr is in the ListOfVariableAttributesSet of src.\n\nsupports(\n model::ModelLike,\n attr::AbstractConstraintAttribute,\n ::Type{ConstraintIndex{F,S}},\n)::Bool where {F,S}\n\nReturn a Bool indicating whether model supports the constraint attribute attr applied to an F-in-S constraint. That is, it returns false if copy_to(model, src) cannot be performed in case attr is in the ListOfConstraintAttributesSet of src.\n\nFor all five methods, if the attribute is only not supported in specific circumstances, it should still return true.\n\nNote that supports is only defined for attributes for which is_copyable returns true as other attributes do not appear in the list of attributes set obtained by ListOfXXXAttributesSet.\n\n\n\n\n\n","category":"function"},{"location":"moi/reference/models/#MathOptInterface.attribute_value_type","page":"Models","title":"MathOptInterface.attribute_value_type","text":"attribute_value_type(attr::AnyAttribute)\n\nGiven an attribute attr, return the type of value expected by get, or returned by set.\n\nNotes\n\nOnly implement this if it make sense to do so. If un-implemented, the default is Any.\n\n\n\n\n\n","category":"function"},{"location":"moi/reference/models/#Model-interface","page":"Models","title":"Model interface","text":"","category":"section"},{"location":"moi/reference/models/","page":"Models","title":"Models","text":"ModelLike\nis_empty\nempty!\nwrite_to_file\nread_from_file\nsupports_incremental_interface\ncopy_to\nIndexMap","category":"page"},{"location":"moi/reference/models/#MathOptInterface.ModelLike","page":"Models","title":"MathOptInterface.ModelLike","text":"ModelLike\n\nAbstract supertype for objects that implement the \"Model\" interface for defining an optimization problem.\n\n\n\n\n\n","category":"type"},{"location":"moi/reference/models/#MathOptInterface.is_empty","page":"Models","title":"MathOptInterface.is_empty","text":"is_empty(model::ModelLike)\n\nReturns false if the model has any model attribute set or has any variables or constraints.\n\nNote that an empty model can have optimizer attributes set.\n\n\n\n\n\n","category":"function"},{"location":"moi/reference/models/#MathOptInterface.empty!","page":"Models","title":"MathOptInterface.empty!","text":"empty!(model::ModelLike)\n\nEmpty the model, that is, remove all variables, constraints and model attributes but not optimizer attributes.\n\n\n\n\n\n","category":"function"},{"location":"moi/reference/models/#MathOptInterface.write_to_file","page":"Models","title":"MathOptInterface.write_to_file","text":"write_to_file(model::ModelLike, filename::String)\n\nWrite the current model to the file at filename.\n\nSupported file types depend on the model type.\n\n\n\n\n\n","category":"function"},{"location":"moi/reference/models/#MathOptInterface.read_from_file","page":"Models","title":"MathOptInterface.read_from_file","text":"read_from_file(model::ModelLike, filename::String)\n\nRead the file filename into the model model. If model is non-empty, this may throw an error.\n\nSupported file types depend on the model type.\n\nNote\n\nOnce the contents of the file are loaded into the model, users can query the variables via get(model, ListOfVariableIndices()). However, some filetypes, such as LP files, do not maintain an explicit ordering of the variables. Therefore, the returned list may be in an arbitrary order.\n\nTo avoid depending on the order of the indices, look up each variable index by name using get(model, VariableIndex, \"name\").\n\n\n\n\n\n","category":"function"},{"location":"moi/reference/models/#MathOptInterface.supports_incremental_interface","page":"Models","title":"MathOptInterface.supports_incremental_interface","text":"supports_incremental_interface(model::ModelLike)\n\nReturn a Bool indicating whether model supports building incrementally via add_variable and add_constraint.\n\nThe main purpose of this function is to determine whether a model can be loaded into model incrementally or whether it should be cached and copied at once instead.\n\n\n\n\n\n","category":"function"},{"location":"moi/reference/models/#MathOptInterface.copy_to","page":"Models","title":"MathOptInterface.copy_to","text":"copy_to(dest::ModelLike, src::ModelLike)::IndexMap\n\nCopy the model from src into dest.\n\nThe target dest is emptied, and all previous indices to variables and constraints in dest are invalidated.\n\nReturns an IndexMap object that translates variable and constraint indices from the src model to the corresponding indices in the dest model.\n\nNotes\n\nIf a constraint that in src is not supported by dest, then an UnsupportedConstraint error is thrown.\nIf an AbstractModelAttribute, AbstractVariableAttribute, or AbstractConstraintAttribute is set in src but not supported by dest, then an UnsupportedAttribute error is thrown.\n\nAbstractOptimizerAttributes are not copied to the dest model.\n\nIndexMap\n\nImplementations of copy_to must return an IndexMap. For technical reasons, this type is defined in the Utilities submodule as MOI.Utilities.IndexMap. However, since it is an integral part of the MOI API, we provide MOI.IndexMap as an alias.\n\nExample\n\n# Given empty `ModelLike` objects `src` and `dest`.\n\nx = add_variable(src)\n\nis_valid(src, x) # true\nis_valid(dest, x) # false (`dest` has no variables)\n\nindex_map = copy_to(dest, src)\nis_valid(dest, x) # false (unless index_map[x] == x)\nis_valid(dest, index_map[x]) # true\n\n\n\n\n\n","category":"function"},{"location":"moi/reference/models/#MathOptInterface.IndexMap","page":"Models","title":"MathOptInterface.IndexMap","text":"IndexMap()\n\nThe dictionary-like object returned by copy_to.\n\nIndexMap\n\nImplementations of copy_to must return an IndexMap. For technical reasons, the IndexMap type is defined in the Utilities submodule as MOI.Utilities.IndexMap. However, since it is an integral part of the MOI API, we provide this MOI.IndexMap as an alias.\n\n\n\n\n\n","category":"type"},{"location":"moi/reference/models/#Model-attributes","page":"Models","title":"Model attributes","text":"","category":"section"},{"location":"moi/reference/models/","page":"Models","title":"Models","text":"AbstractModelAttribute\nName\nObjectiveFunction\nObjectiveFunctionType\nObjectiveSense\nOptimizationSense\nMIN_SENSE\nMAX_SENSE\nFEASIBILITY_SENSE\nNumberOfVariables\nListOfVariableIndices\nListOfConstraintTypesPresent\nNumberOfConstraints\nListOfConstraintIndices\nListOfOptimizerAttributesSet\nListOfModelAttributesSet\nListOfVariableAttributesSet\nListOfVariablesWithAttributeSet\nListOfConstraintAttributesSet\nListOfConstraintsWithAttributeSet\nUserDefinedFunction\nListOfSupportedNonlinearOperators","category":"page"},{"location":"moi/reference/models/#MathOptInterface.AbstractModelAttribute","page":"Models","title":"MathOptInterface.AbstractModelAttribute","text":"AbstractModelAttribute\n\nAbstract supertype for attribute objects that can be used to set or get attributes (properties) of the model.\n\n\n\n\n\n","category":"type"},{"location":"moi/reference/models/#MathOptInterface.Name","page":"Models","title":"MathOptInterface.Name","text":"Name()\n\nA model attribute for the string identifying the model. It has a default value of \"\" if not set`.\n\n\n\n\n\n","category":"type"},{"location":"moi/reference/models/#MathOptInterface.ObjectiveFunction","page":"Models","title":"MathOptInterface.ObjectiveFunction","text":"ObjectiveFunction{F<:AbstractScalarFunction}()\n\nA model attribute for the objective function which has a type F<:AbstractScalarFunction.\n\nF should be guaranteed to be equivalent but not necessarily identical to the function type provided by the user.\n\nThrows an InexactError if the objective function cannot be converted to F, for example, the objective function is quadratic and F is ScalarAffineFunction{Float64} or it has non-integer coefficient and F is ScalarAffineFunction{Int}.\n\n\n\n\n\n","category":"type"},{"location":"moi/reference/models/#MathOptInterface.ObjectiveFunctionType","page":"Models","title":"MathOptInterface.ObjectiveFunctionType","text":"ObjectiveFunctionType()\n\nA model attribute for the type F of the objective function set using the ObjectiveFunction{F} attribute.\n\nExample\n\njulia> import MathOptInterface as MOI\n\njulia> model = MOI.Utilities.Model{Float64}();\n\njulia> x = MOI.add_variable(model)\nMOI.VariableIndex(1)\n\njulia> MOI.set(model, MOI.ObjectiveFunction{MOI.VariableIndex}(), x)\n\njulia> MOI.get(model, MOI.ObjectiveFunctionType())\nMathOptInterface.VariableIndex\n\n\n\n\n\n","category":"type"},{"location":"moi/reference/models/#MathOptInterface.ObjectiveSense","page":"Models","title":"MathOptInterface.ObjectiveSense","text":"ObjectiveSense()\n\nA model attribute for the objective sense of the objective function, which must be an OptimizationSense: MIN_SENSE, MAX_SENSE, or FEASIBILITY_SENSE. The default is FEASIBILITY_SENSE.\n\nInteraction with ObjectiveFunction\n\nSetting the sense to FEASIBILITY_SENSE unsets the ObjectiveFunction attribute. That is, if you first set ObjectiveFunction and then set ObjectiveSense to be FEASIBILITY_SENSE, no objective function will be passed to the solver.\n\nIn addition, some reformulations of ObjectiveFunction via bridges rely on the value of ObjectiveSense. Therefore, you should set ObjectiveSense before setting ObjectiveFunction.\n\n\n\n\n\n","category":"type"},{"location":"moi/reference/models/#MathOptInterface.OptimizationSense","page":"Models","title":"MathOptInterface.OptimizationSense","text":"OptimizationSense\n\nAn enum for the value of the ObjectiveSense attribute.\n\nValues\n\nPossible values are:\n\nMIN_SENSE: the goal is to minimize the objective function\nMAX_SENSE: the goal is to maximize the objective function\nFEASIBILITY_SENSE: the model does not have an objective function\n\n\n\n\n\n","category":"type"},{"location":"moi/reference/models/#MathOptInterface.MIN_SENSE","page":"Models","title":"MathOptInterface.MIN_SENSE","text":"MIN_SENSE::OptimizationSense\n\nAn instance of the OptimizationSense enum.\n\nMIN_SENSE: the goal is to minimize the objective function\n\n\n\n\n\n","category":"constant"},{"location":"moi/reference/models/#MathOptInterface.MAX_SENSE","page":"Models","title":"MathOptInterface.MAX_SENSE","text":"MAX_SENSE::OptimizationSense\n\nAn instance of the OptimizationSense enum.\n\nMAX_SENSE: the goal is to maximize the objective function\n\n\n\n\n\n","category":"constant"},{"location":"moi/reference/models/#MathOptInterface.FEASIBILITY_SENSE","page":"Models","title":"MathOptInterface.FEASIBILITY_SENSE","text":"FEASIBILITY_SENSE::OptimizationSense\n\nAn instance of the OptimizationSense enum.\n\nFEASIBILITY_SENSE: the model does not have an objective function\n\n\n\n\n\n","category":"constant"},{"location":"moi/reference/models/#MathOptInterface.NumberOfVariables","page":"Models","title":"MathOptInterface.NumberOfVariables","text":"NumberOfVariables()\n\nA model attribute for the number of variables in the model.\n\n\n\n\n\n","category":"type"},{"location":"moi/reference/models/#MathOptInterface.ListOfVariableIndices","page":"Models","title":"MathOptInterface.ListOfVariableIndices","text":"ListOfVariableIndices()\n\nA model attribute for the Vector{VariableIndex} of all variable indices present in the model (that is, of length equal to the value of NumberOfVariables in the order in which they were added.\n\n\n\n\n\n","category":"type"},{"location":"moi/reference/models/#MathOptInterface.ListOfConstraintTypesPresent","page":"Models","title":"MathOptInterface.ListOfConstraintTypesPresent","text":"ListOfConstraintTypesPresent()\n\nA model attribute for the list of tuples of the form (F,S), where F is a function type and S is a set type indicating that the attribute NumberOfConstraints{F,S} has a value greater than zero.\n\n\n\n\n\n","category":"type"},{"location":"moi/reference/models/#MathOptInterface.NumberOfConstraints","page":"Models","title":"MathOptInterface.NumberOfConstraints","text":"NumberOfConstraints{F,S}()\n\nA model attribute for the number of constraints of the type F-in-S present in the model.\n\n\n\n\n\n","category":"type"},{"location":"moi/reference/models/#MathOptInterface.ListOfConstraintIndices","page":"Models","title":"MathOptInterface.ListOfConstraintIndices","text":"ListOfConstraintIndices{F,S}()\n\nA model attribute for the Vector{ConstraintIndex{F,S}} of all constraint indices of type F-in-S in the model (that is, of length equal to the value of NumberOfConstraints{F,S}) in the order in which they were added.\n\n\n\n\n\n","category":"type"},{"location":"moi/reference/models/#MathOptInterface.ListOfOptimizerAttributesSet","page":"Models","title":"MathOptInterface.ListOfOptimizerAttributesSet","text":"ListOfOptimizerAttributesSet()\n\nAn optimizer attribute for the Vector{AbstractOptimizerAttribute} of all optimizer attributes that were set.\n\n\n\n\n\n","category":"type"},{"location":"moi/reference/models/#MathOptInterface.ListOfModelAttributesSet","page":"Models","title":"MathOptInterface.ListOfModelAttributesSet","text":"ListOfModelAttributesSet()\n\nA model attribute for the Vector{AbstractModelAttribute} of all model attributes attr such that:\n\nis_copyable(attr) returns true, and\nthe attribute was set to the model\n\n\n\n\n\n","category":"type"},{"location":"moi/reference/models/#MathOptInterface.ListOfVariableAttributesSet","page":"Models","title":"MathOptInterface.ListOfVariableAttributesSet","text":"ListOfVariableAttributesSet()\n\nA model attribute for the Vector{AbstractVariableAttribute} of all variable attributes attr such that 1) is_copyable(attr) returns true and 2) the attribute was set to variables.\n\n\n\n\n\n","category":"type"},{"location":"moi/reference/models/#MathOptInterface.ListOfVariablesWithAttributeSet","page":"Models","title":"MathOptInterface.ListOfVariablesWithAttributeSet","text":"ListOfVariablesWithAttributeSet(attr::AbstractVariableAttribute)\n\nA model attribute for the Vector{VariableIndex} of all variables with the attribute attr set.\n\nThe returned list may not be minimal, so some elements may have their default value set.\n\nNote\n\nThis is an optional attribute to implement. The default fallback is to get ListOfVariableIndices.\n\n\n\n\n\n","category":"type"},{"location":"moi/reference/models/#MathOptInterface.ListOfConstraintAttributesSet","page":"Models","title":"MathOptInterface.ListOfConstraintAttributesSet","text":"ListOfConstraintAttributesSet{F, S}()\n\nA model attribute for the Vector{AbstractConstraintAttribute} of all constraint attributes attr such that:\n\nis_copyable(attr) returns true and\nthe attribute was set to F-in-S constraints.\n\nNote\n\nThe attributes ConstraintFunction and ConstraintSet should not be included in the list even if then have been set with set.\n\n\n\n\n\n","category":"type"},{"location":"moi/reference/models/#MathOptInterface.ListOfConstraintsWithAttributeSet","page":"Models","title":"MathOptInterface.ListOfConstraintsWithAttributeSet","text":"ListOfConstraintsWithAttributeSet{F,S}(attr:AbstractConstraintAttribute)\n\nA model attribute for the Vector{ConstraintIndex{F,S}} of all constraints with the attribute attr set.\n\nThe returned list may not be minimal, so some elements may have their default value set.\n\nNote\n\nThis is an optional attribute to implement. The default fallback is to get ListOfConstraintIndices.\n\n\n\n\n\n","category":"type"},{"location":"moi/reference/models/#MathOptInterface.UserDefinedFunction","page":"Models","title":"MathOptInterface.UserDefinedFunction","text":"UserDefinedFunction(name::Symbol, arity::Int) <: AbstractModelAttribute\n\nSet this attribute to register a user-defined function by the name of name with arity arguments.\n\nOnce registered, name will appear in ListOfSupportedNonlinearOperators.\n\nYou cannot register multiple UserDefinedFunctions with the same name but different arity.\n\nValue type\n\nThe value to be set is a tuple containing one, two, or three functions to evaluate the function, the first-order derivative, and the second-order derivative respectively. Both derivatives are optional, but if you pass the second-order derivative you must also pass the first-order derivative.\n\nFor univariate functions with arity == 1, the functions in the tuple must have the form:\n\nf(x::T)::T: returns the value of the function at x\n∇f(x::T)::T: returns the first-order derivative of f with respect to x\n∇²f(x::T)::T: returns the second-order derivative of f with respect to x.\n\nFor multivariate functions with arity > 1, the functions in the tuple must have the form:\n\nf(x::T...)::T: returns the value of the function at x\n∇f(g::AbstractVector{T}, x::T...)::Nothing: fills the components of g, with g[i] being the first-order partial derivative of f with respect to x[i]\n∇²f(H::AbstractMatrix{T}, x::T...)::Nothing: fills the non-zero components of H, with H[i, j] being the second-order partial derivative of f with respect to x[i] and then x[j]. H is initialized to the zero matrix, so you do not need to set any zero elements.\n\nExample\n\njulia> import MathOptInterface as MOI\n\njulia> f(x, y) = x^2 + y^2\nf (generic function with 1 method)\n\njulia> function ∇f(g, x, y)\n g .= 2 * x, 2 * y\n return\n end\n∇f (generic function with 1 method)\n\njulia> function ∇²f(H, x...)\n H[1, 1] = H[2, 2] = 2.0\n return\n end\n∇²f (generic function with 1 method)\n\njulia> model = MOI.Utilities.UniversalFallback(MOI.Utilities.Model{Float64}());\n\njulia> MOI.set(model, MOI.UserDefinedFunction(:f, 2), (f,))\n\njulia> MOI.set(model, MOI.UserDefinedFunction(:g, 2), (f, ∇f))\n\njulia> MOI.set(model, MOI.UserDefinedFunction(:h, 2), (f, ∇f, ∇²f))\n\njulia> x = MOI.add_variables(model, 2)\n2-element Vector{MathOptInterface.VariableIndex}:\n MOI.VariableIndex(1)\n MOI.VariableIndex(2)\n\njulia> MOI.set(model, MOI.ObjectiveSense(), MOI.MIN_SENSE)\n\njulia> obj_f = MOI.ScalarNonlinearFunction(:f, Any[x[1], x[2]])\nf(MOI.VariableIndex(1), MOI.VariableIndex(2))\n\njulia> MOI.set(model, MOI.ObjectiveFunction{typeof(obj_f)}(), obj_f)\n\njulia> print(model)\nMinimize ScalarNonlinearFunction:\n f(v[1], v[2])\n\nSubject to:\n\n\n\n\n\n\n","category":"type"},{"location":"moi/reference/models/#MathOptInterface.ListOfSupportedNonlinearOperators","page":"Models","title":"MathOptInterface.ListOfSupportedNonlinearOperators","text":"ListOfSupportedNonlinearOperators() <: AbstractModelAttribute\n\nWhen queried with get, return a Vector{Symbol} listing the operators supported by the model.\n\n\n\n\n\n","category":"type"},{"location":"moi/reference/models/#Optimizer-interface","page":"Models","title":"Optimizer interface","text":"","category":"section"},{"location":"moi/reference/models/","page":"Models","title":"Models","text":"AbstractOptimizer\nOptimizerWithAttributes\noptimize!\noptimize!(::ModelLike, ::ModelLike)\ninstantiate\ndefault_cache","category":"page"},{"location":"moi/reference/models/#MathOptInterface.AbstractOptimizer","page":"Models","title":"MathOptInterface.AbstractOptimizer","text":"AbstractOptimizer <: ModelLike\n\nAbstract supertype for objects representing an instance of an optimization problem tied to a particular solver. This is typically a solver's in-memory representation. In addition to ModelLike, AbstractOptimizer objects let you solve the model and query the solution.\n\n\n\n\n\n","category":"type"},{"location":"moi/reference/models/#MathOptInterface.OptimizerWithAttributes","page":"Models","title":"MathOptInterface.OptimizerWithAttributes","text":"struct OptimizerWithAttributes\n optimizer_constructor\n params::Vector{Pair{AbstractOptimizerAttribute,<:Any}}\nend\n\nObject grouping an optimizer constructor and a list of optimizer attributes. Instances are created with instantiate.\n\n\n\n\n\n","category":"type"},{"location":"moi/reference/models/#MathOptInterface.optimize!","page":"Models","title":"MathOptInterface.optimize!","text":"optimize!(optimizer::AbstractOptimizer)\n\nOptimize the problem contained in optimizer.\n\nBefore calling optimize!, the problem should first be constructed using the incremental interface (see supports_incremental_interface) or copy_to.\n\n\n\n\n\n","category":"function"},{"location":"moi/reference/models/#MathOptInterface.optimize!-Tuple{MathOptInterface.ModelLike, MathOptInterface.ModelLike}","page":"Models","title":"MathOptInterface.optimize!","text":"optimize!(dest::AbstractOptimizer, src::ModelLike)::Tuple{IndexMap,Bool}\n\nA \"one-shot\" call that copies the problem from src into dest and then uses dest to optimize the problem.\n\nReturns a tuple of an IndexMap and a Bool copied.\n\nThe IndexMap object translates variable and constraint indices from the src model to the corresponding indices in the dest optimizer. See copy_to for details.\nIf copied == true, src was copied to dest and then cached, allowing incremental modification if supported by the solver.\nIf copied == false, a cache of the model was not kept in dest. Therefore, only the solution information (attributes for which is_set_by_optimize is true) is available to query.\n\nnote: Note\nThe main purpose of optimize! method with two arguments is for use in Utilities.CachingOptimizer.\n\nRelationship to the single-argument optimize!\n\nThe default fallback of optimize!(dest::AbstractOptimizer, src::ModelLike) is\n\nfunction optimize!(dest::AbstractOptimizer, src::ModelLike)\n index_map = copy_to(dest, src)\n optimize!(dest)\n return index_map, true\nend\n\nTherefore, subtypes of AbstractOptimizer should either implement this two-argument method, or implement both copy_to(::Optimizer, ::ModelLike) and optimize!(::Optimizer).\n\n\n\n\n\n","category":"method"},{"location":"moi/reference/models/#MathOptInterface.instantiate","page":"Models","title":"MathOptInterface.instantiate","text":"instantiate(\n optimizer_constructor,\n with_cache_type::Union{Nothing,Type} = nothing,\n with_bridge_type::Union{Nothing,Type} = nothing,\n)\n\nCreate an instance of an optimizer by either:\n\ncalling optimizer_constructor.optimizer_constructor() and setting the parameters in optimizer_constructor.params if optimizer_constructor is a OptimizerWithAttributes\ncalling optimizer_constructor() if optimizer_constructor is callable.\n\nwithcachetype\n\nIf with_cache_type is not nothing, then the optimizer is wrapped in a Utilities.CachingOptimizer to store a cache of the model. This is most useful if the optimizer you are constructing does not support the incremental interface (see supports_incremental_interface).\n\nwithbridgetype\n\nIf with_bridge_type is not nothing, the optimizer is wrapped in a Bridges.full_bridge_optimizer, enabling all the bridges defined in the MOI.Bridges submodule with coefficient type with_bridge_type.\n\nIn addition, if the optimizer created by optimizer_constructor does not support the incremental interface (see supports_incremental_interface), then, irrespective of with_cache_type, the optimizer is wrapped in a Utilities.CachingOptimizer to store a cache of the bridged model.\n\nIf with_cache_type and with_bridge_type are both not nothing, then they must be the same type.\n\n\n\n\n\n","category":"function"},{"location":"moi/reference/models/#MathOptInterface.default_cache","page":"Models","title":"MathOptInterface.default_cache","text":"default_cache(optimizer::ModelLike, ::Type{T}) where {T}\n\nReturn a new instance of the default model type to be used as cache for optimizer in a Utilities.CachingOptimizer for holding constraints of coefficient type T. By default, this returns Utilities.UniversalFallback(Utilities.Model{T}()). If copying from a instance of a given model type is faster for optimizer then a new method returning an instance of this model type should be defined.\n\n\n\n\n\n","category":"function"},{"location":"moi/reference/models/#Optimizer-attributes","page":"Models","title":"Optimizer attributes","text":"","category":"section"},{"location":"moi/reference/models/","page":"Models","title":"Models","text":"AbstractOptimizerAttribute\nSolverName\nSolverVersion\nSilent\nTimeLimitSec\nObjectiveLimit\nSolutionLimit\nNodeLimit\nRawOptimizerAttribute\nNumberOfThreads\nRawSolver\nAbsoluteGapTolerance\nRelativeGapTolerance\nAutomaticDifferentiationBackend","category":"page"},{"location":"moi/reference/models/#MathOptInterface.AbstractOptimizerAttribute","page":"Models","title":"MathOptInterface.AbstractOptimizerAttribute","text":"AbstractOptimizerAttribute\n\nAbstract supertype for attribute objects that can be used to set or get attributes (properties) of the optimizer.\n\nNotes\n\nThe difference between AbstractOptimizerAttribute and AbstractModelAttribute lies in the behavior of is_empty, empty! and copy_to. Typically optimizer attributes affect only how the model is solved.\n\n\n\n\n\n","category":"type"},{"location":"moi/reference/models/#MathOptInterface.SolverName","page":"Models","title":"MathOptInterface.SolverName","text":"SolverName()\n\nAn optimizer attribute for the string identifying the solver/optimizer.\n\n\n\n\n\n","category":"type"},{"location":"moi/reference/models/#MathOptInterface.SolverVersion","page":"Models","title":"MathOptInterface.SolverVersion","text":"SolverVersion()\n\nAn optimizer attribute for the string identifying the version of the solver.\n\nnote: Note\nFor solvers supporting semantic versioning, the SolverVersion should be a string of the form \"vMAJOR.MINOR.PATCH\", so that it can be converted to a Julia VersionNumber (for example, `VersionNumber(\"v1.2.3\")).We do not require Semantic Versioning because some solvers use alternate versioning systems. For example, CPLEX uses Calendar Versioning, so SolverVersion will return a string like \"202001\".\n\n\n\n\n\n","category":"type"},{"location":"moi/reference/models/#MathOptInterface.Silent","page":"Models","title":"MathOptInterface.Silent","text":"Silent()\n\nAn optimizer attribute for silencing the output of an optimizer. When set to true, it takes precedence over any other attribute controlling verbosity and requires the solver to produce no output. The default value is false which has no effect. In this case the verbosity is controlled by other attributes.\n\nNote\n\nEvery optimizer should have verbosity on by default. For instance, if a solver has a solver-specific log level attribute, the MOI implementation should set it to 1 by default. If the user sets Silent to true, then the log level should be set to 0, even if the user specifically sets a value of log level. If the value of Silent is false then the log level set to the solver is the value given by the user for this solver-specific parameter or 1 if none is given.\n\n\n\n\n\n","category":"type"},{"location":"moi/reference/models/#MathOptInterface.TimeLimitSec","page":"Models","title":"MathOptInterface.TimeLimitSec","text":"TimeLimitSec()\n\nAn optimizer attribute for setting a time limit (in seconds) for an optimization. When set to nothing, it deactivates the solver time limit. The default value is nothing.\n\n\n\n\n\n","category":"type"},{"location":"moi/reference/models/#MathOptInterface.ObjectiveLimit","page":"Models","title":"MathOptInterface.ObjectiveLimit","text":"ObjectiveLimit()\n\nAn optimizer attribute for setting a limit on the objective value.\n\nThe provided limit must be a Union{Real,Nothing}.\n\nWhen set to nothing, the limit reverts to the solver's default.\n\nThe default value is nothing.\n\nThe solver may stop when the ObjectiveValue is better (lower for minimization, higher for maximization) than the ObjectiveLimit. If stopped, the TerminationStatus should be OBJECTIVE_LIMIT.\n\n\n\n\n\n","category":"type"},{"location":"moi/reference/models/#MathOptInterface.SolutionLimit","page":"Models","title":"MathOptInterface.SolutionLimit","text":"SolutionLimit()\n\nAn optimizer attribute for setting a limit on the number of available feasible solutions.\n\nDefault values\n\nThe provided limit must be a Union{Nothing,Int}.\n\nWhen set to nothing, the limit reverts to the solver's default.\n\nThe default value is nothing.\n\nTermination criteria\n\nThe solver may stop when the ResultCount is larger than or equal to the SolutionLimit. If stopped because of this attribute, the TerminationStatus must be SOLUTION_LIMIT.\n\nSolution quality\n\nThe quality of the available solutions is solver-dependent. The set of resulting solutions is not guaranteed to contain an optimal solution.\n\n\n\n\n\n","category":"type"},{"location":"moi/reference/models/#MathOptInterface.NodeLimit","page":"Models","title":"MathOptInterface.NodeLimit","text":"NodeLimit()\n\nAn optimizer attribute for setting a limit on the number of branch-and-bound nodes explored by a mixed-integer program (MIP) solver.\n\nDefault values\n\nThe provided limit must be a Union{Nothing,Int}.\n\nWhen set to nothing, the limit reverts to the solver's default.\n\nThe default value is nothing.\n\nTermination criteria\n\nThe solver may stop when the NodeCount is larger than or equal to the NodeLimit. If stopped because of this attribute, the TerminationStatus must be NODE_LIMIT.\n\n\n\n\n\n","category":"type"},{"location":"moi/reference/models/#MathOptInterface.RawOptimizerAttribute","page":"Models","title":"MathOptInterface.RawOptimizerAttribute","text":"RawOptimizerAttribute(name::String)\n\nAn optimizer attribute for the solver-specific parameter identified by name.\n\n\n\n\n\n","category":"type"},{"location":"moi/reference/models/#MathOptInterface.NumberOfThreads","page":"Models","title":"MathOptInterface.NumberOfThreads","text":"NumberOfThreads()\n\nAn optimizer attribute for setting the number of threads used for an optimization. When set to nothing uses solver default. Values are positive integers. The default value is nothing.\n\n\n\n\n\n","category":"type"},{"location":"moi/reference/models/#MathOptInterface.RawSolver","page":"Models","title":"MathOptInterface.RawSolver","text":"RawSolver()\n\nA model attribute for the object that may be used to access a solver-specific API for this optimizer.\n\n\n\n\n\n","category":"type"},{"location":"moi/reference/models/#MathOptInterface.AbsoluteGapTolerance","page":"Models","title":"MathOptInterface.AbsoluteGapTolerance","text":"AbsoluteGapTolerance()\n\nAn optimizer attribute for setting the absolute gap tolerance for an optimization. This is an optimizer attribute, and should be set before calling optimize!. When set to nothing (if supported), uses solver default.\n\nTo set a relative gap tolerance, see RelativeGapTolerance.\n\nwarning: Warning\nThe mathematical definition of \"absolute gap\", and its treatment during the optimization, are solver-dependent. However, assuming no other limit nor issue is encountered during the optimization, most solvers that implement this attribute will stop once f - b g_abs, where b is the best bound, f is the best feasible objective value, and g_abs is the absolute gap.\n\n\n\n\n\n","category":"type"},{"location":"moi/reference/models/#MathOptInterface.RelativeGapTolerance","page":"Models","title":"MathOptInterface.RelativeGapTolerance","text":"RelativeGapTolerance()\n\nAn optimizer attribute for setting the relative gap tolerance for an optimization. This is an optimizer attribute, and should be set before calling optimize!. When set to nothing (if supported), uses solver default.\n\nIf you are looking for the relative gap of the current best solution, see RelativeGap. If no limit nor issue is encountered during the optimization, the value of RelativeGap should be at most as large as RelativeGapTolerance.\n\n# Before optimizing: set relative gap tolerance\n# set 0.1% relative gap tolerance\nMOI.set(model, MOI.RelativeGapTolerance(), 1e-3)\nMOI.optimize!(model)\n\n# After optimizing (assuming all went well)\n# The relative gap tolerance has not changed...\nMOI.get(model, MOI.RelativeGapTolerance()) # returns 1e-3\n# ... and the relative gap of the obtained solution is smaller or equal to the\n# tolerance\nMOI.get(model, MOI.RelativeGap()) # should return something ≤ 1e-3\n\nwarning: Warning\nThe mathematical definition of \"relative gap\", and its allowed range, are solver-dependent. Typically, solvers expect a value between 0.0 and 1.0.\n\n\n\n\n\n","category":"type"},{"location":"moi/reference/models/#MathOptInterface.AutomaticDifferentiationBackend","page":"Models","title":"MathOptInterface.AutomaticDifferentiationBackend","text":"AutomaticDifferentiationBackend() <: AbstractOptimizerAttribute\n\nAn AbstractOptimizerAttribute for setting the automatic differentiation backend used by the solver.\n\nThe value must be a subtype of Nonlinear.AbstractAutomaticDifferentiation.\n\n\n\n\n\n","category":"type"},{"location":"moi/reference/models/","page":"Models","title":"Models","text":"List of attributes useful for optimizers","category":"page"},{"location":"moi/reference/models/","page":"Models","title":"Models","text":"TerminationStatus\nTerminationStatusCode\nOPTIMIZE_NOT_CALLED\nOPTIMAL\nINFEASIBLE\nDUAL_INFEASIBLE\nLOCALLY_SOLVED\nLOCALLY_INFEASIBLE\nINFEASIBLE_OR_UNBOUNDED\nALMOST_OPTIMAL\nALMOST_INFEASIBLE\nALMOST_DUAL_INFEASIBLE\nALMOST_LOCALLY_SOLVED\nITERATION_LIMIT\nTIME_LIMIT\nNODE_LIMIT\nSOLUTION_LIMIT\nMEMORY_LIMIT\nOBJECTIVE_LIMIT\nNORM_LIMIT\nOTHER_LIMIT\nSLOW_PROGRESS\nNUMERICAL_ERROR\nINVALID_MODEL\nINVALID_OPTION\nINTERRUPTED\nOTHER_ERROR\nPrimalStatus\nDualStatus\nRawStatusString\nResultCount\nObjectiveValue\nDualObjectiveValue\nObjectiveBound\nRelativeGap\nSolveTimeSec\nSimplexIterations\nBarrierIterations\nNodeCount","category":"page"},{"location":"moi/reference/models/#MathOptInterface.TerminationStatus","page":"Models","title":"MathOptInterface.TerminationStatus","text":"TerminationStatus()\n\nA model attribute for the TerminationStatusCode explaining why the optimizer stopped.\n\n\n\n\n\n","category":"type"},{"location":"moi/reference/models/#MathOptInterface.TerminationStatusCode","page":"Models","title":"MathOptInterface.TerminationStatusCode","text":"TerminationStatusCode\n\nAn Enum of possible values for the TerminationStatus attribute. This attribute is meant to explain the reason why the optimizer stopped executing in the most recent call to optimize!.\n\nValues\n\nPossible values are:\n\nOPTIMIZE_NOT_CALLED: The algorithm has not started.\nOPTIMAL: The algorithm found a globally optimal solution.\nINFEASIBLE: The algorithm concluded that no feasible solution exists.\nDUAL_INFEASIBLE: The algorithm concluded that no dual bound exists for the problem. If, additionally, a feasible (primal) solution is known to exist, this status typically implies that the problem is unbounded, with some technical exceptions.\nLOCALLY_SOLVED: The algorithm converged to a stationary point, local optimal solution, could not find directions for improvement, or otherwise completed its search without global guarantees.\nLOCALLY_INFEASIBLE: The algorithm converged to an infeasible point or otherwise completed its search without finding a feasible solution, without guarantees that no feasible solution exists.\nINFEASIBLE_OR_UNBOUNDED: The algorithm stopped because it decided that the problem is infeasible or unbounded; this occasionally happens during MIP presolve.\nALMOST_OPTIMAL: The algorithm found a globally optimal solution to relaxed tolerances.\nALMOST_INFEASIBLE: The algorithm concluded that no feasible solution exists within relaxed tolerances.\nALMOST_DUAL_INFEASIBLE: The algorithm concluded that no dual bound exists for the problem within relaxed tolerances.\nALMOST_LOCALLY_SOLVED: The algorithm converged to a stationary point, local optimal solution, or could not find directions for improvement within relaxed tolerances.\nITERATION_LIMIT: An iterative algorithm stopped after conducting the maximum number of iterations.\nTIME_LIMIT: The algorithm stopped after a user-specified computation time.\nNODE_LIMIT: A branch-and-bound algorithm stopped because it explored a maximum number of nodes in the branch-and-bound tree.\nSOLUTION_LIMIT: The algorithm stopped because it found the required number of solutions. This is often used in MIPs to get the solver to return the first feasible solution it encounters.\nMEMORY_LIMIT: The algorithm stopped because it ran out of memory.\nOBJECTIVE_LIMIT: The algorithm stopped because it found a solution better than a minimum limit set by the user.\nNORM_LIMIT: The algorithm stopped because the norm of an iterate became too large.\nOTHER_LIMIT: The algorithm stopped due to a limit not covered by one of the _LIMIT_ statuses above.\nSLOW_PROGRESS: The algorithm stopped because it was unable to continue making progress towards the solution.\nNUMERICAL_ERROR: The algorithm stopped because it encountered unrecoverable numerical error.\nINVALID_MODEL: The algorithm stopped because the model is invalid.\nINVALID_OPTION: The algorithm stopped because it was provided an invalid option.\nINTERRUPTED: The algorithm stopped because of an interrupt signal.\nOTHER_ERROR: The algorithm stopped because of an error not covered by one of the statuses defined above.\n\n\n\n\n\n","category":"type"},{"location":"moi/reference/models/#MathOptInterface.OPTIMIZE_NOT_CALLED","page":"Models","title":"MathOptInterface.OPTIMIZE_NOT_CALLED","text":"OPTIMIZE_NOT_CALLED::TerminationStatusCode\n\nAn instance of the TerminationStatusCode enum.\n\nOPTIMIZE_NOT_CALLED: The algorithm has not started.\n\n\n\n\n\n","category":"constant"},{"location":"moi/reference/models/#MathOptInterface.OPTIMAL","page":"Models","title":"MathOptInterface.OPTIMAL","text":"OPTIMAL::TerminationStatusCode\n\nAn instance of the TerminationStatusCode enum.\n\nOPTIMAL: The algorithm found a globally optimal solution.\n\n\n\n\n\n","category":"constant"},{"location":"moi/reference/models/#MathOptInterface.INFEASIBLE","page":"Models","title":"MathOptInterface.INFEASIBLE","text":"INFEASIBLE::TerminationStatusCode\n\nAn instance of the TerminationStatusCode enum.\n\nINFEASIBLE: The algorithm concluded that no feasible solution exists.\n\n\n\n\n\n","category":"constant"},{"location":"moi/reference/models/#MathOptInterface.DUAL_INFEASIBLE","page":"Models","title":"MathOptInterface.DUAL_INFEASIBLE","text":"DUAL_INFEASIBLE::TerminationStatusCode\n\nAn instance of the TerminationStatusCode enum.\n\nDUAL_INFEASIBLE: The algorithm concluded that no dual bound exists for the problem. If, additionally, a feasible (primal) solution is known to exist, this status typically implies that the problem is unbounded, with some technical exceptions.\n\n\n\n\n\n","category":"constant"},{"location":"moi/reference/models/#MathOptInterface.LOCALLY_SOLVED","page":"Models","title":"MathOptInterface.LOCALLY_SOLVED","text":"LOCALLY_SOLVED::TerminationStatusCode\n\nAn instance of the TerminationStatusCode enum.\n\nLOCALLY_SOLVED: The algorithm converged to a stationary point, local optimal solution, could not find directions for improvement, or otherwise completed its search without global guarantees.\n\n\n\n\n\n","category":"constant"},{"location":"moi/reference/models/#MathOptInterface.LOCALLY_INFEASIBLE","page":"Models","title":"MathOptInterface.LOCALLY_INFEASIBLE","text":"LOCALLY_INFEASIBLE::TerminationStatusCode\n\nAn instance of the TerminationStatusCode enum.\n\nLOCALLY_INFEASIBLE: The algorithm converged to an infeasible point or otherwise completed its search without finding a feasible solution, without guarantees that no feasible solution exists.\n\n\n\n\n\n","category":"constant"},{"location":"moi/reference/models/#MathOptInterface.INFEASIBLE_OR_UNBOUNDED","page":"Models","title":"MathOptInterface.INFEASIBLE_OR_UNBOUNDED","text":"INFEASIBLE_OR_UNBOUNDED::TerminationStatusCode\n\nAn instance of the TerminationStatusCode enum.\n\nINFEASIBLE_OR_UNBOUNDED: The algorithm stopped because it decided that the problem is infeasible or unbounded; this occasionally happens during MIP presolve.\n\n\n\n\n\n","category":"constant"},{"location":"moi/reference/models/#MathOptInterface.ALMOST_OPTIMAL","page":"Models","title":"MathOptInterface.ALMOST_OPTIMAL","text":"ALMOST_OPTIMAL::TerminationStatusCode\n\nAn instance of the TerminationStatusCode enum.\n\nALMOST_OPTIMAL: The algorithm found a globally optimal solution to relaxed tolerances.\n\n\n\n\n\n","category":"constant"},{"location":"moi/reference/models/#MathOptInterface.ALMOST_INFEASIBLE","page":"Models","title":"MathOptInterface.ALMOST_INFEASIBLE","text":"ALMOST_INFEASIBLE::TerminationStatusCode\n\nAn instance of the TerminationStatusCode enum.\n\nALMOST_INFEASIBLE: The algorithm concluded that no feasible solution exists within relaxed tolerances.\n\n\n\n\n\n","category":"constant"},{"location":"moi/reference/models/#MathOptInterface.ALMOST_DUAL_INFEASIBLE","page":"Models","title":"MathOptInterface.ALMOST_DUAL_INFEASIBLE","text":"ALMOST_DUAL_INFEASIBLE::TerminationStatusCode\n\nAn instance of the TerminationStatusCode enum.\n\nALMOST_DUAL_INFEASIBLE: The algorithm concluded that no dual bound exists for the problem within relaxed tolerances.\n\n\n\n\n\n","category":"constant"},{"location":"moi/reference/models/#MathOptInterface.ALMOST_LOCALLY_SOLVED","page":"Models","title":"MathOptInterface.ALMOST_LOCALLY_SOLVED","text":"ALMOST_LOCALLY_SOLVED::TerminationStatusCode\n\nAn instance of the TerminationStatusCode enum.\n\nALMOST_LOCALLY_SOLVED: The algorithm converged to a stationary point, local optimal solution, or could not find directions for improvement within relaxed tolerances.\n\n\n\n\n\n","category":"constant"},{"location":"moi/reference/models/#MathOptInterface.ITERATION_LIMIT","page":"Models","title":"MathOptInterface.ITERATION_LIMIT","text":"ITERATION_LIMIT::TerminationStatusCode\n\nAn instance of the TerminationStatusCode enum.\n\nITERATION_LIMIT: An iterative algorithm stopped after conducting the maximum number of iterations.\n\n\n\n\n\n","category":"constant"},{"location":"moi/reference/models/#MathOptInterface.TIME_LIMIT","page":"Models","title":"MathOptInterface.TIME_LIMIT","text":"TIME_LIMIT::TerminationStatusCode\n\nAn instance of the TerminationStatusCode enum.\n\nTIME_LIMIT: The algorithm stopped after a user-specified computation time.\n\n\n\n\n\n","category":"constant"},{"location":"moi/reference/models/#MathOptInterface.NODE_LIMIT","page":"Models","title":"MathOptInterface.NODE_LIMIT","text":"NODE_LIMIT::TerminationStatusCode\n\nAn instance of the TerminationStatusCode enum.\n\nNODE_LIMIT: A branch-and-bound algorithm stopped because it explored a maximum number of nodes in the branch-and-bound tree.\n\n\n\n\n\n","category":"constant"},{"location":"moi/reference/models/#MathOptInterface.SOLUTION_LIMIT","page":"Models","title":"MathOptInterface.SOLUTION_LIMIT","text":"SOLUTION_LIMIT::TerminationStatusCode\n\nAn instance of the TerminationStatusCode enum.\n\nSOLUTION_LIMIT: The algorithm stopped because it found the required number of solutions. This is often used in MIPs to get the solver to return the first feasible solution it encounters.\n\n\n\n\n\n","category":"constant"},{"location":"moi/reference/models/#MathOptInterface.MEMORY_LIMIT","page":"Models","title":"MathOptInterface.MEMORY_LIMIT","text":"MEMORY_LIMIT::TerminationStatusCode\n\nAn instance of the TerminationStatusCode enum.\n\nMEMORY_LIMIT: The algorithm stopped because it ran out of memory.\n\n\n\n\n\n","category":"constant"},{"location":"moi/reference/models/#MathOptInterface.OBJECTIVE_LIMIT","page":"Models","title":"MathOptInterface.OBJECTIVE_LIMIT","text":"OBJECTIVE_LIMIT::TerminationStatusCode\n\nAn instance of the TerminationStatusCode enum.\n\nOBJECTIVE_LIMIT: The algorithm stopped because it found a solution better than a minimum limit set by the user.\n\n\n\n\n\n","category":"constant"},{"location":"moi/reference/models/#MathOptInterface.NORM_LIMIT","page":"Models","title":"MathOptInterface.NORM_LIMIT","text":"NORM_LIMIT::TerminationStatusCode\n\nAn instance of the TerminationStatusCode enum.\n\nNORM_LIMIT: The algorithm stopped because the norm of an iterate became too large.\n\n\n\n\n\n","category":"constant"},{"location":"moi/reference/models/#MathOptInterface.OTHER_LIMIT","page":"Models","title":"MathOptInterface.OTHER_LIMIT","text":"OTHER_LIMIT::TerminationStatusCode\n\nAn instance of the TerminationStatusCode enum.\n\nOTHER_LIMIT: The algorithm stopped due to a limit not covered by one of the _LIMIT_ statuses above.\n\n\n\n\n\n","category":"constant"},{"location":"moi/reference/models/#MathOptInterface.SLOW_PROGRESS","page":"Models","title":"MathOptInterface.SLOW_PROGRESS","text":"SLOW_PROGRESS::TerminationStatusCode\n\nAn instance of the TerminationStatusCode enum.\n\nSLOW_PROGRESS: The algorithm stopped because it was unable to continue making progress towards the solution.\n\n\n\n\n\n","category":"constant"},{"location":"moi/reference/models/#MathOptInterface.NUMERICAL_ERROR","page":"Models","title":"MathOptInterface.NUMERICAL_ERROR","text":"NUMERICAL_ERROR::TerminationStatusCode\n\nAn instance of the TerminationStatusCode enum.\n\nNUMERICAL_ERROR: The algorithm stopped because it encountered unrecoverable numerical error.\n\n\n\n\n\n","category":"constant"},{"location":"moi/reference/models/#MathOptInterface.INVALID_MODEL","page":"Models","title":"MathOptInterface.INVALID_MODEL","text":"INVALID_MODEL::TerminationStatusCode\n\nAn instance of the TerminationStatusCode enum.\n\nINVALID_MODEL: The algorithm stopped because the model is invalid.\n\n\n\n\n\n","category":"constant"},{"location":"moi/reference/models/#MathOptInterface.INVALID_OPTION","page":"Models","title":"MathOptInterface.INVALID_OPTION","text":"INVALID_OPTION::TerminationStatusCode\n\nAn instance of the TerminationStatusCode enum.\n\nINVALID_OPTION: The algorithm stopped because it was provided an invalid option.\n\n\n\n\n\n","category":"constant"},{"location":"moi/reference/models/#MathOptInterface.INTERRUPTED","page":"Models","title":"MathOptInterface.INTERRUPTED","text":"INTERRUPTED::TerminationStatusCode\n\nAn instance of the TerminationStatusCode enum.\n\nINTERRUPTED: The algorithm stopped because of an interrupt signal.\n\n\n\n\n\n","category":"constant"},{"location":"moi/reference/models/#MathOptInterface.OTHER_ERROR","page":"Models","title":"MathOptInterface.OTHER_ERROR","text":"OTHER_ERROR::TerminationStatusCode\n\nAn instance of the TerminationStatusCode enum.\n\nOTHER_ERROR: The algorithm stopped because of an error not covered by one of the statuses defined above.\n\n\n\n\n\n","category":"constant"},{"location":"moi/reference/models/#MathOptInterface.PrimalStatus","page":"Models","title":"MathOptInterface.PrimalStatus","text":"PrimalStatus(result_index::Int = 1)\n\nA model attribute for the ResultStatusCode of the primal result result_index. If result_index is omitted, it defaults to 1.\n\nSee ResultCount for information on how the results are ordered.\n\nIf result_index is larger than the value of ResultCount then NO_SOLUTION is returned.\n\n\n\n\n\n","category":"type"},{"location":"moi/reference/models/#MathOptInterface.DualStatus","page":"Models","title":"MathOptInterface.DualStatus","text":"DualStatus(result_index::Int = 1)\n\nA model attribute for the ResultStatusCode of the dual result result_index. If result_index is omitted, it defaults to 1.\n\nSee ResultCount for information on how the results are ordered.\n\nIf result_index is larger than the value of ResultCount then NO_SOLUTION is returned.\n\n\n\n\n\n","category":"type"},{"location":"moi/reference/models/#MathOptInterface.RawStatusString","page":"Models","title":"MathOptInterface.RawStatusString","text":"RawStatusString()\n\nA model attribute for a solver specific string explaining why the optimizer stopped.\n\n\n\n\n\n","category":"type"},{"location":"moi/reference/models/#MathOptInterface.ResultCount","page":"Models","title":"MathOptInterface.ResultCount","text":"ResultCount()\n\nA model attribute for the number of results available.\n\nOrder of solutions\n\nA number of attributes contain an index, result_index, which is used to refer to one of the available results. Thus, result_index must be an integer between 1 and the number of available results.\n\nAs a general rule, the first result (result_index=1) is the most important result (for example, an optimal solution or an infeasibility certificate). Other results will typically be alternate solutions that the solver found during the search for the first result.\n\nIf a (local) optimal solution is available, that is, TerminationStatus is OPTIMAL or LOCALLY_SOLVED, the first result must correspond to the (locally) optimal solution. Other results may be alternative optimal solutions, or they may be other suboptimal solutions; use ObjectiveValue to distinguish between them.\n\nIf a primal or dual infeasibility certificate is available, that is, TerminationStatus is INFEASIBLE or DUAL_INFEASIBLE and the corresponding PrimalStatus or DualStatus is INFEASIBILITY_CERTIFICATE, then the first result must be a certificate. Other results may be alternate certificates, or infeasible points.\n\n\n\n\n\n","category":"type"},{"location":"moi/reference/models/#MathOptInterface.ObjectiveValue","page":"Models","title":"MathOptInterface.ObjectiveValue","text":"ObjectiveValue(result_index::Int = 1)\n\nA model attribute for the objective value of the primal solution result_index.\n\nIf the solver does not have a primal value for the objective because the result_index is beyond the available solutions (whose number is indicated by the ResultCount attribute), getting this attribute must throw a ResultIndexBoundsError. Otherwise, if the result is unavailable for another reason (for instance, only a dual solution is available), the result is undefined. Users should first check PrimalStatus before accessing the ObjectiveValue attribute.\n\nSee ResultCount for information on how the results are ordered.\n\n\n\n\n\n","category":"type"},{"location":"moi/reference/models/#MathOptInterface.DualObjectiveValue","page":"Models","title":"MathOptInterface.DualObjectiveValue","text":"DualObjectiveValue(result_index::Int = 1)\n\nA model attribute for the value of the objective function of the dual problem for the result_indexth dual result.\n\nIf the solver does not have a dual value for the objective because the result_index is beyond the available solutions (whose number is indicated by the ResultCount attribute), getting this attribute must throw a ResultIndexBoundsError. Otherwise, if the result is unavailable for another reason (for instance, only a primal solution is available), the result is undefined. Users should first check DualStatus before accessing the DualObjectiveValue attribute.\n\nSee ResultCount for information on how the results are ordered.\n\n\n\n\n\n","category":"type"},{"location":"moi/reference/models/#MathOptInterface.ObjectiveBound","page":"Models","title":"MathOptInterface.ObjectiveBound","text":"ObjectiveBound()\n\nA model attribute for the best known bound on the optimal objective value.\n\n\n\n\n\n","category":"type"},{"location":"moi/reference/models/#MathOptInterface.RelativeGap","page":"Models","title":"MathOptInterface.RelativeGap","text":"RelativeGap()\n\nA model attribute for the final relative optimality gap.\n\nwarning: Warning\nThe definition of this gap is solver-dependent. However, most solvers implementing this attribute define the relative gap as some variation of fracb-ff, where b is the best bound and f is the best feasible objective value.\n\n\n\n\n\n","category":"type"},{"location":"moi/reference/models/#MathOptInterface.SolveTimeSec","page":"Models","title":"MathOptInterface.SolveTimeSec","text":"SolveTimeSec()\n\nA model attribute for the total elapsed solution time (in seconds) as reported by the optimizer.\n\n\n\n\n\n","category":"type"},{"location":"moi/reference/models/#MathOptInterface.SimplexIterations","page":"Models","title":"MathOptInterface.SimplexIterations","text":"SimplexIterations()\n\nA model attribute for the cumulative number of simplex iterations during the optimization process.\n\nFor a mixed-integer program (MIP), the return value is the total simplex iterations for all nodes.\n\n\n\n\n\n","category":"type"},{"location":"moi/reference/models/#MathOptInterface.BarrierIterations","page":"Models","title":"MathOptInterface.BarrierIterations","text":"BarrierIterations()\n\nA model attribute for the cumulative number of barrier iterations while solving a problem.\n\n\n\n\n\n","category":"type"},{"location":"moi/reference/models/#MathOptInterface.NodeCount","page":"Models","title":"MathOptInterface.NodeCount","text":"NodeCount()\n\nA model attribute for the total number of branch-and-bound nodes explored while solving a mixed-integer program (MIP).\n\n\n\n\n\n","category":"type"},{"location":"moi/reference/models/#ResultStatusCode","page":"Models","title":"ResultStatusCode","text":"","category":"section"},{"location":"moi/reference/models/","page":"Models","title":"Models","text":"ResultStatusCode\nNO_SOLUTION\nFEASIBLE_POINT\nNEARLY_FEASIBLE_POINT\nINFEASIBLE_POINT\nINFEASIBILITY_CERTIFICATE\nNEARLY_INFEASIBILITY_CERTIFICATE\nREDUCTION_CERTIFICATE\nNEARLY_REDUCTION_CERTIFICATE\nUNKNOWN_RESULT_STATUS\nOTHER_RESULT_STATUS","category":"page"},{"location":"moi/reference/models/#MathOptInterface.ResultStatusCode","page":"Models","title":"MathOptInterface.ResultStatusCode","text":"ResultStatusCode\n\nAn Enum of possible values for the PrimalStatus and DualStatus attributes.\n\nThe values indicate how to interpret the result vector.\n\nValues\n\nPossible values are:\n\nNO_SOLUTION: the result vector is empty.\nFEASIBLE_POINT: the result vector is a feasible point.\nNEARLY_FEASIBLE_POINT: the result vector is feasible if some constraint tolerances are relaxed.\nINFEASIBLE_POINT: the result vector is an infeasible point.\nINFEASIBILITY_CERTIFICATE: the result vector is an infeasibility certificate. If the PrimalStatus is INFEASIBILITY_CERTIFICATE, then the primal result vector is a certificate of dual infeasibility. If the DualStatus is INFEASIBILITY_CERTIFICATE, then the dual result vector is a proof of primal infeasibility.\nNEARLY_INFEASIBILITY_CERTIFICATE: the result satisfies a relaxed criterion for a certificate of infeasibility.\nREDUCTION_CERTIFICATE: the result vector is an ill-posed certificate; see this article for details. If the PrimalStatus is REDUCTION_CERTIFICATE, then the primal result vector is a proof that the dual problem is ill-posed. If the DualStatus is REDUCTION_CERTIFICATE, then the dual result vector is a proof that the primal is ill-posed.\nNEARLY_REDUCTION_CERTIFICATE: the result satisfies a relaxed criterion for an ill-posed certificate.\nUNKNOWN_RESULT_STATUS: the result vector contains a solution with an unknown interpretation.\nOTHER_RESULT_STATUS: the result vector contains a solution with an interpretation not covered by one of the statuses defined above\n\n\n\n\n\n","category":"type"},{"location":"moi/reference/models/#MathOptInterface.NO_SOLUTION","page":"Models","title":"MathOptInterface.NO_SOLUTION","text":"NO_SOLUTION::ResultStatusCode\n\nAn instance of the ResultStatusCode enum.\n\nNO_SOLUTION: the result vector is empty.\n\n\n\n\n\n","category":"constant"},{"location":"moi/reference/models/#MathOptInterface.FEASIBLE_POINT","page":"Models","title":"MathOptInterface.FEASIBLE_POINT","text":"FEASIBLE_POINT::ResultStatusCode\n\nAn instance of the ResultStatusCode enum.\n\nFEASIBLE_POINT: the result vector is a feasible point.\n\n\n\n\n\n","category":"constant"},{"location":"moi/reference/models/#MathOptInterface.NEARLY_FEASIBLE_POINT","page":"Models","title":"MathOptInterface.NEARLY_FEASIBLE_POINT","text":"NEARLY_FEASIBLE_POINT::ResultStatusCode\n\nAn instance of the ResultStatusCode enum.\n\nNEARLY_FEASIBLE_POINT: the result vector is feasible if some constraint tolerances are relaxed.\n\n\n\n\n\n","category":"constant"},{"location":"moi/reference/models/#MathOptInterface.INFEASIBLE_POINT","page":"Models","title":"MathOptInterface.INFEASIBLE_POINT","text":"INFEASIBLE_POINT::ResultStatusCode\n\nAn instance of the ResultStatusCode enum.\n\nINFEASIBLE_POINT: the result vector is an infeasible point.\n\n\n\n\n\n","category":"constant"},{"location":"moi/reference/models/#MathOptInterface.INFEASIBILITY_CERTIFICATE","page":"Models","title":"MathOptInterface.INFEASIBILITY_CERTIFICATE","text":"INFEASIBILITY_CERTIFICATE::ResultStatusCode\n\nAn instance of the ResultStatusCode enum.\n\nINFEASIBILITY_CERTIFICATE: the result vector is an infeasibility certificate. If the PrimalStatus is INFEASIBILITY_CERTIFICATE, then the primal result vector is a certificate of dual infeasibility. If the DualStatus is INFEASIBILITY_CERTIFICATE, then the dual result vector is a proof of primal infeasibility.\n\n\n\n\n\n","category":"constant"},{"location":"moi/reference/models/#MathOptInterface.NEARLY_INFEASIBILITY_CERTIFICATE","page":"Models","title":"MathOptInterface.NEARLY_INFEASIBILITY_CERTIFICATE","text":"NEARLY_INFEASIBILITY_CERTIFICATE::ResultStatusCode\n\nAn instance of the ResultStatusCode enum.\n\nNEARLY_INFEASIBILITY_CERTIFICATE: the result satisfies a relaxed criterion for a certificate of infeasibility.\n\n\n\n\n\n","category":"constant"},{"location":"moi/reference/models/#MathOptInterface.REDUCTION_CERTIFICATE","page":"Models","title":"MathOptInterface.REDUCTION_CERTIFICATE","text":"REDUCTION_CERTIFICATE::ResultStatusCode\n\nAn instance of the ResultStatusCode enum.\n\nREDUCTION_CERTIFICATE: the result vector is an ill-posed certificate; see this article for details. If the PrimalStatus is REDUCTION_CERTIFICATE, then the primal result vector is a proof that the dual problem is ill-posed. If the DualStatus is REDUCTION_CERTIFICATE, then the dual result vector is a proof that the primal is ill-posed.\n\n\n\n\n\n","category":"constant"},{"location":"moi/reference/models/#MathOptInterface.NEARLY_REDUCTION_CERTIFICATE","page":"Models","title":"MathOptInterface.NEARLY_REDUCTION_CERTIFICATE","text":"NEARLY_REDUCTION_CERTIFICATE::ResultStatusCode\n\nAn instance of the ResultStatusCode enum.\n\nNEARLY_REDUCTION_CERTIFICATE: the result satisfies a relaxed criterion for an ill-posed certificate.\n\n\n\n\n\n","category":"constant"},{"location":"moi/reference/models/#MathOptInterface.UNKNOWN_RESULT_STATUS","page":"Models","title":"MathOptInterface.UNKNOWN_RESULT_STATUS","text":"UNKNOWN_RESULT_STATUS::ResultStatusCode\n\nAn instance of the ResultStatusCode enum.\n\nUNKNOWN_RESULT_STATUS: the result vector contains a solution with an unknown interpretation.\n\n\n\n\n\n","category":"constant"},{"location":"moi/reference/models/#MathOptInterface.OTHER_RESULT_STATUS","page":"Models","title":"MathOptInterface.OTHER_RESULT_STATUS","text":"OTHER_RESULT_STATUS::ResultStatusCode\n\nAn instance of the ResultStatusCode enum.\n\nOTHER_RESULT_STATUS: the result vector contains a solution with an interpretation not covered by one of the statuses defined above\n\n\n\n\n\n","category":"constant"},{"location":"moi/reference/models/#Conflict-Status","page":"Models","title":"Conflict Status","text":"","category":"section"},{"location":"moi/reference/models/","page":"Models","title":"Models","text":"compute_conflict!\nConflictStatus\nConstraintConflictStatus\nConflictStatusCode\nConflictParticipationStatusCode\nNOT_IN_CONFLICT\nIN_CONFLICT\nMAYBE_IN_CONFLICT","category":"page"},{"location":"moi/reference/models/#MathOptInterface.compute_conflict!","page":"Models","title":"MathOptInterface.compute_conflict!","text":"compute_conflict!(optimizer::AbstractOptimizer)\n\nComputes a minimal subset of constraints such that the model with the other constraint removed is still infeasible.\n\nSome solvers call a set of conflicting constraints an Irreducible Inconsistent Subsystem (IIS).\n\nSee also ConflictStatus and ConstraintConflictStatus.\n\nNote\n\nIf the model is modified after a call to compute_conflict!, the implementor is not obliged to purge the conflict. Any calls to the above attributes may return values for the original conflict without a warning. Similarly, when modifying the model, the conflict can be discarded.\n\n\n\n\n\n","category":"function"},{"location":"moi/reference/models/#MathOptInterface.ConflictStatus","page":"Models","title":"MathOptInterface.ConflictStatus","text":"ConflictStatus()\n\nA model attribute for the ConflictStatusCode explaining why the conflict refiner stopped when computing the conflict.\n\n\n\n\n\n","category":"type"},{"location":"moi/reference/models/#MathOptInterface.ConstraintConflictStatus","page":"Models","title":"MathOptInterface.ConstraintConflictStatus","text":"ConstraintConflictStatus()\n\nA constraint attribute indicating whether the constraint participates in the conflict. Its type is ConflictParticipationStatusCode.\n\n\n\n\n\n","category":"type"},{"location":"moi/reference/models/#MathOptInterface.ConflictStatusCode","page":"Models","title":"MathOptInterface.ConflictStatusCode","text":"ConflictStatusCode\n\nAn Enum of possible values for the ConflictStatus attribute. This attribute is meant to explain the reason why the conflict finder stopped executing in the most recent call to compute_conflict!.\n\nPossible values are:\n\nCOMPUTE_CONFLICT_NOT_CALLED: the function compute_conflict! has not yet been called\nNO_CONFLICT_EXISTS: there is no conflict because the problem is feasible\nNO_CONFLICT_FOUND: the solver could not find a conflict\nCONFLICT_FOUND: at least one conflict could be found\n\n\n\n\n\n","category":"type"},{"location":"moi/reference/models/#MathOptInterface.ConflictParticipationStatusCode","page":"Models","title":"MathOptInterface.ConflictParticipationStatusCode","text":"ConflictParticipationStatusCode\n\nAn Enum of possible values for the ConstraintConflictStatus attribute. This attribute is meant to indicate whether a given constraint participates or not in the last computed conflict.\n\nValues\n\nPossible values are:\n\nNOT_IN_CONFLICT: the constraint does not participate in the conflict\nIN_CONFLICT: the constraint participates in the conflict\nMAYBE_IN_CONFLICT: the constraint may participate in the conflict, the solver was not able to prove that the constraint can be excluded from the conflict\n\n\n\n\n\n","category":"type"},{"location":"moi/reference/models/#MathOptInterface.NOT_IN_CONFLICT","page":"Models","title":"MathOptInterface.NOT_IN_CONFLICT","text":"NOT_IN_CONFLICT::ConflictParticipationStatusCode\n\nAn instance of the ConflictParticipationStatusCode enum.\n\nNOT_IN_CONFLICT: the constraint does not participate in the conflict\n\n\n\n\n\n","category":"constant"},{"location":"moi/reference/models/#MathOptInterface.IN_CONFLICT","page":"Models","title":"MathOptInterface.IN_CONFLICT","text":"IN_CONFLICT::ConflictParticipationStatusCode\n\nAn instance of the ConflictParticipationStatusCode enum.\n\nIN_CONFLICT: the constraint participates in the conflict\n\n\n\n\n\n","category":"constant"},{"location":"moi/reference/models/#MathOptInterface.MAYBE_IN_CONFLICT","page":"Models","title":"MathOptInterface.MAYBE_IN_CONFLICT","text":"MAYBE_IN_CONFLICT::ConflictParticipationStatusCode\n\nAn instance of the ConflictParticipationStatusCode enum.\n\nMAYBE_IN_CONFLICT: the constraint may participate in the conflict, the solver was not able to prove that the constraint can be excluded from the conflict\n\n\n\n\n\n","category":"constant"},{"location":"moi/submodules/Nonlinear/reference/","page":"API Reference","title":"API Reference","text":"EditURL = \"https://github.com/jump-dev/MathOptInterface.jl/blob/v1.34.0/docs/src/submodules/Nonlinear/reference.md\"","category":"page"},{"location":"moi/submodules/Nonlinear/reference/","page":"API Reference","title":"API Reference","text":"CurrentModule = MathOptInterface\nDocTestSetup = quote\n import MathOptInterface as MOI\nend\nDocTestFilters = [r\"MathOptInterface|MOI\"]","category":"page"},{"location":"moi/submodules/Nonlinear/reference/#NonlinearAPI","page":"API Reference","title":"Nonlinear Modeling","text":"","category":"section"},{"location":"moi/submodules/Nonlinear/reference/","page":"API Reference","title":"API Reference","text":"More information can be found in the Nonlinear section of the manual.","category":"page"},{"location":"moi/submodules/Nonlinear/reference/","page":"API Reference","title":"API Reference","text":"Nonlinear\nNonlinear.Model","category":"page"},{"location":"moi/submodules/Nonlinear/reference/#MathOptInterface.Nonlinear","page":"API Reference","title":"MathOptInterface.Nonlinear","text":"Nonlinear\n\nwarning: Warning\nThe Nonlinear submodule is experimental. Until this message is removed, breaking changes may be introduced in any minor or patch release of MathOptInterface.\n\n\n\n\n\n","category":"module"},{"location":"moi/submodules/Nonlinear/reference/#MathOptInterface.Nonlinear.Model","page":"API Reference","title":"MathOptInterface.Nonlinear.Model","text":"Model()\n\nThe core datastructure for representing a nonlinear optimization problem.\n\nIt has the following fields:\n\nobjective::Union{Nothing,Expression} : holds the nonlinear objective function, if one exists, otherwise nothing.\nexpressions::Vector{Expression} : a vector of expressions in the model.\nconstraints::OrderedDict{ConstraintIndex,Constraint} : a map from ConstraintIndex to the corresponding Constraint. An OrderedDict is used instead of a Vector to support constraint deletion.\nparameters::Vector{Float64} : holds the current values of the parameters.\noperators::OperatorRegistry : stores the operators used in the model.\n\n\n\n\n\n","category":"type"},{"location":"moi/submodules/Nonlinear/reference/#nonlinear_api_expressions","page":"API Reference","title":"Expressions","text":"","category":"section"},{"location":"moi/submodules/Nonlinear/reference/","page":"API Reference","title":"API Reference","text":"Nonlinear.ExpressionIndex\nNonlinear.add_expression","category":"page"},{"location":"moi/submodules/Nonlinear/reference/#MathOptInterface.Nonlinear.ExpressionIndex","page":"API Reference","title":"MathOptInterface.Nonlinear.ExpressionIndex","text":"ExpressionIndex\n\nAn index to a nonlinear expression that is returned by add_expression.\n\nGiven data::Model and ex::ExpressionIndex, use data[ex] to retrieve the corresponding Expression.\n\n\n\n\n\n","category":"type"},{"location":"moi/submodules/Nonlinear/reference/#MathOptInterface.Nonlinear.add_expression","page":"API Reference","title":"MathOptInterface.Nonlinear.add_expression","text":"add_expression(model::Model, expr)::ExpressionIndex\n\nParse expr into a Expression and add to model. Returns an ExpressionIndex that can be interpolated into other input expressions.\n\nexpr must be a type that is supported by parse_expression.\n\nExample\n\njulia> import MathOptInterface as MOI\n\njulia> model = MOI.Nonlinear.Model();\n\njulia> x = MOI.VariableIndex(1);\n\njulia> ex = MOI.Nonlinear.add_expression(model, :($x^2 + 1))\nMathOptInterface.Nonlinear.ExpressionIndex(1)\n\njulia> MOI.Nonlinear.set_objective(model, :(sqrt($ex)))\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Nonlinear/reference/#nonlinear_api_parameters","page":"API Reference","title":"Parameters","text":"","category":"section"},{"location":"moi/submodules/Nonlinear/reference/","page":"API Reference","title":"API Reference","text":"Nonlinear.ParameterIndex\nNonlinear.add_parameter","category":"page"},{"location":"moi/submodules/Nonlinear/reference/#MathOptInterface.Nonlinear.ParameterIndex","page":"API Reference","title":"MathOptInterface.Nonlinear.ParameterIndex","text":"ParameterIndex\n\nAn index to a nonlinear parameter that is returned by add_parameter. Given data::Model and p::ParameterIndex, use data[p] to retrieve the current value of the parameter and data[p] = value to set a new value.\n\n\n\n\n\n","category":"type"},{"location":"moi/submodules/Nonlinear/reference/#MathOptInterface.Nonlinear.add_parameter","page":"API Reference","title":"MathOptInterface.Nonlinear.add_parameter","text":"add_parameter(model::Model, value::Float64)::ParameterIndex\n\nAdd a new parameter to model with the default value value. Returns a ParameterIndex that can be interpolated into other input expressions and used to modify the value of the parameter.\n\nExample\n\njulia> import MathOptInterface as MOI\n\njulia> model = MOI.Nonlinear.Model()\nA Nonlinear.Model with:\n 0 objectives\n 0 parameters\n 0 expressions\n 0 constraints\n\njulia> x = MOI.VariableIndex(1)\nMOI.VariableIndex(1)\n\njulia> p = MOI.Nonlinear.add_parameter(model, 1.2)\nMathOptInterface.Nonlinear.ParameterIndex(1)\n\njulia> c = MOI.Nonlinear.add_constraint(model, :($x^2 - $p), MOI.LessThan(0.0))\nMathOptInterface.Nonlinear.ConstraintIndex(1)\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Nonlinear/reference/#nonlinear_api_objectives","page":"API Reference","title":"Objectives","text":"","category":"section"},{"location":"moi/submodules/Nonlinear/reference/","page":"API Reference","title":"API Reference","text":"Nonlinear.set_objective","category":"page"},{"location":"moi/submodules/Nonlinear/reference/#MathOptInterface.Nonlinear.set_objective","page":"API Reference","title":"MathOptInterface.Nonlinear.set_objective","text":"set_objective(model::Model, obj)::Nothing\n\nParse obj into a Expression and set as the objective function of model.\n\nobj must be a type that is supported by parse_expression.\n\nTo remove the objective, pass nothing.\n\nExample\n\njulia> import MathOptInterface as MOI\n\njulia> model = MOI.Nonlinear.Model()\nA Nonlinear.Model with:\n 0 objectives\n 0 parameters\n 0 expressions\n 0 constraints\n\njulia> x = MOI.VariableIndex(1)\nMOI.VariableIndex(1)\n\njulia> MOI.Nonlinear.set_objective(model, :($x^2 + 1))\n\njulia> MOI.Nonlinear.set_objective(model, x)\n\njulia> MOI.Nonlinear.set_objective(model, nothing)\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Nonlinear/reference/#nonlinear_api_constraints","page":"API Reference","title":"Constraints","text":"","category":"section"},{"location":"moi/submodules/Nonlinear/reference/","page":"API Reference","title":"API Reference","text":"Nonlinear.ConstraintIndex\nNonlinear.add_constraint\nNonlinear.delete","category":"page"},{"location":"moi/submodules/Nonlinear/reference/#MathOptInterface.Nonlinear.ConstraintIndex","page":"API Reference","title":"MathOptInterface.Nonlinear.ConstraintIndex","text":"ConstraintIndex\n\nAn index to a nonlinear constraint that is returned by add_constraint.\n\nGiven data::Model and c::ConstraintIndex, use data[c] to retrieve the corresponding Constraint.\n\n\n\n\n\n","category":"type"},{"location":"moi/submodules/Nonlinear/reference/#MathOptInterface.Nonlinear.add_constraint","page":"API Reference","title":"MathOptInterface.Nonlinear.add_constraint","text":"add_constraint(\n model::Model,\n func,\n set::Union{\n MOI.GreaterThan{Float64},\n MOI.LessThan{Float64},\n MOI.Interval{Float64},\n MOI.EqualTo{Float64},\n },\n)\n\nParse func and set into a Constraint and add to model. Returns a ConstraintIndex that can be used to delete the constraint or query solution information.\n\nExample\n\njulia> import MathOptInterface as MOI\n\njulia> model = MOI.Nonlinear.Model();\n\njulia> x = MOI.VariableIndex(1);\n\njulia> c = MOI.Nonlinear.add_constraint(model, :($x^2), MOI.LessThan(1.0))\nMathOptInterface.Nonlinear.ConstraintIndex(1)\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Nonlinear/reference/#MathOptInterface.Nonlinear.delete","page":"API Reference","title":"MathOptInterface.Nonlinear.delete","text":"delete(model::Model, c::ConstraintIndex)::Nothing\n\nDelete the constraint index c from model.\n\nExample\n\njulia> import MathOptInterface as MOI\n\njulia> model = MOI.Nonlinear.Model()\nA Nonlinear.Model with:\n 0 objectives\n 0 parameters\n 0 expressions\n 0 constraints\n\njulia> x = MOI.VariableIndex(1)\nMOI.VariableIndex(1)\n\njulia> c = MOI.Nonlinear.add_constraint(model, :($x^2), MOI.LessThan(1.0))\nMathOptInterface.Nonlinear.ConstraintIndex(1)\n\njulia> model\nA Nonlinear.Model with:\n 0 objectives\n 0 parameters\n 0 expressions\n 1 constraint\n\njulia> MOI.Nonlinear.delete(model, c)\n\njulia> model\nA Nonlinear.Model with:\n 0 objectives\n 0 parameters\n 0 expressions\n 0 constraints\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Nonlinear/reference/#nonlinear_api_operators","page":"API Reference","title":"User-defined operators","text":"","category":"section"},{"location":"moi/submodules/Nonlinear/reference/","page":"API Reference","title":"API Reference","text":"Nonlinear.OperatorRegistry\nNonlinear.DEFAULT_UNIVARIATE_OPERATORS\nNonlinear.DEFAULT_MULTIVARIATE_OPERATORS\nNonlinear.register_operator\nNonlinear.register_operator_if_needed\nNonlinear.assert_registered\nNonlinear.check_return_type\nNonlinear.eval_univariate_function\nNonlinear.eval_univariate_gradient\nNonlinear.eval_univariate_hessian\nNonlinear.eval_multivariate_function\nNonlinear.eval_multivariate_gradient\nNonlinear.eval_multivariate_hessian\nNonlinear.eval_logic_function\nNonlinear.eval_comparison_function","category":"page"},{"location":"moi/submodules/Nonlinear/reference/#MathOptInterface.Nonlinear.OperatorRegistry","page":"API Reference","title":"MathOptInterface.Nonlinear.OperatorRegistry","text":"OperatorRegistry()\n\nCreate a new OperatorRegistry to store and evaluate univariate and multivariate operators.\n\n\n\n\n\n","category":"type"},{"location":"moi/submodules/Nonlinear/reference/#MathOptInterface.Nonlinear.DEFAULT_UNIVARIATE_OPERATORS","page":"API Reference","title":"MathOptInterface.Nonlinear.DEFAULT_UNIVARIATE_OPERATORS","text":"DEFAULT_UNIVARIATE_OPERATORS\n\nThe list of univariate operators that are supported by default.\n\nExample\n\njulia> import MathOptInterface as MOI\n\njulia> MOI.Nonlinear.DEFAULT_UNIVARIATE_OPERATORS\n73-element Vector{Symbol}:\n :+\n :-\n :abs\n :sign\n :sqrt\n :cbrt\n :abs2\n :inv\n :log\n :log10\n ⋮\n :airybi\n :airyaiprime\n :airybiprime\n :besselj0\n :besselj1\n :bessely0\n :bessely1\n :erfcx\n :dawson\n\n\n\n\n\n","category":"constant"},{"location":"moi/submodules/Nonlinear/reference/#MathOptInterface.Nonlinear.DEFAULT_MULTIVARIATE_OPERATORS","page":"API Reference","title":"MathOptInterface.Nonlinear.DEFAULT_MULTIVARIATE_OPERATORS","text":"DEFAULT_MULTIVARIATE_OPERATORS\n\nThe list of multivariate operators that are supported by default.\n\nExample\n\njulia> import MathOptInterface as MOI\n\njulia> MOI.Nonlinear.DEFAULT_MULTIVARIATE_OPERATORS\n9-element Vector{Symbol}:\n :+\n :-\n :*\n :^\n :/\n :ifelse\n :atan\n :min\n :max\n\n\n\n\n\n","category":"constant"},{"location":"moi/submodules/Nonlinear/reference/#MathOptInterface.Nonlinear.register_operator","page":"API Reference","title":"MathOptInterface.Nonlinear.register_operator","text":"register_operator(\n model::Model,\n op::Symbol,\n nargs::Int,\n f::Function,\n [∇f::Function],\n [∇²f::Function],\n)\n\nRegister the user-defined operator op with nargs input arguments in model.\n\nUnivariate functions\n\nf(x::T)::T must be a function that takes a single input argument x and returns the function evaluated at x. If ∇f and ∇²f are not provided, f must support any Real input type T.\n∇f(x::T)::T is a function that takes a single input argument x and returns the first derivative of f with respect to x. If ∇²f is not provided, ∇f must support any Real input type T.\n∇²f(x::T)::T is a function that takes a single input argument x and returns the second derivative of f with respect to x.\n\nMultivariate functions\n\nf(x::T...)::T must be a function that takes a nargs input arguments x and returns the function evaluated at x. If ∇f and ∇²f are not provided, f must support any Real input type T.\n∇f(g::AbstractVector{T}, x::T...)::T is a function that takes a cache vector g of length length(x), and fills each element g[i] with the partial derivative of f with respect to x[i].\n∇²f(H::AbstractMatrix, x::T...)::T is a function that takes a matrix H and fills the lower-triangular components H[i, j] with the Hessian of f with respect to x[i] and x[j] for i >= j.\n\nNotes for multivariate Hessians\n\nH has size(H) == (length(x), length(x)), but you must not access elements H[i, j] for i > j.\nH is dense, but you do not need to fill structural zeros.\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Nonlinear/reference/#MathOptInterface.Nonlinear.register_operator_if_needed","page":"API Reference","title":"MathOptInterface.Nonlinear.register_operator_if_needed","text":"register_operator_if_needed(\n registry::OperatorRegistry,\n op::Symbol,\n nargs::Int,\n f::Function;\n)\n\nSimilar to register_operator, but this function warns if the function is not registered, and skips silently if it already is.\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Nonlinear/reference/#MathOptInterface.Nonlinear.assert_registered","page":"API Reference","title":"MathOptInterface.Nonlinear.assert_registered","text":"assert_registered(registry::OperatorRegistry, op::Symbol, nargs::Int)\n\nThrow an error if op is not registered in registry with nargs arguments.\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Nonlinear/reference/#MathOptInterface.Nonlinear.check_return_type","page":"API Reference","title":"MathOptInterface.Nonlinear.check_return_type","text":"check_return_type(::Type{T}, ret::S) where {T,S}\n\nOverload this method for new types S to throw an informative error if a user-defined function returns the type S instead of T.\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Nonlinear/reference/#MathOptInterface.Nonlinear.eval_univariate_function","page":"API Reference","title":"MathOptInterface.Nonlinear.eval_univariate_function","text":"eval_univariate_function(\n registry::OperatorRegistry,\n op::Symbol,\n x::T,\n) where {T}\n\nEvaluate the operator op(x)::T, where op is a univariate function in registry.\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Nonlinear/reference/#MathOptInterface.Nonlinear.eval_univariate_gradient","page":"API Reference","title":"MathOptInterface.Nonlinear.eval_univariate_gradient","text":"eval_univariate_gradient(\n registry::OperatorRegistry,\n op::Symbol,\n x::T,\n) where {T}\n\nEvaluate the first-derivative of the operator op(x)::T, where op is a univariate function in registry.\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Nonlinear/reference/#MathOptInterface.Nonlinear.eval_univariate_hessian","page":"API Reference","title":"MathOptInterface.Nonlinear.eval_univariate_hessian","text":"eval_univariate_hessian(\n registry::OperatorRegistry,\n op::Symbol,\n x::T,\n) where {T}\n\nEvaluate the second-derivative of the operator op(x)::T, where op is a univariate function in registry.\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Nonlinear/reference/#MathOptInterface.Nonlinear.eval_multivariate_function","page":"API Reference","title":"MathOptInterface.Nonlinear.eval_multivariate_function","text":"eval_multivariate_function(\n registry::OperatorRegistry,\n op::Symbol,\n x::AbstractVector{T},\n) where {T}\n\nEvaluate the operator op(x)::T, where op is a multivariate function in registry.\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Nonlinear/reference/#MathOptInterface.Nonlinear.eval_multivariate_gradient","page":"API Reference","title":"MathOptInterface.Nonlinear.eval_multivariate_gradient","text":"eval_multivariate_gradient(\n registry::OperatorRegistry,\n op::Symbol,\n g::AbstractVector{T},\n x::AbstractVector{T},\n) where {T}\n\nEvaluate the gradient of operator g .= ∇op(x), where op is a multivariate function in registry.\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Nonlinear/reference/#MathOptInterface.Nonlinear.eval_multivariate_hessian","page":"API Reference","title":"MathOptInterface.Nonlinear.eval_multivariate_hessian","text":"eval_multivariate_hessian(\n registry::OperatorRegistry,\n op::Symbol,\n H::AbstractMatrix,\n x::AbstractVector{T},\n) where {T}\n\nEvaluate the Hessian of operator ∇²op(x), where op is a multivariate function in registry.\n\nThe Hessian is stored in the lower-triangular part of the matrix H.\n\nnote: Note\nImplementations of the Hessian operators will not fill structural zeros. Therefore, before calling this function you should pre-populate the matrix H with 0.\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Nonlinear/reference/#MathOptInterface.Nonlinear.eval_logic_function","page":"API Reference","title":"MathOptInterface.Nonlinear.eval_logic_function","text":"eval_logic_function(\n registry::OperatorRegistry,\n op::Symbol,\n lhs::T,\n rhs::T,\n)::Bool where {T}\n\nEvaluate (lhs op rhs)::Bool, where op is a logic operator in registry.\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Nonlinear/reference/#MathOptInterface.Nonlinear.eval_comparison_function","page":"API Reference","title":"MathOptInterface.Nonlinear.eval_comparison_function","text":"eval_comparison_function(\n registry::OperatorRegistry,\n op::Symbol,\n lhs::T,\n rhs::T,\n)::Bool where {T}\n\nEvaluate (lhs op rhs)::Bool, where op is a comparison operator in registry.\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Nonlinear/reference/#Automatic-differentiation-backends","page":"API Reference","title":"Automatic-differentiation backends","text":"","category":"section"},{"location":"moi/submodules/Nonlinear/reference/","page":"API Reference","title":"API Reference","text":"Nonlinear.Evaluator\nNonlinear.AbstractAutomaticDifferentiation\nNonlinear.ExprGraphOnly\nNonlinear.SparseReverseMode","category":"page"},{"location":"moi/submodules/Nonlinear/reference/#MathOptInterface.Nonlinear.Evaluator","page":"API Reference","title":"MathOptInterface.Nonlinear.Evaluator","text":"Evaluator(\n model::Model,\n backend::AbstractAutomaticDifferentiation,\n ordered_variables::Vector{MOI.VariableIndex},\n)\n\nCreate Evaluator, a subtype of MOI.AbstractNLPEvaluator, from Model.\n\n\n\n\n\n","category":"type"},{"location":"moi/submodules/Nonlinear/reference/#MathOptInterface.Nonlinear.AbstractAutomaticDifferentiation","page":"API Reference","title":"MathOptInterface.Nonlinear.AbstractAutomaticDifferentiation","text":"AbstractAutomaticDifferentiation\n\nAn abstract type for extending Evaluator.\n\n\n\n\n\n","category":"type"},{"location":"moi/submodules/Nonlinear/reference/#MathOptInterface.Nonlinear.ExprGraphOnly","page":"API Reference","title":"MathOptInterface.Nonlinear.ExprGraphOnly","text":"ExprGraphOnly() <: AbstractAutomaticDifferentiation\n\nThe default implementation of AbstractAutomaticDifferentiation. The only supported feature is :ExprGraph.\n\n\n\n\n\n","category":"type"},{"location":"moi/submodules/Nonlinear/reference/#MathOptInterface.Nonlinear.SparseReverseMode","page":"API Reference","title":"MathOptInterface.Nonlinear.SparseReverseMode","text":"SparseReverseMode() <: AbstractAutomaticDifferentiation\n\nAn implementation of AbstractAutomaticDifferentiation that uses sparse reverse-mode automatic differentiation to compute derivatives. Supports all features in the MOI nonlinear interface.\n\n\n\n\n\n","category":"type"},{"location":"moi/submodules/Nonlinear/reference/#Data-structure","page":"API Reference","title":"Data-structure","text":"","category":"section"},{"location":"moi/submodules/Nonlinear/reference/","page":"API Reference","title":"API Reference","text":"Nonlinear.Node\nNonlinear.NodeType\nNonlinear.Expression\nNonlinear.Constraint\nNonlinear.adjacency_matrix\nNonlinear.parse_expression\nNonlinear.convert_to_expr\nNonlinear.ordinal_index","category":"page"},{"location":"moi/submodules/Nonlinear/reference/#MathOptInterface.Nonlinear.Node","page":"API Reference","title":"MathOptInterface.Nonlinear.Node","text":"struct Node\n type::NodeType\n index::Int\n parent::Int\nend\n\nA single node in a nonlinear expression tree. Used by Expression.\n\nSee the MathOptInterface documentation for information on how the nodes and values form an expression tree.\n\n\n\n\n\n","category":"type"},{"location":"moi/submodules/Nonlinear/reference/#MathOptInterface.Nonlinear.NodeType","page":"API Reference","title":"MathOptInterface.Nonlinear.NodeType","text":"NodeType\n\nAn enum describing the possible node types. Each Node has a .index field, which should be interpreted as follows:\n\nNODE_CALL_MULTIVARIATE: the index into operators.multivariate_operators\nNODE_CALL_UNIVARIATE: the index into operators.univariate_operators\nNODE_LOGIC: the index into operators.logic_operators\nNODE_COMPARISON: the index into operators.comparison_operators\nNODE_MOI_VARIABLE: the value of MOI.VariableIndex(index) in the user's space of the model.\nNODE_VARIABLE: the 1-based index of the internal vector\nNODE_VALUE: the index into the .values field of Expression\nNODE_PARAMETER: the index into data.parameters\nNODE_SUBEXPRESSION: the index into data.expressions\n\n\n\n\n\n","category":"type"},{"location":"moi/submodules/Nonlinear/reference/#MathOptInterface.Nonlinear.Expression","page":"API Reference","title":"MathOptInterface.Nonlinear.Expression","text":"struct Expression\n nodes::Vector{Node}\n values::Vector{Float64}\nend\n\nThe core type that represents a nonlinear expression. See the MathOptInterface documentation for information on how the nodes and values form an expression tree.\n\n\n\n\n\n","category":"type"},{"location":"moi/submodules/Nonlinear/reference/#MathOptInterface.Nonlinear.Constraint","page":"API Reference","title":"MathOptInterface.Nonlinear.Constraint","text":"struct Constraint\n expression::Expression\n set::Union{\n MOI.LessThan{Float64},\n MOI.GreaterThan{Float64},\n MOI.EqualTo{Float64},\n MOI.Interval{Float64},\n }\nend\n\nA type to hold information relating to the nonlinear constraint f(x) in S, where f(x) is defined by .expression, and S is .set.\n\n\n\n\n\n","category":"type"},{"location":"moi/submodules/Nonlinear/reference/#MathOptInterface.Nonlinear.adjacency_matrix","page":"API Reference","title":"MathOptInterface.Nonlinear.adjacency_matrix","text":"adjacency_matrix(nodes::Vector{Node})\n\nCompute the sparse adjacency matrix describing the parent-child relationships in nodes.\n\nThe element (i, j) is true if there is an edge from node[j] to node[i]. Since we get a column-oriented matrix, this gives us a fast way to look up the edges leaving any node (that is, the children).\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Nonlinear/reference/#MathOptInterface.Nonlinear.parse_expression","page":"API Reference","title":"MathOptInterface.Nonlinear.parse_expression","text":"parse_expression(data::Model, input)::Expression\n\nParse input into a Expression.\n\n\n\n\n\nparse_expression(\n data::Model,\n expr::Expression,\n input::Any,\n parent_index::Int,\n)::Expression\n\nParse input into a Expression, and add it to expr as a child of expr.nodes[parent_index]. Existing subexpressions and parameters are stored in data.\n\nYou can extend parsing support to new types of objects by overloading this method with a different type on input::Any.\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Nonlinear/reference/#MathOptInterface.Nonlinear.convert_to_expr","page":"API Reference","title":"MathOptInterface.Nonlinear.convert_to_expr","text":"convert_to_expr(data::Model, expr::Expression)\n\nConvert the Expression expr into a Julia Expr.\n\nsubexpressions are represented by a ExpressionIndex object.\nparameters are represented by a ParameterIndex object.\nvariables are represented by an MOI.VariableIndex object.\n\n\n\n\n\nconvert_to_expr(\n evaluator::Evaluator,\n expr::Expression;\n moi_output_format::Bool,\n)\n\nConvert the Expression expr into a Julia Expr.\n\nIf moi_output_format = true:\n\nsubexpressions will be converted to Julia Expr and substituted into the output expression.\nthe current value of each parameter will be interpolated into the expression\nvariables will be represented in the form x[MOI.VariableIndex(i)]\n\nIf moi_output_format = false:\n\nsubexpressions will be represented by a ExpressionIndex object.\nparameters will be represented by a ParameterIndex object.\nvariables will be represented by an MOI.VariableIndex object.\n\nwarning: Warning\nTo use moi_output_format = true, you must have first called MOI.initialize with :ExprGraph as a requested feature.\n\n\n\n\n\n","category":"function"},{"location":"moi/submodules/Nonlinear/reference/#MathOptInterface.Nonlinear.ordinal_index","page":"API Reference","title":"MathOptInterface.Nonlinear.ordinal_index","text":"ordinal_index(evaluator::Evaluator, c::ConstraintIndex)::Int\n\nReturn the 1-indexed value of the constraint index c in evaluator.\n\nExample\n\njulia> import MathOptInterface as MOI\n\njulia> model = MOI.Nonlinear.Model()\nA Nonlinear.Model with:\n 0 objectives\n 0 parameters\n 0 expressions\n 0 constraints\n\njulia> x = MOI.VariableIndex(1)\nMOI.VariableIndex(1)\n\njulia> c1 = MOI.Nonlinear.add_constraint(model, :($x^2), MOI.LessThan(1.0))\nMathOptInterface.Nonlinear.ConstraintIndex(1)\n\njulia> c2 = MOI.Nonlinear.add_constraint(model, :($x^2), MOI.LessThan(1.0))\nMathOptInterface.Nonlinear.ConstraintIndex(2)\n\njulia> evaluator = MOI.Nonlinear.Evaluator(model)\nNonlinear.Evaluator with available features:\n * :ExprGraph\n\njulia> MOI.initialize(evaluator, Symbol[])\n\njulia> MOI.Nonlinear.ordinal_index(evaluator, c2) # Returns 2\n2\n\njulia> MOI.Nonlinear.delete(model, c1)\n\njulia> evaluator = MOI.Nonlinear.Evaluator(model)\nNonlinear.Evaluator with available features:\n * :ExprGraph\n\njulia> MOI.initialize(evaluator, Symbol[])\n\njulia> MOI.Nonlinear.ordinal_index(evaluator, c2) # Returns 1\n1\n\n\n\n\n\n","category":"function"},{"location":"packages/Juniper/","page":"lanl-ansi/Juniper.jl","title":"lanl-ansi/Juniper.jl","text":"EditURL = \"https://github.com/lanl-ansi/Juniper.jl/blob/v0.9.2/README.md\"","category":"page"},{"location":"packages/Juniper/#Juniper","page":"lanl-ansi/Juniper.jl","title":"Juniper","text":"","category":"section"},{"location":"packages/Juniper/","page":"lanl-ansi/Juniper.jl","title":"lanl-ansi/Juniper.jl","text":"(Image: CI) (Image: codecov) (Image: Documentation)","category":"page"},{"location":"packages/Juniper/","page":"lanl-ansi/Juniper.jl","title":"lanl-ansi/Juniper.jl","text":"Juniper (Jump Nonlinear Integer Program solver) is a solver for mixed-integer nonlinear programs. ","category":"page"},{"location":"packages/Juniper/","page":"lanl-ansi/Juniper.jl","title":"lanl-ansi/Juniper.jl","text":"It is a heuristic which is not guaranteed to find the global optimum. If you need the global optimum, check out Alpine.","category":"page"},{"location":"packages/Juniper/#Installation","page":"lanl-ansi/Juniper.jl","title":"Installation","text":"","category":"section"},{"location":"packages/Juniper/","page":"lanl-ansi/Juniper.jl","title":"lanl-ansi/Juniper.jl","text":"Install Juniper using the Julia package manager:","category":"page"},{"location":"packages/Juniper/","page":"lanl-ansi/Juniper.jl","title":"lanl-ansi/Juniper.jl","text":"import Pkg\nPkg.add(\"JuMP\")","category":"page"},{"location":"packages/Juniper/#Use-with-JuMP","page":"lanl-ansi/Juniper.jl","title":"Use with JuMP","text":"","category":"section"},{"location":"packages/Juniper/","page":"lanl-ansi/Juniper.jl","title":"lanl-ansi/Juniper.jl","text":"Use Juniper with JuMP as follows:","category":"page"},{"location":"packages/Juniper/","page":"lanl-ansi/Juniper.jl","title":"lanl-ansi/Juniper.jl","text":"using JuMP, Juniper, Ipopt\nipopt = optimizer_with_attributes(Ipopt.Optimizer, \"print_level\"=>0)\noptimizer = optimizer_with_attributes(Juniper.Optimizer, \"nl_solver\"=>ipopt)\nmodel = Model(optimizer)\nv = [10, 20, 12, 23, 42]\nw = [12, 45, 12, 22, 21]\n@variable(model, x[1:5], Bin)\n@objective(model, Max, v' * x)\n@constraint(model, sum(w[i]*x[i]^2 for i in 1:5) <= 45)\noptimize!(model)\nprintln(termination_status(model))\nprintln(objective_value(model))\nprintln(value.(x))","category":"page"},{"location":"packages/Juniper/","page":"lanl-ansi/Juniper.jl","title":"lanl-ansi/Juniper.jl","text":"The nl_solver is used by Juniper to solve continuous nonlinear sub-problems while Juniper searches for acceptable assignments to the discrete variables. A common choice is Ipopt, but any optimizer that supports the continuous relaxation of the model may be used.","category":"page"},{"location":"packages/Juniper/","page":"lanl-ansi/Juniper.jl","title":"lanl-ansi/Juniper.jl","text":"To solve problems with more complex nonlinear functions, use the @NLconstraint and @NLobjective JuMP macros.","category":"page"},{"location":"packages/Juniper/#Documentation","page":"lanl-ansi/Juniper.jl","title":"Documentation","text":"","category":"section"},{"location":"packages/Juniper/","page":"lanl-ansi/Juniper.jl","title":"lanl-ansi/Juniper.jl","text":"The online documentation is available at https://lanl-ansi.github.io/Juniper.jl/stable/.","category":"page"},{"location":"packages/Juniper/#Feasibility-pump","page":"lanl-ansi/Juniper.jl","title":"Feasibility pump","text":"","category":"section"},{"location":"packages/Juniper/","page":"lanl-ansi/Juniper.jl","title":"lanl-ansi/Juniper.jl","text":"If Juniper has difficulty finding feasible solutions on your model, try adding a solver that supports integer variables (for example, HiGHS) to run a feasibility pump:","category":"page"},{"location":"packages/Juniper/","page":"lanl-ansi/Juniper.jl","title":"lanl-ansi/Juniper.jl","text":"using JuMP, Juniper, Ipopt, HiGHS\nipopt = optimizer_with_attributes(Ipopt.Optimizer, \"print_level\" => 0)\nhighs = optimizer_with_attributes(HiGHS.Optimizer, \"output_flag\" => false)\nmodel = Model(\n optimizer_with_attributes(\n Juniper.Optimizer,\n \"nl_solver\" => ipopt,\n \"mip_solver\" => highs,\n ),\n)","category":"page"},{"location":"packages/Juniper/","page":"lanl-ansi/Juniper.jl","title":"lanl-ansi/Juniper.jl","text":"The feasibility pump is used at the start of Juniper to find a feasible solution before the branch and bound part starts. For some classes of problems this can be a highly effective pre-processor.","category":"page"},{"location":"packages/Juniper/#Citing-Juniper","page":"lanl-ansi/Juniper.jl","title":"Citing Juniper","text":"","category":"section"},{"location":"packages/Juniper/","page":"lanl-ansi/Juniper.jl","title":"lanl-ansi/Juniper.jl","text":"If you find Juniper useful in your work, we kindly request that you cite the following paper or technical report:","category":"page"},{"location":"packages/Juniper/","page":"lanl-ansi/Juniper.jl","title":"lanl-ansi/Juniper.jl","text":"@inproceedings{juniper,\n Author = {Ole Kröger and Carleton Coffrin and Hassan Hijazi and Harsha Nagarajan},\n Title = {Juniper: An Open-Source Nonlinear Branch-and-Bound Solver in Julia},\n booktitle=\"Integration of Constraint Programming, Artificial Intelligence, and Operations Research\",\n pages=\"377--386\",\n year=\"2018\",\n publisher=\"Springer International Publishing\",\n isbn=\"978-3-319-93031-2\"\n}","category":"page"},{"location":"tutorials/linear/diet/","page":"The diet problem","title":"The diet problem","text":"EditURL = \"diet.jl\"","category":"page"},{"location":"tutorials/linear/diet/#The-diet-problem","page":"The diet problem","title":"The diet problem","text":"","category":"section"},{"location":"tutorials/linear/diet/","page":"The diet problem","title":"The diet problem","text":"This tutorial was generated using Literate.jl. Download the source as a .jl file.","category":"page"},{"location":"tutorials/linear/diet/","page":"The diet problem","title":"The diet problem","text":"The purpose of this tutorial is to demonstrate how to incorporate DataFrames into a JuMP model. As an example, we use classic Stigler diet problem.","category":"page"},{"location":"tutorials/linear/diet/#Required-packages","page":"The diet problem","title":"Required packages","text":"","category":"section"},{"location":"tutorials/linear/diet/","page":"The diet problem","title":"The diet problem","text":"This tutorial requires the following packages:","category":"page"},{"location":"tutorials/linear/diet/","page":"The diet problem","title":"The diet problem","text":"using JuMP\nimport CSV\nimport DataFrames\nimport HiGHS\nimport Test","category":"page"},{"location":"tutorials/linear/diet/#Formulation","page":"The diet problem","title":"Formulation","text":"","category":"section"},{"location":"tutorials/linear/diet/","page":"The diet problem","title":"The diet problem","text":"We wish to cook a nutritionally balanced meal by choosing the quantity of each food f to eat from a set of foods F in our kitchen.","category":"page"},{"location":"tutorials/linear/diet/","page":"The diet problem","title":"The diet problem","text":"Each food f has a cost, c_f, as well as a macro-nutrient profile a_mf for each macro-nutrient m in M.","category":"page"},{"location":"tutorials/linear/diet/","page":"The diet problem","title":"The diet problem","text":"Because we care about a nutritionally balanced meal, we set some minimum and maximum limits for each nutrient, which we denote l_m and u_m respectively.","category":"page"},{"location":"tutorials/linear/diet/","page":"The diet problem","title":"The diet problem","text":"Furthermore, because we are optimizers, we seek the minimum cost solution.","category":"page"},{"location":"tutorials/linear/diet/","page":"The diet problem","title":"The diet problem","text":"With a little effort, we can formulate our dinner problem as the following linear program:","category":"page"},{"location":"tutorials/linear/diet/","page":"The diet problem","title":"The diet problem","text":"beginaligned\nmin sumlimits_f in F c_f x_f \ntextst l_m le sumlimits_f in F a_mf x_f le u_m forall m in M \n x_f ge 0 forall f in F\nendaligned","category":"page"},{"location":"tutorials/linear/diet/","page":"The diet problem","title":"The diet problem","text":"In the rest of this tutorial, we will create and solve this problem in JuMP, and learn what we should cook for dinner.","category":"page"},{"location":"tutorials/linear/diet/#Data","page":"The diet problem","title":"Data","text":"","category":"section"},{"location":"tutorials/linear/diet/","page":"The diet problem","title":"The diet problem","text":"First, we need some data for the problem. For this tutorial, we'll write CSV files to a temporary directory from Julia. If you have existing files, you could change the filenames to point to them instead.","category":"page"},{"location":"tutorials/linear/diet/","page":"The diet problem","title":"The diet problem","text":"dir = mktempdir()","category":"page"},{"location":"tutorials/linear/diet/","page":"The diet problem","title":"The diet problem","text":"The first file is a list of foods with their macro-nutrient profile:","category":"page"},{"location":"tutorials/linear/diet/","page":"The diet problem","title":"The diet problem","text":"food_csv_filename = joinpath(dir, \"diet_foods.csv\")\nopen(food_csv_filename, \"w\") do io\n write(\n io,\n \"\"\"\n name,cost,calories,protein,fat,sodium\n hamburger,2.49,410,24,26,730\n chicken,2.89,420,32,10,1190\n hot dog,1.50,560,20,32,1800\n fries,1.89,380,4,19,270\n macaroni,2.09,320,12,10,930\n pizza,1.99,320,15,12,820\n salad,2.49,320,31,12,1230\n milk,0.89,100,8,2.5,125\n ice cream,1.59,330,8,10,180\n \"\"\",\n )\n return\nend\nfoods = CSV.read(food_csv_filename, DataFrames.DataFrame)","category":"page"},{"location":"tutorials/linear/diet/","page":"The diet problem","title":"The diet problem","text":"Here, F is foods.name and c_f is foods.cost. (We're also playing a bit loose the term \"macro-nutrient\" by including calories and sodium.)","category":"page"},{"location":"tutorials/linear/diet/","page":"The diet problem","title":"The diet problem","text":"We also need our minimum and maximum limits:","category":"page"},{"location":"tutorials/linear/diet/","page":"The diet problem","title":"The diet problem","text":"nutrient_csv_filename = joinpath(dir, \"diet_nutrient.csv\")\nopen(nutrient_csv_filename, \"w\") do io\n write(\n io,\n \"\"\"\n nutrient,min,max\n calories,1800,2200\n protein,91,\n fat,0,65\n sodium,0,1779\n \"\"\",\n )\n return\nend\nlimits = CSV.read(nutrient_csv_filename, DataFrames.DataFrame)","category":"page"},{"location":"tutorials/linear/diet/","page":"The diet problem","title":"The diet problem","text":"Protein is missing data for the maximum. Let's fix that using coalesce:","category":"page"},{"location":"tutorials/linear/diet/","page":"The diet problem","title":"The diet problem","text":"limits.max = coalesce.(limits.max, Inf)\nlimits","category":"page"},{"location":"tutorials/linear/diet/#JuMP-formulation","page":"The diet problem","title":"JuMP formulation","text":"","category":"section"},{"location":"tutorials/linear/diet/","page":"The diet problem","title":"The diet problem","text":"Now we're ready to convert our mathematical formulation into a JuMP model.","category":"page"},{"location":"tutorials/linear/diet/","page":"The diet problem","title":"The diet problem","text":"First, create a new JuMP model. Since we have a linear program, we'll use HiGHS as our optimizer:","category":"page"},{"location":"tutorials/linear/diet/","page":"The diet problem","title":"The diet problem","text":"model = Model(HiGHS.Optimizer)\nset_silent(model)","category":"page"},{"location":"tutorials/linear/diet/","page":"The diet problem","title":"The diet problem","text":"Next, we create a set of decision variables x, with one element for each row in the DataFrame, and each x has a lower bound of 0:","category":"page"},{"location":"tutorials/linear/diet/","page":"The diet problem","title":"The diet problem","text":"@variable(model, x[foods.name] >= 0)","category":"page"},{"location":"tutorials/linear/diet/","page":"The diet problem","title":"The diet problem","text":"To simplify things later on, we store the vector as a new column x in the DataFrame foods. Since x is a DenseAxisArray, we first need to convert it to an Array:","category":"page"},{"location":"tutorials/linear/diet/","page":"The diet problem","title":"The diet problem","text":"foods.x = Array(x)","category":"page"},{"location":"tutorials/linear/diet/","page":"The diet problem","title":"The diet problem","text":"Our objective is to minimize the total cost of purchasing food:","category":"page"},{"location":"tutorials/linear/diet/","page":"The diet problem","title":"The diet problem","text":"@objective(model, Min, sum(foods.cost .* foods.x));\nnothing #hide","category":"page"},{"location":"tutorials/linear/diet/","page":"The diet problem","title":"The diet problem","text":"For the next component, we need to add a constraint that our total intake of each component is within the limits contained in the limits DataFrame:","category":"page"},{"location":"tutorials/linear/diet/","page":"The diet problem","title":"The diet problem","text":"@constraint(\n model,\n [row in eachrow(limits)],\n row.min <= sum(foods[!, row.nutrient] .* foods.x) <= row.max,\n);\nnothing #hide","category":"page"},{"location":"tutorials/linear/diet/","page":"The diet problem","title":"The diet problem","text":"What does our model look like?","category":"page"},{"location":"tutorials/linear/diet/","page":"The diet problem","title":"The diet problem","text":"print(model)","category":"page"},{"location":"tutorials/linear/diet/#Solution","page":"The diet problem","title":"Solution","text":"","category":"section"},{"location":"tutorials/linear/diet/","page":"The diet problem","title":"The diet problem","text":"Let's optimize and take a look at the solution:","category":"page"},{"location":"tutorials/linear/diet/","page":"The diet problem","title":"The diet problem","text":"optimize!(model)\n@assert is_solved_and_feasible(model)\nTest.@test objective_value(model) ≈ 11.8288 atol = 1e-4 #hide\nsolution_summary(model)","category":"page"},{"location":"tutorials/linear/diet/","page":"The diet problem","title":"The diet problem","text":"We found an optimal solution. Let's see what the optimal solution is:","category":"page"},{"location":"tutorials/linear/diet/","page":"The diet problem","title":"The diet problem","text":"for row in eachrow(foods)\n println(row.name, \" = \", value(row.x))\nend","category":"page"},{"location":"tutorials/linear/diet/","page":"The diet problem","title":"The diet problem","text":"That's a lot of milk and ice cream, and sadly, we only get 0.6 of a hamburger.","category":"page"},{"location":"tutorials/linear/diet/","page":"The diet problem","title":"The diet problem","text":"We can also use the function Containers.rowtable to easily convert the result into a DataFrame:","category":"page"},{"location":"tutorials/linear/diet/","page":"The diet problem","title":"The diet problem","text":"table = Containers.rowtable(value, x; header = [:food, :quantity])\nsolution = DataFrames.DataFrame(table)","category":"page"},{"location":"tutorials/linear/diet/","page":"The diet problem","title":"The diet problem","text":"This makes it easy to perform analyses our solution:","category":"page"},{"location":"tutorials/linear/diet/","page":"The diet problem","title":"The diet problem","text":"filter!(row -> row.quantity > 0.0, solution)","category":"page"},{"location":"tutorials/linear/diet/#Problem-modification","page":"The diet problem","title":"Problem modification","text":"","category":"section"},{"location":"tutorials/linear/diet/","page":"The diet problem","title":"The diet problem","text":"JuMP makes it easy to take an existing model and modify it by adding extra constraints. Let's see what happens if we add a constraint that we can buy at most 6 units of milk or ice cream combined.","category":"page"},{"location":"tutorials/linear/diet/","page":"The diet problem","title":"The diet problem","text":"dairy_foods = [\"milk\", \"ice cream\"]\nis_dairy = map(name -> name in dairy_foods, foods.name)\ndairy_constraint = @constraint(model, sum(foods[is_dairy, :x]) <= 6)\noptimize!(model)\nTest.@test !is_solved_and_feasible(model)\nTest.@test termination_status(model) == INFEASIBLE\nTest.@test primal_status(model) == NO_SOLUTION\nsolution_summary(model)","category":"page"},{"location":"tutorials/linear/diet/","page":"The diet problem","title":"The diet problem","text":"There exists no feasible solution to our problem. Looks like we're stuck eating ice cream for dinner.","category":"page"},{"location":"tutorials/linear/diet/#Next-steps","page":"The diet problem","title":"Next steps","text":"","category":"section"},{"location":"tutorials/linear/diet/","page":"The diet problem","title":"The diet problem","text":"You can delete a constraint using delete(model, dairy_constraint). Can you add a different constraint to provide a diet with less dairy?\nSome food items (like hamburgers) are discrete. You can use set_integer to force a variable to take integer values. What happens to the solution if you do?","category":"page"},{"location":"tutorials/linear/n-queens/","page":"N-Queens","title":"N-Queens","text":"EditURL = \"n-queens.jl\"","category":"page"},{"location":"tutorials/linear/n-queens/#N-Queens","page":"N-Queens","title":"N-Queens","text":"","category":"section"},{"location":"tutorials/linear/n-queens/","page":"N-Queens","title":"N-Queens","text":"This tutorial was generated using Literate.jl. Download the source as a .jl file.","category":"page"},{"location":"tutorials/linear/n-queens/","page":"N-Queens","title":"N-Queens","text":"This tutorial was originally contributed by Matthew Helm and Mathieu Tanneau.","category":"page"},{"location":"tutorials/linear/n-queens/","page":"N-Queens","title":"N-Queens","text":"The N-Queens problem involves placing N queens on an N x N chessboard such that none of the queens attacks another. In chess, a queen can move vertically, horizontally, and diagonally so there cannot be more than one queen on any given row, column, or diagonal.","category":"page"},{"location":"tutorials/linear/n-queens/","page":"N-Queens","title":"N-Queens","text":"(Image: Four Queens)","category":"page"},{"location":"tutorials/linear/n-queens/","page":"N-Queens","title":"N-Queens","text":"Note that none of the queens above are able to attack any other as a result of their careful placement.","category":"page"},{"location":"tutorials/linear/n-queens/","page":"N-Queens","title":"N-Queens","text":"using JuMP\nimport HiGHS\nimport LinearAlgebra","category":"page"},{"location":"tutorials/linear/n-queens/","page":"N-Queens","title":"N-Queens","text":"N-Queens","category":"page"},{"location":"tutorials/linear/n-queens/","page":"N-Queens","title":"N-Queens","text":"N = 8\n\nmodel = Model(HiGHS.Optimizer)\nset_silent(model)","category":"page"},{"location":"tutorials/linear/n-queens/","page":"N-Queens","title":"N-Queens","text":"Next, let's create an N x N chessboard of binary values. 0 will represent an empty space on the board and 1 will represent a space occupied by one of our queens:","category":"page"},{"location":"tutorials/linear/n-queens/","page":"N-Queens","title":"N-Queens","text":"@variable(model, x[1:N, 1:N], Bin);\nnothing #hide","category":"page"},{"location":"tutorials/linear/n-queens/","page":"N-Queens","title":"N-Queens","text":"Now we can add our constraints:","category":"page"},{"location":"tutorials/linear/n-queens/","page":"N-Queens","title":"N-Queens","text":"There must be exactly one queen in a given row/column","category":"page"},{"location":"tutorials/linear/n-queens/","page":"N-Queens","title":"N-Queens","text":"for i in 1:N\n @constraint(model, sum(x[i, :]) == 1)\n @constraint(model, sum(x[:, i]) == 1)\nend","category":"page"},{"location":"tutorials/linear/n-queens/","page":"N-Queens","title":"N-Queens","text":"There can only be one queen on any given diagonal","category":"page"},{"location":"tutorials/linear/n-queens/","page":"N-Queens","title":"N-Queens","text":"for i in -(N - 1):(N-1)\n @constraint(model, sum(LinearAlgebra.diag(x, i)) <= 1)\n @constraint(model, sum(LinearAlgebra.diag(reverse(x; dims = 1), i)) <= 1)\nend","category":"page"},{"location":"tutorials/linear/n-queens/","page":"N-Queens","title":"N-Queens","text":"We are ready to put our model to work and see if it is able to find a feasible solution:","category":"page"},{"location":"tutorials/linear/n-queens/","page":"N-Queens","title":"N-Queens","text":"optimize!(model)\n@assert is_solved_and_feasible(model)","category":"page"},{"location":"tutorials/linear/n-queens/","page":"N-Queens","title":"N-Queens","text":"We can now review the solution that our model found:","category":"page"},{"location":"tutorials/linear/n-queens/","page":"N-Queens","title":"N-Queens","text":"solution = round.(Int, value.(x))","category":"page"},{"location":"packages/MAiNGO/","page":"MAiNGO-github/MAiNGO.jl","title":"MAiNGO-github/MAiNGO.jl","text":"EditURL = \"https://github.com/MAiNGO-github/MAiNGO.jl/blob/v0.2.2/README.md\"","category":"page"},{"location":"packages/MAiNGO/#MAiNGO.jl","page":"MAiNGO-github/MAiNGO.jl","title":"MAiNGO.jl","text":"","category":"section"},{"location":"packages/MAiNGO/#What-is-MAiNGO?","page":"MAiNGO-github/MAiNGO.jl","title":"What is MAiNGO?","text":"","category":"section"},{"location":"packages/MAiNGO/","page":"MAiNGO-github/MAiNGO.jl","title":"MAiNGO-github/MAiNGO.jl","text":"MAiNGO (McCormick-based Algorithm for mixed-integer Nonlinear Global Optimization) is a deterministic global optimization solver for nonconvex mixed-integer nonlinear programs (MINLPs). For more information on MAiNGO, including installation, usage, and licensing, please see the repository and the documentation.","category":"page"},{"location":"packages/MAiNGO/","page":"MAiNGO-github/MAiNGO.jl","title":"MAiNGO-github/MAiNGO.jl","text":"MAiNGO.jl is a wrapper for using MAiNGO in Julia. It requires a working installation of MAiNGO, either the standalone version with parser support (Mode A), or the shared parser library version (Mode B). When building MAiNGO from source this is configurable in the CMake configuration of MAiNGO. Per default, precompiled version of MAiNGO is used that operates in Mode B. ","category":"page"},{"location":"packages/MAiNGO/#Using-the-precompiled-version-of-MAiNGO-from-the-Julia-Package-Manager","page":"MAiNGO-github/MAiNGO.jl","title":"Using the precompiled version of MAiNGO from the Julia Package Manager","text":"","category":"section"},{"location":"packages/MAiNGO/","page":"MAiNGO-github/MAiNGO.jl","title":"MAiNGO-github/MAiNGO.jl","text":"A Julia package containing a precompiled version of MAiNGO is available (MAiNGO_jll). This version is used by default on supported platforms (Linux/MacOs/Windows), but this can be changed (see here). The precompiled version contains only open-source components. If you would like to use commercial subsolvers with MAiNGO (for example CPLEX or KNITRO), it might still make sense to compile MAiNGO yourself and use this version rather than the precompiled one.","category":"page"},{"location":"packages/MAiNGO/#Quick-start","page":"MAiNGO-github/MAiNGO.jl","title":"Quick start","text":"","category":"section"},{"location":"packages/MAiNGO/","page":"MAiNGO-github/MAiNGO.jl","title":"MAiNGO-github/MAiNGO.jl","text":"using MAiNGO # if this fails, you need to add the package first manually\nusing JuMP\n#Set options in constructor\nmodel=Model(optimizer_with_attributes(MAiNGO.Optimizer, \"epsilonA\"=> 1e-8))\nset_silent(model)\n\n@variable(model, x, lower_bound=-20, upper_bound=20)\n@variable(model, 0<=y<=2)\n@variable(model, 0<=z<=2)\n@variable(model, 0<=d<=2)\n@variable(model, 0<=l<=6)\n@variable(model, 0<=b<=6)\n\n@NLobjective(model, Min, y*-1*x^2*(exp(-x^2+z+d+b)+l*b))\n@NLconstraint(model,(x^2+y^2>=1))\nJuMP.optimize!(model)\n#query results\nprintln(value(x),\" \",value(y))\nprintln(termination_status(model))\nprintln(primal_status(model))","category":"page"},{"location":"packages/MAiNGO/#Using-a-custom-MAiNGO-version","page":"MAiNGO-github/MAiNGO.jl","title":"Using a custom MAiNGO version","text":"","category":"section"},{"location":"packages/MAiNGO/","page":"MAiNGO-github/MAiNGO.jl","title":"MAiNGO-github/MAiNGO.jl","text":"If you want to make use of a MAiNGO version that you build from source yourself, you have to give the path to the correct binary file. The correct path depends on the mode of operation.","category":"page"},{"location":"packages/MAiNGO/#Modes-of-operation","page":"MAiNGO-github/MAiNGO.jl","title":"Modes of operation","text":"","category":"section"},{"location":"packages/MAiNGO/","page":"MAiNGO-github/MAiNGO.jl","title":"MAiNGO-github/MAiNGO.jl","text":"The following library allows to call MAiNGO from Julia. Currently two modes are supported:","category":"page"},{"location":"packages/MAiNGO/#Mode-A)","page":"MAiNGO-github/MAiNGO.jl","title":"Mode A)","text":"","category":"section"},{"location":"packages/MAiNGO/","page":"MAiNGO-github/MAiNGO.jl","title":"MAiNGO-github/MAiNGO.jl","text":"Using MAiNGO standalone exe with compiled parser support. This only allows to construct the problem in JuMP and call the MAiNGO executable with the filepath. Thus, results are obtained in form of an output text file.","category":"page"},{"location":"packages/MAiNGO/","page":"MAiNGO-github/MAiNGO.jl","title":"MAiNGO-github/MAiNGO.jl","text":"If a JSON file is also written (by setting the corresponding MAiNGO option), then the contents of that file are parsed, allowing to query the model from JuMP. This requires the JSON module to be installed in Julia.","category":"page"},{"location":"packages/MAiNGO/","page":"MAiNGO-github/MAiNGO.jl","title":"MAiNGO-github/MAiNGO.jl","text":"#Set path to MAiNGO standalone exe with compiled parser support.\nENV[\"MAINGO_EXEC\"] = \"W:\\\\maingo_build\\\\Debug\\\\MAiNGO.exe\" #replace \"W:\\\\maingo_build\\\\Debug\\\\\" with path to MAiNGO.exe\nusing MAiNGO # if this fails, you need to add the package first manually\n#create model\nusing JuMP\nmodel=Model(MAiNGO.Optimizer)\n@variable(model, x, lower_bound=0, upper_bound=5)\n@variable(model, y, lower_bound=0, upper_bound=2, start=0.5)\n\n#The following also works:\n#@variable(model,x in MOI.Interval(0,5)) \n#@variable(model, 0<=x<=5)\n#For integer variables use \n#@variable(model, y in MOI.Integer(), start=0.5)\n\n@constraint(model,y+x<=5)\n@constraint(model,x+y>=4)\n#Linear objective is also possible\n#@objective(model, Max, (1 - x)*y)\n@NLobjective(model, Max, (1 - x)^2 + 100 * (y - x^2)^2)\n@NLconstraint(model,min(x^2+y^2,y)<=5+y^2)\nMOI.set(model, MOI.RawOptimizerAttribute(\"writeJson\"),1) # write JSON file to enable querying of results from JuMP\nJuMP.optimize!(model)\nprintln(objective_value(model))","category":"page"},{"location":"packages/MAiNGO/#Mode-B)","page":"MAiNGO-github/MAiNGO.jl","title":"Mode B)","text":"","category":"section"},{"location":"packages/MAiNGO/","page":"MAiNGO-github/MAiNGO.jl","title":"MAiNGO-github/MAiNGO.jl","text":"Compiling an interface presenting a C-API to Julia. This must be configured when building MAiNGO, but allows several improvements. The problem definition is passed in memory. Settings can be set from within Julia/JuMP and the results are returned as Julia variables/ are queryable from JuMP.","category":"page"},{"location":"packages/MAiNGO/","page":"MAiNGO-github/MAiNGO.jl","title":"MAiNGO-github/MAiNGO.jl","text":"For example:","category":"page"},{"location":"packages/MAiNGO/","page":"MAiNGO-github/MAiNGO.jl","title":"MAiNGO-github/MAiNGO.jl","text":"#Set path to shared library with C-API.\nENV[\"MAINGO_LIB\"]=\"W:\\\\maingo_build\\\\Debug\\\\shared_parser.dll\" #replace \"W:\\\\maingo_build\\\\Debug\\\\\" with path to shared_parser.dll\n#include the wrapper\nusing MAiNGO # if this fails, you need to add the package first manually\n\n#Set options in constructor\nmodel=Model(optimizer_with_attributes(MAiNGO.Optimizer, \"epsilonA\"=> 1e-8,\"res_name\"=>\"res_new.txt\",\"prob_name\"=>\"problem.txt\"))\n#Alternate syntax\n#model=Model(() -> MAiNGO.Optimizer(epsilonA=1e-8))#, \"options\" => options))\n\n@variable(model, x, lower_bound=-20, upper_bound=20)\n#@variable(model, y in MOI.Integer(),lower_bound=-10,upper_bound=10, start=0.5)\n#Alterntaive forms\n#@variable(model,x in MOI.Interval(0,5))\n#@variable(model,y in MOI.Interval(0,2))\n#@variable(model, 0<=x<=5)\n@variable(model, 0<=y<=2)\n@variable(model, 0<=z<=2)\n@variable(model, 0<=d<=2)\n@variable(model, 0<=l<=6)\n@variable(model, 0<=b<=6)\n#@constraint(model,y+x<=5)\n#@constraint(model,x+y>=4)\n\n@NLobjective(model, Min, y*-1*x^2*(exp(-x^2+z+d+b)+l*b))\n@NLconstraint(model,(x^2+y^2>=1))\nJuMP.optimize!(model)\n#C-API allows us to query results\nprintln(value(x),\" \",value(y))\nprintln(termination_status(model))\nprintln(primal_status(model))","category":"page"},{"location":"packages/MAiNGO/#Supported-MAiNGO-Options","page":"MAiNGO-github/MAiNGO.jl","title":"Supported MAiNGO Options","text":"","category":"section"},{"location":"packages/MAiNGO/","page":"MAiNGO-github/MAiNGO.jl","title":"MAiNGO-github/MAiNGO.jl","text":"Both modes of operation allow setting MAiNGO options through the MatOptInterface-API. An example of how to do so is given below. All numerical and boolean options that are available in MAiNGO can be set using the MOI.RawOptimizerAttribute() function. Additionally, the following options can also be set through specific other MOI functions:","category":"page"},{"location":"packages/MAiNGO/","page":"MAiNGO-github/MAiNGO.jl","title":"MAiNGO-github/MAiNGO.jl","text":"Solver time limit (in seconds): MOI.TimeLimitSec()\nAbsolute gap: MOI.AbsoluteGapTolerance()\nRelative gap: MOI.RelativeGapTolerance()\nSilencing output: MOI.Silent() (this overwrites any other verbosity settings)","category":"page"},{"location":"packages/MAiNGO/","page":"MAiNGO-github/MAiNGO.jl","title":"MAiNGO-github/MAiNGO.jl","text":"# assuming necessary paths and using-statements have already been set\nmodel = Model(MAiNGO.Optimizer)\nMOI.set(model, MOI.Silent(), true) # silence all MAiNGO output\nMOI.set(model, MOI.AbsoluteGapTolerance(), 1e-8) # set the absolute gap tolerance\nMOI.set(model, MOI.RawOptimizerAttribute(\"PRE_pureMultistart\"), 1) # example of setting an option via the MOI.RawOptimizerAttribute() function","category":"page"},{"location":"packages/MAiNGO/#Switching-between-modes,-finding-the-MAiNGO-executable","page":"MAiNGO-github/MAiNGO.jl","title":"Switching between modes, finding the MAiNGO executable","text":"","category":"section"},{"location":"packages/MAiNGO/","page":"MAiNGO-github/MAiNGO.jl","title":"MAiNGO-github/MAiNGO.jl","text":"If you need to update the path to the MAiNGO executable during a session, this can be done as follows:","category":"page"},{"location":"packages/MAiNGO/","page":"MAiNGO-github/MAiNGO.jl","title":"MAiNGO-github/MAiNGO.jl","text":"\nusing MAiNGO\n# by default, MAiNGO_jll will be used\n# explicitly force use of standalone version (mode A)\nENV[\"MAINGO_EXEC\"] = \"W:\\\\maingo_build\\\\Debug\\\\MAiNGO.exe\"\nfindMAiNGO(preferred=MAiNGO.C_API) # see note on \"preferred\"-argument below\n# ...\n# for example switch to release version of MAiNGO\nENV[\"MAINGO_EXEC\"] = \"W:\\\\maingo_build\\\\Release\\\\MAiNGO.exe\"\nfindMAiNGO(preferred=MAiNGO.C_API)\n# now switch to C-API (mode B)\nENV[\"MAINGO_LIB\"]=\"W:\\\\maingo_build\\\\Debug\\\\shared_parser.dll\" #replace \"W:\\\\maingo_build\\\\Debug\\\\\" with path to shared_parser.dll\nfindMAiNGO(preferred=MAiNGO.C_API)\n# switch back to MAiNGO_jll\nfindMAiNGO(preferred=MAiNGO.MAINGO_JLL)","category":"page"},{"location":"packages/MAiNGO/","page":"MAiNGO-github/MAiNGO.jl","title":"MAiNGO-github/MAiNGO.jl","text":"The findMAiNGO() function takes several optional arguments, which can be passed as keyword-arguments:","category":"page"},{"location":"packages/MAiNGO/","page":"MAiNGO-github/MAiNGO.jl","title":"MAiNGO-github/MAiNGO.jl","text":"verbose: boolean, whether or not progress on finding MAiNGO is reported. (Default value: false)\npreferred: either MAiNGO.MAINGOJLL or MAiNGO.CAPI, determines whether jll binaries or custom installation of MAiNGO is preferred. Note that the C-API is always preferred to the standalone version. If a custom standalone version should be used, set this value to C-API and pass an empty string as the capi argument (see next). (Default value: MAINGOJLL)\ncapi: string, path to C-API file. If set, this overrides the environment variable MAINGOLIB.\nstandalone: string, path to standalone executable file. If set, this overrides the environment variable MAINGO_EXEC.","category":"page"},{"location":"packages/MAiNGO/","page":"MAiNGO-github/MAiNGO.jl","title":"MAiNGO-github/MAiNGO.jl","text":"For example, to use the C-API at a new location, one could call:","category":"page"},{"location":"packages/MAiNGO/","page":"MAiNGO-github/MAiNGO.jl","title":"MAiNGO-github/MAiNGO.jl","text":"using MAiNGO\nfindMAiNGO(preferred=MAiNGO.C_API, c_api=\"path\\\\to\\\\c\\\\api\\\\shared_parser.dll\")","category":"page"},{"location":"packages/MAiNGO/#Currently-working:","page":"MAiNGO-github/MAiNGO.jl","title":"Currently working:","text":"","category":"section"},{"location":"packages/MAiNGO/","page":"MAiNGO-github/MAiNGO.jl","title":"MAiNGO-github/MAiNGO.jl","text":"Integer and binary variables.\nAffine, Quadratic and nonlinear constraints and objectives.\nOperations: min,max,*,/,+,-,-(unary), exp,log,abs,sqrt,^\nOther operations are easy to add if supported by MathOptInterface,ALE and MAiNGO.\nWriting problem defined in JuMP syntax to an ALE problem.txt and calling MAiNGO.exe on a specified path.\nAlternatively using a C-API to call MAiNGO.","category":"page"},{"location":"packages/MAiNGO/#Restrictions-compared-to-using-the-Python-or-C-interface","page":"MAiNGO-github/MAiNGO.jl","title":"Restrictions compared to using the Python or C++ interface","text":"","category":"section"},{"location":"packages/MAiNGO/","page":"MAiNGO-github/MAiNGO.jl","title":"MAiNGO-github/MAiNGO.jl","text":"It is assumed that all variables are bounded. This interface assumes that integer variables are bounded between -1e6 and 1e6. For real variables these bounds are -1e8 and 1e8.","category":"page"},{"location":"packages/MAiNGO/","page":"MAiNGO-github/MAiNGO.jl","title":"MAiNGO-github/MAiNGO.jl","text":"Other functionality such as special support for growing datasets or MPI parallelization is not currently supported via this wrapper. Additionally, constraint formulations are simply passed from their representation in JuMP/MathOptInterface to MAiNGO. As such, there is no way to make use of advanced techniques such as defining constraints that are only used for the relaxations, using special relaxations for functions used in thermodynamics and process engineering or formulating reduced space formulations.","category":"page"},{"location":"packages/MAiNGO/#Tests","page":"MAiNGO-github/MAiNGO.jl","title":"Tests","text":"","category":"section"},{"location":"packages/MAiNGO/","page":"MAiNGO-github/MAiNGO.jl","title":"MAiNGO-github/MAiNGO.jl","text":"A subset of test cases for MathOptInterface solvers can be run by running the script ./test/runtests.jl. The current release was tested in the following combinations:","category":"page"},{"location":"packages/MAiNGO/","page":"MAiNGO-github/MAiNGO.jl","title":"MAiNGO-github/MAiNGO.jl","text":"Julia 1.8.5 and MathOptInterface v1.18.0\nJulia 1.9.4 and MathOptInterface v1.23.0.","category":"page"},{"location":"packages/SDPNAL/","page":"jump-dev/SDPNAL.jl","title":"jump-dev/SDPNAL.jl","text":"EditURL = \"https://github.com/jump-dev/SDPNAL.jl/blob/00a3fa19f4e1235587948113b0b681da17f4dab5/README.md\"","category":"page"},{"location":"packages/SDPNAL/#SDPNAL.jl","page":"jump-dev/SDPNAL.jl","title":"SDPNAL.jl","text":"","category":"section"},{"location":"packages/SDPNAL/","page":"jump-dev/SDPNAL.jl","title":"jump-dev/SDPNAL.jl","text":"SDPNAL.jl is wrapper for the SDPNALplus solver.","category":"page"},{"location":"packages/SDPNAL/","page":"jump-dev/SDPNAL.jl","title":"jump-dev/SDPNAL.jl","text":"The wrapper has two components:","category":"page"},{"location":"packages/SDPNAL/","page":"jump-dev/SDPNAL.jl","title":"jump-dev/SDPNAL.jl","text":"an exported sdpnalplus function that is a thin wrapper on top of the sdpnalplus MATLAB function\nan interface to MathOptInterface","category":"page"},{"location":"packages/SDPNAL/#Affiliation","page":"jump-dev/SDPNAL.jl","title":"Affiliation","text":"","category":"section"},{"location":"packages/SDPNAL/","page":"jump-dev/SDPNAL.jl","title":"jump-dev/SDPNAL.jl","text":"This wrapper is maintained by the JuMP community and is not an official wrapper of SDPNALplus.","category":"page"},{"location":"packages/SDPNAL/#License","page":"jump-dev/SDPNAL.jl","title":"License","text":"","category":"section"},{"location":"packages/SDPNAL/","page":"jump-dev/SDPNAL.jl","title":"jump-dev/SDPNAL.jl","text":"SDPNAL.jl is licensed under the MIT License.","category":"page"},{"location":"packages/SDPNAL/","page":"jump-dev/SDPNAL.jl","title":"jump-dev/SDPNAL.jl","text":"The underlying solver, SDPNALplus is licensed under the Creative Commons Attribution-ShareAlike 4.0 International Public License.","category":"page"},{"location":"packages/SDPNAL/","page":"jump-dev/SDPNAL.jl","title":"jump-dev/SDPNAL.jl","text":"In addition, SDPNAL requires an installation of MATLAB, which is a closed-source commercial product for which you must obtain a license.","category":"page"},{"location":"packages/SDPNAL/#Use-with-JuMP","page":"jump-dev/SDPNAL.jl","title":"Use with JuMP","text":"","category":"section"},{"location":"packages/SDPNAL/","page":"jump-dev/SDPNAL.jl","title":"jump-dev/SDPNAL.jl","text":"To use SDPNAL with JuMP, do:","category":"page"},{"location":"packages/SDPNAL/","page":"jump-dev/SDPNAL.jl","title":"jump-dev/SDPNAL.jl","text":"using JuMP, SDPNAL\nmodel = Model(SDPNAL.Optimizer)\nset_attribute(model, \"printlevel\", 0)","category":"page"},{"location":"packages/SDPNAL/","page":"jump-dev/SDPNAL.jl","title":"jump-dev/SDPNAL.jl","text":"Note that, contrary to implementation of other solver-independent interfaces, using SDPNAL from JuMP or MOI fully exploits the particular structures of the SDPNAL interface and does not create superfluous slack variables and equality constraints as discussed in the SDPNAL guide:","category":"page"},{"location":"packages/SDPNAL/","page":"jump-dev/SDPNAL.jl","title":"jump-dev/SDPNAL.jl","text":"A new interface is necessary to facilitate the modeling of an SDP problem for SDPNAL+ because of latter’s flexibility to directly accept inequality constraints of the form “l ≤ B(X) ≤ u”, and bound constraints of the form “L ≤ X ≤ U”. The flexibility can significantly simplify the generation of the data in the SDPNAL+ format as compared to what need to be done in CVX or YALMIP to reformulate them as equality constraints through introducing extra variables. In addition, the final number of equality constraints present in the data input to SDPNAL+ can also be substantially fewer than those present in CVX or YALMIP. It is important to note here that the number of equality constraints present in the generated problem data can greatly affect the computational efficiency of the solvers, especially for interior-point based solvers.","category":"page"},{"location":"packages/SDPNAL/#Installation","page":"jump-dev/SDPNAL.jl","title":"Installation","text":"","category":"section"},{"location":"packages/SDPNAL/","page":"jump-dev/SDPNAL.jl","title":"jump-dev/SDPNAL.jl","text":"First, make sure that you satisfy the requirements of the MATLAB.jl Julia package, and that the SDPNALplus software is installed in your MATLAB™ installation.","category":"page"},{"location":"packages/SDPNAL/","page":"jump-dev/SDPNAL.jl","title":"jump-dev/SDPNAL.jl","text":"Then, install SDPNAL.jl using Pkg.add:","category":"page"},{"location":"packages/SDPNAL/","page":"jump-dev/SDPNAL.jl","title":"jump-dev/SDPNAL.jl","text":"import Pkg\nPkg.add(\"SDPNAL\")","category":"page"},{"location":"packages/SDPNAL/","page":"jump-dev/SDPNAL.jl","title":"jump-dev/SDPNAL.jl","text":"There is a startup.m file at the root of the SDPNAL folder. This adds all subdirectories recursively when MATLAB starts. However, the interface directory contains a .git subdirectory which contains a very large number of files. Because of this, MATLAB crashes if SDPNAL is in its path because the startup.m requests MATLAB to try to parse all the files in the .git folder. To resolve this problem, delete the startup.m file and .git folder, and add the subdirectories manually your toolbox/local/pathdef.m file as follows:","category":"page"},{"location":"packages/SDPNAL/","page":"jump-dev/SDPNAL.jl","title":"jump-dev/SDPNAL.jl","text":"function p = pathdef\n\n% (...)\n\np = [...\n%%% BEGIN ENTRIES %%%\n'/path/to/SDPNALv1.0:', ...\n'/path/to/SDPNALv1.0/interface:', ...\n'/path/to/SDPNALv1.0/mexfun:', ...\n'/path/to/SDPNALv1.0/solver:', ...\n'/path/to/SDPNALv1.0/solver_main_default:', ...\n'/path/to/SDPNALv1.0/util:', ...\n% (...)","category":"page"},{"location":"packages/SDPNAL/","page":"jump-dev/SDPNAL.jl","title":"jump-dev/SDPNAL.jl","text":"If you have SDPT3 in addition to SDPNAL in the MATLAB path (that is, the toolbox/local/pathdef.m file) then you might have issues because both solvers define a validate function, and this might make SDPNAL call SDPT3's validate function instead of SDPT3's validate function.","category":"page"},{"location":"should_i_use/#Should-you-use-JuMP?","page":"Should you use JuMP?","title":"Should you use JuMP?","text":"","category":"section"},{"location":"should_i_use/","page":"Should you use JuMP?","title":"Should you use JuMP?","text":"JuMP is an algebraic modeling language for mathematical optimization written in the Julia language.","category":"page"},{"location":"should_i_use/","page":"Should you use JuMP?","title":"Should you use JuMP?","text":"This page explains when you should consider using JuMP, and importantly, when you should not use JuMP.","category":"page"},{"location":"should_i_use/#When-should-you-use-JuMP?","page":"Should you use JuMP?","title":"When should you use JuMP?","text":"","category":"section"},{"location":"should_i_use/","page":"Should you use JuMP?","title":"Should you use JuMP?","text":"You should use JuMP if you have a constrained optimization problem that is formulated using the language of mathematical programming, that is, the problem has:","category":"page"},{"location":"should_i_use/","page":"Should you use JuMP?","title":"Should you use JuMP?","text":"a set of real- or complex-valued decision variables\na scalar- or vector-valued real objective function\na set of constraints.","category":"page"},{"location":"should_i_use/","page":"Should you use JuMP?","title":"Should you use JuMP?","text":"Key reasons to use JuMP include:","category":"page"},{"location":"should_i_use/","page":"Should you use JuMP?","title":"Should you use JuMP?","text":"User friendliness\nJuMP has syntax that mimics natural mathematical expressions. (See the section on algebraic modeling languages.)\nSolver independence\nJuMP uses a generic solver-independent interface provided by the MathOptInterface package, making it easy to change between a number of open-source and commercial optimization software packages (\"solvers\"). The Supported solvers section contains a table of the currently supported solvers.\nEase of embedding\nJuMP itself is written purely in Julia. Solvers are the only binary dependencies.\nJuMP provides automatic installation of most solvers.\nBecause it is embedded in a general-purpose programming language, JuMP makes it easy to solve optimization problems as part of a larger workflow, for example, inside a simulation, behind a web server, or as a subproblem in a decomposition algorithm. As a trade-off, JuMP's syntax is constrained by the syntax and functionality available in Julia.\nJuMP is MPL licensed, meaning that it can be embedded in commercial software that complies with the terms of the license.\nSpeed\nBenchmarking has shown that JuMP can create problems at similar speeds to special-purpose modeling languages such as AMPL.\nJuMP communicates with most solvers in memory, avoiding the need to write intermediary files.\nAccess to advanced algorithmic techniques\nJuMP supports efficient in-memory re-solves of models.\nJuMP provides access to solver-independent and solver-dependent Callbacks.","category":"page"},{"location":"should_i_use/#When-should-you-not-use-JuMP?","page":"Should you use JuMP?","title":"When should you not use JuMP?","text":"","category":"section"},{"location":"should_i_use/","page":"Should you use JuMP?","title":"Should you use JuMP?","text":"JuMP supports a broad range of optimization classes. However, there are still some that it doesn't support, or that are better supported by other software packages.","category":"page"},{"location":"should_i_use/#You-want-to-optimize-a-complicated-Julia-function","page":"Should you use JuMP?","title":"You want to optimize a complicated Julia function","text":"","category":"section"},{"location":"should_i_use/","page":"Should you use JuMP?","title":"Should you use JuMP?","text":"Packages in Julia compose well. It's common for people to pick two unrelated packages and use them in conjunction to create novel behavior. JuMP isn't one of those packages.","category":"page"},{"location":"should_i_use/","page":"Should you use JuMP?","title":"Should you use JuMP?","text":"If you want to optimize an ordinary differential equation from DifferentialEquations.jl or tune a neural network from Flux.jl, consider using other packages such as:","category":"page"},{"location":"should_i_use/","page":"Should you use JuMP?","title":"Should you use JuMP?","text":"Optim.jl\nOptimization.jl\nNLPModels.jl\nNonconvex.jl","category":"page"},{"location":"should_i_use/#Black-box,-derivative-free,-or-unconstrained-optimization","page":"Should you use JuMP?","title":"Black-box, derivative free, or unconstrained optimization","text":"","category":"section"},{"location":"should_i_use/","page":"Should you use JuMP?","title":"Should you use JuMP?","text":"JuMP does support nonlinear programs with constraints and objectives containing user-defined operators. However, the functions must be automatically differentiable, or need to provide explicit derivatives. (See User-defined operators for more information.)","category":"page"},{"location":"should_i_use/","page":"Should you use JuMP?","title":"Should you use JuMP?","text":"If your function is a black-box that is non-differentiable (for example, it is the output of a simulation written in C++), JuMP is not the right tool for the job. This also applies if you want to use a derivative free method.","category":"page"},{"location":"should_i_use/","page":"Should you use JuMP?","title":"Should you use JuMP?","text":"Even if your problem is differentiable, if it is unconstrained there is limited benefit (and downsides in the form of more overhead) to using JuMP over tools which are only concerned with function minimization.","category":"page"},{"location":"should_i_use/","page":"Should you use JuMP?","title":"Should you use JuMP?","text":"Alternatives to consider are:","category":"page"},{"location":"should_i_use/","page":"Should you use JuMP?","title":"Should you use JuMP?","text":"Optim.jl\nOptimization.jl\nNLopt.jl","category":"page"},{"location":"should_i_use/#Disciplined-convex-programming","page":"Should you use JuMP?","title":"Disciplined convex programming","text":"","category":"section"},{"location":"should_i_use/","page":"Should you use JuMP?","title":"Should you use JuMP?","text":"JuMP does not support disciplined convex programming (DCP).","category":"page"},{"location":"should_i_use/","page":"Should you use JuMP?","title":"Should you use JuMP?","text":"Alternatives to consider are:","category":"page"},{"location":"should_i_use/","page":"Should you use JuMP?","title":"Should you use JuMP?","text":"Convex.jl\nCVXPY [Python]\nYALMIP [MATLAB]","category":"page"},{"location":"should_i_use/","page":"Should you use JuMP?","title":"Should you use JuMP?","text":"note: Note\nConvex.jl is also built on MathOptInterface, and shares the same set of underlying solvers. However, you input problems differently, and Convex.jl checks that the problem is DCP.","category":"page"},{"location":"should_i_use/#Stochastic-programming","page":"Should you use JuMP?","title":"Stochastic programming","text":"","category":"section"},{"location":"should_i_use/","page":"Should you use JuMP?","title":"Should you use JuMP?","text":"JuMP requires deterministic input data.","category":"page"},{"location":"should_i_use/","page":"Should you use JuMP?","title":"Should you use JuMP?","text":"If you have stochastic input data, consider using a JuMP extension such as:","category":"page"},{"location":"should_i_use/","page":"Should you use JuMP?","title":"Should you use JuMP?","text":"InfiniteOpt.jl\nStochasticPrograms.jl\nSDDP.jl","category":"page"},{"location":"should_i_use/#Polyhedral-computations","page":"Should you use JuMP?","title":"Polyhedral computations","text":"","category":"section"},{"location":"should_i_use/","page":"Should you use JuMP?","title":"Should you use JuMP?","text":"JuMP does not provide tools for working with the polyhedron formed by the set of linear constraints.","category":"page"},{"location":"should_i_use/","page":"Should you use JuMP?","title":"Should you use JuMP?","text":"Alternatives to consider are:","category":"page"},{"location":"should_i_use/","page":"Should you use JuMP?","title":"Should you use JuMP?","text":"Polyhedra.jl (See the documentation to create a polyhedron from a JuMP model.)","category":"page"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/","page":"Design patterns for larger models","title":"Design patterns for larger models","text":"EditURL = \"design_patterns_for_larger_models.jl\"","category":"page"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/#Design-patterns-for-larger-models","page":"Design patterns for larger models","title":"Design patterns for larger models","text":"","category":"section"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/","page":"Design patterns for larger models","title":"Design patterns for larger models","text":"This tutorial was generated using Literate.jl. Download the source as a .jl file.","category":"page"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/","page":"Design patterns for larger models","title":"Design patterns for larger models","text":"JuMP makes it easy to build and solve optimization models. However, once you start to construct larger models, and especially ones that interact with external data sources or have customizable sets of variables and constraints based on client choices, you may find that your scripts become unwieldy. This tutorial demonstrates a variety of ways in which you can structure larger JuMP models to improve their readability and maintainability.","category":"page"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/","page":"Design patterns for larger models","title":"Design patterns for larger models","text":"tip: Tip\nThis tutorial is more advanced than the other \"Getting started\" tutorials. It's in the \"Getting started\" section to give you an early preview of how JuMP makes it easy to structure larger models. However, if you are new to JuMP you may want to briefly skim the tutorial, and come back to it once you have written a few JuMP models.","category":"page"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/#Overview","page":"Design patterns for larger models","title":"Overview","text":"","category":"section"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/","page":"Design patterns for larger models","title":"Design patterns for larger models","text":"This tutorial uses explanation-by-example. We're going to start with a simple knapsack model, and then expand it to add various features and structure.","category":"page"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/#A-simple-script","page":"Design patterns for larger models","title":"A simple script","text":"","category":"section"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/","page":"Design patterns for larger models","title":"Design patterns for larger models","text":"Your first prototype of a JuMP model is probably a script that uses a small set of hard-coded data.","category":"page"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/","page":"Design patterns for larger models","title":"Design patterns for larger models","text":"using JuMP, HiGHS\nprofit = [5, 3, 2, 7, 4]\nweight = [2, 8, 4, 2, 5]\ncapacity = 10\nN = 5\nmodel = Model(HiGHS.Optimizer)\n@variable(model, x[1:N], Bin)\n@objective(model, Max, sum(profit[i] * x[i] for i in 1:N))\n@constraint(model, sum(weight[i] * x[i] for i in 1:N) <= capacity)\noptimize!(model)\n@assert is_solved_and_feasible(model)\nvalue.(x)","category":"page"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/","page":"Design patterns for larger models","title":"Design patterns for larger models","text":"The benefits of this approach are:","category":"page"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/","page":"Design patterns for larger models","title":"Design patterns for larger models","text":"it is quick to code\nit is quick to make changes.","category":"page"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/","page":"Design patterns for larger models","title":"Design patterns for larger models","text":"The downsides include:","category":"page"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/","page":"Design patterns for larger models","title":"Design patterns for larger models","text":"all variables are global (read Performance tips)\nit is easy to introduce errors, for example, having profit and weight be vectors of different lengths, or not match N\nthe solution, x[i], is hard to interpret without knowing the order in which we provided the data.","category":"page"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/#Wrap-the-model-in-a-function","page":"Design patterns for larger models","title":"Wrap the model in a function","text":"","category":"section"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/","page":"Design patterns for larger models","title":"Design patterns for larger models","text":"A good next step is to wrap your model in a function. This is useful for a few reasons:","category":"page"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/","page":"Design patterns for larger models","title":"Design patterns for larger models","text":"it removes global variables\nit encapsulates the JuMP model and forces you to clarify your inputs and outputs\nwe can add some error checking.","category":"page"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/","page":"Design patterns for larger models","title":"Design patterns for larger models","text":"function solve_knapsack_1(profit::Vector, weight::Vector, capacity::Real)\n if length(profit) != length(weight)\n throw(DimensionMismatch(\"profit and weight are different sizes\"))\n end\n N = length(weight)\n model = Model(HiGHS.Optimizer)\n @variable(model, x[1:N], Bin)\n @objective(model, Max, sum(profit[i] * x[i] for i in 1:N))\n @constraint(model, sum(weight[i] * x[i] for i in 1:N) <= capacity)\n optimize!(model)\n @assert is_solved_and_feasible(model)\n return value.(x)\nend\n\nsolve_knapsack_1([5, 3, 2, 7, 4], [2, 8, 4, 2, 5], 10)","category":"page"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/#Create-better-data-structures","page":"Design patterns for larger models","title":"Create better data structures","text":"","category":"section"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/","page":"Design patterns for larger models","title":"Design patterns for larger models","text":"Although we can check for errors like mis-matched vector lengths, if you start to develop models with a lot of data, keeping track of vectors and lengths and indices is fragile and a common source of bugs. A good solution is to use Julia's type system to create an abstraction over your data.","category":"page"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/","page":"Design patterns for larger models","title":"Design patterns for larger models","text":"For example, we can create a struct that represents a single object, with a constructor that lets us validate assumptions on the input data:","category":"page"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/","page":"Design patterns for larger models","title":"Design patterns for larger models","text":"struct KnapsackObject\n profit::Float64\n weight::Float64\n function KnapsackObject(profit::Float64, weight::Float64)\n if weight < 0\n throw(DomainError(\"Weight of object cannot be negative\"))\n end\n return new(profit, weight)\n end\nend","category":"page"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/","page":"Design patterns for larger models","title":"Design patterns for larger models","text":"as well as a struct that holds a dictionary of objects and the knapsack's capacity:","category":"page"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/","page":"Design patterns for larger models","title":"Design patterns for larger models","text":"struct KnapsackData\n objects::Dict{String,KnapsackObject}\n capacity::Float64\nend","category":"page"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/","page":"Design patterns for larger models","title":"Design patterns for larger models","text":"Here's what our data might look like now:","category":"page"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/","page":"Design patterns for larger models","title":"Design patterns for larger models","text":"objects = Dict(\n \"apple\" => KnapsackObject(5.0, 2.0),\n \"banana\" => KnapsackObject(3.0, 8.0),\n \"cherry\" => KnapsackObject(2.0, 4.0),\n \"date\" => KnapsackObject(7.0, 2.0),\n \"eggplant\" => KnapsackObject(4.0, 5.0),\n)\ndata = KnapsackData(objects, 10.0)","category":"page"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/","page":"Design patterns for larger models","title":"Design patterns for larger models","text":"If you want, you can add custom printing to make it easier to visualize:","category":"page"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/","page":"Design patterns for larger models","title":"Design patterns for larger models","text":"function Base.show(io::IO, data::KnapsackData)\n println(io, \"A knapsack with capacity $(data.capacity) and possible items:\")\n for (k, v) in data.objects\n println(\n io,\n \" $(rpad(k, 8)) : profit = $(v.profit), weight = $(v.weight)\",\n )\n end\n return\nend\n\ndata","category":"page"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/","page":"Design patterns for larger models","title":"Design patterns for larger models","text":"Then, we can re-write our solve_knapsack function to take our KnapsackData as input:","category":"page"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/","page":"Design patterns for larger models","title":"Design patterns for larger models","text":"function solve_knapsack_2(data::KnapsackData)\n model = Model(HiGHS.Optimizer)\n @variable(model, x[keys(data.objects)], Bin)\n @objective(model, Max, sum(v.profit * x[k] for (k, v) in data.objects))\n @constraint(\n model,\n sum(v.weight * x[k] for (k, v) in data.objects) <= data.capacity,\n )\n optimize!(model)\n @assert is_solved_and_feasible(model)\n return value.(x)\nend\n\nsolve_knapsack_2(data)","category":"page"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/#Read-in-data-from-files","page":"Design patterns for larger models","title":"Read in data from files","text":"","category":"section"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/","page":"Design patterns for larger models","title":"Design patterns for larger models","text":"Having a data structure is a good step. But it is still annoying that we have to hard-code the data into Julia. A good next step is to separate the data into an external file format; JSON is a common choice.","category":"page"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/","page":"Design patterns for larger models","title":"Design patterns for larger models","text":"json_data = \"\"\"\n{\n \"objects\": {\n \"apple\": {\"profit\": 5.0, \"weight\": 2.0},\n \"banana\": {\"profit\": 3.0, \"weight\": 8.0},\n \"cherry\": {\"profit\": 2.0, \"weight\": 4.0},\n \"date\": {\"profit\": 7.0, \"weight\": 2.0},\n \"eggplant\": {\"profit\": 4.0, \"weight\": 5.0}\n },\n \"capacity\": 10.0\n}\n\"\"\"\ntemp_dir = mktempdir()\nknapsack_json_filename = joinpath(temp_dir, \"knapsack.json\")\n# Instead of writing a new file here you could replace `knapsack_json_filename`\n# with the path to a local file.\nwrite(knapsack_json_filename, json_data);\nnothing #hide","category":"page"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/","page":"Design patterns for larger models","title":"Design patterns for larger models","text":"Now let's write a function that reads this file and builds a KnapsackData object:","category":"page"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/","page":"Design patterns for larger models","title":"Design patterns for larger models","text":"import JSON\n\nfunction read_data(filename)\n d = JSON.parsefile(filename)\n return KnapsackData(\n Dict(\n k => KnapsackObject(v[\"profit\"], v[\"weight\"]) for\n (k, v) in d[\"objects\"]\n ),\n d[\"capacity\"],\n )\nend\n\ndata = read_data(knapsack_json_filename)","category":"page"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/#Add-options-via-if-else","page":"Design patterns for larger models","title":"Add options via if-else","text":"","category":"section"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/","page":"Design patterns for larger models","title":"Design patterns for larger models","text":"At this point, we have data in a file format which we can load and solve a single problem. For many users, this might be sufficient. However, at some point you may be asked to add features like \"but what if we want to take more than one of a particular item?\"","category":"page"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/","page":"Design patterns for larger models","title":"Design patterns for larger models","text":"If this is the first time that you've been asked to add a feature, adding options via if-else statements is a good approach. For example, we might write:","category":"page"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/","page":"Design patterns for larger models","title":"Design patterns for larger models","text":"function solve_knapsack_3(data::KnapsackData; binary_knapsack::Bool)\n model = Model(HiGHS.Optimizer)\n if binary_knapsack\n @variable(model, x[keys(data.objects)], Bin)\n else\n @variable(model, x[keys(data.objects)] >= 0, Int)\n end\n @objective(model, Max, sum(v.profit * x[k] for (k, v) in data.objects))\n @constraint(\n model,\n sum(v.weight * x[k] for (k, v) in data.objects) <= data.capacity,\n )\n optimize!(model)\n @assert is_solved_and_feasible(model)\n return value.(x)\nend","category":"page"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/","page":"Design patterns for larger models","title":"Design patterns for larger models","text":"Now we can solve the binary knapsack:","category":"page"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/","page":"Design patterns for larger models","title":"Design patterns for larger models","text":"solve_knapsack_3(data; binary_knapsack = true)","category":"page"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/","page":"Design patterns for larger models","title":"Design patterns for larger models","text":"And an integer knapsack where we can take more than one copy of each item:","category":"page"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/","page":"Design patterns for larger models","title":"Design patterns for larger models","text":"solve_knapsack_3(data; binary_knapsack = false)","category":"page"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/#Add-configuration-options-via-dispatch","page":"Design patterns for larger models","title":"Add configuration options via dispatch","text":"","category":"section"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/","page":"Design patterns for larger models","title":"Design patterns for larger models","text":"If you get repeated requests to add different options, you'll quickly find yourself in a mess of different flags and if-else statements. It's hard to write, hard to read, and hard to ensure you haven't introduced any bugs. A good solution is to use Julia's type dispatch to control the configuration of the model. The easiest way to explain this is by example.","category":"page"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/","page":"Design patterns for larger models","title":"Design patterns for larger models","text":"First, start by defining a new abstract type, as well as new subtypes for each of our options. These types are going to control the configuration of the knapsack model.","category":"page"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/","page":"Design patterns for larger models","title":"Design patterns for larger models","text":"abstract type AbstractConfiguration end\n\nstruct BinaryKnapsackConfig <: AbstractConfiguration end\n\nstruct IntegerKnapsackConfig <: AbstractConfiguration end","category":"page"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/","page":"Design patterns for larger models","title":"Design patterns for larger models","text":"Then, we rewrite our solve_knapsack function to take a config argument, and we introduce an add_knapsack_variables function to abstract the creation of our variables.","category":"page"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/","page":"Design patterns for larger models","title":"Design patterns for larger models","text":"function solve_knapsack_4(data::KnapsackData, config::AbstractConfiguration)\n model = Model(HiGHS.Optimizer)\n x = add_knapsack_variables(model, data, config)\n @objective(model, Max, sum(v.profit * x[k] for (k, v) in data.objects))\n @constraint(\n model,\n sum(v.weight * x[k] for (k, v) in data.objects) <= data.capacity,\n )\n optimize!(model)\n @assert is_solved_and_feasible(model)\n return value.(x)\nend","category":"page"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/","page":"Design patterns for larger models","title":"Design patterns for larger models","text":"For the binary knapsack problem, add_knapsack_variables looks like this:","category":"page"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/","page":"Design patterns for larger models","title":"Design patterns for larger models","text":"function add_knapsack_variables(\n model::Model,\n data::KnapsackData,\n ::BinaryKnapsackConfig,\n)\n return @variable(model, x[keys(data.objects)], Bin)\nend","category":"page"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/","page":"Design patterns for larger models","title":"Design patterns for larger models","text":"For the integer knapsack problem, add_knapsack_variables looks like this:","category":"page"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/","page":"Design patterns for larger models","title":"Design patterns for larger models","text":"function add_knapsack_variables(\n model::Model,\n data::KnapsackData,\n ::IntegerKnapsackConfig,\n)\n return @variable(model, x[keys(data.objects)] >= 0, Int)\nend","category":"page"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/","page":"Design patterns for larger models","title":"Design patterns for larger models","text":"Now we can solve the binary knapsack:","category":"page"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/","page":"Design patterns for larger models","title":"Design patterns for larger models","text":"solve_knapsack_4(data, BinaryKnapsackConfig())","category":"page"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/","page":"Design patterns for larger models","title":"Design patterns for larger models","text":"and the integer knapsack problem:","category":"page"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/","page":"Design patterns for larger models","title":"Design patterns for larger models","text":"solve_knapsack_4(data, IntegerKnapsackConfig())","category":"page"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/","page":"Design patterns for larger models","title":"Design patterns for larger models","text":"The main benefit of the dispatch approach is that you can quickly add new options without needing to modify the existing code. For example:","category":"page"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/","page":"Design patterns for larger models","title":"Design patterns for larger models","text":"struct UpperBoundedKnapsackConfig <: AbstractConfiguration\n limit::Int\nend\n\nfunction add_knapsack_variables(\n model::Model,\n data::KnapsackData,\n config::UpperBoundedKnapsackConfig,\n)\n return @variable(model, 0 <= x[keys(data.objects)] <= config.limit, Int)\nend\n\nsolve_knapsack_4(data, UpperBoundedKnapsackConfig(3))","category":"page"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/#Generalize-constraints-and-objectives","page":"Design patterns for larger models","title":"Generalize constraints and objectives","text":"","category":"section"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/","page":"Design patterns for larger models","title":"Design patterns for larger models","text":"It's easy to extend the dispatch approach to constraints and objectives as well. The key points to notice in the next two functions are that:","category":"page"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/","page":"Design patterns for larger models","title":"Design patterns for larger models","text":"we can access registered variables via model[:x]\nwe can define generic functions which accept any AbstractConfiguration as a configuration argument. That means we can implement a single method and have it apply to multiple configuration types.","category":"page"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/","page":"Design patterns for larger models","title":"Design patterns for larger models","text":"function add_knapsack_constraints(\n model::Model,\n data::KnapsackData,\n ::AbstractConfiguration,\n)\n x = model[:x]\n @constraint(\n model,\n capacity_constraint,\n sum(v.weight * x[k] for (k, v) in data.objects) <= data.capacity,\n )\n return\nend\n\nfunction add_knapsack_objective(\n model::Model,\n data::KnapsackData,\n ::AbstractConfiguration,\n)\n x = model[:x]\n @objective(model, Max, sum(v.profit * x[k] for (k, v) in data.objects))\n return\nend\n\nfunction solve_knapsack_5(data::KnapsackData, config::AbstractConfiguration)\n model = Model(HiGHS.Optimizer)\n add_knapsack_variables(model, data, config)\n add_knapsack_constraints(model, data, config)\n add_knapsack_objective(model, data, config)\n optimize!(model)\n @assert is_solved_and_feasible(model)\n return value.(model[:x])\nend\n\nsolve_knapsack_5(data, BinaryKnapsackConfig())","category":"page"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/#Remove-solver-dependence,-add-error-checks","page":"Design patterns for larger models","title":"Remove solver dependence, add error checks","text":"","category":"section"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/","page":"Design patterns for larger models","title":"Design patterns for larger models","text":"Compared to where we started, our knapsack model is now significantly different. We've wrapped it in a function, defined some data types, and introduced configuration options to control the variables and constraints that get added. There are a few other steps we can do to further improve things:","category":"page"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/","page":"Design patterns for larger models","title":"Design patterns for larger models","text":"remove the dependence on HiGHS\nadd checks that we found an optimal solution\nadd a helper function to avoid the need to explicitly construct the data.","category":"page"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/","page":"Design patterns for larger models","title":"Design patterns for larger models","text":"function solve_knapsack_6(\n optimizer,\n data::KnapsackData,\n config::AbstractConfiguration,\n)\n model = Model(optimizer)\n add_knapsack_variables(model, data, config)\n add_knapsack_constraints(model, data, config)\n add_knapsack_objective(model, data, config)\n optimize!(model)\n if !is_solved_and_feasible(model)\n @warn(\"Model not solved to optimality\")\n return nothing\n end\n return value.(model[:x])\nend\n\nfunction solve_knapsack_6(\n optimizer,\n data::String,\n config::AbstractConfiguration,\n)\n return solve_knapsack_6(optimizer, read_data(data), config)\nend\n\nsolution = solve_knapsack_6(\n HiGHS.Optimizer,\n knapsack_json_filename,\n BinaryKnapsackConfig(),\n)","category":"page"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/#Create-a-module","page":"Design patterns for larger models","title":"Create a module","text":"","category":"section"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/","page":"Design patterns for larger models","title":"Design patterns for larger models","text":"Now we're ready to expose our model to the wider world. That might be as part of a larger Julia project that we're contributing to, or as a stand-alone script that we can run on-demand. In either case, it's good practice to wrap everything in a module. This further encapsulates our code into a single namespace, and we can add documentation in the form of docstrings.","category":"page"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/","page":"Design patterns for larger models","title":"Design patterns for larger models","text":"Some good rules to follow when creating a module are:","category":"page"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/","page":"Design patterns for larger models","title":"Design patterns for larger models","text":"use import in a module instead of using to make it clear which functions are from which packages\nuse _ to start function and type names that are considered private\nadd docstrings to all public variables and functions.","category":"page"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/","page":"Design patterns for larger models","title":"Design patterns for larger models","text":"module KnapsackModel\n\nimport JuMP\nimport JSON\n\nstruct _KnapsackObject\n profit::Float64\n weight::Float64\n function _KnapsackObject(profit::Float64, weight::Float64)\n if weight < 0\n throw(DomainError(\"Weight of object cannot be negative\"))\n end\n return new(profit, weight)\n end\nend\n\nstruct _KnapsackData\n objects::Dict{String,_KnapsackObject}\n capacity::Float64\nend\n\nfunction _read_data(filename)\n d = JSON.parsefile(filename)\n return _KnapsackData(\n Dict(\n k => _KnapsackObject(v[\"profit\"], v[\"weight\"]) for\n (k, v) in d[\"objects\"]\n ),\n d[\"capacity\"],\n )\nend\n\nabstract type _AbstractConfiguration end\n\n\"\"\"\n BinaryKnapsackConfig()\n\nCreate a binary knapsack problem where each object can be taken 0 or 1 times.\n\"\"\"\nstruct BinaryKnapsackConfig <: _AbstractConfiguration end\n\n\"\"\"\n IntegerKnapsackConfig()\n\nCreate an integer knapsack problem where each object can be taken any number of\ntimes.\n\"\"\"\nstruct IntegerKnapsackConfig <: _AbstractConfiguration end\n\nfunction _add_knapsack_variables(\n model::JuMP.Model,\n data::_KnapsackData,\n ::BinaryKnapsackConfig,\n)\n return JuMP.@variable(model, x[keys(data.objects)], Bin)\nend\n\nfunction _add_knapsack_variables(\n model::JuMP.Model,\n data::_KnapsackData,\n ::IntegerKnapsackConfig,\n)\n return JuMP.@variable(model, x[keys(data.objects)] >= 0, Int)\nend\n\nfunction _add_knapsack_constraints(\n model::JuMP.Model,\n data::_KnapsackData,\n ::_AbstractConfiguration,\n)\n x = model[:x]\n JuMP.@constraint(\n model,\n capacity_constraint,\n sum(v.weight * x[k] for (k, v) in data.objects) <= data.capacity,\n )\n return\nend\n\nfunction _add_knapsack_objective(\n model::JuMP.Model,\n data::_KnapsackData,\n ::_AbstractConfiguration,\n)\n x = model[:x]\n JuMP.@objective(model, Max, sum(v.profit * x[k] for (k, v) in data.objects))\n return\nend\n\nfunction _solve_knapsack(\n optimizer,\n data::_KnapsackData,\n config::_AbstractConfiguration,\n)\n model = JuMP.Model(optimizer)\n _add_knapsack_variables(model, data, config)\n _add_knapsack_constraints(model, data, config)\n _add_knapsack_objective(model, data, config)\n JuMP.optimize!(model)\n if !JuMP.is_solved_and_feasible(model)\n @warn(\"Model not solved to optimality\")\n return nothing\n end\n return JuMP.value.(model[:x])\nend\n\n\"\"\"\n solve_knapsack(\n optimizer,\n knapsack_json_filename::String,\n config::_AbstractConfiguration,\n )\n\nSolve the knapsack problem and return the optimal primal solution\n\n# Arguments\n\n * `optimizer` : an object that can be passed to `JuMP.Model` to construct a new\n JuMP model.\n * `knapsack_json_filename` : the filename of a JSON file containing the data for the\n problem.\n * `config` : an object to control the type of knapsack model constructed.\n Valid options are:\n * `BinaryKnapsackConfig()`\n * `IntegerKnapsackConfig()`\n\n# Returns\n\n * If an optimal solution exists: a `JuMP.DenseAxisArray` that maps the `String`\n name of each object to the number of objects to pack into the knapsack.\n * Otherwise, `nothing`, indicating that the problem does not have an optimal\n solution.\n\n# Example\n\n```julia\nsolution = solve_knapsack(\n HiGHS.Optimizer,\n \"path/to/data.json\",\n BinaryKnapsackConfig(),\n)\n```\n\n```julia\nsolution = solve_knapsack(\n MOI.OptimizerWithAttributes(HiGHS.Optimizer, \"output_flag\" => false),\n \"path/to/data.json\",\n IntegerKnapsackConfig(),\n)\n```\n\"\"\"\nfunction solve_knapsack(\n optimizer,\n knapsack_json_filename::String,\n config::_AbstractConfiguration,\n)\n data = _read_data(knapsack_json_filename)\n return _solve_knapsack(optimizer, data, config)\nend\n\nend","category":"page"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/","page":"Design patterns for larger models","title":"Design patterns for larger models","text":"Finally, you can call your model:","category":"page"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/","page":"Design patterns for larger models","title":"Design patterns for larger models","text":"import .KnapsackModel\n\nKnapsackModel.solve_knapsack(\n HiGHS.Optimizer,\n knapsack_json_filename,\n KnapsackModel.BinaryKnapsackConfig(),\n)","category":"page"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/","page":"Design patterns for larger models","title":"Design patterns for larger models","text":"note: Note\nThe . in .KnapsackModel denotes that it is a submodule and not a separate package that we installed with Pkg.add. If you put the KnapsackModel in a separate file, load it with:include(\"path/to/KnapsackModel.jl\")\nimport .KnapsackModel","category":"page"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/#Add-tests","page":"Design patterns for larger models","title":"Add tests","text":"","category":"section"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/","page":"Design patterns for larger models","title":"Design patterns for larger models","text":"As a final step, you should add tests for your model. This often means testing on a small problem for which you can work out the optimal solution by hand. The Julia standard library Test has good unit-testing functionality.","category":"page"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/","page":"Design patterns for larger models","title":"Design patterns for larger models","text":"import .KnapsackModel\nusing Test\n\n@testset \"KnapsackModel\" begin\n @testset \"feasible_binary_knapsack\" begin\n x = KnapsackModel.solve_knapsack(\n HiGHS.Optimizer,\n knapsack_json_filename,\n KnapsackModel.BinaryKnapsackConfig(),\n )\n @test isapprox(x[\"apple\"], 1, atol = 1e-5)\n @test isapprox(x[\"banana\"], 0, atol = 1e-5)\n @test isapprox(x[\"cherry\"], 0, atol = 1e-5)\n @test isapprox(x[\"date\"], 1, atol = 1e-5)\n @test isapprox(x[\"eggplant\"], 1, atol = 1e-5)\n end\n @testset \"feasible_integer_knapsack\" begin\n x = KnapsackModel.solve_knapsack(\n HiGHS.Optimizer,\n knapsack_json_filename,\n KnapsackModel.IntegerKnapsackConfig(),\n )\n @test isapprox(x[\"apple\"], 0, atol = 1e-5)\n @test isapprox(x[\"banana\"], 0, atol = 1e-5)\n @test isapprox(x[\"cherry\"], 0, atol = 1e-5)\n @test isapprox(x[\"date\"], 5, atol = 1e-5)\n @test isapprox(x[\"eggplant\"], 0, atol = 1e-5)\n end\n @testset \"infeasible_binary_knapsack\" begin\n dir = mktempdir()\n infeasible_filename = joinpath(dir, \"infeasible.json\")\n write(\n infeasible_filename,\n \"\"\"{\n \"objects\": {\n \"apple\": {\"profit\": 5.0, \"weight\": 2.0},\n \"banana\": {\"profit\": 3.0, \"weight\": 8.0},\n \"cherry\": {\"profit\": 2.0, \"weight\": 4.0},\n \"date\": {\"profit\": 7.0, \"weight\": 2.0},\n \"eggplant\": {\"profit\": 4.0, \"weight\": 5.0}\n },\n \"capacity\": -10.0\n }\"\"\",\n )\n x = KnapsackModel.solve_knapsack(\n HiGHS.Optimizer,\n infeasible_filename,\n KnapsackModel.BinaryKnapsackConfig(),\n )\n @test x === nothing\n end\nend","category":"page"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/","page":"Design patterns for larger models","title":"Design patterns for larger models","text":"tip: Tip\nPlace these tests in a separate file test_knapsack_model.jl so that you can run the tests by adding include(\"test_knapsack_model.jl\") to any file where needed.","category":"page"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/#Next-steps","page":"Design patterns for larger models","title":"Next steps","text":"","category":"section"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/","page":"Design patterns for larger models","title":"Design patterns for larger models","text":"We've only briefly scratched the surface of ways to create and structure large JuMP models, so consider this tutorial a starting point, rather than a comprehensive list of all the possible ways to structure JuMP models. If you are embarking on a large project that uses JuMP, a good next step is to look at ways people have written large JuMP projects \"in the wild.\"","category":"page"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/","page":"Design patterns for larger models","title":"Design patterns for larger models","text":"Here are some good examples (all co-incidentally related to energy):","category":"page"},{"location":"tutorials/getting_started/design_patterns_for_larger_models/","page":"Design patterns for larger models","title":"Design patterns for larger models","text":"AnyMOD.jl\nJuMP-dev 2021 talk\nsource code\nPowerModels.jl\nJuMP-dev 2021 talk\nsource code\nPowerSimulations.jl\nJuliaCon 2021 talk\nsource code\nUnitCommitment.jl\nJuMP-dev 2021 talk\nsource code","category":"page"},{"location":"tutorials/linear/multi/","page":"The multi-commodity flow problem","title":"The multi-commodity flow problem","text":"EditURL = \"multi.jl\"","category":"page"},{"location":"tutorials/linear/multi/#The-multi-commodity-flow-problem","page":"The multi-commodity flow problem","title":"The multi-commodity flow problem","text":"","category":"section"},{"location":"tutorials/linear/multi/","page":"The multi-commodity flow problem","title":"The multi-commodity flow problem","text":"This tutorial was generated using Literate.jl. Download the source as a .jl file.","category":"page"},{"location":"tutorials/linear/multi/","page":"The multi-commodity flow problem","title":"The multi-commodity flow problem","text":"This tutorial was originally contributed by Louis Luangkesorn.","category":"page"},{"location":"tutorials/linear/multi/","page":"The multi-commodity flow problem","title":"The multi-commodity flow problem","text":"This tutorial is a JuMP implementation of the multi-commodity transportation model described in AMPL: A Modeling Language for Mathematical Programming, by R. Fourer, D.M. Gay and B.W. Kernighan.","category":"page"},{"location":"tutorials/linear/multi/","page":"The multi-commodity flow problem","title":"The multi-commodity flow problem","text":"The purpose of this tutorial is to demonstrate creating a JuMP model from an SQLite database.","category":"page"},{"location":"tutorials/linear/multi/#Required-packages","page":"The multi-commodity flow problem","title":"Required packages","text":"","category":"section"},{"location":"tutorials/linear/multi/","page":"The multi-commodity flow problem","title":"The multi-commodity flow problem","text":"This tutorial uses the following packages","category":"page"},{"location":"tutorials/linear/multi/","page":"The multi-commodity flow problem","title":"The multi-commodity flow problem","text":"using JuMP\nimport DataFrames\nimport HiGHS\nimport SQLite\nimport Tables\nimport Test\n\nconst DBInterface = SQLite.DBInterface","category":"page"},{"location":"tutorials/linear/multi/#Formulation","page":"The multi-commodity flow problem","title":"Formulation","text":"","category":"section"},{"location":"tutorials/linear/multi/","page":"The multi-commodity flow problem","title":"The multi-commodity flow problem","text":"The multi-commondity flow problem is a simple extension of The transportation problem to multiple types of products. Briefly, we start with the formulation of the transportation problem:","category":"page"},{"location":"tutorials/linear/multi/","page":"The multi-commodity flow problem","title":"The multi-commodity flow problem","text":"beginaligned\nmin sum_i in O j in D c_ij x_ij \nst sum_j in D x_i j le s_i forall i in O \n sum_i in O x_i j = d_j forall j in D \n x_i j ge 0 forall i in O j in D\nendaligned","category":"page"},{"location":"tutorials/linear/multi/","page":"The multi-commodity flow problem","title":"The multi-commodity flow problem","text":"but introduce a set of products P, resulting in:","category":"page"},{"location":"tutorials/linear/multi/","page":"The multi-commodity flow problem","title":"The multi-commodity flow problem","text":"beginaligned\nmin sum_i in O j in D k in P c_ijk x_ijk \nst sum_j in D x_i j k le s_ik forall i in O k in P \n sum_i in O x_i j k = d_jk forall j in D k in P \n x_i jk ge 0 forall i in O j in D k in P \n sum_k in P x_i j k le u_ij forall i in O j in D\nendaligned","category":"page"},{"location":"tutorials/linear/multi/","page":"The multi-commodity flow problem","title":"The multi-commodity flow problem","text":"Note that the last constraint is new; it says that there is a maximum quantity of goods (of any type) that can be transported from origin i to destination j.","category":"page"},{"location":"tutorials/linear/multi/#Data","page":"The multi-commodity flow problem","title":"Data","text":"","category":"section"},{"location":"tutorials/linear/multi/","page":"The multi-commodity flow problem","title":"The multi-commodity flow problem","text":"For the purpose of this tutorial, the JuMP repository contains an example database called multi.sqlite.","category":"page"},{"location":"tutorials/linear/multi/","page":"The multi-commodity flow problem","title":"The multi-commodity flow problem","text":"filename = joinpath(@__DIR__, \"multi.sqlite\");\nnothing #hide","category":"page"},{"location":"tutorials/linear/multi/","page":"The multi-commodity flow problem","title":"The multi-commodity flow problem","text":"To run locally, download multi.sqlite and update filename appropriately.","category":"page"},{"location":"tutorials/linear/multi/","page":"The multi-commodity flow problem","title":"The multi-commodity flow problem","text":"Load the database using SQLite.DB:","category":"page"},{"location":"tutorials/linear/multi/","page":"The multi-commodity flow problem","title":"The multi-commodity flow problem","text":"db = SQLite.DB(filename)","category":"page"},{"location":"tutorials/linear/multi/","page":"The multi-commodity flow problem","title":"The multi-commodity flow problem","text":"A quick way to see the schema of the database is via SQLite.tables:","category":"page"},{"location":"tutorials/linear/multi/","page":"The multi-commodity flow problem","title":"The multi-commodity flow problem","text":"SQLite.tables(db)","category":"page"},{"location":"tutorials/linear/multi/","page":"The multi-commodity flow problem","title":"The multi-commodity flow problem","text":"We interact with the database by executing queries, and then piping the results to an appropriate table. One example is a DataFrame:","category":"page"},{"location":"tutorials/linear/multi/","page":"The multi-commodity flow problem","title":"The multi-commodity flow problem","text":"DBInterface.execute(db, \"SELECT * FROM locations\") |> DataFrames.DataFrame","category":"page"},{"location":"tutorials/linear/multi/","page":"The multi-commodity flow problem","title":"The multi-commodity flow problem","text":"But other table types are supported, such as Tables.rowtable:","category":"page"},{"location":"tutorials/linear/multi/","page":"The multi-commodity flow problem","title":"The multi-commodity flow problem","text":"DBInterface.execute(db, \"SELECT * FROM locations\") |> Tables.rowtable","category":"page"},{"location":"tutorials/linear/multi/","page":"The multi-commodity flow problem","title":"The multi-commodity flow problem","text":"A rowtable is a Vector of NamedTuples.","category":"page"},{"location":"tutorials/linear/multi/","page":"The multi-commodity flow problem","title":"The multi-commodity flow problem","text":"You can construct more complicated SQL queries:","category":"page"},{"location":"tutorials/linear/multi/","page":"The multi-commodity flow problem","title":"The multi-commodity flow problem","text":"origins =\n DBInterface.execute(\n db,\n \"SELECT location FROM locations WHERE type = \\\"origin\\\"\",\n ) |> Tables.rowtable","category":"page"},{"location":"tutorials/linear/multi/","page":"The multi-commodity flow problem","title":"The multi-commodity flow problem","text":"But for our purpose, we just want the list of strings:","category":"page"},{"location":"tutorials/linear/multi/","page":"The multi-commodity flow problem","title":"The multi-commodity flow problem","text":"origins = map(y -> y.location, origins)","category":"page"},{"location":"tutorials/linear/multi/","page":"The multi-commodity flow problem","title":"The multi-commodity flow problem","text":"We can compose these two operations to get a list of destinations:","category":"page"},{"location":"tutorials/linear/multi/","page":"The multi-commodity flow problem","title":"The multi-commodity flow problem","text":"destinations =\n DBInterface.execute(\n db,\n \"SELECT location FROM locations WHERE type = \\\"destination\\\"\",\n ) |>\n Tables.rowtable |>\n x -> map(y -> y.location, x)","category":"page"},{"location":"tutorials/linear/multi/","page":"The multi-commodity flow problem","title":"The multi-commodity flow problem","text":"And a list of products from our products table:","category":"page"},{"location":"tutorials/linear/multi/","page":"The multi-commodity flow problem","title":"The multi-commodity flow problem","text":"products =\n DBInterface.execute(db, \"SELECT product FROM products\") |>\n Tables.rowtable |>\n x -> map(y -> y.product, x)","category":"page"},{"location":"tutorials/linear/multi/#JuMP-formulation","page":"The multi-commodity flow problem","title":"JuMP formulation","text":"","category":"section"},{"location":"tutorials/linear/multi/","page":"The multi-commodity flow problem","title":"The multi-commodity flow problem","text":"We start by creating a model and our decision variables:","category":"page"},{"location":"tutorials/linear/multi/","page":"The multi-commodity flow problem","title":"The multi-commodity flow problem","text":"model = Model(HiGHS.Optimizer)\nset_silent(model)\n@variable(model, x[origins, destinations, products] >= 0)","category":"page"},{"location":"tutorials/linear/multi/","page":"The multi-commodity flow problem","title":"The multi-commodity flow problem","text":"One approach when working with databases is to extract all of the data into a Julia datastructure. For example, let's pull the cost table into a DataFrame and then construct our objective by iterating over the rows of the DataFrame:","category":"page"},{"location":"tutorials/linear/multi/","page":"The multi-commodity flow problem","title":"The multi-commodity flow problem","text":"cost = DBInterface.execute(db, \"SELECT * FROM cost\") |> DataFrames.DataFrame\n@objective(\n model,\n Max,\n sum(r.cost * x[r.origin, r.destination, r.product] for r in eachrow(cost)),\n);\nnothing #hide","category":"page"},{"location":"tutorials/linear/multi/","page":"The multi-commodity flow problem","title":"The multi-commodity flow problem","text":"If we don't want to use a DataFrame, we can use a Tables.rowtable instead:","category":"page"},{"location":"tutorials/linear/multi/","page":"The multi-commodity flow problem","title":"The multi-commodity flow problem","text":"supply = DBInterface.execute(db, \"SELECT * FROM supply\") |> Tables.rowtable\nfor r in supply\n @constraint(model, sum(x[r.origin, :, r.product]) <= r.supply)\nend","category":"page"},{"location":"tutorials/linear/multi/","page":"The multi-commodity flow problem","title":"The multi-commodity flow problem","text":"Another approach is to execute the query, and then to iterate through the rows of the query using Tables.rows:","category":"page"},{"location":"tutorials/linear/multi/","page":"The multi-commodity flow problem","title":"The multi-commodity flow problem","text":"demand = DBInterface.execute(db, \"SELECT * FROM demand\")\nfor r in Tables.rows(demand)\n @constraint(model, sum(x[:, r.destination, r.product]) == r.demand)\nend","category":"page"},{"location":"tutorials/linear/multi/","page":"The multi-commodity flow problem","title":"The multi-commodity flow problem","text":"warning: Warning\nIterating through the rows of a query result works by incrementing a cursor inside the database. As a consequence, you cannot call Tables.rows twice on the same query result.","category":"page"},{"location":"tutorials/linear/multi/","page":"The multi-commodity flow problem","title":"The multi-commodity flow problem","text":"The SQLite queries can be arbitrarily complex. For example, here's a query which builds every possible origin-destination pair:","category":"page"},{"location":"tutorials/linear/multi/","page":"The multi-commodity flow problem","title":"The multi-commodity flow problem","text":"od_pairs = DBInterface.execute(\n db,\n \"\"\"\n SELECT a.location as 'origin',\n b.location as 'destination'\n FROM locations a\n INNER JOIN locations b\n ON a.type = 'origin' AND b.type = 'destination'\n \"\"\",\n)","category":"page"},{"location":"tutorials/linear/multi/","page":"The multi-commodity flow problem","title":"The multi-commodity flow problem","text":"With a constraint that we cannot send more than 625 units between each pair:","category":"page"},{"location":"tutorials/linear/multi/","page":"The multi-commodity flow problem","title":"The multi-commodity flow problem","text":"for r in Tables.rows(od_pairs)\n @constraint(model, sum(x[r.origin, r.destination, :]) <= 625)\nend","category":"page"},{"location":"tutorials/linear/multi/#Solution","page":"The multi-commodity flow problem","title":"Solution","text":"","category":"section"},{"location":"tutorials/linear/multi/","page":"The multi-commodity flow problem","title":"The multi-commodity flow problem","text":"Finally, we can optimize the model:","category":"page"},{"location":"tutorials/linear/multi/","page":"The multi-commodity flow problem","title":"The multi-commodity flow problem","text":"optimize!(model)\nTest.@test is_solved_and_feasible(model)\nsolution_summary(model)","category":"page"},{"location":"tutorials/linear/multi/","page":"The multi-commodity flow problem","title":"The multi-commodity flow problem","text":"and print the solution:","category":"page"},{"location":"tutorials/linear/multi/","page":"The multi-commodity flow problem","title":"The multi-commodity flow problem","text":"begin\n println(\" \", join(products, ' '))\n for o in origins, d in destinations\n v = lpad.([round(Int, value(x[o, d, p])) for p in products], 5)\n println(o, \" \", d, \" \", join(replace.(v, \" 0\" => \" . \"), \" \"))\n end\nend","category":"page"},{"location":"tutorials/linear/finance/","page":"Financial modeling problems","title":"Financial modeling problems","text":"EditURL = \"finance.jl\"","category":"page"},{"location":"tutorials/linear/finance/#Financial-modeling-problems","page":"Financial modeling problems","title":"Financial modeling problems","text":"","category":"section"},{"location":"tutorials/linear/finance/","page":"Financial modeling problems","title":"Financial modeling problems","text":"This tutorial was generated using Literate.jl. Download the source as a .jl file.","category":"page"},{"location":"tutorials/linear/finance/","page":"Financial modeling problems","title":"Financial modeling problems","text":"This tutorial was originally contributed by Arpit Bhatia.","category":"page"},{"location":"tutorials/linear/finance/","page":"Financial modeling problems","title":"Financial modeling problems","text":"Optimization models play an increasingly important role in financial decisions. Many computational finance problems can be solved efficiently using modern optimization techniques.","category":"page"},{"location":"tutorials/linear/finance/","page":"Financial modeling problems","title":"Financial modeling problems","text":"In this tutorial we will discuss two such examples taken from (Cornuéjols et al., 2018).","category":"page"},{"location":"tutorials/linear/finance/","page":"Financial modeling problems","title":"Financial modeling problems","text":"This tutorial uses the following packages","category":"page"},{"location":"tutorials/linear/finance/","page":"Financial modeling problems","title":"Financial modeling problems","text":"using JuMP\nimport HiGHS","category":"page"},{"location":"tutorials/linear/finance/#Short-term-financing","page":"Financial modeling problems","title":"Short-term financing","text":"","category":"section"},{"location":"tutorials/linear/finance/","page":"Financial modeling problems","title":"Financial modeling problems","text":"Corporations routinely face the problem of financing short term cash commitments such as the following:","category":"page"},{"location":"tutorials/linear/finance/","page":"Financial modeling problems","title":"Financial modeling problems","text":"Month Jan Feb Mar Apr May Jun\nNet Cash Flow -150 -100 200 -200 50 300","category":"page"},{"location":"tutorials/linear/finance/","page":"Financial modeling problems","title":"Financial modeling problems","text":"Net cash flow requirements are given in thousands of dollars. The company has the following sources of funds:","category":"page"},{"location":"tutorials/linear/finance/","page":"Financial modeling problems","title":"Financial modeling problems","text":"A line of credit of up to $100K at an interest rate of 1% per month,\nIn any one of the first three months, it can issue 90-day commercial paper bearing a total interest of 2% for the 3-month period,\nExcess funds can be invested at an interest rate of 0.3% per month.","category":"page"},{"location":"tutorials/linear/finance/","page":"Financial modeling problems","title":"Financial modeling problems","text":"Our task is to find out the most economical way to use these 3 sources such that we end up with the most amount of money at the end of June.","category":"page"},{"location":"tutorials/linear/finance/","page":"Financial modeling problems","title":"Financial modeling problems","text":"We model this problem in the following manner:","category":"page"},{"location":"tutorials/linear/finance/","page":"Financial modeling problems","title":"Financial modeling problems","text":"We will use the following decision variables:","category":"page"},{"location":"tutorials/linear/finance/","page":"Financial modeling problems","title":"Financial modeling problems","text":"the amount u_i drawn from the line of credit in month i\nthe amount v_i of commercial paper issued in month i\nthe excess funds w_i in month i","category":"page"},{"location":"tutorials/linear/finance/","page":"Financial modeling problems","title":"Financial modeling problems","text":"Here we have three types of constraints:","category":"page"},{"location":"tutorials/linear/finance/","page":"Financial modeling problems","title":"Financial modeling problems","text":"for every month, cash inflow = cash outflow for each month\nupper bounds on u_i\nnonnegativity of the decision variables u_i, v_i and w_i.","category":"page"},{"location":"tutorials/linear/finance/","page":"Financial modeling problems","title":"Financial modeling problems","text":"Our objective will be to simply maximize the company's wealth in June, which say we represent with the variable m.","category":"page"},{"location":"tutorials/linear/finance/","page":"Financial modeling problems","title":"Financial modeling problems","text":"financing = Model(HiGHS.Optimizer)\n\n@variables(financing, begin\n 0 <= u[1:5] <= 100\n 0 <= v[1:3]\n 0 <= w[1:5]\n m\nend)\n\n@objective(financing, Max, m)\n\n@constraints(\n financing,\n begin\n u[1] + v[1] - w[1] == 150 # January\n u[2] + v[2] - w[2] - 1.01u[1] + 1.003w[1] == 100 # February\n u[3] + v[3] - w[3] - 1.01u[2] + 1.003w[2] == -200 # March\n u[4] - w[4] - 1.02v[1] - 1.01u[3] + 1.003w[3] == 200 # April\n u[5] - w[5] - 1.02v[2] - 1.01u[4] + 1.003w[4] == -50 # May\n -m - 1.02v[3] - 1.01u[5] + 1.003w[5] == -300 # June\n end\n)\n\noptimize!(financing)\n@assert is_solved_and_feasible(financing)\nobjective_value(financing)","category":"page"},{"location":"tutorials/linear/finance/#Combinatorial-auctions","page":"Financial modeling problems","title":"Combinatorial auctions","text":"","category":"section"},{"location":"tutorials/linear/finance/","page":"Financial modeling problems","title":"Financial modeling problems","text":"In many auctions, the value that a bidder has for a set of items may not be the sum of the values that he has for individual items.","category":"page"},{"location":"tutorials/linear/finance/","page":"Financial modeling problems","title":"Financial modeling problems","text":"Examples are equity trading, electricity markets, pollution right auctions and auctions for airport landing slots.","category":"page"},{"location":"tutorials/linear/finance/","page":"Financial modeling problems","title":"Financial modeling problems","text":"To take this into account, combinatorial auctions allow the bidders to submit bids on combinations of items.","category":"page"},{"location":"tutorials/linear/finance/","page":"Financial modeling problems","title":"Financial modeling problems","text":"Let M=12 ldots m be the set of items that the auctioneer has to sell. A bid is a pair B_j=left(S_j p_jright) where S_j subseteq M is a nonempty set of items and p_j is the price offer for this set.","category":"page"},{"location":"tutorials/linear/finance/","page":"Financial modeling problems","title":"Financial modeling problems","text":"Suppose that the auctioneer has received n bids B_1 B_2 ldots B_n The goal of this problem is to help an auctioneer determine the winners in order to maximize his revenue.","category":"page"},{"location":"tutorials/linear/finance/","page":"Financial modeling problems","title":"Financial modeling problems","text":"We model this problem by taking a decision variable y_j for every bid. We add a constraint that each item i is sold at most once. This gives us the following model:","category":"page"},{"location":"tutorials/linear/finance/","page":"Financial modeling problems","title":"Financial modeling problems","text":"beginaligned\nmax sum_i=1^n p_j y_j \ntext st sum_j i in S_j y_j leq 1 forall i=12 ldots m \n y_j in01 forall j in12 ldots n\nendaligned","category":"page"},{"location":"tutorials/linear/finance/","page":"Financial modeling problems","title":"Financial modeling problems","text":"bid_values = [6 3 12 12 8 16]\nbid_items = [[1], [2], [3 4], [1 3], [2 4], [1 3 4]]\n\nauction = Model(HiGHS.Optimizer)\n@variable(auction, y[1:6], Bin)\n@objective(auction, Max, sum(y' .* bid_values))\nfor i in 1:6\n @constraint(auction, sum(y[j] for j in 1:6 if i in bid_items[j]) <= 1)\nend\noptimize!(auction)\n@assert is_solved_and_feasible(auction)\nobjective_value(auction)","category":"page"},{"location":"tutorials/linear/finance/","page":"Financial modeling problems","title":"Financial modeling problems","text":"value.(y)","category":"page"},{"location":"packages/GAMS/","page":"GAMS-dev/GAMS.jl","title":"GAMS-dev/GAMS.jl","text":"EditURL = \"https://github.com/GAMS-dev/GAMS.jl/blob/e00a845d42653adf5d26c7cef1ef84fb990c91c7/README.md\"","category":"page"},{"location":"packages/GAMS/#GAMS.jl","page":"GAMS-dev/GAMS.jl","title":"GAMS.jl","text":"","category":"section"},{"location":"packages/GAMS/","page":"GAMS-dev/GAMS.jl","title":"GAMS-dev/GAMS.jl","text":"GAMS.jl provides a MathOptInterface Optimizer to solve JuMP models using GAMS.","category":"page"},{"location":"packages/GAMS/","page":"GAMS-dev/GAMS.jl","title":"GAMS-dev/GAMS.jl","text":"GAMS comes with dozens of supported solvers. Among them are: ALPHAECP, ANTIGONE, BARON, CBC, CONOPT, CPLEX, DICOPT, GUROBI, IPOPT, KNITRO, LINDO, LINDOGLOBAL, MINOS, MOSEK, NLPEC, PATH, QUADMINOS, SBB, SHOT, SCIP, SNOPT, SOPLEX, XPRESS. Find a complete list here.","category":"page"},{"location":"packages/GAMS/","page":"GAMS-dev/GAMS.jl","title":"GAMS-dev/GAMS.jl","text":"GAMS.jl supports the following JuMP features:","category":"page"},{"location":"packages/GAMS/","page":"GAMS-dev/GAMS.jl","title":"GAMS-dev/GAMS.jl","text":"linear, quadratic and nonlinear (convex and non-convex) objective and constraints\ncontinuous, binary, integer, semi-continuous and semi-integer variables\nSOS1 and SOS2 sets\ncomplementarity constraints","category":"page"},{"location":"packages/GAMS/#Installation","page":"GAMS-dev/GAMS.jl","title":"Installation","text":"","category":"section"},{"location":"packages/GAMS/","page":"GAMS-dev/GAMS.jl","title":"GAMS-dev/GAMS.jl","text":"Download GAMS and obtain a GAMS license. Please note that GAMS also offers a free community license.\n(optional) Add the GAMS system directory to the PATH variable in order to find GAMS automatically.\nInstall GAMS.jl using the Julia package manager:\nusing Pkg\nPkg.add(\"GAMS\")","category":"page"},{"location":"packages/GAMS/#Usage","page":"GAMS-dev/GAMS.jl","title":"Usage","text":"","category":"section"},{"location":"packages/GAMS/","page":"GAMS-dev/GAMS.jl","title":"GAMS-dev/GAMS.jl","text":"Using GAMS as optimizer for your JuMP model:","category":"page"},{"location":"packages/GAMS/","page":"GAMS-dev/GAMS.jl","title":"GAMS-dev/GAMS.jl","text":"using GAMS, JuMP\nmodel = Model(GAMS.Optimizer)","category":"page"},{"location":"packages/GAMS/#GAMS-System","page":"GAMS-dev/GAMS.jl","title":"GAMS System","text":"","category":"section"},{"location":"packages/GAMS/","page":"GAMS-dev/GAMS.jl","title":"GAMS-dev/GAMS.jl","text":"If the GAMS system directory has been added to the PATH variable (you can check this with print(ENV[\"PATH\"])), GAMS.jl will find it automatically. Otherwise, or if you like to switch between systems, the system directory can be specified by (one of the following):","category":"page"},{"location":"packages/GAMS/","page":"GAMS-dev/GAMS.jl","title":"GAMS-dev/GAMS.jl","text":"set_optimizer_attribute(model, \"SysDir\", \"\")\nset_optimizer_attribute(model, GAMS.SysDir(), \"\")","category":"page"},{"location":"packages/GAMS/","page":"GAMS-dev/GAMS.jl","title":"GAMS-dev/GAMS.jl","text":"Analogously, you can specify a working directory with \"WorkDir\" or GAMS.WorkDir(). If no working directory has been set, GAMS.jl will create a temporary one.","category":"page"},{"location":"packages/GAMS/","page":"GAMS-dev/GAMS.jl","title":"GAMS-dev/GAMS.jl","text":"If you want to use the same GAMS workspace (same system and working directory) for multiple models, you can create a GAMSWorkspace first with either of the following","category":"page"},{"location":"packages/GAMS/","page":"GAMS-dev/GAMS.jl","title":"GAMS-dev/GAMS.jl","text":"ws = GAMS.GAMSWorkspace()\nws = GAMS.GAMSWorkspace(\"\")\nws = GAMS.GAMSWorkspace(\"\", \"\")","category":"page"},{"location":"packages/GAMS/","page":"GAMS-dev/GAMS.jl","title":"GAMS-dev/GAMS.jl","text":"and then pass it to your models:","category":"page"},{"location":"packages/GAMS/","page":"GAMS-dev/GAMS.jl","title":"GAMS-dev/GAMS.jl","text":"model = Model(() -> GAMS.Optimizer(ws))","category":"page"},{"location":"packages/GAMS/#GAMS-Options","page":"GAMS-dev/GAMS.jl","title":"GAMS Options","text":"","category":"section"},{"location":"packages/GAMS/","page":"GAMS-dev/GAMS.jl","title":"GAMS-dev/GAMS.jl","text":"GAMS command line options can be specified by","category":"page"},{"location":"packages/GAMS/","page":"GAMS-dev/GAMS.jl","title":"GAMS-dev/GAMS.jl","text":"set_optimizer_attribute(model, \"

    Eea88V$~Qg;%# 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 diff --git a/dev/api/JuMP.Containers/index.html b/dev/api/JuMP.Containers/index.html index b3c1ee103bf..247237f9c76 100644 --- a/dev/api/JuMP.Containers/index.html +++ b/dev/api/JuMP.Containers/index.html @@ -12,7 +12,7 @@ 3 4 julia> array[:b, 3] -4source

hE!u*o?AU=}v1e|392aB>&s>?(m5 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 z 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

jYu)}J950cxX4GZI4H9GAu$_$)C;YosFCf~>Y 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 z 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�HdIwBMSFqh%K2owS{F_*DY1tx#37`cvH zH?Y@NuuO`jIppvH76PQVDn6XSAvwIBo@B{RK~aw!&doWf#22B& z``z(n_wHm+co{5sEnYqgpbbU8plH!q;Q^#GAYNX@$48~Kqj98xN*P1L)BixT-9H!z z1OW#cuz&Cf^ksmCF0($-SonW`*gvHGj3=M+m4Xu#X8gGyI)?76Hou_er<65 zU#0a>i9HO|Zcww2GYRV$XXVM)if=~zFNm8=s}S1~fI-GhHi=Tw10(mRr- zEZGVdhJl9N^_>iPs`#wQxHK>i==b?=LP>`(vE(Wm#KwjjNV+m`0dv%RCh^sXpk?8F zTUo}h1e{lrxz!EWT|4Pm)O0Ge)dUyYR}%a1OT2-e!Nn37z(;st}8nw1>wcUP4SZ$SZ?a^pyh(voMBZ+u3BV?iSIC zoo61JB0LMfj0WrY@X#pv;<^2+s+U(BuOO>6jPfMI6zbjCxPTMMj@Y>0atw%0Dw==UGbS6j!47zCOTIkV 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