최소여유시간규칙 (Least Slack Time Rule)
쉽게 풀면
여러 개의 숙제가 있을 때, 단순히 마감일이 빠른 순서가 아니라 '마감까지 남은 시간에서 그 숙제를 끝내는 데 걸리는 시간을 뺀 나머지'가 가장 적은 숙제부터 하는 것과 같습니다. 예를 들어 마감이 이틀 남았지만 하루만 걸리는 숙제보다, 마감이 하루 남았고 정확히 하루가 걸리는 숙제가 더 급합니다. 여유시간이 0에 가깝거나 음수라면 그 작업은 지금 당장 처리하지 않으면 늦어질 가능성이 매우 큽니다. 이렇게 여유가 없는 작업을 먼저 챙기는 것이 이 규칙의 핵심입니다.
왜 중요한가
단순히 납기일 순서로만 작업을 처리하면 처리시간이 긴 작업이 실제로는 더 급함에도 뒤로 밀릴 수 있습니다. 최소여유시간규칙은 남은 처리시간까지 함께 고려하므로 현실적인 긴급도를 더 정확히 반영합니다. 그래서 생산현장이나 프로젝트 관리에서 납기 준수를 목표로 하는 스케줄링 문제에 널리 연구되고 적용됩니다.
논문에서는 이렇게 쓰입니다
여러 우선순위 규칙 중 하나로 최소여유시간규칙을 적용해 다른 규칙과 성능을 비교하는 실험 설계를 설명하는 문장입니다.
실시간으로 작업이 계속 들어오는 상황에서 여유시간이 부족한 작업을 즉시 처리하도록 규칙을 적용한 사례를 설명합니다.
조금 더 깊게 보면
여유시간은 일반적으로 '납기일 - 현재시각 - 남은 처리시간'으로 계산되며, 이 값이 작을수록 우선순위가 높아집니다. 여러 공정을 거치는 작업의 경우 아직 거쳐야 할 모든 공정의 처리시간 합을 남은 처리시간으로 사용합니다. 이 규칙은 동적으로 재계산될 수 있어, 시간이 지남에 따라 우선순위가 계속 바뀌는 특징이 있습니다.
주의할 점
여유시간 계산에는 처리시간에 대한 정확한 추정이 필요한데, 실제 현장에서는 처리시간이 변동하므로 이 추정이 부정확하면 규칙의 효과가 떨어질 수 있습니다. 또한 모든 상황에서 다른 규칙보다 항상 우수한 것은 아니며, 목표(납기지연 최소화, 처리량 극대화 등)에 따라 적합한 규칙이 달라집니다.