| PPO-GNN 스케줄링, 재현성 점검 (보상설계, 런타임, 다목적) |
제조 스케줄링에서 “현장 제약을 다 넣고도 빠르게 의사결정”은 늘 어렵습니다. 이 논문은 UPMSP(릴리즈 데이트·기계 적합성·순서/기계 의존 셋업)에서 PPO와 이종 GNN 상태를 결합해 TWT와 TST를 동시에 줄이려 합니다. 방향은 좋지만, 보상/런타임/비교 공정성의 빈틈이 결론 신뢰도를 깎는 지점도 분명합니다.
보상설계가 곧 정책을 결정하는 이유
이 논문이 겨냥한 문제 설정 자체는 “현장형”입니다. 처리시간 pjk가 기계마다 달라지는 Unrelated 구조에 더해, 릴리즈 데이트 rj, 기계 적합성 Mj, 그리고 순서·기계 의존 셋업 sijk까지 함께 고려합니다. 목적도 TWT(총 가중 지각)와 TST(총 셋업시간)로 분명합니다. 수식(1)과 (2)로 목적을 깔끔하게 적어두었고, 상태를 Job/Machine/Setup 노드로 나눈 이종 그래프에 엣지 타입(작업-기계, 작업-셋업, 셋업-기계 전이 등)을 부여한 설계는 직관적으로 맞습니다. 문제는 “그 상태로 무엇을 학습시키느냐”가 결국 보상인데, 보상 설계가 핵심이라고 인정하면서도 최종 보상식을 확정적으로 못 박지 못해 재현성과 해석이 약해진다는 점입니다.
논문은 보상 후보로 예시 형태를 언급합니다. 예컨대 할당 액션 직후의 이벤트 기반 보상으로 “rt = −α·ΔTWTj − β·s(i′)jk” 같은 구조를 탐색했다고 쓰고, 즉시 셋업 패널티와 에피소드 성과를 섞는 하이브리드도 언급합니다. 그러나 최종적으로 사용한 정확한 보상식(정규화 포함), α/β의 값, 스케일링 기준이 명시되지 않으면, 독자는 결과가 “PPO-GNN이 구조적으로 우월해서”인지 “가중치가 특정 목적에 유리해서”인지 분리하기 어렵습니다. 멀티오브젝티브 DRL에서 보상 스케일은 사실상 목적함수의 설계이기 때문에, 이 부분이 공백이면 ‘정책의 의미’가 흐려집니다.
여기서 한 번 반론도 가능합니다. “논문은 최종 목적이 TWT/TST이고, 보상은 그 목적을 근사하는 학습 신호일 뿐이니, 결과만 좋으면 된다”라는 주장입니다. 하지만 스케줄링은 동일 결과라도 정책이 달라질 때 운영 리스크가 크게 바뀝니다. 예를 들어 TWT를 낮추기 위해 고가중 작업을 몰아넣는 정책이 TST도 우연히 낮추는 경우가 있을 수 있지만, 실제 공정에서는 셋업 가족 구조, 긴급 오더, 기계 고장 같은 외란이 들어오면 그 정책이 급격히 무너질 수 있습니다. 즉 “왜 둘 다 동시에 좋아졌는지”를 보상 설계 관점에서 설명하지 못하면, 일반화 주장도 약해집니다.
실무자가 바로 적용하려면, 적어도 다음이 필요합니다. 첫째, 보상에서 TWT와 TST의 단위를 맞추는 정규화가 명시되어야 합니다. 둘째, α/β 민감도(스윕)로 Pareto 전면이 어떻게 움직이는지 보여야 합니다. 셋째, 보상 설계가 바뀌었을 때 “정책의 형태”가 어떻게 달라지는지, 예컨대 셋업을 줄이는 대신 지각을 감수하는 구간이 어디인지가 읽혀야 합니다. 이 논문이 상태 설계를 그래프로 정교하게 만든 만큼, 보상까지 고정하면 “GNN이 복잡한 관계를 읽어서 다목적 균형을 만든다”는 메시지가 훨씬 단단해집니다.
| 보상/평가 설계 요소 | 논문 서술(현 상태) → 보강 방향 |
|---|---|
| 보상식 형태 | 예시(−α·ΔTWT − β·setup) 중심 → 최종식/정규화/클리핑 규칙 명시 |
| 가중치(α,β) | “튜닝 필요” 수준 → 스윕(예: 0.2/0.5/0.8)과 Pareto 이동 제시 |
| 다목적 결론 문장 | “둘 다 지배” 서술 → 제약 기반 결론(예: TST 상한에서 최저 TWT)로 정리 |
실행시간의 모순이 신뢰도를 갉아먹는 지점
사용자 비평에서 가장 치명적이라고 지적한 부분이 “실행시간 표기/서술 불일치”인데, 실제로 본문과 Table 1, 그리고 결과 해설 문장이 서로 맞지 않는 구간이 보입니다. Table 1에서는 ATCSR_Rm의 Avg Comp Time이 약 59~61초로 나오는데, 같은 페이지의 결과 서술에서는 “ATCSR_Rm heuristic is the fastest, executing almost instantaneously”라고 말합니다. 또 Table 1에서는 GA가 0.10~0.12초 수준으로 표기되어 있는데, 본문 해설에서는 “GA method requires significantly more time (around 60 seconds)”라고 서술합니다. 즉 표만 보면 GA가 가장 빠르고, 서술만 보면 ATCSR_Rm이 가장 빠르며 GA가 가장 느린 셈입니다. 이 수준의 충돌은 단순 오타를 넘어, 측정 정의가 무엇인지 독자가 전혀 알 수 없게 만드는 문제입니다.
이 불일치는 왜 치명적이냐면, 이 논문이 “동적 환경에서 빠른 의사결정”을 강조하기 때문입니다. 스케줄링에서 런타임은 단순 성능 부가 지표가 아니라, 적용 가능성 자체를 좌우합니다. DRL은 오프라인 학습 비용을 감수하는 대신, 배치 시 추론(inference)이 빨라야 이점이 생깁니다. 반대로 메타휴리스틱(GA)은 인스턴스마다 반복 탐색을 하므로 런타임이 커지는 것이 보통의 상식입니다. 그런데 표와 문장이 뒤집혀 있으면, “PPO-GNN이 빠르다”는 주장이 맞는지, “GA는 느리다”는 주장이 맞는지, 혹은 측정 대상이 서로 다른지(예: 학습 시간, 평가 시간, 시뮬레이션 포함 여부)가 전부 불명확해집니다.
가능한 해석은 몇 가지입니다. 첫째, 표의 ATCSR_Rm과 GA의 실행시간이 서로 바뀌었을 가능성입니다. 둘째, ATCSR_Rm 시간을 “전체 테스트 50개 인스턴스 합산”으로 기록했고 GA는 “단일 인스턴스”를 기록했을 가능성입니다. 셋째, ATCSR_Rm은 파이썬 시뮬레이션을 포함한 wall-clock이고 GA는 평가 루프 밖에서 측정된 순수 연산시간일 가능성입니다. 넷째, GA는 “시간 제한을 DRL 추론과 비슷하게” 맞췄다고 했지만, 실제 구현에서 time limit이 제대로 적용되지 않았을 가능성입니다. 중요한 건 어떤 경우든, 지금 형태로는 독자가 재현할 수 없다는 점입니다.
실무적으로는 런타임을 최소 세 층으로 분해해 보고하는 것이 안전합니다. (1) 순수 정책 결정 시간(모델 forward + 마스킹), (2) 시뮬레이터가 다음 이벤트까지 진행하는 시간(환경 비용), (3) 전체 인스턴스 스케줄 생성 완료 시간(1+2 누적)입니다. 특히 DRL 논문은 (1)이 핵심이고, 휴리스틱/메타휴리스틱은 (3)이 핵심인 경우가 많습니다. 여기서 측정 정의가 섞이면, 서로 다른 것을 비교하게 됩니다. 그러니 “Avg Comp Time”을 무엇으로 정의했는지, CPU/GPU 사용 여부와 반복 횟수(평균±표준편차)까지 최소한 표 하단 각주로 고정해야 합니다. 지금은 이 부분이 흔들려 사용자 비평처럼 결론 전체의 신뢰도가 내려갈 수밖에 없습니다.
다목적비교를 ‘지배’가 아니라 ‘선택’의 문제로 만들기
논문은 결과에서 PPO-GNN이 Avg TWT와 Avg TST 모두에서 베이스라인(ATCSR_Rm, GA)을 “동시에” 이겼다고 요약하고, 평균 점이 Pareto 공간에서 지배(dominates)한다고까지 강하게 말합니다. 수치 예시도 제시합니다. 예를 들어 n=100, m=15에서 PPO-GNN이 Avg TWT 420.0, Avg TST 225.0이고, GA는 475.0/255.0, ATCSR_Rm은 610.0/290.0으로 적습니다. 표면적으로는 매우 깔끔한 승리입니다.
하지만 사용자의 비평처럼, 이 정도의 “양쪽 동시 개선”은 (a) 보상 설계, (b) 인스턴스 생성 방식, (c) 비교 베이스라인 설계에 강하게 좌우됩니다. 논문은 셋업 시간을 무작위로 샘플링한다고 적고(특정 job family 구조를 부여하지 않음), 기계 적합성도 밀도 δ로 랜덤하게 정합니다. 이런 생성 분포에서는 “셋업을 줄이면 지각도 같이 줄어드는” 상관이 생길 수 있습니다. 예를 들어 무작위 셋업이지만 특정 기계에서 특정 작업군이 우연히 빠르게 처리되도록 pjk가 구성되면, 셋업과 지각이 덜 충돌하는 영역이 생길 수 있습니다. 현실 공정에서는 가족 구조, 툴링 교체, 장비별 캘리브레이션 같은 이유로 셋업 최적화가 더 구조적이며, 그때는 TWT와 TST의 상충이 더 뚜렷해지는 경우가 많습니다. 따라서 “지배한다”는 결론을 유지하려면, 생성 분포가 바뀌어도 유지되는지를 보여야 합니다.
또 하나는 GA 베이스라인의 목적함수 설계입니다. GA는 α·TWTnorm + (1−α)·TSTnorm 형태이고, 정규화 분모를 ATCSR_Rm 결과로 둡니다. 이 정규화는 편의상 가능하지만, ATCSR_Rm이 특정 목적에서 약하면 분모가 커지거나 작아져 GA의 탐색 방향이 왜곡될 수 있습니다. 게다가 α=0.5 한 점만으로 다목적 비교를 대표하면, “GA가 애초에 다른 트레이드오프를 낼 기회”가 사라집니다. 다목적 논문이라면 GA도 α-sweep으로 여러 점을 찍어 Pareto 전면을 만들거나, 더 직접적으로 NSGA-II 같은 다목적 GA를 써야 공정해집니다. 그래야 “PPO-GNN이 전면을 얼마나 밀어냈는지”가 과학적으로 드러납니다.
가장 설득력 있는 결론 문장으로 바꾸는 방법은 ‘지배’가 아니라 ‘선택’을 전면에 두는 것입니다. 예를 들어 “TST가 X 이하라는 운영 제약에서 PPO-GNN이 가장 낮은 TWT를 달성했다” 또는 “TWT가 Y 이하인 납기 제약에서 PPO-GNN이 가장 낮은 TST를 달성했다” 같은 제약 기반 결론은 실제 현장 의사결정과도 맞습니다. 이렇게 쓰면 보상 가중치가 바뀌어도, 운영 목적에 따라 모델을 고르는 메시지가 살아납니다. 반대로 지금처럼 “둘 다 항상 더 좋다”는 메시지는 보상과 분포가 바뀌는 순간 쉽게 깨져서, 리뷰어가 가장 먼저 의심할 포인트가 됩니다.
마지막으로 일반화(Generalization)입니다. 논문은 n∈{20,50,100}, m∈{5,10,15} 등 여러 조합을 만들고, τ, R, β, δ를 바꿔 인스턴스를 생성했다고 말합니다. 분포 내에서는 좋은 결과일 수 있습니다. 하지만 스케줄링의 실전 일반화는 “학습하지 않은 분포 이동”에서 갈립니다. 예컨대 셋업 비율 β가 더 커지거나, 릴리즈 강도 λ가 갑자기 바뀌거나, 특정 기계가 갑자기 비가동이 되거나, job family 기반 셋업이 생길 때 정책이 무너지는지 여부가 핵심입니다. 여기서 GNN 상태 표현의 강점이 진짜 빛나려면, 최소한 1~2개의 분포 밖 테스트를 넣어 “무너지는 모드”까지 보여주는 편이 오히려 신뢰를 올립니다.
PPO+이종 GNN으로 UPMSP의 복잡 상태를 다목적 최적화로 푸는 방향은 설득력 있습니다. 다만 보상식/가중치 공개, 실행시간 표기 정합성, 다목적 베이스라인 강화가 보강되지 않으면 “우월” 결론은 과장으로 읽힐 수 있습니다.
자주 묻는 질문 (FAQ)
Q. 이 논문에서 가장 먼저 고쳐야 할 ‘치명점’은 무엇인가요? A. 실행시간(Avg Comp Time) 표와 본문 서술이 서로 반대로 읽히는 부분입니다. 런타임 정의(측정 범위, 단위, 반복, HW)를 먼저 고정해야 다른 결과도 신뢰할 수 있습니다.
Q. 보상 가중치(α, β)를 공개하면 왜 그렇게 중요한가요?
A. 멀티오브젝티브 DRL에서 가중치는 사실상 목적함수의 선택입니다. 값과 정규화가 없으면 “모델이 좋아서”인지 “가중치가 유리해서”인지 분리할 수 없고, 재현도 어려워집니다.
Q. 다목적 비교를 더 공정하게 만들려면 무엇을 추가하면 되나요?
A. GA도 α-sweep으로 여러 점을 찍어 Pareto 전면을 만들거나, NSGA-II 같은 다목적 GA를 추가하는 방법이 효과적입니다. 그리고 제약 기반 결론(예: TST 상한에서 최저 TWT)으로 정리하면 실무 메시지가 더 선명해집니다.
[출처]
https://arxiv.org/html/2602.08052v1
0 댓글