108108 "search-label" : "Search"
109109 }
110110} </ script >
111+ < script defer ="" src ="https://umi.byndsim.com/script.js " data-website-id ="e230d76b-b0a6-477e-8c5d-19a7bd661e68 "> </ script >
112+
111113< script defer ="" data-domain ="beyondsimulations.github.io " src ="https://plb.byndsim.com/js/script.file-downloads.hash.outbound-links.js "> </ script >
112114< script >
113115 window . plausible =
@@ -636,7 +638,7 @@ <h1 class="title">JuMP Syntax Cheatsheet</h1>
636638
637639< section id ="basic-setup " class ="level1 ">
638640< h1 > Basic Setup</ h1 >
639- < div id ="1774767d " class ="cell " data-execution_count ="2 ">
641+ < div id ="63c236e4 " class ="cell " data-execution_count ="2 ">
640642< div class ="code-copy-outer-scaffold "> < div class ="sourceCode cell-code " id ="cb1 "> < pre class ="sourceCode julia code-with-copy "> < code class ="sourceCode julia "> < span id ="cb1-1 "> < a href ="#cb1-1 " aria-hidden ="true " tabindex ="-1 "> </ a > < span class ="im "> using</ span > < span class ="bu "> JuMP</ span > , < span class ="bu "> HiGHS</ span > </ span >
641643< span id ="cb1-2 "> < a href ="#cb1-2 " aria-hidden ="true " tabindex ="-1 "> </ a > </ span >
642644< span id ="cb1-3 "> < a href ="#cb1-3 " aria-hidden ="true " tabindex ="-1 "> </ a > < span class ="co "> # Create a model</ span > </ span >
@@ -650,7 +652,7 @@ <h1>Basic Setup</h1>
650652< h1 > Variables</ h1 >
651653< section id ="declaration " class ="level2 ">
652654< h2 class ="anchored " data-anchor-id ="declaration "> Declaration</ h2 >
653- < div id ="538f1bda " class ="cell " data-execution_count ="3 ">
655+ < div id ="dc9cbab1 " class ="cell " data-execution_count ="3 ">
654656< div class ="code-copy-outer-scaffold "> < div class ="sourceCode cell-code " id ="cb2 "> < pre class ="sourceCode julia code-with-copy "> < code class ="sourceCode julia "> < span id ="cb2-1 "> < a href ="#cb2-1 " aria-hidden ="true " tabindex ="-1 "> </ a > < span class ="co "> # Continuous Variables</ span > </ span >
655657< span id ="cb2-2 "> < a href ="#cb2-2 " aria-hidden ="true " tabindex ="-1 "> </ a > < span class ="pp "> @variable</ span > (model, x) < span class ="co "> # Unbounded continuous</ span > </ span >
656658< span id ="cb2-3 "> < a href ="#cb2-3 " aria-hidden ="true " tabindex ="-1 "> </ a > < span class ="pp "> @variable</ span > (model, x < span class ="op "> >=</ span > < span class ="fl "> 0</ span > ) < span class ="co "> # Non-negative continuous</ span > </ span >
@@ -667,7 +669,7 @@ <h2 class="anchored" data-anchor-id="declaration">Declaration</h2>
667669</ section >
668670< section id ="containers " class ="level2 ">
669671< h2 class ="anchored " data-anchor-id ="containers "> Containers</ h2 >
670- < div id ="f526cf5f " class ="cell " data-execution_count ="4 ">
672+ < div id ="2d937926 " class ="cell " data-execution_count ="4 ">
671673< div class ="code-copy-outer-scaffold "> < div class ="sourceCode cell-code " id ="cb3 "> < pre class ="sourceCode julia code-with-copy "> < code class ="sourceCode julia "> < span id ="cb3-1 "> < a href ="#cb3-1 " aria-hidden ="true " tabindex ="-1 "> </ a > < span class ="co "> # Arrays</ span > </ span >
672674< span id ="cb3-2 "> < a href ="#cb3-2 " aria-hidden ="true " tabindex ="-1 "> </ a > < span class ="pp "> @variable</ span > (model, x[< span class ="fl "> 1</ span > < span class ="op "> :</ span > < span class ="fl "> 5</ span > ]) < span class ="co "> # Array of 5 variables</ span > </ span >
673675< span id ="cb3-3 "> < a href ="#cb3-3 " aria-hidden ="true " tabindex ="-1 "> </ a > < span class ="pp "> @variable</ span > (model, x[< span class ="fl "> 1</ span > < span class ="op "> :</ span > < span class ="fl "> 5</ span > ] < span class ="op "> >=</ span > < span class ="fl "> 0</ span > ) < span class ="co "> # Non-negative array</ span > </ span >
@@ -688,15 +690,15 @@ <h2 class="anchored" data-anchor-id="containers">Containers</h2>
688690< h1 > Constraints</ h1 >
689691< section id ="declaration-1 " class ="level2 ">
690692< h2 class ="anchored " data-anchor-id ="declaration-1 "> Declaration</ h2 >
691- < div id ="c677a665 " class ="cell " data-execution_count ="5 ">
693+ < div id ="13a0115e " class ="cell " data-execution_count ="5 ">
692694< div class ="code-copy-outer-scaffold "> < div class ="sourceCode cell-code " id ="cb4 "> < pre class ="sourceCode julia code-with-copy "> < code class ="sourceCode julia "> < span id ="cb4-1 "> < a href ="#cb4-1 " aria-hidden ="true " tabindex ="-1 "> </ a > < span class ="co "> # Basic constraints</ span > </ span >
693695< span id ="cb4-2 "> < a href ="#cb4-2 " aria-hidden ="true " tabindex ="-1 "> </ a > < span class ="pp "> @constraint</ span > (model, con1, < span class ="fl "> 2</ span > x < span class ="op "> +</ span > y < span class ="op "> <=</ span > < span class ="fl "> 10</ span > )</ span >
694696< span id ="cb4-3 "> < a href ="#cb4-3 " aria-hidden ="true " tabindex ="-1 "> </ a > < span class ="pp "> @constraint</ span > (model, con2, x < span class ="op "> +</ span > < span class ="fl "> 2</ span > y < span class ="op "> >=</ span > < span class ="fl "> 5</ span > )</ span > </ code > </ pre > </ div > < button title ="Copy to Clipboard " class ="code-copy-button "> < i class ="bi "> </ i > </ button > </ div >
695697</ div >
696698</ section >
697699< section id ="containers-1 " class ="level2 ">
698700< h2 class ="anchored " data-anchor-id ="containers-1 "> Containers</ h2 >
699- < div id ="cce2b8a0 " class ="cell " data-execution_count ="6 ">
701+ < div id ="368f84c3 " class ="cell " data-execution_count ="6 ">
700702< div class ="code-copy-outer-scaffold "> < div class ="sourceCode cell-code " id ="cb5 "> < pre class ="sourceCode julia code-with-copy "> < code class ="sourceCode julia "> < span id ="cb5-1 "> < a href ="#cb5-1 " aria-hidden ="true " tabindex ="-1 "> </ a > < span class ="co "> # Array of variables</ span > </ span >
701703< span id ="cb5-2 "> < a href ="#cb5-2 " aria-hidden ="true " tabindex ="-1 "> </ a > < span class ="pp "> @variable</ span > (model, x[< span class ="fl "> 1</ span > < span class ="op "> :</ span > < span class ="fl "> 5</ span > ] < span class ="op "> >=</ span > < span class ="fl "> 0</ span > )</ span >
702704< span id ="cb5-3 "> < a href ="#cb5-3 " aria-hidden ="true " tabindex ="-1 "> </ a > </ span >
@@ -719,7 +721,7 @@ <h2 class="anchored" data-anchor-id="containers-1">Containers</h2>
719721</ section >
720722< section id ="conditional " class ="level2 ">
721723< h2 class ="anchored " data-anchor-id ="conditional "> Conditional</ h2 >
722- < div id ="951852d8 " class ="cell " data-execution_count ="7 ">
724+ < div id ="57c9cf67 " class ="cell " data-execution_count ="7 ">
723725< div class ="code-copy-outer-scaffold "> < div class ="sourceCode cell-code " id ="cb6 "> < pre class ="sourceCode julia code-with-copy "> < code class ="sourceCode julia "> < span id ="cb6-1 "> < a href ="#cb6-1 " aria-hidden ="true " tabindex ="-1 "> </ a > < span class ="co "> # Basic conditional constraint</ span > </ span >
724726< span id ="cb6-2 "> < a href ="#cb6-2 " aria-hidden ="true " tabindex ="-1 "> </ a > < span class ="pp "> @constraint</ span > (model, cond[i< span class ="op "> =</ span > < span class ="fl "> 1</ span > < span class ="op "> :</ span > < span class ="fl "> 5</ span > ; i < span class ="op "> ></ span > < span class ="fl "> 2</ span > ],</ span >
725727< span id ="cb6-3 "> < a href ="#cb6-3 " aria-hidden ="true " tabindex ="-1 "> </ a > x[i] < span class ="op "> <=</ span > < span class ="fl "> 10</ span > </ span >
@@ -733,7 +735,7 @@ <h2 class="anchored" data-anchor-id="conditional">Conditional</h2>
733735</ section >
734736< section id ="conditions-while-summing " class ="level2 ">
735737< h2 class ="anchored " data-anchor-id ="conditions-while-summing "> Conditions while Summing</ h2 >
736- < div id ="91caaf42 " class ="cell " data-execution_count ="8 ">
738+ < div id ="60fe853f " class ="cell " data-execution_count ="8 ">
737739< div class ="code-copy-outer-scaffold "> < div class ="sourceCode cell-code " id ="cb7 "> < pre class ="sourceCode julia code-with-copy "> < code class ="sourceCode julia "> < span id ="cb7-1 "> < a href ="#cb7-1 " aria-hidden ="true " tabindex ="-1 "> </ a > < span class ="pp "> @constraint</ span > (model, total_sum,</ span >
738740< span id ="cb7-2 "> < a href ="#cb7-2 " aria-hidden ="true " tabindex ="-1 "> </ a > < span class ="fu "> sum</ span > (x[i] < span class ="cf "> for</ span > i < span class ="kw "> in</ span > < span class ="fl "> 1</ span > < span class ="op "> :</ span > < span class ="fl "> 5</ span > < span class ="cf "> if</ span > i < span class ="op "> ></ span > < span class ="fl "> 2</ span > ) < span class ="op "> <=</ span > < span class ="fl "> 500</ span > </ span >
739741< span id ="cb7-3 "> < a href ="#cb7-3 " aria-hidden ="true " tabindex ="-1 "> </ a > )</ span >
@@ -759,7 +761,7 @@ <h2 class="anchored" data-anchor-id="key-points-for-constraints">Key Points for
759761< h1 > Objective Function</ h1 >
760762< section id ="declaration-2 " class ="level2 ">
761763< h2 class ="anchored " data-anchor-id ="declaration-2 "> Declaration</ h2 >
762- < div id ="ae870160 " class ="cell " data-execution_count ="9 ">
764+ < div id ="de38f848 " class ="cell " data-execution_count ="9 ">
763765< div class ="code-copy-outer-scaffold "> < div class ="sourceCode cell-code " id ="cb8 "> < pre class ="sourceCode julia code-with-copy "> < code class ="sourceCode julia "> < span id ="cb8-1 "> < a href ="#cb8-1 " aria-hidden ="true " tabindex ="-1 "> </ a > < span class ="co "> # Maximize objective</ span > </ span >
764766< span id ="cb8-2 "> < a href ="#cb8-2 " aria-hidden ="true " tabindex ="-1 "> </ a > < span class ="pp "> @objective</ span > (model, Max, < span class ="fl "> 5</ span > x < span class ="op "> +</ span > < span class ="fl "> 3</ span > y)</ span >
765767< span id ="cb8-3 "> < a href ="#cb8-3 " aria-hidden ="true " tabindex ="-1 "> </ a > </ span >
@@ -769,7 +771,7 @@ <h2 class="anchored" data-anchor-id="declaration-2">Declaration</h2>
769771</ section >
770772< section id ="containers-2 " class ="level2 ">
771773< h2 class ="anchored " data-anchor-id ="containers-2 "> Containers</ h2 >
772- < div id ="7c338e01 " class ="cell " data-execution_count ="10 ">
774+ < div id ="f9d39b68 " class ="cell " data-execution_count ="10 ">
773775< div class ="code-copy-outer-scaffold "> < div class ="sourceCode cell-code " id ="cb9 "> < pre class ="sourceCode julia code-with-copy "> < code class ="sourceCode julia "> < span id ="cb9-1 "> < a href ="#cb9-1 " aria-hidden ="true " tabindex ="-1 "> </ a > < span class ="co "> # Container objective</ span > </ span >
774776< span id ="cb9-2 "> < a href ="#cb9-2 " aria-hidden ="true " tabindex ="-1 "> </ a > < span class ="pp "> @variable</ span > (model, z[< span class ="fl "> 1</ span > < span class ="op "> :</ span > < span class ="fl "> 10</ span > ])</ span >
775777< span id ="cb9-3 "> < a href ="#cb9-3 " aria-hidden ="true " tabindex ="-1 "> </ a > < span class ="pp "> @objective</ span > (model, Min, < span class ="fu "> sum</ span > (z[i] < span class ="cf "> for</ span > i < span class ="kw "> in</ span > < span class ="fl "> 1</ span > < span class ="op "> :</ span > < span class ="fl "> 10</ span > ))</ span >
@@ -795,7 +797,7 @@ <h2 class="anchored" data-anchor-id="key-points">Key Points</h2>
795797< h1 > Additional Features</ h1 >
796798< section id ="checking-bounds " class ="level2 ">
797799< h2 class ="anchored " data-anchor-id ="checking-bounds "> Checking Bounds</ h2 >
798- < div id ="f134f53e " class ="cell " data-execution_count ="11 ">
800+ < div id ="4cc85744 " class ="cell " data-execution_count ="11 ">
799801< div class ="code-copy-outer-scaffold "> < div class ="sourceCode cell-code " id ="cb10 "> < pre class ="sourceCode julia code-with-copy "> < code class ="sourceCode julia "> < span id ="cb10-1 "> < a href ="#cb10-1 " aria-hidden ="true " tabindex ="-1 "> </ a > < span class ="co "> # Checking bounds</ span > </ span >
800802< span id ="cb10-2 "> < a href ="#cb10-2 " aria-hidden ="true " tabindex ="-1 "> </ a > < span class ="fu "> has_lower_bound</ span > (x) < span class ="co "> # Check if lower bound exists</ span > </ span >
801803< span id ="cb10-3 "> < a href ="#cb10-3 " aria-hidden ="true " tabindex ="-1 "> </ a > < span class ="fu "> has_upper_bound</ span > (x) < span class ="co "> # Check if upper bound exists</ span > </ span >
@@ -805,7 +807,7 @@ <h2 class="anchored" data-anchor-id="checking-bounds">Checking Bounds</h2>
805807</ section >
806808< section id ="checking-properties " class ="level2 ">
807809< h2 class ="anchored " data-anchor-id ="checking-properties "> Checking Properties</ h2 >
808- < div id ="410f3141 " class ="cell " data-execution_count ="12 ">
810+ < div id ="7ec0f014 " class ="cell " data-execution_count ="12 ">
809811< div class ="code-copy-outer-scaffold "> < div class ="sourceCode cell-code " id ="cb11 "> < pre class ="sourceCode julia code-with-copy "> < code class ="sourceCode julia "> < span id ="cb11-1 "> < a href ="#cb11-1 " aria-hidden ="true " tabindex ="-1 "> </ a > < span class ="co "> # Check variable type</ span > </ span >
810812< span id ="cb11-2 "> < a href ="#cb11-2 " aria-hidden ="true " tabindex ="-1 "> </ a > < span class ="fu "> is_binary</ span > (x) < span class ="co "> # Is variable binary?</ span > </ span >
811813< span id ="cb11-3 "> < a href ="#cb11-3 " aria-hidden ="true " tabindex ="-1 "> </ a > < span class ="fu "> is_integer</ span > (x) < span class ="co "> # Is variable integer?</ span > </ span >
@@ -820,7 +822,7 @@ <h2 class="anchored" data-anchor-id="checking-properties">Checking Properties</h
820822</ section >
821823< section id ="solver-options " class ="level1 ">
822824< h1 > Solver Options</ h1 >
823- < div id ="a41bd286 " class ="cell " data-execution_count ="13 ">
825+ < div id ="12560da3 " class ="cell " data-execution_count ="13 ">
824826< div class ="code-copy-outer-scaffold "> < div class ="sourceCode cell-code " id ="cb12 "> < pre class ="sourceCode julia code-with-copy "> < code class ="sourceCode julia "> < span id ="cb12-1 "> < a href ="#cb12-1 " aria-hidden ="true " tabindex ="-1 "> </ a > < span class ="co "> # Create model with solver</ span > </ span >
825827< span id ="cb12-2 "> < a href ="#cb12-2 " aria-hidden ="true " tabindex ="-1 "> </ a > model < span class ="op "> =</ span > < span class ="fu "> Model</ span > (HiGHS.Optimizer)</ span >
826828< span id ="cb12-3 "> < a href ="#cb12-3 " aria-hidden ="true " tabindex ="-1 "> </ a > </ span >
@@ -838,7 +840,7 @@ <h1>Solver Options</h1>
838840</ div >
839841< section id ="solution-status-checks " class ="level2 ">
840842< h2 class ="anchored " data-anchor-id ="solution-status-checks "> Solution Status Checks</ h2 >
841- < div id ="878834f1 " class ="cell " data-execution_count ="14 ">
843+ < div id ="4d5745e9 " class ="cell " data-execution_count ="14 ">
842844< div class ="code-copy-outer-scaffold "> < div class ="sourceCode cell-code " id ="cb13 "> < pre class ="sourceCode julia code-with-copy "> < code class ="sourceCode julia "> < span id ="cb13-1 "> < a href ="#cb13-1 " aria-hidden ="true " tabindex ="-1 "> </ a > < span class ="co "> # Check solution status</ span > </ span >
843845< span id ="cb13-2 "> < a href ="#cb13-2 " aria-hidden ="true " tabindex ="-1 "> </ a > status < span class ="op "> =</ span > < span class ="fu "> termination_status</ span > (model) < span class ="co "> # Get solution status</ span > </ span >
844846< span id ="cb13-3 "> < a href ="#cb13-3 " aria-hidden ="true " tabindex ="-1 "> </ a > is_optimal < span class ="op "> =</ span > status < span class ="op "> ==</ span > MOI.OPTIMAL < span class ="co "> # Check if optimal</ span > </ span >
0 commit comments