본문 바로가기
경제학 이론 및 분석 도구/경영과학

Goal Programming 의 정의와 활용방법

by 경제노리 2026. 1. 14.
Goal Programming(목표계획법) 이란?

 

Goal Programming(목표계획법)은
여러 개의 목표를 동시에 만족시키고 싶을 때 사용하는

수학적 최적화 기법 입니다.


일반적인 선형계획법(Linear Programming)이

하나의 목표(예: 이익 최대화)만 다루는 반면,
Goal Programming은

“다목적 의사결정(Multi-objective decision making)”에 

사용됩니다.

 

이때 다수의 목표를 동시에 고려하기 위해

목표에서 벗어나는 정도를(편차 deviation)

최소화합니다.

 

 

Goal Programming의 종류

 

1) 가중목표계획(Weighted Goal Programming)

 

각 목표에 중요도(weight)를 다르게 부여해 해결.

 

 

2) 우선순위 목표계획(Preemptive Goal Programming)

 

목표들 간에 절대적 우선순위가 있을 때 사용.
예를 들어
1순위: 결함률 최소화
2순위: 생산량 최대화
3순위: 비용 최소화
→ 1순위 만족이 최우선이며, 2·3순위는 그 다음.

 

Goal Programming의 도출 방법

 

이번 도출 방법은 가중목표계획 방식을 사용하겠습니다.

기본적인 방법은 전의 LP 와 동일합니다.

다만 중요도 w 와 편차 d가 추가됩니다.

 

1) 목표식을 설정하고 제약식을 찾습니다.

 

다른 부분은 LP와 동일합니다.

단, 식의 좌우차이가 발생할 수 있으므로

편차 변수(d⁺, d⁻)만 추가합니다.

예: 생산량 목표 5000개
생산량 + d⁻ – d⁺ = 5000

  • d⁻: 목표보다 부족한 정도
  • d⁺: 목표보다 초과한 정도

 

2) 편차를 최소화하는 목적 함수를 만든다

 

2) 중요도에 따라 가중치를 부여한 후 

목표에서 벗어나는 정도를 최소화 합니다.

 

기본 형태: Minimize Z = w₁(d₁⁻ + d₁⁺) + w₂(d₂⁻ + d₂⁺) + …

                Minimize Z = i =15(widi+wi+di+)

  • w: 각 목표의 중요도(Weight)

즉, 가중치를 크게 주는 목표일수록 더 철저히 맞추는 겁니다.

 

 

Goal Programming의 실무 활용 방법 (+excel)

 

예를 들어 설명하겠습니다.

호텔에서 확장 공사를 하고 싶어합니다.

방 종류별 크기 및 가격은 아래와 같습니다.

  크기 (m2) 가격 ($)
작은 방 400 18,000
중간 방 750 33,000
큰 방 1,050 45,150

 

목표 1,2,3 =

호텔은 5개의 작은 방,

10개의 중간 방,

15개의 큰 방을 원합니다.

 

목표 4,5 =

호텔은 25,000m2 이상 확장하되

1,000,000$ 이하만 쓰기를 원합니다.

 

추가 제약식(1,2,3)

호텔은 목표 1,2,3에 대해서 목표를

하향 달성하는 것을 싫어합니다.

 

호텔은 목표4에 대해서  목표를

초과달성하거나 하향 달성 모두 싫어합니다.

 

호텔은 목표5에 대해서 목표를

초과달성하는 것을 싫어합니다.

 

이제 위의 문장을 식으로 표현해 봅시다.

1) 먼저 가중치 적용 전 식을 정리합니다.

(추가 제약식 및 가중치 적용 전)

 

 

2) 이제 가중치를 추가합니다.

Minimize Z = 5(widi+wi+di+)

 

3) 다음으로 퍼센티지로 표시를 바꿉니다.

왜냐하면 숫자로 표시하면 기본 단위가 다 다르기 때문입니다.

정확한 비교를 위해서는 퍼센티지화 해야 합니다.

 

4) 3번 까지의 모든 작업이 끝나서 모으면 비로서 목적식이 나옵니다.

(0을 적용시켜 불필요한 부분 제외 시킴)

 

 

 

이를 엑셀로 표현하면 아래와 같습니다.

 

 

 

 

 

이상으로

Goal Programming 의 정의와 활용방법

포스팅을 마칩니다.