IEOR4405, Spring 2002: Homework 06

Assigned: Wednesday, February 20, 2002
Due: Tuesday, February 26, 2002, in class

General Instructions

  1. You must write down with whom you worked on the assignment. If this changes from problem to problem, then you should write down this information separately with each problem.
  2. Numbered problems are all from the textbook Scheduling: Theory, Algorithms and Systems

Problems

  1. Problem 5.8.
  2. Suppose you wanted to write efficient code to solve Q|pmtn|Cmax, allowing preemptions only at integral times. The challenge here is to be able to compute, given a schedule up to time t, when is the next time t' for which some job will be preempted. Write pseudo-code for this procedure. If the number of preemptions in the optimal schedule is k, your code should loop O(k) times.
  3. Problem 5.15
  4. In the book and in class, we saw a linear program for P|pmtn|Cmax. In this linear program the variable xij only described which machine a job should run on. Suppose we wanted to write a linear program in which we actually assign each job to particular time period(s) on each machine.
    1. Write an integer program for P|pmtn|Cmax in which the variables are xijs, where xijs is 1 if job j runs on machine i during the time interval (s,s+1), and 0 otherwise.
    2. Write an integer program for P|pmtn|Cmax in which the variables are xijst, where xijst is 1 if job j begins running on machine i at time s and finishes running on machine i at time t.
    3. What are the advantages and disadvantages of each integer program (You should consider issues such as number of variables and number of constraints in the formulation and the number of nonzero variables in the solution. Express your answers in terms of n, m and Cmax.)?


    Switch to:


    cliff@ieor.columbia.edu