DOI QR코드

DOI QR Code

A production scheduling Method considering Usability of Form Module Combinations

형상모듈 조합의 이용 가능 여부를 활용한 생산 스케줄링 방법

  • Seokmin, Han (Dept. of Data Science, Korea National University of Transportation)
  • 한석민 (한국교통대학교 데이터사이언스전공)
  • Received : 2023.01.13
  • Accepted : 2023.02.03
  • Published : 2023.02.28

Abstract

Recently, many manufacturing companies are paying more attention to energy efficiency due to increased energy costs. Energy-efficient scheduling of production systems is a good method for energy efficiency improvement and cost reduction. In this research, we assumed the tire production problem and aim to construct a production scheduling considering specific shape module types, ordered amount for each tire, number of production modules, and the production time for each type. To facilitate effective production scheduling, we considered the types and number of shape modules currently available, and tire types that can be selected to be produced in the next stage were used as additional inputs, In addition to that, additional production was permitted to reduce the halt of production processing. Thus, an average production module utilization rate of about 62 percent was obtained.

최근 많은 제조 기업들이 에너지 비용과 환경 인식의 증가로 인해 에너지 효율에 더 많은 관심을 기울이고 있다. 생산 시스템의 에너지 효율적인 생산스케줄링은 생산에 필요한 에너지 효율을 개선하고 비용을 절감하는 효과적인 방법이다. 본 논문에서는 타이어 생산 문제를 상정하고, 일정한 종류와 형상 모듈 종류 및 각 타이어별 주문량, 생산 모듈의 개수 및 각 종류별 생산시간을 고려하여 생산스케줄링을 구축하는 것을 목표로 하였다. 효과적인 생산스케줄링에 용이하도록 현 상태에서 이용가능한 형상 모듈 종류 및 개수를 고려하여, 다음 단계에서 생산하기로 선택이 가능한 타이어 종류를 부가적인 입력으로 이용하였고, 주문량 이상의 추가 생산이 가능하도록 하였다. 그리하여 평균 62퍼센트 가량의 생산모듈 가동률을 얻었다.

Keywords

Ⅰ. 서론

에너지 소비는 현대 사회에서 중요한 문제이다. 지난 40년 동안 세계의 에너지 수요는 두 배가 되었고 향후 10년 안에 다시 두 배가 될 것으로 예측된다[1]. 일반적으로 산업은 에너지의 주요 소비자 중 하나이다. 특히 제조업의 에너지 소비와 수요를 줄이는 것은 각국의 에너지 소비 감소를 위해 필수적이고, 각 기업은 에너지 소비 감소를 위해 노력하고 있다. 제조업은 생활수준이 높아짐에 따라 지속적으로 증가하는 다양한 상품을 생산하는 역할을 하고 있고, 여기에 필요한 에너지는 대체 불가능한 생산요소이다. 따라서 제조업의 에너지 공급을 직접 줄이는 것보다는, 에너지 소비를 줄이고 동시에 원하는 결과를 추구하는 것이 합리적이다. 따라서, 에너지 효율을 개선하거나 동일한 출력에 대한 에너지 수요를 줄이는 방법은 에너지 소비를 줄이고 지속 가능한 개발이라는 목적을 달성하기 위한 중요한 접근법이 된다. 생산공정에서의 생산 기계는 대부분의 시간 동안 유휴 상태를 유지하며, 이 상태에서 약 80%의 에너지가 소비된다[2]. 이것은, 에너지 절약이 가능한 영역이 잠재적이지만 상당히 많다는 것을 뜻한다[3]. ICT를 이용하여 이런 문제 해결을 위해 노력하기도 하지만[4], 일반적으로 생산스케줄링은 이러한 문제를 해결하기 위한 효과적인 접근법이며, 어떤 작업을 실행할 것인지, 언제 실행할 것인지, 어떤 순서로 처리할 것인지를 결정하는 중요한 의사 결정 과정이다. 생산스케줄링의 이러한 역할에도 불구하고, 에너지 효율을 개선하는 데 필요한 방식이라고 좀처럼 간주되지 않아왔다. 다행히, 최근 몇 년 동안 많은 연구자들이 제조 산업의 에너지 효율을 개선하기 위해 스케줄링 접근법을 사용하고 있으며, 에너지 사용이 효율적이게 만들어주는 생산스케줄링은, 자본 투자를 전혀 또는 거의 하지 않고도 에너지 소비를 줄이는 효과적인 방법임이 알려졌다[5,6]. 이를 위해 Genetic Algorithm을 이용한 방식[7]이나 Reinforcement Learning을 이용하는 방식[8]이 적용되오고 있다. 에너지 효율을 높이거나 에너지 소비를 줄이기 위한 생산 스케줄링은 NP-hard 문제로 손쉬운 문제는 아니지만, 추가 자본 없이 생산과정에 소요되는 자원과 시간, 에너지를 줄일 수 있다는 점에서 매우 의미있는 시도라고 할 수 있다.

Ⅱ. 본론

생산 관리 및 스케줄링을 위해서는 3가지 요소를 결정지어야 한다. 우선, 생산 자원의 현 상태를 나타내는 상태(state), 행동(action), 보상(reward)을 변수화할 필요가 있다. 기본적으로 이 3가지 변수는 강화학습에 필요한 변수이기도 하다. 본 연구에서 상정한 생산 스케쥴링은, 주문받은 타이어의 종류와 개수를 파악하고, 특정 타이어의 형상을 결정하는 형상 모듈, 형상 모듈을 설치하고 타이어를 생산하는 생산 모듈을 동시에 고려해야한다. 따라서, 타이어 종류 및 개수, 특정 타이어별 형상 모듈 조합, 특정 생산 모듈의 이용 가능 여부를 상태(state)로 설정한다. 행동(action)으로는 특정 상태에서 어떤 타이어를 생산할 것인지를 결정하는 것으로 정하도록 한다. 보상으로는, 진행가능한 행동을 선택하였을 때는 일정한 점수를 주도록 하고, 진행 불가능한 행동을 선택하였을 경우에는 감점 또는 종료하도록 한다. 행동의 주체를 agent라고 칭한다. 이 연구의 목표는 agent가 가장 효율적으로 가능한 한 짧은 시간안에 주문받은 타이어를 모두 다 생산하는 것이다.

본 연구에서 가정한 상황에서, 타이어는 다양한 형상 모듈의 조합으로 완성된다. 주문한 타이어를 생산할 수 있기 위해서는, 우선 형상 모듈의 수량 및 이용 가능 여부를 고려해야 한다. 또한, 생산 모듈이 한 개만 있는 상황이 아니라, 복수개의 생산 모듈을 가정하고 있으므로, 생산 모듈 중 이용이 가능한 것이 있는지를 동시에 고려해야 한다. 가장 바람직한 것은, 동시에 사용이 가능한 생산 모듈이 있는 경우, 남아있는 형상 모듈로 조합이 가능한 타이어를 최대한 병렬적으로 생산하는 것이다. 유휴상태(idle 상태)를 가능한 한 줄이는 것이 생산 효율성을 최대화 하는 것이라고 할 수 있다. 여기서 생각해야할 것은, 타이어 종류별로 생산 모듈에서 생산이 시작 된 후 소요되는 시간이 모두 다르다는 점이다. 즉 생산 모듈이 복수개인 경우, 최초로 생산을 시작할 경우는 병렬 생산이 가능하나, 그 이후로는 각 생산모듈이 사용가능해지는 시간이 다르기 때문에, 동시에 병렬 생산이 가능할 확률이 매우 낮다고 할 수 있다. 각 생산모듈별로 이용가능 상태가 되는 시간이다르고, 그 순간 이용이 가능한 형상 모듈을 이용하여 타이어를 생산해야 한다.이 때, 이용가능상태가 되는 생산모듈은, 생산에 이용한 형상모듈을 원래대로 돌려놓는 것을 가정해야 한다. 이때 생산하는 타이어의 경우, 주문량 이내의 상태라면 상관이 없으나, 이미 주문량을 초과한 경우라면 타이어를 즉시 생산하는 것이 나은 것인지, 생산을 멈출 것인지도 결정해야 한다. 이런 여러 경우의 수가 있기 때문에, 주문한 타이어의 종류와, 동시에 생산 가능한 생산모듈의 수가 일정한 크기 보다 커지면, 최적 생산 스케줄을 알 아내는 것이 불가능해진다. 다만 일정 수준 이상의 효율성을 보이면 현장에 적용하고, 추후 연산을 통해 더 좋은 생산 스케쥴을 알게되면 생산 스케쥴을 바꾸는 방식으로 의사결정을 해야한다. 이런 문제는 세대를 거듭할수록 더 나은해답을 찾아 가는 방식인데, 다양한 방법으로 이 문제에 접근할 수 있다. GA(Genetic Algorithm)을 사용할 수도 있고, Reinforcement learning을 사용할 수도 있다.

Ⅲ. 3장 생산스케줄링 방법

본 연구에서 상정한 생산스케줄링 문제는, 보상(reward)를 어떻게 설정하느냐의 문제를 정의하면 다양한 방법으로 접근이 가능하다. 그러나, 학습 시간을 단축하고 올바른 생산스케줄을 상대적으로 손쉽게 찾아내도록 하기 위해, 또 다른 특징(feature)을 입력변수로 설정하도록 한다. 현 상태에서 보유한 형상 모듈로 제작 가능한 타이어 종류 및 개수를 계산하고, 이것을 입력변수로 이용한다. 이렇게 하면, 현 상태에서 다음 상태로 전이할 시, 실제로 제작이 불가능한 형상 모듈 조합을 선택하는 경우를 회피함으로써, 학습 시간 및 생산스케줄 탐색 시간을 감소시킬 수 있다. 또한, 현 상태에서 생산 가능한 타이어 모델 중, 현재 보유한 형상 모듈로도 많이 생산할 수 있는 타이어를 다음 생산품목으로 설정한다면, 다음 단계의 생산모델 선택으로 인해 그 다음 단계의 생산모델 선택에 영향을 줄 가능성이 낮아진다. 단, 현 상태에서 가장 많이 생산 가능한 모델을 선택한다면, 그 다음 단계에서도 동일한 모델을 생산할 확률도 높아지므로, 결정론적(deterministic)으로 선택하는 것 보다는 확률적으로 선택하는 것이 잠재적으로 더 넓은 생산 스케줄 범위를 탐색함으로, 장기적 관점에서 더 좋은 생산스케줄을 얻어낼 수 있다.

생산스케줄링에서 본 연구에서 이용한 또 하나의 방법은, 주문받은 생산량 보다 추가 생산이 가능하도록 한 것이다. 생산스케줄 구축을 진행하다보면, 특정 모델은 주문량을 미리 달성하는 경우가 반드시 발생한다. 주문량을 미리 달성하였기 때문에 생산을 금지하는 정책을 선택할 수 있는데, 이용가능한 생산모듈과 조합 가능한 형상 모듈이 모두 존재하나, 조합 가능한 모듈이 주문량을 이미 달성한 모듈인 경우, 아무런 동작도 하지 않고 생산 스케줄 구축 과정이 멈춰야 하는 경우가 있다. 이런 경우를 방지하기 위해 주문량 이상의 추가 생산이 가능하도록 하는 정책을 선정하였다. 다만, 지나친 추가 생산이 이루어지지 못하도록 모델별 상한선을 설정하도록 한다..

Ⅳ. 실험 및 결과

본 연구에서는 실제 데이터를 근거로 모두 1013개의 타이어 주문량을 상정하였다. 그 중, 실제 생산이 불가능한 일부 종류를 생산 목록에서 제거하였다. 생산이 불가능한 종류란, 보유한 형상 모듈의 조합으로 생산이 불가능한 종류를 뜻한다. 생산이 불가능한 종류를 제거하, 총 56가지, 961개의 타이어 주문량을 만족시키는 것이 목표가 된다. 가장 많이 주문받은 종류는 93개의 주문량이 있고, 생산 불가한 종류를 제외한다면 가장 적게 주문받은 종류는 1개이다. 생산 불가한 종류를 제외하면, 주문받은 타이어의 총 종류는 56가지로 상정한다. 다음 표1은 상정한 타이어 종류별 주문량 및 종류별 생산시간을 표시한다.

표 1. 주문받은 타이어 종류별 개수 및 생산시간

OTNBBE_2023_v23n1_139_t0001.png 이미지

Table 1. The number of ordered tires and the production time by type

변수에서 다음 행동(action)을 취하였을 때 보상(reward)가 높아진다면 그 행동을 유지하고, 보상이 낮아지거나 보상이 없다면 그 행동을 회피하는 방식으로 최적 스케줄을 찾아가게 된다. 생산스케줄을 구축하다보면, 어쩔 수 없이 동시에 병렬적으로 생산을 할 수 없는 경우가 발생하게 된다. 생산량을 달성해갈수록, 생산이 필요없는 타이어 종류가 늘어나게 된다. 또한, 추가 생산을 가능하게 하는 방식을 사용하여 생산모듈이 idle 한 상태가 없도록 유도하여도, 생산 모듈과 형상 모듈을 처음 상태로 리셋(reset) 시켜야 하는 경우는 발생하게 된다. 생산모듈이 idle 상태인 것을 피할 뿐 아니라, 이 리셋 발생을 최대한 억제하는 것이 효율적인 생산스케줄이 될 것이다. 생산스케줄의 질적 우수성은, 생산 모듈이 idle 상태인 경우를 최소화하며, 또한 리셋 발생을 최소화 하는 방식으로 계산할 수 있다. 생산스케줄의 우수성을 판가름 하는 또하나의 요소는 생산시간이다. 생산시간과 생산 모듈이 idle 상태를 최소화시키는 것 및 리셋 발생 최소화 하는 것은 서로 상관관계가 있다. 본 연구에서는 리셋 발생 최소화와 생산 모듈 idle 상태인 경우를 포함하여, 총 생산 모듈수 대비 평균적으로 이용된 생산 모듈의 비율로 생산스케줄의 유효성 판별의 지표로 삼도록 한다.

아래 그림 1 은 본 연구에서 실행한 생산스케줄 결과이다. 그림 1의 파란색 선은 본 연구에서 산출된 시스템의 생산모듈 이용률이고, 빨간색 선은 이론적으로 가능한 최대치를 표시한 것이다. 여기서 이용률이란, 해당 시간대에서 생산모듈의 총 개수중, 타이어 생산에 사용된 생산모듈의 개수의 비율이다. 수식으로는 다음과 같다.

\(\begin{aligned}\text {이용률}=\frac{\text { 현재 사용중인 생산모듈개수 }}{\text { 총 생산모듈개수 }} * 100\\\end{aligned}\)

예를 들면, 본 연구에서는 총 생산모듈 개수는 16개이다. 생산스케줄 초반부에는, 모든 생산모듈이 사용중이다. 따라서 이용률은 100%가 된다. 또한, 생산시간이 6000가량 되었을 때, 생산에 사용되는 생산모듈은 16개 중 13개가 이용되고 있었다. 따라서, (13/16)*100≃81.3%가 된다.

생산모듈 이용률에 영향을 주는 요인으로 가장 중요한 것으로는, 형상모듈의 종류와 이용가능한 개수 라고할 수 있다. 형상모듈이 종류별로 개수가 충분하다면 생산모듈이 쉬지 않고 이용률이 늘 100%가 되도록 작동하도록 할 수 있다. 형상모듈의 종류가 일정하다면 각 종류별로 개수가 많을수록 이용률이 높아진다. 형상모듈의 종류가 많아지는 것 자체는 영향이 크지 않을 수 있으나. 종류가 많아져서 각 종류별 개수가 적어진다면 이용률이 떨어질 가능성이 높다. 그와 함께, 당연히 생산모듈의 수가 많아지면 이용률은 낮아질 수 있다. 또한, 타이어 종류별 생산시간이 비교적 균일할수록 이용률을 높이기에 좋다. 타이어 종류별 생산시간의 편차가 크다면, 생산스케줄링이 복잡해지고, 형상모듈을 특정 생산모듈에서 상대적으로 오랫동안 선점하는 경우가 생길 가능성이 커진다.

이론적 최대치는, 이용률이 100%로 유지되었을 경우를 가정하여, 실제 시스템 결과와 그래프상 면적이 같은 지점을 뜻한다. 즉, 본 논문에서의 이용률의 정의가 개별 생산모듈을 고려한 것이 아니라, 전체 생산모듈중 사용중인 생산모듈의 비율 이므로, 이론적 최대치라는 것은 전체 생산모듈이 최대한 사용될 수 있는 이론적인 최대치를 뜻한다. 형상모듈 숫자가 충분하여 생산스케줄이 완벽하다면, 생산모듈 이용률이 100%를 유지하다가, 주문한 수량을 다 생산하게 되면 갑자기 이용률이 0%로 떨어지면서 생산과정이 끝나야 한다. 바로 이렇게 이용률이100%에서 0%로 떨어지는 시점이 이론적 최대치가 달성된 시점이다. 그러나 이것은 비용을 생각하지 않고 형상모듈의 갯수를 충분히 확보하고 있을 때만 가능한 경우이고, 실제로는 이용률이 100%를 유지하다가 어느 순간부터 점차 감소하다 0%를 향해 내려가게 된다. 가령,, 그림 1에서, 생산모듈 이용률이 초반 4000시간 까지는 100% 가깝게 유지되다가, 그 이후로는 이용률이 점차 떨어진다. 즉, 전체 생산모듈중 생산을 위해 사용하지 못하는 모듈 수가 시간이 지날수록 늘어난다는 뜻이다. 이에 따라, 생산시간이 늘어나게 되고, 생산시간이 증가되는 효과를 야기한다. 생산시간 4000이후 이용률 100%를 채우지 못하고 이용률이 감소되기 때문에, 그림 1에서 이론적 최대치로 표시되는 빨간색 선을 벗어나 추가적인 생산시간을 소요하게 된다. 즉, 4000시간 이후부터 이용률 100% 지점과 실제 시스템의 이용률의 차이는 결국, 약 8000시간 이후(이론적 최대치)의 추가적인 생산 모듈 이용률로 나타나게 된다. 그림 1에서, A의 면적은 생산모듈을 이용하지 못하여 생성된, 생산량 미달 영역이다. 이를 보완하는 것은 B의 면적이고, B는 이론적 최대치 이후시간에 생산된 생산량을 뜻한다. 이 A와 B의 면적이 같아야하고, 이론적 최대치 지점에서 A와 B의 면적이 같아진다고 가정할 수 있다.. 이론적 최대치가 그림 1에서 약 8000시간으로 표시되는데, 그 시간에 맞추어 생산한다면 생산모듈 이용률을 100%이용하여 주문량에 맞게 모두 생산이 가능한, 최적화 상태라고 할 수 있다. 이 이론적최대치를 정확히 구하려면 최적 생산스케줄을 구하여, 타이어 종류별 생산순서와 생산시간을 알 수 있어야 구할 수 있다. 그러나 최적 생산스케줄을 아는 것은 불가능하므로, 이론적 최대치는 대략적으로만 계산하고 가이드라인으로만 사용하는 것이 좋다. 이론적 최대치를 계산하기 위해서는, 그림 1과 같은 그래프를 그려야 하므로, 중요한 요인은 생산스케줄링 순서와 각 타이어별 생산시간, 형상모듈의 개수와 생산해야할 주문량이다. 생산스케줄링에 따라 생산모듈별로 타이어별 생산시간이 누적되어 나타나기 때문에, 스케줄링을 어떻게 하느냐가 큰 영향을 준다. 생산스케줄링이 최적에 가깝게 될수록 이론적최대치의 시간적 위치가 시작점(시간이 0인 지점)에서 가깝다. 또한 형상모듈의 개수에 따라 생산스케줄링이 가능여부를 결정하기 때문에, 형상모듈의 개수가 매우 중요하다. 형상모듈이 충분하지 않으면, 이용률이 100%로 유지되는 시간이 짧을 수밖에 없으므로, 상대적으로 이론적최대치의 시간적 위치가 시작점으로부터 멀어질 가능성이 있다. 생산해야 할 주문량의 개수는, 최종적으로 생산해야 할 물량의 개수를 결정하기 때문에, 최종 생산완료 시간 및 이론적최대치의 위치를 시작점으로 부터 멀게 해주는 역할을 한다. 이는 생산을 많이 하기 위해서는 당연한 것이라고 할 수 있다. 또한 전반적으로 타이어 생산시간이 길수록 이론적 최대치도 시작점으로 부터 멀어진다.

그림1 에서 보듯, 초반부에는 생산 모듈의 idle 상태가 거의 없으나, 후반부로 갈수록 생산 모듈의 idle 상태가 자주 발생한다. reset은 98번 발생했는데, 전체 생산 모듈이 16개이고, 타이어의 주문량이 961개인 것을 고려하면 평균적으로 약 10개의 생산모듈이 동시에 작동하는 생산스케줄이라는 것을 알 수 있다. 즉, 평균적인 생산 모듈 가동률은 62퍼센트 가량이다. 이는 생산 초반부에는 100퍼센트의 가동률을 보이다가, 생산 후반으로 갈수록 동시에 생산할 수 있는 타이어의 종류가 줄어들기 때문으로 보인다. 이 문제는 동시에 생산할 수 있는 타이어를 생산 초반부에 생산한다 하여도 해결하기 어려운 문제다. 그 이유는, 모든 주문된 타이어를 생산하고 생산을 멈춘 상태는, 이미 생산 모듈의 가동률을 높이기 위해 주문량보다 추가 생산을 가능하게 하였기 때문이다. 즉, 생산 순서에 상관없이 동시에 생산할 수 없는 종류들이 존재한다는 것을 알 수 있다.

OTNBBE_2023_v23n1_139_f0001.png 이미지

그림 1. 생산시간 대비 생산모듈 이용률

Fig. 1. The utilization rate of the production modules as production time increases

Ⅴ. 결론

본 연구에서는 고객이 원하는 종류의 타이어 및 개수를 상정하고, 생산스케줄링을 구축하는 문제에 대해 논의하였다. 강화학습이 가능하도록, 상태(state), 행동(action), 보상(reward)을 정의하였고, 보다 빠른 문제 해결을 위해, 현재 보유한 형상 모듈의 가능한 조합을 또 하나의 입력 변수로 이용하여 생산스케줄을 구축하였다. 그 결과, 이론적 최대치 대비 약 38% 가량 이용률이 감소한 62퍼센트 가량의 가동률을 얻었다. 여기서, 이론적 최대치는 최적 스케줄을 알 수 없으므로 실제 주문받은 종류를 기준으로 계산할 수는 없고, 실제 생산스케줄의 그래프상 면적을 기준으로 계산하였다. 다음 연구로는, 시스템 결과를 이론적 최대치에 더욱 접근시키는 방법을 추가적으로 연구하여 생산모듈 이용률을 증가시키는 것이다. 이것이 이루어진다면 생산 스케줄링의 속도 향상에 큰 도움이 될 것이다.

References

  1. G. May, B. Stahl, M. Taisch, V. Prabhu, "Multi-objective genetic algorithm for energy-efficient job shop scheduling", Int J Prod Res. Vol. 53, pp. 7071-7089, 2015. DOI: https://doi.org/10.1080/00207543.2015.1005248
  2. G. Mouzon, M. B. Yildirim, J. Twomey, "Operational methods for minimization of energy consumption of manufacturing equipment". Int J Prod Res, Vol. 45, pp. 4247-4271, 2007. DOI: https://doi.org/10.1080/00207540701450013
  3. L. Li, Z. Y. Sun, X. F. Yao, D. H. Wang, "Optimal production scheduling for energy efficiency improvement in biofuel feedstock preprocessing considering work-in-process particle separation", Energy, Vol. 96, pp. 474-481, 2016. DOI: https://doi.org/10.1016/j.energy.2015.12.063
  4. J. Kho, J. Jeong, "Design and Implementation of Smart Factory MES Model Based on Process Visualizationa for Small and Medium Business in Korea", The Journal of The Institute of Internet, Broadcasting and Communication, Vol. 19, pp. 135-141, 2019. DOI:https://doi.org/10.7236/JIIBC.2019.19.5.135
  5. A. T. Lora, J. C. Riquelme, J, L, M. Ramos, J. M. R. Santos, A. G. Exposito, "Application of evolutionary computation techniques to the optimal short-term scheduling of the electrical energy production", Curr Top Artif Intell, Vol. 3040, pp. 656-665, 2003. DOI: https://doi.org/10.1007/b98369
  6. Y. He, F. Liu, H. J. Cao, C. B. Li, "A bi-objective model for job-shop scheduling problem to minimize both energy consumption and makespan", J Cent S Univ Technol, Vol. 12, pp. 167-171, 2005. DOI: https://doi.org/10.1007/s11771-005-0033-x
  7. L. Asadzadeh, K. Zamanifar, "An agent-based parallel approach for the job shop scheduling problem with genetic algorithms", Mathematical and Computer Modelling, Vol. 52, pp. 1957-1965, 2010. DOI: https://doi.org/10.1016/j.mcm.2010.04.019
  8. Y. Liu, Y. Chen, T. Jiang, "Dynamic selective maintenance optimization for multi-state systems over a finite horizon: A deep reinforcement learning approach", European Journal of Operational Research, Vol. 283, pp. 166-181, 2020. DOI: https://doi.org/10.1016/j.ejor.2019.10.049