2023. 10. 4. 13:31ㆍ정보공유/조선해양공학 박사과정
2023년 2학기 조선해양공학과 대학원 전공 수업인 “선박 설계 자동화 특강“에서 배운 내용을 공부하면서 정리하고자 블로그 글을 써 나가보려 합니다
먼저 설계 최적화와 관련된 용어, 개념에 대해 정리한 후에 최적화 이론에 대해 하나하나 짚어볼 계획입니다.
Optimization Problem이란?
우리가 문제를 풀 때, 찾아야 하는 미지수(Variable)의 수와 알고 있는 방정식(Equation)의 수가 동일하다면, 간단한 연립방정식으로 문제를 풀 수 있습니다.
근데 만약 수가 다르다면 어떨까요?
Variable의 수가 Equation의 수보다 크다면, Indeterminate system이라고 합니다. 같으면 Deteminate system이라고 볼 수 있죠.
Indeterminate system 문제를 해결하기 위해, 몇 가지 criteria(조건)을 추가하면 이 문제는 최적화 문제(Optimization problem)으로 정의됩니다.
최적화문제란, 여러 개의 선택가능한 후보 중에서 최적해(Optimal value) 또는 최적해에 근접한 값을 찾는 문제를 말합니다. 최적화 문제를 풀기 위해서는 3가지 요소가 필요합니다.
- Design Variables
- Free variable or independet variable로도 불림 - Constraints
- 등호제약(Inequality Constraint) 또는 부등호제약(Equality Constraint) 조건이 있음 - Objective function(Criteria to determine the proper variable)
Classification of Optimization Problems and Method
최적화 문제는 다양하게 분류할 수 있다.
Unconstrained Optimization Problem | Constrained Optimization Problem | ||||
Linear | NonLinear | Linear | NonLinear | ||
Objective Function | minimize f(x) | minimize f(x) | minimize f(x) | minimize f(x) | minimize f(x) |
Constraints | None | None | Y | Y | Y |
Optimization method for continous value | 1. Gradient method - Steepest descent method - Conjugate gradient method - Newton method - Davidon-Fletcher-Powell(DFP) method - Broyden-Fletcher-Glodfarb-Shanno(BFGS) method 2. Enumerative method - Hooke & Jeeves method - Nelder & Mead method - Golden section search method |
Linear Programming (LP) method | Penalty function method | ||
Simplex Method | Quadratic Programming(QP) method | Sequantial Linear Programming (SLP) method | |||
Sequntial Quadratic Programming (SQP) method | |||||
Optimization method for discrete value | Interger programming - Cut algorithm - Enumeration algorithm - Constructive algorithm |
||||
Metaheuristic Optimization | - Genetic Algorithm(GA) - Ant algorithm - Simulated Annealing ,,,, |
- Numeriacal Techniques: 최적해 탐색을 위한 결정론적(Deterministic) 접근법으로 전통적이고 수학적인 방법. 미분(Derivative)를 이용하고
- Direct method: 목적 함수의 기울기를 0으로 설정한 결과 일반적으로 비선형인 방정식 집합을 풀어서 국소 극한을 검색합니다. 가능한 솔루션(함수 피크)의 검색은 모든 방향에서 기울기가 0인 점으로 제한하는 것으로 시작됩니다.
- Indirect method: 검색 공간을 뛰어다니며 검색을 안내하는 새 점의 기울기를 평가하여 극단을 찾습니다. 이것은 단순히 언덕 오르기의 개념으로, 가장 가파른 경사면을 올라 최고의 지역 지점을 찾는 것입니다.
- Random search techniquies
- Enumerative techniques: 함수의 도메인 공간(무한 또는 이산화)과 관련된 모든 점을 한 번에 한 점씩 검색합니다.
각 지점에서 가능한 모든 솔루션을 생성하고 최적의 솔루션을 찾기 위해 테스트합니다. 구현이 매우 간단하지만 대개 상당한 계산이 필요합니다. 이 기법은 도메인 공간이 큰 응용프로그램에는 적합하지 않습니다.
이번 포스트에서는 최적화문제(Optimization Problem)에 대한 정의와 주요 요소, 분류에 대해 살펴봤습니다. 다음 포스트부터는 여기서 정리한 분류 체계에 따라 하나씩 최적화 문제를 예제와 함께 풀어볼 예정입니다. 먼저 제약조건이 없는 Unconstrained Optimization Method부터 공부한 뒤에 Constrained Optimization method를 보겠습니다.
'정보공유 > 조선해양공학 박사과정' 카테고리의 다른 글
[설계 최적화 이론] Gradient method - Newton's method (0) | 2023.10.04 |
---|---|
[설계 최적화 이론] Gradient Method - Steepest Descent Method, Conjugate Gradient Method (0) | 2023.10.04 |