도전 과제: 36개월 수요예측 + S&OP 시뮬레이션
Day 2: 수요예측 & 생산계획 AI
도전 과제: 36개월 수요예측 + S&OP 시뮬레이션
스마트 팩토리 최적화 > Day 2: 수요예측 & 생산계획 AI
시나리오
전자부품 제조사의 SCM 팀장으로서, 월간 S&OP 회의에 낼 6개월 수요예측 보고서를 작성합니다.
시작 재료
데이터는 아래 코드로 만듭니다. 가상 데이터이고, 추세와 계절성과 잡음을 일부러 섞었습니다.
import numpy as np
import pandas as pd
rng = np.random.default_rng(7)
months = pd.date_range('2022-07-01', periods=36, freq='MS')
trend = np.linspace(1000, 1450, 36)
season = 120 * np.sin(2 * np.pi * (months.month - 1) / 12)
demand = np.round(trend + season + rng.normal(0, 45, 36)).astype(int)
df = pd.DataFrame({'ds': months, 'y': demand})
df.to_csv('demand_36m.csv', index=False)
print(df.tail())
미리 알려 드립니다. 마지막 6개월을 테스트로 떼면 여섯 달 가운데 다섯 달의 실제 수요가 학습 구간의 최댓값(1,379)을 넘습니다. 트리 계열 모델(LightGBM, RandomForest)은 학습 데이터 범위 밖으로 외삽하지 못하므로 그 구간에서 예측이 천장에 붙습니다. 버그가 아니라 트리 모델의 성질이고, 왜 그런지 설명하는 것이 이 과제에서 가장 값나가는 부분입니다.
lag 와 이동평균 피처를 만들 때는 .shift(1) 을 잊지 마십시오.
demand.rolling(3).mean() 은 지금 시점의 값을 포함하므로 정답을 피처로 넣는 것이 됩니다.
시간 배분과 중간 확인 지점
| 구간 | 할 일 | 이 시점에 손에 있어야 하는 것 |
|---|---|---|
| 0~10분 | 데이터 생성과 시각화 | 추세와 12개월 주기가 눈으로 보이는 그래프 |
| 10~25분 | 통계 계열 모델 학습 | 6개월 예측값 6개 |
| 25~45분 | ML 계열 모델 학습 (누수 점검 포함) | 예측값 6개와 피처 목록 |
| 45~60분 | MAPE·RMSE 비교, 외삽 한계 확인 | 모델별 지표표와 빗나간 방향 |
| 60~75분 | 안전재고·재주문점 산출 | SS, ROP 두 값과 단위 표기 |
| 75~90분 | 보고서 작성 | 1페이지 요약 |
45분 지점에서 ML 모델의 MAPE 가 3% 아래로 나오면 좋아하지 말고 누수를 의심합니다. 36개월짜리 월 데이터에서 그 정도 정확도는 대개 미래를 본 결과입니다.
단위를 맞추십시오
안전재고 SS = Z x σ x sqrt(L) 에서 σ 의 기간 단위와 L 의 단위가 같아야 합니다.
월 단위 데이터로 σ 를 구했다면 L 도 월로 환산합니다. 리드타임 2주는 0.5개월입니다.
막혔을 때 볼 곳
- 정상성·차분이 처음이면
p8w12-d2-arima의 hints 부터 - 피처 누수는
p8w12-d2-ml-forecast의 aiTips - EOQ·안전재고 공식은
p8w12-d2-inventory
제출물
- 학습 코드 (.py)
- 예측 결과 (.csv), 월별 예측치
- 안전재고·재주문점 산출 결과와 단위 표기
- 1페이지 요약 보고서 (MD 또는 PDF)
(필수) 아래 생성 코드로 36개월 수요 데이터를 만들고 마지막 6개월을 테스트 구간으로 뗀다
(필수) 서로 다른 계열의 모델 두 개 이상을 학습해 MAPE 와 RMSE 로 비교한다 (통계 계열 하나 + ML 계열 하나)
(필수) 트리 계열 모델이 학습 구간 최대치를 넘는 테스트 구간에서 어떻게 빗나가는지 확인하고 그 까닭을 적는다
(필수) 최우수 모델의 예측으로 안전재고와 재주문점을 산출한다
(확장) 세 번째 모델을 더해 비교하고 95% 예측구간을 산출한다
(확장) S&OP 회의용 1페이지 경영 요약을 작성한다
- • 모델 두 개 이상의 학습과 MAPE·RMSE 비교의 완성도 (30점)
- • 외삽 한계를 실제 결과로 확인하고 원인을 설명했는가 (25점)
- • 안전재고·재주문점 계산의 통계적 정합성 (단위 일치 포함) (25점)
- • 보고서의 의사결정 지원 품질 (가정, 리스크, 액션) (20점)
- • LLM(GPT-4o)으로 뉴스/경기지표를 해석해 예측 보정 적용
- • 재고-결품 트레이드오프 시뮬레이션(서비스레벨 90/95/99%)
36개월 수요예측 결과를 S&OP 회의에서 실제로 활용하려면 '수요 급증'·'공급망 차질' 같은 시나리오별 생산계획 대응 로직이 필요합니다.
내 36개월 수요예측 결과 요약: {예측 결과 붙여넣기}. S&OP 시뮬레이션에서 다음 3가지 충격 시나리오를 가정할 때 생산계획을 어떻게 조정해야 하는지 분석해줘: (1) 수요 +30% 급증 (특정 제품군 신규 수주), (2) 핵심 원자재 공급 6주 지연, (3) 생산 설비 가동률 70%로 제한. 각 시나리오별 재고 버퍼·생산 우선순위·외주 판단 기준을 포함한 대응 계획표를 작성해줘.