DOI QR코드

DOI QR Code

Algorithm for Grade Adjust of Mixture Optimization Problem

혼합 최적화 문제의 성분 함량 조절 알고리즘

  • Lee, Sang-Un (Dept. of Multimedia Eng., Gangneung-Wonju National University)
  • 이상운 (강릉원주대학교 과학기술대학 멀티미디어공학과)
  • Received : 2021.02.19
  • Accepted : 2021.08.06
  • Published : 2021.08.31

Abstract

Generally, the linear programming (LP) with O(n4) time complexity is applied to mixture optimization problem that can be produce the given ingredients grade product with minimum cost from mixture of various raw materials. This paper suggests heuristic algorithm with O(n log n) time complexity to obtain the solution of this problem. The proposed algorithm meets the content range of the components required by the alloy steel plate while obtaining the minimum raw material cost, decides the quantity of raw material that is satisfied with ingredients grade for ascending order of unit cost. Although the proposed algorithm applies simple decision technique with O(n log n) time complexity, it can be obtains same solution as or more than optimization technique of linear programing.

다양한 원재료를 혼합하여 원하는 성분 함유량을 가진 제품을 최소의 비용으로 생산하는 혼합 최적화 문제에 대해 일반적으로 O(n4)의 수행 복잡도의 선형계획법을 적용하고 있다. 본 논문에서는 이 문제에 대해 O(n log n)복잡도로 해를 얻을 수 있는 휴리스틱 알고리즘을 제안한다. 제안된 알고리즘은 합금 강판에서 요구하는 성분들의 함유량 범위를 충족시키면서 최소의 원자재비용을 얻기 위해, 원재료 단가 오름차순으로 성분별 함유량을 충족시키도록 원재료 양을 결정하였다. 3가지 사례에 대해 적용한 결과 제안된 알고리즘은 O(n log n)복잡도로 단순한 결정기법을 적용하였음에도 불구하고, LP의 최적화 기법과 동일하거나 보다 좋은 해를 얻을 수 있었다.

Keywords

Ⅰ. 서론

m개 성분에 대한 함유량을 갖고 있는 단가 ci,(i=1,2,3,...,n)인 Si개의 원자재들 (raw materials) 이있다. 이 원자재들을 혼합하여 m개 성분의 제약조건을 충족하는 제품을 최소비용 \(z=\min \sum_{i=1}^{n} c_{i} x_{i}\)로 생산하고자 한다. 이 경우 xi의 배정량을 구하는 문제를 혼합 최적화 문제 (mixture optimization problem, MOP)라 한다.[1]

MOP에 대해 Sutton과 Coates[2]은 스테인리스 생산공정의 혼합비율을 계산하는 방법을 제안하였으며, 강판에 대한 합금 원자재 혼합비율에 대해서는 Guéret et al.[3], Edvall[4]과 Hawley[5]가 있으며, 동물사료 혼합비율에 대해서는 Jensen과 Bard[1]가 있다. 이들 연구 결과 모두 선형계획법 (linear programming, LP)과 CPLEX 를 적용하고 있다. LP중 하나인 Ellipsoid 알고리즘의 수행 복잡도는 O(m4)로 알려져 있다.[6]

본 논문에서는 MOP에 대해 O(nlogn)의 다항시간 알고리즘을 제안한다. 2장에서는 Guéret et al.[3]이 제시한 MOP 사례를 고찰해본다. 3장에서는 MOP에 대해 O(nlogn)복잡도로 최적 해를 구할 수 있는 규칙을 제시한 휴리스틱 알고리즘을 제안한다. 4장에서는 제안된 알고리즘을 실제 데이터에 적용하여 알고리즘 적합성을 평가해 본다.

Ⅱ. 합금강판 생산 문제의 혼합 최적화

Guéret et al.[3]은 표 1과 같이 선박건조에 사용되는 500톤의 철강 강판을 주문받은 철강회사의 예를 제시하였다. 이 회사는 주문된 철강을 생산하기 위해 필요한 표 2의 7가지 종류의 원자재를 확보하고 있다. 이 회사는 500톤에 대한 성분 함유량을 충족시키면서, 최소의 비용으로 철강을 생산하고자 한다. 이 경우 어떤 원자재를 얼마나 사용해야 하는가가 문제이다.

표 1. P1 문제의 주문된 철강의 특성

Table 1. Characteristics of steel ordered of P1 problem

OTNBBE_2021_v21n4_177_t0001.png 이미지

표 2. 원자재 등급, 가용량과 가격

Table 2. Raw material grades, availabilities, and prices

OTNBBE_2021_v21n4_177_t0003.png 이미지

이 문제는 그림 1과 같이 표현할 수 있으며, 합금 강판생산 문제 (alloyed steel plate production problem, ASPPP)라 하며, 혼합 최적화 문제 (MOP)의 일종이다. Guéret et al.[3]은 표 1과 2의 데이터에 대해 선형계획법 패키지를 활용하여 표 3과 같이 €98, 121.5900을, Edvall[4]은 CPLEX를 MATLAB 프로그램으로 작성하여 €98, 121.6370의 결과를 얻었다.

표 3. P1 문제에 대한 LP와 CPLEX의 결과

Table 3. Results of LP and CPLEX for P1 problem

OTNBBE_2021_v21n4_177_t0002.png 이미지

OTNBBE_2021_v21n4_177_f0001.png 이미지

그림 1. 합금 강판 생산 공정

Fig. 1. Production process of alloyed steel plate

3장에서는 O(nlogn)의 복잡도로 MOP의 최적 해를 얻을 수 있는 규칙을 제시한 휴리스틱 알고리즘을 제안한다.

Ⅲ. 성분 함량 조절 알고리즘

본 장에서는 합금 강판에서 요구하는 성분들 (탄소, 구리, 망간 등)의 함유량 범위를 충족시키면서 최소의 원자재비용을 얻기 위해, 원자재의 단가 오름차순으로 정렬하고, 성분 함유량을 조절하는 단순한 방법을 제안한다.

제안된 알고리즘을 성분 함량 조절 알고리즘 (grade adjust algorithm, GAA)이라 하며 다음과 같이 수행된다.

Step 1. 원자재들을 단가 (unit cost) 오름차순으로 정렬한다.

/* 수행 복잡도 : O(nlogn) */

Step 2. 해당 성분들을 함유하고 있는 원자재들 개수를 파악한다. /* 수행 복잡도 : O(n) */

최소 개수를 가진 성분부터 오름차순으로 해당 원자재의 실제 투입량을 결정한다. 이 경우, 최종 합금 강판의 성분 함유량 범위를 충족시켜야 하며, 원자재 투입량은 단가 오름차순으로 조절한다.

Step 3. 총 비용 최소화를 위한 원자재 량 조절 /* 수행 복잡도 : O(n) */

성분 함유량 범위를 만족시키면서 최소 비용원자재를 보다 많이 사용할 수 있는 경우 원자재 투입량 조절

Guéret et al.[3]은 MOP를 최적화 문제로 보아 O(n4) 수행 복잡도를 갖는 선형계획법의 최적화 문제를 풀고자 한 반면 제안된 알고리즘은 결정 문제로 보고 O(nlogn)복잡도로 해를 구할 수 있었다.

Ⅳ. 실험 및 결과 분석

본 장에서는 첫 번째로, Guéret et al.[3]이 제시한 표 1과 2의 문제에 대해 GAA를 적용하여 본다. 표 1과 2의 문제에 대해 GAA를 수행한 결과는 표 4에 제시되어 있다.

표 4. P1 문제에 대한 GAA의 결과

Table 4. Results of GAA for P1 problem

OTNBBE_2021_v21n4_177_t0004.png 이미지

첫 번째 표는 단가 오름차순으로 정렬하고 각 성분의 함유량을 , C는 2개, Cu는 5개, Mn은 4개의 원자재가 함유하고 있다. 따라서 첫 번째로, C를 포함한 Iron alloy #1과 Iron alloy #2 중에서 최소의 비용이 소요되는 Iron alloy #1을 선택하였다. Iron alloy #1은 C(2.5%)인 400톤을 사용할 수 있으며, 500톤에 대한 함유량은 400/500* 2.5%=2.0%로 2.0%≤C≤3.0%의 요구조건을 충족시킨다. 두 번째 표는 Aluminum alloy #1과 Copper alloy #2로 Mn 함유량을 조절하고, 나머지는 Cu의 함유량을 충족시키기 위해 최소 단가인 Iron alloy #3을 배정한 결과이다. 세 번째 표는 Cu와 Mn 함유량을 충족시키면서 총 비용을 최소화시키도록 Iron alloy#3, Aluminum alloy#1과 Copper alloy#2로 조절한 결과이다.

다음으로, Hawley[5]에서 인용된 표 5의 P2 문제에 대해 제안된 알고리즘을 적용하여 보자. 이 문제는 4가지 종류의 원자재의 밀도, 탄소와 형광물질 함유량을 나타내고 있으며, 생산되는 제품의 탄소와 형광물질에 대한함유량 제약조건 범위가 주어졌다. 만약, 1 kg을 기준으로 최소의 비용으로 제품을 생산한다면 어떤 원자재를 얼마의 양으로 혼합해야 하는가가 문제이다. 이 문제에 대해 Hawley[5]는 LP를 적용하여 표 6과 같이 $1.845000/kg의 결과를 얻었다. 표 5에 대해 GAA를적용한 결과는 표 7에 제시되어 있으며, Hawley[3]와 동일하게 $1.845000 /kg의 결과를 얻었다. 표 5에 대한 GAA는 비용 오름차순은 원자재 C, A, D, B 순이며, C의 배정량을 결정한 결과 원자재 A는 밀도 (density)의 상한값을 초과하여 배정되지 않는다. 따라서 원자재 D, B 로 성분 C와 P의 함유량을 조절하도록 배정량을 결정한 초기치를 얻었다. 이 초기치에 대해 최소 비용이 되도록 원자재 C, D, B의 양을 조절하여 최종 결과를 얻었다.

표 5. P2 문제의 철강 특성

Table 5. Characteristics of steel for P2 problem

OTNBBE_2021_v21n4_177_t0005.png 이미지

표 6. P2 문제에 대한 LP의 결과

Table 6. Results of LP for P2 problem

OTNBBE_2021_v21n4_177_t0006.png 이미지

표 7. P2 문제에 대한 GAA의 결과

Table 7. Results of GAA for P2 problem

OTNBBE_2021_v21n4_177_t0007.png 이미지

마지막으로, Jensen과 Bard[5]에서 인용된 표 8의 P3 문제에 대해 제안된 알고리즘을 적용하여 보자.

표 8. 동물사료 P3 문제의 특성

Table 8. Characteristics of animal feed P3 problem

OTNBBE_2021_v21n4_177_t0008.png 이미지

이 문제는 3가지 종류의 원자재로 동물사료를 생산하는 경우이다. 만약, 1 kg을 기준으로 최소의 비용으로 동물사료를 생산한다면 어떤 원자재를 얼마의 양으로 혼합해야 하는가가 문제이다. 이 문제에 대해 Jensen과 Bard[5]는 LP를 적용하는 수식만을 제시하였고, 해는 구하지 않았다. 표 8에 대해 GAA를 적용한 결과는 표 9에 제시되어 있으며, ¢49.2040/kg의 결과를 얻었다.

표 9. P3 문제에 대한 GAA의 결과

Table 9. Results of GAA for P3 problem

OTNBBE_2021_v21n4_177_t0009.png 이미지

P3에 대한 GAA는 Limestone, Corn과 Soybean meal의 초기치를 결정하고, Corn과 Soybean meal의 양을 조절하여 최적 해를 얻었다.

제안된 GAA를 LP, CPLEX와 성능을 비교한 결과는 표 10에 제시하였다. GAA는 P1에 대해서는 최적의 값을 나타내었으며, P2에 대해서는 LP와 동일한 값을, P3 에 대해서는 새로운 해를 구하였다.

표 10. 알고리즘 성능 비교

Table 10. Compare with algorithm performance

OTNBBE_2021_v21n4_177_t0010.png 이미지

결론적으로, 제안된 알고리즘은 LP의 O(n4)의 최적화 과정을 O(nlogn)배정 과정으로 수행 복잡도를 단순화 시킬 수 있었다.

제안된 알고리즘은 MOP 알고리즘들 중에서 가장 간단히 해를 구할 수 있는 관계로, MOP 문제에 직면한 경우 선형계획법 전문가의 도움 없이도 Excel을 활용해 자체적으로 해결할 수 있는 방법을 제공하였다.

References

  1. P. A. Jensen and J. F. Bard, "Operations Research Models and Methods: Blending or Mixing Problem", http://www.me.utexas.edu/~jensen/or_site/models/unit/lp_model/blending/blend1.html, Feb. 2000.
  2. D. W. Sutton and P. A. Coates, "On-line Mixture Calculation System for Stainless Steel Production by BSC Stainless: the Least Through Cost Mix System (LTCM)", Journal of the Operational Research Society, Vol. 32, No. 3, pp. 165-169, Mar. 1981, https://doi.org/10.2307/2581058
  3. C. Gueret, X. Prins, and M. Sevaux, "Applications of Optimization with Xpress-MP: 6.1 Production of Alloys", Dash Optimization Ltd., pp. 62-65, Feb. 2005.
  4. M. Edvall, "Production of Alloys", Tomlab Optimization Inc, http://tomsym.com/examples/tomsym_productionofalloys.html, Apr. 2009.
  5. D. E. Hawley, "Excel Hacks: 100 Industrial- Strength Tips and Tools, Alloy Mixture Optimization (Minimize Expenses)", http://www.ozgrid.com/Services/linear-alloy-mixture.htm, O'Reilly Media, Mar. 2004.
  6. D. Alevras and M. W. Padberg, "Linear Optimization and Extensions: Problems and Extensions", Universitext, Springer-Verlag, 2001.