서 론
국방과학기술용어사전에서 수요예측은 과거의 수요 실적에 따라 장차의 수요량을 예측하는 것으로 정의하고 있다
[1]. 현재 군은 각 무기 체계별로 적절한 유지비를 계산하는 논리와 방법론이 부족한 상태이다. 이 때문에 장기간 필요하지 않은 부속품이나 과다한 재고가 쌓이게 되어, 전반적으로 장비의 가용성이 떨어지는 문제가 발생하고 있다. 이런 상황은 예산 사용의 효율성을 저해하고 있어, 개선이 필요한 상황이다. 이러한 문제의 원인은 수리부속의 효율적 관리를 위한 체계가 부족함 때문이다. 과거의 수요 데이터를 단순히 모아서 분석하고, 수요 담당자의 주관적인 판단에 의존하는 현재의 방식 때문이다.
무기체계가 첨단화 및 고가화되면서, 장비 자산의 증가와 함께 수리부속을 확보하기 위한 비용도 함께 지속해서 증가하는 추세를 보인다. 특히 무기체계 수리부속의 수요예측은 군사 분야에서의 중요한 관리 작업 중 하나로, 이러한 예측의 정확성은 군사 작전 및 비용 관리에 직결된다. 그러나 무기체계 수리부속의 수요는 간헐적이며 불규칙한 양상을 보이기 때문에, 전통적인 통계적 방법으로는 예측을 정확하게 수행하기 어려운 경우가 많다. 간헐적인 수요 패턴은 수요의 발생이 드문 경우가 반복된다든지 수요 발생 간격이 일정하지 않은 수요를 말한다. 많이 사용되는 수리부속 수요예측 방법은 이동평균법, 최소자승법, 지수평활법 등의 전통적인 통계적 모델이다. 이런 방법 들은 일정한 패턴을 보이는 경우에는 효과적이지만, 무기체계의 수요처럼 불규칙하고 간헐적인 패턴을 가진 수요패턴은 정규분포를 따르지 않아, 전통적인 시계열 기법으로 예측하는 데 있어 어려움이 크고 예측하기가 까다롭다. 본 연구에서는 통계기법 및 머신러닝기법을 혼합한 다중 머신러닝기법을 활용하여 불규칙하고 변동성이 큰 무기체계 수리부속 수요예측의 정확도를 높일 수 있는 모델을 제안하고, 실험을 통하여 성능을 검증하고자 한다.
관련 연구
수요패턴은 Erratic, Smooth, Lumpy, Intermittent 총 4가지로 분류될 수 있다
[2]. 대부분의 무기체계 수리부속의 수요패턴은 대부분 Lumpy, Intermittent, Erratic 패턴으로 시간과 수량의 면에서 무작위적으로 수요가 발생하며, 0값의 비율이 큰 간헐적이며 불규칙한 시계열 데이터의 특성이 있다
[3].
Smooth와 같은 규칙적인 패턴은 주로 회귀모형이나 시계열 모형을 이용해서 수요를 예측하는 방법들이 사용된다
[4]. 전통적인 수요예측 모형인 Box Jenkins의 ARIMA
[5] 알고리즘이 규칙적인 패턴으로 주기적으로 관측되는 값에는 적합하지만, 간헐적이고 불규칙한 데이터 패턴의 시계열 데이터에는 적용할 수 없다
[6].
선행 연구 결과에 따르면 간헐적이고 불규칙한 수요가 주기성을 갖는 수요에 비해 예측 정확도가 40 % 이상 낮다는 것이 확인되었다
[7]. 이에 따라 군 분야에서는 불규칙한 패턴을 갖는 수리부속 수요예측의 정확도를 향상하기 위해 다양한 연구들이 활발히 진행되고 있다. 최근에는 특히 머신러닝 기술을 활용한 연구들이 부상하고 있다. 머신러닝은 데이터 기반의 학습을 통해 복잡하고 비선형적인 패턴을 탐지하고 예측하는 데 강점을 가지고 있다.
군 분야에서 이루어진 머신러닝을 활용한 수리부속 수요예측에 대한 대표적인 선행 연구는 다음과 같다. 윤현민과 김수환은 의사결정나무, k-최근접 이웃, Support Vector Machine, 로지스틱스 회귀와 같은 머신러닝 기법을 활용하여 항공기 수리부속에 대한 수요를 예측하였다
[8].
김형태와 김수환은 수리부속의 소모 개수와 단가를 설명변수로 하는 데이터마이닝 기법을 적용하여 ATCMS, K-9 자주포, ARTHUR-K 수리부속 들에 대해서 수요예측 하였다
[9]. 김재동과 이한준은 딥러닝 기법인 장단기 기억 메모리(Long-Short Term Memory, LSTM)를 이용하여 공군의 B 항공기의 수리부속에 대해서 수요예측 하였다
[10].
오병훈과 김현철은 육군 장비정비정보체계의 궤도 특정 장비의 품목별 소요실적 자료를 평균수요 발생 구간(ADI)과 변경 계수(CV2)로 구분하여 ARIMA, 지수평활, Croston, 인공신경망을 적용하여 예측 실험 결과, 간헐적인 수요 패턴에서는 인공신경망 기법이 가장 오차가 적은 모델이라는 것을 증명하였다
[11].
앞에서 소개한 선행 연구 들은 각 수요예측 대상의 아이템 대한 개별의 모델을 제안하고 있다. 하지만 육군을 비롯한 전군에서 사용 중인 수리부속 부품은 약 72만여종에 이를 만큼 방대하고 수요 패턴도 다양하기 때문에, 모든 수리부속 품목 수요에 대해서 단일 예측 기법을 일괄적으로 적용하는 것은 실무에서 사용하기에는 무리가 있다. 이에 본 연구에서는 다양한 무기체계 수리부속 수요 데이터 패턴에서도 예측정확도를 높일 수 있는 다중 머신러닝기법을 제안한다.
다중 머신러닝 기반 수요예측 모형
3.1 개요
이 절에서는 다중 머신러닝 기반 수리 부속 수요예측 모형의 구조를 소개한다. 제안 모형은 데이터 수집 및 정제, 데이터 전처리, 다중 머신러닝 기반 모델 성능비교, BEST모델 기반 예측 결과 도출의 부분으로 이루어졌다. 데이터 수집 및 정제 모듈은 품목의 정보와 수요 수량 관련 데이터, 정비명세 데이터, 외부 환경 데이터를 통합해 분석을 위한 데이터세트를 구성한다. 통합 데이터세트를 구성한 후에는 수요관련 파생 변수를 생성하고 변수의 스케일을 조정하기 위해 정규화 작업을 진행하고 다중 머신러닝 기반 모델 성능 비교를 위한 학습 데이터, 검증 데이터로 분리한다. 다중 머신러닝 기반 BEST모델 도출을 위한 후보 알고리즘은 다양한 수요패턴에 대해서 예측력을 높이기 위해 통계적 시계열 모형, 머신러닝 모형, 딥러닝 모형 중 대표적 알고리즘을 선정하여 구현한다. 다음 품목별 모델 성능 비교를 통해 BEST모델을 선정하고, 선정된 BEST모델을 사용하여 통합 데이터세트를 학습한 이후 향후 12개월 월별 수리부속 수요량을 예측한다. 품목별 다중 머신러닝 기반 BEST모델을 선정하고 예측하는 이 과정은
Fig. 1과 같다.
Fig. 1.
Multi-machine learning based demand forecasting method
다양한 수요 패턴에 대한 예측 성능을 향상하기 위해, 통계적 시계열 모델, 머신러닝 모델, 딥러닝 모델 등 다양한 알고리즘을 사용하여 BEST모델을 선정하는 과정은
Fig. 2와 같다. 상위/하위 자재 품목별로 학습데이터의 학습기간과 변수 개수에 따라 적용되는 알고리즘이 달라진다. SARIMA모델은 최소 1년 6개월의 학습데이터가 필요하며, 학습데이터가 1년 6개월 미만일 경우 Moving Average 모델을 선정하여 예측한다. Prophet과 Elastic Net은 최소 2년의 학습데이터가 필요하고, 상대적으로 연산이 복잡한 Recurrent Neural Network(RNN), Long Short-Term Memory(LSTM), Gated Recurrent Unit(GRU)는 최소 3년의 학습데이터를 필요로 한다. Lasso, LassoLars, Orthogonal Matching Pursuit (OMP)모델은 다변량 모델로 2개 이상의 변수와 함께, 최소 2년 이상의 학습데이터가 필요하다. 데이터의 특성에 따라 연산된 테스트 데이터의 예측값을 실제값과 비교하여 성능을 비교한다. 비교 결과 예측값과 실제값의 차이가 가장 적은 모델을 BEST모델로 선정한다. 만일 모든 모델의 평균 제곱근 오차(Root Mean Squared Error, RMSE)가 2.5보다 큰 경우 Moving Average 모델을 선정한다. 각 세부 모델의 특징은 다음절에서 소개한다.
Fig. 2.
Best model performance comparison flowchart
3.2 BEST모델 선정을 위한 후보 알고리즘
BEST모델 선정을 위한 후보알고리즘의 주요 특성을
Table 1에서 확인할 수 있다. 통계적 시계열 모형에서는 현재 군에서 많이 활용하고 있는 Moving Average와 SARIMA와 같은 대표적인 시계열 알고리즘을 선정하였다. 이 알고리즘들은 군 및 선행연구에서 많이 활용되며, 시간에 따른 데이터 패턴을 분석하는데 효과적이다.
Table 1.
Characteristics of candidate algorithm
구분 |
알고리즘 |
설명 |
통계적 시계열 모형 |
Moving Average |
전체 데이터 집합의 여러 하위 집합에 대한 일련의 평균을 만들어 데이터 요소를 분석하는 계산 |
SARIMA |
시계열 자체로는 정상성이나 평균회귀 특성이 없어도 이를 차분한(Indifference) 시계열이 평균회귀 특성을 가지는 ARIMA 모형 기반 주기성을 갖는 시계열 모델 |
머신러닝모형 |
Prophet |
페이스북에서 공개한 시계열 예측 라이브러리로 트렌드(growth), 계절성(seasonality), 휴일(holidays) 3가지의 구성요소로 예측하는 모델 |
Elastic Net |
정규화 선형회귀의 일종으로 선형회귀 계수에 대한 제약 조건을 추가하여 모델이 과도하게 최적하게 현상(과적합, overfitting)을 막는 방법 |
Lasso |
선형회귀에 L1규제(모델에서 영향력이 작은 특성(feature)을 배제)를 적용한 모델 |
LassoLars |
Lasso모델에서 L1 사전을 정규화기로 학습한 선형 모델 |
OMP |
Sparse 신호를 복원하기 위한 알고리즘으로는 특정 제약조건 아래에서 신호의 ℓ 0 norm을 최소화하기 위한 알고리즘 |
딥러닝모형 |
RNN |
은닉층의 메모리 셀에서 나온 값이 다음 은닉층의 메모리 셀에 입력값으로 가지는 순환신경망으로 시계열 문제에서 뛰어난 성능을 모여주는 알고리즘 |
LSTM |
RNN의 장기적 연속성을 가지는 데이터에 대한 경사소실(vanishing gradient) 문제와 연산지연 문제를 곱셈 게이트유닛(multiplicative gate unit) 기술을 통해 다수 해결한 알고리즘 |
GRU |
LSTM모델을 좀 더 단순화하여 기울기 소실 문제를 해결하기 위해 개발된 모델 |
머신러닝 모형에서는 Prophet, Elastic Net, Lasso, LassoLars, OMP와 같은 알고리즘 들을 선정하였으며, 이들 알고리즘은 데이터의 특징에 따라 적절하게 선택되어 사용된다.
머신러닝 워크플로우를 자동화하는 오픈 소스 라이브러리인 PyCaret을 이용하여 2014년부터 5년의 데이터를 사용하여 모델을 비교하였을 때, 최적의 머신러닝모델로 Elastic Net, Lasso, LassoLars, OMP 회귀모델추천되어 본 연구의 머신러닝 알고리즘으로 선정하였다. 모델의 다양성을 위해서 Facebook에서 개발한 시계열 예측 도구인 Prophet을 단변량 모델로 추가 선택하였다.
딥러닝 모형에서는 RNN, LSTM, GRU와 같은 알고리즘을 선정하였다. 이러한 딥러닝 알고리즘은 복잡한 시계열 데이터의 패턴을 학습하고 예측하기에 효과적이며, 특히 시간에 따라 변하는 비선형적인 관계를 잘 모델링한다고 알려졌다
[10]. 각 알고리즘은 데이터의 특성에 따라 다르게 적용되며, 이를 종합적으로 고려하여 최적의 예측 모델을 선택하는 것이 중요하다.
실험 및 결과
4.1 실험데이터
제안한 모형을 검증하기 위하여 본 연구에서는 천마(자주 대공 유도탄 체계)의 수리부속을 연구 대상으로 한다. Bill of Material(BOM)을 Level 구조에 따라 수리부속 부품은 상위자재와 하위자재로 구분할 수 있다. 특정 제품을 만들기 위한 부품 들의 관계에서 완성품 및 제품을 상위자재라고 하며, 상위자재 하위에 포함되는 Assembly 품목, 단품을 하위자재라고 한다. 본 연구에서는 천마 무기체계를 구성하는 Level1의 제품을 고장수요(상위자재), 상위자재를 구성하기 위한 품목을 자재수요(하위자재)라고 규정한다.
2014년 10월부터 2022년 12월까지 8년 3개월의 정비요청내역, 해체상세 검사결과와 날씨정보를 활용하여 품목별 수요량, 평균 온도, 강수량 등의 변수의 데이터를 수집한다. 품목은 고장수요(상위자재)에 대해서 총 378건, 자재수요(하위자재)에 대해서 총 1,452건의 품목을 대상으로 실험을 수행한다(
Table 2).
Table 2.
Basic information of data collection
구분 |
품목건수 |
수집 데이터 기간 |
비고 |
고장수요(상위자재) |
378건 |
2014.10 ∼ 2022.12 |
8년 3개월 |
자재수요(하위자재) |
1,435건 |
2014.10 ∼ 2022.12 |
8년 3개월 |
단변량 시계열 예측 모델인 SARIMA, Prophet은 각 품목의 수요량을 변수로 사용하며, Elastic Net, RNN, LSTM, GRU는 품목의 수요량에 파생변수로 과거 동월의 수요량 및 과거 12개월의 수요량 차이를 사용한다. 이러한 파생변수를 사용하여 일부 잡음이 있는 데이터를 부드럽게 만들어줄 수 있다. 또한 갑작스러운 변동이나 이상치에 대한 영향을 줄일 수 있으며, 데이터의 패턴을 인식하기 어려운 구간에 대해서 동월 평균을 추가함으로써 모델의 예측 성능을 향상할 수 있다. 다변량 모델로 Lasso, LassoLars, OMP는 품목의 수요량과 함께 온도, 강수량 등의 날씨 데이터를 변수로 함께 사용한다(
Table 3).
Table 3.
Main variables used by model
구분 |
적용 모델 |
주요 변수 |
단변량 |
SARIMA, Prophet |
각 품목의 수요량 |
단변량(파생변수) |
Elastic Net, RNN, LSTM, GRU |
각 품목의 수요량, 과거 동월 수요량 평균, 과거 12개월 수요량 차이 |
다변량(날씨 등) |
Lasso, LassoLars, OMP |
각 품목/부대별의 수요량, 해당 월평균 온도, 해당 월평균 강수량, 전월 평균 온도(12개월), 전월 강수량(12개월) |
4.2 실험방법
제안 모형을 검증하기 위해서 테스트 데이터세트는 시계열 교차검증 기법인 롤링 기반 교차검증(Rolling-based Cross-validation) 개념을 도입하여 6개의 데이터세트로 구성한다(
Fig. 3). 롤링 기반 교차검증은 시계열 데이터에 대한 교차검증 방법의 하나다. 시계열 데이터는 시간에 따라 순서가 있는 데이터이기 때문에 일반적인 교차검증 방법을 적용하기 어렵다. 롤링 기반 교차검증은 이러한 시계열 데이터의 제약사항을 극복하기 위해 개발된 방법의 하나로, 시간의 흐름에 따라 모델을 학습하고 평가하는 과정을 여러 번 반복하여 모델의 성능을 평가한다.
Fig. 3.
Verification datasets for test cases
6개의 데이터세트에 대한 학습 및 검증기간은
Table 4와 같다. 학습데이터 기간은 최소 2년 3개월에서 1년씩 증가하여 최대 7년 3개월의 데이터를 사용한다.
Table 4.
Train and validation period
Case ID |
Train |
Validation |
학습 데이터기간 |
Test Case 1 |
2014.10 ∼ 2016.12 |
2017.01 ∼ 2017.12 |
2년 3개월 |
Test Case 2 |
2014.10 ∼ 2017.12 |
2018.01 ∼ 2018.12 |
3년 3개월 |
Test Case 3 |
2014.10 ∼ 2018.12 |
2019.01 ∼ 2019.12 |
4년 3개월 |
Test Case 4 |
2014.10 ∼ 2019.12 |
2020.01 ∼ 2020.12 |
5년 3개월 |
Test Case 5 |
2014.10 ∼ 2020.12 |
2021.01 ∼ 2021.12 |
6년 3개월 |
Test Case 6 |
2014.10 ∼ 2021.12 |
2022.01 ∼ 2022.12 |
7년 3개월 |
본 연구에서는 무기체계 수리부속 수요예측 모델의 성능을 평가하기 위해 품목 기준 정확도, 수량 기준 정확도, 평균 제곱근 오차(Root Mean Squared Error, RMSE) 지표를 활용한다. 품목기준 정확도는 수요 발생 예측 후 F-1년도에 편성부대가 수요(청구)를 제기할 것으로 예측한 품목 중 F년도에 편성부대가 실질적으로 수요(청구)를 제기한 품목수를 측정하는 지표로 수식은 아래와 같다(
1).
수량기준 정확도는 F-1년도에 예측한 수량 대비 F 년도에 편성부대가 수요(청구)를 제기한 수량의 백분율 값으로 수식은 군수지원 성과관리 훈령에 따른 계산식은 아래와 같다(
2).
본 연구에서는 100 % 이상의 정확도를 발생시키지 않기 위해서 위 식을 아래와 같이 변형하여 사용한다(
3).
RMSE는 모델이 예측한 값 또는 추정값과 실제 환경에서 관찰된 값의 차이를 다룰 때 흔히 사용하는 측도이며, 값이 작을수록 모델의 예측이 더 정확하다고 판단할 수 있다. 실제 값을 가지는 데이터 집합을 A라 하고 예측한 값 들의 데이터 집합을 B이라고 할 때 평균 제곱근 오차를 나타내는 식은 아래와 같다(
4).
본 연구에서는 품목 기준 정확도와 수량 기준 정확도 RMSE의 세 가지 지표를 사용함으로 수요예측 모델의 성능을 포괄적으로 다양한 관점에서 평가한다.
4.3 실험 결과
4.3.1 품목 정확도
품목 정확도 측면에서, 상위자재와 하위자재의 특성에 따라 서로 다른 알고리즘이 적합함을 확인할 수 있었다. 상위자재에 대해서 총 6개의 Case 중 4개의 Case에서 Prophet 알고리즘이 더 적합한 예측을 수행하였고, 평균 91.4 %의 정확도를 보여줬다. 그다음 제안한 BEST모델이 2개의 Case에서 최적합의 예측을 수행하였고 평균 90.6 %의 정확도로 Prophet 알고리즘과 근사한 예측을 수행하였다. 반면, 다른 알고리즘 들은 Moving Average와 Elastic Net 회귀모델이 87.8 %, 딥러닝 모델에서는 LSTM이 86.1 %의 정확도를 보였다(
Table 5).
Table 5.
Item accuracy of top materials
구분 |
년도(Validation) |
평균 |
17 |
18 |
19 |
20 |
21 |
22 |
BEST모델(제안모델) |
89.88 |
93.99 |
93.59 |
85.71 |
92.38 |
87.76 |
90.55 |
Moving Average |
89.94 |
93.33 |
92.66 |
81.56 |
86.74 |
82.47 |
87.78 |
SARIMA |
87.2 |
90.51 |
87.64 |
75.99 |
78.7 |
71.8 |
81.97 |
Prophet |
94.06 |
95.63 |
93.09 |
82.35 |
92.97 |
90.52 |
91.44 |
Elastic Net |
90.24 |
91.3 |
92.94 |
82.78 |
86.78 |
82.95 |
87.83 |
Lasso |
89.97 |
91.34 |
92.97 |
82.78 |
86.78 |
82.95 |
87.8 |
LassoLars |
89.97 |
91.34 |
92.97 |
82.78 |
86.78 |
82.95 |
87.8 |
OMP |
90.99 |
92.12 |
91.39 |
59.33 |
88.7 |
85.76 |
84.71 |
RNN |
93.95 |
92.37 |
92.05 |
61.73 |
89.47 |
85.96 |
85.92 |
LSTM |
91.82 |
93.8 |
93 |
67.49 |
86 |
84.68 |
86.13 |
GRU |
92.11 |
91.91 |
92.42 |
61.5 |
84.5 |
83.01 |
84.24 |
하위자재에 대해서는 6개의 Case 중 4개의 Case에서 제안한 BEST모델이 최적의 성능을 보여줬으며, 평균 91.9 %의 정확도가 나왔다. 그다음 Prophet 알고리즘이 평균 91.7 %, 딥러닝 알고리즘인 RNN이 평균 88.8 %의 정확도를 보여줬다(
Table 6). 이러한 결과 제안한 BEST모델 알고리즘이 품목정확도 측면에서 상위자재와 하위자재에 다른 수요패턴 특성에서도 높은 정확도를 보여줌을 알 수 있다.
Table 6.
Item accuracy of sub-materials
구분 |
년도(Validation) |
평균 |
17 |
18 |
19 |
20 |
21 |
22 |
BEST모델(제안모델) |
90.38 |
92.92 |
92.4 |
88.18 |
94.18 |
93.36 |
91.9 |
Moving Average |
91.63 |
90.76 |
91.06 |
78.9 |
88.96 |
89 |
88.38 |
SARIMA |
84.27 |
84.27 |
88.43 |
67.37 |
68.88 |
68.28 |
76.92 |
Prophet |
93.35 |
92.38 |
90.51 |
87.26 |
94.82 |
91.79 |
91.68 |
Elastic Net |
91.26 |
91.22 |
91.25 |
78.95 |
90.23 |
88.4 |
88.55 |
Lasso |
90.87 |
90.26 |
86.17 |
68.49 |
88.63 |
88.64 |
85.51 |
Lasso Lars |
90.78 |
90.26 |
88.9 |
69 |
89.15 |
88.5 |
86.1 |
OMP |
92.64 |
90.8 |
89.45 |
57.07 |
78.16 |
90.62 |
83.12 |
RNN |
93.49 |
91.22 |
90.05 |
78.42 |
89.63 |
89.77 |
88.76 |
LSTM |
92.71 |
91.12 |
90.27 |
74.75 |
88.37 |
89.32 |
87.76 |
GRU |
93.2 |
91.14 |
90.42 |
76.12 |
89.08 |
89.84 |
88.3 |
4.3.2 수량 정확도
수량 예측에서는 상위자재와 하위자재 모두 제안한 BEST모델 알고리즘이 우수한 성능을 보였다. 상위자재에 대해서 총 6개의 Case 중 5개의 Case에서 제안한 BEST모델이 최적합의 예측을 수행하였으며, 평균 57.5 %의 정확도를 보여줬다. 그다음 Prophet이 1개의 Case에서 60.4 %의 정확도로 최적합의 예측을 수행하였으나 평균 44.1 %의 정확도를 보여줬다. 그 이외 알고리즘도 수량 예측 정확도에서 모두 평균 50 % 미만의 성능을 보였다(
Table 7).
Table 7.
Quantity accuracy of top materials
구분 |
년도(Validation) |
평균 |
17 |
18 |
19 |
20 |
21 |
22 |
BEST모델(제안모델) |
49.35 |
54.54 |
59.18 |
60.64 |
62.76 |
58.63 |
57.52 |
Moving Average |
45.28 |
46.01 |
43.63 |
57.5 |
54.95 |
49.09 |
49.41 |
SARIMA |
46.7 |
51.18 |
45.32 |
56.4 |
50.42 |
48.84 |
49.81 |
Prophet |
28.24 |
35.15 |
30.06 |
50.77 |
59.81 |
60.35 |
44.06 |
Elastic Net |
41.12 |
38.1 |
42.46 |
56.09 |
54.25 |
49.84 |
46.98 |
Lasso |
39.4 |
37.15 |
43.59 |
51.75 |
53.97 |
50.18 |
46.01 |
Lasso Lars |
39.4 |
37.18 |
43.74 |
51.75 |
53.97 |
50.18 |
46.04 |
OMP |
38.13 |
35.2 |
47.49 |
45.49 |
60.88 |
58.05 |
47.54 |
RNN |
33.59 |
40.28 |
41.78 |
43.82 |
61.47 |
56.43 |
46.23 |
LSTM |
34.23 |
42.74 |
43.21 |
39.4 |
60.71 |
58.33 |
46.44 |
GRU |
35 |
38.38 |
41.86 |
44.21 |
59.75 |
59.14 |
46.39 |
하위자재에 대해서는 6개의 Case에서 평균 60.1 %의 수량 정확도로 제안한 BEST모델이 최적의 성능을 보여주었다(
Table 8). 그다음 정확도를 보여주는 SARIMA 는 47.1 %, Elastic Net 회귀모델은 43.2 %의 정확도 성능을 보여줬다. 이 결과는 제안 알고리즘이 수량 예측에서 다른 알고리즘보다 10 % 이상의 높은 정확도로 높은 변동성을 가지는 무기체계 수리부속 수요예측에 부합하는 알고리즘인 것을 증명한다.
Table 8.
Quantity accuracy of sub-materials
구분 |
년도(Validation) |
평균 |
17 |
18 |
19 |
20 |
21 |
22 |
BEST모델(제안모델) |
62.83 |
56.24 |
52.2 |
63.48 |
60.34 |
65.26 |
60.06 |
Moving Average |
47.06 |
37.83 |
26.96 |
52.3 |
46.37 |
45.71 |
42.7 |
SARIMA |
56.44 |
40.87 |
26.94 |
52.41 |
53.8 |
51.97 |
47.07 |
Prophet |
34.58 |
33.74 |
20.02 |
43.91 |
55.6 |
60.27 |
41.35 |
Elastic Net |
42.98 |
35.29 |
26.65 |
53.09 |
50.68 |
50.45 |
43.19 |
Lasso |
42 |
40.36 |
39.4 |
33.05 |
40.74 |
54.22 |
41.63 |
Lasso Lars |
42.14 |
40.49 |
40.86 |
33.12 |
41.13 |
54.55 |
42.05 |
OMP |
41.22 |
46.03 |
40.51 |
30.06 |
42.87 |
53.94 |
42.44 |
RNN |
31.83 |
40.94 |
22.18 |
34.86 |
46.48 |
55.39 |
38.61 |
LSTM |
35.31 |
43.24 |
23.1 |
35.33 |
45.32 |
54.07 |
39.4 |
GRU |
35.02 |
42.29 |
24.12 |
38.54 |
48.21 |
56.16 |
40.72 |
4.3.3 RMSE
RMSE 결과에서도 BEST모델 알고리즘이 효과적으로 모델의 예측 정확도를 향상시킴을 보여줬다. 상위자재에 대해서 제안 알고리즘의 RMSE는 평균 0.36으로 나타났으며, 이는 그다음 좋은 정확도 성능을 나타내는 Moving Average 및 Elastic Net의 1.09보다 약 3분의 1이 작은 값이다(
Table 9). 낮은 RMSE는 제안한 알고리즘이 예측값과 실제 값 사이의 편차를 최소화하고 있음을 나타내며, 무기체계 수리부속의 수요예측에서 높은 정확도를 보장함을 시사한다.
Table 9.
구분 |
년도(Validation) |
평균 |
17 |
18 |
19 |
20 |
21 |
22 |
BEST모델(제안모델) |
0.34 |
0.27 |
0.22 |
0.43 |
0.4 |
0.5 |
0.36 |
Moving Average |
1.05 |
0.8 |
0.65 |
1.12 |
1.18 |
1.73 |
1.09 |
SARIMA |
1.31 |
1.05 |
0.87 |
1.35 |
1.42 |
2.05 |
1.34 |
Prophet |
2.13 |
1.56 |
1.57 |
1.36 |
1.25 |
1.88 |
1.62 |
Elastic Net |
1.1 |
0.94 |
0.63 |
1.09 |
1.08 |
1.68 |
1.09 |
Lasso |
1.94 |
1.86 |
0.64 |
1.21 |
1.08 |
1.71 |
1.41 |
Lasso Lars |
1.93 |
1.86 |
0.64 |
1.21 |
1.08 |
1.71 |
1.4 |
OMP |
1.56 |
1.1 |
0.7 |
1.23 |
1.1 |
1.73 |
1.24 |
RNN |
6.95 |
1.16 |
0.81 |
1.21 |
1.22 |
1.78 |
2.19 |
LSTM |
3.63 |
1.02 |
0.96 |
1.21 |
1.19 |
1.74 |
1.62 |
GRU |
4.75 |
1.09 |
0.74 |
1.2 |
1.22 |
1.67 |
1.78 |
하위자재에 대해서는 6개의 Test Case에서 모두 제안한 BEST모델 알고리즘의 RMSE가 가장 낮은 값으로 뛰어난 성능을 보여줬다. 제안한 모델은 평균 0.43의 RMSE 값의 성능을 보여줬으며(
Table 10), 그다음 좋은 성능을 보여준 Elastic Net의 9.19보다 약 21분의 1이 작은 값이다.
Table 10.
구분 |
년도(Validation) |
평균 |
17 |
18 |
19 |
20 |
21 |
22 |
BEST모델(제안모델) |
0.48 |
0.4 |
0.32 |
0.49 |
0.45 |
0.43 |
0.43 |
Moving Average |
11.07 |
10.11 |
8.15 |
9.91 |
9.28 |
8.21 |
9.46 |
SARIMA |
11.7 |
11.08 |
8.98 |
11.36 |
11.69 |
10.74 |
10.92 |
Prophet |
20.46 |
14.72 |
14.11 |
10.65 |
8.78 |
10.35 |
13.18 |
Elastic Net |
14.63 |
11.96 |
6.16 |
8.4 |
7.17 |
6.84 |
9.19 |
Lasso |
25.42 |
26.5 |
5.11 |
10.1 |
8.23 |
8.8 |
14.03 |
Lasso Lars |
23.13 |
23.43 |
5.22 |
10.08 |
8.22 |
8.61 |
13.12 |
OMP |
16.45 |
10.46 |
4.56 |
10 |
7.86 |
8.18 |
9.58 |
RNN |
253.91 |
8.39 |
7.73 |
8.4 |
9.14 |
7.45 |
49.17 |
LSTM |
74.32 |
8.13 |
7.89 |
8.47 |
9.03 |
7.6 |
19.24 |
GRU |
103.37 |
8.25 |
7.33 |
8.19 |
7.83 |
7.18 |
23.69 |
이는 품목별 수요 패턴의 형태가 다양하며 시간과 수량의 면에서 무작위적으로 수요가 발생하는 불규칙한 시계열 데이터의 특성을 보이기에 한가지의 알고리즘으로 예측하기에는 무리가 있음을 보여주며, 품목별 직전 12개월 RMSE 값으로 성능을 비교하여 뛰어난 성능을 보여주는 BEST모델로 향후 12개월을 예측하는 제안 모델이 여러 형태의 수요 패턴을 나타내는 무기체계 수리부속 수요예측에 적합한 모델이라는 것을 검증하는 결과이다.
4.3.4 BEST모델 채택 횟수
품목별 직전 12개월의 RMSE 값을 기준으로 최적의 예측모델을 선정하는 BEST모델 알고리즘에 대해서 상위자재와 하위자재를 예측하는데 가장 많이 선정된 모델의 결과는
Table 11과
Table 12와 같다.
Table 11의 결과를 보면 상위자재에서 가장 많이 선정된 BEST모델은 전체의 55.8 % 품목이 선정한 Elastic Net이다. 그다음 많이 선정된 모델은 SARIMA와 Moving Average 로 각 8.7 %와 8 %의 품목이 선택하였다. 전체 평균에서는 TOP3에 포함되지는 않았지만, 19년 예측에서는 OMP가 3번째로, 20년도에서는 RNN이 3번째로, 21년도에서는 RNN과 LSTM이 각 2번째와 3번째로 많이 선정되었다.
Table 11.
Number of best model selections of top materials
구분 |
년도(Validation) |
평균 |
17 |
18 |
19 |
20 |
21 |
22 |
횟수 |
% |
Moving Average |
28 |
51 |
23 |
27 |
22 |
22 |
28.83 |
7.97 |
SARIMA |
40 |
50 |
50 |
28 |
11 |
11 |
31.67 |
8.71 |
Prophet |
3 |
3 |
4 |
39 |
36 |
21 |
17.67 |
4.94 |
Elastic Net |
198 |
184 |
203 |
212 |
213 |
198 |
201.33 |
55.8 |
Lasso |
29 |
8 |
5 |
3 |
0 |
0 |
7.5 |
2.07 |
Lasso Lars |
6 |
4 |
1 |
3 |
3 |
2 |
3.17 |
0.88 |
OMP |
25 |
12 |
31 |
11 |
18 |
20 |
19.5 |
5.39 |
RNN |
9 |
12 |
28 |
19 |
27 |
29 |
20.67 |
5.73 |
LSTM |
17 |
18 |
2 |
8 |
11 |
27 |
13.83 |
3.85 |
GRU |
6 |
23 |
24 |
9 |
15 |
24 |
16.83 |
4.66 |
합계 |
361 |
365 |
371 |
359 |
356 |
354 |
361 |
100 |
Table 12.
Number of best model selections of sub-materials
구분 |
년도(Validation) |
평균 |
17 |
18 |
19 |
20 |
21 |
22 |
횟수 |
% |
Moving Average |
83 |
41 |
37 |
46 |
32 |
58 |
49.5 |
4.38 |
SARIMA |
196 |
250 |
308 |
116 |
106 |
115 |
181.83 |
15.78 |
Prophet |
14 |
15 |
5 |
37 |
66 |
42 |
29.83 |
2.68 |
Elastic Net |
562 |
458 |
489 |
533 |
448 |
432 |
487 |
42.93 |
Lasso |
55 |
75 |
92 |
65 |
68 |
33 |
64.67 |
5.65 |
Lasso Lars |
25 |
20 |
29 |
15 |
19 |
4 |
18.67 |
1.63 |
OMP |
38 |
129 |
74 |
72 |
86 |
80 |
79.83 |
7.03 |
RNN |
31 |
30 |
129 |
119 |
153 |
183 |
107.5 |
9.48 |
LSTM |
88 |
76 |
44 |
43 |
84 |
84 |
69.83 |
6.18 |
GRU |
31 |
43 |
38 |
44 |
49 |
84 |
48.17 |
4.26 |
합계 |
1123 |
1137 |
1245 |
1090 |
1111 |
1115 |
1136.83 |
100 |
하위자재에서도 가장 많이 선정된 BEST모델은 전체의 42.9 % 품목이 선정한 Elastic Net이다. 그다음 많이 선정된 모델은 SARIMA와 RNN으로 각 15.8 %와 9.5 %의 품목이 선택하였다. 전체 평균에서는 TOP 3에 포함되지는 않았지만, OMP와 LSTM이 17년도와 18년도에서 3번째로 많이 선정되었다. 이러한 다양성은 하위자재의 특성에 따라 다양한 모델을 적용하는 것이 효과적일 수 있음을 시사한다. 종합적으로, 상위자재와 하위자재의 예측 모델 선택에서는 Elastic Net 이 주로 선호되지만, 특정 연도나 하위자재 그룹에서는 다른 모델들이 강세를 보이는 것으로 나타난다. 이러한 결과는 각기 품목별 다양한 수요 패턴이 존재하며, 각기 다른 패턴에 적합한 최적의 모델을 선택하는 본 제안 모델이 무기체계 수리부속 수요예측에 유용한 모델임을 시사한다.
결 론
본 연구는 불규칙하고 변동성이 큰 무기체계 수리부속 수요예측에 대한 정확도를 높이는 것을 목적으로 하고 있다. 정확도를 높이기 위한 방법으로 통계기법 및 머신러닝 기법, 딥러닝 기법을 혼합한 다중 머신러닝기법을 본 연구에서 제안하였다.
제안된 모델의 정확도 성능을 검증하기 위해서 2012년 10월부터 2022년 12월까지 고장수요(상위자재)에 대해서 총 378건, 자재수요(하위자재)에 대해서 총 1,452건의 천마 수리부속 소모 실적을 수집하고 실험을 수행하였다.
천마 수리부속 수요예측 실험 결과를 품목 정확도, 수량 정확도, RMSE 측면에서 종합적으로 평가한 결과, 제안한 알고리즘이 무기체계 수리부속의 불규칙한 수요예측에 있어서 RMSE는 약 3배, 수량 예측에서는 약 10 % 예측 정확도가 향상되는 성능을 보였다.
특히, 불규칙한 패턴 및 수요 변동성이 강한 하위자재에 대한 강력한 대응 능력으로 제안한 알고리즘이 다른 모델들에 비해 높은 정확도를 보임을 확인할 수 있었다.
이러한 실험 결과를 통해 제안한 알고리즘이 무기체계 수리부속의 수요예측에 효과적으로 적용될 수 있음이 입증되었다. 본 연구를 기반으로 수리부속의 예산 운영과 장비의 가용도 측면에서 긍정적인 영향을 미칠 것으로 기대하며 세부 기대효과는 다음과 같다.
첫째, 정확한 수요예측을 수행하는 알고리즘을 제안한다. 본 연구는 다양한 통계기법, 머신러닝, 딥러닝 알고리즘의 조합을 통해 수요예측의 정확성을 크게 향상시킬 수 있는 기법을 제안한다. 이는 장비 가용도를 높이고, 잉여 품목이나 비수요를 최소화하는데 큰 도움이 된다.
둘째, 예산 효율성을 증대시킨다. 높은 정확도의 수요예측은 필요한 부품과 자원을 보다 효율적으로 예산에 할당함으로써 예산 사용의 효율성을 증대시킨다.
셋째, 향후 수요예측의 기반을 마련해준다. 본 연구는 12개월 동안의 월별 수리 부속 수요량을 예측하는 알고리즘을 제안한다. 이는 장기적인 계획 수립과 전략적인 의사결정에 활용할 수 있는 기반을 마련해준다.
향후 연구에서는 다양한 데이터세트와 추가적인 실험을 통해 모델의 일반화 성능을 더욱 향상하고, 현업 적용 가능성을 검토하는 방향으로 연구를 진행할 필요가 있다.