5.3 Mixed Integer Nonlinear Programming Models. A Typical MINLP Model.

15
5.3 Mixed Integer Nonlinear Programming Models

description

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.

Transcript of 5.3 Mixed Integer Nonlinear Programming Models. A Typical MINLP Model.

Page 1: 5.3 Mixed Integer Nonlinear Programming Models. A Typical MINLP Model.

5.3 Mixed Integer Nonlinear Programming Models

Page 2: 5.3 Mixed Integer Nonlinear Programming Models. A Typical MINLP Model.

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 0x y

xy M

.

Page 3: 5.3 Mixed Integer Nonlinear Programming Models. A Typical MINLP Model.

RemarksThe y’s are typically chosen to control the continuo

us 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.

Page 4: 5.3 Mixed Integer Nonlinear Programming Models. A Typical MINLP Model.

Branch-and-Bound Method• The same BB method used to solve MILP can b

e used to solve MINLP.• The only difference is that for MINLP problems t

he 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.

Page 5: 5.3 Mixed Integer Nonlinear Programming Models. A Typical MINLP Model.

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.

Page 6: 5.3 Mixed Integer Nonlinear Programming Models. A Typical MINLP Model.

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.

Page 7: 5.3 Mixed Integer Nonlinear Programming Models. A Typical MINLP Model.
Page 8: 5.3 Mixed Integer Nonlinear Programming Models. A Typical MINLP Model.
Page 9: 5.3 Mixed Integer Nonlinear Programming Models. A Typical MINLP Model.

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 d1 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

Page 10: 5.3 Mixed Integer Nonlinear Programming Models. A Typical MINLP Model.

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

Page 11: 5.3 Mixed Integer Nonlinear Programming Models. A Typical MINLP Model.

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).

Page 12: 5.3 Mixed Integer Nonlinear Programming Models. A Typical MINLP Model.

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 continuousvariables:

Problem NLP( ):

min. .

k

k

k

T k

k

fs t

y

y

yc y x

h x =

Note that the optimal objective value is the UPPER BOUNDon the MINLP optimal value.

k

X

0

g x + My 0x

Page 13: 5.3 Mixed Integer Nonlinear Programming Models. A Typical MINLP Model.

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

zs 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

Page 14: 5.3 Mixed Integer Nonlinear Programming Models. A Typical MINLP Model.

The Role of New Variable in the MILP Sub-problem

min. .

is equivalent to minimizing .

T

T

zs tz f

f

c y

x

c y x

Page 15: 5.3 Mixed Integer Nonlinear Programming Models. A Typical MINLP Model.

OA Algorithm• Duran and Grossman (1986) showed that if the c

onvexity 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.