SlideShare uma empresa Scribd logo
1 de 61
Optimization methods
Beatriz Penalver Bernabe
07/28/2015
General optimization problem
x = vector of variables
f = objective function
g = constraints (either equalities or inequalities)
X = set of bounds/integrality constraint
𝑚𝑖𝑛𝑖𝑚𝑖𝑧𝑒 𝑜𝑟 𝑚𝑎𝑥𝑖𝑚𝑖𝑧𝑒 𝑓(𝑥)
𝑠. 𝑡. 𝑔 𝑥 ≤ 0
x ∈ 𝑋
Optimization problems
LINEAR NON-LINEAR
CONTINUOSDISCRETE
LP
IP
NLP
MILP GO
Convex Non-convex
MINLP
Optimization problems
LINEAR NON-LINEAR
CONTINUOSDISCRETE
LP
IP
NLP
MILP GO
Convex Non-convex
MINLP
Linear Programming (LP)
𝑚𝑖𝑛𝑖𝑚𝑖𝑧𝑒 𝐶 𝑇 𝑋
𝑠. 𝑡. 𝐴𝑋 − 𝐵 ≤ 0
𝑥𝑖 ≥ 0
Examples:
- Flux balance analysis (FBA) of
metabolic networks
- Flow through networks
Methods:
- SIMPLEX
Solvers:
- CPLEX (freely available from IBM for
academia in R, MATLAB, Python, GAMS)
Flux Balance Analysis
A + B  2C v1
C + B  D v2
Biochemical reactions
r1 r2 rn
A -1 0 … 0
B -1 -1 … 0
C 2 -1 … 0
D 0 1 … -1
……………..
M 0 0 … 1
*
v1
v2
…
…
…
vn
0
0
…
…
…
0
=
Mathematical representation
Z= c1 v1 + c2 v2 + c3 v3 … s.t. additional constrains (e.g., available
metabolites in the media)
Cellular objective
e.g., pyruvate production
e.g., biomass production
e.g., estradiol production
Genome-wide
metabolism
Steady-state assumption
SIMPLEX ALGORITHM
See this link for a simple step procedure of Dantzig’s algorithm
http://www.ams.jhu.edu/~castello/625.414/Handouts/SimplexProcedure.pdf
Optimization problems
LINEAR NON-LINEAR
CONTINUOSDISCRETE
LP
IP
NLP
MILP GO
Convex Non-convex
MINLP
Integer Programming (IP)
𝑚𝑖𝑛𝑖𝑚𝑖𝑧𝑒 𝐶 𝑇 𝑌
𝑠. 𝑡. 𝐴𝑌 − 𝐵 ≤ 0
𝑦𝑖 𝑎𝑟𝑒 𝑖𝑛𝑡𝑒𝑔𝑒𝑟𝑠
Examples:
- Capital budgeting (e.g., identification of the
best investments sets subject to their
availability, b)
- Scheduling (e.g., class, faculty and students to
minimize the no-first choice)
Methods:
- Integer cuts (not very much used for IP by
itself)
- Branch and bound (BB)
Solvers:
- CPLEX (freely available from IBM for academia
in R, MATLAB, Python, GAMS)
Branch and Bound (BB)
𝑚𝑎𝑥𝑖𝑚𝑖𝑧𝑒 5𝑥1 + 8𝑥2
𝑠. 𝑡. 𝑥1 +𝑥2 ≤ 6
5𝑥1 + 9𝑥2 ≤ 45
𝑥1, 𝑥2 𝑎𝑟𝑒 𝑖𝑛𝑡𝑒𝑔𝑒𝑟𝑠
1. Relaxation of IP = LP, upper limit IP
2. Branch over one of the variables and
solve the relax LP
3. Determine whether to branch or bound
From http://web.mit.edu/15.053/www/AMP-Chapter-09.pdf
Branch and Bound (BB)
𝑚𝑎𝑥𝑖𝑚𝑖𝑧𝑒 5𝑥1 + 8𝑥2
𝑠. 𝑡. 𝑥1 +𝑥2 ≤ 6
5𝑥1 + 9𝑥2 ≤ 45
𝑥1, 𝑥2 𝑎𝑟𝑒 𝑖𝑛𝑡𝑒𝑔𝑒𝑟𝑠
1. Relaxation of IP = LP, upper limit IP
2. Branch over one of the variables and
solve the relax LP
3. Determine whether to branch or
bound
- Bound if infeasible or less than
previous optimization results
From http://web.mit.edu/15.053/www/AMP-Chapter-09.pdf
Branch and Bound (BB)
𝑚𝑎𝑥𝑖𝑚𝑖𝑧𝑒 5𝑥1 + 8𝑥2
𝑠. 𝑡. 𝑥1 +𝑥2 ≤ 6
5𝑥1 + 9𝑥2 ≤ 45
𝑥1, 𝑥2 𝑎𝑟𝑒 𝑖𝑛𝑡𝑒𝑔𝑒𝑟𝑠
1. Relaxation of IP = LP, upper limit IP
2. Branch over one of the variables and
solve the relax LP
3. Determine whether to branch or
bound
- Bound if infeasible or less than
previous optimization results
From http://web.mit.edu/15.053/www/AMP-Chapter-09.pdf
Branch and Bound (BB)
𝑚𝑎𝑥𝑖𝑚𝑖𝑧𝑒 5𝑥1 + 8𝑥2
𝑠. 𝑡. 𝑥1 +𝑥2 ≤ 6
5𝑥1 + 9𝑥2 ≤ 45
𝑥1, 𝑥2 𝑎𝑟𝑒 𝑖𝑛𝑡𝑒𝑔𝑒𝑟𝑠
1. Relaxation of IP = LP,
upper limit IP
2. Branch over one of the
variables and solve the
relax LP
3. Determine whether to
branch or bound
From http://web.mit.edu/15.053/www/AMP-Chapter-09.pdf
BB algorithm
From http://web.mit.edu/15.053/www/AMP-Chapter-09.pdf
Using cuts
𝐺𝑖𝑣𝑒𝑛 𝑡ℎ𝑖𝑠 𝑖𝑛𝑒𝑞𝑢𝑎𝑙𝑖𝑡𝑦 2𝑥1 + 3𝑥2 ≤ 4 𝑎𝑛𝑑 𝑥1, 𝑥2 𝑎𝑟𝑒 𝑖𝑛𝑡𝑒𝑔𝑒𝑟𝑠,
𝑎 𝑐𝑢𝑡𝑡𝑖𝑛𝑔 𝑝𝑙𝑎𝑛𝑒 𝑐𝑎𝑛 𝑏𝑒 𝑥1 + 𝑥2 ≤ 1
Gomory cut generation is in the supplementary slides
Optimization problems
LINEAR NON-LINEAR
CONTINUOSDISCRETE
LP
IP
NLP
MILP GO
Convex Non-convex
MINLP
Mixed-Integer Linear Programming
(MILP)
𝑚𝑖𝑛𝑖𝑚𝑖𝑧𝑒 𝐷 𝑇 𝑋 + 𝐸 𝑇 𝑌
𝑠. 𝑡. 𝐴𝑋 + 𝐵𝑌 + 𝐶 ≤ 0
𝑦 𝑖
𝑎𝑟𝑒 𝑖𝑛𝑡𝑒𝑔𝑒𝑟𝑠
Examples:
- Facility location ( # of warehouses, transport cost)
- Scheduling batch processes
- Salesman
Methods:
- Branch and bound (BB)
- Branch and cut
Solvers:
- CPLEX (freely available from IBM for academia in R, MATLAB, Python, GAMS)
𝑥𝑖 ≥ 0
Optimization problems
LINEAR NON-LINEAR
CONTINUOSDISCRETE
LP
IP
NLP
MILP GO
Convex Non-convex
MINLP
Non-Linear Programming (NLP)
𝑚𝑖𝑛𝑖𝑚𝑖𝑧𝑒 𝑓(𝑥)
𝑠. 𝑡. 𝑔 𝑥 ≤ 0
Examples:
- Minimization of reboiler duty in a distillation
column
- Minimum reactor volume for complex kinetic
processes
Methods:
- The strongly depend on the initial guess and
there are iterative
- KKT conditions to add constraints (see next)
- Variable elimination
Solvers:
- CONOPT, KNITRO, MINOS in GAMS
𝑥𝑖 ≥ 0
ℎ 𝑥 = 0
Unconstrained NLP
Newton’s method is
designed for these
problems (see
Sebastian’s slides)
Constrained NLP
Constrained NLP
- Karus-Kuhn-Tucker (KKT) Conditions
- KKT points x* can be a
minimum, maximum or
saddle point.
- KKT are used when
the NLP problem has
constraints
Optimization problems
LINEAR NON-LINEAR
CONTINUOSDISCRETE
LP
IP
NLP
MILP GO
ConvexNon-convex
MINLP
MINLP’s
Convex functions and sets
Function f(x) is a convex function if for every pair of points in its domain X, the line
segment joining these two points is above the graph of the function, i.e., if for any
x1, x2 ∈ X and any λ ∈ 0,1 we have
𝑓 (𝜆𝑥1 1 − 𝜆 𝑥2 ≤ 𝜆𝑓 𝑥1 + 1 − 𝜆 𝑓(𝑥2)
Convex Non convex
Convex sets
Set C is a convex set if the line segment between any two points in C lies in C, i.e.,
if for any x1, x2 ∈ C and any 𝜃 ∈ 0,1 we have
𝜃𝑥1 + (1 − 𝜃)𝑥2 ∈ 𝐶
.
x1 .
x2
.
x1
.
x2
Convex Non convex
Mixed Integer Convex Non-Linear
Programming (MINLP)
𝑚𝑖𝑛𝑖𝑚𝑖𝑧𝑒 𝑓(𝑥, 𝑦)
𝑠. 𝑡. 𝑔 𝑥, 𝑦 ≤ 0
Examples:
- Feeding tray in a distillation column
- Modularity maximization
Methods:
- Branch and bound
- Decomposition methods
Solvers:
𝑥𝑖 ≥ 0
𝑦𝑗 𝑎𝑟𝑒 𝑖𝑛𝑡𝑒𝑔𝑒𝑟𝑠ℎ 𝑥, 𝑦 = 0
- SBB, Bonmin , DICOPT, AOA (AIMMS), α-ECP, MINOPT
Convex set
Branch and Bound (BB)
▪ Ravindran and Gupta (1985)
▪ Similar to the MILP branch-and-bound –
tree enumeration
▪ Suitable for problems with reasonable
number of integer variables and the NLP
relaxation is tight
Decomposition
• Outer-Approximation (OA) Duran &
Grossmann (1986)
• Generalized Benders Decomposition (GBD),
Geoffrion (1972)
• Extended Cutting Plane (ECP), Westerlund
and Pettersson (1995)
Solution algorithms for Convex MINLP
Branch and Bound for Convex
MINLP
• Similar to the branch-and-bound for solving MILP
• Difference is that in each node we solve a relaxed NLP problem (relaxing the
integer variables in MINLP); nonlinear program (NLP) relaxation – Lower bound
• Less stringent than other methods
• Successive solution of NLP subproblems
• Advantage: Tight formulation may require one NLP
• Disadvantage: Potentially many NLP subproblems
• Convergence global optimum: Unique solution of NLP (sufficient condition)
𝑚𝑖𝑛𝑖𝑚𝑖𝑧𝑒 𝑓 𝑥, 𝑦
𝑠. 𝑡. 𝑔 𝑥, 𝑦 ≤ 0
ℎ 𝑥, 𝑦 = 0
𝑥, 𝑦 ≤ 0
Relax NLP
y are continuous variables
General approach for
decomposition methods for MINLP
y are integers
Integer cut
The choice of all 0-1 combinations for 𝑦𝑗, 𝑗 ∈ 𝐽 is feasible, except the ones
for which 𝑦𝑗 = 0, 𝑗 ∈ 𝑁, 𝑦𝑗 = 1, 𝑗 ∈ 𝐵, where N and B are specified
partitions of J
NLP Upper Limit
NLP-U: nonlinear program at fixed yk Upper bound
Solution of NLP-U is a valid upper bound of MINLP solution
Master MILP problem
Develop a equivalent linear representation of the MINLP and apply
relaxation
Assume functions are convex and differentiable
Outer approximation
𝑓 𝑥 ≥ 𝑓 𝑥 𝑘
+ 𝛻𝑓 𝑥 𝑘 𝑇
(x − 𝑥 𝑘
)
𝑔 𝑥 ≥ 𝑔 𝑥 𝑘
+ 𝛻𝑔 𝑥 𝑘 𝑇
(x − 𝑥 𝑘
)
As f(x) and g(x) are convex, their corresponding outer approximations
for a feasible solution 𝑥 𝑘 ∈ 𝑋 can be modeled by
f(x)
Underestimate objective
function z
g(x)
Overestimated of
the feasible region
Outer approximation
Based on the solution of the NLP-U (xk, yk), we add the outer approximation cuts for
f(x) and g(x)
Outer approximation
Generalized Benders
decomposition
Consider the Outer-Approximation (xk, yk)
Obtain a linear combination of (1) using the Karush-Kuhn-Tucker multipler μk
Similarly, cuts for infeasible subproblems can be derived
Generalized Benders
decomposition
Extending cutting plane
1. Guess (x0, y0)
2. Find xk, yk from the Master MILP from the Outer
Approximation
3. If 𝑔 𝑥 𝑘 + 𝐵𝑦 𝑘 ≤ 𝜀 => STOP
4. Otherwise k=k+1, linearize function at xk, yk and go
to step 2
No NLP
Optimization problems
LINEAR NON-LINEAR
CONTINUOSDISCRETE
LP
IP
NLP
MILP GO
ConvexNon-convex
MINLP
Convex vs Non-convex MINLP
Convex MINLP
▪ Branch and Bound
▪ Outer Approximation
▪ Generalized Benders Decomposition
▪ Extended Cutting Plane
▪ Major (local) MINLP solvers
Nonconvex MINLP - Global Optimization
▪ Convexification and Reformulation - nonconvex problems are much
more difficult to solve than convex ones
▪ Convex Envelopes
▪ Spatial Branch and Bound
▪ (Global) optimization solvers
Mixed Integer Non-Linear
Programming (MINLP)
𝑚𝑖𝑛𝑖𝑚𝑖𝑧𝑒 𝑓(𝑥, 𝑦)
𝑠. 𝑡. 𝑔(𝑥, 𝑦) ≤ 0
Examples:
- Modularity maximization
- Minimization of plant cost (fixed and variable) – chemical plant design
Methods:
- Convexification and Reformulation
- Convex Envelopes
- Spatial Branch and Bound
Solvers:
𝑥𝑖 ≥ 0
𝑦𝑗 𝑎𝑟𝑒 𝑖𝑛𝑡𝑒𝑔𝑒𝑟𝑠
- α BB, BARON (Branch and Reduce), OA for nonconvex MINLP, Branch
and Contract
Non-convexities
Effects of nonconvexities
▪ NLP supbroblems may have local
optima
▪ MILP master may cut-off global
optimum
Handling of nonconvexitieis
▪ Rigorous approach (global optimization)
- Replace nonconvex terms
- Using underestimators/convex envelopes
- Solve convex MINLP within spatial branch &
bound
Objective
Multiple minima
0 1
y
x
Global optimum
Cut off!
Convexification and Reformulation
Some nonconvex optimization problems can be reformulated as convex problem
(and solve with the convex optimization algorithms) – Convexification
A common case: Posynominals (ci are non-negative)
𝑓 𝑥 =
𝑖
𝑐𝑖
𝑗
𝑥𝑗
𝛼 𝑖𝑗
𝑥𝑗=𝑒 𝑢 𝑗
Replace the posynomials by an exponential function
Convex Envelopes
Most deterministic global optimization algorithms are based on spatial branch and
bound method
Branch-and-Bound for
MILP
Spatial Branch-and-Bound
for Nonconvex MINLP
Relaxation
Replacing binary/integer
variables as continuous
variables with bounds,
solve LPs
Replacing nonconvex terms
with their convex envelopes,
solve convex (MI)NLP
Branching
Branch binary/integer
variables only
Branch on both integer
variables and continuous
variables (due to the nonconvex
terms)
Complexity
NP-hard, but the worst case
can be bounded by 2n
NP-hard, much more difficult
Spatial Branch and Bound
What are convex envelopes?
Convex
envelop
McCormick envelopes for bilinear
terms
Convex envelopes of bilinear terms
McCormick under and over estimators
Over-estimators
Under-estimators
Other envelopes
If g(x) is twice derivable then the convex relation for g(x):
𝑐𝑜𝑛 𝑔 𝑥 = 𝑔 𝑥 +
𝑖
(𝑥𝑖
𝐿
− 𝑥𝑖)(𝑥𝑖 − 𝑥𝑖
𝑈
)
Step 1: Generate subproblems by branching on continuous
variables (subregions)
Step 2: Compute lower bound from convex MINLP (relaxation)
Step 3: Compute upper bound from local optimal solution to
nonconvex MINLP
Step 4: Continue until tolerance of bounds within tolerance
Spatial Branch and Bound Method
x
y Convex Relaxation
x
y
x
y
x
y
50
Graphic Example: Spatial-Branch-
and-Bound
Objective
Multiple minima
Convex envelop
LB – from MILP
LB
LB
UB = Upper bound
From NLP
LB < UB
LB > UB LB < UB
Global optimum search Branch and bound tree
Examples in Amaral’s lab of
optimization problems
• Modularity maximization
• Sequences of time series
• Non-evolutionary genetic code
Modularity maximization - MIQP
Modularity maximization - MIQP
Objective function
Constraints
Each node, n, belongs to only one module
Each link, l, should belong to the same
module, m, that the two nodes its belong,
n, e
Number of links in each module m
Total degree in each module m
There are more constraints in the paper…
Sequences in time series - MINLP
min
𝑖,𝑗
𝑁,𝑀
(𝑦𝑖,𝑗 − 𝑦𝑗 )2 + 𝑀
𝑠. 𝑡. 𝑦𝑗 = 𝐴𝑗 t 𝑖 -𝐵𝑗
𝑡𝑗−1 ≤ 𝑡𝑗 𝑗 𝑖𝑛 1, 2, … . , 𝑀
𝑀 ∈ [1,2,3, … , 𝑁]
𝐴𝑗 =
𝑐𝑜𝑣(𝑦𝑗, 𝑡𝑗)
𝑉𝑎𝑟 (𝑡𝑗)
𝐵𝑗 = 𝑦𝑗- 𝐴𝑗 𝑡𝑗
𝑡0 < 𝑡𝑗 ≤ 𝑡 𝑁
Non-evolutionary genetic code - IP
min
𝑖,𝑗
𝑁
𝐶𝑖,𝑗 𝜃𝑖,𝑗
𝑠. 𝑡
𝑙
𝑠𝑖,𝑙 = 1 𝑜𝑛𝑒 𝑎𝑚𝑖𝑛𝑜 𝑓𝑜𝑟 𝑒𝑎𝑐ℎ 𝑠𝑒𝑞
𝑖
𝑠𝑖,𝑙 ≤ 42 𝑚𝑢𝑙𝑡𝑖𝑝𝑙𝑒 𝑠𝑒𝑞𝑠 𝑓𝑜𝑟 𝑒𝑎𝑐ℎ 𝑎𝑚𝑖𝑛𝑜
𝑠𝑖,𝑙 ∈ [0,1]
Resources
Take the class ChE345: Process Optimization
GAMS, software for optimization
IBM academic initiative to obtain CPLEX
Some online resources:
1. Fenqi Yu webpage
https://optimization.mccormick.northwestern.edu/index.php/Main_Page
2. MIT optimization
http://web.mit.edu/15.053/www/AMP-Chapter-02.pdf
3. Argonne MINLP optimization
https://wiki.mcs.anl.gov/leyffer/images/b/b2/MINLP-Survey.pdf
Supplementary Slides
Gomory’s cuts
Solution to the LP problem
Re-arranged into a integer and non-integer part
Gomory’s cuts
Gomory’s cuts
Normally Gomory’s cuts are not used by themselves as they are not very efficient
due to the large number of cuts to be added

Mais conteúdo relacionado

Mais procurados

Expectation Maximization and Gaussian Mixture Models
Expectation Maximization and Gaussian Mixture ModelsExpectation Maximization and Gaussian Mixture Models
Expectation Maximization and Gaussian Mixture Models
petitegeek
 
daa-unit-3-greedy method
daa-unit-3-greedy methoddaa-unit-3-greedy method
daa-unit-3-greedy method
hodcsencet
 

Mais procurados (20)

Chap 8. Optimization for training deep models
Chap 8. Optimization for training deep modelsChap 8. Optimization for training deep models
Chap 8. Optimization for training deep models
 
And or graph problem reduction using predicate logic
And or graph problem reduction using predicate logicAnd or graph problem reduction using predicate logic
And or graph problem reduction using predicate logic
 
Graph Neural Network in practice
Graph Neural Network in practiceGraph Neural Network in practice
Graph Neural Network in practice
 
Markov Chain Monte Carlo Methods
Markov Chain Monte Carlo MethodsMarkov Chain Monte Carlo Methods
Markov Chain Monte Carlo Methods
 
Fuzzy Genetic Algorithm
Fuzzy Genetic AlgorithmFuzzy Genetic Algorithm
Fuzzy Genetic Algorithm
 
Expectation Maximization and Gaussian Mixture Models
Expectation Maximization and Gaussian Mixture ModelsExpectation Maximization and Gaussian Mixture Models
Expectation Maximization and Gaussian Mixture Models
 
Optmization techniques
Optmization techniquesOptmization techniques
Optmization techniques
 
Variational Autoencoder
Variational AutoencoderVariational Autoencoder
Variational Autoencoder
 
daa-unit-3-greedy method
daa-unit-3-greedy methoddaa-unit-3-greedy method
daa-unit-3-greedy method
 
Eucledian algorithm for gcd of integers and polynomials
Eucledian algorithm for gcd of integers and polynomialsEucledian algorithm for gcd of integers and polynomials
Eucledian algorithm for gcd of integers and polynomials
 
Graph Neural Network - Introduction
Graph Neural Network - IntroductionGraph Neural Network - Introduction
Graph Neural Network - Introduction
 
Graph theory in network system
Graph theory in network systemGraph theory in network system
Graph theory in network system
 
Online algorithms and their applications
Online algorithms and their applicationsOnline algorithms and their applications
Online algorithms and their applications
 
Genetic algorithm raktim
Genetic algorithm raktimGenetic algorithm raktim
Genetic algorithm raktim
 
Introduction to Graph and Graph Coloring
Introduction to Graph and Graph Coloring Introduction to Graph and Graph Coloring
Introduction to Graph and Graph Coloring
 
Planar graph( Algorithm and Application )
Planar graph( Algorithm and Application )Planar graph( Algorithm and Application )
Planar graph( Algorithm and Application )
 
Harmony search algorithm
Harmony search algorithmHarmony search algorithm
Harmony search algorithm
 
Overview on Optimization algorithms in Deep Learning
Overview on Optimization algorithms in Deep LearningOverview on Optimization algorithms in Deep Learning
Overview on Optimization algorithms in Deep Learning
 
Multi Objective Optimization and Pareto Multi Objective Optimization with cas...
Multi Objective Optimization and Pareto Multi Objective Optimization with cas...Multi Objective Optimization and Pareto Multi Objective Optimization with cas...
Multi Objective Optimization and Pareto Multi Objective Optimization with cas...
 
Optimization problems and algorithms
Optimization problems and  algorithmsOptimization problems and  algorithms
Optimization problems and algorithms
 

Semelhante a Global optimization

Numerical analysis dual, primal, revised simplex
Numerical analysis  dual, primal, revised simplexNumerical analysis  dual, primal, revised simplex
Numerical analysis dual, primal, revised simplex
SHAMJITH KM
 
Optimum Engineering Design - Day 4 - Clasical methods of optimization
Optimum Engineering Design - Day 4 - Clasical methods of optimizationOptimum Engineering Design - Day 4 - Clasical methods of optimization
Optimum Engineering Design - Day 4 - Clasical methods of optimization
SantiagoGarridoBulln
 

Semelhante a Global optimization (20)

Simplex method
Simplex method Simplex method
Simplex method
 
Numerical analysis dual, primal, revised simplex
Numerical analysis  dual, primal, revised simplexNumerical analysis  dual, primal, revised simplex
Numerical analysis dual, primal, revised simplex
 
SIMPLEX METHOD.pptx
SIMPLEX METHOD.pptxSIMPLEX METHOD.pptx
SIMPLEX METHOD.pptx
 
LP.ppt
LP.pptLP.ppt
LP.ppt
 
LPP, Duality and Game Theory
LPP, Duality and Game TheoryLPP, Duality and Game Theory
LPP, Duality and Game Theory
 
Introduction to Max-SAT and Max-SAT Evaluation
Introduction to Max-SAT and Max-SAT EvaluationIntroduction to Max-SAT and Max-SAT Evaluation
Introduction to Max-SAT and Max-SAT Evaluation
 
2007 : Solving Linear Problems with MOSEK (Seattle 2007)
2007 : Solving Linear Problems with MOSEK (Seattle 2007)2007 : Solving Linear Problems with MOSEK (Seattle 2007)
2007 : Solving Linear Problems with MOSEK (Seattle 2007)
 
Linear Programming (graphical method)
Linear Programming (graphical method)Linear Programming (graphical method)
Linear Programming (graphical method)
 
Balaji-opt-lecture6-act.ppt
Balaji-opt-lecture6-act.pptBalaji-opt-lecture6-act.ppt
Balaji-opt-lecture6-act.ppt
 
Linear Programming and its Usage in Approximation Algorithms for NP Hard Opti...
Linear Programming and its Usage in Approximation Algorithms for NP Hard Opti...Linear Programming and its Usage in Approximation Algorithms for NP Hard Opti...
Linear Programming and its Usage in Approximation Algorithms for NP Hard Opti...
 
Optimum Engineering Design - Day 4 - Clasical methods of optimization
Optimum Engineering Design - Day 4 - Clasical methods of optimizationOptimum Engineering Design - Day 4 - Clasical methods of optimization
Optimum Engineering Design - Day 4 - Clasical methods of optimization
 
Balaji-opt-lecture5-linear program sp13.ppt
Balaji-opt-lecture5-linear program sp13.pptBalaji-opt-lecture5-linear program sp13.ppt
Balaji-opt-lecture5-linear program sp13.ppt
 
NON LINEAR PROGRAMMING
NON LINEAR PROGRAMMING NON LINEAR PROGRAMMING
NON LINEAR PROGRAMMING
 
Conic Clustering
Conic ClusteringConic Clustering
Conic Clustering
 
Dynamic pgmming
Dynamic pgmmingDynamic pgmming
Dynamic pgmming
 
Math
MathMath
Math
 
lecture01_lecture01_lecture0001_ceva.pdf
lecture01_lecture01_lecture0001_ceva.pdflecture01_lecture01_lecture0001_ceva.pdf
lecture01_lecture01_lecture0001_ceva.pdf
 
Concept of Duality
Concept of DualityConcept of Duality
Concept of Duality
 
Branch and Bound technique to solve Integer Linear Programming
Branch and Bound technique to solve Integer Linear ProgrammingBranch and Bound technique to solve Integer Linear Programming
Branch and Bound technique to solve Integer Linear Programming
 
2008 : A Case Study: How to Speed Up the Simplex Algorithms on Problems Minim...
2008 : A Case Study: How to Speed Up the Simplex Algorithms on Problems Minim...2008 : A Case Study: How to Speed Up the Simplex Algorithms on Problems Minim...
2008 : A Case Study: How to Speed Up the Simplex Algorithms on Problems Minim...
 

Último

Call Girls in Ramesh Nagar Delhi 💯 Call Us 🔝9953056974 🔝 Escort Service
Call Girls in Ramesh Nagar Delhi 💯 Call Us 🔝9953056974 🔝 Escort ServiceCall Girls in Ramesh Nagar Delhi 💯 Call Us 🔝9953056974 🔝 Escort Service
Call Girls in Ramesh Nagar Delhi 💯 Call Us 🔝9953056974 🔝 Escort Service
9953056974 Low Rate Call Girls In Saket, Delhi NCR
 
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
ssuser89054b
 
VIP Call Girls Palanpur 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Palanpur 7001035870 Whatsapp Number, 24/07 BookingVIP Call Girls Palanpur 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Palanpur 7001035870 Whatsapp Number, 24/07 Booking
dharasingh5698
 
AKTU Computer Networks notes --- Unit 3.pdf
AKTU Computer Networks notes ---  Unit 3.pdfAKTU Computer Networks notes ---  Unit 3.pdf
AKTU Computer Networks notes --- Unit 3.pdf
ankushspencer015
 
notes on Evolution Of Analytic Scalability.ppt
notes on Evolution Of Analytic Scalability.pptnotes on Evolution Of Analytic Scalability.ppt
notes on Evolution Of Analytic Scalability.ppt
MsecMca
 
VIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 BookingVIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 Booking
dharasingh5698
 
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
Christo Ananth
 

Último (20)

Roadmap to Membership of RICS - Pathways and Routes
Roadmap to Membership of RICS - Pathways and RoutesRoadmap to Membership of RICS - Pathways and Routes
Roadmap to Membership of RICS - Pathways and Routes
 
Call Girls in Ramesh Nagar Delhi 💯 Call Us 🔝9953056974 🔝 Escort Service
Call Girls in Ramesh Nagar Delhi 💯 Call Us 🔝9953056974 🔝 Escort ServiceCall Girls in Ramesh Nagar Delhi 💯 Call Us 🔝9953056974 🔝 Escort Service
Call Girls in Ramesh Nagar Delhi 💯 Call Us 🔝9953056974 🔝 Escort Service
 
Water Industry Process Automation & Control Monthly - April 2024
Water Industry Process Automation & Control Monthly - April 2024Water Industry Process Automation & Control Monthly - April 2024
Water Industry Process Automation & Control Monthly - April 2024
 
Double rodded leveling 1 pdf activity 01
Double rodded leveling 1 pdf activity 01Double rodded leveling 1 pdf activity 01
Double rodded leveling 1 pdf activity 01
 
Thermal Engineering-R & A / C - unit - V
Thermal Engineering-R & A / C - unit - VThermal Engineering-R & A / C - unit - V
Thermal Engineering-R & A / C - unit - V
 
University management System project report..pdf
University management System project report..pdfUniversity management System project report..pdf
University management System project report..pdf
 
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
 
VIP Call Girls Palanpur 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Palanpur 7001035870 Whatsapp Number, 24/07 BookingVIP Call Girls Palanpur 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Palanpur 7001035870 Whatsapp Number, 24/07 Booking
 
(INDIRA) Call Girl Bhosari Call Now 8617697112 Bhosari Escorts 24x7
(INDIRA) Call Girl Bhosari Call Now 8617697112 Bhosari Escorts 24x7(INDIRA) Call Girl Bhosari Call Now 8617697112 Bhosari Escorts 24x7
(INDIRA) Call Girl Bhosari Call Now 8617697112 Bhosari Escorts 24x7
 
Booking open Available Pune Call Girls Koregaon Park 6297143586 Call Hot Ind...
Booking open Available Pune Call Girls Koregaon Park  6297143586 Call Hot Ind...Booking open Available Pune Call Girls Koregaon Park  6297143586 Call Hot Ind...
Booking open Available Pune Call Girls Koregaon Park 6297143586 Call Hot Ind...
 
AKTU Computer Networks notes --- Unit 3.pdf
AKTU Computer Networks notes ---  Unit 3.pdfAKTU Computer Networks notes ---  Unit 3.pdf
AKTU Computer Networks notes --- Unit 3.pdf
 
notes on Evolution Of Analytic Scalability.ppt
notes on Evolution Of Analytic Scalability.pptnotes on Evolution Of Analytic Scalability.ppt
notes on Evolution Of Analytic Scalability.ppt
 
(INDIRA) Call Girl Aurangabad Call Now 8617697112 Aurangabad Escorts 24x7
(INDIRA) Call Girl Aurangabad Call Now 8617697112 Aurangabad Escorts 24x7(INDIRA) Call Girl Aurangabad Call Now 8617697112 Aurangabad Escorts 24x7
(INDIRA) Call Girl Aurangabad Call Now 8617697112 Aurangabad Escorts 24x7
 
VIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 BookingVIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 Booking
 
UNIT - IV - Air Compressors and its Performance
UNIT - IV - Air Compressors and its PerformanceUNIT - IV - Air Compressors and its Performance
UNIT - IV - Air Compressors and its Performance
 
Booking open Available Pune Call Girls Pargaon 6297143586 Call Hot Indian Gi...
Booking open Available Pune Call Girls Pargaon  6297143586 Call Hot Indian Gi...Booking open Available Pune Call Girls Pargaon  6297143586 Call Hot Indian Gi...
Booking open Available Pune Call Girls Pargaon 6297143586 Call Hot Indian Gi...
 
Unleashing the Power of the SORA AI lastest leap
Unleashing the Power of the SORA AI lastest leapUnleashing the Power of the SORA AI lastest leap
Unleashing the Power of the SORA AI lastest leap
 
Bhosari ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready For ...
Bhosari ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready For ...Bhosari ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready For ...
Bhosari ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready For ...
 
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
 
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
 

Global optimization

  • 2. General optimization problem x = vector of variables f = objective function g = constraints (either equalities or inequalities) X = set of bounds/integrality constraint 𝑚𝑖𝑛𝑖𝑚𝑖𝑧𝑒 𝑜𝑟 𝑚𝑎𝑥𝑖𝑚𝑖𝑧𝑒 𝑓(𝑥) 𝑠. 𝑡. 𝑔 𝑥 ≤ 0 x ∈ 𝑋
  • 5. Linear Programming (LP) 𝑚𝑖𝑛𝑖𝑚𝑖𝑧𝑒 𝐶 𝑇 𝑋 𝑠. 𝑡. 𝐴𝑋 − 𝐵 ≤ 0 𝑥𝑖 ≥ 0 Examples: - Flux balance analysis (FBA) of metabolic networks - Flow through networks Methods: - SIMPLEX Solvers: - CPLEX (freely available from IBM for academia in R, MATLAB, Python, GAMS)
  • 6. Flux Balance Analysis A + B  2C v1 C + B  D v2 Biochemical reactions r1 r2 rn A -1 0 … 0 B -1 -1 … 0 C 2 -1 … 0 D 0 1 … -1 …………….. M 0 0 … 1 * v1 v2 … … … vn 0 0 … … … 0 = Mathematical representation Z= c1 v1 + c2 v2 + c3 v3 … s.t. additional constrains (e.g., available metabolites in the media) Cellular objective e.g., pyruvate production e.g., biomass production e.g., estradiol production Genome-wide metabolism Steady-state assumption
  • 7. SIMPLEX ALGORITHM See this link for a simple step procedure of Dantzig’s algorithm http://www.ams.jhu.edu/~castello/625.414/Handouts/SimplexProcedure.pdf
  • 9. Integer Programming (IP) 𝑚𝑖𝑛𝑖𝑚𝑖𝑧𝑒 𝐶 𝑇 𝑌 𝑠. 𝑡. 𝐴𝑌 − 𝐵 ≤ 0 𝑦𝑖 𝑎𝑟𝑒 𝑖𝑛𝑡𝑒𝑔𝑒𝑟𝑠 Examples: - Capital budgeting (e.g., identification of the best investments sets subject to their availability, b) - Scheduling (e.g., class, faculty and students to minimize the no-first choice) Methods: - Integer cuts (not very much used for IP by itself) - Branch and bound (BB) Solvers: - CPLEX (freely available from IBM for academia in R, MATLAB, Python, GAMS)
  • 10. Branch and Bound (BB) 𝑚𝑎𝑥𝑖𝑚𝑖𝑧𝑒 5𝑥1 + 8𝑥2 𝑠. 𝑡. 𝑥1 +𝑥2 ≤ 6 5𝑥1 + 9𝑥2 ≤ 45 𝑥1, 𝑥2 𝑎𝑟𝑒 𝑖𝑛𝑡𝑒𝑔𝑒𝑟𝑠 1. Relaxation of IP = LP, upper limit IP 2. Branch over one of the variables and solve the relax LP 3. Determine whether to branch or bound From http://web.mit.edu/15.053/www/AMP-Chapter-09.pdf
  • 11. Branch and Bound (BB) 𝑚𝑎𝑥𝑖𝑚𝑖𝑧𝑒 5𝑥1 + 8𝑥2 𝑠. 𝑡. 𝑥1 +𝑥2 ≤ 6 5𝑥1 + 9𝑥2 ≤ 45 𝑥1, 𝑥2 𝑎𝑟𝑒 𝑖𝑛𝑡𝑒𝑔𝑒𝑟𝑠 1. Relaxation of IP = LP, upper limit IP 2. Branch over one of the variables and solve the relax LP 3. Determine whether to branch or bound - Bound if infeasible or less than previous optimization results From http://web.mit.edu/15.053/www/AMP-Chapter-09.pdf
  • 12. Branch and Bound (BB) 𝑚𝑎𝑥𝑖𝑚𝑖𝑧𝑒 5𝑥1 + 8𝑥2 𝑠. 𝑡. 𝑥1 +𝑥2 ≤ 6 5𝑥1 + 9𝑥2 ≤ 45 𝑥1, 𝑥2 𝑎𝑟𝑒 𝑖𝑛𝑡𝑒𝑔𝑒𝑟𝑠 1. Relaxation of IP = LP, upper limit IP 2. Branch over one of the variables and solve the relax LP 3. Determine whether to branch or bound - Bound if infeasible or less than previous optimization results From http://web.mit.edu/15.053/www/AMP-Chapter-09.pdf
  • 13. Branch and Bound (BB) 𝑚𝑎𝑥𝑖𝑚𝑖𝑧𝑒 5𝑥1 + 8𝑥2 𝑠. 𝑡. 𝑥1 +𝑥2 ≤ 6 5𝑥1 + 9𝑥2 ≤ 45 𝑥1, 𝑥2 𝑎𝑟𝑒 𝑖𝑛𝑡𝑒𝑔𝑒𝑟𝑠 1. Relaxation of IP = LP, upper limit IP 2. Branch over one of the variables and solve the relax LP 3. Determine whether to branch or bound From http://web.mit.edu/15.053/www/AMP-Chapter-09.pdf
  • 15. Using cuts 𝐺𝑖𝑣𝑒𝑛 𝑡ℎ𝑖𝑠 𝑖𝑛𝑒𝑞𝑢𝑎𝑙𝑖𝑡𝑦 2𝑥1 + 3𝑥2 ≤ 4 𝑎𝑛𝑑 𝑥1, 𝑥2 𝑎𝑟𝑒 𝑖𝑛𝑡𝑒𝑔𝑒𝑟𝑠, 𝑎 𝑐𝑢𝑡𝑡𝑖𝑛𝑔 𝑝𝑙𝑎𝑛𝑒 𝑐𝑎𝑛 𝑏𝑒 𝑥1 + 𝑥2 ≤ 1 Gomory cut generation is in the supplementary slides
  • 17. Mixed-Integer Linear Programming (MILP) 𝑚𝑖𝑛𝑖𝑚𝑖𝑧𝑒 𝐷 𝑇 𝑋 + 𝐸 𝑇 𝑌 𝑠. 𝑡. 𝐴𝑋 + 𝐵𝑌 + 𝐶 ≤ 0 𝑦 𝑖 𝑎𝑟𝑒 𝑖𝑛𝑡𝑒𝑔𝑒𝑟𝑠 Examples: - Facility location ( # of warehouses, transport cost) - Scheduling batch processes - Salesman Methods: - Branch and bound (BB) - Branch and cut Solvers: - CPLEX (freely available from IBM for academia in R, MATLAB, Python, GAMS) 𝑥𝑖 ≥ 0
  • 19. Non-Linear Programming (NLP) 𝑚𝑖𝑛𝑖𝑚𝑖𝑧𝑒 𝑓(𝑥) 𝑠. 𝑡. 𝑔 𝑥 ≤ 0 Examples: - Minimization of reboiler duty in a distillation column - Minimum reactor volume for complex kinetic processes Methods: - The strongly depend on the initial guess and there are iterative - KKT conditions to add constraints (see next) - Variable elimination Solvers: - CONOPT, KNITRO, MINOS in GAMS 𝑥𝑖 ≥ 0 ℎ 𝑥 = 0
  • 20. Unconstrained NLP Newton’s method is designed for these problems (see Sebastian’s slides)
  • 22. Constrained NLP - Karus-Kuhn-Tucker (KKT) Conditions - KKT points x* can be a minimum, maximum or saddle point. - KKT are used when the NLP problem has constraints
  • 25. Convex functions and sets Function f(x) is a convex function if for every pair of points in its domain X, the line segment joining these two points is above the graph of the function, i.e., if for any x1, x2 ∈ X and any λ ∈ 0,1 we have 𝑓 (𝜆𝑥1 1 − 𝜆 𝑥2 ≤ 𝜆𝑓 𝑥1 + 1 − 𝜆 𝑓(𝑥2) Convex Non convex
  • 26. Convex sets Set C is a convex set if the line segment between any two points in C lies in C, i.e., if for any x1, x2 ∈ C and any 𝜃 ∈ 0,1 we have 𝜃𝑥1 + (1 − 𝜃)𝑥2 ∈ 𝐶 . x1 . x2 . x1 . x2 Convex Non convex
  • 27. Mixed Integer Convex Non-Linear Programming (MINLP) 𝑚𝑖𝑛𝑖𝑚𝑖𝑧𝑒 𝑓(𝑥, 𝑦) 𝑠. 𝑡. 𝑔 𝑥, 𝑦 ≤ 0 Examples: - Feeding tray in a distillation column - Modularity maximization Methods: - Branch and bound - Decomposition methods Solvers: 𝑥𝑖 ≥ 0 𝑦𝑗 𝑎𝑟𝑒 𝑖𝑛𝑡𝑒𝑔𝑒𝑟𝑠ℎ 𝑥, 𝑦 = 0 - SBB, Bonmin , DICOPT, AOA (AIMMS), α-ECP, MINOPT Convex set
  • 28. Branch and Bound (BB) ▪ Ravindran and Gupta (1985) ▪ Similar to the MILP branch-and-bound – tree enumeration ▪ Suitable for problems with reasonable number of integer variables and the NLP relaxation is tight Decomposition • Outer-Approximation (OA) Duran & Grossmann (1986) • Generalized Benders Decomposition (GBD), Geoffrion (1972) • Extended Cutting Plane (ECP), Westerlund and Pettersson (1995) Solution algorithms for Convex MINLP
  • 29. Branch and Bound for Convex MINLP • Similar to the branch-and-bound for solving MILP • Difference is that in each node we solve a relaxed NLP problem (relaxing the integer variables in MINLP); nonlinear program (NLP) relaxation – Lower bound • Less stringent than other methods • Successive solution of NLP subproblems • Advantage: Tight formulation may require one NLP • Disadvantage: Potentially many NLP subproblems • Convergence global optimum: Unique solution of NLP (sufficient condition) 𝑚𝑖𝑛𝑖𝑚𝑖𝑧𝑒 𝑓 𝑥, 𝑦 𝑠. 𝑡. 𝑔 𝑥, 𝑦 ≤ 0 ℎ 𝑥, 𝑦 = 0 𝑥, 𝑦 ≤ 0 Relax NLP y are continuous variables
  • 30. General approach for decomposition methods for MINLP y are integers
  • 31. Integer cut The choice of all 0-1 combinations for 𝑦𝑗, 𝑗 ∈ 𝐽 is feasible, except the ones for which 𝑦𝑗 = 0, 𝑗 ∈ 𝑁, 𝑦𝑗 = 1, 𝑗 ∈ 𝐵, where N and B are specified partitions of J
  • 32. NLP Upper Limit NLP-U: nonlinear program at fixed yk Upper bound Solution of NLP-U is a valid upper bound of MINLP solution
  • 33. Master MILP problem Develop a equivalent linear representation of the MINLP and apply relaxation Assume functions are convex and differentiable
  • 34. Outer approximation 𝑓 𝑥 ≥ 𝑓 𝑥 𝑘 + 𝛻𝑓 𝑥 𝑘 𝑇 (x − 𝑥 𝑘 ) 𝑔 𝑥 ≥ 𝑔 𝑥 𝑘 + 𝛻𝑔 𝑥 𝑘 𝑇 (x − 𝑥 𝑘 ) As f(x) and g(x) are convex, their corresponding outer approximations for a feasible solution 𝑥 𝑘 ∈ 𝑋 can be modeled by f(x) Underestimate objective function z g(x) Overestimated of the feasible region
  • 35. Outer approximation Based on the solution of the NLP-U (xk, yk), we add the outer approximation cuts for f(x) and g(x)
  • 37. Generalized Benders decomposition Consider the Outer-Approximation (xk, yk) Obtain a linear combination of (1) using the Karush-Kuhn-Tucker multipler μk Similarly, cuts for infeasible subproblems can be derived
  • 39. Extending cutting plane 1. Guess (x0, y0) 2. Find xk, yk from the Master MILP from the Outer Approximation 3. If 𝑔 𝑥 𝑘 + 𝐵𝑦 𝑘 ≤ 𝜀 => STOP 4. Otherwise k=k+1, linearize function at xk, yk and go to step 2 No NLP
  • 41. Convex vs Non-convex MINLP Convex MINLP ▪ Branch and Bound ▪ Outer Approximation ▪ Generalized Benders Decomposition ▪ Extended Cutting Plane ▪ Major (local) MINLP solvers Nonconvex MINLP - Global Optimization ▪ Convexification and Reformulation - nonconvex problems are much more difficult to solve than convex ones ▪ Convex Envelopes ▪ Spatial Branch and Bound ▪ (Global) optimization solvers
  • 42. Mixed Integer Non-Linear Programming (MINLP) 𝑚𝑖𝑛𝑖𝑚𝑖𝑧𝑒 𝑓(𝑥, 𝑦) 𝑠. 𝑡. 𝑔(𝑥, 𝑦) ≤ 0 Examples: - Modularity maximization - Minimization of plant cost (fixed and variable) – chemical plant design Methods: - Convexification and Reformulation - Convex Envelopes - Spatial Branch and Bound Solvers: 𝑥𝑖 ≥ 0 𝑦𝑗 𝑎𝑟𝑒 𝑖𝑛𝑡𝑒𝑔𝑒𝑟𝑠 - α BB, BARON (Branch and Reduce), OA for nonconvex MINLP, Branch and Contract
  • 43. Non-convexities Effects of nonconvexities ▪ NLP supbroblems may have local optima ▪ MILP master may cut-off global optimum Handling of nonconvexitieis ▪ Rigorous approach (global optimization) - Replace nonconvex terms - Using underestimators/convex envelopes - Solve convex MINLP within spatial branch & bound Objective Multiple minima 0 1 y x Global optimum Cut off!
  • 44. Convexification and Reformulation Some nonconvex optimization problems can be reformulated as convex problem (and solve with the convex optimization algorithms) – Convexification A common case: Posynominals (ci are non-negative) 𝑓 𝑥 = 𝑖 𝑐𝑖 𝑗 𝑥𝑗 𝛼 𝑖𝑗 𝑥𝑗=𝑒 𝑢 𝑗 Replace the posynomials by an exponential function
  • 45. Convex Envelopes Most deterministic global optimization algorithms are based on spatial branch and bound method Branch-and-Bound for MILP Spatial Branch-and-Bound for Nonconvex MINLP Relaxation Replacing binary/integer variables as continuous variables with bounds, solve LPs Replacing nonconvex terms with their convex envelopes, solve convex (MI)NLP Branching Branch binary/integer variables only Branch on both integer variables and continuous variables (due to the nonconvex terms) Complexity NP-hard, but the worst case can be bounded by 2n NP-hard, much more difficult
  • 47. What are convex envelopes? Convex envelop
  • 48. McCormick envelopes for bilinear terms Convex envelopes of bilinear terms McCormick under and over estimators Over-estimators Under-estimators
  • 49. Other envelopes If g(x) is twice derivable then the convex relation for g(x): 𝑐𝑜𝑛 𝑔 𝑥 = 𝑔 𝑥 + 𝑖 (𝑥𝑖 𝐿 − 𝑥𝑖)(𝑥𝑖 − 𝑥𝑖 𝑈 )
  • 50. Step 1: Generate subproblems by branching on continuous variables (subregions) Step 2: Compute lower bound from convex MINLP (relaxation) Step 3: Compute upper bound from local optimal solution to nonconvex MINLP Step 4: Continue until tolerance of bounds within tolerance Spatial Branch and Bound Method x y Convex Relaxation x y x y x y 50
  • 51. Graphic Example: Spatial-Branch- and-Bound Objective Multiple minima Convex envelop LB – from MILP LB LB UB = Upper bound From NLP LB < UB LB > UB LB < UB Global optimum search Branch and bound tree
  • 52. Examples in Amaral’s lab of optimization problems • Modularity maximization • Sequences of time series • Non-evolutionary genetic code
  • 54. Modularity maximization - MIQP Objective function Constraints Each node, n, belongs to only one module Each link, l, should belong to the same module, m, that the two nodes its belong, n, e Number of links in each module m Total degree in each module m There are more constraints in the paper…
  • 55. Sequences in time series - MINLP min 𝑖,𝑗 𝑁,𝑀 (𝑦𝑖,𝑗 − 𝑦𝑗 )2 + 𝑀 𝑠. 𝑡. 𝑦𝑗 = 𝐴𝑗 t 𝑖 -𝐵𝑗 𝑡𝑗−1 ≤ 𝑡𝑗 𝑗 𝑖𝑛 1, 2, … . , 𝑀 𝑀 ∈ [1,2,3, … , 𝑁] 𝐴𝑗 = 𝑐𝑜𝑣(𝑦𝑗, 𝑡𝑗) 𝑉𝑎𝑟 (𝑡𝑗) 𝐵𝑗 = 𝑦𝑗- 𝐴𝑗 𝑡𝑗 𝑡0 < 𝑡𝑗 ≤ 𝑡 𝑁
  • 56. Non-evolutionary genetic code - IP min 𝑖,𝑗 𝑁 𝐶𝑖,𝑗 𝜃𝑖,𝑗 𝑠. 𝑡 𝑙 𝑠𝑖,𝑙 = 1 𝑜𝑛𝑒 𝑎𝑚𝑖𝑛𝑜 𝑓𝑜𝑟 𝑒𝑎𝑐ℎ 𝑠𝑒𝑞 𝑖 𝑠𝑖,𝑙 ≤ 42 𝑚𝑢𝑙𝑡𝑖𝑝𝑙𝑒 𝑠𝑒𝑞𝑠 𝑓𝑜𝑟 𝑒𝑎𝑐ℎ 𝑎𝑚𝑖𝑛𝑜 𝑠𝑖,𝑙 ∈ [0,1]
  • 57. Resources Take the class ChE345: Process Optimization GAMS, software for optimization IBM academic initiative to obtain CPLEX Some online resources: 1. Fenqi Yu webpage https://optimization.mccormick.northwestern.edu/index.php/Main_Page 2. MIT optimization http://web.mit.edu/15.053/www/AMP-Chapter-02.pdf 3. Argonne MINLP optimization https://wiki.mcs.anl.gov/leyffer/images/b/b2/MINLP-Survey.pdf
  • 59. Gomory’s cuts Solution to the LP problem Re-arranged into a integer and non-integer part
  • 61. Gomory’s cuts Normally Gomory’s cuts are not used by themselves as they are not very efficient due to the large number of cuts to be added