Engineering/Optimum Design
-
최적설계 | 파이썬 기반 선형계획문제 알고리즘 scipy.optimize.linprogEngineering/Optimum Design 2025. 1. 31. 18:00
1. SciPy 패키지 SciPy는 파이썬 기반의 오픈소스 패키지로, 최적화를 비롯하여 적분, 보간, 미분방정식 등의 과학기술 계산 문제를 다루기 위한 다양한 알고리즘을 제공한다. 파이썬 기반의 연산 패키지인 NumPy와도 호환이 가능해 복잡하게 형식을 정의할 필요가 없어 편리하게 이용할 수 있다. 해당 라이브러리는 아래 명렁어를 명령 프롬프트에 입력하여 설치할 수 있으며, 아래 링크로 접속하면 SciPy 라이브러리에 대한 설명을 확인할 수 있다.pip install scipy SciPy User Guide — SciPy v1.15.1 ManualSciPy User Guide SciPy is a collection of mathematical algorithms and convenience funct..
-
최적설계 | 심플렉스법(2)Engineering/Optimum Design 2025. 1. 24. 18:00
1. 인위변수 표준화한 선형계획문제의 기저해가 음수라면, 해당 설계대안은 기저유용해가 아니므로 심플렉스법을 적용할 수 없다. 이때 음이 아닌 값을 갖는 인위변수(artificial variable)를 도입하여 심플렉스법을 적용하면 초기 기저유용해를 찾을 수 있으며, 해당 초기 기저유용해를 시작으로 심플렉스법을 적용하여 최적해를 탐색할 수 있다. 심플렉스법을 총 두 번 적용하는 것이다. 단, 첫 번째로 심플렉스법을 적용할 때에는 인위변수를 소거하기 위해 인위가격함수를 정의하고, 인위변수를 비기저변수로 만듦으로써 인위가격함수를 최솟값인 0으로 만드는 것을 목표로 한다. 인위가격함수는 인위변수의 합으로 다음과 같이 정의한다. $$ \begin{align} \omega=\sum x_j \end{align}$..
-
최적설계 | 심플렉스법(1)Engineering/Optimum Design 2025. 1. 17. 18:00
1. 선형계획문제의 볼록성 일반적인 최적설계문제에서 등호제약조건이 선형이고 부등호제약조건이 볼록이면, 해당 설계문제의 유용집합은 볼록집합이다. 만약 해당 유용집합 내에서 도출한 설계대안이 국소적 최소라면, 해당 설계대안은 전역적 최소이다. 선형계획문제에서는 모든 함수가 선형이므로 선형계획문제는 볼록집합이며, 하나의 국소적 최적이 존재한다면 해당 설계대안이 전역적 최적해이다. 또한 선형계획문제에서의 최적해는 항상 유용영역의 경계 부분, 특히 유용영역의 꼭짓점 중 하나에 존재한다. 이는 최적해가 유용영역의 내부에도 존재할 수 있는 일반적인 비선형문제와는 다르다는 것을 보여준다. 2. 선형계획문제의 기저해 표준선형계획문제는 일반적으로 등호제약조건의 수보다 설계변수의 수가 많아 무한 가지의 설계대안이 도..
-
최적설계 | 선형계획법Engineering/Optimum Design 2025. 1. 10. 18:00
1. 선형계획법 목적함수와 제약함수가 설계변수에 대하여 선형함수인 최적설계문제를 선형계획문제(linear programming problem)라고 한다. 선형계획문제의 모든 목적함수 또는 가격함수(cost function)와 제약조건은 다음과 같은 형태로 나타낼 수 있다. $$ \begin{align} f \left( \mathbf{x} \right) &= c_1x_1 + c_2x_2 + \cdots + c_kx_k \\\\ &= \sum_{i=1}^{k}c_ix_i \\\\ &= \mathbf{c}^T\mathbf{x} \end{align}$$ $$ \begin{align} a_{i1}x_1 + a_{i2}x_2 + \cdots + a_{ik}x_k &\leq b_i~~~~\Leftrightarro..
-
최적설계 | 카루시-쿤-터커 KKT 최적성 조건(2)Engineering/Optimum Design 2024. 10. 18. 18:00
1. KKT 최적성 조건의 대안 형식 앞서 소개한 KKT 최적성 조건에서 부등호제약조건을 완화변수 없이 나타내보자. 표준화된 최적화 문제를 완화변수 없이 라그랑주 함수로 나타내면 다음과 같다. $$ \begin{align} L \left( \textbf{x} \right) &= f\left ( \textbf{x} \right)+\sum_{i=1}^{p}v_{i}h_i\left( \textbf{x} \right)+\sum_{j=1}^{m}u_{j} g_{j}\left ( \textbf{x} \right ) \\\\ &=f\left ( \textbf{x} \right ) + \textbf{v}^{T}\mathbf{h}\left ( \textbf{x} \right ) + \textbf{u}^{T} \mat..
-
최적설계 | 카루시-쿤-터커 KKT 최적성 조건(1)Engineering/Optimum Design 2024. 10. 11. 18:00
1. 카루시-쿤-터커 최적성 조건 카루시-쿤-터커(Karush-Kuhn-Tucker, KKT) 최적성 조건은 등호제약조건과 부등호제약조건을 가진 목적함수의 국소적 최소점 후보군을 찾기 위한 필요조건이다. 등호제약조건과 부등호제약조건을 모두 만족하는 설계변수벡터 중에서 라그랑주 함수가 국소적 최소가 되는 설계변수벡터가 있다면, 해당 설계변수벡터에 대한 라그랑주 승수 벡터가 존재한다. 우선 아래와 같이 등호제약조건과 부등호제약조건을 포함한 최적화 문제를 고려해보자. $$ \begin{align} f\left ( \mathbf{x} \right ) &= f\left ( x_1,x_2,\cdots ,x_n \right )\\\\ h_i\left ( \mathbf{x} \right ) &= 0;~~~~i=1~..
-
최적설계 | 부등호제약조건 문제Engineering/Optimum Design 2024. 10. 4. 18:00
1. 부등호제약조건 문제 이번에는 부등호제약조건을 고려한 국소적 최소점의 후보군을 찾는 문제를 살펴보자. 아래와 같은 제약조건을 포함한 최적화 문제를 고려해보자. 부등호제약조건은 국소적 최소점이 경계선 위에 있는 활성 상태, 혹은 허용 범위 내에 있는 만족 상태일 수 있다. 부등호제약조건을 포함한 최적화 문제를 풀 때에는 국소적 최소점 후보군을 찾는 것 외에도 부등호제약조건의 상태가 활성인지 만족인지 파악하는 것 또한 염두에 두어야 한다. HTML 삽입미리보기할 수 없는 소스 2. 완화변수 완화변수라고 불리는 새로운 변수의 제곱을 제약조건에 추가하여 부등호제약조건을 아래와 같은 등호제약조건으로 변환할 수 있다. 이때 완화변수는 어떠한 실수값을 가진다. 이러한 표현은 부등호제약조건을 포함한 최적화 ..
-
최적설계 | 등호제약조건 문제Engineering/Optimum Design 2024. 9. 27. 18:00
1. 등호제약조건 문제 대부분의 설계 문제는 설계변수와 성능에 대한 제약조건을 포함하고 있으므로, 최적성 조건을 따질 때 제약조건을 함께 고려해야 한다. 앞서 살펴본 최적성 조건에서는 제약조건을 고려하지 않고 국소적 최소점의 후보군을 찾았지만, 이번에는 등호제약조건을 고려한 국소적 최소점의 후보군을 찾아보자. 아래와 같이 등호제약조건을 포함한 최적화 문제를 고려해보자. HTML 삽입미리보기할 수 없는 소스 2. 라그랑주 승수 라그랑주 승수(lagrange multiplier)라고 불리는 스칼라값은 최적화 문제를 라그랑주 함수로 표현하였을 때 제약조건 앞에 붙는 계수로, 목적함수와 제약조건에 의해 결정된다. 만약 제약조건이 변하면 해당 제약조건 앞에 붙은 라그랑주 승수 또한 변한다. 등호제약조건이 ..