A COUPLED-ADJOINT METHOD FOR HIGH-FIDELITY AERO …aero-comlab.stanford.edu/Jmartins/Doc/Defense2002.pdfHIGH-FIDELITY AERO-STRUCTURAL OPTIMIZATION ... Analysis Optimizer Structural

Post on 25-Apr-2020

36 Views

Category:

Documents

1 Downloads

Preview:

Click to see full reader

Transcript

A COUPLED-ADJOINT METHOD FORHIGH-FIDELITY AERO-STRUCTURAL

OPTIMIZATION

Joaquim Rafael Rost Avila Martins

Department of Aeronautics and AstronauticsStanford University

Ph.D. Oral Examination, Stanford University, September 2002 1

Outline

• Introduction

– High-fidelity aircraft design– Aero-structural optimization– Optimization and sensitivity analysis methods

• Complex-step derivative approximation

• Coupled-adjoint method

– Sensitivity equations for multidisciplinary systems– Lagged aero-structural adjoint equations

• Results

– Aero-structural sensitivity validation– Optimization results

• Conclusions

Ph.D. Oral Examination, Stanford University, September 2002 2

High-Fidelity Aerodynamic Shape Optimization

• Start from a baseline geometry providedby a conceptual design tool.

• High-fidelity models required for transonicconfigurations where shocks are present,high-dimensionality required to smooththese shocks.

• Accurate models also required forcomplex supersonic configurations, subtleshape variations required to takeadvantage of favorable shock interference.

• Large numbers of design variables andhigh-fidelity models incur a large cost.

Ph.D. Oral Examination, Stanford University, September 2002 3

Aero-Structural Aircraft Design Optimization

• Aerodynamics and structures are coredisciplines in aircraft design and are verytightly coupled.

• For traditional designs, aerodynamicistsknow the spanload distributions that leadto the true optimum from experience andaccumulated data. What about unusualdesigns?

• Want to simultaneously optimize theaerodynamic shape and structure, sincethere is a trade-off between aerodynamicperformance and structural weight, e.g.,

Range ∝ L

Dln(

Wi

Wf

)

Ph.D. Oral Examination, Stanford University, September 2002 4

The Need for Aero-Structural Sensitivities

OptimizationStructural

OptimizationAerodynamic

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

0.2

0.4

0.6

0.8

1

1.2

1.4

1.6

Spanwise coordinate, y/b

Lift

Aerodynamic optimum (elliptical distribution)

Aero−structural optimum (maximum range)

Student Version of MATLAB

Aerodynamic Analysis

Optimizer

Structural Analysis

• Sequential optimization does not lead tothe true optimum.

• Aero-structural optimization requirescoupled sensitivities.

• Add structural element sizes to the designvariables.

• Including structures in the high-fidelitywing optimization will allow largerchanges in the design.

Ph.D. Oral Examination, Stanford University, September 2002 5

Introduction to Optimization

x1

x2

g

Iminimize I(x)

x ∈ Rn

subject to gm(x) ≥ 0, m = 1, 2, . . . , Ng

• I: objective function, output (e.g. structural weight).

• xn: vector of design variables, inputs (e.g. aerodynamic shape); boundscan be set on these variables.

• gm: vector of constraints (e.g. element von Mises stresses); in generalthese are nonlinear functions of the design variables.

Ph.D. Oral Examination, Stanford University, September 2002 6

Optimization Methods

• Intuition: decreases with increasing dimensionality.

• Grid or random search: the cost of searching the designspace increases rapidly with the number of design variables.

• Genetic algorithms: good for discrete design variablesand very robust; but infeasible when using a large numberof design variables.

• Nonlinear simplex: simple and robust but inefficient formore than a few design variables.

x1

x2

g

I

• Gradient-based: the most efficient for a large number ofdesign variables; assumes the objective function is “well-behaved”.

Ph.D. Oral Examination, Stanford University, September 2002 7

Gradient-Based Optimization: Design Cycle

x

Analysis

Sensitivity

Calculation

Optimizer

x = x+�x

• Analysis computes objective function andconstraints (e.g. aero-structural solver)

• Optimizer uses the sensitivity informationto search for the optimum solution(e.g. sequential quadratic programming)

• Sensitivity calculation is usually thebottleneck in the design cycle.

• Accuracy of the sensitivities is important,specially near the optimum.

Ph.D. Oral Examination, Stanford University, September 2002 8

Sensitivity Analysis Methods

• Finite Differences: very popular; easy, but lacks robustness andaccuracy; run solver Nx times.

dfdxn≈ f(xn + h)− f(x)

h+O(h)

• Complex-Step Method: relatively new; accurate and robust; easy toimplement and maintain; run solver Nx times.

dfdxn≈ Im [f(xn + ih)]

h+O(h2)

• Algorithmic/Automatic/Computational Differentiation: accurate;ease of implementation and cost varies.

• (Semi)-Analytic Methods: efficient and accurate; long developmenttime; cost can be independent of Nx.

Ph.D. Oral Examination, Stanford University, September 2002 9

Research Contributions

• Complex-step derivative approximation

– Contributed new insights to the theory of this approximation, includingthe connection to algorithmic differentiation.

– Automated the implementation of the complex-step method for Fortrancodes.

– Demonstrated the value of this method for sensitivity validation.

• Coupled-adjoint method

– Developed the general formulation of the coupled-adjoint formultidisciplinary systems.

– Implemented this method in a high-fidelity aero-structural solver.– Demonstrated the usefulness of the resulting framework by performing

aero-structural optimization.

Ph.D. Oral Examination, Stanford University, September 2002 10

The History of the Complex-Step Method

• Lyness & Moler, 1967:nth derivative approximation by integration in the complex plane

• Squire & Trapp, 1998:Simple formula for first derivative.

• Newman, Anderson & Whitfield, 1998:Applied to aero-structural code.

• Anderson, Whitfield & Nielsen, 1999:Applied to 3D Navier-Stokes with turbulence model.

• Martins et al., 2000, 2001:Automated Fortran and C/C++ implementation. 3D aero-structuralcode.

Ph.D. Oral Examination, Stanford University, September 2002 11

Finite-Difference Derivative Approximations

From Taylor series expansion,

f(x+ h) = f(x) + hf ′(x) + h2f′′(x)2!

+ h3f′′′(x)3!

+ . . . .

Forward-difference approximation:

⇒ df(x)dx

=f(x+ h)− f(x)

h+O(h).

f(x) 1.234567890123484

f(x+ h) 1.234567890123456

∆f 0.000000000000028

x x+h

f(x)

f(x+h)

Ph.D. Oral Examination, Stanford University, September 2002 12

Complex-Step Derivative Approximation

Can also be derived from a Taylor series expansion about x with a complexstep ih:

f(x+ ih) = f(x) + ihf ′(x)− h2f′′(x)2!− ih3f

′′′(x)3!

+ . . .

⇒ f ′(x) =Im [f(x+ ih)]

h+ h2f

′′′(x)3!

+ . . .

⇒ f ′(x) ≈ Im [f(x+ ih)]h

No subtraction! Second order approximation.

Ph.D. Oral Examination, Stanford University, September 2002 13

Simple Numerical Example

Step Size, h

Norm

alized E

rror

,

e

Complex-Step

Forward-Difference

Central-Difference

Estimate derivative atx = 1.5 of the function,

f(x) =ex√

sin3x+ cos3x

Relative error defined as:

ε =

∣f ′ − f ′ref∣

∣f ′ref

Ph.D. Oral Examination, Stanford University, September 2002 14

Algorithmic Differentiation vs. Complex Step

Look at a simple operation, e.g. f = x1x2,

Algorithmic Complex-Step∆x1 = 1 h1 = 10−20

∆x2 = 0 h2 = 0f = x1x2 f = (x1 + ih1)(x2 + ih2)∆f = x1∆x2 + x2∆x1 f = x1x2−h1h2 + i(x1h2 + x2h1)df/dx1 = ∆f df/dx1 = Im f/h

Complex-step method computes one extra term.

• Other functions are similar:

– Superfluous calculations are made.– For h ≤ x× 10−20 they vanish but still affect speed.

Ph.D. Oral Examination, Stanford University, September 2002 15

Implementation Procedure

• Cookbook procedure for any programming language:

– Substitute all real type variable declarations with complexdeclarations.

– Define all functions and operators that are not defined for complexarguments.

– A complex-step can then be added to the desired variable and thederivative can be estimated by f ′ ≈ Im[f(x+ ih)]/h.

• Fortran 77: write new subroutines, substitute some of the intrinsicfunction calls by the subroutine names, e.g. abs by c abs. But ... needto know variable types in original code.

• Fortran 90: can overload intrinsic functions and operators, includingcomparison operators. Compiler knows variable types and chooses correctversion of the function or operator.

• C/C++: also uses function and operator overloading.

Ph.D. Oral Examination, Stanford University, September 2002 16

Fortran Implementation

• complexify.f90: a module that defines additional functions andoperators for complex arguments.

• Complexify.py: Python script that makes necessary changes to sourcecode, e.g., type declarations.

• Features:

– Compatible with many platforms and compilers.– Supports MPI based parallel implementations.– Resolves some of the input and output issues.

• Application to aero-structural framework: 130,000 lines of code in 191subroutines, processed in 42 seconds.

• Tools available at: http://aero-comlab.stanford.edu/jmartins/

Ph.D. Oral Examination, Stanford University, September 2002 17

Outline

• Introduction

– High-fidelity aircraft design– Aero-structural optimization– Optimization and sensitivity analysis methods

• Complex-step derivative approximation

• Coupled-adjoint method

– Sensitivity equations for multidisciplinary systems– Lagged aero-structural adjoint equations

• Results

– Aero-structural sensitivity validation– Optimization results

• Conclusions

Ph.D. Oral Examination, Stanford University, September 2002 18

Objective Function and Governing Equations

Want to minimize scalar objective function,

I = I(xn, yi),

which depends on:

• xn: vector of design variables, e.g. structural plate thickness.

• yi: state vector, e.g. flow variables.

Physical system is modeled by a set of governing equations:

Rk (xn, yi (xn)) = 0,

where:

• Same number of state and governing equations, i, k = 1, . . . , NR

• Nx design variables.

Ph.D. Oral Examination, Stanford University, September 2002 19

Sensitivity Equations

xn

Rk = 0

yiI

Total sensitivity of the objective function:

dIdxn

=∂I

∂xn+∂I

∂yi

dyidxn

.

Total sensitivity of the governing equations:

dRkdxn

=∂Rk∂xn

+∂Rk∂yi

dyidxn

= 0.

Ph.D. Oral Examination, Stanford University, September 2002 20

Solving the Sensitivity Equations

Solve the total sensitivity of the governing equations

∂Rk∂yi

dyidxn

= −∂Rk∂xn

.

Substitute this result into the total sensitivity equation

dIdxn

=∂I

∂xn− ∂I

∂yi

− dyi/ dxn︷ ︸︸ ︷

[

∂Rk∂yi

]−1∂Rk∂xn

,

︸ ︷︷ ︸

−Ψk

where Ψk is the adjoint vector.

Ph.D. Oral Examination, Stanford University, September 2002 21

Adjoint Sensitivity Equations

Solve the adjoint equations

∂Rk∂yi

Ψk = − ∂I∂yi

.

Adjoint vector is valid for all design variables.

Now the total sensitivity of the the function of interest I is:

dIdxn

=∂I

∂xn+ Ψk

∂Rk∂xn

The partial derivatives are inexpensive, since they don’t require the solutionof the governing equations.

Ph.D. Oral Examination, Stanford University, September 2002 22

Aero-Structural Adjoint Equations

xn

Ak = 0 Sl = 0

wi

uj

I

Two coupled disciplines: Aerodynamics (Ak) and Structures (Sl).

Rk′ =[

AkSl

]

, yi′ =[

wiuj

]

, Ψk′ =[

ψkφl

]

.

Flow variables, wi, five for each grid point.

Structural displacements, uj, three for each structural node.

Ph.D. Oral Examination, Stanford University, September 2002 23

Aero-Structural Adjoint Equations

∂Ak∂wi

∂Ak∂uj

∂Sl∂wi

∂Sl∂uj

T[

ψkφl

]

= −

∂I∂wi∂I∂uj

.

• ∂Ak/∂wi: a change in one of the flow variables affects only the residualsof its cell and the neighboring ones.

• ∂Ak/∂uj: wing deflections cause the mesh to warp, affecting theresiduals.

• ∂Sl/∂wi: since Sl = Kljuj − fl, this is equal to −∂fl/∂wi.• ∂Sl/∂uj: equal to the stiffness matrix, Klj.

• ∂I/∂wi: for CD, obtained from the integration of pressures; for stresses,its zero.

• ∂I/∂uj: for CD, wing displacement changes the surface boundary overwhich drag is integrated; for stresses, related to σm = Smjuj.

Ph.D. Oral Examination, Stanford University, September 2002 24

Lagged Aero-Structural Adjoint Equations

Since the factorization of the complete residual sensitivity matrix isimpractical, decouple the system and lag the adjoint variables,

∂Ak∂wi

ψk = − ∂I

∂wi︸ ︷︷ ︸

Aerodynamic adjoint

−∂Sl∂wi

φl,

∂Sl∂uj

φl = − ∂I∂uj

︸ ︷︷ ︸

Structural adjoint

−∂Ak∂uj

ψk,

Lagged adjoint equations are the single discipline ones with an added forcingterm that takes the coupling into account.

System is solved iteratively, much like the aero-structural analysis.

Ph.D. Oral Examination, Stanford University, September 2002 25

Total Sensitivity

The aero-structural sensitivities of the drag coefficient with respect to wingshape perturbations are,

dIdxn

=∂I

∂xn+ ψk

∂Ak∂xn

+ φl∂Sl∂xn

.

• ∂I/∂xn: CD changes when the boundary over which the pressures areintegrated is perturbed; stresses change when nodes are moved.

• ∂Ak/∂xn: the shape perturbations affect the grid, which in turn changesthe residuals; structural variables have no effect on this term.

• Sl/∂xn: shape perturbations affect the structural equations, so this termis equal to ∂Klj/∂xnuj − ∂fl/∂xn.

Ph.D. Oral Examination, Stanford University, September 2002 26

3D Aero-Structural Design Optimization Framework

• Aerodynamics: FLO107-MB, aparallel, multiblock Navier-Stokesflow solver.

• Structures: detailed finite elementmodel with plates and trusses.

• Coupling: high-fidelity, consistentand conservative.

• Geometry: centralized databasefor exchanges (jig shape, pressuredistributions, displacements.)

• Coupled-adjoint sensitivityanalysis: aerodynamic andstructural design variables.

Ph.D. Oral Examination, Stanford University, September 2002 27

Sensitivity of CD wrt Shape

1 2 3 4 5 6 7 8 9 10Design variable, n

-0.006

-0.004

-0.002

0

0.002

0.004

0.006

0.008

0.01

0.012

0.014

0.016

dCD /

dxn

Avg. rel. error = 3.5%

Complex step, fixed displacements

Coupled adjoint, fixed displacements

Complex step

Coupled adjoint

Ph.D. Oral Examination, Stanford University, September 2002 28

Sensitivity of CD wrt Structural Thickness

11 12 13 14 15 16 17 18 19 20Design variable, n

-0.08

-0.06

-0.04

-0.02

0

0.02

0.04

0.06

0.08

dCD /

dxn

Avg. rel. error = 1.6%

Complex step

Coupled adjoint

Ph.D. Oral Examination, Stanford University, September 2002 29

Structural Stress Constraint Lumping

To perform structural optimization, we need the sensitivities of all thestresses in the finite-element model with respect to many design variables.

There is no method to calculate this matrix of sensitivities efficiently.

Therefore, lump stress constraints

gm = 1− σmσyield

≥ 0,

using the Kreisselmeier–Steinhauser function

KS (gm) = −1ρ

ln

(

m

e−ρgm)

,

where ρ controls how close the function is to the minimum of the stressconstraints.

Ph.D. Oral Examination, Stanford University, September 2002 30

Sensitivity of KS wrt Shape

1 2 3 4 5 6 7 8 9 10Design variable, n

-0.2

-0.1

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

dKS

/ dx

n

Avg. rel. error = 2.9%

Complex, fixed loads

Coupled adjoint, fixed loads

Complex step

Coupled adjoint

Ph.D. Oral Examination, Stanford University, September 2002 31

Sensitivity of KS wrt Structural Thickness

11 12 13 14 15 16 17 18 19 20Design variable, n

-10

0

10

20

30

40

50

60

70

80

dKS

/ dx

n

Avg. rel. error = 1.6%

Complex, fixed loads

Coupled adjoint, fixed loads

Complex step

Coupled adjoint

Ph.D. Oral Examination, Stanford University, September 2002 32

Computational Cost vs. Number of Variables

0 400 800 1200 1600 2000Number of design variables (Nx)

0

400

800

1200

Nor

mal

ized

tim

e

Complex step

2.1

+ 0.

92 N

x

Finite difference

1.0 + 0.38 N x

Coupled adjoint

3.4 + 0.01 Nx

Ph.D. Oral Examination, Stanford University, September 2002 33

Computational Cost Breakdown

2:40:64

1:20

0:60

< 0:001

0:01Nx

@Ak

@wi

k = �@I

@wi

�@Sl

@wi

~�l

@Sl

@uj�l = �

@I

@uj�@Ak

@uj~ k

dI

dxn= @I

@xn+ k

@Ak

@xn+ �l

@Sl@xn

Ph.D. Oral Examination, Stanford University, September 2002 34

Supersonic Business Jet Optimization Problem

Natural laminar flowsupersonic business jet

Mach = 1.5, Range = 5,300nm1 count of drag = 310 lbs of weight

Minimize:

I = αCD + βW

where CD is that of the cruisecondition.

Subject to:

KS(σm) ≥ 0where KS is taken from a maneuvercondition.

With respect to: external shapeand internal structural sizes.

Ph.D. Oral Examination, Stanford University, September 2002 35

Baseline Design

CD = 0.007395

Weight = 9,285 lbs

0.5 1.4 0.0 1.0

Von Mises stresses (maneuver)Surface density (cruise)

Ph.D. Oral Examination, Stanford University, September 2002 36

Design Variables

0.5 1.4

9 bumps along fuselage axis

10 skin thickness groups

Total of 97 design variables

10 Hicks-Henne bumps

Twist

6 de�ning airfoilsLE camber

TE camber

Ph.D. Oral Examination, Stanford University, September 2002 37

Aero-Structural Optimization Convergence History

0 10 20 30 40 50Major iteration number

3000

4000

5000

6000

7000

8000

9000W

eigh

t (lb

s)

Weight

60

65

70

75

80

Dra

g (c

ount

s)

Drag

-1.2

-1.1

-1

-0.9

-0.8

-0.7

-0.6

-0.5

-0.4

-0.3

-0.2

-0.1

0

0.1

0.2

KS

KS

Ph.D. Oral Examination, Stanford University, September 2002 38

Aero-Structural Optimization Results

0.5 1.4 0.0 1.0

Surface density (cruise) Von Mises stress (maneuver)

CD = 0.006922

Weight = 5,546 lbs

Ph.D. Oral Examination, Stanford University, September 2002 39

Comparison with Sequential Optimization

CD(counts)

σmaxσyield

Weight(lbs)

Objective

All-at-once approachBaseline 73.95 0.87 9, 285 103.90Optimized 69.22 0.98 5, 546 87.11Sequential approachAerodynamic optimization

Baseline 74.04Optimized 69.92

Structural optimizationBaseline 0.89 9, 285Optimized 0.98 6, 567

Aero-structural analysis 69.95 0.99 6, 567 91.13

Ph.D. Oral Examination, Stanford University, September 2002 40

Conclusions

• Shed a new light on the theory behind the complex-step method.

• Showed the connection between complex-step and algorithmicdifferentiation theories.

• The complex-step method is excellent for validation of more sophisticatedgradient calculation methods, like the coupled-adjoint.

Step Size, h

No

rm

alize

d E

rro

r

,e

Complex-Step

Forward-Difference

Central-Difference

1 2 3 4 5 6 7 8 9 10Design variable, n

-0.006

-0.004

-0.002

0

0.002

0.004

0.006

0.008

0.01

0.012

0.014

0.016

dCD /

dxn

Avg. rel. error = 3.5%

Complex step, fixed displacements

Coupled adjoint, fixed displacements

Complex step

Coupled adjoint

Ph.D. Oral Examination, Stanford University, September 2002 41

Conclusions

• Developed the general formulation for a coupled-adjoint method formultidisciplinary systems.

• Applied this method to a high-fidelity aero-structural solver.

• Showed that the computation of sensitivities using the aero-structuraladjoint is extremely accurate and efficient.

• Demonstrated the usefulness of the coupled adjoint by optimizing asupersonic business jet configuration.

0 400 800 1200 1600 2000Number of design variables (Nx)

0

400

800

1200

Nor

mal

ized

tim

e

Complex step

2.1

+ 0.

92 N

x

Finite difference

1.0 + 0.38 N x

Coupled adjoint

3.4 + 0.01 Nx

Ph.D. Oral Examination, Stanford University, September 2002 42

Long Term Vision

Continue work on a large-scale MDO framework for aircraft design

ConceptualDesign

DetailedDesign

PreliminaryDesign

CentralDatabase

CAD

Discretization

Multi-DisciplinaryAnalysis

Optimizer

Aerodynamics

Structures

Propulsion

Mission

Ph.D. Oral Examination, Stanford University, September 2002 43

Acknowledgments

Ph.D. Oral Examination, Stanford University, September 2002 44

Acknowledgments

Ph.D. Oral Examination, Stanford University, September 2002 45

Acknowledgments

Ph.D. Oral Examination, Stanford University, September 2002 46

Ph.D. Oral Examination, Stanford University, September 2002 47

CFD and OML grids

v

u

CFD mesh point

OML point

Ph.D. Oral Examination, Stanford University, September 2002 48

Displacement Transfer

u1;2;3

u4;5;6

u7;8;9

�ri

rigid link

associated point

OML point

Ph.D. Oral Examination, Stanford University, September 2002 49

Mesh Perturbation

Baseline

1

2, 3

4

Perturbed

Ph.D. Oral Examination, Stanford University, September 2002 50

Load Transfer

v

u

CFD mesh point

OML point

Ph.D. Oral Examination, Stanford University, September 2002 51

Aero-Structural Iteration

CFD

CSM

Load

tran

sfer

Dis

plac

emen

t tra

nsfe

ru(0)

= 0

w(0)= w1

u(1)

1

2

35

4

w(N)

Ph.D. Oral Examination, Stanford University, September 2002 52

top related