목표계획법의 개념

목표계획법(Goal Programming)은 다목적 최적화(Multi-objective Optimization) 문제를 다루는 기법으로, 여러 개의 목적 함수가 동시에 존재할 때 이를 효율적으로 해결하기 위한 방법론이다. 선형계획법과 달리 단일 목적 함수를 다루지 않고, 여러 목적을 달성하기 위한 목표를 설정하고 이를 만족시키기 위해 최적해를 구하는 것이 목표이다.

목표계획법에서 중요한 개념은 각 목적 함수에 우선순위를 부여하여, 우선순위가 높은 목표부터 우선적으로 최적화를 진행하는 것이다. 각 목표는 목표값(Target Value)을 가지며, 실제 해가 이 목표값에 얼마나 가까운지를 측정하여 그 차이를 최소화하는 것이 목표계획법의 기본 원리이다.

수학적 표현

목표계획법에서는 다음과 같은 수학적 모델을 기반으로 한다. 각 목적 함수를 z_i (\mathbf{x}) 라고 정의하며, 여기서 i = 1, 2, ..., m은 각 목적 함수의 인덱스를 나타낸다.

목적 함수

목표계획법의 목적은 다음과 같은 여러 목적 함수를 만족시키는 해 \mathbf{x}를 찾는 것이다:

z_1 (\mathbf{x}), z_2 (\mathbf{x}), \dots, z_m (\mathbf{x})

각각의 목표 함수 z_i (\mathbf{x})는 목표값 T_i를 가지며, 목표계획법의 목적은 각 목표에 대한 편차를 최소화하는 것이다.

편차 변수

목표계획법에서는 각 목표에 대해 목표값에 도달하지 못한 정도를 나타내는 편차 변수를 도입한다. 이 편차 변수는 다음과 같이 정의된다:

d_i^+ = \max(0, z_i(\mathbf{x}) - T_i)
d_i^- = \max(0, T_i - z_i(\mathbf{x}))

여기서 d_i^+는 목표값보다 초과된 부분을 나타내고, d_i^-는 목표값에 미달된 부분을 나타낸다. 즉, d_i^+d_i^-는 각각 초과와 부족 편차를 측정한다.

목적

목표계획법의 목적은 편차 변수 d_i^+d_i^-를 최소화하는 것이다. 이를 일반적으로 다음과 같이 표현할 수 있다:

\min \sum_{i=1}^{m} P_i (d_i^+ + d_i^-)

여기서 P_i는 목표 i에 부여된 우선순위 또는 가중치를 나타낸다.

제약 조건

목표계획법의 모델은 일반적으로 다음과 같은 제약 조건을 갖는다:

\mathbf{A} \mathbf{x} \leq \mathbf{b}

여기서 \mathbf{A}는 계수 행렬, \mathbf{x}는 결정 변수 벡터, \mathbf{b}는 상수 벡터를 나타낸다. 이 제약 조건은 문제의 물리적, 실무적 제약을 반영한 것이다.

목표계획법의 종류

목표계획법은 여러 가지 방식으로 구분될 수 있으며, 대표적으로 다음과 같은 두 가지 방식이 있다.

가중치 목표계획법 (Weighted Goal Programming)

가중치 목표계획법에서는 각 목표에 대해 가중치를 부여하여 여러 목표를 동시에 고려한다. 각 목표 함수의 편차에 대한 가중치를 달리함으로써 특정 목표에 더 큰 중요성을 부여할 수 있다. 이는 다음과 같은 수학적 형태로 표현된다:

\min \sum_{i=1}^{m} w_i (d_i^+ + d_i^-)

여기서 w_i는 목표 i에 부여된 가중치를 나타낸다. 각 목표에 대한 가중치 w_i는 보통 문제의 특성에 따라 설정된다.

우선순위 목표계획법 (Lexicographic Goal Programming)

우선순위 목표계획법은 여러 목표들 간의 우선순위를 설정하여 목표를 순차적으로 해결하는 방식이다. 가장 우선순위가 높은 목표를 먼저 해결하고, 그다음 우선순위 목표를 해결하는 방식으로 진행한다.

이를 수학적으로 표현하면 다음과 같다:

\min \sum_{i=1}^{m_1} (d_i^+ + d_i^-)

우선순위 P_1에 해당하는 목표를 먼저 최적화한 후, 두 번째 우선순위 P_2에 대해 다음 문제를 해결한다:

\min \sum_{i=m_1+1}^{m_2} (d_i^+ + d_i^-)

이러한 방식으로 목표의 우선순위에 따라 순차적으로 문제를 해결해 나간다.

목표계획법의 목적

목표계획법의 목적은 다중 목표 하에서 각 목표에 대한 편차를 최소화하는 것이며, 이를 통해 다양한 목적을 동시에 만족하는 해를 도출하는 것이다. 이러한 목적은 실제 응용에서 매우 유용한데, 여러 가지 조건을 동시에 만족해야 하는 복잡한 문제에서 목표계획법을 사용하여 효율적인 해결책을 찾을 수 있다.

예를 들어, 제조업에서 생산 비용과 품질을 동시에 최적화해야 하는 상황에서 목표계획법을 적용하면 각 목표에 대한 타협점을 찾아 최적의 생산 계획을 수립할 수 있다.