Interval scheduling feels simple because each job already tells us where it lives. If job
then the job either occupies its whole interval
The moment
The feasibility problem
asks whether all jobs can be scheduled on one machine, respecting release times and strict deadlines. There is no optimisation objective. The question is only whether a feasible schedule exists.
Given a subset sum instance with multiset
Build one special job
For each number
The special job has only one possible place: it must run from
The reduction works because the machine has no spare time. All jobs have total processing time
and the final strict deadline is
The special job forces the slot
Conversely, if some subset of
which exactly fits in
So a feasible schedule exists exactly when the subset sum instance has a solution. The insight is that hardness does not come from many machines or a complicated objective. It already appears on one machine, with no objective, as soon as jobs have flexible windows instead of fixed intervals.