Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Process Optimization
Lecture Set 8:
Mixed Integer Programming
Lecture Set 8:
Mixed Integer Programming
At the end of the topic, students should be able to:
Understand, discuss and solve the concepts of mixed
integer programming
Formulate and solve simple mixed integer programming
based engineering optimization problems
f(x,y)
g(x,y) 0
h(x,y) = 0
xi 0 for i = 1, 2, .., n and
yj = [0,1] for j = 1, 2, .., m
Examples:
of
possible inputs with known properties have
to be blended into products or outputs with
given properties and limits.
(2) Traveling
salesman
problem:
A
salesman or a delivery system moves from
one delivery point to the next in an optimal
way and returns to the original point.
Example 1:
Maximize
Subject to
where
and
with f = 34.5
30
20
10
0
0
22
-10
-20
Constraint2
Constraint1
where
and
11
12
14
TREE REPRESENTATION
Example: MILP with 3 binary variables
BRANCHING STRATEGIES
Depth-first
(1) Perform branching on most recently
created node
(2) When no nodes can be expanded,
backtrack to node whose successor have
not been examined
Breadth-first
(1) Select the node with the best value at
each level and expand all its successor
nodes
Node
Node
Node
Node
10+6+2 = 18;
10+2+2 = 14;
18
10+2+4 = 16;
17 > 14;
In
breadth
first
strategy,
compare
horizontally side nodes first and arrive at the
optimum.
19
20
21
Example 4:
Maximize
Subject to
where
and
Solution:
A decomposition is attempted using Branch and
Bound method.
22
NODE 2
Assume x2 = 0
0 x1 1;
x2 = 0 &
0 x3 1
LP optimum: [1,0,1]
f= 126.0
NODE 3
Assume x2 = 1
0 x1 1;
x2 = 1 &
0 x3 1
LP optimum:[0.978,1,1]
f= 128.11
NODE 4
NODE 5
Assume x1 = 0
Assume x1 = 1
x1 = 0;
x1 = 1;
x2 = 0 &
x2 = 1 &
0 x3 1
0 x3 1
LP optimum: [0,1,1]
LP optimum:[1,1, 0.595]
f= 44.0
f= 113.81
Global optimum was obtained at Node 2.
Example 5:
Reaction: A
B
Reactor I: conversion 0.8;
Cost = 5.5 (Feed)0.6 /hr
Reactor II: conversion 0.667; Cost = 4 (Feed)0.6 /hr
x0: feed flowrate (kmol/hr) of A at 5 /kmol
Desired product, B, at 10 kmol/hr
Select the cheapest combination of the above reactors
25
Solution:
Objective function:
Minimise Cost = 5.5 (x1)0.6 + 4 (x1)0.6 + 5 x0
Operation cost
Material cost
Constraints:
Mass balance at initial split:
x0 = x1 + x2
Mass balance at reactor I:
z1 = 0.8 x1
Mass balance at reactor II:
z2 = 0.667 x2
Mass balance at mixer:
Non-negativity constraints:
z1 + z2 = 10
x0 , x1, x2 , z1, z2 0
Discussion
Note that cost function exhibits two minima
at the extreme values 0 and 15 of x2
At x2 = 0 the global optimum (87.5/hr) occurs
at which it corresponds to selecting reactor I
only
At x2 = 15 we have a local optimum which
corresponds to selecting reactor II only
Clearly, this is an undesirable feature as it
means that when using standard NLP
algorithms our solution will be dependent on
the starting point
MINLP Formulation
Introduce binary variables
How to incorporate these binary
variables into the formulation?
Define new constraint:
With upper limits of x1 and x2
29
x1 (m1) y1 0
x2 (m2) y2 0
30
x1 (12.5) y1 0
x2 (15) y2 0
subject to
0.8 x1 + 0.667 x2 = 10
x1 (12.5) y1 0
x2 (15) y2 0
Non-negativity constraints:
Integer constraints:
32
x0 , x1, x2 , z1, z2 0
y1 and y1 = [0,1]
Thank you
34