From Cornell University Computational Optimization Open Textbook - Optimization Wiki
|
|
Line 71: |
Line 71: |
| ''Optimal Solution for the MINLP: ''<math display=inline>x_{1}=2, x_{2}=1,y_{1}=1, y_{2}=0</math><br> | | ''Optimal Solution for the MINLP: ''<math display=inline>x_{1}=2, x_{2}=1,y_{1}=1, y_{2}=0</math><br> |
|
| |
|
| === Example 2 === | | === Code === |
| | The following code is used to solve the above example in the General Algebraic Modeling System (GAMS): |
| | Variable z; |
| | |
| | Positive Variables x1, x2; |
| | |
| | Binary Variables y1, y2; |
| | |
| | Equations obj, c1, c2, c3, c4, c5, c6, c7; |
| | |
| | obj.. z =e= y1 + y2 + sqr(x1) + sqr(x2); |
| | |
| | c1.. sqr(x1 - 2) - x2 =l= 0; |
| | |
| | c2.. x1 - 2*y1 =g= 0; |
| | |
| | c3.. x1 - x2 - 3*sqr(1 - y1) =g= 0; |
| | |
| | c4.. x1 + y1 - 1 =g= 0; |
| | |
| | c5.. x2 - y2 =g= 0; |
| | |
| | c6.. x1 + x2 =g= 3*y1; |
| | |
| | c7.. y1 + y2 =g= 1; |
| | |
| | x1.lo = 0; x1.up = 4; |
| | |
| | x2.lo = 0; x2.up = 4; |
| | |
| | y1.l = 1; y2.l = 1; |
| | |
| | model Example /all/; |
| | |
| | |
| | option minlp = BONMIN; |
| | |
| | option optcr = 0; |
| | |
| | solve Example MINIMIZING z using MINLP; |
| | |
| | display z.l, x1.l, x2.l, y1.l, y2.l; |
|
| |
|
| ==Conclusion== | | ==Conclusion== |
|
| |
|
| ==References== | | ==References== |
Revision as of 07:44, 26 November 2021
Author: Yousef Aloufi (CHEME 6800 Fall 2021)
Introduction
Theory
Example
Numerical Example
Minimize
Subject to
Solution
Step 1a: Start from
and solve the NLP below:
Minimize
Subject to
Solution: , Upper Bound = 7
Step 1b: Solve the MILP master problem with OA for :
Minimize
Subject to
MILP Solution: , Lower Bound = 6
Lower Bound < Upper Bound, Integer cut:
Step 2a: Start from
and solve the NLP below:
Minimize
Subject to
Solution: , Upper Bound = 6
Upper Bound = 6 = Lower Bound, Optimum!
Optimal Solution for the MINLP:
Code
The following code is used to solve the above example in the General Algebraic Modeling System (GAMS):
Variable z;
Positive Variables x1, x2;
Binary Variables y1, y2;
Equations obj, c1, c2, c3, c4, c5, c6, c7;
obj.. z =e= y1 + y2 + sqr(x1) + sqr(x2);
c1.. sqr(x1 - 2) - x2 =l= 0;
c2.. x1 - 2*y1 =g= 0;
c3.. x1 - x2 - 3*sqr(1 - y1) =g= 0;
c4.. x1 + y1 - 1 =g= 0;
c5.. x2 - y2 =g= 0;
c6.. x1 + x2 =g= 3*y1;
c7.. y1 + y2 =g= 1;
x1.lo = 0; x1.up = 4;
x2.lo = 0; x2.up = 4;
y1.l = 1; y2.l = 1;
model Example /all/;
option minlp = BONMIN;
option optcr = 0;
solve Example MINIMIZING z using MINLP;
display z.l, x1.l, x2.l, y1.l, y2.l;
Conclusion
References