http://dx.doi.org/10.7236/JIIBC.2013.13.2.93
JIIBC 2013-2-13
수송문제의 최적해
Optimal Solution for Transportation Problems
이상운*
Sang-Un Lee
요 약 본 논문은 수송 문제의 최적 해를 찾는 방법을 제안하였다. 수송 문제는 공급량과 요구량이 동일한 균형 수 송과 공급량과 요구량이 다른 불균형 문제로 구분된다. 수송문제의 최적 해를 얻는 대표적인 TSM은 먼저, 불균형 수 송 문제인 경우 가상의 행이나 열을 추가하여 균형 수송 문제로 변환시킨다. 다음으로 NCM, LCM, VAM 등 다양한 방법을 적용하여 초기 해를 구한다. 마지막으로 초기 해가 최적 해인지 검증하는 MODI를 적용한다. 따라서 최적 해 를 구하는 과정이 복잡하다. 제안된 방법은 불균형을 균형 수송 문제로 변환하는 과정을 거치지 않고 직접 적용한다. 또한, 초기 해가 최적해인지 검증하는 과정도 수행하지 않는다. 제안된 방법은 첫 번째로, 행에 대해 공급량을 비용 오름차순으로 요구량을 만족하도록 배정한다. 두 번째로, 각 열에 대해 배정된 량이 요구량을 초과하는 순으로 배정 량을 조정한다. 배정량 조정 방법은 다음 수행 순위 열의 비용과의 차이인 손실비용이 가장 큰 셀에 우선 배정하고 나머지 셀에 대해서는 배정량을 조정한다. 조정된 배정량은 요구량을 만족하지 못하는 수행 순위 오름차순 셀들에 추 가된다. 모든 열에 대해 배정량이 조정되면 마지막으로 행의 최소 비용에 미 배정되었거나 열의 최대 비용에 배정된 경우 배정량을 상호 교환하는 방법으로 추가 조정한다. 불균형 배송 2개와 균형 배송 13개 데이터에 제안된 방법을 적용한 결과 모두 최적 해를 구하는데 성공하였다. 또한, 기존의 방법들이 최적해를 구하지 못한 4개 데이터에 대해 서 추가로 최적 해를 구하였다. 따라서 제안된 방법은 수송 문제에 대해 일반화된 단일 방법으로 적용할 수 있을 것 이다.
Abstract This paper proposes an algorithm designed to obtain the optimal solution for transportation problem.
The transportation problem could be classified into balanced transportation where supply meets demand, and unbalanced transportation where supply and demand do not converge. The archetypal TSM (Transportation Simplex Method) for this optimal solution firstly converts the unbalanced problem into the balanced problem by adding dummy columns or rows. Then it obtains an initial solution through employment of various methods, including NCM, LCM, VAM, etc. Lastly, it verifies whether or not the initial solution is optimal by employing MODI. The abovementioned algorithm therefore carries out a handful of complicated steps to acquire the optimal solution. The proposed algorithm, on the other hand, skips the conversion stage for unbalanced transportation problem. It does not verify initial solution, either. The suggested algorithm firstly allocates resources so that supply meets demand, in the descending order of its loss cost. Secondly, it optimizes any surplus quantity (the amount by which the initially allocated quantity exceeds demand) in such a way that the loss cost could be minimized Once the above reallocation is terminated, an additional arrangement is carried out by transferring the allocated quantity in columns with the maximum cost to the rows with the minimum transportation cost. Upon application to 2 unbalanced transportation data and 13 balanced transportation data, the proposed algorithm has successfully obtained the optimal solution. Additionally, it generated the optimal solution for 4 data, whose solution the existing methods have failed to obtain. Consequently, the suggested algorithm could be universally applied to the transportation problem.
Key Words : Transportation Problem, Balanced and Unbalanced Transportation, TSM (Transportation Simplex Method), Minimized Loss Cost
*정회원, 강릉원주대학교 과학기술대학 멀티미디어공학과 접수일자 : 2013년 2월 3일, 수정완료 : 2013년 3월 10일 게재확정일자 : 2013년 4월 12일
Received: 3 February 2013 / Revised: 10 March 2013 / Accepted: 12 April 2013
*Corresponding Author: [email protected]
Dept. of Multimedia Eng., Gangneung-Wonju National University, Korea
Ⅰ. 서 론
수송 문제 (Transportation Problem)는 다수의 공급처
⋯ 와 수요처 ⋯가 존재하 며, 공급량 과 요구량 , 수송 단위당 소요 비용
이 모두 다른 경우, 공급량과 요구량을 모두 만족하 도록 수송량 을 할당하였을 때 최소의 수송비용 합
을 찾는 문제이다.[1-3]
수송 문제는 인 경우를 균형 수송 문제 (Balanced Transportation Problem), ≠ 인 경우 를 불균형 수송 문제 (Unbalanced Transportation Problem)라 한다.[3,4]
수송 문제를 해결하는 방법은 Transportation Simplex Method (TSM)을 적용한다. TSM은 2단계를 수행한다.[4] 첫 번째 단계에서는 초기 해를 Northwest Corner Method (NCM), Least-Cost Method (LCM = Minimum Matrix Method, MMM)과 Vogel's Approximation Method (VAM) 등을 이용하여 구한다.
다음 단계에서는 Stepping-Stone Method (SSM) 또는 Modified Distribution Method (MODI)를 사용하여 최적 해를 얻었는지 검증하고 비용 감소를 평가하여 재조정한 다. TSM 이외의 방법으로는 Push & Pull Method (PPM), U-V Method (UVM), QSB, Excel Spreadsheet Method (ESSM), 기타 (ETC) 등 다양한 방법들이 제안 되어 있다. 그러나 이들 방법은 적용이 어렵다.[4-16]
수송 문제의 최적 해를 찾고자 할 때 가장 큰 문제점 들 중 하나는 어느 특정한 방법이 모든 수송문제에 최적 의 해를 찾지 못한다. 즉, 일반화된 방법이 존재하지 않기 때문에 다수의 방법들을 적용하여 최적의 해를 찾는 방 법을 선택해야만 한다.
본 논문은 수송 문제의 최적 해를 도출할 수 있는 단 일화된 방법을 제안한다. 제안된 방법은 거의 모든 수송 문제들에 대해 최적의 해를 얻을 수 있기 때문에 수송 문 제를 해결하는 일반화된 방법이라 할 수 있다.
2장에서는 수송 문제의 최적 해를 찾는 가장 많이 알 려진 TSM을 제시하고 적용 문제점을 고찰해 본다. 3장 에서는 최적의 해를 찾는 최적 수송 방법을 제안한다. 4 장에서는 제안된 최적 수송 방법을 균형과 불균형 수송 문제의 다양한 사례들에 적용하여 최적 해를 찾는지 평 가해 본다.
Ⅱ. 관련 연구와 연구 배경
수송 문제는 최소 비용 흐름 문제 (Minimum Cost Flow Problem)의 특별한 경우로 다수의 공급처 (공장)와 요구처 (물류창고)가 존재하고, 공급량, 요구량, 수송 단 위당 비용이 모두 다른 경우가 적용된다. 즉, 개의 공장 에서 서로 다른 공급량 를, 개의 물류창고에서 서로 다른 요구량 를 갖고 있다. 또한, 공급처에서 물류창고 로 수송되는 서로 다른 단위당 수송비용 가 존재한다.
이 경우, 주어진 공급량으로부터 요구량을 만족시키도록 최소 비용을 찾는 문제로, 각 공급처로부터 물류창고에 수송될 양을 라 하면, 식 (1)의 최적 해를 찾는 문제이 다. 여기서 한 가지 제약사항은 모든 는 양의 정수 값 만을 갖는다.[3,4]
(1)
≤ for ⋯
≥ for ⋯
≥ for all
수송 문제의 최적 해를 찾는 TSM은 그림 1과 같이 3 단계의 과정을 거쳐 수행된다. 초기 해를 구하는 NWM, LCM과 VAM과 최적 해 검증 방법인 MODI는 참고로 그림 2에 제시하였다.[4,5]
[TSM]
1단계 : 균형수송문제인지를 확인하고 수송표를 만든다. 불 균형수송문제이면 가 공급처나 가수요처를 도입하여 균형수송문제로 만든다.
2단계 : 초기 해를 구한다. 초기 해를 구하는 기본적인 방법으 로 NCM, 발견적 기법으로는 LCM과 VAM이 있다.
3단계 : 최적 해인지 검토하여 아니면 해를 개선한다. 해의 검토와 개선 방법은 디딤돌법 (SSM)과 수정배분법 (MODI)이 있다.
그림 1. TSM Fig. 1. TSM
기존의 방법들은 다음과 같은 문제점이 있다.
(1) 불균형 수송문제는 가상 (Dummy) 행이나 열을 추가 하여 균형 수송인 상태로 만드는 불필요한 과정이 요구된다.
(2) 초기 해를 구하는 하나의 방법이 특정 문제에 대해서
[NCM]
/* 단순히 수송표의 왼쪽 상단으로부터 공급량과 수요량에 맞추 어 수송량을 배정하는 방법
행렬의 Northwest인 셀부터 시작.
for to /* 행에 대해 수행 for to /* 열에 대해 수행
행에 대해 각 셀 공급과 요구조건을 만족하도록 가능 한 많이 할당.
end
행과 열의 모든 요구조건을 만족하면 방법 종료.
end
[LCM]
/* 여러 수송경로 중에서 작은 비용을 갖는 경로부터 우선적으로 수송량을 배정.
행렬의 비용을 오름차순으로 정렬.
1. 현재의 수송표에서 최소비용을 갖는 셀에 최대한의 양을 배정.
2. 공급량과 수요량을 수정하되, 남은 양이 0이면 그 행이나 열을 지움. 만약 행과 열이 동시에 0이 되면 임의로 하나만 지우고 다른 하나는 남은 양을 0으로 둠.
3. 1, 2를 반복하여 하나의 행이나 열이 남으면 공급량과 수요량 에 맞게 나머지 배정.
[VAM]
/* 손실비용 (최선의 수송경로를 선택하지 못할 때 생기는 상대 적 손실)을 고려
1. 각 행의 손실비용 계산. ( : 2번째 작은 비용- 첫 번째 작은 비용)
각 열에 대해 손실비용 계산. ( ) 2. 행의 손실비용과 열의 손실비용 차이가 가장 큰 셀
확인
3. 셀의 행 또는 열에서 최소 비용인 셀에 최대한 많은 양을 배정. 만약 이 다수 존재시 행 또는 열에서 최소 비용 셀에 가능한 많은 양 배정.
4. 만약, 행과 열의 모든 요구조건을 만족하면 종료, 그렇지 않으 면 Step 5 수행.
5. 공급량과 수요량 수정, 남은 양이 0이면 그 행이나 열을 지움 만약 행과 열이 동시에 0이 되면 둘 중 하나만 지우고 다른 하 나는 0으로 둠
만약 하나의 행이나 열이 남게 되면 공급량과 수요량에 맞게 나머지 배정
go to Step 1.
[MODI] /* 최적여부 검사 및 해의 개선
1단계 : 최적여부 검사. 공급처와 수요처 제약식에 상응하는 쌍
대변수를 각각 라 하고, 기저변수(해당 셀에 값이 배 정되어 있는 변수) 에 대해, 으로 를 구 한다. (등식이 개, 미지수가 인 부정방정식 으로 나 중 임의로 한 개 값을 0으로 고정시켜 나머 지 값도 구한다.) 비기저변수 (배정되어 있지 않은 변수) 에 대하여 수정비용 를 구하여 이 값들이 모두 음수가 아니면 최적 해를 얻는다.
2단계 : 진입변수 결정. 1단계에서 구한 값 중 가장 작은 음수 (절대값이 가장 큰 음수)를 갖는 변수를 기저변수로 삼 는다.
3단계 : 탈락변수 결정. 선택된 진입변수로부터 시작하여 기저 변수들을 경유하여 제자리에 되돌아오는 폐쇄고리를 형 성한다. 폐쇄고리에 속한 변수들에 대해 출발점으로부터 교대로 수송량의 증가와 감소를 표시하여 감소에 해당 하는 값 중 가장 작은 값을 갖는 변수를 탈락시키고 그 값을 조정수송량으로 결정한다.
4단계 : 해의 개선. 형성된 폐쇄고리에 대해 3단계에서 정한 조 정수송량을 진입 변수에서 출발하여 교대로 증가ㆍ감소 시키고, 최적 해가 얻어질 때까지 위 과정을 반복한다.
는 최적 해를 얻을 수 있으나 다른 문제에 대해서는 최적 해를 얻는데 실패할 수 있다. 즉, 모든 상황에 적 합한 단일화된 하나의 방법이 존재하지 않는다. 따라 서 하나의 문제를 풀기위해서는 다수의 방법들을 적 용여야만 한다.
(3) 초기 해가 최적 해인지 검증하는 MODI 방법이 적용 에 어려움이 있어 대부분은 초기 해를 구하여 최적 해로 간주하기도 한다.
그림 2. 수송문제의 해를 구하는 방법
Fig. 2. Solution method for transportation problem
Ⅲ. 최적 수송 방법
본 장에서는 기존 방법들이 갖고 있는 문제점들을 모 두 해결한 최적의 단일화된 방법을 제안한다. 제안되는 방법은 불균형을 균형으로 수정하지 않는다. 또한. 기존 의 초기 해에 대해 최적 해인지 검증하는 과정을 거치지 않는다. 단지 주어진 문제에 대해 직접 방법을 적용하면 최적 해를 찾을 수 있다.
제안 방법은 행 (공급)에 대해 비용 증가 오름차순으 로 공급량을 모두 배정하는 초기 배정을 수행한다. 다음 으로 열 (요구)에 대해 초과 배정 ( ≥ ) 내림 차순으로 배정 조정 순위 ⋯를 결정하여 배정량을 조정한다. 배정 조정 방법은 현재 배정 조정 순 위 의 비용 에서 다음 배정 조정 순위 의 비 용 으로 배정량 를 이동시 비용 증가 (손실비 용)이 최대인 의 배정량은 조정하지 않고, 손실비용이 보다 작은 다른 배정량을 조정한다. 마지막 으로 배정량을 교환하여 수송비용을 줄일 수 있는 경우 가 발생하면 상호 교환하는 방법을 택하였다. 이 방법을 적용하여 손실 비용을 최소화시키면서 최적 해를 얻었는 지 검증하는 단계가 생략되었다. 제안된 방법은 거의 모 든 경우에 최적의 해를 찾을 수 있기 때문에 “최적 수송 방법 (Optimal Transportation Method, OTM)”이라 한 다. OTM의 상세한 내용은 그림 3에 제시되어 있다.
그림 4는 Beasley[6]에서 인용된 수송 문제로, 균형 수송 문제이다.
Beasley[6]는 QSB Package를 적용하여
을 얻었다.
수송 문제에 최적 수송 방법을 적용한 결과는 그 림 5와 같다.
그림 6은 Havlicek[6]에서 인용된 수송 문제로, 불 균형 수송 문제이다. 는 공급량 (51)이 요구량 (52) 보 다 작은 경우로, 기존의 방법들은 가상 행을 추가하여 해 를 얻었다. 수송 문제에 최적 수송 방법을 적용한 결 과는 그림 7에 제시하였다.
Havlicek[6]은 수송 문제에 NCM, LCM, VAM과 SSM을 적용하여 그림 8과 같이 다른 최적 해를 얻었다.
수송 문제의 최적 해는 SSM과 OTM의
임을 알 수 있다.
Ⅳ. 적용성 평가
1. 수송 문제의 최적 해 도출
그림 3. 최적 수송 방법
Fig. 3. Optimal transportation method
그림 4. 수송문제
Fig. 4. transportation problem
(a) 초기 배정과 배정 조정 순위 결정
(b) 배정 조정
(c) 해 개선
그림 5. 수송문제의 최적 수송 방법
Fig. 5. Optimal Transportation Method for Problem
그림 6. 수송문제
Fig. 6. transportation problem
그림 7. 수송문제의 최적 수송 방법
Fig. 7. Optimal Transportation Method for Problem
,
,
그림 8. 수송문제의 해
Fig. 8. Solution of problem
본 절에서는 그림 9의 13개 균형과 불균형 수송 문제 를 대상으로 최적 수송 방법의 적용성을 평가해 본다.
는 Nagi[7]와 Ntaimo[3]에서, 는 Adlakha와 Arsham[8]에서, 는 Berka[9]와 Miller[10]에서, 는 Optimalon Software[11]에서, 은 Jensen[12]에서, 은 Hiller와 Lieberman[13]과 Niu[14]에서, 는 Niu[14]에서,
은 Nagi[7]에서, 은 Gunesh[15]에서, 는 I-Shou 대학[16]에서, 는 강진규[4]에서 인용되었다.
(a) 수송문제
(b) 수송문제
(c) 수송문제
(d) 수송문제
(e) 수송문제
(f) 수송문제
(g) 수송문제
(h) 수송문제
(i) 수송문제
(j) 수송문제
(k) 수송문제
(l) 수송문제
(m) 수송문제 그림 9 수송문제 사례
Fig. 9. Experimental data of transportation problems
그림 9의 13개 수송 문제를 대상으로 최적 수송 방법 의 적용한 결과는 그림 10에 제시하였다. 또한, 각 수송 문제에 대해 원문에서 적용된 방법과 결과도 동시에 제 시하였다.
(a) 수송문제의 최적 해
(b) 수송문제의 최적 해
(c) 수송문제의 최적 해
(d) 수송문제의 최적 해
(e) 수송문제의 최적 해
(f) 수송문제의 최적 해
(g) 수송문제의 최적 해
(h) 수송문제의 최적 해
(i) 수송문제의 최적 해
(j) 수송문제의 최적 해
(k) 수송문제의 최적 해
(l) 수송문제의 최적 해
(m) 수송문제의 최적 해 그림 10. 최적 수송 방법
Fig. 10. Optimal transportation method
는 양의 정수 값 배정 원칙을 위배하여 실수 값을 배정하였다. 따라서 이 해는 잘못된 결과이다. 제안된 방 법은 13개 문제 모두에서 제안된 최적 수송 방법은 최적 해를 찾는데 성공하였다.
또한, 에 대해서는 새로운 최적 해를 찾았으며,
에 대해서는 양의 정수 값 배정 원칙을 준수하여 최적의 해를 찾는데 성공하였다. 결론적으로, 최적 수송 방법은 수송 문제에 대해 일반적으로 적용할 수 있는 방법으로 증명되었다.
2. 성능 평가 표 1. 최적 해 성능
Table 1. Performance of optimal solution
기존 방법
OTM 최적해 TSM
UVM PPM 기타 NCM LCM VAMMODI
(SSM)
균형 - - - - - - 2,726.5 2,726.5 2,726.5 불균형 1,220 1,105 1,005 1,000 - - - 1,000 1,000
균형
1,180 1,080 1,020 1,020 - - - 1,020 1,020
- - - - - 3,320 - 3,320 3,320
- - - - - - 152,535 152,535 152,535
- - - - - - 7,780
(실수) 7,780 (정수) 7,780
- - - - - - 46 46 46
- 270 210 200 200 - - 200 200
- - - - - - 315 315 315
- - 112 - - - - 100 100
- - 3,900 3,900 - - - 3,900 3,900
5,925 4,550 5,125 4,525 - - - 4,525 4,525
7,500 4,500 4,300 4,300 - - - 4,300 4,300
불균형 19,000 - - - 19,000 19,000
균형 21,300 - - - 21,300 21,300
최적 해 수 9/8 1/1 1/1 5/4 15/15
본 논문에서 실험에 적용된 불균형 수송 2개와 균형 수송 13개 데이터에 대해 최적 해를 평가한 결과는 표 1 에 제시되어 있다. 기존 방법들 중 TSM은 9개 중 8개에 서 최적 해를 찾았으나 2단계로 다양한 방법들을 적용해
야만 한다. 반면에 OTM은 TSM에 비해 단일 방법을 적 용하며, 불균형과 균형 의 15개 문제에서 모두 최적의 해 를 찾음을 알 수 있다. 또한, 과 에 대해서는 새로운 최적 해를 찾는데 성공하였다.
Ⅴ. 결론 및 향후 연구과제
본 논문에서는 수송 문제의 최적 해를 찾는 TSM 보 다 간단한 알고리즘을 제안하였다.
제안된 방법은 각 행에 대해 공급량을 최소 비용 오름 차순으로 배정하고, 열에 대해 배정된 양이 요구량을 초 과하는 열부터 배정을 조정하는 방법을 택하였다. 배정 방법은 다음 조정 순위 비용과 현 순위 비용과의 차이인 손실비용이 가장 큰 셀이 먼저 배정을 확정하는 방법으 로 손실비용을 최소화시키는 방법이다. 마지막으로 행의 최소 비용에 미 배정된 경우 또는 열의 최대 비용에 배정 된 경우에 대해 배정을 상호 교환하는 방법으로 최적 해 를 구하였다.
제안된 방법을 2개의 불균형 수송과 13개의 균형 수송 문제에 적용한 결과 모든 문제에 대해 최적 해를 구하는 데 성공하였다.
제안된 방법은 불균형 수송 문제를 균형 수송문제로 변환하는 과정을 적용하지 않으며, 초기 해를 구한 결과 에 대해 MODI로 최적 해인지 검증하는 과정도 거치지 않는 일관된 방법이다.
본 논문에서는 수송 문제의 최적 해를 연구하였다. 수 송 문제는 출발지에서 목적지까지 직접 수송하는 경우이 다. 추후 수송 문제의 다른 부류인 출발지에서 중간 경유 지까지 수송하고 경유지에서 다시 목적지로 수송하는 Transshipment 문제를 연구할 예정이다.
참 고 문 헌
[1] Wikipedia, "Transportation Problem,"
http://en.wikipe dia.org/wiki/Transportation_problem, Wikimedia Foundation Inc., 2012.
[2] W. L. Winston, J. B. Goldberg, and M.
Venkataramanan, "Introduction to Mathematical Programming: Operations Research," Vol. 1, 4th
edition, Duxbury Pr, 2003.
[3] L. Ntaimo, "Transportation and Assignment Problems," http://ie.tamu.edu/INEN420_2005Spring/
SLIDES/ Chapter 7.pdf, 2005.
[4] 강진규, “Operations Research," http://secom.hanbat.
ac.kr/or/ch06/right04.html, 한밭대학교, 2006.
[5] J. Havlicek, "Distance Learning Module for Management Science," http://orms.czu.cz/text/trans problem.html, Czech University of Agriculturee, 2008.
[6] J. E. Beasley, "Operations Research and Management Science: OR-Notes," Department of Mathematical Sciences, Brunel University, West London, 2004.
[7] R. Nagi, “IE 680 - Special Topics in Production Systems: Networks, Routing and Logistics,”
Department of Industrial Engineering, University at Buffalo (SUNY), Bruce Golden, U of MD and Introduction to Operations Research by Hiller and Lieberman, 2001.
[8] V. Adlakha and H. Arsham, "Managing Cost Uncertainties in Transportation and Assignment Problems," Journal of Applied Mathematics Decision Sciences, 2(1), 65-104, 1998.
[9] R. M. Berka, "A Tutorial on Network Optimization,"
http://home.eunet.cz/berka/o/English/networks/
networks.html, 1997.
[10] H. E. Miller, "Example (Transportation Problem),"
Accounting, Business and Economics, Muhlenberg College, 2004.
[11] Optimalon Software, "Transportation Problem (Minimal Cost)," http://www.optimalon.com/examples/
transport. htm, 2008.
[12] P. Jensen, “Network Flow Programming Modeling,"
Department of Mechanical Engineering, University of Texas at Austin, 1999.
[13] F. S. Hillier and G. J. Lieberman, "Introduction to Operations Research," 7th Ed., McGraw-Hill, 2001.
[14] S. C. Niu, "Introduction to Operations Research,"
School of Management, The University of Texas at Dallas, 2004.
[15] R. Gunesh, "The MODI and VAM Methods of
Solving Transportation Problems," http://pages.intnet.
mu/cueboy/education/notes/algebra/modivam.pdf, 1998.
[16] I-Shou University, Module B - Transportation and Assignment Solution Methods," Department of Industrial Engineering and Management, I-Shou University, 2007.
저자 소개
이 상 운
∙1987년 : 한국항공대학교 항공전자공 학과 (학사)
∙1997년 : 경상대학교 컴퓨터과학과 (석사)
∙2001년 : 경상대학교 컴퓨터과학과 (박사)
∙2003년 : 강원도립대학 컴퓨터응용과 전임강사
∙2004년 ~ 2007년 2월 : 국립 원주대학 여성교양과 조교수
∙2007년 3월 ~ 현재 : 강릉원주대학교 멀티미디어공학과 부 교수
<관심분야 :소프트웨어 프로젝트 관리, 개발 방법론, 분석과 설계 방법론, 시험 및 품질보증, 소프트웨어 신뢰성, 그래프 알고리즘>
∙E-mail : [email protected]