Function Minimization
Motivation
Multivariate Taylor Series
Gradient and Hessian Newton Iteration
Example
ME 163
MAE 155A
Motivation
Good design attempts to find the optimal or best solution to a problem. The emerging field of Multidisciplinary Design Optimization (MDO) uses numerical techniques to find optimal solutions to aerospace design problems.
MDO combines numerical methods from many aerospace disciplines: aerodynamics, structures, propulsion, and flight control.
While true MDO solutions are difficult to obtain in practice, it is very useful to look at optimization methods as a way to characterize how the design process works.
MAE 155A
Multivariate Taylor Series
Start with a scalar function m(x), with the vector x representing design parameters that describe possible solutions.
The vector x might contain parameters such as wingspan, weight, engine size, etc. The function m(x) might return predictions for range, endurance, speed, etc. The value of x that mimimizes m(x) is considered the optimal design solution.
m(x) can be maximized by minimizing -m(x)
A Taylor Series is defined about the point x0:
1 m x = m x 0 x x 0 T m x 0 x x 0 T 2 m x 0 x x 0 2
MAE 155A
Gradient and Hessian
The function gradient is expressed as a vector.
m x = m x2
[]
m x1 2 m
2 x1
The gradient vector and x have the same number of elements.
The Hessian is defined by a square, symmetric matrix of second partials.
2 m x =
2 m x1 x 2 2 m x2 2
2 m x1 x2
The number of rows (and columns) of the Hessian matrix is equal to the number of elements in x.
MAE 155A
Newton Iteration
A Taylor's Series for the gradient vector is given by:
m x = m x 0 2 m x 0 x x 0
The function m(x) is minimized when the gradient vector is equal to zero.
0= m x 0 2 x 0 x x 0
x = x 0 [ 2 m x 0 ]
m x0
Newton Iteration
x = x 0 m x 0
Steepest Descent
MAE 155A
0
5
Carpet Plots
A carpet plot provides a visual representation of the gradient vector.
m x1 , x0 2
vary x1
m x1 , x2
m x
0 m x0 , x 1 2
baseline
vary x1 and x2
m x0 ,x 1 2
vary x2
m x = m x 0 x x 0 T m x 0 m x = m x 0 x 1 x 0 1
[ ]
m x1
x 1= x 0 1
x 2 x 0 2
[ ]
m x2
x2=x0 2
MAE 155A
Example Carpet Plot
wing loading = 400 kg/m/m
aircraft empty mass
450 kg/m/m 500 kg/m/m 550 kg/m/m 14
12 Baseline: wing loading = 500 kg/m/m aspect ratio = 10
10
aspect ratio = 8
MAE 155A
Software Tools
The MATLAB program has become the industry standard for dynamic system modeling and control system design.
MATLAB is a proprietary software program distributed by the Mathworks, Inc. MATLAB 1.0 was released in 1984. Student license versions are available:
http://www.mathworks.com/academia/student_version/ $100 at the UCSD bookstore
Open-source alternatives to MATLAB include:
Scilab http://www.scilab.org Octave
http://www.gnu.org/software/octave
FreeMat
http://freemat.sourceforge.net
MAE 155A
Function Minimization Example
m x = x 1 2 4 x 2 1 2 3 x 3 1 6
m x = 2 x 1 2
[ ]
4 x 1 2 3 18 x 3 1 5
2.0 x opt = 1.0 1.0
[]
Scilab Script File
// // function to minimize // function [m, dmdx, ind] = cost(x, ind) m = (x(1)-2)^4 + (x(2)-1)^2 + 3*(x(3)-1)^6; dmdx = [4*(x(1)-2)^3; 2*(x(2)-1); 18*(x(3)-1)^5]; endfunction // // call optimizer // x0 = [1.6; 1.2; 0.8]; [mopt, xopt] = optim(cost, x0) MAE 155A
Application to Aerospace Design
What design parameters should define x?
Planform geometry, weight, thrust, fuel capacity, Are there any constraints on x?
What is the appropriate initial guess for x0 ?
How can m(x) be selected so that it represents needed design requirements?
Cost, range, endurance, orbit, maneuverability,
How should x be chosen for the next design iteration?
Gradient vector reveals direction for steepest descent
MAE 155A
10