Introduction to Optimization - Nc State...

29
Introduction to Optimization Anjela Govan North Carolina State University SAMSI NDHS Undergraduate workshop 2006

Transcript of Introduction to Optimization - Nc State...

Page 1: Introduction to Optimization - Nc State Universityprojects.ncsu.edu/.../OptimizationUW06.pdfIntroduction to Optimization Author: vjg Created Date: 5/23/2006 11:02:56 PM ...

Introduction to Optimization

Anjela GovanNorth Carolina State UniversitySAMSI NDHS Undergraduate workshop 2006

Page 2: Introduction to Optimization - Nc State Universityprojects.ncsu.edu/.../OptimizationUW06.pdfIntroduction to Optimization Author: vjg Created Date: 5/23/2006 11:02:56 PM ...

What is Optimization?

Optimization is the mathematical discipline which is concerned with finding the maxima and minima of functions, possibly subject to constraints.

Page 3: Introduction to Optimization - Nc State Universityprojects.ncsu.edu/.../OptimizationUW06.pdfIntroduction to Optimization Author: vjg Created Date: 5/23/2006 11:02:56 PM ...

Where would we use optimization?

ArchitectureNutritionElectrical circuitsEconomicsTransportationetc.

Page 4: Introduction to Optimization - Nc State Universityprojects.ncsu.edu/.../OptimizationUW06.pdfIntroduction to Optimization Author: vjg Created Date: 5/23/2006 11:02:56 PM ...

What do we optimize?

A real function of n variables

with or without constrains

),,,( 21 nxxxf K

Page 5: Introduction to Optimization - Nc State Universityprojects.ncsu.edu/.../OptimizationUW06.pdfIntroduction to Optimization Author: vjg Created Date: 5/23/2006 11:02:56 PM ...

Unconstrained optimization

22 2),(min yxyxf +=

Page 6: Introduction to Optimization - Nc State Universityprojects.ncsu.edu/.../OptimizationUW06.pdfIntroduction to Optimization Author: vjg Created Date: 5/23/2006 11:02:56 PM ...

Optimization with constraints

22),(min

1,522),(min

02),(min

22

22

22

or

or

=++=

≥<<−+=

>+=

yxyxyxf

yxyxyxf

xyxyxf

Page 7: Introduction to Optimization - Nc State Universityprojects.ncsu.edu/.../OptimizationUW06.pdfIntroduction to Optimization Author: vjg Created Date: 5/23/2006 11:02:56 PM ...

Lets Optimize

Suppose we want to find the minimum of the function

Page 8: Introduction to Optimization - Nc State Universityprojects.ncsu.edu/.../OptimizationUW06.pdfIntroduction to Optimization Author: vjg Created Date: 5/23/2006 11:02:56 PM ...

Review max-min for ú2

What is special about a local max or a local min of a function f (x)?at local max or local min f’(x)=0 f”(x) > 0 if local minf”(x) < 0 if local max

Page 9: Introduction to Optimization - Nc State Universityprojects.ncsu.edu/.../OptimizationUW06.pdfIntroduction to Optimization Author: vjg Created Date: 5/23/2006 11:02:56 PM ...

Review max-min for ú3

Page 10: Introduction to Optimization - Nc State Universityprojects.ncsu.edu/.../OptimizationUW06.pdfIntroduction to Optimization Author: vjg Created Date: 5/23/2006 11:02:56 PM ...

Review max-min for ú3

Second Derivative TestLocal min, local max, saddle pointGradient of f – vector (df/dx, df/dy, df/dz)direction of fastest increase of fGlobal min/max vs. local min/max

Page 11: Introduction to Optimization - Nc State Universityprojects.ncsu.edu/.../OptimizationUW06.pdfIntroduction to Optimization Author: vjg Created Date: 5/23/2006 11:02:56 PM ...

Gradient Descent Method Examples

Minimize function

11,11)(5.0),( 22

≤≤−+=

yxyxyxf α

Minimize function

4,4)cos()cos(),(

≤≤−=

yxyxyxf

Page 12: Introduction to Optimization - Nc State Universityprojects.ncsu.edu/.../OptimizationUW06.pdfIntroduction to Optimization Author: vjg Created Date: 5/23/2006 11:02:56 PM ...

Gradient Descent Method Examples

Use function gd(alpha,x0)Does gd.m converge to a local min? Is there a difference if α > 0 vs. α < 0?How many iterations does it take to converge to a local min? How do starting points x0 affect number of iterations?

Use function gd2(x0)Does gd2.m converge to a local min?How do starting points x0 affect number of iterations and the location of a local minimum?

Page 13: Introduction to Optimization - Nc State Universityprojects.ncsu.edu/.../OptimizationUW06.pdfIntroduction to Optimization Author: vjg Created Date: 5/23/2006 11:02:56 PM ...

How good are the optimization methods?

Starting pointConvergence to global min/max.Classes of nice optimization problems Example: f(x,y) = 0.5(αx2+y2), α > 0Every local min is global min.

Page 14: Introduction to Optimization - Nc State Universityprojects.ncsu.edu/.../OptimizationUW06.pdfIntroduction to Optimization Author: vjg Created Date: 5/23/2006 11:02:56 PM ...

Other optimization methods

Non smooth, non differentiable surfaces ⇒can not compute the gradient of f ⇒can not use Gradient MethodNelder-Mead MethodOthers

Page 15: Introduction to Optimization - Nc State Universityprojects.ncsu.edu/.../OptimizationUW06.pdfIntroduction to Optimization Author: vjg Created Date: 5/23/2006 11:02:56 PM ...

Convex Hull

A set C is convex if every point on the line segment connecting xand y is in C.

The convex hull for a set of points X is the minimal convex setcontaining X.

Page 16: Introduction to Optimization - Nc State Universityprojects.ncsu.edu/.../OptimizationUW06.pdfIntroduction to Optimization Author: vjg Created Date: 5/23/2006 11:02:56 PM ...

Simplex

A simplex or n-simplex is the convex hull of a set of (n +1) . A simplex is an n-dimensional analogue of a triangle. Example:

a 1-simplex is a line segmenta 2-simplex is a trianglea 3-simplex is a tetrahedrona 4-simplex is a pentatope

Page 17: Introduction to Optimization - Nc State Universityprojects.ncsu.edu/.../OptimizationUW06.pdfIntroduction to Optimization Author: vjg Created Date: 5/23/2006 11:02:56 PM ...

Nelder-Mead Method

n = number of variables, n+1 pointsform simplex using these points; convex hullmove in direction away from the worst of these points: reflect, expand, contract, shrink

Example: 2 variables ⇒ 3 points ⇒ simplex is triangle3 variables ⇒ 4 points ⇒ simplex is tetrahedron

Page 18: Introduction to Optimization - Nc State Universityprojects.ncsu.edu/.../OptimizationUW06.pdfIntroduction to Optimization Author: vjg Created Date: 5/23/2006 11:02:56 PM ...

Nelder-Mead Method – reflect, expand

Page 19: Introduction to Optimization - Nc State Universityprojects.ncsu.edu/.../OptimizationUW06.pdfIntroduction to Optimization Author: vjg Created Date: 5/23/2006 11:02:56 PM ...

Nelder-Mead Method-reflect, contract

Page 20: Introduction to Optimization - Nc State Universityprojects.ncsu.edu/.../OptimizationUW06.pdfIntroduction to Optimization Author: vjg Created Date: 5/23/2006 11:02:56 PM ...

A tour of Matlab: Snapshots from the minimizationAfter 0 steps

Page 21: Introduction to Optimization - Nc State Universityprojects.ncsu.edu/.../OptimizationUW06.pdfIntroduction to Optimization Author: vjg Created Date: 5/23/2006 11:02:56 PM ...

A tour of Matlab: Snapshots from the minimizationAfter 1 steps

Page 22: Introduction to Optimization - Nc State Universityprojects.ncsu.edu/.../OptimizationUW06.pdfIntroduction to Optimization Author: vjg Created Date: 5/23/2006 11:02:56 PM ...

A tour of Matlab: Snapshots from the minimizationAfter 2 steps

Page 23: Introduction to Optimization - Nc State Universityprojects.ncsu.edu/.../OptimizationUW06.pdfIntroduction to Optimization Author: vjg Created Date: 5/23/2006 11:02:56 PM ...

A tour of Matlab: Snapshots from the minimizationAfter 3 steps

Page 24: Introduction to Optimization - Nc State Universityprojects.ncsu.edu/.../OptimizationUW06.pdfIntroduction to Optimization Author: vjg Created Date: 5/23/2006 11:02:56 PM ...

A tour of Matlab: Snapshots from the minimizationAfter 7 steps

Page 25: Introduction to Optimization - Nc State Universityprojects.ncsu.edu/.../OptimizationUW06.pdfIntroduction to Optimization Author: vjg Created Date: 5/23/2006 11:02:56 PM ...

A tour of Matlab: Snapshots from the minimizationAfter 12 steps

Page 26: Introduction to Optimization - Nc State Universityprojects.ncsu.edu/.../OptimizationUW06.pdfIntroduction to Optimization Author: vjg Created Date: 5/23/2006 11:02:56 PM ...

A tour of Matlab: Snapshots from the minimizationAfter 30 steps (converged)

Page 27: Introduction to Optimization - Nc State Universityprojects.ncsu.edu/.../OptimizationUW06.pdfIntroduction to Optimization Author: vjg Created Date: 5/23/2006 11:02:56 PM ...

fminsearch function

parameters: q =[C,K]cost function:

Minimize cost function[q,cost]=fninsearch(@cost_beam, q0,[],time,y_tilde)

2N

1ii )y_tilde]),[,(y(t cost iKC −∑=

=

Page 28: Introduction to Optimization - Nc State Universityprojects.ncsu.edu/.../OptimizationUW06.pdfIntroduction to Optimization Author: vjg Created Date: 5/23/2006 11:02:56 PM ...

Our optimization problem

In our problemOur function: cost function “lives” in ú3

2 parameters C and K, n=2 Simplex is a triangle

2N

1ii )y_tilde]),[,(y(t cost iKC −∑=

=

Page 29: Introduction to Optimization - Nc State Universityprojects.ncsu.edu/.../OptimizationUW06.pdfIntroduction to Optimization Author: vjg Created Date: 5/23/2006 11:02:56 PM ...

Done!