Optimum Design 03/03/05

Optimum Design Notes14
Announcement:
1. The TA will post hw1 to hw4 grades this weekend. Since some people need to
know their hw grades to decide whether they need to submit hw5, the due date for
hw5 has been postponed to 6/21.
2. Project oral presentation will be on 6/14 and 6/21. Each group has totally 20
minutes and every group member has to present in English. Please also upload your
powerpoint file (or, if you prefer, a detailed report in word file) together with
computer coding by 6/26. Only the group leader needs to upload project report and
supporting files.
Linear Integer Programming
General problem statement: Minimize f(x) = cTx = c1x1 + c2x2… + cnxn
subject to [A]x = b , (m equations)
x ≥ 0 , (n equations)
and all the xi’s are integers.
a11 a12 ... a1n 
b1 
a

b 
2
21


where the m by n matrix [A] =
and the m by 1 vector b =   .


 


 
... a mn 
a m1
b m 
All the elements in [A], b, and c are constants.
Method of branch-and-bound:
This method is illustrated by the following example.
Maximize 5x1 + 8x2
Subject to
The table and figure below show the features of this problem.
If the integer value restriction is ignored first, the optimal continuous solution is at x1
= 2.25 and x2 = 3.75 with function value 41.25. It can be seen that the intuitive way of
finding an integer solution by rounding off the continuous solution does not lead to
the true optimal integer solution.
The method of branch-and-bound is to systematically subdivide the linear
programming feasible region and make assessments of the integer-programming
problem based upon these subdivisions.
Generalized penalty function method for Nonlinear Integer Programming
A general nonlinear programming problem with some variables being integers can be
stated as:
Find x to minimize f(x), subject to m inequality constraints and p equality constraints.
Here x = [x1; x2; …; xn] = [xc; xd], where xc contains continuous variables and xd
contains discrete variables.
The objective function f(x) can be transformed into
p
m
φ(x, rk, sk) = f(x) + rk  G j ( g j ( x)) + rk  Q j (h j ( x )) + sk Qk(xd)
j 1
j 1
q
where Gj(gj(x))={max(0, gj(x))} , Qj(hj(x))= (hj(x))q, and q>1 (usually q=2)
The function Qk(xd) is the penalty when variables belonging to xd are not integers.
An example to construct Qk(xd) is,
k
 x  yi
x  yi 
)(1  i
) , where yi≤xi≤zi and 1≤βk is a constant.
Qk(xd) =  4( i
zi  yi
zi  yi 
xi x d 
In this way Qk(xd)=0 when the variable xi is equal to the neighboring integers yi and zi,
and Qk(xd) >0 if xi is not an integer.
Multi-objective optimization
Problem statement:
 x1 
x 
2
Find x =  
 
 
 xn 
which minimizes f1(x), f2(x), f3(x), …, fk(x).
The problem may be subject to equality and inequality constraints.
Unity function method:
k
Define the single objective function as F(x) =  wi f i ( x ) , where the sum of weighting
i 1
k
factors is usually 1 (i.e.,
 w = 1).
i 1
i
Global criterion method:
 f i ( x i *) - f i ( x ) 

Define the single objective function as F(x) =  
f i ( x i *) 
i 1 
k
p
Here p is a constant (usually 2 is chosen); x i * is the minimizes function fi(x). This
means that a lot of work (minimizing each fi(x)) needs to be done prior to using this
method.
Goal attainment method:
In this method, a goal (a number bi) is chosen for each objective function fi(x). This
means that ideally after the overall multi-objective optimization procedure, each fi(x)
should be ≤ bi. The value bi is usually (but does not have to be) the function value
after minimizing each fi(x).
The multi-objective problem is defined as the following.
Find the set of variables [x ; γ] (which means x1, x2,…, xn,together with an additional
variable γ) to minimize the function
F(x; γ) = γ,
subject to the original constraints together with k more constraints
fi(x) –γwi ≤ bi i = 1, 2,…, k.
k
Here
 w = 1.
i 1
i
The Matlab function fgoalattain utilizes this method. Please consult function
description for more information.