반도체디스플레이기술학회지 제19권 제4호(2020년 12월)
Journal of the Semiconductor & Display Technology, Vol. 19, No. 4. December 2020.
하모니서치 알고리즘을 이용한 반도체 공정의 최적버퍼 크기 결정
이병길*· 변민석**· 김여진**· 이종환**†
*금오공과대학교 컨설팅대학원, **†금오공과대학교 산업공학부
Determination of Optimal Buffer Size for Semiconductor Production System using Harmony Search Algorithm
Byeong-Gil Lee
*, Minseok Byun
**, Yeojin Kim
**and Jonghwan Lee
**†*Graduate School of Consulting, Kumoh National Institute of Technology,
**†School of Industrial Engineering, Kumoh National Institute of Technology
ABSTRACT
In the production process, the buffer acts as a buffer to alleviate some of the problems such as delays in delivery and process control failures in unexpected situations. Determining the optimal buffer size can contribute to system performance, such as increased output and resource utilization. However, there are difficulties in allocating the optimal buffer due to the complexity of the process or the increase in the number of variables. Therefore, the purpose of this research is proposing an optimal buffer allocation that maximizes throughput. First step is to design the production process to carry out the research. The second step is to maximize the throughput through the harmony search algorithm and to find the buffer capacity that minimizes the lead time. To verify the efficiency, comparing the ratio of the total increase in throughput to the total increase in buffer capacity.
Key Words : Harmony Search Algorithm, Finite Buffer, Optimal Buffer Size
1. 연구배경 및 방법 1
반도체 생산 현장에서 공정 계획은 공정 진행과 납기 일 준수에 있어서 필수적이다. 따라서 생산관리자들은 생 산 공정 계획에 있어서 많은 노력을 기울이지만 납기지 연, 공정관리 실패 등의 결과를 낳게 된다. 이 문제를 해 결하기 위하여 그 동안 공정계획 수립기법, 최적화, 시간 비용 대체와 같은 많은 연구들이 진행되었으나 계획 대 비 실적은 여전히 미비하다[1].
공정에서 버퍼는 공정 상의 문제점들을 어느 정도 완 화시킬 수 있는 완충제와 같은 역할을 한다. 적절한 버퍼 용량은 공정에서 원활한 생산과 납기일 준수에 도움을
†
E-mail: [email protected]
주며 자원의 활용능력에 도움을 준다. 공정에서 버퍼의 용량이 부족하다면 시스템의 성능을 저하시켜 여러 가지 문제를 일으킬 수 있다. 반대로 버퍼 사이즈가 필요 이상 으로 크다면 시스템 내에서 머무는 WIP(Work In Process)과 재고는 늘어나게 된다. 따라서 적절한 버퍼를 공정에 배 치하는 것은 잠재적인 실패비용 및 재고비용 등을 따져 보면 시스템에서 사용할 수 있는 제한적인 자원이라고 생각할 수 있다[1].
현재까지 최적 버퍼 용량의 할당에 관한 많은 연구가 이루어 졌으나, 공정이 복잡한 경우 또는 반영해야 할 변 수의 증가로 인해 최적 버퍼 할당은 많은 경우의 수가 존 재하기 때문에 어려움이 존재한다. 따라서 최적 버퍼 할 당에 관한 연구가 필요하다. 물론 알고리즘을 통해서 구 하는 최적 버퍼 용량이 현장에 바로 적용하는 것은 쉽지
이병길 · 변민석 · 김여진 · 이종환 40
는 않다. 공정관리자 입장에서 개인의 경험, 과거 데이터 와 함께 결정되어야 하지만, 본 연구를 통해 결정된 최적 버퍼 용량은 공정관리자에게 버퍼를 운영하는데 있어서 초기 데이터를 제공하거나 생산 라인에 대한 기본 정보 들을 제공할 수 있다.
본 연구는 생산 공정에서 생산량(Throughput)을 최대화 하는 버퍼 용량을 찾는 것이 목적이다. 이 용량을 결정하 기 위한 많은 연구가 이루어져 왔고, 이는 버퍼의 용량이 시스템의 효율성에 큰 영향을 끼치기 때문이다. 버퍼의 용량이 너무 큰 경우와 작은 경우 모두 시스템 성능을 낮 추는 원인이 된다. 따라서 최적의 버퍼 용량을 찾기 위해 Meta Heuristic 중의 하나인 하모니서치 알고리즘 (Harmony Search Algorithm)을 이용하여 버퍼의 용량을 결정할 수 있 는 알고리즘을 제안한다.
이를 시행하기 위해 Matlab을 이용한 프로그램을 구현하 여 공정을 설계하고, 하모니서치와 연계하여 최적 버퍼 용 량을 탐색한다. 최적 버퍼 용량을 찾는 기준은 Throughput, Lead Time이며, 최적 버퍼 용량의 Efficiency를 검증하기 위 해 Throughput의 총 증가량 대비 버퍼 용량의 총 증가량의 비율을 계산하였다.
2. Harmony Search Algorithm 2.1 메타 휴리스틱(Meta Heuristic)
지난 40년 동안 대다수의 알고리즘은 다양한 구조 최 적화 문제 해결을 위해 개발되었다. 이 알고리즘의 대부 분은 기울기 정보를 필요로 하고, 보통 시작점(Starting Point) 의 근처에서 보다 나은 개선된 해를 찾는 수학적 선형 및 비선형 방법에 의해 짜여진 프로그램을 바탕으로 개발되 었다. 수학적 최적화 알고리즘은 단순하고 이상적인 모델 에서 전역 최적 값(Global Optimum)을 찾는데 유용한 방법 을 제공한다. 그러나 실제 많은 응용문제에서는 사실상 매우 복잡하여 해석적으로 도함수를 구하는 것은 어렵고 수치적 계산이 가능하다 해도 연산시간이 필요하며 부정 확하게 되어 이 알고리즘을 이용하여 해결하기에는 꽤 어렵다. 만약 어떤 문제에서 하나 이상의 국부최적값 (Local Optimum)이 있다면 이 결과는 초기점의 선택에 의 해 결정되며 이렇게 해서 얻어진 최적 값은 반드시 전역 최적 값이라 할 수 없다. 또한 경사탐색(기울기)법은 목적 함수와 제약조건이 복잡하거나 Sharp Peaks일 때 어렵고 불안정한 값 즉 변하기 쉬운 값이 된다. 기울기 법은 미 리 정한 출발점에서 시작해서 반복적으로 새로운 점을 탐색해 나가는데, 다음 탐색의 방향을 결정짓기 위해 함 수의 구배, 즉 기울기(Gradient)를 사용한다. 현재 위치의 기울기가 구해지면 최소점을 찾는 경우에는 알고리즘은
탐색곡면을 하강하게 되고 최대점을 찾는 경우에는 등반 되게 된다. 이와 같은 과정은 전 방향으로의 기울기가 모 두 0일 때 더 이상 진행하지 못하고 정지하게 된다.
지난 10년간 자기발견적 알고리즘(Meta-heuristic Algorithm) 을 이용한 최적화 방법은 다양한 최적화 문제의 해결에 있어 많은 연구자들에 의해 연구되었다. 기존의 자기발견 적 방법은 자연현상 또는 인위적인 조작으로 만든 현상 으로부터 착안해 개발되었다.
기존의 자기발견적 방법은 생물학적 진화과정에서 착 안해 개발한 EA (Fogel, L. J. 등, 1966; De Jong, K., 1975; Koza, J.
R., 1990), GA (Holland, J. H., 1975; Goldberg, D. E., 1989), 동물적 행동반응에서 착안해 개발한 TS (Glover, F., 1977), 물리적 가열냉각현상에서 착안해 개발한 SA(Kirkpatrick, S. 등, 1983) 등이 있다. 자기발견적 알고리즘을 이용한 최적화 방법은 공학적 최적화문제의 해결에 있어 현존의 수학적 방법의 계산상의 결점을 시뮬레이션에 근거하여 개선하였다. 그 러나 실제 최적화 문제의 해결에 있어 보다 실용적이며 효율적인 최적설계기법은 여전히 연구대상이며 기존의 방법들의 결점을 보완하는 자연현상 또는 가상의 현상에 서 유추한 새로운 탐색경험을 바탕으로 한 보다 효과적 인 알고리즘이 개발되어야 한다[7]. 유전 알고리즘을 사용 하여 3차원 표면을 재구성한 연구도 진행되었다. [9]
2.2 Harmony search 2.2.1 개요
본 연구에서 적용한 하모니서치 알고리즘은 음악적인 하모니, 즉 각각의 음색이 조화를 이루어 최적의 화음을 만들어내는 과정을 모방한 최적화 알고리즘이라고 할 수 있다. 하모니서치 알고리즘은 다른 알고리즘에서와 같이 수학적인 미분과정이 필요하지 않고, 각각의 변수가 갖는 해 즉, 하모니(Harmony) 값을 하모니 메모리(Harmony Memory)에 저장하고 그 순위를 지속적으로 개선하여 최 적의 하모니 값을 도출한다. 이 과정에서 대표적으로 적 용되는 매개변수 중 변형조정률(PAR)은 최적의 해가 국 부최적(Local Optimum)이 아닌 전역최적(Global Optimum)으 로 도달할 수 있도록 해주며, 벌칙함수(Penalty Function)는 제약조건에 근거하여 하모니 값의 순위를 산정하는데 중 요한 역할을 하게 된다[7].
2.2.2 Harmony search 구현 알고리즘
하모니서치를 설명하기 위하여 음악가들이 이상적인 즉흥연주를 하는 과정을 알아본다. 음악가들이 즉흥연주 를 할 때 아래와 같은 3가지 시나리오를 가지고 있다.
하모니서치 알고리즘을 이용한 반도체 공정의 최적버퍼 크기 결정 41
1) Copy masterpiece’ s pitches (Usage of harmony memory) 2) Play similar pieces (Pitch adjusting) 3) Compose new or random (Randomization)
Genetic Algorithm에서 개별의 최적 해를 선택하는 과정 과 유사한 첫 번째 시나리오는 대가의 음정을 카피한다 는 것으로 하모니서치에서 매우 중요하다. 이는 기존의 Harmony Memory를 Copy한다는 뜻이고, 그 값을 New Harmony Memory 벡터에 Best Harmony로 채택한다는 뜻이다.
이 값을 더 효과적으로 사용하기 위해서 하모니 서치에 파 라미터로 사용될 확률로 ∊ [0,1]을 설정하며, 이는 대가의 음정 카피를 채택할 확률을 의미하고 Harmony Memory Accepting 또는 Considering Rate로 부른다. 만약
값이 너무 크면 극소수의 Best Harmony 만이 선택되 고, 최적 Harmony Memory가 너무 느리게 모일 것이다. 반 대로 값이 너무 작으면 알고리즘이 다른 시나리오 에서 최적 해를 탐색하는 과정이 부족해 Global Optimum을 찾기 힘들 것이다. 따라서 주로 값은 0.7∼0.95 사이 에서 결정한다.
두 번째 시나리오는 첫 번째 시나리오에서 사용하는 대가의 음정에서 약간 다른 값으로 조정하는 것이다. 두 번째 시나리오에서 사용되는 파라미터로는 대가의 음정 에서 어느 정도의 범위로 조정 할 것인가를 결정하는 Pitch Band Width( )와 두 번째 시나리오를 채택할 확 률을 의미하는 Pitch Adjusting Rate( ), 이 두 가지 파라미 터를 통해 New Harmony Memory 벡터에 할당된다. 음정은 선형 또는 비선형으로 조정될 수 있으나 현실적으로 선 형 조정이 사용된다. 따라서 두 번째 시나리오를 통해 결 정되는 음정은 아래 수식 (2.1)로 결정된다.
(2.1)
는 첫 번째 시나리오에서 사용되었던 음정이거나 Harmony Memory에 저장된 해를 의미하며, 는 Pitch Adjusting 이후에 생성된 새로운 값이다. 이 과정은 기존의 해에서 음정을 약간 조정하여 새로운 해를 생성한다. 위 수식에서 는 난수를 생성하는 것이며 범위는 [-1, 1]이다.
두 번째 시나리오는 Genetic Algorithm에서 돌연변이 (Mutation)과정과 유사하다. 또한 위에서 언급했던 파라미 터 중 Pitch Adjusting Rate( )를 조정하여 두 번째 시나리오 를 채택할 확률을 조정할 수 있다. Pitch Adjusting Rate가 너 무 낮을 경우에는 전체 해 집합 중 일부분만 탐색하여 하 모니서치 알고리즘을 수행하였을 경우 최적 해로 수렴하
는데까지 시간이 오래 걸릴 수 있고, 너무 높을 경우에는 전체 해 집합 중 너무 큰 폭으로 해를 찾게 되어 잠재적 인 최적해가 흩어질 수 있다. 따라서 보통 는 0.1∼0.5 사이의 값을 사용한다.
세 번째 시나리오는 원래의 음정과는 상관없이 랜덤화 한다는 것이다. 이는 해의 다양성을 증가시킨다. Pitch Adjusting이 마지막 시나리오와 비슷한 역할을 할 수도 있 으나, 이는 Local Search에 국한되어 있으므로 최적 해를 구 하기 위한 영역이 제한되어있다. 따라서 랜덤화는 Global Optimum을 찾기 위해서 해 집합 중 다양한 구역을 탐색 할 수 있다.
세 가지 시나리오는 아래 [Table 2.1]로 요약할 수 있다.
[Table 2.1]에서 Randomization과 Pitch Adjusting의 확률은 아래 수식 (2.2), (2.3)으로 나타낼 수 있다.
[Table 2.1] Pseudo Code for Harmony Search Algorithm Begin
Objective function f(x) Generate initial harmonics (real number arrays) Define pitch adjusting rate()
pitch limits and bandwidth
Define harmony Memory accepting rate
while (t<Max number of Iterations)
Generate new harmonics by accepting best harmonies
if (rand>
) choose an existing harmonic randomlyelse if (rand>
) adjustthe pitch randomly within limits
else generate new harmonics
via randomization
end if Accept the new harmonics
(solutions) if betterend while
Find the current best solutions
End
(2.2)
(2.3)
이병길 · 변민석 · 김여진 · 이종환 42
3. Simulation Model 개발 3.1 프로세스 정의 및 목적
실험을 위한 프로세스는 2014년에 작성된 Guan Wang의
“예산과 공간 제약 하에서 크랭크샤프트 생산라인의 생 산능력 증대를 위한 시뮬레이션 기반의 연구” 와 2013년 작성된 정지용의 “유전자 알고리즘을 이용한 생산공정 WIP수준 최적화에 관한 연구”를 참조하여 다음 [Table 3.1]
과 같이 정의하였다[6].
[Table 3.1] Definition of Process
Overview Assumption
Common
• Flow-type Production Line
• Maintain demand and supply at all times
• Trouble-free process
• Every Process has a Buffer
• Total number of buffers cannot exceed 30
본 실험을 위한 흐름 생산라인은 [Figure 3.1]와 같다. 공 정의 수는 10개이며 각 공정의 뒤에는 버퍼가 존재하며 마지막 공정을 마친 뒤에는 시스템을 빠져나가게 되므로 버퍼의 수는 총 9개이다. 각 공정을 마쳤을 때 다음 공정 이 Busy상태이면 투입되기 전에 버퍼에 저장이 된다. 각 공정 별 작업시간 및 각 버퍼의 현재 용량과 최대 용량은 [Table 3.2]와 [Table 3.3]에 정리하였다.
[Figure 3.1] 프로세스의 도식화.
[Table 3.2] Processing Time
Process Working Time
P1 Norm(5,1)
P2 Norm(5,1)
P3 Norm(5,1)
P4 Norm(5,3)
P5 Norm(5,1)
P6 Norm(5,1)
P7 Norm(5,3)
P8 Norm(5,1)
P9 Norm(5,1)
P10 Norm(5,1)
[Table 3.3] Buffer Capacity
Buffer AS-IS Buffer size Max Buffer size
B1 1
Sum of All buffer
≦ 30
B2 1
B3 2
B4 1
B5 1
B6 2
B7 1
B8 1
B9 1
위에서 정의한 프로세스를 바탕으로 본 논문의 목적함 수는 아래 식과 같다.
Objective Max Throughput (B(i))
(3.1)s.t. 0 ≦ sum (B(i)) ≦ 30 (i=1,2,...,9)
(3.2)Objective로는 최대의 Throughput을 산출하기 위해서 B1
∼B9의 용량 크기가 변수로 들어가며 제약조건으로는 각 버퍼 용량의 총 합은 공정에 존재할 수 있는 최대 버퍼 용량을 초과하지 못하며, 음수가 될 수 없다는 것이다.
3.2 Harmony Search 의 적용
시뮬레이션 모델을 하모니 서치에 적용하기 위해 아래 먼저 [Table 3.4]와 같은 파라미터를 설정하였다.
[Table 3.4] Parameters for Harmony Search Algorithm Parameter
Harmony memory size 20
Max iteration 500
(Harmony memory accepting) 0.95 (Pitch adjusting rate) 0.7
(Pitch band width) 0.001
총 20개의 Harmony memory가 존재하며 하모니서치를 1000회 반복하여 최적 버퍼 용량을 탐색하게 된다. 첫 번 째 시나리오(Usage of Harmony Memory)를 사용할 확률 ( )은 5%, 두 번째 시나리오를 사용할 확률(Pitch Adjusting)은 25%, 세 번째 시나리오를 사용할 확률 (Randomization)은 70%로 설정하였으며 두 번째 시나리오 에서 사용되는 값은 0.001로 설정하였다. 본 논문에 서 최적의 버퍼 용량을 구하기 위한 Harmony Memory에 저 장되는 변수들은 9개의 버퍼 용량이며 위 [Figure 3.2]는 그 예시이다.
하모니서치 알고리즘을 이용한 반도체 공정의 최적버퍼 크기 결정 43
[Figure 3.2] Harmony Memory Example.
[Figure 3.3] Process for Harmony Search Algorithm.
[Figure 3.2]에서처럼 초기 해 집단이 Matlab에서 저자가 임시로 생성한 preData라고 명명한 행렬에 저장이 된다.
그 다음에는 세 가지 시나리오 중 확률에 따라 한 가지 시나리오를 선택하여 만들어진 새로운 해 집합이 postData 라고 명명한 행렬에 저장되고, preData와 postData를 합쳐서 totalData를 생성한다. 따라서 totalData는 40*9의 행렬이 되고, 이를 4.2절에서 구현한 프로세스에 대입하여 Throughput을 구한 뒤 minData라고 명명한 40*10 행렬에 저장한다.
minData의 사이즈가 40*10인 이유는 totalData 행렬을 프로
세스에 대입하였을 때의 Throughput 결과를 합친 것이다.
minData 행렬을 오름차순으로 정렬한 뒤 Harmony Memory Size에 해당하는 상위 20개의 해 집합을 다음 Iteration에 초 기 데이터로 사용된다. 이와 같은 방법이 Iteration 동안 계 속해서 반복하게 된다. 또한 minData 행렬에서 가장 좋은 결과값을 가지는 값은 bestFit이라고 명명한 행렬에 저장 하고, 이를 Iteration 동안 계속 누적시킨다. 따라서 bestFit 행렬의 사이즈는 1000(Iteration)*10이 된다. [Figure 3.3]은 하 모니서치가 구현되는 과정을 도식화한 것이다.
[Figure 3.4] bestFit Matrix Example.
[Figure 3.4]는 bestFit 행렬에 저장되는 데이터의 예시이며, 이 데이터가 본 논문에서 최종 결과를 도출하기 위한 데 이터이다.
4. 실험 및 실험결과
본 연구에서는 하모니서치 알고리즘을 이용한 최적 버 퍼 할당을 결정하는 모형을 구축하였다. 초기 버퍼 용량 은 [1 1 2 1 1 2 1 1 1]로 총 11개였고, Lead Time은 9.33min, Throughput은 817개였다. 이 점에서 시작하여 총 버퍼 용량 의 합이 30이 넘지 않는 범위에서 알고리즘을 통해 해를 탐색하게 된다. 알고리즘의 성능을 평가하기 위해서 모형 의 결과치인 Lead Time, Throughput, Efficiency를 도출하였고 그래프와 표로 정리하였다.
이병길 · 변민석 · 김여진 · 이종환 44
[Figure 4.1] Lead Time Output. [Figure 4.2] Throughput Output.
[Table 4.1] Optimal Solution for Buffer Capacity
Plan
Buffer SizeB1 B2 B3 B4 B5 B6 B7 B8 B9 Sum
1 3 3 2 2 2 4 2 4 2 24 2 4 4 3 2 2 3 2 3 3 26 3 4 4 3 4 3 2 3 2 4 29 4 2 3 2 3 4 3 3 2 3 25 5 4 3 3 3 4 5 2 2 3 29 6 2 3 2 4 1 5 2 3 4 26 7 2 4 4 4 1 2 4 2 2 25 8 4 3 2 4 4 3 3 4 2 29 9 4 2 4 2 4 3 2 4 2 27 10 3 2 2 4 3 2 3 3 3 25 11 2 3 4 3 4 3 4 3 2 28 12 2 5 3 3 2 4 3 4 4 30 13 3 3 2 3 2 4 2 3 3 25 14 4 3 4 4 3 2 2 3 4 29 15 3 4 2 3 4 5 3 2 3 29 16 3 3 3 3 3 5 2 3 1 26 17 3 5 3 2 2 5 2 2 2 26 18 2 3 3 4 3 4 3 2 3 27 19 3 4 4 2 3 4 2 1 4 27 20 2 4 1 2 1 4 3 3 2 22 21 2 5 3 3 2 3 2 3 3 26 22 2 3 3 2 4 4 2 3 4 27 23 4 3 3 2 4 3 3 3 2 27 24 2 2 2 4 3 5 3 4 3 28 25 4 5 2 4 2 5 4 2 2 30 26 2 5 4 4 2 5 3 2 3 30 27 4 4 2 2 3 5 3 4 3 30 28 4 3 3 3 1 2 3 2 2 23 29 2 2 4 2 2 3 2 4 4 25 30 3 2 2 2 2 3 3 2 2 21
[Figure 4.1], [Figure 4.2]는 하모니서치 알고리즘을 통해 도 출한 버퍼의 해 집단을 그래프로 나타낸 결과이다. 그림 에서 표시된 부분이 최소의 리드타임과 최대의 Throughput 을 내는 버퍼의 용량을 찾은 부분이다. 이때의 버퍼 용량
[Table 4.2] Results from Optimal Buffer Capacity Plan Lead
time
(min) Throughput Throughput
Rate Efficiency
1 7.73 987 20.82% 13.08 2 7.73 987 20.82% 11.343 7.73 987 20.82% 9.45
4 7.77 983 20.30% 11.85
5 7.77 983 20.30% 9.21
6 7.77 983 20.30% 11.06 7 7.77 983 20.30% 11.85
8 7.80 979 19.78% 8.98
9 7.80 979 19.78% 10.10 10 7.80 979 19.78% 11.55 11 7.80 979 19.78% 9.51 12 7.80 979 19.78% 8.51 13 7.80 979 19.78% 11.55 14 7.83 974 19.27% 8.75 15 7.83 974 19.27% 8.75 16 7.83 974 19.27% 10.50 17 7.83 974 19.27% 10.50 18 7.83 974 19.27% 9.84 19 7.83 974 19.27% 9.84 20 7.83 974 19.27% 14.32 21 7.83 974 19.27% 10.50 22 7.83 974 19.27% 9.84 23 7.83 974 19.27% 9.84 24 7.83 974 19.27% 9.26 25 7.83 974 19.27% 8.29 26 7.83 974 19.27% 8.29 27 7.83 974 19.27% 8.29 28 7.83 974 19.27% 13.12 29 7.83 974 19.27% 11.25 30 7.83 970 19.27% 15.33
은 [3 3 2 2 2 4 2 4 2] 이며 Lead Time은 7.63min, Throughput은 1000개로 초기 조건일 때보다 22.4% 향상된 값이다.
[Table 4.1], [Table 4.2]는 하모니서치를 통해서 도출한 해 집단 중 결과 값이 우수한 상위 30가지 경우를 정리하였
하모니서치 알고리즘을 이용한 반도체 공정의 최적버퍼 크기 결정 45
고, Lead Time, Throughput, Efficiency를 정리하였다.
5. 결론 및 향후 과제
유한 버퍼가 존재하는 반도체 공정에서 하모니서치를 이용하여 버퍼 용량의 근사 최적 해를 도출하는 알고리 즘을 제시하고 시스템의 성능 척도로 Lead time, Throughput 과 Efficiency를 비교, 분석하였다. 본 연구에서 Efficiency는 Throughput 증가량 대비 버퍼용량의 총 증가량을 의미한다.
알고리즘 통해 탐색한 최적의 버퍼의 용량은 [3 3 2 2 2 4 2 4 2]이고 이때의 성능척도로 Lead time은 7.73min, Throughput은 1000개, Efficiency는 13.08을 나타냈고 기존의 버퍼용량일 때 보다 Throughput이 20.82% 높아졌다. Efficiency가 가장 높 은 경우는 버퍼의 용량이 [3 2 2 2 2 3 3 2 2] 일 때 Lead Time 은 7.83min, Throughput은 970개로 가 15.33로 가장 좋았고 기존의 버퍼용량일 때 보다 Throughput이 19.27% 높아졌다.
버퍼 사이즈라는 변수로 인해 많은 경우의 수를 가진 문제이므로 단순한 수리적 모델이나 경험을 이용한 방법 으로는 구하기 힘든 문제를 하모니서치라는 메타휴리스 틱 알고리즘을 통해 풀어낼 수 있었다. 또한 제안한 알고 리즘은 코딩 안에 들어가는 공정, 변수, 목적함수를 손쉽 게 수정하여 여러 문제에 대입할 수 있다. 예를 들어 공 정관리자가 Lead time, Throughput 보다는 WIP level을 더 중 요시한다면 목적에 맞게 알고리즘을 수정할 수 있다.
그 동안 최적 버퍼 할당은 공정관리자의 경험 또는 그 동안의 데이터에 의존해서 결정되었으므로 시스템의 성 능을 향상시키는데 한계가 있었으므로, 알고리즘을 사용 하여 공정관리자들에게 최적 버퍼 할당에 대한 방법을 제시할 수 있다. 알고리즘을 적용해서 구한 버퍼 용량을 실제공정에 바로 투입하기에는 무리가 있다. 하지만 알고 리즘의 결과를 통하여 시스템의 버퍼 할당에 관한 초기 값을 부여하거나, 공정관리자의 경험과 과거의 공정 데이 터에 본 연구 결과를 참고한다면 최적 버퍼 할당에 가까 워질 수 있다고 본다.
유한 버퍼가 존재하는 반도체 공정라인에서 최적의 버 퍼 용량을 도출하는 알고리즘을 제시하였다. 반도체 공정 계획에 있어서 하모니 서치 알고리즘을 통한 버퍼 용량 의 최적 할당이 가능하다는 것을 의미한다. 향후 연구에 서는 병렬공정, 다 제품 생산라인 등 복잡한 반도체 생산 공정에서의 연구가 필요할 것이며, 성능 척도 중 하나로 사용하였던 Efficiency보다 좀 더 객관적인 척도를 사용할 필요성이 있다. 또한 여러 가지 메타 휴리스틱 알고리즘 을 적용하여 결과를 알고리즘간의 성능을 비교하는 연구 또한 필요할 것이다.
감사의 글
This paper was supported by Kumoh National Institute of Technology
참고문헌
1. Hyun Soo Lee, Jeong Ki Kim, Moon Seo Park, Han Guk Ryu “Aggressive Buffer Control (ABC) for Reliable Construction Schedule Management”, Journal of the architectural institute of KOREA structure &
construction 22(10), pp.137-146. 2006.
2. Seung Nam Kim, Min Sun Hong, Suk Chul Rim,
“Development of the CTP reflecting DBR Buffer”, Journal of the Korean Operations Research and Management Science Society, p.396-399, 2004.
3. Guan Wang, Shou Song, Yang Woo Shin, Dug Hee Moon, “A Simulation Based Study on Increasing Production Capacity in a Crankshaft Line Considering Limited Budget and Space”, Journal of the Korean Institute of Industrial Engineers, Vol. 40, No.5, pp.481- 491, 2014.
4. Xin-She Yang, “Harmony Search as a Metaheuristic Algorithm: Theory and Applications, Studies in Computational Intelligence, vol. 191, pp.1-14. 2009.
5. Kyung uk Na, Dong Seop Lee, Hyun gi Lee, Hang Seok Choi, “Optimization for Configuration and Material Cost of Helical Pile Using Harmony Search Algorithm”, Journal of the Korean Society of Civil Engineers, Vol.
35, No. 2, pp.377-386, 2015.
6. J Kim, Ji Yong Jeong, J. Lee “Optimization Work-In- Process Paremeter using Genetic Algorithm”, Journal of Society of Korea Industrial Systems Engineering, 2017, vol. 40, n.2, pp. 79-86.
7. Bok Sik Yoon, “Metaheuristics Imitating Natural Phenomena”, Journal of the Korean Operations Research and Management Science Society/The Korean Institute of Industrial Engineers, pp.1-10, 2011.
8. Lucas M. Pavelski, Carolina P. Almeida and Richard A.
Goncalves. “Harmony Search for Multi-objective Optimization”, 212 Brazilian Symposium on Neural Networks, 2012.
9. M. T. Mahmood and Y. K. Choi “3D Surface Reconstruction by Combining Focus Measures through Genetic Algorithm”, Journal of the Semiconductor &
Display Technology, v.13, n.2, pp.23-28, 2014.
접수일: 2020년 11월 11일, 심사일: 2020년 12월 3일, 게재확정일: 2020년 12월 10일