• 대한전기학회
Mobile QR Code QR CODE : The Transactions of the Korean Institute of Electrical Engineers
  • COPE
  • kcse
  • 한국과학기술단체총연합회
  • 한국학술지인용색인
  • Scopus
  • crossref
  • orcid

  1. (Dept. of Information and Communication Engineering, Changwon National University, Korea.)



Reinforcement learning, Flow shop scheduling, Double Q-learning, Dueling architecture

1. 서 론

최근 규모의 경제 효과를 지향하는 소품종 대량생산 설비 또는 유연성, 고객대응과 같은 성과목표가 중요시되는 다품종 소량생산 설비를 포함한 제조 공정에서 생산 효율성 증대에 대한 기술적 요구가 발생하고 있다. 특히 흐름 생산 공정은 일련의 m개의 기계에서 n개의 작업이 처리되는 NP-hard 문제로써 전자, 종이 및 섬유 산업, 콘크리트 생산, 사진 필름 제조 산업 등의 일반적인 제조환경뿐만 아니라 인터넷 서비스, 컨테이너 처리 시스템 및 토목 같은 비제조 분야에서도 활용되고 있다(1). 이렇게 다양한 제조환경에서 요구사항 또한 다양하므로 흐름 생산 공정이나 개별 작업 생산 공정의 작업 일정을 최적화하는 생산 일정 연구가 분야별로 활발히 진행되고 있다[2-5, 10-22].

최초의 흐름 생산 공정 문제(2)에서는 단일 기계 및 두 대의 기계에 대한 최적의 일정 계획을 도출하는 제한적인 분기한정법 기반의 해결방법을 이용하였다. 이후 제한된 개수의 기계와 작업에서 최종 공정시간을 목적함수로 하여 최적의 작업 일정을 도출하는 분기한정법 기반 해결방법이 지속적으로 연구되었다. 하지만 분기한정법 기반의 해결방법은 제한적인 상황에서 동작하여 복잡한 흐름 생산 공정문제를 해결할 수 없고, 단일 목적함수를 기반으로 동작한다는 한계가 존재한다(3).

분기한정법 알고리즘의 한계를 극복하기 위해 합리적인 시간 내에 근사해를 도출하는 다양한 휴리스틱과 메타 휴리스틱 기반 해결방법이 연구되었다(4-5). Framinan(10)은 흐름 생산 공정문제에 대해 NEH 휴리스틱(11)을 기반으로 하는 휴리스틱 알고리즘을 제안하여 공정시간을 최소화했다. Ancau(12)는 α-탐욕 선택을 기반으로 하는 휴리스틱 기법과 확률 분포를 통한 선택기법을 제안하였다. 특히 Simulated Annealing(SA), Tabu Search(TS), Genetic Algorithm(GA)과 같은 메타 휴리스틱 접근 방식이 조합 최적화 문제를 해결하는 데 우수한 성능을 보여주었으며, 위와 같은 방식을 기반으로 한 방법이 생산 공정 문제에도 적용되었다. Yamada(13)은 GA, SA 및 TS를 흐름 생산 문제 및 개별생산 문제에 적용했으며, 메타 휴리스틱 기법의 가능성을 보였다. Ling Wang(14)은 제한된 버퍼를 사용하는 흐름 상점 스케줄링을 위한 하이브리드 유전 알고리즘(HGA)을 제안하였으며, SA 및 TS의 결과와 비교하여 유전 알고리즘의 유효성을 입증하였다. (15)의 연구에서 전체 공정시간을 최소화하기 위한 SA 알고리즘을 설계하였으며, 서로 다른 매개 변수 설정을 사용하여 다중 목적함수 알고리즘을 제안하였다. 이처럼 흐름 생산 공정에 메타 휴리스틱을 적용한 많은 연구가 진행됐다(15-22).

지금까지 연구되어 온 휴리스틱 및 메타 휴리스틱 기법들은 일반적으로 초기의 작업 일정 결과를 토대로 개선된 작업 일정을 직접 탐색한다. 기존의 기법들은 비교적 간단한 작업에서는 우수한 결과를 보이긴 하지만, 복잡한 다품종 생산 작업에서는 최적의 작업 순열을 찾는 방향으로 알고리즘을 수렴시키기 어려운 한계가 존재한다.

반면, 강화학습 기반의 흐름 생산 공정 최적화 방법은 일정 계획 정책을 탐색할 뿐만 아니라 $Q$ 함수의 정책을 조정하여 대규모 생산 작업상에서의 문제를 효율적으로 해결할 수 있다. 학습 과정에서 에이전트는 초기 탐색과정을 거친 후 $Q$ 함수를 이용해 예측되는 미래 보상을 기반으로 한 작업 순열을 도출하며 보상을 받는 과정을 반복한다. 학습이 진행되면서 에이전트는 현재 작업 상태에서 미래에 예상되는 누적 공정시간을 최소화하는 최적의 정책을 학습한다. Stefan(23)의 연구에서 흐름 생산 공정문제를 강화학습으로 해결하는 알고리즘이 처음으로 제안되었으며, 5개의 기계와 6개의 작업에서 최적해를 찾는 방식이 설명되었다. 이후 Reyna(24)는 강화학습 알고리즘에 사용되는 파라미터에 따른 알고리즘의 성능을 분석했다. 또한, Zhang(25)은 32개의 인스턴스와 다양한 규모의 흐름 생산 공정 문제를 포함하는 Taillard(26) 벤치마크 데이터셋을 기준으로 강화학습 기반 알고리즘을 적용하여 최적해 도출에 우수한 성능을 보였다. Lee(27)는 두 가지 부품이 처리되는 로봇 흐름 생산 공정에 Q-learning 기반 공정 최적화 기법을 적용하여 일반적으로 공정 최적화에 사용되는 RS(Reverse Sequence)기법보다 우수한 성능을 보였다. 현재까지 제시된 강화학습 및 Q-learning 기반 흐름 생산 공정 알고리즘은 최종 공정시간을 최소화하기 위해 강화학습 기법의 적용을 시도해왔으나 기존의 휴리스틱 기반 알고리즘들보다 우수한 최종 공정시간 최소화 성능을 보장하지 못하였다.

이 논문은 다양한 흐름 생산 공정 상황에 대해 최종 공정시간을 최소화할 수 있는 DDQL(Dueling Double Q-learning) 기반 흐름 생산 스케줄링 기법을 제안한다. DDQL 방식은 기존의 Q-learning과 달리 다음 상태의 최대 $Q$ 값을 가진 최상의 동작을 선택하기 위한 $Q$ 함수와 앞서 선택한 행동에 따른 기댓값 $Q$ 값을 계산하기 위한 $Q$ 함수를 둘 다 사용하여 편향이 없는 학습 환경을 제공하고, 이득 함수 $A$를 도입하여 가치함수의 분산을 감소시킴으로써 일반화 성능을 높일 수 있는 장점이 있다. 그러므로 DDQL 방식을 흐름 생산 공정문제에 적용하면 기존 강화학습의 과추정 및 불필요한 정책학습 문제를 해결하여 궁극적으로 최종 공정시간의 최소화를 보장할 수 있다. 본 연구에서 활용하는 두 개의 $Q$ 함수와 $A$ 함수는 일반적인 Q-learning 기반 알고리즘에서 에이전트가 획득한 보상에 따른 가치함수의 갱신 과정에서 적용된다. 상태-행동 함수를 학습하기 위한 목적함수는 에이전트가 도출한 작업 순열의 최종 공정시간으로 정의되었다. 제안된 기법의 성능을 Carlier (28)와 Reeves(29) 벤치마크 데이터에 대해 검증한 결과 기존 강화학습 기반 알고리즘 대비 최고 상대 오차 성능은 17%, 평균 상대 오차 성능은 22%의 성능 개선을 보였다. 또한, Taillard (26)벤치마크 데이터에 대해 최종공정시간 성능을 비교한 결과 다양한 규모의 공정상황에서 최적의 공정시간 결과를 나타내었으며, 특히, 큰 규모의 공정상황에서는 기존의 휴리스틱 알고리즘들의 결과 중 최소 공정시간 대비 18%의 성능 개선을 보였다.

그림. 1. 흐름 생산 공정 문제 예시 ($m=4,\:n=3$)

Fig. 1. Example of flow shop scheduling problem ($m=4,\:n=3$)

../../Resources/kiee/KIEE.2021.70.10.1497/fig1.png

2. 문제 정의

흐름 생산 공정 환경은 그림 1과 같이 $m$개의 기계와 $n$개의 작업으로 구성되며, 각 작업은 서로 다른 기계에서 실행되는 $m$개의 작업 세트 $pt_{jk,\:ih}=(pt_{j_{1,\:}i_{1}},\:...pt_{j_{n,\:}i_{m}})\in M$으로 구성된다. 여기서 서로 다른 작업 간에 우선순위 제약은 존재하지 않는다고 가정한다. 작업 $j_{k},\: k=1,\:...,\:n$은 시스템에서 한 번만 실행할 수 있고, 기계 $i_{h},\: h=1,\:...,\:m$은 한 번에 하나의 작업만을 수행할 수 있다. 작업 $j$가 각 기계 $i$에서 처리되며 걸리는 시간을 $pt_{j_{k},\:i_{h}}$로 표현한다. 각 작업은 기계 $i_{1}$부터 $i_{m}$까지 순서대로 실행되고 기계에 따라 각 작업의 처리 시간이 다르다. 각 작업의 처리 시간에는 기계의 설정과 실행 시간이 포함되고, 시작 시각은 0이라고 가정한다. $c(j_{k},\:i_{h})$는 기계 $i_{h}$에서 수행한 작업 $j_{k}$의 처리 완료 시간을 나타낸다. 흐름 생산 공정 문제의 작업 처리 완료 시간을 구하는 일련의 과정을 수식으로 표현하면 다음과 같다.

(1)
$c(j_{1},\:i_{1})=pt_{j_{1},\:i_{1}},\:k=1,\:h=1$

(2)
$c(j_{1},\:i_{h})=c(j_{1},\:i_{h-1})+pt_{j_{1},\:i_{h}},\:h=2,\:...m$

(3)
$c(j_{k},\:i_{1})=c(j_{k-1},\:i_{1})+pt_{j_{k},\:i_{1}},\:k=2,\:...n$

(4)
$c(j_{k},\:i_{h})=\max(c(j_{k-1},\:i_{h}),\:c(j_{k},\:i_{h-1}))+pt_{j_{k},\:i_{h}}$ $k=2,\:...n,\:h=2,\:...m$

수식(1)은 첫 번째 기계의 첫 번째 작업이 종료되는 시간 $c(j_{1},\: i_{1})$을 나타낸다. 수식(2)는 첫 번째 작업이 다음 기계들 에서 처리되어 완료되는 시간을 나타낸다. 수식(3)은 첫 번째 기계에서 각각의 작업이 처리되어 완료되는 시간을 나타낸다. 수식(4)는 각각의 기계에서 수행되는 작업의 처리 완료 시간을 구하는 수식을 나타낸다. 수식(4)에서 수행되는 최댓값 (max) 연산은 기계 $i_{h}$가 현재 수행하고 있는 작업의 처리 시간과 이전 기계 $i_{h-1}$가 수행하고 있는 작업의 처리 시간 중 오래 걸리는 작업이 먼저 종료된 후 다음 작업이 처리된다는 것을 의미한다. 이때 기계 $i_{h}$에서 작업이 지연되는 유휴시간이 발생하므로 이를 최소화하기 위한 적절한 공정 순서를 선택해야 한다.

흐름 생산 공정 문제의 목적은 마지막 기계에서 마지막 작업의 완료 시간으로 정의되는 $c(j_{m},\: i_{n})$을 최소화하는 순열을 찾는 것이다. 본 연구에서 제안하는 기법의 공정한 성능평가를 위해 위에서 언급한 문제 정의는 [22, 30-34, 40-42]에서 제안한 문제와 같게 설정되었다.

3. 강화학습 기반 흐름 생산 공정 최적화 기법

흐름 생산 공정 문제를 Markov decision process로 표현하면 주어진 작업 상태의 집합 $S$, 상태에서 수행할 수 있는 행동의 집합 $A$, 특정 상태 $s_{t}$, 특정 상태 $s_{t}$에서 에이전트가 취한 행동 $a_{t}$, 에이전트의 상태에 따른 행동이 명시된 정책 $\pi(s_{t})$에 따라 얻게 되는 즉각적인 보상을 $r(s_{t},\:a_{t})$로 표현할 수 있다. 상태 $s_{t}$는 에이전트에 의해 선택된 흐름 생산 공정 작업을 뜻하고 이는 섹션 2에서 설명한 바와 같이 기계들이 수행해야 하는 하나의 작업을 의미한다. 여기서 $t$는 상태와 행동에 따른 시간 단위를 나타낸다. 행동 $a_{t}$란 에이전트가 지금까지 수행된 작업을 제외하고 나머지 작업 중에서 다음 작업을 선택하는 것으로 정의한다. 즉각적인 보상은 주어진 상태 $s_{t}$에서 에이전트는 정책 $\pi$에 따라 작업을 선택하는 행동 $a_{t}$를 수행한 다음, 새로운 상태 $s_{t+1}$과 즉각적 보상 $r(s_{t},\: a_{t})$를 받는다.

흐름 생산 공정 문제 에이전트의 목표는 예측되는 미래 보상 $R_{t}=\sum_{i=0}^{t}\gamma^{t}r(s_{i},\:a_{i})$를 최소화하는 것이다. 여기서 $\gamma$는 미래 보상에 대한 할인율을 나타낸다. 일련의 Markov decision process에서 벨만 방정식을 만족시키는 상태-행동 가치함수 $Q$는 다음과 같이 정의할 수 있다.

(5)
$Q_{\pi}(s ,\:a)=E_{\pi}[R_{t}|S_{t}=s ,\: A_{t}=a]$

수식(5)에서 함숫값은 주어진 상태 $s$에서 행동 $a$를 한 후 얻을 수 있는 누적보상의 기댓값이 된다. 예측되는 누적보상을 최소화하는 $\pi *$에 대한 상태-행동 가치함수를 다음과 같이 정의할 수 있다.

(6)
$Q^{*}(s,\:a)=\min Q_{\pi}(s,\:a)=\min E_{\pi}[R_{t}|S_{t}=s,\:A_{t}=a]$

일반적인 강화학습과는 달리 최종 공정시간을 최소화해야 하므로 $Q$ 함수의 누적보상 기댓값 역시 최소가 되도록 정책을 학습한다. 예측되는 누적보상을 최소화하는 정책 $\pi *$를 만족하면 상태 가치함수 $V$ 또한, 모든 상태 $S$에 대해 가장 작아지게 되므로 다음과 같이 수식으로 표현할 수 있다.

(7)
$V^{*}(s)=\min V_{\pi}(s)=\min E_{\pi}[R_{t}|S_{t}=s]$

즉, 에이전트의 학습 목표는 예측되는 누적보상을 최소화하는 정책 $\pi *$을 찾는 것이다. 에이전트의 보상체계는 현재 작업 $s_{t}$에서 다음 작업을 수행할 때 발생하는 기계의 유휴시간 $r(s_{t},\:a_{t})= Id\le time(s_{t,\:}s_{t+1})$를 즉각적인 보상으로 받는다. 여기서 $Id\le time$은 현재 작업 $s_{t}$와 다음 작업 $s_{t+1 }$간에 발생하는 기계의 유휴시간을 연산한다.

그림 2는 Q-Learning 기반 흐름 생산 공정의 일반적인 절차를 나타내는 블록도를 나타낸다. 상태-행동 가치함수 $Q$ 및 상태 가치함수 $V$ 는 각각의 기계에서 수행되는 작업에 대한 미래에 예측되는 보상 정보를 담고 있다. 가치함수 $Q$ 와 $V$ 는 학습 초기 탐색과정에서 발생하는 에이전트 행동의 편향을 방지하기 위해 정규분포 난수 값으로 초기화된다. 입력 데이터는 각 기계에서 수행되는 작업 종류 및 각 작업의 수행 시간이 포함되어 있다. 이 정보들을 활용해 사용자가 사전에 설정한 epoch 횟수만큼 서로 다른 강화학습 에이전트를 통해 학습하게 된다. 단일 에이전트 기반의 강화학습은 학습 초기 탐색과정에서 편향된 학습이 수행되어 지역 최저점에 머무를 가능성이 있으므로, 여러 개의 에이전트를 학습함으로써 가장 낮은 목적함수를 도출하는 에이전트의 가치함수를 기반으로 최종 작업 순열을 결정할 수 있도록 설계하였다. 선택된 가치함수 $Q$와 $V$를 이용하여 Permutation algorithm을 통해 최적의 작업 순열이 결정된다.

그림. 2. Q-learning 기반 흐름 생산 공정 블록도

Fig. 2. Block diagram of Q-learning based flow shop scheduling

../../Resources/kiee/KIEE.2021.70.10.1497/fig2.png

알고리즘 1은 에이전트의 학습 과정에서 permutation algorithm 과정을 나타낸다. 알고리즘은 가치함수 $Q,\: V$ 및 $\epsilon$파라미터를 입력으로 완성된 최종 작업 순열 $p$를 반환한다. 가치함수가 수렴하지 못한 학습 초기에는 $\epsilon$값과 0과 1 사이의 무작위 난수를 비교하여 $\epsilon$값이 크면 무작위로 다음 작업을 결정한다. $\epsilon$값이 작으면 $Q$ 함수에서 가장 낮은 예측 보상 값을 갖는 작업을 다음 작업으로 결정한다. 만약 가치함수에 의해 첫 작업이 결정될 경우 최적의 작업 순열 완성을 보장하기 위해 $V$ 함수에서 가장 낮은 상태 가치를 갖는 작업을 첫 번째 작업으로 선택한다. 최종 작업 순열에 포함된 작업은 중복 선택을 피하고자 $Q$ 함수에서 선택된 작업에 해당하는 예측 보상 값을 매우 큰 값 ($l\arg e N UM$)으로 변경한다. 일련의 작업 순열을 결정하는 과정을 반복하며 $Q$ 함수와 $V$ 함수를 갱신하는 과정을 거친다.

알고리즘 1 Permutation algorithm

Algorithm 1 Permutation algorithm for the work sequence

../../Resources/kiee/KIEE.2021.70.10.1497/alg1.png

그림. 3. 작업 순열에 따른 공정시간 연산방법

Fig. 3. Calculation of processing time based on the work sequence

../../Resources/kiee/KIEE.2021.70.10.1497/fig3.png

그림 3은 섹션 2의 문제 정의에서 설명한 작업 순열에 따른 최종 공정시간 연산방법을 그림으로 나타낸 것이다. 위의 그림에서의 예는 3개의 작업을 4개의 기계에서 수행하는 흐름 생산 공정의 예시이다. 예를 들어 $pt_{22}$에서 수행되는 작업의 예상 종료 시각 $c_{22}$는 $2^{nd}ma\chi ne$이 수행한 이전 작업 $pt_{12}$가 종료되는 시점 $c_{12}$과 $1_{st}ma\chi ne$이 수행한 작업 $pt_{21}$이 종료되는 시점 $c_{21}$을 비교했을 때 큰 값과 수행할 작업 $pt_{22}$의 합으로 결정된다.

그림 3에서 표현된 공정시간 연산방법을 기반으로 현재 작업에서 다음 작업을 수행할 때 발생하는 기계의 유휴시간을 구하는 방법을 수식으로 표현하면 다음과 같다.

(8)
$0\le c_{t+1,\:n}-c_{t,\:n+1},\:\sum_{n=1}^{i}c_{t+1,\:n}-c_{t,\:n+1}=Id\le time(j_{t},\:j_{t+1})$

수식(8)에서 $i$는 작업을 수행해야 하는 기계의 총 개수이다. 수식(8)으로 즉각적인 보상으로 주어지는 기계의 유휴시간을 연산하여 상태-행동 가치함수 $Q$ 와 상태 가치함수 $V$ 를 갱신한다. 반환된 작업 순열의 유휴시간 보상에 따른 $Q$ 함수의 학습은 다음과 같은 수식으로 표현할 수 있다.

(9)
$Q_{n+1}\left(j_{i},\:j_{j}\right)=Q_{n}\left(j_{i},\:j_{j}\right)+\alpha\left(r+\gamma\min Q_{n}\left(j_{j},\:j_{k}\right)-Q_{n}\left(j_{i},\:j_{j}\right)\right)$

수식(9)에서 $j_{k}$는 시간차 오차 학습을 사용한 $Q$ 함수의 갱신방법에 따라 다음 상태 $j_{i}$에서 예상되는 누적보상을 최소화하는 다음 작업을 나타낸다. $Q$ 함수는 현재 상태의 작업에서 취할 수 있는 행동 $a$에 대한 누적보상의 합을 포함한 이차원 테이블 형태이다. $Q_{n+1}(j_{i},\:j_{j})$는 $j_{i}$작업에 대해 갱신된 예측 보상의 합을 의미한다. $Q_{n}(j_{i},\:j_{j})$는 $j_{i}$작업에 대한 갱신되기 이전의 누적된 예측 보상의 합이다. 여기서 $j_{j}$는 $j_{i}$ 작업에서 에이전트가 선택한 다음 작업을 나타낸다. 여기서 $\alpha$는 학습률을 나타내며 한 번의 학습에 갱신되는 보상 값의 크기를 결정하는 계수이다. $\min Q_{n}(j_{j},\:j_{k})-Q_{n}(j_{i},\:j_{j})$에서 $\min Q_{n}(j_{j},\:j_{k})$는 다음 상태의 작업 $j_{j}$에서 누적보상을 최소화하는 다음 작업 $j_{k}$를 수행할 때 예측되는 미래 보상을 나타내며, $Q_{n}(j_{i},\:j_{j})$과의 차를 통해 현재 예상되는 최적의 작업 순열 보상과 비교하여 기존의 예측 보상치를 갱신하게 된다. 이 논문에서는 공정시간을 최소화하는 정책을 학습하기 위해 $Q$ 함수는 최솟값 연산자를 사용하여 갱신된다.

상태 가치함수 $V$는 다음과 같이 수식으로 표현할 수 있다.

(10)
$V(j_{t})=E[Q(j_{t},\:a')|S_{t}=j_{t}]$

수식(10)의 $V$함수에는 개별 작업이 갖는 상태에 대한 가치가 포함되어 있다. 특정한 작업 상태 $j_{t}$에 대한 가치는 $j_{t}$에서 취할 수 있는 모든 행동 $a'$에 대한 예측 보상의 평균으로 결정되어 매번의 학습마다 갱신된다. 흐름 생산 공정 문제는 NP-hard 문제에 해당하지만 본 연구에서 고려하는 문제의 크기(벤치마크 데이터 기준 최대 500x20)가 심층 신경망을 사용할 만큼 복잡한 문제가 아니라고 판단하였으므로, 신경망 대신 테이블 형태의 $Q$와 $V$함수를 사용하였다.

4. DDQL 기반 흐름 생산 공정 최적화 기법

기존의 Q-learning을 기반으로 한 흐름 생산 공정 최적화 기법은 최적 정책에 따라서 에이전트는 오로지 최대 $Q$값에 의해 주어진 상태에서 최적이 아닌 행동을 하게 되는 경향이 보이는 과추정 문제를 일으킨다. 이는 추정된 $Q$ 값의 노이즈에 의해 발생하는데, 이는 실제 $Q$ 함수를 갱신하는 과정에서 높은 편향을 유발하게 되고 학습 과정도 함께 복잡해지게 된다. 또한, 기존의 Q-learning은 상태함수 $V$ 가 낮은 상황에 대해서도 보상을 계산하기 때문에, 이는 결론적으로 $Q$ 함수의 분산이 커지게 하고 연산량이 많아지게 된다. 이로 인해 흐름 생산 공정 최종시간이 다양한 공정 상황에서 기존 기법들과 비교해 좋은 성능을 보장할 수 없게 된다.

이 논문에서는 이러한 문제들을 해결하기 위해 에이전트가 $Q$ 함수를 학습하는 과정에 DDQL 기법을 적용하여 흐름 생산 공정에서의 최종 공정시간을 최소화할 수 있도록 하였다.

4.1 Double Q-learning

앞서 언급했듯이 Q-learning에서는 최대 $Q$ 값만을 고려해 행동을 선택하고 $Q$ 함수를 갱신하게 되는데, 이는 $Q$ 함수의 노이즈로 인한 과추정 문제를 일으킬 수 있다. 이 문제를 해결하기 위해 두 개의 상태-행동 가치함수 $Q$ 와 $Q_{t\arg}et$을 동시에 활용하는 Double Q-learning 방법을 적용한다. $Q$ 함수는 다음 상태의 최대 $Q$ 값을 가질 수 있는 최선의 행동을 선택하기 위한 것이고, $Q_{t\arg}et$함수는 선택된 행동을 사용하여 $Q$ 기댓값을 계산하기 위한 것이다. 즉, $Q_{t\arg}et$에서 얻은 기댓값을 이용해 $Q$ 함수의 갱신을 수행한다. 이를 통해 두 함수중에서 잡음이 포함되어 있다 할지라도, 그들의 잡음은 uniform distribution형태로 나타나므로 $Q$ 값 갱신 과정에서 생길 수 있는 과추정 문제를 해결해줄 수 있다. 여기서 $Q_{t\arg}et$함수는 주기적으로 $Q$함수의 값으로 동일하게 설정된다. 두 개의 상태-행동 가치함수 $Q$와 $Q_{t\arg}et$를 동시에 활용하는 Double Q-learning을 기반으로 한 $Q$ 함수 갱신 과정을 수식으로 표현하면 다음과 같다. (8)

(11)
$Q_{n+1}(j_{i},\:j_{j})=Q_{n}(j_{i},\:j_{j})+$ $\alpha(r+\gamma Q_{n}(j_{i},\:\arg\min Q_{t\arg et}(j_{j},\:j_{k}))-Q_{n}(j_{i},\:j_{j}))$

수식(11)에서 볼 수 있듯이 $Q_{t\arg}et$을 $Q$ 함수 갱신 과정에 도입함으로써 최적의 행동을 선택하는 과정과 정책 자체를 평가하는 과정을 나눌 수 있고, 이를 통해 $Q$ 함수의 노이즈 문제로 인한 과추정 문제를 해결할 수 있다. 흐름 생산 공정 과정에서 편향된 행동 선택을 방지하게 함으로써 보다 안정적인 학습이 가능하게 되고 궁극적으로 최적의 흐름 생산 공정 솔루션을 얻을 수 있다.

4.2 Dueling Architecture

Dueling 구조는 $Q$ 값을 구하기 전에 가치함수 $V$ 와 이득 함수 $A$ 로 나누어 결괏값을 얻은 후 다시 합쳐지는 형태이다. 여기서 $A$ 는 행동별로 계산되는데 이는 총 누적되는 보상 값에는 연관이 없으므로, Dueling 구조를 통해 에이전트는 결론적으로 높은 가치함수 $V$ 값이 이끄는 상태로 최대한 가려고 하고, 낮은 가치함수 $V$ 값을 주는 행동을 피하도록 학습이 수행된다. 이를 통해 학습 과정에서 발생할 수 있는 불필요한 연산을 방지하고 $Q$ 함수의 분산이 감소하여 더욱 안정적인 학습을 가능하게 한다. Dueling 구조에서의 $Q$ 함수는 다음과 같이 표현할 수 있다. (9)

(12)
$Q(s,\:a)=V(s)+\left(A(s,\:a)-\dfrac{1}{| A |}\Sigma A(s,\:a')\right)$

수식(12)에서 $V(s)$는 모든 작업에 대한 상태 가치를 포함하며, $A(s,\:a)$는 $Q$ 함수에 존재하는 행동의 가치 값을 포함한다. $1/|A|∑A(s,\:a')$는 어떤 상태 $s$에서 선택할 수 있는 행동 $a'$들에 대한 예측 보상 합의 평균이고, 이 성분은 $Q$ 함수에서 최적의 행동이 취해졌을 때 A의 값을 0으로 만들어주므로 분산을 감소시켜 기존의 강화학습 기법보다 $Q$ 함수의 일반화 성능을 개선할 수 있다.

4.3 DDQL 기반흐름 생산 공정 최적화 기법

앞서 설명한 double Q-learning과 Dueling 구조를 둘 다 사용하는 DDQL 기법은 각각의 장점을 통합하여 흐름 생산 공정에 대한 최적화 솔루션을 제공할 수 있다. DDQL 기법은 알고리즘 1의 Permutation 과정이 수행되어 보상을 얻은 다음 그림 1의 상태-가치함수의 갱신방법에 적용할 수 있다. DDQL 기법을 이용해 $Q$ 함수를 갱신하기 위해서는 먼저 이득 함수 $A$ 와 상태 가치함수 $V$ 로 쪼개어 계산 후 통합하는 과정을 거치게 된다. 그다음 최적의 행동을 선택하는 $Q$ 함수와 정책 자체를 평가하는 $Q_{t\arg}et$함수를 동시에 고려하여 $Q$ 함수의 갱신이 수행된다. 이를 통해 기존의 강화학습 기법보다 낮은 분산과 편향의 가치함수를 갖는 에이전트의 학습이 가능하여 최적의 흐름 생산 공정 솔루션을 제공할 수 있다.

5. 실험 및 결과

본 연구에서 제안하는 DDQL기반 흐름 생산 스케줄링 기법의 최종 공정시간 성능을 다양한 공정 환경에 대해 평가한다. 이를 위해 ordinary Q-learning, double Q-learning, DDQL을 이용했을 때의 성능을 비교하였고, 최근까지 발표된 흐름 생산 공정 스케줄링 기법들인 L-HDE (30), ODDE(31), DBA (32), HBSA(33), PSOVNS (34), PSOMA (35), HTLBO (36), QDEA (37), HGA(38), HBA (39), HCS (40), HWA (41)의 기법들과 최종 공정시간 성능을 비교하였다. 다양한 공정 상황을 모의하기 위해 흐름 생산 공정 문제에 널리 활용되고 있고 다양한 공정상황에 대해 다룰 수 있는 총 세 가지의 벤치마크 데이터로 알고리즘의 공정 최적화 성능을 평가한다. Carlier(28)와 Rec(29)에서 제시하는 벤치마크 데이터는 각각 8개, 21개의 문제로 구성되어 있다. Taillard(26)에서 제시하는 벤치마크 데이터는 n개의 작업과 m개의 기계에 대해 nxm의 다양한 규모를 20x5, 20x10, 20x20, 50x5, 50x10, 50x20, 100x5, 100x10, 100x20, 200x10 및 500x20으로 정의한 흐름 생산 공정을 담고 있다. 제안된 알고리즘은 파이썬으로 구현되어 검증되었으며 시뮬레이션에 사용된 컴퓨터의 사양은 i7-8750H 2.20GHz CPU와 GTX 1060이 장착된 일반적인 노트북 환경에서 수행되었다.

표 1. 강화학습 알고리즘의 매개 변수

Table 1. Parameters of reinforcement learning algorithm

Parameter

Value

Learning Rate

0.1

Discount Factor

0.8

Epoch

50

Loop

100,000

$Q_{target}$ Update Period

50

5.1 학습방법

DDQL이 적용된 강화학습 기반 흐름 생산 공정 최적화 알고리즘 에이전트의 학습 매개 변수는 표 1에 나타내었다. 강화학습 에이전트는 100,000번의 반복 작업을 수행하면서 총 50회의 epoch를 거친 최적의 가치함수에 의한 작업 순열을 도출한 결과로 성능이 검증된다. 이때 한 번의 epoch가 완료되면 에이전트의 가치함수는 초기화되어 새로운 학습을 수행하도록 설정하였는데, 이는 탐색과정에서 발생할 수 있는 편향을 방지하고 다양하게 학습된 에이전트 중에서 가장 우수한 성능을 보이는 에이전트를 식별하기 위함이다.검증용 가치함수 $Q_{t\arg}et$의 갱신주기는 50회로 설정되어 주기마다 $Q$ 값으로 갱신한다.

100,000번의 반복되는 학습 과정에서 에이전트가 도출해낸 보상 그래프를 그림 4에 나타내었다. 표 1에 나타낸 벤치마크 데이터의 problem 중 rec33을 기준으로 제안된 DDQL 알고리즘 에이전트의 학습에 따른 보상을 확인하였다. 여기서 MVA(1000)은 에이전트가 1000번의 학습 동안 발생한 보상의 평균을 나타낸다. 그림 4를 통해 알 수 있듯이 제안된 강화학습 알고리즘으로 학습된 에이전트가 초기 탐색과정을 거치며 보상을 최소화하는 방향으로 점차 수렴하는 모습을 확인할 수 있다. 이를 통해 흐름생산 공정에 대한 학습을 위해 정해진 보상이 적절히 설정되었고, DDQL 강화학습 에이전트가 보상을 최소화하는 방향으로 학습을 원활히 수행했음을 확인할 수 있다. 대략 30,000회의 학습 때 최소지점을 거쳐 학습 후반으로 갈수록 보상이 약간 증가하는 것을 확인할 수 있는데 이는 학습이 진행될수록 강화학습 에이전트가 $Q$ 함수의 갱신 과정에서 과적합 되기 때문이다. 이 점을 고려하여 본 연구에서는 학습과정에서 에이전트에 반환된 보상 값 중 최저지점을 선택하여 강화학습 알고리즘의 성능 검증을 수행하였다.

그림 5에서는 서로 다른 강화학습 알고리즘(Q-learning, double Q-learning 및 DDQL)으로 학습된 에이전트가 도출해낸 최종 공정시간의 분포도를 Boxplot으로 나타내었다. 그림에서 알 수 있듯이 DDQL기법이 Q-learning과 DoubleQ 보다 상한과 하한의 폭이 좁고 박스의 위치가 상대적으로 아래에 있는 것을 확인할 수 있다. 이는 두 개의 함수를 사용함으로써 탐색과정에서 발생하는 노이즈로 인한 과추정을 방지함과 동시에 이득 함수를 사용하여 상태 행동 가치함수의 분산을 감소시킨 Dueling 구조에 기인한 결과이다. 이를 통해 DDQL 기법이 다른 기법들과 비교해 유휴시간 최소화를 통한 최소의 최종 공정시간을 제공할 수 있는 더 나은 방식임을 알 수 있다.

그림. 4. DDQL 에이전트의 학습에 따른 보상 분포

Fig. 4. Distribution of the reward of DDQL agent according to learning process

../../Resources/kiee/KIEE.2021.70.10.1497/fig4.png

그림. 5. 강화학습 기법에 따른 최종 공정시간의 분포

Fig. 5. Distribution of processing time according to learning algorithms

../../Resources/kiee/KIEE.2021.70.10.1497/fig5.png

표 2. Car와 Rec 데이터에 대한 Q-learning 알고리즘의 성능평가

Table 2. Performance evaluation of Q-learning algorithms based on Car and Rec data

Ordinary Q learning

Double Q learning

DDQL

Problem

nxm

BRE

ARE

WRE

BRE

ARE

WRE

BRE

ARE

WRE

Car01

11x5

0.017

0.182

0.325

0.021

0.151

0.292

0.017

0.143

0.272

Car02

13x4

0.071

0.182

0.338

0.036

0.144

0.229

0.046

0.139

0.203

Car03

12x5

0.172

0.311

0.478

0.121

0.224

0.325

0.125

0.218

0.326

Car04

14x4

0.126

0.241

0.426

0.052

0.152

0.325

0.052

0.151

0.273

Car05

10x6

0.002

0.158

0.285

-0.007

0.085

0.257

-0.011

0.105

0.296

Car06

8x9

0.09

0.191

0.304

0.095

0.195

0.278

0.103

0.19

0.263

Car07

7x7

0.027

0.114

0.373

0.019

0.093

0.328

0.018

0.099

0.202

Car08

8x8

0.013

0.132

0.265

0.016

0.112

0.209

0.014

0.1

0.187

rec01

20x5

0.202

0.3

0.411

0.134

0.245

0.338

0.15

0.224

0.325

rec03

20x5

0.115

0.242

0.394

0.108

0.197

0.318

0.092

0.198

0.267

rec05

20x5

0.042

0.201

0.348

0.023

0.14

0.24

0.047

0.125

0.262

rec07

20x10

0.155

0.267

0.386

0.143

0.219

0.32

0.156

0.221

0.303

rec09

20x10

0.148

0.295

0.422

0.18

0.258

0.387

0.155

0.236

0.319

rec11

20x10

0.166

0.278

0.365

0.168

0.266

0.377

0.131

0.239

0.335

rec13

20x15

0.144

0.237

0.319

0.121

0.196

0.28

0.119

0.181

0.268

rec15

20x15

0.146

0.222

0.304

0.149

0.212

0.273

0.097

0.194

0.285

rec17

20x15

0.193

0.284

0.376

0.17

0.25

0.356

0.169

0.236

0.335

rec19

30x10

0.187

0.25

0.376

0.164

0.235

0.323

0.151

0.214

0.34

rec21

30x10

0.212

0.282

0.447

0.154

0.253

0.356

0.144

0.232

0.324

rec23

30x10

0.152

0.278

0.426

0.188

0.259

0.35

0.162

0.23

0.309

rec25

30x15

0.183

0.248

0.31

0.154

0.231

0.315

0.143

0.211

0.274

rec27

30x15

0.214

0.287

0.356

0.182

0.267

0.378

0.174

0.252

0.325

rec29

30x15

0.225

0.306

0.38

0.204

0.305

0.415

0.187

0.285

0.41

rec31

50x10

0.166

0.25

0.332

0.165

0.237

0.322

0.182

0.23

0.356

rec33

50x10

0.175

0.238

0.369

0.151

0.223

0.321

0.151

0.218

0.332

rec35

50x10

0.106

0.178

0.265

0.075

0.154

0.225

0.071

0.15

0.239

rec37

75x20

0.198

0.265

0.312

0.195

0.263

0.337

0.194

0.258

0.3

rec39

75x20

0.188

0.244

0.326

0.184

0.242

0.286

0.168

0.231

0.29

rec41

75x20

0.232

0.286

0.352

0.215

0.276

0.336

0.213

0.275

0.324

5.2 Carlier와 Reeves 벤치마크 검증

다양한 공정상황을 모의할 수 있는 Carlier (28)와 Reeves (29) 벤치마크 데이터에서 Q-learning, double Q-learning 및 DDQL 기법 간 공정 최적화 성능의 차이를 비교한다. 또한, 최근까지 연구되어온 다른 흐름 생산 공정 스케줄링 알고리즘과도 공정 최적화 기법의 객관적인 성능을 검증한다. 흐름 생산 공정에 대한 성능평가에 활용되는 지표로는 최고 상대 오차(BRE), 평균 상대 오차(ARE) 및 최악 상대 오차(WRE)를 사용하였으며 각각 다음과 같이 수식으로 정의할 수 있다.

(13)
$BRE=\dfrac{z_{best}-z*}{z*}$

(14)
$ARE=\dfrac{z_{avg}-z*}{z*}$

(15)
$WRE=\dfrac{z_{worst}-z*}{z*}$

여기서 최고 상대 오차는 에이전트가 얼마나 최종 공정시간에 대한 최적해에 가까운 답을 도출했는지 평가하는 지표이다. 평균 상대 오차는 에이전트의 일반적인 성능을 평가하는 지표이다. 최악 상대 오차는 에이전트가 보장할 수 있는 최소성능을 평가하는 지표이다. 해당 지표들은 최적해를 기준으로 수치가 결정되므로 알고리즘이 최적해에 가까운 답을 도출할수록 해당 지표의 수치가 낮아지고 최적의 결과는 0과 같거나 작은 값을 나타낸다. 수식(13)에서 $z*$은 각각의 벤치마크 데이터에 대한 최종 공정시간의 최적해를 나타내며, $z_{best}$는 알고리즘이 도출한 최소의 최종 공정시간이다. 수식(14)의 $z_{avg}$는 알고리즘이 한 번의 반복마다 도출해낸 결과의 평균이고, 수식(15)에서 $z_{worst}$는 최악의 결과를 나타낸다.

벤치마크 데이터에 대한 알고리즘 간의 성능차이를 정량적으로 나타내기 위해 성능 개선율(PI, Performance Improvement) 수식을 다음과 같이 설정하였다.

(16)
$P I =\dfrac{z_{x}-z_{DDQL}}{z_{DDQL}}\times 100$

수식 (16)에서 $z_{x}$는 비교 대상인 기존의 알고리즘이 도출한 최종 공정시간을 나타내며, $z_{DDQL}$은 DDQL 알고리즘이 도출한 최종 공정시간을 나타낸다. 앞서 설명한 성능지표를 기준으로 기존의 Q-learning, double Q-learning 및 DDQL 방식을 적용했을 때의 결과를 표 2에 나타내었다. 여기서 bold로 표시한 값이 각 케이스 별 최소의 BRE, ARE, WRE 값임을 나타낸다. 또한, 최근까지 발표된 흐름 생산 공정 스케줄링 기법들인 L-HDE (30), ODDE(31), DBA (32), HBSA(33), PSOVNS (34), PSOMA (35), HTLBO (36), QDEA (37), HGA(38), HBA (39), HCS (40), HWA (41)를 적용했을 때의 비교결과를 그림 6에서 확인할 수 있다.

표 2의 결과를 통해 알 수 있듯이 DDQL 기법을 적용한 강화학습 기반 흐름 생산 공정 최적화 방식이 기존의 Q-learning 대비 평균 BRE 성능은 약 17%, ARE 성능은 약 22%, 그리고 WRE 성능은 약 23%의 성능 개선율을 나타냈다. 이는 DDQL 기법이 $Q$ 함수를 학습하는 과정에서 발생하는 높은 편향 문제를 검증용 가치함수와 학습용 가치함수 둘 다를 활용하는 방식으로 방지하고, $A$ 함수를 기반으로 $Q$ 함수의 분산을 감소시켜 에이전트의 일반화 성능의 개선에 기인한 결과임을 알 수 있다.

그림. 6. Car와 Rec 데이터에 대한 다수 알고리즘별 성능평가

Fig. 6. Performance evaluation of multiple algorithms based on Car and Rec data

../../Resources/kiee/KIEE.2021.70.10.1497/fig6.png

그림 6은 Car와 Rec 벤치마크 데이터의 BRE, ARE 및 WRE의 평균에 대한 각 흐름 생산 공정 스케줄링 알고리즘 간 비교결과이다. 그림에서 볼 수 있듯이 DDQL 알고리즘이 세 가지 성능지표에 대해 가장 우수한 성능을 보임을 알 수 있다. 특히, BRE 성능에서는 기존의 Q-learning 기반 강화학습 기법보다 DDQL 방식은 약 18%의 성능 개선을 보임으로써 궁극적으로 흐름 생산 공정의 유휴시간 감소 효과를 얻어낼 수 있다. 특히 ARE와 WRE에서 약 22%의 성능 개선을 보이는데 이는 DDQL 방식이 검증용 가치함수로 편향을 감소시키는 점을 이용해 기존의 단일 가치함수를 사용한 방식과 비교해 과추정을 방지하며, 이득 함수를 활용해 에이전트의 분산을 감소시키는 효과를 얻으면서 최적의 작업 정책을 선택하기 위한 상태 추정을 한 결과이다.

5.3 Taillard 벤치마크 검증

제안된 DDQL 기반 흐름 생산 공정 스케줄링 알고리즘을 보다 큰 규모의 다양한 작업환경에 대한 공정 최적화 성능을 확인하기 위해 흐름 생산 공정 최적화에 널리 사용되는 Taillard 벤치마크 데이터를 이용해 성능을 검증하였다. 최근까지 발표된 흐름 생산 공정 스케줄링 기법들과의 비교를 위해 HGA (43), TMIIG (44), DSOMA (45), IG_RIS (46), DWWO (4), IG_RIS (47) 알고리즘들의 성능도 함께 나타내었다. 각 알고리즘이 도출한 최적의 최종 공정시간을 기준으로 성능을 비교하였으며 이는 표 3에서 나타내었다.

표 3의 결과에서 비교적 간단한 흐름 생산 공정을 나타내는 20x20의 작업까지는 제안된 기법이 기존 휴리스틱 기반 알고리즘들과 비슷한 결과를 보인다. 하지만 상대적으로 복잡한 작업에 해당하는 50x5 이후부터는 작업 대부분에서 제안된 DDQL 기반 스케줄링 기법이 기존의 알고리즘보다 우수한 공정 최적화 성능을 보인다. 특히 흐름 공정의 규모가 커질수록 공정 최적화 성능의 차이가 점점 크게 나타난다. 수식(16)의 성능 개선율을 기준으로 평균을 낸 결과 공정 규모가 50x5일 때는 IG_RIS 알고리즘 대비 7% 개선, 500x20일 때는 18%의 개선을 보인다. 여기서 IG_RIS 알고리즘 대비 성능 개선율은 공정 규모에 따른 개별문제에 대해 $\sum\dfrac{z_{IGRIS}-z_{DDQL}}{z_{DDQL}}\times 100$ 의 평균값으로 나타내었다.

표 3. Taillard 데이터에 대한 다수 알고리즘별 성능평가

Table 3. Performance evaluation of multiple algorithms based on Taillard data

Instance

nxm

Upper bound

DDQL

HGA

DSOMA

IIGA

TMIIG

DWWO

IG_RIS

Ta001

20 x 5

1278

1322

1449

1374

1486

1486

1486

-

Ta002

1359

1412

1460

1408

1528

1528

1528

-

Ta003

1081

1257

1386

1280

1460

1460

1460

-

Ta004

1293

1464

1521

1448

1588

1588

1588

-

Ta005

1236

1296

1403

1341

1449

1449

1449

-

Ta006

1195

1324

1430

1363

1481

1481

1481

-

Ta007

1239

1328

1461

1381

1483

1483

1483

-

Ta008

1206

1327

1433

1379

1482

1482

1482

-

Ta009

1230

1282

1398

1373

1469

1469

1469

-

Ta010

20 x 10

1108

1176

1324

1283

1377

1377

1377

-

Ta011

1582

1754

1955

1698

2044

2044

2044

-

Ta012

1659

1881

2123

1833

2166

2166

2166

-

Ta013

1496

1685

1912

1676

1940

1940

1940

-

Ta014

1378

1553

1782

1546

1811

1811

1811

-

Ta015

1419

1647

1933

1617

1933

1933

1933

-

Ta016

1397

1635

1827

1590

1892

1892

1892

-

Ta017

1484

1673

1944

1622

1963

1963

1963

-

Ta018

1538

1748

2006

1731

2057

2057

2057

-

Ta019

1593

1739

1908

1747

1973

1973

1973

-

Ta020

1591

1668

2001

1782

2051

2051

2051

-

Ta021

20 x 20

2297

2540

2912

2436

2973

2973

2973

-

Ta022

2100

2316

2780

2234

2852

2852

2852

-

Ta023

2326

2563

2922

2479

3013

3013

3013

-

Ta024

2223

2374

2967

2348

3001

3001

3001

-

Ta025

2291

2513

2953

2435

3003

3003

3003

-

Ta026

2226

2457

2908

2383

2998

2998

2998

-

Ta027

2273

2470

2970

2390

3052

3052

3052

-

Ta028

2200

2376

2763

2328

2839

2839

2839

-

Ta029

2237

2525

2972

2363

3009

3009

3009

-

Ta030

2178

2391

2919

2323

2979

2979

2979

-

Ta031

50 x 5

2724

2830

3127

3033

3161

3161

3170

2974

Ta032

2834

3083

3438

3045

3432

3440

3441

3171

Ta033

2621

2744

3182

3036

3211

3213

3218

2988

Ta034

2751

2872

3289

3011

3339

3343

3349

3113

Ta035

2863

3049

3315

3128

3356

3361

3376

3140

Ta036

2829

3077

3324

3166

3347

3346

3352

3158

Ta037

2725

2921

3183

3021

3231

3234

3243

3005

Ta038

2683

2986

3243

3063

3235

3241

3239

3040

Ta039

2552

2733

3059

2908

3072

3075

3078

2889

Ta040

2782

2832

3301

3120

3317

3322

3330

3094

Ta041

50 x 10

3025

3484

4251

3638

4274

4274

4274

3605

Ta042

2892

3412

4139

3511

4177

4179

4180

3470

Ta043

2864

3253

4083

3492

4099

4099

4099

3465

Ta044

3064

3551

4480

3672

4399

4399

4407

3649

Ta045

2986

3523

4316

3633

4322

4324

4324

3614

Ta046

3006

3477

4282

3621

4289

4290

4294

3574

Ta047

3107

3529

4376

3704

4420

4420

4420

3667

Ta048

3039

3443

4304

3572

4318

4321

4323

3549

Ta049

2902

3427

4162

3541

4155

4158

4155

3510

Ta050

3091

3483

4232

3624

4283

4286

4286

3603

Ta051

50 x 20

3875

4642

6138

4511

6129

6129

6129

4484

Ta052

3715

4350

5721

4288

5725

5725

5725

4262

Ta053

3668

4214

5847

4289

5862

5873

5862

4261

Ta054

3752

4434

5781

4378

5788

5789

5789

4338

Ta055

3635

4303

5891

4271

5886

5886

5886

4249

Ta056

3698

4437

5875

4202

5863

5874

5871

4271

Ta057

3716

4373

5937

4315

5962

5968

5969

4291

Ta058

3709

4447

5919

4326

5926

5940

5926

4298

Ta059

3765

4502

5839

4329

5876

5876

5876

4304

Ta060

3777

4441

5935

4422

5958

5959

5958

4398

Ta061

100 x 5

5493

5608

6492

6151

6397

6397

6433

6038

Ta062

5268

5510

6353

6064

6234

6246

6268

5933

Ta063

5175

5444

6148

6003

6121

6133

6162

5837

Ta064

5014

5349

6080

5786

6026

6028

6055

5661

Ta065

5250

5596

6254

6021

6200

6206

6221

5873

Ta066

5135

5340

6177

5869

6074

6088

6121

5732

Ta067

5246

5461

6257

6004

6247

6254

6311

5890

Ta068

5106

5386

6225

5924

6130

6150

6197

5785

Ta069

5454

5693

6443

6154

6370

6391

6418

6029

Ta070

5328

5541

6441

6186

6381

6396

6404

6049

Ta071

100 x 10

5770

6612

8115

7042

8077

8080

8093

6896

Ta072

5349

6017

7986

6813

7880

7888

7891

6622

Ta073

5677

6290

8057

6943

8028

8042

8047

6766

Ta074

5791

6566

8327

7198

8348

8350

8364

7037

Ta075

5468

6293

7991

6815

7958

7967

7966

6690

Ta076

5303

5944

7823

6685

7801

7808

7791

6517

Ta077

5599

6192

7915

6827

7866

7880

7881

6684

Ta078

5623

6235

7939

6874

7913

7912

7924

6729

Ta079

5875

6474

8226

6092

8161

8164

8152

6908

Ta080

5845

6230

8186

6990

8114

8130

8126

6832

Ta081

100 x 20

6286

7411

10745

7854

10700

10722

10727

7683

Ta082

6241

7326

10655

7910

10594

10611

10604

7739

Ta083

6329

7461

10672

7825

10611

10629

10624

7697

Ta084

6306

7378

10630

7902

10607

10615

10615

7730

Ta085

6377

7397

10548

7901

10539

10563

10551

7694

Ta086

6437

7460

10700

7921

10690

10684

10680

7745

Ta087

6346

7520

10827

8051

10825

10832

10824

7848

Ta088

6481

7595

10863

8025

10839

10846

10839

7879

Ta089

6358

7356

10751

7969

10723

10763

10745

7771

Ta090

6465

7499

10794

8036

10798

10797

10787

7818

Ta091

200 x 10

10868

11824

15739

13507

15319

15377

15418

13100

Ta092

10494

11763

15534

13458

15085

15167

15252

13048

Ta093

10922

12112

15755

13521

15376

15416

15412

13135

Ta094

10889

11368

15842

13686

15200

15250

15304

13112

Ta095

10524

11828

15692

13547

15209

15268

15277

13097

Ta096

10331

11560

15622

13247

15109

15163

15222

12869

Ta097

10857

11942

15877

13910

15395

15441

15459

13351

Ta098

10731

11943

15733

13830

15237

15295

15307

13225

Ta099

10438

11627

15573

13410

15100

15155

15186

13036

Ta100

10676

11476

15803

13744

15340

15382

15378

13119

Ta101

11294

13089

20148

15027

19681

19723

19724

14484

Ta102

11420

13098

20539

15211

20096

20127

20091

14690

Ta103

11446

13460

20511

15247

19913

19973

19989

14776

Ta104

11347

13105

20461

15174

19928

19997

19940

14694

Ta105

11311

13143

20339

15047

19843

19900

19875

14547

Ta106

11282

13459

20501

15212

19942

20003

19980

14734

Ta107

11456

13369

20680

15168

20112

20145

20119

14744

Ta108

11415

13332

20614

15247

20056

20053

20053

14763

Ta109

11343

13180

20300

15136

19918

19998

19932

14643

Ta110

11422

13009

20437

15243

19935

19932

19916

14703

Ta111

500 x 20

26189

29410

49095

37064

46689

47046

46871

35372

Ta112

26629

30277

49461

37419

47275

47630

47294

35743

Ta113

26458

29712

48777

37059

46544

46977

46846

35452

Ta114

26549

30292

49283

37014

46899

47328

47185

35687

Ta115

26404

30258

48950

36894

46741

47238

47037

35417

Ta116

26581

30302

49533

37372

46941

47553

47166

35747

Ta117

26461

29556

48943

36998

46509

46944

46794

35395

Ta118

26615

30341

49277

36944

46873

47346

47127

35568

Ta119

26083

30047

49207

36862

46743

47205

47025

35304

Ta120

26527

29842

49092

37098

46847

47374

47105

35643

흐름생산 공정문제는 전형적인 NP-hard 문제로써 기존의 접근 방식들은 대부분 rule-based 또는 휴리스틱 기법을 이용해 near-optimal 값을 찾아낸다. 특히 큰 규모의 공정 상황에서는 통계적인 휴리스틱 기법을 사용하게 되는데, 이 과정에서 도출한 근접값은 최적의 최종 공정 시간 값과 충분히 가깝지 않은 상황이 발생할 수 있다.

본 논문에서는 Markov decision process로 모델링이 가능한 흐름생산 공정문제를 강화학습 기법으로 해결하였고, 최적의 흐름생산 최종 공정시간을 제공하기 위한 상태, 행동, 보상에 대해 정의함으로써 강화학습 모델을 설계하였다. 특히 Q-learning은 강화학습의 대표적인 방식으로 Markov decision process를 기반으로 한 최적 정책값에 안정적으로 수렴하는 장점이 있고, 특히 큰 규모의 공정에 대해 얻은 최적 정책을 기반으로 기존의 기법들과 비교해 최적에 가까운 최소 공정시간을 예측할 수 있다. 또한, 제안된 DDQL 기반 스케줄링 기법이 Double Q-learning 구조를 가지면서 탐색 편향으로 인한 과추정 문제를 해결하고, Dueling 구조를 적용하여 $A$ 함수를 기반으로 $Q$ 함수의 분산을 감소시킴으로써 현재 상태에 대한 가치 추정의 개선을 통해 $Q$ 함수의 일반화 성능을 향상한 결과이다.

흐름 생산 공정에서 기계와 작업의 개수가 많은 상황에서는 현재 상태에서 취해야 하는 다음 행동의 후보가 많아져 상태에 대한 정보와 상태에서 취할 수 있는 행동의 예측 보상이 모두 포함된 단일 $Q$ 함수의 분산이 매우 커질 수 있다. Dueling 구조는 $Q$ 함수를 $V$ 함수와 $A$ 함수로 분리하여 에이전트가 특정 상태에 대한 가치와 상태에서 취할 수 있는 행동의 가치를 동시에 고려함으로써 불필요한 학습을 억제하게 한다. 이를 통해 기존의 강화학습 기반 방식들보다 다양한 작업에 대해 최적의 작업배열순서를 도출할 수 있음을 알 수 있다.

6. 결 론

본 연구는 다양한 흐름 생산 공정 환경에서 최종 공정시간 최소화를 보장할 수 있는 DDQL 기반 흐름 생산 공정 최적화 알고리즘을 제안한다. 강화학습 에이전트가 $Q$ 함수를 갱신하는 과정에서 double Q-learning 및 Dueling 구조를 적용함으로써 기존의 휴리스틱 기반 스케줄링과 Q-learning 기반 공정 최적화에서 발생할 수 있는 $Q$ 함수 분산증가, 탐색 편향 등의 문제를 해결하였다.

다양한 흐름 생산 공정을 모의할 수 있는 Car 및 Rec 벤치마크 데이터를 이용한 실험 결과 기존 강화학습 기반 흐름 생산 공정 최적화 기법보다 BRE 성능은 17%, ARE 성능은 22% 개선된 결과를 확인할 수 있었다. 또한, Taillard 벤치마크 데이터 기준 알고리즘이 도출한 최적의 작업 순열에서 기존의 휴리스틱 알고리즘 대비 최종 공정시간이 최대 18% 개선된 결과를 확인할 수 있었다. 특히, DDQL 알고리즘의 $Q$ 함수 학습에 따른 일반화 성능 개선으로 공정 규모가 큰 상황에서 다른 흐름 생산 공정 최적화 알고리즘보다 압도적인 성능을 나타냈다. DDQL 기법을 실제 공정에 적용하면 작업 공정의 최적화를 통해 기계 유휴시간을 감소시켜 공정 유지비용 절감의 효과를 얻을 수 있다.

Acknowledgements

This work was supported by the Smart Manufacturing Innovation Leaders program funded by the Ministry of the Trade, Industry & Energy(MOTIE, Korea).

References

1 
R. Ruiz, J. A. V Rodriguez, 2010, The hybrid flow shop scheduling problem, European journal of operational research, Vol. 205, No. 1, pp. 1-18DOI
2 
S. M. Johnson, 1954, Optimal two‐and three‐stage production schedules with setup times included, Naval research logistics quarterly, Vol. 1, No. 1, pp. 61-68DOI
3 
T. Kis, E. Pesch, 2005, A review of exact solution methods for the non-preemptive multiprocessor flowshop problem, European Journal of Operational Research, Vol. 164, No. 3, pp. 592-608DOI
4 
M. S. Nagano, H. H. Miyata, 2016, "Review and classification of constructive heuristics mechanisms for no-wait flow shop problem, The International Journal of Advanced Manufacturing Technology, Vol. 86, No. 5, pp. 2161-2174DOI
5 
D. Arora, G. Agarwal, 2016, Meta-heuristic approaches for flowshop scheduling problems: a review, International Journal of Advanced Operations Management, Vol. 8, No. 1, pp. 1-16Google Search
6 
P. E. T. E. R. Stefan, 2003, Flow-shop scheduling based on reinforcement learning algorithm, Production Systems and Information Engineering, Vol. 1, No. 1, pp. 83-90Google Search
7 
R. S. Sutton, A. G. Barto, 1998, Introduction to reinforcement learning (Vol. 135), Cambridge: MIT pressGoogle Search
8 
H. Hasselt, 2010, Double Q-learning. Advances in neural information processing systems, 23, pp. 2613-2621Google Search
9 
Z. Wang, T. Schaul, M. Hessel, H. Hasselt, M. Lanctot, N. Freitas, June 2016, Dueling network architectures for deep reinforcement learning, In International conference on machine learning (pp. 1995-2003). PMLRGoogle Search
10 
J. M. Framinan, R. Leisten, R. Ruiz-Usano, 2002, Efficient heuristics for flowshop sequencing with the objectives of makespan and flowtime minimisation, European Journal of Operational Research, Vol. 141, No. 3, pp. 559-569DOI
11 
M. Nawaz, E. E. Enscore Jr, I. Ham, 1983, A heuristic algorithm for the m-machine, n-job flow-shop sequencing problem. Omega, Vol. 11, No. 1, pp. 91-95Google Search
12 
M. Ancău, 2012, On solving flowshop scheduling problems. Proceedings of the Romanian Academy, Series A, Vol. 13, No. 1, pp. 71-79Google Search
13 
T Yamada, 2003, Studies on metaheuristics for jobshop and flowshop scheduling problemsGoogle Search
14 
L. Wang, L. Zhang, D. Z Zheng, 2006, An effective hybrid genetic algorithm for flow shop scheduling with limited buffers, Computers & Operations Research, Vol. 33, No. 10, pp. 2960-2971DOI
15 
T. K. Varadharajan, C. Rajendran, 2005, A multi- objective simulated-annealing algorithm for scheduling in flowshops to minimize the makespan and total flowtime of jobs, European Journal of Operational Research, Vol. 167, No. 3, pp. 772-795DOI
16 
M. Akhshabi, J. Khalatbari, 2011, Solving flexible job-shop scheduling problem using clonal selection algorithm, Indian Journal of Science & Technology, Vol. 4, No. 10, pp. 1248-1251Google Search
17 
C Low, 2005, Simulated annealing heuristic for flow shop scheduling problems with unrelated parallel machines, Computers & Operations Research, Vol. 32, No. 8, pp. 2013-2025DOI
18 
I. A. Chaudhry, A. M Khan, 2012, Minimizing makespan for a no-wait flowshop using genetic algorithm, Sadhana, Vol. 37, No. 6, pp. 695-707DOI
19 
Y. Fonseca, Y. Martinez, A. E. Figueredo, L. A. Pernia, 2014, Behavior of the main parameters of the Genetic Algorithm for Flow Shop Scheduling Problems, Revista Cubana de Ciencias Informaticas, Vol. 8, No. 1, pp. 99-111Google Search
20 
C. R. A Reeves, 1995, genetic algorithm for flowshop sequencing, Computers & operations research, Vol. 22, No. 1, pp. 5-13DOI
21 
A. Sadegheih, 2006, Scheduling problem using genetic algorithm, simulated annealing and the effects of parameter values on GA performance, Applied Mathematical Modelling, Vol. 30, No. 2, pp. 147-154DOI
22 
Y. Zhang, X. Li, Q. Wang, 2009, Hybrid genetic algorithm for permutation flowshop scheduling problems with total flowtime minimization, European Journal of Operational Research, Vol. 196, No. 3, pp. 869-876DOI
23 
P. E. T. E. R. Stefan, 2003, Flow-shop scheduling based on reinforcement learning algorithm, Production Systems and Information Engineering, Vol. 1, No. 1, pp. 83-90Google Search
24 
Y. C. Fonseca-Reyna, Y. Martinez-Jimenez, A. Nowe, 2018, Q-learning algorithm performance for m-machine, n-jobs flow shop scheduling problems to minimize makespan, Investigacion Operacional, Vol. 38, No. 3, pp. 281-290Google Search
25 
Z. Zhang, W. Wang, S. Zhong, K. Hu, 2013, Flow shop scheduling with reinforcement learning, Asia-Pacific Journal of Operational Research, 1350014, Vol. 30DOI
26 
E Taillard, 1993, Benchmarks for basic scheduling problems, european journal of operational research, Vol. 64, No. 2, pp. 278-285DOI
27 
J. H. Lee, H. J. Kim, 2021, Reinforcement learning for robotic flow shop scheduling with processing time variations, International Journal of Production Research, pp. 1-23DOI
28 
J Carlier, 1978, Ordonnancements a contraintes disjonctives, RAIRO- Operations Research, Vol. 12, No. 4, pp. 333-350Google Search
29 
A Reeves C. R, 1995, genetic algorithm for flowshop sequencing, Computers & operations research, Vol. 22, No. 1, pp. 5-13DOI
30 
Y. Liu, M. Yin, W. Gu, 2014, An effective differential evolution algorithm for permutation flow shop scheduling problem. Applied Mathematics and Computation, 248, pp. 143-159DOI
31 
X. Li, M. Yin, 2014, An opposition-based differential evolution algorithm for permutation flow shop scheduling based on diversity measure, Advances in Engineering Software, Vol. 55, pp. 10-31DOI
32 
Q. Luo, Y. Zhou, J. Xie, M. Ma, L. Li, 2014, Discrete bat algorithm for optimal problem of permutation flow shop scheduling, The Scientific World JournalDOI
33 
Q. Lin, L. Gao, X. Li, C. Zhang, 2015, A hybrid backtracking search algorithm for permutation flow-shop scheduling problem, Computers & Industrial Engineering, Vol. 85, pp. 437-446DOI
34 
M. F. Tasgetiren, Y. C. Liang, M. Sevkli, G. Gencyilmaz, 2007, A particle swarm optimization algorithm for makespan and total flowtime minimization in the permutation flowshop sequencing problem, European journal of operational research, Vol. 177, No. 3, pp. 1930-1947DOI
35 
B. Liu, L. Wang, Y. H. Jin, 2007, An effective PSO-based memetic algorithm for flow shop scheduling, IEEE Transactions on Systems, Man, and Cybernetics, Part B (Cybernetics), Vol. 37, No. 1, pp. 18-27DOI
36 
Z. Xie, C. Zhang, X. Shao, W. Lin, H. Zhu, 2014, An effective hybrid teaching–learning-based optimization algorithm for permutation flow shop scheduling problem, Advances in Engineering Software, Vol. 77, pp. 35-47DOI
37 
T. Zheng, M. Yamashiro, 2010, Solving flow shop scheduling problems by quantum differential evolutionary algorithm, The International Journal of Advanced Manufacturing Technology, Vol. 49, No. 5, pp. 643-662DOI
38 
L. Y. Tseng, Y. T. Lin, 2010, A hybrid genetic algorithm for no-wait flowshop scheduling problem, International journal of production economics, Vol. 128, No. 1, pp. 144-152DOI
39 
O. Tosun, M. K. Marichelvam, 2016, Hybrid bat algorithm for flow shop scheduling problems, International Journal of Mathematics in Operational Research, Vol. 9, No. 1, pp. 125-138Google Search
40 
X. Li, M. Yin, 2013, A hybrid cuckoo search via Levy flights for the permutation flow shop scheduling problem, International Journal of Production Research, Vol. 51, No. 16, pp. 4732-4754DOI
41 
M. Abdel-Basset, G. Manogaran, D. El-Shahat, S. Mirjalili, 2018, A hybrid whale optimization algorithm based on local search strategy for the permutation flow shop scheduling problem, Future Generation Computer Systems, Vol. 85, pp. 129-145DOI
42 
G. I. Zobolas, C. D. Tarantilis, G. Ioannou, 2009, Minimizing makespan in permutation flow shop scheduling problems using a hybrid metaheuristic algorithm, Computers & Operations Research, Vol. 36, No. 4, pp. 1249-1267DOI
43 
L. Y. Tseng, Y. T. Lin, 2010, A hybrid genetic algorithm for no-wait flowshop scheduling problem, International journal of production economics, Vol. 128, No. 1, pp. 144-152DOI
44 
J. Y. Ding, S. Song, J. N. Gupta, R. Zhang, R. Chiong, C Wu, 2015, An improved iterated greedy algorithm with a Tabu-based reconstruction strategy for the no-wait flowshop scheduling problem, Applied Soft Computing, Vol. 30, pp. 604-613DOI
45 
D. Davendra, M. Bialic-Davendra, 2013, Scheduling flow shops with blocking using a discrete self-organising migrating algorithm, International Journal of Production Research, Vol. 51, No. 8, pp. 2200-2218DOI
46 
M. F. Tasgetiren, D. Kizilay, Q. K. Pan, P. N. Suganthan, 2017, Iterated greedy algorithms for the blocking flowshop scheduling problem with makespan criterion, Computers & Operations Research, Vol. 77, pp. 111-126DOI
47 
F. Zhao, H. Liu, Y. Zhang, W. Ma, C. Zhang, 2018, A discrete water wave optimization algorithm for no-wait flow shop scheduling problem, Expert Systems with Applications, Vol. 91, pp. 347-363DOI
48 
Q. K. Pan, L. Wang, B. H. Zhao, 2008, An improved iterated greedy algorithm for the no-wait flow shop scheduling problem with makespan criterion, The International Journal of Advanced Manufacturing Technology, Vol. 38, No. 7, pp. 778-786DOI

저자소개

김성준(Kim Seong Joon)
../../Resources/kiee/KIEE.2021.70.10.1497/au1.png

Seong Joon Kim is currently pursuing the integrated B.S. and M.S. degree from the Department of Information and Communication Engineering, Changwon National University, Chang won-si, South Korea.

His research interests include visible light communications and artificial intelligence.

김병욱(Byung Wook Kim)
../../Resources/kiee/KIEE.2021.70.10.1497/au2.png

Byung Wook Kim received the B.S. degree from the School of Electrical Engineering, Pusan National University, Pusan, South Korea, in 2005, and the M.S. and Ph.D. degrees from the Department of Electrical Engineering, KAIST, Daejeon, South Korea, in 2007 and 2012, respectively.

He was a Senior Engineer with the Korea Electrotechnology Research Institute, Changwon-si, South Korea, from 2012 to 2013.

He was an Assistant Professor with the School of Electrical and Railway Engineering, Kyungil University, Gyeongsan-si, South Korea, from 2013 to 2016.

He was an Assistant Professor with the Department of ICT Automotive Engineering, Hoseo University, from 2016 to 2019.

He is currently an Assistant Professor with the Department of Information and Communication Engineering, Changwon National University, Changwon-si, South Korea.

His research interests include visible light communications, machine learning, and deep learning.