-
최적설계 | 제약조건의 정규화Engineering/Optimum Design 2025. 12. 5. 18:00반응형
1. 제약조건의 정규화
수치 탐색법을 이용해 최적설계를 찾아가는 과정을 종료하기 위해서는 어떠한 기준이 필요하다. 이때 제약조건이 있는 문제에서는 최적점이 등호제약조건과 부등호제약조건을 만족한다는 것이 기본적인 요구사항이다. 그러나 수치 탐색법에서는 등호제약조건과 부등호제약조건이 정확히 0이 되도록 요구하는 것은 불가능하기 때문에 유용허용오차 매개변수를 반영해야 한다. 다음과 같은 제약조건을 가진 설계문제를 고려한다고 가정해보자.
$$ \begin{align} h\left ( \mathbf{x} \right ) &= 0 \\\\ g\left ( \mathbf{x} \right ) &\leq 0 \end{align}$$해당 설계문제에 수치 탐색법을 적용하기 위해 양수인 유용허용오차 매개변수(예를 들어, 0.001)를 고려할 때, 설계점이 다음 조건을 만족할 경우 제약조건에 대해 유용하다고 선언할 수 있다. 이는 유용하다고 선언한 설계대안이 제약조건을 약간 위배하더라도 수용한다는 것을 의미한다.
$$ \begin{align} \left| h\left ( \mathbf{x} \right ) \right| &= \varepsilon \\\\ g\left ( \mathbf{x} \right ) &\leq \varepsilon \end{align}$$보통 제약조건마다 유용허용오차 값을 다르게 두지 않고 하나의 값을 정하여 모든 제약조건의 상태를 점검한다. 이때 제약조건마다 다른 차수의 단위(예를 들어, GPa과 mm)를 가지고 있다면 제약조건을 위배했을 때 얼마나 위배했는지 판단하기 어렵기 때문에 동일한 유용허용오차 값을 적용하는 것은 바람직하지 않다. 따라서 모든 제약조건이 비슷한 값을 가지도록 정규화 또는 무차원화할 필요가 있다. 이해를 돕기 위해 다음과 같은 제약조건을 고려해보자.
$$ \begin{align} \sigma &= \sigma_a\\\\ \delta &\leq \delta_a \end{align}$$위 제약조건을 정규화하여 나타내면 다음과 같다.
$$ \begin{align} h &= \sigma - \sigma_a = 0 \\\\ g &= \delta - \delta_a \leq 0 \end{align}$$각 제약조건을 상수항에 해당하는 허용설계값으로 나누어 제약조건을 정규화하면 다음과 같이 나타낼 수 있다.
$$ \begin{align} \overline{h} &= \frac{\sigma}{\sigma_a} - 1 = 0 \\\\ \overline{g} &= \frac{\delta}{\delta_a} - 1 \leq 0 \end{align}$$위와 같이 정규화한 제약조건에 유용허용오차 매개변수까지 고려하여 나타내면 다음과 같다. 이와 같이 제약조건을 정규화하면 제약조건에 따라 유용허용오차 값을 다르게 할 필요 없이 하나의 값만을 사용할 수 있다.
$$ \begin{align} \left| \overline{h} \right| &= \left| \frac{\sigma}{\sigma_a} - 1 \right| = \varepsilon \\\\ \overline{g} &= \frac{\delta}{\delta_a} - 1 \leq \varepsilon \end{align}$$상수항이 없거나 허용설계값이 0인 제약조건에 대해서는 위와 같은 방법으로는 정규화할 수 없다. 이러한 경우에는 제약조건을 백분율로 변형하기 위해 상수 100으로 나누거나, 설계변수의 계수로 나누거나, 제약조건 함수에 대한 전형적인 상수로 나누어 정규화할 수 있다.
2. 설계변수의 정규화
제약조건 외에도 설계변수들이 다른 차수의 크기를 가진다면, 비슷한 차수를 갖도록 설계변수들을 정규화하는 것이 바람직하다. 다음과 같이 상한과 하한을 가진 설계변수를 고려해보자.
$$ \begin{align} a \leq x \leq b \end{align}$$수치 탐색법에서 유용한 정규화 방법은 다음과 같다.
① -1과 1 사이로 정규화된 설계변수
$$ \begin{align} -1 \leq y \leq 1;~~~~y=\frac{2x}{b-a}-\frac{b+a}{b-a} \end{align}$$② 최댓값이 1로 정규화된 설계변수
$$ \begin{align} \frac{a}{b} \leq y \leq 1;~~~~y=\frac{x}{b} \end{align}$$③ 중앙값으로 정규화된 설계변수
$$ \begin{align} \frac{2a}{b+a} \leq y \leq \frac{2b}{b+a};~~~~y=\frac{2x}{b+a} \end{align}$$3. 예제
다음과 같이 주어진 등호제약조건과 부등호제약조건을 정규화하여 나타내보자.
$$ \begin{align} h\left(\mathbf{x}\right) &= x_1^2+\frac{1}{2x_2}-18 = 0\\\\ g\left(\mathbf{x}\right) &= 500x_1 - 30000x_2 \leq 0 \end{align}$$등호제약조건을 상수로 정규화하면 다음과 같이 나타낼 수 있다.
$$ \begin{align} \overline{h}\left(\mathbf{x}\right) &= \frac{x_1^2}{18}+\frac{1}{36x_2}-1 = 0 \end{align}$$부등호제약조건에 상수가 없으므로, 두 설계변수의 계수 중 큰 값으로 나누어 정규화하면 다음과 같이 나타낼 수 있다.
$$ \begin{align} \overline{g}\left(\mathbf{x}\right) &= \frac{1}{60}x_1 - x_2 \leq 0 \end{align}$$[함께 읽으면 좋은 페이지]
최적설계 | 설계문제 정식화
1. 설계문제 정식화 설계를 최적화하기 위해서는 설계문제와 제한조건을 수학적으로 정의하여 정식화(formulation)할 필요가 있다. 이때 정식화가 얼마나 합리적인지에 따라 최적해의 좋고 나쁨
vedacube.tistory.com
참고문헌
- Arora, J. S. (2016). Introduction to optimum design. Elsevier.
반응형'Engineering > Optimum Design' 카테고리의 다른 글
최적설계 | 파이썬 기반 유전 알고리즘 pygad.GA (0) 2026.01.02 최적설계 | 자연 영감 탐색법(1): 유전 알고리즘 GA (0) 2025.12.26 최적설계 | 제약조건 문제 수치해법(5): 제약최속강하법 CSD (0) 2025.10.31 최적설계 | 제약조건 문제 수치해법(4): 부정확 이동거리 탐색법 (0) 2025.09.26 최적설계 | 제약조건 문제 수치해법(3): 순차 이차계획법 SQP (1) 2025.08.22