You are on page 1of 27

2 Nonlinear Programming Models

Topics Convex sets and convex programming First-order optimality conditions Examples Problem classes

General NLP
Minimize f(x) s.t. gi(x) (, , =) bi, i = 1,,m x = (x1,,xn)T is the n-dimensional vector of decision variables f (x) is the objective function gi(x) are the constraint functions bi are fixed known constants

Convex Sets
Definition: A set S n is convex if every point on the line segment connecting any two points x1, x2 S is also in S. Mathematically, this is equivalent to x0 = x1 + (1)x2 S for all such 0 1. x1

x1

x2

x1

x2 x2

(Nonconvex) Feasible Region

S = {(x1, x2) : (0.5x1 0.6)x2 1 2(x1)2 + 3(x2)2 27; x1, x2 0}

x2

x1

Convex Sets and Optimization


Let S = { x n : gi(x) bi, i = 1,,m } Fact: If gi(x) is a convex function for each i = 1,,m then S is a convex set. Convex Programming Theorem: Let x n and let f (x) be a convex function defined over a convex constraint set S. If a finite solution exists to the problem Minimize { f (x) : x S } then all local optima are global optima. If f (x) is strictly convex, the optimum is unique.

Convex Programming
Min f (x1,,xn) s.t. gi(x1,,xn) bi i = 1,,m x1 0,,xn 0 is a convex program if f is convex and each gi is convex. Max f (x1,,xn) s.t. gi(x1,,xn) bi i = 1,,m x1 0,,xn 0 is a convex program if f is concave and each gi is convex.

Linearly Constrained Convex Function with Unique Global Maximum


Maximize f (x) = (x1 2)2 + (x2 2)2 subject to 3x1 2x2 6 x1 + x2 3 x1 + x2 7 2x1 3x2 4
x2

5 4 3 2 1

x1

(Nonconvex) Optimization Problem

First-Order Optimality Conditions


Minimize { f (x) : gi(x) bi, i = 1,,m } Lagrangian:L(x,) = f (x) + i (gi (x) bi )
m i=1

Optimality conditions Stationarity: L(x,) = f (x) + igi (x) = 0 Complementarity: igi(x) = 0, i = 1,,m Feasibility: gi(x) bi, i = 1,,m Nonnegativity: i 0, i = 1,,m
i=1 m

Importance of Convex Programs


Commercial optimization software cannot guarantee that a solution is globally optimal to a nonconvex program. NLP algorithms try to find a point where the gradient of the Lagrangian function is zero a stationary point and complementary slackness holds. Given we want L(x,) = f(x) + (g(x) b) L(x,) = f(x) + g(x) = 0 (g(x) b) = 0 g(x) b 0, 0
For a convex program, all local solutions are global optima.

Example: Cylinder Design


We want to build a cylinder (with a top and a bottom) of maximum volume such that its surface area is no more than s units. Max V(r,h) = r2h s.t. 2r2 + 2rh = s r 0, h 0
There are a number of ways to approach this problem. One way is to solve the surface area constraint for h and substitute the result into the objective function.
r

Solution by Substitution
s 2r 2 h= 2r s 2r 2 rs Volume = V = r2 [ r 3 ] = 2 2r

s 1/2 s 1/2 dV s = 0 r=( ) h = 2r r = 2( ) dr 6 6 V = r 2h s 3/2 = 2 ( 6) s 1/2 r = ( ) 6 s 1/2 ) h = 2( 6

Is this a global optimal solution?

Test for Convexity


rs r 3 V(r ) = 2 s dV(r) 3r 2 = 2 dr d2V(r ) dr 2 = 6r

d2V 0 for all r 0 dr 2 Thus V(r ) is concave on r 0 so the solution is a global maximum.

Advertising (with Diminishing Returns)


A company wants to advertise in two regions. The marketing department says that if $x1 is spent in region 1, sales volume will be 6(x1)1/2. If $x2 is spent in region 2, sales volume will be 4(x2)1/2. The advertising budget is $100.

Model: Max f (x) = 6(x1)1/2 + 4(x2)1/2 s.t.


x1 + x2 100, x1 0, x2 0

Solution: x1* = 69.2, x2* = 30.8, f (x*) = 72.1 Is this a global optimum?

Excel Add-in Solution


A B C D 1 Nonlinear Model 2 72.111 Change 3 2 4 TRUE Solve 5 TRUE 100 Variables 6 Change Relation Name: 7 Values: 8 Lower Bounds: 9 10 11 Linear Obj. Coef.: 12 Nonlinear Obj. Terms: 13 Nonlinear Obj. Coef.: 14 Constraints 15 Num. Name Value Rel. RHS 16 1 Con1 100 <= 100 17 2 Con2 0 <= 10000 18 19 E F G H I J K L Name: Adv100 Objective Terms Solver: Excel Solver Type: NLP1 Linear: 0 Type: Nonlinear Goal: Max NonLinear 1: 72.111 Sens.: Yes 0 Objective: 72.111NonLinear 2: 1 2 X1 X2 69.231 30.769 0 0 M N O

Comp. Time 00:00 Status Optimal

0 8.3205 6

0 5.547 4

Linear Constraint Coefficients 1 1 0 0

Portfolio Selection with Risky Assets (Markowitz)


Suppose that we may invest in (up to) n stocks. Investors worry about (1) expected gain (2) risk. Let rj = random variable associated with return on stock j

j = expected return on stock j jj = variance of return for stock j


We are also concerned with the covariance terms:

ij = cov(ri, rj)
If ij > 0 then returns on i and j are positively correlated. If ij < 0 returns are negatively correlated.

Decision Variables: xj = # of shares of stock j purchased


Expected return of the portfolio: R(x) = jxj
j =1 n

Variance (measure of risk): V(x) =


11 12 1 1 = 21 22 1 1

i =1 j =1

ijxixj

11 12 1 1 = If , then buying stock 2 is just like 21 22 1 1

buying additional shares of stock 1.

Nonlinear optimization models


Let pj = price of stock j b = our total budget

= risk-aversion factor (when = 0 risk is not a factor)


Consider 3 different models: 1) Max f (x) = R(x) V(x) s.t.
j =1 n

pj xj b, xj 0, j = 1,,n

where 0 is determined by the decision maker

2) Max f (x) = R(x) s.t. V(x) , pjxj b, xj 0, j = 1,,n


j =1 n

where 0 is determined by the investor. Smaller values of represent greater risk aversion. 3) Min f (x) = V(x) s.t. R(x) , pj xj b, xj 0, j = 1,,n
j =1 n

where 0 is the desired rate of return (minimum expectation) is selected by the investor.

Hanging Chain with Rigid Links


10ft

1 ft

x
y

each link

What is equilibrium shape of chain? Decision variables: Let (xj, yj), j = 1,,n, be the incremental horizontal and vertical displacement of each link, where n 10. Constraints: xj2 + yj2 = 1, j = 1,,n, each link has length 1 x1 + x2 + y1 + y2 +

+ xn = 10, net horizontal displacement + yn = 0, net vertical displacement

Objective: Minimize chains potential energy Assuming that the center of the mass of each link is at the center of the link. This is equivalent to minimizing
1 y + (y + 1 y ) + (y + y + 1 y ) + 1 1 1 2 2 3 2 2 2

+ (y1 + y2 +

1 + yn-1 + 2 yn)

1 1 = (n 1 + 2 ]y1 + (n 2 + 2 )y2 1 + (n 3 + 2 )y3 +

3 1 + 2 yn-1 + 2 yn

Summary
Min (n j + )yj
j =1 n

s.t. xj2 + yj2 = 1, j = 1,,n x1 + x2 + y1 + y2 +


+ xn = 10 + yn = 0

Is a local optimum guaranteed to be a global optimum?

No!
Constraints xj2 + yj2 = 1 for all j yield a nonconvex feasible region so there may be several local optima. Consider a chain with 4 links:

These solutions are both local minima.

Direct Current Network


10 20

I2

I4
I3

100v

I1
I6

10
I7

I5

20

Problem: Determine the current flows I1, I2,,I7 so that the total content is minimized Content: G(I) =

v(i)di for I 0 and G(I) = I v(i)di for I < 0

Solution Approach
Electrical Engineering: Use Kirchoffs laws to find currents when power source is given. Operations Research: Optimize performance measure in network taking flow balance into account. Linear resistor: Voltage, v(I ) = IR Content function, G(I ) = I 2R/2 Battery: Voltage, v(I ) = E Content function, G(I ) = EI

Network Flow Model


Network diagram:
2
5 I2
2

10 I 4

-100 I1

5 I3

10 I5

0 I6

0 I7

Minimize Z = 100I1 + 5I2 + 5I3 + 10I4 + 10I5 subject to I1 I2 = 0, I2 I3 I4 = 0, I5 I6 = 0, I5 + I7 = 0, I3 + I6 I7 = 0, I1 I6 = 0 Solution: I1 = I2 = 50/9, I3 = 40/9, I4 = I5 = 10/9, I6 = 50/9, I7 = 10/9

NLP Problem Classes


Constrained vs. unconstrained Convex programming problem Quadratic programming problem
f (x) = a + cTx + xTQx, Q 0

Separable programming problem


f (x) = j=1,n fj(xj)

Geometric programming problem


g(x) = t=1,T ctPt(x), Pt(x) = (x1 t1) . . . (xn tn), xj >0
a a

Equality constrained problems

What You Should Know About Nonlinear Programming


How to identify a convex program. How to write out the first-order optimality conditions. The difference between a local and global solution. How to classify problems.

You might also like