by Maarten Behn
Group 5

Exercise 8.1 (Single-Machine scheduling with Release Dates) (7 Points)

Consider the preemptive single-machine scheduling problem , in which a set of jobs,
each with a processing time and a release date must be scheduled preemptively on a single machine with the objective to minimize the total completion time.
Show that the Shortest Remaining Processing Time (SRPT) rule is optimal.
SRPT schedules at any moment in time the job with the shortest remaining processing time.

Helper definition

Let the processing time that is left at time for Job .

Proof

Take a optimal solution that does not follow SRPT.
Let be the earliest time where deviates from SRPT.
At time let:

  • the job that SRPT would process (shortest remaining processing time among released jobs)
  • the job that is being processed in , where

Construct a new schedule by modifying as follows:

  • Let be a small time span.
  • Pause and process in then continue with .
    is small enough that no other job is released during , and that neither nor finishes in that time.

Let be the completion time of in
Let be the completion time of in
then

Thus, the total completion time remains unchanged.
However, we have made the schedule more SRPT-like without making the objective worse.

By repeating this local exchange at every deviation from SRPT we can transform into a schedule that exactly follows SRPT, without increasing ​ at any point.
Therefore, SRPT must also be optimal.

Exercise 8.2 (Makespan Scheduling via LP) (7 Points)

We have seen in class that the scheduling problems and can be solved optimally in polynomial time.
Recall that in these problems, we are given a set of jobs , each with processing time and possibly a release date ,
and identical parallel machines to execute these jobs.
The task is to find a feasible schedule, possibly using preemption, such that the makespan is minimized.

Show how to solve the problem with release dates using linear programming (LP).

Hint: Formulate the subproblem of assigning a feasible amount of jobs’ processing to time intervals via an LP, given that you knew the optimal makespan.

LP for

Let be the processing time of a minimal makespan.
Let be a time span such that

  • ( can be split into time spans )
  • (And every release time sits at the start of one of these time spans)
    Let (The index of the time span of length )

Variables

the amount a job is processed in time span

Goal

Find a valid distribution of

Constraints

Every Job gets processed fully:
At a no more that time spans of jobs get processed:


A job is only processed after its release:

No negative:

Find minimal makespan

Perform a binary search for in the interval of
The smallest valid is the optimal solution.

There is reduction of to by setting all .
Therefore the optimal solution in is also optimal for

Exercise 8.3 (Assignment Problem) (6 Points)

In class we have reduced the unrelated-machine scheduling problem to the problem of finding a perfect matching of minimum cost.
Model the scheduling problem as a integer linear program.
Argue that your formulation is correct.

Variables:

(is job is assigned to machine )
(objective to minimize)

Optimization function

Constraints

Each job is assigned to exactly one machine

Load on each machine cannot exceed the :

Binary constraints:

Correctness Argument

Each job is assigned to exactly one machine (Constraint 1)
Feasibility
Each machine’s total assigned job processing time does not exceed (Constraint 2)
Machine load respected
The LP minimizes ⁡​, which is goal in the scheduling problem.