최적화 결과가 '해 없음'일 때 운영자에게 보여 줄 것
스케줄 최적화가 '해 없음'이라고 답하면 현장에서는 어떤 조건을 풀어야 할지 알 수 없습니다. 솔버의 상태 코드를 운영자의 의사결정 정보로 번역해야 합니다. 해가 없는 이유와 선택 가능한 완화 방안을 설명하는 것이 최적화 제품의 핵심 기능입니다.
NOTES
모델을 만들고, 웹과 앱을 짓고, 업무를 자동화하며 확인한 것을 기록합니다. 통한 방법만이 아니라 통하지 않았던 시도까지 남깁니다.
TOTAL 9 · 최적화 알고리즘
스케줄 최적화가 '해 없음'이라고 답하면 현장에서는 어떤 조건을 풀어야 할지 알 수 없습니다. 솔버의 상태 코드를 운영자의 의사결정 정보로 번역해야 합니다. 해가 없는 이유와 선택 가능한 완화 방안을 설명하는 것이 최적화 제품의 핵심 기능입니다.
최적화 모델이 답을 내지 못할 때 현장은 납기를 맞추기 위해 어떤 제약을 풀어야 할지 묻습니다. 그러나 안전 조건과 고객 약속을 임의로 완화하면 더 큰 문제가 생길 수 있습니다. 제약의 우선순위와 승인 책임을 미리 정해야 합니다.
평균 수요와 평균 이동시간으로 만든 계획은 계산상 깔끔하지만 변동이 있는 날에는 쉽게 무너집니다. 그렇다고 최악의 경우만 대비하면 자원이 지나치게 남을 수 있습니다. 어떤 불확실성을 계획에 반영할지 정하는 것이 강건한 최적화의 시작입니다.
인건비만 최소화한 근무표가 특정 직원에게 야간 근무를 몰아준다면 오래 유지하기 어렵습니다. 법적·계약상 필수 조건을 지키는 것과 팀이 공정하다고 느끼는 것은 다른 문제입니다. 공정성을 측정 가능한 제약과 목표로 표현해야 합니다.
가공시간만 최소화하면 세척·금형 교환·초품 확인이 빠질 수 있습니다. 선행 품목에 따라 달라지는 교체시간을 계획에 반영하는 방법입니다.
최적화 점수만 낮추다가 현장 일정이 계속 뒤집히지 않도록 변경 페널티와 고정 구간을 설계합니다.
배송 거리뿐 아니라 고객별 도착 가능 시간, 대기, 지각 비용을 함께 고려하는 경로 최적화입니다.
최적화 솔버의 infeasible과 unknown을 구별하고 충돌 제약을 현장 의사결정으로 연결합니다.
숙련도와 급여가 다른 인력을 조립라인에 함께 배치하는 문제를 MILP와 유전 알고리즘으로 푼 졸업논문을 다시 정리했습니다. 정확해법과 메타휴리스틱을 함께 쓰는 구조를 소개합니다.