Lecture Notes: Introduction to IDF and ATC. James T. Allison. April 5, 2006. This lecture is an introductory tutorial on the mechanics of implementing two methods.
Lecture Notes: Introduction to IDF and ATC James T. Allison April 5, 2006
This lecture is an introductory tutorial on the mechanics of implementing two methods for optimal system design: the individual disciplinary feasible approach (IDF), and analytical target cascading (ATC). Familiarity with optimization is assumed. A brief discussion on terminology is given, followed by an example-based introduction to both IDF and ATC. Additional references on IDF [1] and ATC [2, 3, 4] may be accessed from the publications page of the site http://ode.engin.umich.edu for those interested in more detailed information.
1
Terminology
A system is composed of interacting components, and from within the optimal system design paradigm there exist two types of component interconnections: shared variables (xs ), and coupling variables (y). If it were not for these connections, the subproblems could be solved completely independently. Methods such as those discussed in this tutorial provide a means for handling connections. Shared variables are quantities that are design variables for more than one subproblem. If a quantity is only a design variable for one subproblem, then it is called a local variable (x` ). A coupling variable is a quantity calculated by a subproblem analysis that is a required input parameter to at least one other subproblem analysis. If we label the subproblems 1, 2, . . . , N , where the total number of subsystems is N , then we say that yij is the coupling variable that is an output of subproblem j and and input to subproblem i. Coupling variables may be scalar, vector, or function valued. The variables local to subproblem i are x`i , and its shared variables are xsi . The collection of all design variables for subproblem i is xi . Figure 1 graphically illustrates a partitioned system analysis using the quantities just described, and also additional analysis outputs—gi and hi . For convenience in notation, vectors are assumed to be row vectors. These additional outputs are constraint or objective functions required for the optimization subproblem, but not for system analysis (as are the coupling variables). Note that not all of the depicted N (N − 1) couplings necessarily exist. Also observe that some couplings may exist in reality, but approximate models used for optimization may not account for them.
c Copyright 2006 by James T. Allison
1
2 SYSTEM ANALYSIS AND DESIGN
g1 , h1 x1 = [x!1 xs1 ]
fN , gN , hN
g2 , h2 x2 = [x!2 xs2 ]
Analysis 1
xN = [x!N xsN ]
...
Analysis 2
Analysis N
y21 y12 yj1
... ...
y1j
yN j yjN
Figure 1: General representation of a partitioned system analysis
2
System Analysis and Design
It is assumed here that several subsystem optimization problems have been defined, an example of which is shown in equation 1 for subproblem i. Each subproblem has its own objective, local constraints, and design variables. The objective and constraint functions require as input parameters the input coupling variables from the rest of the system, i.e., subproblem i has as input coupling variables yij where j takes on all values from 1 to N except i. If the set of all subproblem labels is P = {1, 2, . . . , N }, we can write this requirement on j as j ∈ P\i. min
fi (xi , yij )
xi
(1)
gi (xi , yij ) ≤ 0 hi (xi , yij ) = 0 j ∈ P\i
subject to where
With the subproblems defined, the task now is to formulate a system optimization problem that accounts for all subproblems, their interactions (coupling variables), and connections via shared variables. Equation 2 illustrates the complete system optimization formulation. Since it was assumed each subproblem has its own local objective function, the system design problem entails multiobjective optimization. The formulation in equation 2 handles the multiobjective optimization by scalarizing the objectives with a weighted sum, where wi indicates the importance of each objective function. Another approach is to select one objective as the overall system objective, and convert the other local objectives to inequality constraints. The system optimization is performed with respect to all design variables, shared and coupled, for all subproblems. The vector of all local variables for all subproblems is x` , and the set of all shared variables for all subproblems is xs . c Copyright 2006 by James T. Allison
2
2 SYSTEM ANALYSIS AND DESIGN
N X
min x=[x` ,xs ]
subject to
wi fi (x)
(2)
i=1
g(x) = [g1 , g2 , . . . , gN ] ≤ 0 h(x) = [h1 , h2 , . . . , hN ] = 0
Implicit in the above formulation is the task of system analysis, which involves finding the values for coupling variables that result in a consistent system. To illustrate, consider the simple coupled analysis in Figure 2. Each analysis depends on the other, and we say that the system has feedback coupling. For example, if we want to calculate the value of y12 , we need as an input parameter the value of y21 . However, in order to calculate the value of y21 , we need as an input parameter the value of y12 . A solution to this chicken-and-egg dilemma is to make a guess for one of the values, iteratively solve the analyses with updated coupling variables, and end when the system has reached a stability, or ‘fixed’ point. This simple iterative algorithm is referred to as fixed point iteration [5]. This process will converge in many cases, but it has been shown that some systems will not converge when this process is used. Systems with information flow in only one direction are much easier to handle, since system analysis may be completed with only one pass through the subproblems. y21 y21 (y12 ) = y21
y12 (y21 ) = y12 y12
Figure 2: Two element coupled system
System Optimizer
f, g, h
x
System Analysis
Figure 3: AiO system optimization process
c Copyright 2006 by James T. Allison
3
3 DESIGN EXAMPLE: AIR FLOW SENSOR CALIBRATION
We can solve the system optimization problem defined in equation 2 by completely solving the system analysis to obtain values for f , g, and h for every iteration of the optimization algorithm. In other words, we nest the system analysis task within the system optimization task. This approach is called the all-in-one (AiO) approach, and is sometimes referred to as nested analysis and design (NAND). The AiO approach is depicted graphically in Figure 3. Although commonly used and straightforward to implement, several problems may be encountered with AiO. If a system is strongly coupled, then the system analysis task may require numerous costly analysis iterations, resulting in a very long computation time. In addition, fixed point iteration may fail to converge. Finally, the dimension of the optimization problem may be too large to solve. The rest of this tutorial will demonstrate how the IDF and ATC methods help address these issues using a simple design example.
3
Design Example: Air Flow Sensor Calibration
An air flow sensor design problem is considered that incorporates two coupled disciplinary analyses: structural and aerodynamic. The sensor consists of a vertical plate with length ` and width w, attached to its base with a revolute joint and biased to the vertical position with a torsional spring of stiffness k (Figure 3). The plate is subject to horizontal air flow of speed v that results in a drag force F . The design objective is to choose ` and w such that the plate ˆ deflects an amount θ (for a fixed air speed) that closely matches a target deflection value θ. The plate area ` × w is constrained to a fixed value A, and the drag force on the plate must not exceed Fmax . This task, summarized in Eq. (3), is in essence a sensor calibration problem.
v θ F
!
1 ! cos θ 2
k Figure 4: Airflow sensor diagram
ˆ2 (θ − θ)
min `,w
(3)
F − Fmax ≤ 0 `w − A = 0
subject to
The structural analysis computes the plate deflection θ for a given sensor design and drag force. Note that the governing equation is transcendental, requiring iterative solution for θ.
c Copyright 2006 by James T. Allison
4
4 INTRODUCTION TO IDF
1 kθ = F ` cos θ (4) 2 The aerodynamic analysis computes the drag force on the plate F for a given sensor design and plate deflection (Eq. (5)). C is a constant that incorporates air density and the drag coefficient (C = 12 ρCD ), and Af is the plate frontal area (Af = `w cos θ). F = CAf v 2 = C`w cos θv 2
(5)
Note that the analyses depend on each other—Figure 3 illustrates this relationship. The coupling variables are θ and F , ` is a shared variable, and w is a local variable. Fixed point iteration can be used to find the equilibrium values of F and θ for a given design (`, w).
θ Structural Analysis
Aerodynamic Analysis
F !, w
!
Figure 5: Coupling relationship in airflow sensor analysis The optimal solution to this problem may be found using monotonicity principles [6], and can be used to benchmark computational results. The analytical solution is given in Eq. (6). For parameter values k = 0.050 N/rad, v = 40.0 m/s, C = 1.00 kg/m3 , Fmax = 7.00 N, and θˆ = 0.250 rad, the optimal design is [`∗ , w∗ ] = [0.365, 0.0274]. Note that the drag coefficient of a finite flat plate is approximately 2.0, resulting in a value of C = 1.00 if we assume air density to be 1.00 kg/m3 . −1 Fmax CAv 2 2k cos 2 CAv `∗ = , w∗ = A/`∗ (6) 2 Fmax The AiO solution entails solving Eq. (3), where each optimization iteration requires a fixed point iteration solution to Eqs. (4) and (5) to obtain values for F and θ. This process is ˆ 2 , g = F − Fmax , and h = `w − A. The AiO depicted by Figure 3, where x = [w, `], f = (θ − θ) result matches the monotonicity solution. The following section introduces the IDF method, and demonstrates how to solve the airflow sensor problem with IDF.
4
Introduction to IDF
The key concept in the individual disciplinary feasible (IDF) method is to use the optimization algorithm to perform the system analysis. System analysis involves finding the coupling variable values that provide a consistent system. We can express system consistency as a set of equations.
c Copyright 2006 by James T. Allison
5
4 INTRODUCTION TO IDF
For example, in the system depicted in Figure 2, the value of y12 used to compute y21 must match the value of y12 computed using y21 . In equation form, this requirement is: y12 (y21 ) = y12 y21 (y12 ) = y21
(7)
With the consistency requirement in equation form, we simply add these equations to the optimization problem formulation as equality constraints, and let the optimization algorithm decide the coupling variable values in addition to design variable values. Thus, in addition to performing system design, the optimizer performs system analysis. Rather than nested analysis and design, we are performing simultaneous analysis and design (SAND). The IDF architecture, for a two element system, is illustrated in Fig. 6. The optimizer chooses values for design and coupling variables and passes them to each of the subproblem analyses, which return values for the corresponding objective and constraint functions, as well as computed coupling variable values. At intermediate stages of the process, the system may not be consistent, but the additional equality constraints require system consistency at convergence of the optimization algorithm. Since the system optimizer provides all inputs required for all subsystems concurrently, analyses may be run in parallel, providing an efficiency advantage over AiO. Even if parallel computing is not used, IDF breaks any iterative analysis loops required for system analysis, which may result in reduced computation time.
System Optimizer f, g2 , h2 , yi2
g1 , h1 , yi1 x!1 , xs1 , y1j
x!2 , xs2 , y2j
SS1 Analysis
SS2 Analysis
Figure 6: IDF architecture The IDF formulation is given in Eq. (8). Here it is assumed that one of the objective function values was chosen as the system objective function f (x, y), and the remaining objective functions were added to the set of inequality constraints. It is similar to the AiO formulation, except that the decision variable set includes both the design variables x and the coupling c Copyright 2006 by James T. Allison
6
5 INTRODUCTION TO ATC
variables y, and that the auxiliary constraints (written in vector form) haux (x, y) are added to ensure system consistency. min
f (x, y)
(8)
x=[x` ,xs ],y
g(x, y) = [g1 , g2 , . . . , gN ] ≤ 0 h(x, y) = [h1 , h2 , . . . , hN ] = 0 haux (x, y) = y(x, y) − y = 0
subject to
To solidify the concepts behind the IDF method, we will show how to solve the air flow sensor problem using IDF. We add the coupling variables, θ and F , to the decision variable set, and add auxiliary constraints that require the consistency between the chosen and computed values of θ and F . The resulting formulation is shown in equation 9. The solution found using the IDF formulation and the parameter values given in the last section matches the monotonicity solution and the AiO solution.
min
`,w,θ,F
subject to
ˆ2 (θ − θ)
(9)
F − Fmax ≤ 0 `w − A = 0 θ − θ(`, F ) = 0 F − F (`, w, θ) = 0
IDF is helpful for solving system design problems with feedback coupling or in cases where parallel computation is desired. One drawback of IDF, however, is that it cannot reduce the dimension of optimization problems, and large dimension may be a motivating factor in choosing to use a decomposition based technique. This motivates the development of methods, such as ATC, that can reduce the dimension of optimization problems when subproblems have many local variables, but relatively few shared or coupling variables.
5
Introduction to ATC
Analytical target cascading (ATC) is a system optimization method that uses an optimization algorithm for each subproblem, rather than a single optimization algorithm for the entire system as with IDF. A simplified example adapted from a current student project will be used to explain the basic concept of ATC, and then it will be shown how to solve the air flow sensor problem using ATC. Consider a suspension design problem that has design variables such as linkage geometry, spring rate, and damper rate. A suspension designer might perform this design seeking to optimize ride quality and handling, within system-level constraints, and then talk to the spring and damper designers to see if it is possible to design components with the desired spring and damping rates. The component designers then seek to design components as close as possible to the desired targets, within component level constraints such as geometric, fatigue, and thermal constraints. If the targets are attainable, then the process stops and the optimal system design c Copyright 2006 by James T. Allison
7
5 INTRODUCTION TO ATC
is obtained. If not, then we iterate between the top level and bottom level designs until the desired targets can be matched by the bottom level designers. If the targets cannot be matched, then the system design problem as posed is infeasible.
Vehicle Suspension Design
desired spring rate
attainable spring rate
desired damper rate
attainable damper rate
Suspension Damper Design
Suspension Spring Design
Figure 7: Conceptual ATC process
ATC provides a formal and efficient procedure for this iterative task. Observe that this iterative process is very different from fixed point iteration, which only involves analysis. Each ATC subproblem is by itself a design optimization problem. The iterative process between top and bottom levels coordinates the subproblems toward a consistent and optimal solution. It is possible to extend ATC to multiple levels, but this discussion will be limited to the two-level case. To formulate an ATC problem, observe what quantities connect the subproblems. These may be either coupling variables or shared variables. We make copies of shared quantities in the appropriate subproblems in order to temporarily decouple the subproblems. These copies become decision variables, so like IDF, ATC also uses the optimization algorithm to perform system analysis tasks. A penalty is placed on deviations between shared quantities in order to ensure system consistency. Referring to the system in Figure 3, the shared quantities in the air flow sensor problem are ` (a shared variable), and θ and F (coupling variables). It is convenient to choose the structural subproblem as the top level problem, since it computes the system objective function ˆ 2 . The top level problem ATC formulation is given in equation 10. f = (θ − θ)
min
f + (`(1) − `(2) )2 + (F (1) − F (2) )2 + (θ(1) − θ(2) )2
`(1) ,F (1)
subject to c Copyright 2006 by James T. Allison
F (1) − Fmax ≤ 0 8
(10)
5 INTRODUCTION TO ATC
The superscripts in parentheses indicate what level various quantities are evaluated at when there is ambiguity (1 refers to top level, 2 refers to bottom level). Any value with a superscript of 2 in equation 10 is determined at the bottom level problem, and so is a fixed parameter at the top level problem. The decision variables are `(1) and F (1) , and θ(1) is an analysis output of the top level problem. F (2) is the actual drag force as computed by the bottom level problem. The inequality design constraint is placed with the top level problem, but could easily been included with the bottom level problem instead. The terms following f in the objective function are penalty terms that make deviation between shared quantities at top and bottom levels undesirable. Penalty functions are an approach to handle equality constraints, and can be helpful when equality constraints are difficult to satisfy [7]. In ATC we use penalty terms to enforce the system analysis equations, such as F (1) = F (2) . The penalty terms used in this basic formulation are simple quadratic penalty terms. More sophisticated penalty methods have been applied to ATC that improve the efficiency of the process [3]. The bottom level, or aerodynamic problem, is given in equation 11.
min
(`(1) − `(2) )2 + (F (1) − F (2) )2 + (θ(1) − θ(2) )2
(11)
`(2) ,w(2) ,θ(2)
subject to
`(2) w(2) − A = 0
The only objective is to minimize the deviation between shared quantities. All quantities with the superscript 1 are fixed parameters that are passed down from the top level problem. The decision variables are `(2) , w(2) , and θ(2) . To solve the ATC problem, the top level problem is completely solved using initial guesses for input parameters required from the bottom level problem, and then the resulting values for `(1) , F (1) , and θ(1) are provided as fixed input parameters to the bottom level problem. The bottom level problem is then solved, and updated values for `(2) , F (2) , and θ(2) are passed back to the top level. This process is repeated until either the deviation between shared quantities is zero, or until these values stop changing.
c Copyright 2006 by James T. Allison
9
REFERENCES
REFERENCES
References [1] J.T. Allison, M. Kokkolaras, and P.Y. Papalambros. On the impact of coupling strength on complex system optimization for single-level formulations. In ASME Design Engineering Technical Conference DETC2005-84790, Long Beach CA, September 24–28 2005. [2] J.T. Allison, M. Kokkalaras, M. Zawislak, and P.Y. Papalambros. On the use of analytical target cascading and collaborative optimization for complex system design. In 6th World Conference on Structural and Multidisciplinary Optimization, May 30–June 3 2005. [3] S. Tosserams, L. F. P. Etman, P. Y. Papalambros, and J. E. Rooda. An augmented lagrangian relaxation for analytical target cascading using the alternating direction method of multipliers. Structural and Multidisciplinary Optimization, 31(3):176–189, 2006. [4] H.M. Kim, N.F. Michelena, P.Y. Papalambros, and T. Jiang. Target cascading in optimal system design. Journal of Mechanical Design, 125:474–480, September 2003. [5] S.C. Chapra and R.P. Canale. Numerical Methods for Engineers. McGraw-Hill, third edition, 1998. [6] P.Y. Papalambros and D.J. Wilde. Principles of Optimal Design: Modeling and Computation. Cambridge University Press, New York, second edition, 2000. [7] D.P. Bertsekas. Nonlinear Programming. Athena Scientific, second edition, 1999.
c Copyright 2006 by James T. Allison
10