Class MinimizeMaximumLateness

java.lang.Object
org.cicirello.search.problems.scheduling.MinimizeMaximumLateness
All Implemented Interfaces:
IntegerCostOptimizationProblem<Permutation>, Problem<Permutation>, SingleMachineSchedulingProblem

public final class MinimizeMaximumLateness extends Object implements SingleMachineSchedulingProblem
Implements the scheduling cost function known as maximum lateness, which we want to minimize. The lateness L[j] of job j is: L[j] = C[j] - d[j], where C[j] is the time it is completed by the machine, and d[j] is its due date. The maximum lateness cost function is equal to: maxj { L[j] }. Note that the lateness of a job can be negative if the job is completed early, so this cost function can evaluate to a negative value.
  • Constructor Details

    • MinimizeMaximumLateness

      public MinimizeMaximumLateness(SingleMachineSchedulingProblemData instanceData)
      Constructs a single machine scheduling problem for minimizing maximum lateness.
      Parameters:
      instanceData - An encapsulation of the job characteristics, such as processing times, etc.
      Throws:
      IllegalArgumentException - if instanceData.hasDueDates() returns false.
  • Method Details