Post on 14-Jan-2016
description
transcript
5.3 Mixed Integer Nonlinear Programming Models
A Typical MINLP Model
min
. .
,
where, is the vector of continuous variables;
is the vector of integer (usually binary) variables;
is a matrix;
and are sets
Tz f
s t
X Y
X Y
x c y
h x 0
g x My 0
x y
x
y
M
.
Remarks
The y’s are typically chosen to control the continuous variables x by either forcing one (or more) variable to be zero or by allowing them to assume positive values.
The choice of y should be done in such a way that y appears linearly, because then the problem is much easier to solve.
The set X is specified by bounds and other inequalities involving x only, whereas Y is defined by conditions that the components of y be binary or integer, plus other inequalities or equations involving y only.
Branch-and-Bound Method
• The same BB method used to solve MILP can be used to solve MINLP.
• The only difference is that for MINLP problems the relaxed subproblems at the nodes of the BB tree are continuous variable NLPs and must be solved by NLP methods.
• BB methods are guaranteed to solve linear or nonlinear problems if allowed to continue until the gap between upper and lower bounds reaches zero, provided that a global optimum is found for each relaxed subproblem at each node of the BB tree.
Sufficient Conditions of Convexity of Each Relaxed Subproblem
1. The objective function f(x) is convex.2. Each component of h(x) is linear.3. Each component of g(x) is convex over th
e set X.4. The set X is convex.5. The set Y is determined by linear constrai
nts and the integer restrictions on y.
Example: Optimal Selection of Processes
This problem involves the manufacture of a chemical C in process 1 that uses raw material B. B can either be purchased or produced via processes 2 or 3, both of which use chemical A as a raw material.
We want to determine which processes to use and their production levels in order to maximize profit.
Constraints of Example Problem
1 0.9 1, 2 ln 1 2 , 3 1.2 ln 1 3
1 2 3
2, 3, 1, 2, 3, , 1 0
1, 2, 3 0,1
C B B A B A
B B B BP
A A B B B BP C
Y Y Y
1. Conversion
2. Mass balance for B
3. Nonnegativity conditions for continuous variables
4. Integer constraints
5. Maximum d
1 1
2 4 2, 3 5 3, 1 2 1
C
B Y B Y C Y
emand for C
6. Limits on plant capacity
Objective Function of Example Problem
• Income from product sales: 13C1• Expense for the purchase of B: 7BP• Expense for the purchase of A: 1.8(A2+A3)• Annualized investment for the 3 processes:
(3.5Y1+2C1)+(Y2+B2)+(1.5Y3+1.2B3)• The objective function is profit (PR) to be
maximized: PR=11C1-3.5Y1-Y2-1.5Y3-B2-1.2B3-7BP-1.8A2-1.8A3
Solving MINLP Using Outer Approximation (OA)
Each major iteration of OA involves solving 2 subproblems:
1. a continuous variable nonlinear program (NLP), and
2. A mixed-integer linear program (MILP).
NLP Subproblem
The NLP subproblem at major iteration , NLP( ),
is formed by fixing the integer variables at some set
of values, say Y, and optimizing over the continuous
variables:
Problem NLP( ):
min
. .
k
k
k
T k
k
f
s t
y
y
y
c y x
h x =
Note that the optimal objective value is the UPPER BOUND
on the MINLP optimal value.
k
X
0
g x + My 0
x
MILP Subproblem
At iteration , it is fromed by linearizing all nonlinear functions
about the optimal solutions of each of the subproblem NLP ,
1,2, , , and keeping all of these linearized constraints.
Let be the
i
i
k
i k
y
x
solution of NLP . The MILP subproblem at iteration is
min
. .
, 1, 2, ,
, 1, 2, ,
, 1, 2, ,
,
i
T
i T i
i T i
i T i i
k
z
s t
z f f i k
i k
i k
X Y
y
c x
x x - x
h x h x - x 0
g x g x - x My 0
x y
The Role of New Variable in the MILP Sub-problem
min
. .
is equivalent to minimizing .
T
T
z
s t
z f
f
c y
x
c y x
OA Algorithm
• Duran and Grossman (1986) showed that if the convexity assumptions hold, then the optimal value of MILP subproblem is an LOWER BOUND on the optimal MINLP objective value.
• Because a new set of linear constraints is added at each iteration, this lower bound increases (or remains the same) at each iteration.
• Under the convexity assumptions, the upper and lower bounds converge to the true optimal MINLP value in a finite number of iterations.