Introduction
Optimum design converts an engineering design task into a mathematical optimization problem. The design variables $x\in\mathbb{R}^n$ describe quantities that can be changed, while objective functions measure performance, cost, mass, efficiency, or other design criteria. Physical requirements and operating limits are represented by equality, inequality, and bound constraints. A general formulation is
\[\begin{aligned} \underset{x\in\mathbb{R}^n}{\operatorname{min}}\quad & f(x), \\ \text{subject to}\quad & g_i(x)\leq 0, && i=1,\ldots,m, \\ & h_j(x)=0, && j=1,\ldots,p, \\ \end{aligned}\] where $x$ is design variables, $h,g$ are constraints. The central problem is therefore not only to solve an optimization algorithm, but also to formulate a physically meaningful model, couple simulation and optimization, evaluate design sensitivities, and interpret the resulting optimum as an engineering design.
The course follows Jasbir Singh Arora’s Introduction to Optimum Design, Fourth Edition. This course covers the core concepts underlying KAIST ID Lab research and is unofficially hosted by a lab student.
Prerequisites
- Numerical Analysis
- Linear Algebra
- Calculus
References
Curriculum
| No. | Title | Source | View |
| 1 | Introduction to Optimum Design Info - Engineering analysis, conventional design, and optimum design을 구분한다.
- 설계 요구사항을 variable, objective, constraint로 변환한다.
- Feasible region과 objective contour를 이용해 설계해를 해석한다.
- 다양한 engineering design problem을 공통 수학 모델로 표현한다.
| Arora, Ch. 1-3 | |
| 2 | Optimality Conditions, Part I Info - Unconstrained 및 equality-constrained optimality condition을 유도한다.
- Lagrange multiplier와 constraint force의 의미를 해석한다.
- General constrained problem의 KKT necessary conditions를 정리한다.
| Arora, Ch. 4 | |
| 3 | Optimality Conditions, Part II Info - Regularity와 constraint qualification의 역할을 분석한다.
- Second-order necessary·sufficient conditions를 구분한다.
- Convexity를 이용해 local condition을 global optimality와 연결한다.
| Arora, Ch. 5 | |
| 4 | Linear Programming, Part I Info - Engineering LP를 standard form과 canonical form으로 변환한다.
- Basic feasible solution과 simplex iteration을 유도한다.
- Artificial variable과 two-phase method를 정리한다.
| Arora, Ch. 8 | |
| 5 | Linear Programming, Part II Info - Simplex method의 대수적 구조를 상세히 유도한다.
- Dual problem과 primal-dual 관계를 해석한다.
- LP의 KKT 해석과 quadratic programming 확장을 정리한다.
| Arora, Ch. 9 | |
| 6 | Unconstrained Optimum Design, Part I Info - Search direction과 step size로 반복 알고리즘을 구성한다.
- Steepest descent와 conjugate-gradient method를 비교한다.
- Descent property와 convergence criterion을 설계 문제에 적용한다.
| Arora, Ch. 10 | |
| 7 | Unconstrained Optimum Design, Part II Info - Newton 및 quasi-Newton direction을 유도한다.
- Scaling과 convergence rate가 계산 성능에 미치는 영향을 분석한다.
- Gradient-free direct-search methods와 적용 조건을 비교한다.
| Arora, Ch. 11 | |
| 8 | Constrained Optimum Design, Part I Info - Constraint linearization과 feasible search direction을 구성한다.
- Sequential linear programming과 SQP의 기본 구조를 유도한다.
- Direction subproblem과 step-size subproblem을 분리해 분석한다.
| Arora, Ch. 12 | |
| 9 | Constrained Optimum Design, Part II Info - Potential constraint strategy와 inexact step calculation을 다룬다.
- Bound-constrained method와 projection method를 정리한다.
- SQP, feasible direction, reduced-gradient methods를 비교한다.
| Arora, Ch. 13 | |
| 10 | Discrete Optimum Design Info - Catalog, integer, material-choice variables를 정식화한다.
- Continuous relaxation과 rounding의 한계를 분석한다.
- Branching, enumeration, adaptive discrete search를 비교한다.
| Arora, Ch. 15 | |
| 11 | Global Optimization Methods Info - Local optimum과 global optimum 탐색의 차이를 정리한다.
- Deterministic covering·zooming과 stochastic search를 비교한다.
- Genetic algorithm과 differential evolution의 연산을 정리한다.
- Ant-colony 및 particle-swarm search의 update rule을 분석한다.
| Arora, Ch. 16-17 | |
| 12 | Multi-Objective Optimum Design Info - Conflicting objectives와 Pareto optimality를 정의한다.
- Weighted-sum, constraint, global-criterion formulations를 비교한다.
- Efficiency·mass·safety 등 공학적 trade-off를 해석한다.
| Arora, Ch. 18 | |